Ethercat HAL driver
Grotius wrote: Hi,
One thing you can check is the following. You have used capital letters in your mac. They are different then your terminal output.
Maybe it can cause an issue.
Yes the mac is correct, I tried with uppercase and lowercase
I attach l’output file
Grotius wrote: What does this command tell you : $ ethercat cstruct ?? or ./ethercat cstruct
File Attachment:File Name: slave_2020-11-20.c
File Size:20 KB
If you can marbles the link the ISO and the installation steps
Grotius wrote: Installing your link is an option. But there is a iso you can use. Wich makes the full process about 10 minutes.
thanks for your time.
chimeno wrote: Hello @tetw
I don't understand what your problem is, it is best to start a device one by one, first the ones included in linuxcnc-ethercat and the generic ones are the last ones, don't configure anything until you have registered PDOs and devices in OP.
I can't bring the slaves to OP mode.
dmesg | egrep EtherCAT [ 10.316518] EtherCAT: Master driver 1.5.2 unknown [ 10.316767] EtherCAT: 1 master waiting for devices. [ 10.325681] ec_generic: EtherCAT master generic Ethernet device module 1.5.2 unknown [ 10.325708] EtherCAT: Accepting 00:A0:D2:A5:C0:73 as main device for master 0. [ 10.336070] EtherCAT 0: Starting EtherCAT-IDLE thread. [ 10.336161] EtherCAT 0: Link state of ecm0 changed to UP. [ 10.345732] EtherCAT WARNING 0: 1 datagram TIMED OUT! [ 11.350801] EtherCAT WARNING 0: 125 datagrams TIMED OUT! [ 12.354137] EtherCAT WARNING 0: 125 datagrams TIMED OUT! [ 13.358682] EtherCAT WARNING 0: 121 datagrams TIMED OUT! [ 14.151273] EtherCAT 0: Link state of ecm0 changed to DOWN. [ 80.361852] EtherCAT: Requesting master 0... [ 80.361861] EtherCAT: Successfully requested master 0. [ 80.361899] EtherCAT 0: Domain0: Logical address 0x00000000, 0 byte, expected working counter 0. [ 80.363775] EtherCAT 0: Master thread exited. [ 80.363780] EtherCAT 0: Starting EtherCAT-OP thread. [ 80.369196] EtherCAT WARNING 0: 97 datagrams TIMED OUT! [ 80.397692] EtherCAT 0: Master thread exited. [ 80.397706] EtherCAT 0: Starting EtherCAT-IDLE thread. [ 80.397810] EtherCAT 0: Releasing master... [ 80.397815] EtherCAT 0: Released. [ 80.625045] EtherCAT WARNING: Datagram f6a2e250 (master-fsm) was SKIPPED 1 time. [ 94.471306] EtherCAT: Requesting master 0... [ 94.471315] EtherCAT: Successfully requested master 0. [ 94.471382] EtherCAT ERROR 0 0:1: PDO entry 0x6000:01 is not mapped. [ 94.471965] EtherCAT 0: Releasing master... [ 94.471977] EtherCAT 0: Released.
I don't have that controller but you basically have
enable these pins:
Switch ON Enable Voltage Enable Operation
Actual Position => joint.0.motor-pos-fb ProfileTargetPosition <= joint.0.motor-pos-cmd
you have an error in some PDO or device configuration, can you attach the configuration file .xml I take a look?
chimeno wrote: In my experience, the generic driver works very well if you have few connected devices, enough if they are in free mode and if it is in SYNC0 mode, nothing happens if a cycle is lost because the next cycle I will read the data again, but if you have many devices and you use the SYNC0 and SYNC1 mode, I advise you to use the e1000e controller, the configuration of the devices is much faster and you have no loss of synchronism.
Do you have some links on this topic?
Since Grotius' image worked fine out of the box, I did not look in to alternative drivers.
What are 'many' devices? A cnc mill usually comes with 3 axis and a few IOs.
I am in contact with Beckhoff for the 7041-1000 configuration at the moment. If someone has additional documentation on the Config of this card, please let me know.
Don't buy the 7041 or 7041-1000. I tested both version's. They work but the output power is very low. In my opinion only suitable
for a 3d printer. This is a product for companies like asml.
Also the max output speed is not what i was expecting. They cost too much => ROI.
What i like the most is a :
EL2124 + (for example the dm860) stepper driver. This works really amazing. I have config files for this available.
What you could do, and i also advice if you want to do some research. Buy one chineze ethercat stepper driver and bring this to live with linuxcnc and share your experiences.
Right now I do not have any links for practical applications, many devices such as 50, although I have 43 devices connected in generic mode without problems using the PLL patch, now I want to switch to the e1000e controller. The generic driver works for all network cards, for example to use the e1000e driver you need a card with the specific intel chip, never used El7041 although it should not be difficult, if you have the manual and TWINCAT easy to configure.
I Succeeded install etherlab on top of current linuxcnc raspberry pi image to rpi4. I started ethercat and bus starts to blink fast with EK1100.
I also installed Beremiz to same image. And CanFestival. I am using cheap isolated 2-channel can hat from aliexpress (2-Channel Isolated CAN Expansion HAT,for Raspberry Pi,MCP2515 + SN65HVD230). I configured first channel to master and second to slave. Bus jumpered with wire. CanOpen bus starts communicate. There are some new cheap integrated ethercat AC-servomotor US $134.19, es in aliexpress. Also CanOpen models seems to be available even cheaper. I noticed that ethercat have been tested for Openplcproject with RPI also. All information and developers are separated and working with same problems without idea that someone is making just same thing elsewhere.
I've installed grotius iso , but error don't change.
when I add slaves other than "EK1100" in the xml file ($home/Desktop/linuxcnc_axis/configs/sim.qtvcp_screens/ethercat_lcec.xml -- for grotius iso) in position "idx1"
"EL1104" EtherCAT ERROR 0 0: 1: PDO entry 0x6000: 01 is not mapped. (reading error) EtherCAT WARNING 0: 125 datagrams TIMED OUT! "EL2004" EtherCAT ERROR 0 0: 1: PDO entry 0x7000: 01 is not mapped. (Write error)
either giving a "name=" or not.
File Attachment:File Name: ethercat_l...1-23.xml
File Size:0 KB
I checked both the EL1104 and EL2004 are available for the Lcec.
Your file is correct, your Os and Ethercat bus is correct.
Have you tried another cat4 cable? What does $ ethercat cstruct
say to you in terminal with only the EK1100?
And what do it say to you with EL1104 connected?
And what do it say to you with EL2004 connected?
This must work give the correct output, this command is doing a core command to the ethercat bus.
Is your EL1104 and EL2004 new out the box?
Are the EK1100 bus light's flickering fast?
Be aware of your filename..
It is ethercat-conf.xml
At this location : /home/ **yourname** /Desktop/linuxcnc_axis/configs/sim.qtvcp_screens/
You are giving up a different story by :