Sometimes SoE configuration failes (during startup).
I use DC, RTAI, the newest devel-version of the master and a Rexroth servo drive. Is it a synchronization problem among threads? See the error message: Dec 2 14:54:38 pc-br3 kernel: EtherCAT DEBUG 0-0: Writing IDN 0x000F of drive 0 (2 byte). Dec 2 14:54:38 pc-br3 kernel: EtherCAT DEBUG 0-0: SCC write request: Dec 2 14:54:38 pc-br3 kernel: EtherCAT DEBUG: 03 40 0F 00 07 00 Dec 2 14:54:38 pc-br3 kernel: EtherCAT DEBUG 0-0: SCC write response: Dec 2 14:54:38 pc-br3 kernel: EtherCAT DEBUG: 04 40 0F 00 Dec 2 14:54:38 pc-br3 kernel: EtherCAT DEBUG 0-0: Writing IDN 0x0010 of drive 0 (32 byte). Dec 2 14:54:38 pc-br3 kernel: EtherCAT DEBUG 0-0: SCC write request: Dec 2 14:54:38 pc-br3 kernel: EtherCAT DEBUG: 03 40 10 00 02 00 02 00 28 00 00 00 00 00 00 00 Dec 2 14:54:38 pc-br3 kernel: EtherCAT DEBUG: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Dec 2 14:54:38 pc-br3 kernel: EtherCAT DEBUG: 00 00 00 00 Dec 2 14:54:38 pc-br3 kernel: EtherCAT ERROR 0-0: Failed to receive SoE write response datagram: Datagram received. Dec 2 14:54:38 pc-br3 kernel: EtherCAT ERROR 0-0: Writing IDN 0x0010 failed. Dec 2 14:54:38 pc-br3 kernel: EtherCAT ERROR 0-0: SoE configuration failed. Take a look at the error message "EtherCAT ERROR 0-0: Failed to receive SoE write response datagram: Datagram received." First datagram->state != EC_DATAGRAM_RECEIVED (ec_fsm_soe_write_response(...) and in ec_datagram_print_state(...) datagram->state == EC_DATAGRAM_RECEIVED. Creation of error message in ec_fsm_soe_write_response(...): if (datagram->state != EC_DATAGRAM_RECEIVED) { fsm->state = ec_fsm_soe_error; EC_SLAVE_ERR(slave, "Failed to receive SoE write" " response datagram: "); ec_datagram_print_state(datagram); ec_fsm_soe_print_error(fsm); return; } and in ec_datagram_print_state(...): void ec_datagram_print_state( const ec_datagram_t *datagram /**< EtherCAT datagram */ ) { printk("Datagram "); switch (datagram->state) { case EC_DATAGRAM_INIT: printk("initialized"); break; case EC_DATAGRAM_QUEUED: printk("queued"); break; case EC_DATAGRAM_SENT: printk("sent"); break; case EC_DATAGRAM_RECEIVED: printk("received"); break; case EC_DATAGRAM_TIMED_OUT: printk("timed out"); break; case EC_DATAGRAM_ERROR: printk("error"); break; default: printk("???"); } printk(".\n"); } Mit freundlichen Grüßen / Best regards Andreas Baur ----------------------------------------------------------------------------------- PAUL Maschinenfabrik GmbH & Co. KG Max-Paul-Straße 1 88525 Dürmentingen Deutschland / Germany Tel.: +49 (0) 7371 / 500 - 0 Fax: +49 (0) 7371 / 500 - 111 Mail: softw...@paul.eu Web: www.paul.eu ----------------------------------------------------------------------------------- Kommanditgesellschaft, Sitz Dürmentingen, Registergericht Ulm HRA 650073, Pers. haftende Gesellschafterin: Paul Maschinenfabrik GmbH, Sitz Riedlingen, Registergericht Ulm HRB 650013, Geschäftsführer: Werner Paul Ust.-IdNr DE 146544409
_______________________________________________ etherlab-users mailing list etherlab-users@etherlab.org http://lists.etherlab.org/mailman/listinfo/etherlab-users