- Configuring LinuxCNC
- Advanced Configuration
- EtherCAT
- Help with Inovance IS620N Servo Drive - Stays in PREOP
Help with Inovance IS620N Servo Drive - Stays in PREOP
- conman
- Away
- New Member
-
Less
More
- Posts: 7
- Thank you received: 0
02 Nov 2025 09:17 #337699
by conman
Help with Inovance IS620N Servo Drive - Stays in PREOP was created by conman
Hello everyone, I am relatively new user here. I was trying to test my is620n drives from inovance with linuxcnc ethercat and kept running into problems.
I am using the hal file and xml from another user here on the forum but slightly modified.
The problem I am facing is that the drive stays in PREOP and I am not able to get any motion out of it.
I am posting my files here, thank you!
I am using the hal file and xml from another user here on the forum but slightly modified.
The problem I am facing is that the drive stays in PREOP and I am not able to get any motion out of it.
I am posting my files here, thank you!
Attachments:
Please Log in or Create an account to join the conversation.
- Hakan
- Away
- Platinum Member
-
Less
More
- Posts: 1009
- Thank you received: 334
02 Nov 2025 11:22 #337702
by Hakan
Replied by Hakan on topic Help with Inovance IS620N Servo Drive - Stays in PREOP
You need to add the vid and pid item in the <slave line.
You find the numbers with "ethercat slaves -v"
You find the numbers with "ethercat slaves -v"
Please Log in or Create an account to join the conversation.
- conman
- Away
- New Member
-
Less
More
- Posts: 7
- Thank you received: 0
02 Nov 2025 19:03 #337728
by conman
Replied by conman on topic Help with Inovance IS620N Servo Drive - Stays in PREOP
Hello, thank you for that, I added it but still the same result.
<masters>
<master idx="0" appTimePeriod="1000000" refClockSyncCycles="1">
<slave idx="0" type="generic" name="IS620N_ECAT_v2.6.8" vid="0x00100000" pid="0x000C0108" configPdos="true">
<dcConf assignActivate="300" sync0Cycle="*1" sync0Shift="0"/>
<syncManager idx="2" dir="out">
<pdo idx="1701">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="cia-controlword" halType="u32"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="OperationMode" halType="s32"/>
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="TargetPosition" halType="s32"/>
<pdoEntry idx="60FF" subIdx="00" bitLen="32" halPin="TargetVelocity" halType="s32"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1b01">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="cia-statusword" halType="u32"/>
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="ActualPosition" halType="s32"/>
<pdoEntry idx="6061" subIdx="00" bitLen="8" halPin="ActualOperationMode" halType="s32"/>
<pdoEntry idx="606C" subIdx="00" bitLen="32" halPin="ActualVelocity" halType="s32"/>
<pdoEntry idx="6077" subIdx="00" bitLen="32" halPin="ActualTorque" halType="s32"/>
</pdo>
</syncManager>
</slave>
</master>
</masters>
<masters>
<master idx="0" appTimePeriod="1000000" refClockSyncCycles="1">
<slave idx="0" type="generic" name="IS620N_ECAT_v2.6.8" vid="0x00100000" pid="0x000C0108" configPdos="true">
<dcConf assignActivate="300" sync0Cycle="*1" sync0Shift="0"/>
<syncManager idx="2" dir="out">
<pdo idx="1701">
<pdoEntry idx="6040" subIdx="00" bitLen="16" halPin="cia-controlword" halType="u32"/>
<pdoEntry idx="6060" subIdx="00" bitLen="8" halPin="OperationMode" halType="s32"/>
<pdoEntry idx="607A" subIdx="00" bitLen="32" halPin="TargetPosition" halType="s32"/>
<pdoEntry idx="60FF" subIdx="00" bitLen="32" halPin="TargetVelocity" halType="s32"/>
</pdo>
</syncManager>
<syncManager idx="3" dir="in">
<pdo idx="1b01">
<pdoEntry idx="6041" subIdx="00" bitLen="16" halPin="cia-statusword" halType="u32"/>
<pdoEntry idx="6064" subIdx="00" bitLen="32" halPin="ActualPosition" halType="s32"/>
<pdoEntry idx="6061" subIdx="00" bitLen="8" halPin="ActualOperationMode" halType="s32"/>
<pdoEntry idx="606C" subIdx="00" bitLen="32" halPin="ActualVelocity" halType="s32"/>
<pdoEntry idx="6077" subIdx="00" bitLen="32" halPin="ActualTorque" halType="s32"/>
</pdo>
</syncManager>
</slave>
</master>
</masters>
Please Log in or Create an account to join the conversation.
- conman
- Away
- New Member
-
Less
More
- Posts: 7
- Thank you received: 0
02 Nov 2025 19:15 #337730
by conman
Replied by conman on topic Help with Inovance IS620N Servo Drive - Stays in PREOP
Forgot to mention, I get this output from
cnc@debian:~$ sudo dmesg | grep lcec
[16318.518328] lcec_conf[18018]: segfault at 2000000004 ip 00007ff18a193ffe sp 00007fff53f417b8 error 4 in libc.so.6[7ff18a053000+155000] likely on CPU 17 (\core 5, socket 0)
cnc@debian:~$ sudo dmesg | tail -n20
[16005.505127] EtherCAT WARNING 0: 3 datagrams UNMATCHED! [16010.521123] EtherCAT WARNING 0: 3 datagrams UNMATCHED! [16019.541129] EtherCAT WARNING 0: 3 datagrams UNMATCHED! [16029.589122] EtherCAT WARNING 0: 3 datagrams UNMATCHED! [16041.645130] EtherCAT WARNING 0: 3 datagrams UNMATCHED! [16066.753139] EtherCAT WARNING 0: 3 datagrams UNMATCHED! [16090.805133] EtherCAT WARNING 0: 6 datagrams UNMATCHED! [16105.865142] EtherCAT WARNING 0: 3 datagrams UNMATCHED! [16107.694312] EtherCAT 0: Master thread exited. [
16107.694318] EtherCAT 0: Starting EtherCAT-IDLE thread.
[16107.694349] EtherCAT ERROR 0-0: Failed to receive AL state datagram: Datagram initialized.
[16107.694351] EtherCAT 0: Releasing master...
[16107.694359] EtherCAT 0: Released.
[16108.065140] EtherCAT WARNING: Datagram 00000000e31e2a72 (master-fsm) was SKIPPED 1 time.
[16318.518325] show_signal_msg: 7 callbacks suppressed
[16318.518328] lcec_conf[18018]: segfault at 2000000004 ip 00007ff18a193ffe sp 00007fff53f417b8 error 4 in libc.so.6[7ff18a053000+155000] likely on CPU 17 (core 5, socket 0)
[16318.518333] Code: 1f 84 00 00 00 00 00 0f 1f 44 00 00 89 f8 09 f0 c1 e0 14 3d 00 00 00 f8 0f 87 2e 03 00 00 62 e1 fe 28 6f 0f 62 b2 75 20 26 d1 <62> f3 75 22 3f 0e 00 c5 fb 93 c9 ff c1 74 53 0f 1f 00 f3 0f bc c9
[16727.336124] EtherCAT ERROR 0-0: Failed to set SAFEOP state, slave refused state change (PREOP + ERROR).
[16727.336155] EtherCAT ERROR 0-0: AL status message 0x001E: "Invalid input configuration".
[16727.337102] EtherCAT 0-0: Acknowledged state PREOP.
Could this be an issue?
cnc@debian:~$ sudo dmesg | grep lcec
[16318.518328] lcec_conf[18018]: segfault at 2000000004 ip 00007ff18a193ffe sp 00007fff53f417b8 error 4 in libc.so.6[7ff18a053000+155000] likely on CPU 17 (\core 5, socket 0)
cnc@debian:~$ sudo dmesg | tail -n20
[16005.505127] EtherCAT WARNING 0: 3 datagrams UNMATCHED! [16010.521123] EtherCAT WARNING 0: 3 datagrams UNMATCHED! [16019.541129] EtherCAT WARNING 0: 3 datagrams UNMATCHED! [16029.589122] EtherCAT WARNING 0: 3 datagrams UNMATCHED! [16041.645130] EtherCAT WARNING 0: 3 datagrams UNMATCHED! [16066.753139] EtherCAT WARNING 0: 3 datagrams UNMATCHED! [16090.805133] EtherCAT WARNING 0: 6 datagrams UNMATCHED! [16105.865142] EtherCAT WARNING 0: 3 datagrams UNMATCHED! [16107.694312] EtherCAT 0: Master thread exited. [
16107.694318] EtherCAT 0: Starting EtherCAT-IDLE thread.
[16107.694349] EtherCAT ERROR 0-0: Failed to receive AL state datagram: Datagram initialized.
[16107.694351] EtherCAT 0: Releasing master...
[16107.694359] EtherCAT 0: Released.
[16108.065140] EtherCAT WARNING: Datagram 00000000e31e2a72 (master-fsm) was SKIPPED 1 time.
[16318.518325] show_signal_msg: 7 callbacks suppressed
[16318.518328] lcec_conf[18018]: segfault at 2000000004 ip 00007ff18a193ffe sp 00007fff53f417b8 error 4 in libc.so.6[7ff18a053000+155000] likely on CPU 17 (core 5, socket 0)
[16318.518333] Code: 1f 84 00 00 00 00 00 0f 1f 44 00 00 89 f8 09 f0 c1 e0 14 3d 00 00 00 f8 0f 87 2e 03 00 00 62 e1 fe 28 6f 0f 62 b2 75 20 26 d1 <62> f3 75 22 3f 0e 00 c5 fb 93 c9 ff c1 74 53 0f 1f 00 f3 0f bc c9
[16727.336124] EtherCAT ERROR 0-0: Failed to set SAFEOP state, slave refused state change (PREOP + ERROR).
[16727.336155] EtherCAT ERROR 0-0: AL status message 0x001E: "Invalid input configuration".
[16727.337102] EtherCAT 0-0: Acknowledged state PREOP.
Could this be an issue?
Please Log in or Create an account to join the conversation.
- Hakan
- Away
- Platinum Member
-
Less
More
- Posts: 1009
- Thank you received: 334
02 Nov 2025 20:34 #337733
by Hakan
Replied by Hakan on topic Help with Inovance IS620N Servo Drive - Stays in PREOP
For sure that is an issue.
So many UNMATCHED datagrams points to the ethernet adapter.
Do you have a realtek adapter? Find out with "lspci -k".
If so, install the realtek dkms drivers, it has helped many.
Think it is called r8168-dkms or r8125-dkms. Search the forum, many have installed it.
So many UNMATCHED datagrams points to the ethernet adapter.
Do you have a realtek adapter? Find out with "lspci -k".
If so, install the realtek dkms drivers, it has helped many.
Think it is called r8168-dkms or r8125-dkms. Search the forum, many have installed it.
Please Log in or Create an account to join the conversation.
- conman
- Away
- New Member
-
Less
More
- Posts: 7
- Thank you received: 0
03 Nov 2025 07:47 #337748
by conman
Replied by conman on topic Help with Inovance IS620N Servo Drive - Stays in PREOP
Hello Hakan, thank you very much for your help so far!
Yes I have a realtek adapter on my MSI B650M motherboard.
Let me install the drivers and get back to you.
Yes I have a realtek adapter on my MSI B650M motherboard.
Let me install the drivers and get back to you.
Please Log in or Create an account to join the conversation.
- conman
- Away
- New Member
-
Less
More
- Posts: 7
- Thank you received: 0
03 Nov 2025 19:35 #337779
by conman
Replied by conman on topic Help with Inovance IS620N Servo Drive - Stays in PREOP
I installed the r8125-dkms as my adapter was RTL8125
Still no luck but the output for dmesg has changed slightly
cnc@debian:~$ sudo dmesg | tail -n20
[sudo] password for cnc:
[ 1652.489972] EtherCAT: Requesting master 0...
[ 1652.489974] EtherCAT: Successfully requested master 0.
[ 1652.490017] EtherCAT 0: Domain0: Logical address 0x00000000, 26 byte, expected working counter 3.
[ 1652.490018] EtherCAT 0: Datagram domain0-0-main: Logical offset 0x00000000, 26 byte, type LRW.
[ 1652.490026] EtherCAT 0: Master thread exited.
[ 1652.490027] EtherCAT 0: Starting EtherCAT-OP thread.
[ 1652.582304] EtherCAT ERROR 0-0: Failed to set SAFEOP state, slave refused state change (PREOP + ERROR).
[ 1652.583304] EtherCAT ERROR 0-0: AL status message 0x001E: "Invalid input configuration".
[ 1652.585313] EtherCAT 0-0: Acknowledged state PREOP.
[ 1688.768322] EtherCAT 0: Master thread exited.
[ 1688.768327] EtherCAT 0: Starting EtherCAT-IDLE thread.
[ 1688.768363] EtherCAT 0: Releasing master...
[ 1688.768365] EtherCAT 0: Released.
[ 1780.862489] lcec_conf[99761]: segfault at 2000000004 ip 00007f60bddcf07e sp 00007fff57a4c8b8 error 4 in libc.so.6[7f60bdc8e000+156000] likely on CPU 8 (core 10, socket 0)
[ 1780.862496] Code: 1f 84 00 00 00 00 00 0f 1f 44 00 00 89 f8 09 f0 c1 e0 14 3d 00 00 00 f8 0f 87 2e 03 00 00 62 e1 fe 28 6f 0f 62 b2 75 20 26 d1 <62> f3 75 22 3f 0e 00 c5 fb 93 c9 ff c1 74 53 0f 1f 00 f3 0f bc c9
[ 2094.078796] logitech-hidpp-device 0003:046D:4023.0006: hidpp20_batterylevel_get_battery_capacity: received protocol error 0x08
[ 4407.075631] EtherCAT 0: Master thread exited.
[ 4407.075653] EtherCAT 0: Releasing main device 34:5A:60:CB:87:79.
[ 4407.112827] ec_generic: Unloading.
[ 4407.182494] EtherCAT: Master module cleaned up.
What else can I try now?
Also, I got this device description file for my drive from the manufacturer. What do I do with this?
Still no luck but the output for dmesg has changed slightly
cnc@debian:~$ sudo dmesg | tail -n20
[sudo] password for cnc:
[ 1652.489972] EtherCAT: Requesting master 0...
[ 1652.489974] EtherCAT: Successfully requested master 0.
[ 1652.490017] EtherCAT 0: Domain0: Logical address 0x00000000, 26 byte, expected working counter 3.
[ 1652.490018] EtherCAT 0: Datagram domain0-0-main: Logical offset 0x00000000, 26 byte, type LRW.
[ 1652.490026] EtherCAT 0: Master thread exited.
[ 1652.490027] EtherCAT 0: Starting EtherCAT-OP thread.
[ 1652.582304] EtherCAT ERROR 0-0: Failed to set SAFEOP state, slave refused state change (PREOP + ERROR).
[ 1652.583304] EtherCAT ERROR 0-0: AL status message 0x001E: "Invalid input configuration".
[ 1652.585313] EtherCAT 0-0: Acknowledged state PREOP.
[ 1688.768322] EtherCAT 0: Master thread exited.
[ 1688.768327] EtherCAT 0: Starting EtherCAT-IDLE thread.
[ 1688.768363] EtherCAT 0: Releasing master...
[ 1688.768365] EtherCAT 0: Released.
[ 1780.862489] lcec_conf[99761]: segfault at 2000000004 ip 00007f60bddcf07e sp 00007fff57a4c8b8 error 4 in libc.so.6[7f60bdc8e000+156000] likely on CPU 8 (core 10, socket 0)
[ 1780.862496] Code: 1f 84 00 00 00 00 00 0f 1f 44 00 00 89 f8 09 f0 c1 e0 14 3d 00 00 00 f8 0f 87 2e 03 00 00 62 e1 fe 28 6f 0f 62 b2 75 20 26 d1 <62> f3 75 22 3f 0e 00 c5 fb 93 c9 ff c1 74 53 0f 1f 00 f3 0f bc c9
[ 2094.078796] logitech-hidpp-device 0003:046D:4023.0006: hidpp20_batterylevel_get_battery_capacity: received protocol error 0x08
[ 4407.075631] EtherCAT 0: Master thread exited.
[ 4407.075653] EtherCAT 0: Releasing main device 34:5A:60:CB:87:79.
[ 4407.112827] ec_generic: Unloading.
[ 4407.182494] EtherCAT: Master module cleaned up.
What else can I try now?
Also, I got this device description file for my drive from the manufacturer. What do I do with this?
Attachments:
Please Log in or Create an account to join the conversation.
- Hakan
- Away
- Platinum Member
-
Less
More
- Posts: 1009
- Thank you received: 334
03 Nov 2025 20:23 #337782
by Hakan
Replied by Hakan on topic Help with Inovance IS620N Servo Drive - Stays in PREOP
Good, the UNMATCHED datagrams are gone. One more step done.
Nobody needs that xml file, maybe some geek is looking at it. Linuxcnc doesn't use it,
it can read all necessary info from the drive.
So what I look at are the linesInvalid input configuration. It can be several things, but it has to do with the Syncmanagers and the PDOs.
You said you got the files from another post here, do you have a link to it?
When I look in that esi/xml file you attached I see that you use a PDO index of a fixed PDO, and it looks like you don't have the correct pdoentries in there. There are two things you can do.
1. Use a configurable PDO and put in the existing pdoentries in there.
Simply change
<pdo idx="1b01">
to
<pdo idx="1a00">
and switch
<pdo idx="1701">
to
<pdo idx="1600">
2. Put that right pdoentries in the 1b01 and 1701 pdos. Let's try 1. first.
Nobody needs that xml file, maybe some geek is looking at it. Linuxcnc doesn't use it,
it can read all necessary info from the drive.
So what I look at are the lines
[ 1652.582304] EtherCAT ERROR 0-0: Failed to set SAFEOP state, slave refused state change (PREOP + ERROR).
[ 1652.583304] EtherCAT ERROR 0-0: AL status message 0x001E: "Invalid input configuration".You said you got the files from another post here, do you have a link to it?
When I look in that esi/xml file you attached I see that you use a PDO index of a fixed PDO, and it looks like you don't have the correct pdoentries in there. There are two things you can do.
1. Use a configurable PDO and put in the existing pdoentries in there.
Simply change
<pdo idx="1b01">
to
<pdo idx="1a00">
and switch
<pdo idx="1701">
to
<pdo idx="1600">
2. Put that right pdoentries in the 1b01 and 1701 pdos. Let's try 1. first.
Please Log in or Create an account to join the conversation.
- conman
- Away
- New Member
-
Less
More
- Posts: 7
- Thank you received: 0
03 Nov 2025 21:30 #337785
by conman
Replied by conman on topic Help with Inovance IS620N Servo Drive - Stays in PREOP
I got the files from this post
forum.linuxcnc.org/ethercat/55806-long-i...-drive-sv660n#337330
It was from a user hanz24 at the bottom of the first page. They too were using an inovance drive but a newer model.
I tried the 1. step but no luck. Maybe I am doing something fundamentally wrong.
forum.linuxcnc.org/ethercat/55806-long-i...-drive-sv660n#337330
It was from a user hanz24 at the bottom of the first page. They too were using an inovance drive but a newer model.
I tried the 1. step but no luck. Maybe I am doing something fundamentally wrong.
Please Log in or Create an account to join the conversation.
- Hakan
- Away
- Platinum Member
-
Less
More
- Posts: 1009
- Thank you received: 334
04 Nov 2025 07:31 #337795
by Hakan
Replied by Hakan on topic Help with Inovance IS620N Servo Drive - Stays in PREOP
No, this is close. It should work. But I have sometimes noticed that the ethercat master
uses old settings and not the new ones. Keep 1a00 and 1600.
Try these in order
"ethercat rescan",
if no change "sudo systemctl restart ethercat",
and finally if no change, restart PC and drives.
See error messages in syslog when you start linuxcnc
You should also, not causing the problem with the drive, but still, change the line order in the hal file to
uses old settings and not the new ones. Keep 1a00 and 1600.
Try these in order
"ethercat rescan",
if no change "sudo systemctl restart ethercat",
and finally if no change, restart PC and drives.
See error messages in syslog when you start linuxcnc
You should also, not causing the problem with the drive, but still, change the line order in the hal file to
addf lcec.read-all servo-thread
addf cia402.0.read-all servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf cia402.0.write-all servo-thread
addf lcec.write-all servo-threadPlease Log in or Create an account to join the conversation.
- Configuring LinuxCNC
- Advanced Configuration
- EtherCAT
- Help with Inovance IS620N Servo Drive - Stays in PREOP
Time to create page: 0.101 seconds