(Not ready for end users yet, but this was fun)
So the ‘arduino on linux’ API layer seems mostly functional now. This allowed us to get meshtastic running on the “pinetab lora USB module” - which is essentially a USB to SPI to SX1278 radio. This is also the same hardware that is built into the lora versions of the pinetab (when they start shipping them).
But there are a couple of reasons this might be useful for non pinetab users:
- Lots of devtype people have asked about running meshtastic directly on a RasberryPi (or similar). This is now possible.
- There are some RasberryPi shields that provide (just) a lora radio, that connect to the Pi CPU over SPI. This would now make support for those boards easy.
- Porting meshtastic so it can also run on top of linux allowed me to find a couple of bugs which have always been happening on the esp32 (but were not easily detected there)
- This portduino library is packaged as an official PlatformIO “framework”, so (once I improve the docs some) it should make it easy to run other arduino sketches/apps on top of linux (directly, as user level processes, with a bit of kernel help). You can configure portduino to either use real hardware for GPIOs/SPI/etc… or simulated devices that just log to a window.
- This will improve our simulation layer so that we can simulate and develop on an ‘easier’ desktop OS.
Please ignore how dirty my laptop is…