Help with Inovance IS620N Servo Drive - Stays in PREOP

More
02 Nov 2025 09:17 #337699 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!

 

File Attachment:

File Name: is620n-test.hal
File Size:2 KB

File Attachment:

File Name: ethercat-conf.xml
File Size:1 KB

File Attachment:

File Name: is620n-test.ini
File Size:1 KB
Attachments:

Please Log in or Create an account to join the conversation.

  • Hakan
  • Away
  • Platinum Member
  • Platinum Member
More
02 Nov 2025 11:22 #337702 by Hakan
You need to add the vid and pid item in the <slave line.
You find the numbers with "ethercat slaves -v"

Please Log in or Create an account to join the conversation.

More
02 Nov 2025 19:03 #337728 by conman
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>

Please Log in or Create an account to join the conversation.

More
02 Nov 2025 19:15 #337730 by conman
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?

Please Log in or Create an account to join the conversation.

  • Hakan
  • Away
  • Platinum Member
  • Platinum Member
More
02 Nov 2025 20:34 #337733 by Hakan
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.

Please Log in or Create an account to join the conversation.

More
03 Nov 2025 07:47 #337748 by conman
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.

Please Log in or Create an account to join the conversation.

More
03 Nov 2025 19:35 #337779 by conman
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?

 

File Attachment:

File Name: IS620N-Eca....6.8.xml
File Size:441 KB
Attachments:

Please Log in or Create an account to join the conversation.

  • Hakan
  • Away
  • Platinum Member
  • Platinum Member
More
03 Nov 2025 20:23 #337782 by Hakan
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 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".
Invalid 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.

 

Please Log in or Create an account to join the conversation.

More
03 Nov 2025 21:30 #337785 by conman
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.

Please Log in or Create an account to join the conversation.

  • Hakan
  • Away
  • Platinum Member
  • Platinum Member
More
04 Nov 2025 07:31 #337795 by Hakan
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
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-thread
 

Please Log in or Create an account to join the conversation.

Time to create page: 0.101 seconds
Powered by Kunena Forum