[etherlab-users] AL Status Code Reads 0x00 0x00 even when 'PREOP + E' is reported

Gavin Lambert gavinl at compacsort.com
Mon Apr 11 01:23:42 CEST 2016


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-bounces at etherlab.org] On Behalf
Of Michael Asher
Sent: Saturday, 9 April 2016 05:36
To: etherlab-users at 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

 


  --  

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.etherlab.org/pipermail/etherlab-users/attachments/20160411/3b78b6ec/attachment-0004.htm>


More information about the Etherlab-users mailing list