That is the AL State (note this is different from the AL Status Code, which is typically only logged by Etherlab and isn't retrievable by the application unless you read the registers directly).
The AL State can be read from the al_state field in ec_slave_info_t, via ecrt_master_get_slave. PREOP+E corresponds to a value of 0x12. Note however that the master stack will usually auto-acknowledge errors and try configuring again, so the E state will be transitory; an exception is if it encountered an unrecoverable error or otherwise gave up, in which case the error_flag field in both ec_slave_info_t and ec_slave_config_state_t will be set. So generally you should just check for the error_flag and ignore the actual E state. (The al_state except for the E state can also be read from ec_slave_config_state_t, via ecrt_slave_config_state.) I'm not sure what you mean by Vendor Specific Offsets. From: etherlab-users [mailto:etherlab-users-boun...@etherlab.org] On Behalf Of Michael Asher Sent: Saturday, 9 April 2016 05:36 To: etherlab-users@etherlab.org Subject: [etherlab-users] AL Status Code Reads 0x00 0x00 even when 'PREOP + E' is reported Hi; On what register is the, 'Slave State + E' reported, e.g. 'PREOP + E'? I am asking because the AL Status Code for a particular Slave Reads 0x00, 0x00 even when the Master Stack reports, 'PREOP + E' for that Slave. Additionally, what are the Vendor Specific Offsets, just in case a reg_read of those will turn up the Slaves missing error code information? Thanks; Michael Asher Applications Engineer --
_______________________________________________ etherlab-users mailing list etherlab-users@etherlab.org http://lists.etherlab.org/mailman/listinfo/etherlab-users