[etherlab-users] EL6692 DC synchronization

Westpfahl Jasper Jasper.Westpfahl-projekt at ipk.fraunhofer.de
Fri Jan 13 18:14:53 CET 2012


Hello,

I'm trying to realize dc synchronization between one Etherlab master and one TwinCAT master using the EL6692 connector block. The Etherlab side is supposed to be the grandmaster clock and the TwinCAT side should be the slave. I have already succeeded with connecting two TwinCAT masters and synchronizing them.
The difficulty arises when, after I start the Etherlab kernel module, I try to activate the configuration on the TwinCAT machine. Instead of switching to running mode, which it would in cases when I have two TwinCAT machines connected, it shows following erros:

Error	 (65535)	'Box 1 (EL6692)' (1001): state change aborted (requested 'OP', back to 'PREOP').
Error	 (65535)	'Box 1 (EL6692)' (1001): 'PREOP to SAFEOP' failed! Error: 'check device state for SAFEOP'. AL Status '0x0012' read and '0x0004' expected. AL Status Code '0x001e - Invalid SM IN cfg'
Error	 (65535)	'Box 1 (EL6692)' (1001): abnormal state change (from 'OP' to 'PREOP') with code 0x1e, 'Invalid SM IN cfg'. Try to go back to 'OP'...

Those errors indicate that the extent of the process data does not match, which is plausible because on the TwinCAT machine I configured it to receive the DC time for calculation of the difference between external and internal time stamp, but on the Etherlab side I haven't configured any sending of such data.

Does anybody know how I can send that time stamp, while using a kernel module compiled using matlab's rtw, so that TwinCAT doesn't show that error anymore and the external synchronization works?

Yours faithfully,
Jasper Westpfahl



More information about the Etherlab-users mailing list