[Etherlab-users] Estun EE-R0: Invalid input configuration
Richard Hacker
ha at igh.de
Thu Mar 4 10:13:37 CET 2021
Dir Dirk
> What I have done is: start the slave connected to the Acontis master and let it do the setup, then connect it (still powered up) to the Etherlab master and do the cstruct command. The PDO mapping matches what I have setup in the Acontis master.
Very good!
>
>> Try to use your working Acontis master and figure out any configuration
>> difference regarding PDO's. Are any SDOs being set with that master?
>
> Here are the InitCmds generated by the Acontis master. I don't see anything special, but the first two steps for clearing 0x1C12 and 0x1C13 which I have emulated with ecrt_slave_config_complete_sdo(), but it did not make any difference.
No, 1C12 and 1C13 are not for you to touch ;) . They are the
responsibility of the master.
I decoded the rest, and it looks identical! Example for 1A02
> <Data>040010052060100620601007206010082060</Data>
- 0400 (uint16) = 4 configs of uint32
- 10052060 = 6020.05/16
- 10062060 = 6020.06/16
- 10072060 = 6020.07/16
- 10082060 = 6020.08/16
... which is identical with your configuration of 1A02, and the same for
the rest which you can verify. Note that EtherCAT like CANopen is little
endian, so e.g. 10052060/uint32 = 0x60200510 ==> Object 0x6020.05/16
I am puzzled now. It is not behaving well. What is:
$ ethercat sl -v
Maybe it doesn't support LRW. In that case you will have to separate
TxPDO and RxPDO into two domains (remember to queue and process both of
them). Just duplicate the code concerning ec_domain_t, carefully placing
only TxPDO and RxPDO into the two (the master automatically sees that
either domain only contains only TxPDO or RxPDO and sets flags
appropriately).
I don't have any more ideas, except maybe that it does not adhere to
standard! Or the SII EEPROM is wrong! Then you will have to contact the
manufacturer!
- Richard
More information about the Etherlab-users
mailing list