Hardware Map

Waveshare ESP32-S3-Relay-6CH bridge + PCA9685. Use this map to plan new controls — every "free" row is ready to wire.

← Helm

Relay outputs (GPIO)

6 used · 2 free
  • GPIO 4usedK1 — Port ballast FILL
  • GPIO 5usedK2 — Port ballast EMPTY
  • GPIO 6usedK3 — Starboard ballast FILL
  • GPIO 7usedK4 — Starboard ballast EMPTY
  • GPIO 15usedK5 — Center ballast FILL
  • GPIO 16usedK6 — Center ballast EMPTY
  • GPIO 17freeK7 — Spare relayAny 12 V accessory ≤10 A: docking lights, stereo remote, bilge, etc.
  • GPIO 18freeK8 — Spare relaySecond spare relay. Same 10 A limit per channel.

Sensor / safety inputs (GPIO)

4 used · 1 free
  • GPIO 11usedPort bag full sensorVent-line pressure switch, N.O. → GND
  • GPIO 12usedStarboard bag full sensor
  • GPIO 13usedCenter bag full sensor
  • GPIO 14freeSpare inputGood for a paddle-wheel flow switch or a second E-Stop.
  • GPIO 21usedE-Stop N.C. loopINPUT_PULLUP; LOW = pressed

I²C bus (reserved)

0 used · 0 free
  • GPIO 8reservedSDA → PCA9685
  • GPIO 9reservedSCL → PCA9685
  • GPIO 10reservedPCA9685 OE (optional)

PWM channels (PCA9685)

9 used · 7 free
  • Ch 0usedPort plate actuator — RPWM (extend)BTS7960 H-bridge input, 1000 Hz
  • Ch 1usedPort plate actuator — LPWM (retract)
  • Ch 2usedPort plate actuator — R_EN + L_ENDrops to 0 on E-Stop → actuator free-wheels
  • Ch 3usedStarboard plate actuator — RPWM
  • Ch 4usedStarboard plate actuator — LPWM
  • Ch 5usedStarboard plate actuator — R_EN + L_EN
  • Ch 6usedCenter plate actuator — RPWM
  • Ch 7usedCenter plate actuator — LPWM
  • Ch 8usedCenter plate actuator — R_EN + L_EN
  • Ch 9freeSpare PWM channelNext free — good for an LED dimmer or a fourth actuator driver.
  • Ch 10freeSpare PWM channel
  • Ch 11freeSpare PWM channel
  • Ch 12freeSpare PWM channel
  • Ch 13freeSpare PWM channel
  • Ch 14freeSpare PWM channel
  • Ch 15freeSpare PWM channel

Avoid GPIO 0, 3, 19, 20, 26–32, 33–37, 43, 44 on the ESP32-S3 — those are strapping, USB, PSRAM, or flash pins and are not safe as general-purpose I/O.