Software / firmware: STM32 firmware via SWD pogo programming; RS-485 runtime communications to Raspberry Pi master
Scope
Purpose
Create a schematic-only flexible PCB sensor node for an everting soft robot skin. Each node locally measures an 18-cell capacitive tactile array plus 6-axis IMU data, then reports compact packets over a shared RS-485 bus.
In scope
STM32G031G8U6 MCU, IMU, CDC, analog multiplexers, RS-485 transceiver, local regulation, SWD pogo pads
18 capacitive sensor-pad electrical interface using three 8:1 multiplexers and one FDC1004 CDC
Schematic notes and net labeling supporting flex stiffened-island implementation
This node is one of five identical modules distributed along a 1.2 m sensorized skin section. A Raspberry Pi at the robot base acts as RS-485 bus master, polling nodes for tactile and inertial measurements.
Key interfaces
5 V input rail and ground from shared bus harness
RS-485 A/B shared half-duplex communication bus
SWD pogo pads: SWDIO, SWCLK, NRST, 3.3V, GND
18 capacitive sensor pads into three multiplexers
Architecture
Diagram
Requirements
Functional
The board shall acquire 18 capacitive tactile channels as a 6 x 3 matrix using one FDC1004 and three TMUX1308 multiplexers.
The board shall acquire 6-axis inertial data from the ICM-42688-P over SPI using an interrupt-capable connection.
The board shall communicate over a shared half-duplex RS-485 bus using master-polled node responses.
The board shall support SWD-based programming and debug through pogo pads.