FC Carrier (RP2350A-Mini)
Public Made by Adomby adom
Flight-controller carrier for the single-motor drone cell: hosts the RP2350A-Mini, bridges 5 V to two loads, monitors the 5 V rail into the mini's ADC, and carries a hardware E-stop that drives the ESC brake. 38.8 x 70.8 mm, 4-layer, 32 x 64 mm datum.
FC Carrier v1.0 — Function
38.80 × 70.80 mm, 4-layer. Machine-pin datum 32.000 × 64.000 mm. Hosts the rp2350a-mini, bridges 5 V to two loads, and carries the E-stop.
Peripheral allocation
RP2350 has 2 UART, 2 SPI, 2 I2C, 3 PIO / 12 state machines. The cell needs three UARTs.
UART0 -> ESC carries AM32 flashing
UART1 -> Motor module carries DFU flashing
PIO -> RX module 2 SM
PIO -> DSHOT 1 SM
PIO -> WS2812 1 SM
4 of 12 SM used
Both flashing links are on hardware UARTs. 18 of 28 broken-out GPIO used.
Fitted parts
| Ref | Part | Function |
|---|---|---|
| U1 | AP2112K-3.3 | 5 V → 3.3 V for the mini, which takes 3.3 V. C7 10 µF in, C1 10 µF out, both within 2.8 mm |
| D1 | SMF6.0A | TVS at the 5 V entry. Clamps at 10.3 V max |
| C2, C3–C6 | 22 µF + 4 × 10 µF | distributed bulk on the 5 V rail |
| R1, C8 | 10 k + 100 n | FC_RST — fixes the idle level against the 32–86 kΩ internal pull-up; 1 ms RC |
| R3 | 10 k | FC_BOOT — its idle otherwise comes only from QSPI_SS's internal pull-up through 1 k |
| R5 | 10 k pull-up | ToF INT is open-drain (the sensor molecule also carries R3 2.2 k) |
| R7 | 10 k pull-down | ToF EN — holds the sensor off until firmware enables it |
| R8, R9, C10 | 51 k / 51 k + 100 n | 5 V monitor → ADC2. 2.50 V at 5.00 V in, 49 µA. No buffer needed — the ADC's effective impedance is over 100 kΩ even at 500 kS/s |
| SW1 | tact | local reset |
| SW2, R2, LED1, C9 | button + 10 k + LED + 100 n | E-stop |
| J1 | BM03B-SRSS-TB | SWD probe landing |
E-stop wiring
+3v3 --[R2 10k]--+-- /ESTOP -- MC27 -> ESC brake (TIM1_BKIN)
+-- SW2 (normally open) -- GND
+-- LED1 <- [R4 3.3k] <- +3v3
+-- C9 100n
LED1 shows the kill state with no firmware running, and the button sits on the same node.
Board state
0 DRC violations. All 52 contacts on the 2 mm lattice. GND is one island on In1 and one on In2. 101 vias, all 0.6/0.3. No mounting holes — machine pins only. Silkscreen outstanding.
The Molecule_RP2350A_v1 library part has Rx1 and Tx1 on the wrong pads in both symbol and
footprint — see Pinout.md. Pad numbers land on the correct physical contacts.
# FC Carrier v1.0 — Function
38.80 × 70.80 mm, 4-layer. Machine-pin datum 32.000 × 64.000 mm. Hosts the rp2350a-mini, bridges
5 V to two loads, and carries the E-stop.
## Peripheral allocation
RP2350 has 2 UART, 2 SPI, 2 I2C, 3 PIO / 12 state machines. The cell needs three UARTs.
```
UART0 -> ESC carries AM32 flashing
UART1 -> Motor module carries DFU flashing
PIO -> RX module 2 SM
PIO -> DSHOT 1 SM
PIO -> WS2812 1 SM
4 of 12 SM used
```
Both flashing links are on hardware UARTs. **18 of 28 broken-out GPIO used.**
## Fitted parts
| Ref | Part | Function |
|---|---|---|
| U1 | AP2112K-3.3 | 5 V → 3.3 V for the mini, which takes 3.3 V. C7 10 µF in, C1 10 µF out, both within 2.8 mm |
| D1 | SMF6.0A | TVS at the 5 V entry. Clamps at 10.3 V max |
| C2, C3–C6 | 22 µF + 4 × 10 µF | distributed bulk on the 5 V rail |
| R1, C8 | 10 k + 100 n | FC_RST — fixes the idle level against the 32–86 kΩ internal pull-up; 1 ms RC |
| R3 | 10 k | FC_BOOT — its idle otherwise comes only from QSPI_SS's internal pull-up through 1 k |
| R5 | 10 k pull-up | ToF INT is open-drain (the sensor molecule also carries R3 2.2 k) |
| R7 | 10 k pull-down | ToF EN — holds the sensor off until firmware enables it |
| R8, R9, C10 | 51 k / 51 k + 100 n | 5 V monitor → ADC2. 2.50 V at 5.00 V in, 49 µA. No buffer needed — the ADC's effective impedance is over 100 kΩ even at 500 kS/s |
| SW1 | tact | local reset |
| SW2, R2, LED1, C9 | button + 10 k + LED + 100 n | E-stop |
| J1 | BM03B-SRSS-TB | SWD probe landing |
## E-stop wiring
```
+3v3 --[R2 10k]--+-- /ESTOP -- MC27 -> ESC brake (TIM1_BKIN)
+-- SW2 (normally open) -- GND
+-- LED1 <- [R4 3.3k] <- +3v3
+-- C9 100n
```
LED1 shows the kill state with no firmware running, and the button sits on the same node.
## Board state
0 DRC violations. All 52 contacts on the 2 mm lattice. GND is one island on In1 and one on In2.
101 vias, all 0.6/0.3. No mounting holes — machine pins only. Silkscreen outstanding.
**The `Molecule_RP2350A_v1` library part has `Rx1` and `Tx1` on the wrong pads** in both symbol and
footprint — see `Pinout.md`. Pad numbers land on the correct physical contacts.