Porting OpenCN on Raspberry Pi 4

We are currently porting OpenCN on Raspberry Pi 4 as a first board endowed with ARM quadcore CPUs.
Among other things, this port includes :

  • Adapting the network driver with RTDM realtime support
  • Working with the hard float VFP/Neon within the kernel
  • Remote GUI management

The EtherCAT support was added to the Pi4 network driver.

Next: add the RTDM realtime support :grinning:

Remote GUI management

The communication between OpenCN platform and the Remote GUI will be done trough RPC (remote procedure call).
We selected Cap’n Proto as framework.

I’m pleased that you have choosen Cap’n Proto. I have been working on learning how to use it several months but my progress has been slow.

We have an initial beta version of the updated GUI.
Most of the features are working fine :slight_smile:

Here is a small status on the topic:

  • AMP kernel is booting
  • Most of the OpenCN component have been ported (streamer, sampler, threads, lcec, …)
  • EtherCAT driver is working

I made servo Inverter cards with Ethercat suitable for CNC machine, currently run them in Linuxcnc with my own driver based on soes/soem not released under GNU license because I am in doubt about licensing of Ethercat. I also added an extra feature to send a record of data from inverter card in real time then configured to. Get real time data from Micro controller control loop run at 20kHz then Ethercat message is sent at 1kHz logged into file which could then be visulised in Octave.

I’m pleased to announce that we did, this week, initial test on the M3 CN machine. It worked well !

OpenCN was running on rpi4 and the GUI on my laptop.