[etherlab-users] Etherlab example mini module

Thomas Elste thomas.elste at imms.de
Thu Jul 26 10:12:10 CEST 2007


Hi Philipp,

> My /sys/ethercat0/slave000/info now also contains all data, and the
> configuration runs without errors in syslog.
sounds good.

>
> I also changed the slave configuration in the mini module example
> accordingly to:
> ec_pdo_reg_t domain1_pdos[] = {
> // ring position , vendor ID, product code, index and subindex of the  
> PDO to map
>     {"0", 0x00000044, 0x7874656E, 0x2003, 0x07, &r_dig_out},
>   //  {"0", 0x00000044, 0x7874656E, 0x2003, 0x04, &r_dig_in},
>     {}
> };
>
> However, inserting the module brings strange problems, as you already
> see I commented out the second PDO, because Etherlab complains
> EtherCAT ERROR: Slave 0 does not provide PDO 0x2003:4.
Hm, are you sure the extend config in ecdb.h is correct? The PDO
list in the master is simply build from this information. The message
you get occurs when the requested PDO in the domain config is not
found in the masters PDO list. This first step doesn't depend on any
communication with the netX. (domain.c, ecrt_domain_register_pdo(...))
(Don't forget to recompile and install the master modules, everytime
you change something in ecdb.h. I've had some frustrating moments
running "make modules_install" within the wrong source tree, :) .)

> Commenting it out leads until configuration of the SyncManagers.
> The Master sends the according datagram - and the netx does not
> respond at all, and causes the functions to fail.
> Strange thing is, that during slave setup the slave reacts positively
> - to the same datagram...
Strange indeed. Does the syncmanager configuration datagram contains
anything unusal? I've attached a dump of the sm and fmmu config
datagrams captured with my setup to this mail. So you can compare.

> Same thing happens when I start the master - stop it and start again
> without reseting the slave. Etherlab complains: "Failed to set sync
> managers - slave 0 did not respond."
>
> Maybe the slave is in some strange state?
> These things also happened before I applied the LRD/LWR patch. So it
> is probably not an issue in that matter.
I've actually no idea. If something went wrong in the configuration
stage I usally get some error messages like this:

EtherCAT ERROR: Failed to set SAVEOP state, slave 0 refused state
change (PREOP + ERROR).
EtherCAT ERROR: Unknown AL status code 0x8000.
EtherCAT: Acknowledged state PREOP on slave 0.
EtherCAT ERROR: Failed to configure slave 0!


Best regards
Thomas



-- 
Dipl.-Inf. Thomas Elste

Institut fuer Mikroelektronik- und Mechatronik-Systeme gGmbH
Ehrenbergestraße 27, 98693 Ilmenau, Germany
-------------- next part --------------
A non-text attachment was scrubbed...
Name: sm_fmmu.pcap
Type: application/octet-stream
Size: 360 bytes
Desc: not available
URL: <http://lists.etherlab.org/pipermail/etherlab-users/attachments/20070726/c6f41912/attachment-0004.obj>


More information about the Etherlab-users mailing list