Another hobby of mine is building industrial models with the German fischertechnik system.
As the official fischertechnik controller features an I²C bus, I decided ten years ago to design my own advanced sensors and that is how I started to explore the embedded world.
The official controllers from fischertechnik suffer from three main problems:
- The controllers are black-boxes,
- They are expensive,
- The software is proprietary and lacks key features like testing and debugging.
Hence the idea of designing my own controllers and leveraging IIoT to save cables. I’ve summarised the project at Industrial IoT Project.
The key element is the selection of the radio and protocol, around three criteria:
- Low-power.
- Out-of-the-shelf and standard radio protocols.
- QoS to ensure messages are delivered.
Applying those criteria to the obvious options gives:
- An easy solution is WiFi with TCP/IP and MQTT because everything is ready and available, but WiFi requires too much power.
- I’m discarding BLE for its over-complication.
- Last option, sub-1 GHz brings low-power and robustness but needs a convenient application layer protocol to be considered as a valid option.
There is a nice MQTT-SN implementation for the Moteino boards, but the Moteino boards are still based on an old 8-bit MCU.
Where Seeed comes in? The idea would be a compact radio the Xiao could plug into.
Connection would be done through either the SPI port (3 or 4 pins with /CS) or Serial1 (2 pins but 4 pins with probably CTS + RTS), leaving the I²C bus and enough pins to drive sensors like colour reader, proximity sensors, and peripherals like stepper motor controller, DC motor controllers and screens.
@ming.wen What do you think?