Hi,

There's kind of not enough info to go on, but here's some thoughts:

1) Re SAFEOP + ERROR: It looks like you are only using one domain.  Do you have 
the esi (.xml) file for the slave?  If so, does it require the read and write 
PDO's to be separated into separate read and write domains?  (a fair number of 
drives require this and some require it even if not stated in the esi file.)

You can also check the notLRW flag under the "ethercat slaves -v" command, but 
I've also had a slave that did not report this requirement but had a bug that 
required overlapping PDO's or separate domains (it did not like consecutive 
PDO's which is the Etherlab master default).


2) Re Alarm 0x001B: Have you confirmed that your realtime loop is active and at 
the correct cycle time when you are activating your master (and bringing the 
slaves to OP).  I see in your ethercat.c, app_ethercat_start() method that you 
are running a loop at 500us until the master is at EC_AL_STATE_OP (or 100s).  
Is this method returning ACTION_DONE or ACTION_WAITING?  When does the 0x001B 
alarm occur in relation to this method?  Have you confirmed you continue the 
ethercat realtime loop after app_ethercat_start() regardless of the result?

I suspect the SAFEOP + ERROR is a configuration problem and the 0x001B sync 
error a subsequent realtime loop problem.

Regards,
Graeme.

-----Original Message-----
From: Etherlab-users <etherlab-users-boun...@etherlab.org> On Behalf Of Fontana 
Nicola
Sent: Friday, September 15, 2023 8:32 AM
To: etherlab-users@etherlab.org
Subject: [Etherlab-users] DMS72E4331 slave refuses to go OP

Hi all,

I've an EtherCAT chain of 8 slaves, the last one being a driver I never used 
before.

After the ecrt_master_activate() call, everything goes OP but that
driver: it keeps giving me a "Sync manager watchdog" error (AL status 0x001B). 
Attached the kernel log (debug level 1) of that run.

Has anyone experienced this kind of issue? Is there some workaround I can try? 
I disabled the watchdog (EC_WD_DISABLE to all SMs [1]) and wrote 0 to the ESC 
register 0x410 but the error simply changed to "Invalid watchdog configuration" 
(AL status 0x001F).

According to the FAQ in the old website [2], configuration failures are most 
likely caused by wrong SII implementation: is this the case?

[1] 
https://gitlab.com/entidi/libmachinery/-/blob/master/src/ethercat-slaves.c?ref_type=heads#L773
[2] 
https://web.archive.org/web/20210922180832/https://www.etherlab.org/en/ethercat/faq.php

Thank you in advance.
--
Nicola

-- 
Etherlab-users mailing list
Etherlab-users@etherlab.org
https://lists.etherlab.org/mailman/listinfo/etherlab-users

Reply via email to