While I am waiting for the order to be fulfilled, I am looking at the documentation, with special interest for the Linux/Arduino RPC communication.
The tutorial here shows how to use the Arduino library Arduino_RPClite on the MCU side of the Q, and uses the Python Bridge class in a script running on the MPU side (Linux).
All nice and fine, but I really prefer coding in C++ on the linux side, but I cannot find the documentation for how to do the same RPC calls from a C++ program running on the Linux MPU side.
Now that I have time (and the Q at hand), this is not what I was asking for. Looking into the container ghcr.io/arduino/app-bricks/python-apps-base, I see that the Python Bridge class is pure Python, not a wrapper of some C++ class.
So that is unfortunate. If there's no C++ MPU-side Bridge class, I can only write a custom one, I guess...
It is recommended to manage all the RPC communications through the arduino-router, which is running as a system daemon on the Linux side. Of course, you can implement an RPC endpoint using any language you prefer.
Thanks, that is a starting point. Documentation is rather sparse though. I mean, there's only the repo README. I suppose one has to implement a MsgPack RPC call and channel it to the socket /var/run/arduino-router.sock according to https://github.com/arduino/arduino-router/tree/main/msgpackrpc, right?
The simplest way is to use serial port Serial1 on Arduino and /dev/ttyHS1 on Linux to communicate, after deactivating Bridge service with sudo service arduino-router stop
Then, on Linux side, you can use any programming language that support serial communication. You can even use simple scripts in bash with redirections to/from /dev/ttyHS1.