Beckhoff ethercat 64 with bit linuxcnc, How to install.

More
24 Feb 2024 23:41 - 24 Feb 2024 23:42 #294286 by scottlaird
Okay, it looks like 1.17.1 has been built and should be available. If you're using a semi-standard setup, then `sudo apt update; sudo apt upgrade` should grab it.

I also filed github.com/linuxcnc-ethercat/linuxcnc-ethercat/issues/318 about fixing the period and frequency stats.
Last edit: 24 Feb 2024 23:42 by scottlaird.
The following user(s) said Thank You: johntrevick

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

More
25 Feb 2024 00:08 #294295 by johntrevick
thank you again.

Starting linuxcnc gives the same error.  In dmesg I get: 

[    8.354394] EtherCAT 0: Link state of ecm0 changed to UP.
[    8.362375] EtherCAT 0: 12 slave(s) responding on main device.
[    8.362379] EtherCAT 0: Slave states on main device: PREOP.
[    8.362565] EtherCAT 0: Scanning bus.
[   10.177301] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save enabled
[   10.187401] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save disabled
[   10.366838] EtherCAT ERROR 0-11: SDO upload 0x0000:00 aborted.
[   10.366848] EtherCAT ERROR 0-11: SDO abort message 0x06020000: "This object does not exist in the object directory".
[   10.366852] EtherCAT ERROR 0-11: Failed to read number of mapped PDO entries.
[   10.366854] EtherCAT ERROR 0-11: Failed to read mapped PDO entries for PDO 0x0000.
[   10.366857] EtherCAT 0: Bus scanning completed in 2004 ms.
[   10.366860] EtherCAT 0: Using slave 0 as DC reference clock.
[   10.366863] EtherCAT ERROR 0: Failed to calculate bus topology.
[   12.934524] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[   13.486339] EtherCAT WARNING 0-3: SDO information error response while fetching SDO entry 0x1801:07!
[   13.486354] EtherCAT ERROR 0-3: SDO abort message 0x06090011: "Subindex does not exist".
[ repeats a number of times]
[   15.801841] EtherCAT WARNING 0-9: SDO information error response while fetching SDO entry 0x1804:09!
[   15.801843] EtherCAT ERROR 0-9: SDO abort message 0x06090011: "Subindex does not exist".
[   37.316486] EtherCAT: Requesting master 0...
[   37.316497] EtherCAT: Successfully requested master 0.
[   37.443948] EtherCAT ERROR 0 0:8: PDO entry 0x6000:0D is not mapped.
[   37.444032] EtherCAT 0: Releasing master...
[   37.444122] EtherCAT 0: Released.


I removed devices 9,10,11 from my ethercat-conf.xml file and get this:  

[  442.511124] EtherCAT: Requesting master 0...
[  442.511133] EtherCAT: Successfully requested master 0.
[  442.512471] EtherCAT ERROR 0 0:8: PDO entry 0x6000:0D is not mapped.
[  442.512698] EtherCAT 0: Releasing master...
[  442.512732] EtherCAT 0: Released.
 

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

More
25 Feb 2024 00:20 #294299 by scottlaird
Okay, let's try 1.17.2 then :-). At least it's a new object this time -- one of the status pins that we weren't even reading yet.

If this fails with a similar error, can you include 'ethercat pdos -p 8'?

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

More
25 Feb 2024 00:31 #294301 by scottlaird
This plus all of the weird little issues I've have with CiA 402 make me wonder if we want to have a trivial way to specify sync + lcec_pdo_init() settings together. I'd love to be able to say "please map this object, of size X, for input, and record info about it here -->"

Maybe bonus points for "...and expose it as a pin named A, possibly with mapping function B"

For CiA 402, I currently have 42 optional pins *per axis*, each of which takes 17 lines of code to handle. It's totally boilerplate at this point, mostly handled through C preprocessor abuse, but it's still annoying. The common case of "just map these objects to these pins" takes too much code and it's too hard to read.

Unfortunately, this is starting to look more like C++ than C. So it goes on the "gee, it'd be nice" list, not the "go out and write it" list.

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

More
25 Feb 2024 00:44 #294303 by johntrevick
[ 2543.482956] EtherCAT: Requesting master 0...
[ 2543.482965] EtherCAT: Successfully requested master 0.
[ 2543.484381] EtherCAT 0: Domain0: Logical address 0x00000000, 82 byte, expected working counter 11.
[ 2543.484385] EtherCAT 0:   Datagram domain0-0-main: Logical offset 0x00000000, 82 byte, type LRW.
[ 2543.484446] EtherCAT 0: Master thread exited.
[ 2543.484449] EtherCAT 0: Starting EtherCAT-OP thread.
[ 2543.833956] EtherCAT 0: Master thread exited.
[ 2543.834042] EtherCAT 0: Starting EtherCAT-IDLE thread.
[ 2543.834106] EtherCAT 0: Releasing master...
[ 2543.834109] EtherCAT 0: Released.

 

File Attachment:

File Name: pdos.txt
File Size:5 KB
Attachments:

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

More
25 Feb 2024 16:48 #294399 by johntrevick
OP! I have OP! WOOHOO!

Thank you Thank you Thank you so much!

Still have to attach my encoders and try it out and I will let you know how it goes. I didn't attach them before because the documentation said something about 5, 12, or 24 supply for the encoders and didn't want to risk it.
The following user(s) said Thank You: scottlaird

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

More
25 Feb 2024 19:05 #294431 by johntrevick
I've hooked up the encoders and the counts are working on both channels.

I'm not really sure the change from last night. I added back in my servo drives in ethercat-conf.xml so I could move the XY stage around to test some home switches and it was working.

I was working on in the morning trying to get tigervncserver running and did some apt-get update & upgrade. I was doing that last night too when trying to get the updates you were posting. Perhaps I only got the latest update when I did it again this morning.

In anycase, thank you again.

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

Time to create page: 0.107 seconds
Powered by Kunena Forum