Long initialization of Ethercat on servo drive SV660N

More
10 months 2 weeks ago #340031 by rodw

I looked at that and unfortunately it is code sprinkled around everywhere.
So it will be a bit of surgery in the etherlab code I am afraid.
 
I don't think EoE is normally a problem, perhaps just for this drive. Now they know a bug is there it will get fixed but I doubt you'll see it for a while.

Please Log in or Create an account to join the conversation.

More
10 months 2 weeks ago #340035 by Hakan
It's a general problem with EoE in the drive.
kworm has looked at it in some depth and submitted bugs/issues.
forum.linuxcnc.org/ethercat/53961-eoe-configuration
I think it would be good to have EoE working with lcec.
Short term it can be good to disable the eoe server parts,
long term it is good if it works.
The following user(s) said Thank You: rodw

Please Log in or Create an account to join the conversation.

More
10 months 2 weeks ago #340040 by rodw
I wonder if you raised an issue for lcec if Scott might become motivated to enhance the hal driver?
Its odd its taken so long before the issue was raised......

Please Log in or Create an account to join the conversation.

More
10 months 2 weeks ago #340044 by Hakan
I guess it is not obvious what to do, and one needs a drive with EoE to test with as well.
I looked around a bit and it's not so common with EoE in the drive especially the cheap ones
don't have it. 
I did find an opening though, it's in the SOEM and SOES ethercat master and slave libraries I use for embedded things.
They actually support EoE both master and slave.
I have a bit extra time now when I'm waiting for the hip to grow out again and will read up on that and try to understand the steps.
Then it should be possible to adopt this to IgH and lcec. Maybe.
The following user(s) said Thank You: rodw

Please Log in or Create an account to join the conversation.

More
10 months 2 weeks ago #340086 by Hakan
I spent some time with ChatGpt and I'm of course super skeptical to those tools.
Chatgpt says the likely reason for EoE drives to hang is that the EoE mailbox isn't serviced/emptied.
Yes, it isn't. Maybe one can try that, it doesn't have to be more advanced. A code snippet that does that
Code:
static void *eoe_worker(void *arg) {     while (eoe_running) {         /* Receive mailbox data */         ecrt_master_receive(lcec.master);         for_each_eoe_ctx(ctx) {             ecrt_eoe_process(ctx->eoe);         }         /* Transmit */         ecrt_master_send(lcec.master);         usleep(1000); /* 1 ms, configurable */     }     return NULL; }
There is that ecrt_master_send kworm talked about. It's about principles at this point.
I would need a slave with EoE. I don't have that. Maybe maybe I can make one, there
is an example in SOES with lwip. Or anyone know of a not too pricey servo drive with EoE?

Please Log in or Create an account to join the conversation.

More
10 months 2 weeks ago #340087 by rodw
Sorry to bust you AI bubble but
  1. where is  eoe_running defined?
  2. where is *arg used?
  3. the for statement seems invalid.

I find Grok lies less than ChatGPT but still gives me wrong code sometimes.
 
The following user(s) said Thank You: Patrice

Please Log in or Create an account to join the conversation.

Time to create page: 0.086 seconds
Powered by Kunena Forum