Comms modules
AXC-005 — nRF24L01+ socket carrier PMOD module
Catalog #5 in the AruviX comms line, level L3 (SPI + CE/IRQ). Socket carrier for the ubiquitous nRF24L01+ breakout — generic 2×4 pin socket, no custom footprint. Cheap two-way robot remote: pairs with the joystick module (axo-013) and the actuator line.
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 | Socket HF decoupling | GRM188R71C104KA01DMurata |
C_0603_1608Metric |
C2 |
10uF 10V X5R | Socket bulk: nRF24 TX ramp brownout is the classic failure | GRM21BR61A106KE19LMurata |
C_0805_2012Metric |
C3 |
10uF 10V X5R | Socket bulk (second reservoir) | GRM21BR61A106KE19LMurata |
C_0805_2012Metric |
J1 |
PMOD PLUG 2x6 | PMOD peripheral plug (Digilent spec 1.2) | not selected generic |
PinHeader_2x06_P2.54mm_Horizontal |
J2 |
nRF24 SOCKET (2x4) | Socket for an nRF24L01+ breakout: 1 GND, 2 VCC, 3 CE, 4 CSN, 5 SCK, 6 MOSI, 7 MISO, 8 IRQ | not selected generic |
PinSocket_2x04_P2.54mm_Vertical |
R1 |
100R | Series protection on the module-driven MISO line | RC0603FR-07100RLYageo Datasheet ↗ |
R_0603_1608Metric |
R2 |
100R | Series protection on the module-driven ~IRQ line | RC0603FR-07100RLYageo Datasheet ↗ |
R_0603_1608Metric |
R3 |
10k | ~IRQ pull-up (active-low interrupt, pulled up on-module per line rule) | RC0603FR-0710KLYageo Datasheet ↗ |
R_0603_1608Metric |
R4 |
10k | CE pull-DOWN: radio stays in standby until the host drives CE high | RC0603FR-0710KLYageo Datasheet ↗ |
R_0603_1608Metric |
Signals#
Net labels used in the schematic, which are also the names the HDL top level should use.
3V3 CE CS_N GND IRQ_N MISO MOSI NRF_IRQ NRF_MISO 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/comms-modules/axc-005-nrf24
Catalog #5 in the AruviX comms line (../README.md), level L3 (SPI + CE/IRQ). Socket carrier for the ubiquitous nRF24L01+ breakout — generic 2×4 pin socket, no custom footprint. Cheap two-way robot remote: pairs with the joystick module (axo-013) and the actuator line.
Status: schematic generated, ERC clean (0/0), netlist reviewed. PCB layout not started. Not released.
What it teaches#
Enhanced ShockBurst packet radio: SPI command set, auto-ack/retransmit, pipe addressing, and the CE/~IRQ dance (CE pulse >10 µs fires a packet; ~IRQ signals RX/TX/MAX_RT events on a PMOD pin per the platform rule).
Design#
- J2 = standard nRF24 2×4 socket pinout: 1 GND, 2 VCC, 3 CE, 4 CSN, 5 SCK, 6 MOSI, 7 MISO, 8 IRQ. Orientation warning on the schematic and (at layout) silkscreen: a reversed breakout swaps VCC onto GND — match the breakout's own key/silkscreen before power.
- PMOD Type 2A: 1 ~CS(CSN), 2 MOSI, 3 MISO via 100 Ω, 4 SCK, 7 ~IRQ via 100 Ω with 10 k pull-up (active low), 8 CE with 10 k pull-down so the radio stays in standby until the host drives it.
- Bulk at the socket: 2 × 10 µF + 100 nF — brownout during the TX power-amp ramp is the classic nRF24 field failure on breakouts fed from thin rails.
- RF keep-out: the socket end of the outline stays clear so the breakout's PCB antenna hangs off-board (line rule).
| PMOD pin | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Net | ~CS | MOSI | MISO | SCK | GND | 3V3 | ~IRQ | CE | NC | NC | GND | 3V3 |
Regenerate#
python3 generate_design.py
Remaining for release#
- [ ] PCB layout (socket at the far edge, antenna overhang, bulk caps at the socket pins), DRC, fab outputs
- [ ]
hdl/:nrf24_ctrlcore, testbench, two-board link demo - [ ] BOM export and availability check, design-review checklist