Open DanielsMaCoogan opened 6 years ago
cc @jespersmith
The coalesce settings are for certain Intel network cards to reduce the latency by disabling some buffering. If they cannot be set, it usually means that the network card does not support one or more of those settings. It can usually be safely ignored.
You could look at EtherCATRealtimeThread.getEtherCATTransactionTime() and if it is very large (for a small number slaves, I usually see around 0.1ms - 0.2ms) or has a lot of jitter we might need to look into setting the correct settings for the I211 network card.
It pretty much does what this comment in the SOEM source advices: https://github.com/OpenEtherCATsociety/SOEM/blob/master/drvcomment.txt. You could play around with ethtool to see which options are support. Unfortunately, I'm not very familiar with all these settings.
|4.9.64-rt51 RT_Preempt patch, Debian Stretch | |open JDK 1.8|
As mentioned in previous dialogue I have had some of the examples running with hardware successfully. Having got this far I attempted to do a fresh installation on a new computer that I installed with the OS and kernel listed above. This time however i am getting an error upon running the application that reads: "Cannot write desired coalesce options to network card". I would like to know if you have any suggestions for finding the cause of the issue. I suspect I have either made an error during the installation of the kernel and there are issues associated with realtime performance or there are hardware compatibility issues with this particular network card.
I downloaded and ran the following but am in the process of trying to figure out what I should be expecting. " mz3@mz3comp12:~$ sudo cyclictest --smp -p95 -m
/dev/cpu_dma_latency set to 0us
policy: fifo: loadavg: 0.11 0.13 0.32 1/390 2755
T: 0 ( 2748) P:95 I:1000 C: 30900 Min: 2 Act: 3 Avg: 4 Max: 230 T: 1 ( 2749) P:95 I:1500 C: 20594 Min: 2 Act: 3 Avg: 5 Max: 1408 T: 2 ( 2750) P:95 I:2000 C: 15444 Min: 3 Act: 4 Avg: 5 Max: 225 T: 3 ( 2751) P:95 I:2500 C: 12353 Min: 3 Act: 4 Avg: 5 Max: 163 " output from lspci : " 00:00.0 Host bridge: Intel Corporation Atom Processor Z36xxx/Z37xxx Series SoC Transaction Register (rev 0e) 00:02.0 VGA compatible controller: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Graphics & Display (rev 0e) 00:13.0 SATA controller: Intel Corporation Atom Processor E3800 Series SATA AHCI Controller (rev 0e) 00:14.0 USB controller: Intel Corporation Atom Processor Z36xxx/Z37xxx, Celeron N2000 Series USB xHCI (rev 0e) 00:1a.0 Encryption controller: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Trusted Execution Engine (rev 0e) 00:1b.0 Audio device: Intel Corporation Atom Processor Z36xxx/Z37xxx Series High Definition Audio Controller (rev 0e) 00:1c.0 PCI bridge: Intel Corporation Atom Processor E3800 Series PCI Express Root Port 1 (rev 0e) 00:1c.1 PCI bridge: Intel Corporation Atom Processor E3800 Series PCI Express Root Port 2 (rev 0e) 00:1c.2 PCI bridge: Intel Corporation Atom Processor E3800 Series PCI Express Root Port 3 (rev 0e) 00:1c.3 PCI bridge: Intel Corporation Atom Processor E3800 Series PCI Express Root Port 4 (rev 0e) 00:1f.0 ISA bridge: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Power Control Unit (rev 0e) 00:1f.3 SMBus: Intel Corporation Atom Processor E3800 Series SMBus Controller (rev 0e) 01:00.0 Ethernet controller: Intel Corporation I211 Gigabit Network Connection (rev 03) 02:00.0 Ethernet controller: Intel Corporation I211 Gigabit Network Connection (rev 03) 03:00.0 Ethernet controller: Intel Corporation I211 Gigabit Network Connection (rev 03) 04:00.0 Ethernet controller: Intel Corporation I211 Gigabit Network Connection (rev 03) " thanks in advance for your help and please don't hesitate to request any further information.