Can the OPI5 be Configured to Run LCNC?

More
2 years 1 month ago #310220 by briansm
These results are from my tests with the OrangePi 5 Plus and OrangePi 5 Max using the kernel patch (version 5.10.160) from your Google Drive.

I attempted to patch kernel 6.1 with PREEMPT_RT patches but couldn't achieve the same low latency levels

Please Log in to join the conversation.

More
2 years 1 month ago #310460 by nhanpham
Hello, I am using the Orange Pi 5 Plus. I’m running Debian from the official Orange Pi website, and I have installed a real-time kernel patch (version 5.10.160). When I run LinuxCNC, I encounter this error when starting hm2:
Code:
iptables: Failed to initialize nft: Protocol not supported hm2_eth: ERROR: Failed to execute 'env "PATH=/usr/sbin:/sbin/${PATH}" iptables -A hm2-eth-rules-output -o enP3p49s0 -p icmp -j DROP'
The real-time kernel is working very well, but I am experiencing many errors related to total_packet_errors, which was showed in hal

Please Log in to join the conversation.

More
2 years 1 month ago #310516 by royka
@nhanpan You probably need to pin the ethernet irq to another core, preferably an isolated core. The irq you can get by entering the command: cat /proc/interrupts and find your ethernet adapters. In case yours also start with "enP" you could enter:
grep enP /proc/interrupts
Code:
185:          0          0          0          0     799186          0          0          0   ITS-MSI 428343296 Edge      enP3p49s0 186:          0          0          0          0          0          0          0          0   ITS-MSI 570949632 Edge      enP4p65s0

To pin them to cpu5 with the above result as example you could add to /etc/rc.local in a line above "exit 0"
sleep 15 && echo 20 > /proc/irq/185/smp_affinity & echo 20 > /proc/irq/186/smp_affinity

It seems that the error tells that the kernel doesn't support that, perhaps a missing module? But with the irqs pinned you can ignore the message.

Please Log in to join the conversation.

More
2 years 1 month ago #310519 by royka
@briansm The 6.1 kernel is a bsp kernel so I doubt it patched successfully, you might have more luck with patching the 6.11 kernel including these patches and use the right config:
github.com/armbian/build/tree/main/patch...rockchip-rk3588-6.11

But some things might not work yet. If you can't figure it out, maybe I'll take a look at it sometime. But for now I don't see much added value in it.

Please Log in to join the conversation.

More
2 years 1 month ago #310556 by nhanpham
Thank you very much. After reinstalling the kernel, adding iptables, and assigning IRQ to core 7, everything worked perfectly. I was able to run with SERVO_PERIOD = 500,000 for 6 hours without any issues.

@nhanpan You probably need to pin the ethernet irq to another core, preferably an isolated core. The irq you can get by entering the command: cat /proc/interrupts and find your ethernet adapters. In case yours also start with "enP" you could enter:
grep enP /proc/interrupts
Code:
185:          0          0          0          0     799186          0          0          0   ITS-MSI 428343296 Edge      enP3p49s0 186:          0          0          0          0          0          0          0          0   ITS-MSI 570949632 Edge      enP4p65s0 To pin them to cpu5 with the above result as example you could add to /etc/rc.local in a line above "exit 0" sleep 15 && echo 20 > /proc/irq/185/smp_affinity & echo 20 > /proc/irq/186/smp_affinity It seems that the error tells that the kernel doesn't support that, perhaps a missing module? But with the irqs pinned you can ignore the message.

Please Log in to join the conversation.

More
2 years 3 weeks ago #311320 by s.o.v.a
Hi, guys!
It seems that using a GPU improves latency on this board.
Without:
 

Attachment not found


With:
 

Attachment not found


Code:
$ glxinfo | grep Device     Device: llvmpipe (LLVM 14.0.0, 128 bits) (0xffffffff) # no hardware acceleration $ glxinfo | grep Device     Device: Mali-G610 (Panfrost) (0xffffffff) # hardware acceleration here

Good thread:
dietpi.com/forum/t/orange-pi-5-hardware-...tion-enabled/16387/2

If you are using Armbian Jammy, you just follow the instructions. (You may encounter two errors that are easy to google)
I'm using Bookworm so manually installed .debs
Code:
$ ls libd3dadapter9-mesa_23.0.5-0ubuntu1~panfork~git221210.120202c6757~j3_arm64.deb libdri2to3_1.0.5-2_arm64.deb libegl1-mesa_23.0.5-0ubuntu1~panfork~git221210.120202c6757~j3_arm64.deb libegl-mesa0_23.0.5-0ubuntu1~panfork~git221210.120202c6757~j3_arm64.deb libgbm1_23.0.5-0ubuntu1~panfork~git221210.120202c6757~j3_arm64.deb libgl1-mesa-dri_23.0.5-0ubuntu1~panfork~git221210.120202c6757~j3_arm64.deb libgl1-mesa-glx_23.0.5-0ubuntu1~panfork~git221210.120202c6757~j3_arm64.deb libgl4es_1.1.4-1+git230404.22af242~j2_arm64.deb libglapi-mesa_23.0.5-0ubuntu1~panfork~git221210.120202c6757~j3_arm64.deb libgles2-mesa_23.0.5-0ubuntu1~panfork~git221210.120202c6757~j3_arm64.deb libglx-mesa0_23.0.5-0ubuntu1~panfork~git221210.120202c6757~j3_arm64.deb libmali-g610-x11_1.0.5-2_arm64.deb libosmesa6_23.0.5-0ubuntu1~panfork~git221210.120202c6757~j3_arm64.deb libwayland-egl1-mesa_23.0.5-0ubuntu1~panfork~git221210.120202c6757~j3_arm64.deb mali-g610-firmware_1.0.2_all.deb malirun_1.0.5-2_all.deb mesa-opencl-icd_23.0.5-0ubuntu1~panfork~git221210.120202c6757~j3_arm64.deb mesa-va-drivers_23.0.5-0ubuntu1~panfork~git221210.120202c6757~j3_arm64.deb mesa-vdpau-drivers_23.0.5-0ubuntu1~panfork~git221210.120202c6757~j3_arm64.deb mesa-vulkan-drivers_23.0.5-0ubuntu1~panfork~git221210.120202c6757~j3_arm64.deb # all *arm64*.deb files excluding *dev* (development stuff) $ sudo apt install ./*.deb ... The following additional packages will be installed:   libclang-common-14-dev libclc-14 libclc-14-dev libllvm14 libvdpau1 libvulkan1 ocl-icd-libopencl1 Recommended packages:   libclang-rt-14-dev The following NEW packages will be installed:   libclang-common-14-dev libclc-14 libclc-14-dev libd3dadapter9-mesa libdri2to3 libegl1-mesa libgl1-mesa-glx libgl4es libgles2-mesa   libllvm14 libmali-g610-x11 libosmesa6 libvdpau1 libvulkan1 libwayland-egl1-mesa mali-g610-firmware malirun mesa-opencl-icd   mesa-va-drivers mesa-vdpau-drivers mesa-vulkan-drivers ocl-icd-libopencl1 The following packages will be upgraded:   libegl-mesa0 libgbm1 libgl1-mesa-dri libglapi-mesa libglx-mesa0 5 upgraded, 22 newly installed, 0 to remove and 0 not upgraded. ... $ sudo reboot
 

Please Log in to join the conversation.

More
2 years 3 weeks ago #311533 by royka
6.11 also seems to give good results, rt patched the source from:
github.com/Joshua-Riek/linux-rockchip/tree/oracular

Audio doesn't work here and perhaps some other features are missing, for those who would still like to try:
 
Kernel deb package and config:
drive.google.com/drive/folders/1JglCIPKv...cjOvr?usp=drive_link

An easy way to install with gpu acceleration is to install the image 6.10.6 with backported mesa from:
mirror.vinehost.net/armbian/dl/orangepi5/archive/
or
mirror.vinehost.net/armbian/dl/orangepi5-plus/archive/

Install the kernel with: sudo apt install ./linux*.deb
Then copy the dtb files: sudo cp /usr/lib/linux-image-6.11.0-rt7-g375956b48579-dirty/rockchip/* /boot/dtb/rockchip/
And link the Image file to the rt-kernel: cd boot; sudo ln -sf vmlinuz-6.11.0-rt7-g375956b48579-dirty Image


 

Attachment not found

Please Log in to join the conversation.

More
2 years 2 weeks ago #311810 by royka
 
Also tested the 6.1.75 vendor kernel (with panthor driver), only after loading chromium and watching videos on youtube the latency raised a bit as you can see, but still very acceptable. Isolating all the fast cores improved that, but for me it's not worth it as it becomes noticeable slower.

For the rt-patch only a few had to be done manually for the serial 8250 driver because of some vendor edits.

Kernel/config
drive.google.com/drive/folders/1JglCIPKv...cjOvr?usp=drive_link

An easy way to install with gpu acceleration is to install the kernel on the image 6.1.75 with backported mesa from:
mirror.vinehost.net/armbian/dl/orangepi5/archive/
or
mirror.vinehost.net/armbian/dl/orangepi5-plus/archive/

Install the kernel with: sudo apt install ./linux*.deb
And link the Image file to the rt-kernel: cd boot; sudo ln -sf vmlinuz-6.1.75-rt23 Image

Please Log in to join the conversation.

More
2 years 2 weeks ago #311947 by onceloved

 
Also tested the 6.1.75 vendor kernel (with panthor driver), only after loading chromium and watching videos on youtube the latency raised a bit as you can see, but still very acceptable. Isolating all the fast cores improved that, but for me it's not worth it as it becomes noticeable slower.

For the rt-patch only a few had to be done manually for the serial 8250 driver because of some vendor edits.

Kernel/config
drive.google.com/drive/folders/1JglCIPKv...cjOvr?usp=drive_link

An easy way to install with gpu acceleration is to install the kernel on the image 6.1.75 with backported mesa from:
mirror.vinehost.net/armbian/dl/orangepi5/archive/
or

mirror.vinehost.net/armbian/dl/orangepi5-plus/archive/

Install the kernel with: sudo apt install ./linux*.deb
And link the Image file to the rt-kernel: cd boot; sudo ln -sf vmlinuz-6.1.75-rt23 Image
Where is the kernel source code for 6.1.75? I installed it and WiFi doesn't work. I plan to recompile it to turn on WiFi.

Please Log in to join the conversation.

More
2 years 2 weeks ago #311949 by onceloved
Or you can help me compile and turn on WiFi. I use the AX200 wireless network card. Thank you.

Please Log in to join the conversation.

Time to create page: 0.200 seconds
Powered by Kunena Forum