[etherlab-users] Timeout while waiting for Sdo upload response

Erwin Burgstaller ethercat.berknapp at spamgourmet.com
Fri Oct 3 10:30:27 CEST 2008


Hi,

Having sent a reply with wireshark dumps attached, which still didn't
appear on the list, because of it's too large attachments, I've waited
for a reply until now.

The Message was this and did cross the reply from Florian:

| Funny news!
| 
| If I run the bus through a Alied Telesyn FS709FC it works.
| 
| So it seems, there's something to fast, when starting without the
| switch. Unfortunately I cannot watch with wireshark without the
| switch. Hm, can I?
| 
| Found a solution: It's a little bit complicated but running wireshark on
| the same machine goes like this:
| 
| 1) Unplug the ethernet cable, so there's no link on the master's side.
| 
| 2) Run this commands: 
| 
|    /etc/init.d/ethercat stop; /etc/init.d/ethercat start; /sbin/ifconfig ecdbgm0 up;
| 
| 3) Start wireshark and select ecdbgm0 as capture interface, start
|    capturing!
| 
| 4) Plug in the cable, so the master will see the link and will start with
|    bringing up the bus.
| 
| So I've got two dumps to attach, one with and one without
| switch. 
| 
| Starting with the switch in between, it worked again. Without switch
| there was the sdo timeout.
 

* Wed, Oct 01, 2008 - 09:31:26 +0200, Florian Pose - fp at igh-essen.com:
> You could try to read out the Sdo 0x1C12:0 again with the commands:
> 
> ethercat debug 1
> ethercat upload -p1 -tuint8 0x1C12 0
> 
> and post the output and the corresponding log entries.

OK fine. I forgot about that debug possibility, should be easier to read
than that punch of wireshark log data.

The log entries, in case it doesn't work:

| Oct  3 09:50:44 UCL00097 kernel: [63892.398758] EtherCAT DEBUG: File opened.
| Oct  3 09:50:44 UCL00097 kernel: [63892.398841] EtherCAT DEBUG: ioctl(filp = cb094bc0, cmd = 2150671360 (0), arg = bfa80758)
| Oct  3 09:50:44 UCL00097 kernel: [63892.398942] EtherCAT DEBUG: ioctl(filp = cb094bc0, cmd = 3241190401 (1), arg = bfa80788)
| Oct  3 09:50:44 UCL00097 kernel: [63892.399054] EtherCAT DEBUG: ioctl(filp = cb094bc0, cmd = 3222840332 (12), arg = bfa80b34)
| Oct  3 09:50:47 UCL00097 kernel: 829] EtherCAT DEBUG: Slave 1 did no respond to Sdo upload request. Retrying after 2944 ms...
| Oct  3 09:50:47 UCL00097 kernel: [63895.350871] EtherCAT DEBUG: Slave 1 did no respond to Sdo upload request. Retrying after 2944 ms...
| Oct  3 09:50:47 UCL00097 kernel: [63895.350913] EtherCAT DEBUG: Slave 1 did no respond to Sdo upload request. Retrying after 2944 ms...
| 

[ This Message is repeated about 1230 times, then: ]

| 
| Oct  3 09:50:47 UCL00097 kernel: [63895.403256] EtherCAT DEBUG: Slave 1 did no respond to Sdo upload request. Retrying after 2996 ms...
| Oct  3 09:50:47 UCL00097 kernel: [63895.403302] EtherCAT ERROR: Reception of CoE upload request failed on slave 1: No response.
| Oct  3 09:50:47 UCL00097 kernel: [63895.403308] EtherCAT DEBUG: Failed to process Sdo request for slave 1.
| Oct  3 09:50:47 UCL00097 kernel: [63895.410285] EtherCAT DEBUG: File closed.


This are the log entries written in case it works (over the switch):


| Oct  3 10:06:18 UCL00097 kernel: [64824.888577] EtherCAT DEBUG: File opened.
| Oct  3 10:06:18 UCL00097 kernel: [64824.888659] EtherCAT DEBUG: ioctl(filp = c78768c0, cmd = 2150671360 (0), arg = bfac0fb8)
| Oct  3 10:06:18 UCL00097 kernel: [64824.888759] EtherCAT DEBUG: ioctl(filp = c78768c0, cmd = 3241190401 (1), arg = bfac0fe8)
| Oct  3 10:06:18 UCL00097 kernel: [64824.888871] EtherCAT DEBUG: ioctl(filp = c78768c0, cmd = 3222840332 (12), arg = bfac1394)
| Oct  3 10:06:18 UCL00097 kernel: [64824.894180] EtherCAT DEBUG: Processing Sdo request for slave 1...
| Oct  3 10:06:18 UCL00097 kernel: [64824.894185] EtherCAT DEBUG: Uploading Sdo 0x1C12:00 from slave 1.
| Oct  3 10:06:18 UCL00097 kernel: [64824.894188] EtherCAT DEBUG: Upload request:
| Oct  3 10:06:18 UCL00097 kernel: [64824.894190] EtherCAT DEBUG: 00 20 40 12 1C 00 00 00 00 00 
| Oct  3 10:06:18 UCL00097 kernel: [64824.895083] EtherCAT DEBUG: Upload response:
| Oct  3 10:06:18 UCL00097 kernel: [64824.895085] EtherCAT DEBUG: 00 30 4F 12 1C 00 01 00 00 00 
| Oct  3 10:06:18 UCL00097 kernel: [64824.895092] EtherCAT DEBUG: Uploaded data:
| Oct  3 10:06:18 UCL00097 kernel: [64824.895093] EtherCAT DEBUG: 01 
| Oct  3 10:06:18 UCL00097 kernel: [64824.895097] EtherCAT DEBUG: Finished Sdo request for slave 1.
| Oct  3 10:06:18 UCL00097 kernel: [64824.895669] EtherCAT DEBUG: File closed.


I've verified the firmware of the slave with Beckhoff's support: there's
no newer version. I've also tried another EL6001, we've got 2 weeks ago,
with the same result.

Twincat as well as the command

ethercat upload -p1 -tstring 0x100A 0

shows the software version as V00.04

Erwin

-- 
Erwin Burgstaller



More information about the Etherlab-users mailing list