Sensor modules
AXS-018 — ICM-20602 high-rate 6-axis IMU PMOD module
Catalog #18 in the AruviX sensor line, level L4 (high-rate SPI streaming). Uses the ICM-20602 instead of the catalog's original ICM-42688-P, which has no stock KiCad symbol/footprint; the ICM-20602 is the same 32 kHz-gyro-class, FIFO-streaming TDK part, so the streaming/DMA curriculum is unchanged.
Circuit review & bench-test guide →
Components#
Every placed component, with the reason it is on the board. Extracted directly from the schematic, so this cannot drift from the design.
| Ref | Value | What it does on this board | Part number | Footprint |
|---|---|---|---|---|
C1 |
100nF 16V X7R | VDD decoupling | GRM188R71C104KA01DMurata |
C_0603_1608Metric |
C2 |
100nF 16V X7R | VDDIO decoupling | GRM188R71C104KA01DMurata |
C_0603_1608Metric |
C3 |
2.2uF 10V X5R | Module bulk decoupling | not selected Murata |
C_0603_1608Metric |
C4 |
100nF 16V X7R | REGOUT internal-regulator bypass per datasheet | GRM188R71C104KA01DMurata |
C_0603_1608Metric |
J1 |
PMOD PLUG 2x6 | PMOD peripheral plug (Digilent spec 1.2) | not selected generic |
PinHeader_2x06_P2.54mm_Horizontal |
R1 |
100R | Series protection on the sensor-driven MISO line | RC0603FR-07100RLYageo Datasheet ↗ |
R_0603_1608Metric |
R2 |
100R | Series protection on the sensor-driven INT1 line | RC0603FR-07100RLYageo Datasheet ↗ |
R_0603_1608Metric |
R3 |
10k | ~CS idle pull-up so an unconfigured host cannot drop the part into I2C mode | RC0603FR-0710KLYageo Datasheet ↗ |
R_0603_1608Metric |
U1 |
ICM-20602 | High-performance 6-axis IMU, 3-axis gyro + 3-axis accel, SPI/I2C, 1 kB FIFO | ICM-20602TDK InvenSense Datasheet ↗ |
LGA-16_3x3mm_P0.5mm_LayoutBorder3x5y |
Signals#
Net labels used in the schematic, which are also the names the HDL top level should use.
3V3 CS_N GND IMU_INT1 IMU_SDO INT1 MISO MOSI REGOUT SCK
Production status#
| Schematic ERC | 0 violations |
|---|---|
| PCB layout | complete |
| DRC | 0 violations |
| Fab package | exported (24 gerbers + drill + CPL + BOM) |
| Fabricated | no — design stage only |
Source: boards/sensor-modules/axs-018-icm20602
Catalog #18 in the AruviX sensor line (../README.md), level L4 (high-rate SPI streaming). Uses the ICM-20602 instead of the catalog's original ICM-42688-P, which has no stock KiCad symbol/footprint; the ICM-20602 is the same 32 kHz-gyro-class, FIFO-streaming TDK part, so the streaming/DMA curriculum is unchanged.
Status: schematic generated, ERC clean (0/0), netlist reviewed. PCB layout not started. Not released.
What it teaches#
Sustained high-rate SPI streaming: 32 kHz gyro sample class, the 1 kB FIFO, watermark interrupts, and moving samples into fabric buffers faster than a polled register loop can.
Design#
- ICM-20602, LGA-16 3×3 mm. VDD and VDDIO both on 3V3, 100 nF each, plus a 2.2 µF bulk capacitor (Murata X5R 0603; exact orderable MPN marked TBD-confirm in the BOM fields).
- REGOUT (internal regulator) bypassed with 100 nF to GND per datasheet; FSYNC tied to GND (unused input); RESV pin left open (no-connect typed in the stock symbol, per datasheet).
- 10 kΩ pull-up on ~CS; sensor-driven MISO and INT1 pass through 100 Ω series resistors.
| PMOD pin | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Net | ~CS | MOSI | MISO | SCK | GND | 3V3 | INT1 | NC | NC | NC | GND | 3V3 |
SPI mode 0 or 3, max 10 MHz.
Regenerate#
python3 generate_design.py
Remaining for release#
- [ ] Confirm the 2.2 µF bulk capacitor orderable part (GRM188R61A225KE34D)
- [ ] PCB layout (20 × 25 mm outline), DRC, fab outputs
- [ ]
hdl/: SPI master + FIFO streamer, watermark IRQ handler, testbench, ECP5 demo - [ ] BOM export and availability check, design-review checklist