Skip to content

Hangar I/O board

Boards / ESP32-P4-Module, DroneCAN

The hangar I/O board does the dock I/O that the Rover board commands, and it has no authority of its own.

Revision
A draft
Sheets
1
Parts
177
Location
dock
Bus
DroneCAN, the dock bus to the Rover board
Status
Rev A draft: schematic only

What it does

The dock controller has three boards. An ArduPilot board that runs Rover has all the authority. This board does only the I/O that the Rover board tells it to do. The site node carries voice, cameras and the network.

The board generates the pulses for the four push bar steppers and the four pin servos. The Rover board holds the stepper enable line and the servo supply in hardware. A fault on this board thus cannot move a bar or a pin. The enable line STEP_EN is active high, so an unplugged lead or a dead Rover board disables the drivers.

The board is also the Modbus bridge to the RD6006 charger. It reads the lid drive current and the bay temperature and humidity. It drives two 12 V fans and a 12 V rail heat cable; the heat cable has its own fuse, so it cannot take the 12 V rail of the drivers down. Nothing on it touches mains. If it goes silent on DroneCAN, the Rover board counts a fault and stops the charge.

Since 2026-10-11 it also charges the aircraft’s 2S lighting battery, which used to charge on board until that charger proved too hot beside the LiPo. An isolated 15 V supply feeds a 2S charger that delivers 0.65 A, or 0.2 A for the final taper, to 8.38 V. The output goes to the dock’s two L springs, which meet the aft segments of the keel strips. The supply is isolated from the flight-pack charger and the dock ground, because the lighting battery’s negative is the aircraft’s ground. The Rover board decides when to charge, from the cell voltages the aircraft reports. This board passes its commands across the isolation through three optocouplers driven from an I2C expander. The expander’s pins come up as inputs after any reset, so a fault here leaves the charge off, or at the low current.

Where it sits

The board goes on the dock bay floor, beside the Rover board, on a printed PETG tray. Its budget is 120 x 90 mm and 40 mm high (th-hangar, 2026-10-06). Bay 12 V supplies it.

Main parts

Part Function
Waveshare ESP32-P4-Module MCU; its WiFi chip is held in reset
4 x TMC2209 Push bar stepper drivers
TCAN330 CAN transceiver
TPS54202 12 V to 3.3 V buck
SHT40 Bay temperature and humidity
BSZ018N04LS6 Rail heat switch, up to 5 A on its own fuse
Traco TMR 10-1213WI, LT3652 Isolated 15 V supply and the lighting battery’s 2S charger
PCA9536, 3 x LTV-357T I2C expander and optocouplers across the charger’s isolation

Connections

Connector Type To
J2 XT30 Bay 12 V in
J3 VH-2 Rover-switched servo rail
J4 XH-2 STEP_EN from the Rover board
J5, J6 GH-4 Dock DroneCAN in and out
J10 to J13 XH-4 Push bar steppers
J21 to J24 2.54 mm 3-pin Pin servos
J30 GH-4 RD6006 TTL port
J31 XH-3 Lid drive current sense
J32 GH-4 Remote I2C sensor
J33, J34 XH-4 Fans with tach
J35 VH-2 Rail heat cable, 12 V, up to 5 A (60 W) on its own 5 A fuse F3
J40 XH-2 Lighting-battery charge to the dock’s L springs: 1 L+, 2 L-
J1 USB-C Flash and console only

Status

Rev A draft schematic, 2026-10-07 (EDA 7c648eb), with the lighting-battery charger added on 2026-10-11 (EDA 46293c0). ERC gives 0 warnings and 1 waived error (the charger’s timer pin tied to ground on purpose, for end of charge at a tenth of the current), and there is no layout. Before layout, the RD6006 TTL level (3.3 V assumed) and the P4 USB download pair must be confirmed. The stepper current of 0.6 to 0.8 A rms for each motor is an ESTIMATE.

Schematic and layout

Files

From the EDA repository at revision b201257 (2026-10-12). Open the files in KiCad 10 or later.

Comments on

    Comments are reviewed before they appear. Please leave out places, addresses and other personal details.

    A Supported Systems Flight

    This build log is written and kept by Supported Systems, a small studio that makes thoughtful, user-first technology. The airframe, the hangar and the simulation are ours.

    Visit supported.systems