Lets get Ethercat into the Linuxcnc distribution. Need technical people to help

More
01 Mar 2022 12:24 #236100 by rodw
I need some Ethercat technical volunteers to get ethercat supported in the main linuxcnc distribution.
I don't know if you guys know but Linuxcnc is now in the Debian unstable branch. That means in the next few days, it will automatically turn up in debian 12/Bookworm/Testing branch.The devs say that then they'll work on getting it into Bullseye.
See: packages.debian.org/unstable/linuxcnc-uspace

I suggested on the developers email list that with the greater appreciation of the many licenses in Linuxcnc from the Debian project that revisiting the licensing of Ethercat might be revisited.

Yesterday Steffen Moeller, the Debian Team Member who has been guiding this project had some phone conversations with Beckhoff and reported back:

I called them up - first the Beckhoff group (they have nice stuff on  www.beckhoff.com/en-gb/ ) and from there I was pointed to the EtherCAT Technology Group ( www.ethercat.org/de/contact.html ), so I called them, too. Without that membership we would be in said uncharacterized unmitigated license trouble  that Andy referenced but with that membership they would be very sweet to us. From what I understand, they try to be good people and just in case someone messes something up they do not want to guess how to reach out. So we are asked to become a member of the EtherCAT Technology Group (ETG) - for which we would identify someone who would serve as a communicator between them and our community and write a "3-line email" with our request to integrate an EtherCAT driver that is available at some URL with LinuxCNC as described on  linuxcnc.org .

I do not see that Debian would become a member of their Technology Group. And it would not make too much sense to me to have any extra outreach from Debian to that ETG, but we can ask for an OK to have that distribution channel and also ask for Fedora at the same time.

Now - big question: Is there an agreement that it would be beneficial for LinuxCNC to become a member of the ETG? It is free. And there likely a series of perks for training material that may not be of our immediate concern. They invited me to help with that initial contact but that LinuxCNC-representative to them could then be anyone we pick. Andy? Rod? You both? Jeff? All three of yours?


I volunteered to be an admin contact for licensing purposes but do not know enough technical stuff. So I am calling for volunteers to get this project done.
Where is Dominik, Grotius, Sascha and the other pioneers?

I also wanted to get Dominik's cia402.comp into the main code base.

If you can help with this, please register your interest on this thread and email me at:
ethercat @ (V)ictor (M)ike (N)ovember .com.au (my 3 letter .au domain)

Please lets work together to get this into Debian. Come forward and/or share this post and email with the right people who can help.
The following user(s) said Thank You: tommylight, bkt, Henk, Grotius, justus

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

More
01 Mar 2022 21:45 #236130 by Grotius
Hi Rod,

It's good to keep contact with Beckhoff. I don't use email anymore. But you can contact me here.

If you ship the Ethercat software with Debian, you can consider to install it in the ~/opt/ dir.
In my opinion lcnc belongs also in the ~/opt/ dir.
Programs like autodesk draftsight are also installed as above.

If Ethercat is installed in the lcnc source dir like : ~opt/linuxcnc/src/addons/ethercat/
it's also ok for me.

The only thing the Debian distro makers have to realize is to set correct permissions to the ~/opt/ dir during chrooting and before
making the actual squash-fs file.

I remember, my last distro was 8gb in size. This is a problem to host on Github. Up to 4gb. can be hosted for free on sites like Sourceforge. A solution to host big iso's is to integrate a online installer in menu bar.

I would certainly ship precompiled lcnc's, ethercat's etc. And considering leaving the source code out, is in fact also no problem
when not using it as dev.

I think for the "Debian team" a debian-distro with a menu installer (in application menu) would keep the initial iso size around 2.5 gb.
Additional software like Ethercat, lcnc, etc. Can be selected trough the application menu installer button.
Menu installer example : example_script
Note: this is also handy to restore the system to a certain state.

Another thing is to not use halcompile for Eterhcat. Just compile it with gcc, g++.
Hal-core has such compile scripts available.

I also wanted to get Dominik's cia402.comp into the main code base.
If you have a link i can look and create a gcc, g++ compile script.

If Beckhoff would give me the source of their driver program, wich is currently only for Windows. I could compile it for linux.
That would be a huge step for them.

But anyway. You can ask me to do things, no problem.

Greetings from Europe.
ps.  Putin is a Monster.



 
The following user(s) said Thank You: tommylight, rodw

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

More
01 Mar 2022 22:21 - 01 Mar 2022 22:24 #236136 by db1981
May be, that are good news.

The linuxcnc-ethercat hal driver is only a tool which setups (lcec_conf) an ethercat rt environment and exports hal pins for ethercat pdo values. It is all based on the IGH Etherlabmaster.
Integrating it into linuxcnc, means that you have to deploy the etherlabmaster project with linuxcnc. Or that etherlabmaster has to become an offizial debian package.
I don't know anything about the legals for this case.

Additional I am not sure if the right terminolgy has been used in the communication with Beckhoff / ETG. Because we want to integrade an whole
"Ethercat Master" not only an "Device Driver" ....

I'm sorry, but i can't give an forecast about the time of my person for the next months.
I changed my main business (software development automation plc and cnc) ~15 years ago.
And at these days now, the forced 2 year covid holiday for me (sound engineer...) and my employees is hopefully over. I'm not shure how the business will develops the next weeks, but if the rockn'roll gets rolling again, my lcnc time will for the first moment become very less....
Last edit: 01 Mar 2022 22:24 by db1981.
The following user(s) said Thank You: rodw

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

More
03 Mar 2022 05:58 #236242 by Grotius
Hi Db,

Or that etherlabmaster has to become an offizial debian package.
Yes
, that is normally the way to go.

For example. Freecad depends on Opencascade lib (occt). What they did is created a official deb package

But in the end Freecad's appimage as it is shipped has all the libs (including the occt lib) inside the appimage, so
Then as a result the deb package can be used in a dev environment when programming Freecad.

Then when using a linux tool like "live build", this is the same tool lcnc uses to create a lcnc iso (Andy) it is easy to add
one line to the "live build" script, that installs ethercat master alongside other ethercat software.
When ethercat is provided as .deb package it can be installed everywhere you want. For example in the
lcnc source tree like : ~opt/linuxcnc/src/addons/ethercat/

To mention: A powerfull tool on github is to use scripts. Then ethercat software can be compiled for 32 bit, 64 bit, arm, etc online.
Then also runtests can be performed to test if it works.

I don't use "live build" anymore. My current workflow is to use "debootstrap". (setup linux filesystem) And from there i "chroot" (log in) on the linux filesystem environement including using a visual environment (graphic virtual desktop) to setup any iso i want to create.

It's feels just like hacking a server with a external desktop view, and full control over anything.
Some log's are here.












 
The following user(s) said Thank You: tommylight, rodw

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

More
29 Mar 2022 14:35 #238614 by TheRoslyak
Hi Grotius
Not so long ago, you sent me a ready-made etherlab deb package for the kernel above > 5.
Could you explain in more detail, how you were able to build it from the IgH EtherCAT Master source? (For 5.4 kernal)

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

More
29 Mar 2022 19:51 #238642 by rodw

Hi Grotius
Not so long ago, you sent me a ready-made etherlab deb package for the kernel above > 5.
Could you explain in more detail, how you were able to build it from the IgH EtherCAT Master source? (For 5.4 kernal)

Grotius helped me out like this too.

Its not actually necessary anymore because there is a unofficial repository maintained by the IgH etherlabmaster team.
The repo has versions for many Linux Distros and kernel versions and is built daily

I posted instructions on how to install from this repo on a sticky here
forum.linuxcnc.org/ethercat/45336-etherc...-how-to-step-by-step 

I have installed from this repo on Debian running the 5.10 and 5.16 kernel during testing.
The following user(s) said Thank You: TheRoslyak

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

More
30 Mar 2022 12:25 - 30 Mar 2022 15:48 #238721 by TheRoslyak
Thank You rodw.I try this way - and got successful resultBut the problem is the following - I want to build Ethercat driver for other architecture than x86.Just adding a repository and downloading the required packages is no good - need to build from source IgH EtherCAT Master.The fact is that the build sources for this architecture are closed and built on the 5.4 kernel, and at least I need to know how to build EtherCAT Master on x86 for 5.4 kernel
Last edit: 30 Mar 2022 15:48 by TheRoslyak.

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

More
30 Mar 2022 15:40 #238748 by rodw
Great to hear their repo worked for you.

What architecture do you wish to use? Their repo supports a  range of Linux distributions and CPU architecture.
These would have been evident if you followed the link to it on the page you were referencing
build.opensuse.org/project/show/home:bon...hes:science:EtherLab

It will probably work for you....

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

More
30 Mar 2022 17:47 - 30 Mar 2022 17:47 #238765 by Grotius
Hi Roslyak,

Not so long ago, you sent me a ready-made etherlab deb package for the kernel above > 5.
Could you explain in more detail, how you were able to build it from the IgH EtherCAT Master source? (For 5.4 kernal)


This is a log how to compile the ethercat master, as shipped with different distro's in .deb archive style :
github.com/grotius-cnc/debian_distro_liv.../compile-ethercat.md

Once you have it compiled, you could consider to create a .deb archive. How to make a .deb archive seems difficult,
but once you get it, it's a nice way. You can also do a compile for a kernel when unpacking the .deb archive.
The postinst file is a script file inside the .deb archive that can do almost every script you want to do except :
"apt get install". Haha.

If you want to cross compile it for another kernel. You have to install other kernel stuff and duckduck what is needed to
do that. Compiling it for amd, amr, x32 etc is possible. Easyest way is to compile it for current running system.






 
Last edit: 30 Mar 2022 17:47 by Grotius.

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

More
30 Mar 2022 18:42 - 30 Mar 2022 18:42 #238786 by TheRoslyak
Thank yo so much.
I already tried this guide. Everything is successful.
Did not have time to write here)
But I have not yet understood this method installs "ethercat-dkms libethercat libethercat-dev ethercat-master"?
Can you explain in more detail how to make a deb package out of this using x86 as an example.
I am working on a information and guide to install linuxcnc + ethercat for "sparc" architecture.
Now I do not have board with this processor, source of OS and RT-kernel - but will be soon.

+ PS Is it possible to build linuxcnc + ethercat on jetson xavier nx
Last edit: 30 Mar 2022 18:42 by TheRoslyak.

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

Time to create page: 0.190 seconds
Powered by Kunena Forum