Hi! As we use an EtherCAT slave, which runs Linux on an Arm-CPU, there's a kernel module on the slave side, handling all that EtherCAT stuff.
The software on the slave may be updated on the fly and we'd like to have an overall revision number for the whole package (kernel, os, kernel modules and application package). The easiest way to be informed which software is there running would be to show it as Revsion Number with the command "ethercat slaves -v -p <n>", so the slave should be able to write to it's EEPROM registers at runtime. For that, e.g. TwinCAT sets the bit on address 0x500:1 (Register EEPROM Configuration) to 1. Just when the state changes from INIT to PREOP. After that, the slave is able to write the revision number. So I'd need the information where in the code and how I may activate that bit, or a patch for that, so I could test if it's working. ;-) A second question: It seems not a problem which is related to the master but to the slave, but my college, who works on the slave's code, has the question, if it's known how long the slave has to wait for writing the second word. Writing the first word works fine, but when the second word is written there's an error set (0x0502:13 - Missing EEPROM acknowledge or invalid command"). The register 0x0502 has the value (0x041 (1000001), so it means, it's not set to BUSY (0x800), WRITE (0x200) or READ (0x100). By waiting e.g. 5 ms after writing the first word, the write of the second succeeds. So the questions is, how can we determine, how much delay there has at least to be? Thanks, Erwin -- Erwin Burgstaller _______________________________________________ etherlab-dev mailing list etherlab-dev@etherlab.org http://lists.etherlab.org/mailman/listinfo/etherlab-dev