The schematic has been arranged automatically. Flux can redraw it to be more readable, with components placed in related groups and wires drawn more legibly. This takes about 10-60 mins.
Project Specification
Project Overview
Status: Review. A vertically mounted, USB-C-powered dashboard compass for a Toyota FJ Cruiser. An ESP32-S3-WROOM-1-N8R2 reads an onboard LIS2MDL magnetometer and drives three red 1.5-inch FJ15103AH 16-segment displays. Wi-Fi and Bluetooth LE are available but disabled by default in the starter firmware.
Intended Use
Passenger-facing dashboard installation in a printable enclosure.
USB-C supplies 5 V power and native USB Serial/JTAG programming.
Production-intent prototype assembled in one normal JLCPCB PCBA order.
Final calibration is performed in the installed enclosure with the intended USB cable and non-magnetic mounting hardware.
What the Device Should Do
Display a stable 16-point compass heading across three characters.
Allow brightness and sleep/wake control from the rotary encoder.
Start a magnetometer calibration from a long encoder press and retain calibration in flash.
Support firmware upload and serial logging over the native USB connector.
Keep Wi-Fi/Bluetooth LE off unless explicitly enabled by application firmware.
Main Features
ESP32-S3-WROOM-1-N8R2, 8 MB flash and 2 MB PSRAM.
Three FJ15103AH common-cathode displays driven by an AiP1629A.
SN74AHCT125 level translation from 3.3 V control signals to the 5 V display driver.
LIS2MDL I2C magnetometer.
PEC11R rotary encoder with push switch.
USB-C power, ESD protection, PPTC protection, and native USB Serial/JTAG.
AP63203WU-7 fixed 3.3 V, 2 A synchronous buck regulator.
System Architecture
Diagram
Hardware Subsystems
Compute and programming
U1 is ESP32-S3-WROOM-1-N8R2.
GPIO19 = USB D− and GPIO20 = USB D+ through U2 USBLC6-2SC6.
EN uses a 10 kΩ pull-up, 1 µF capacitor, and reset button.
GPIO0 uses a 10 kΩ pull-up and boot button.
The obsolete STM32 SWD header and STM32 DFU assumptions are removed.
Display system
The FJ15103AH is a red, common-cathode 16-segment through-hole display. Pin 1 is the common cathode, pins 2–17 are segment anodes, and the package outline is 31 × 43 × 8.5 mm.
U5 AiP1629A drives SEG1–SEG16 and GRID1–GRID3.
GRID4–GRID8 remain cleared in display RAM.
U7 SN74AHCT125 translates GPIO10/11/12 to 5 V DATA/CLK/STB.
Sixteen 470 Ω resistors provide deterministic segment current limiting.
Firmware brightness is capped at the 12/16 command.
Sensor and controls
GPIO8/9 = I2C SCL/SDA to LIS2MDL.
GPIO4/5/6 = encoder A/B/switch.
Magnetometer placement must remain away from the buck inductor/switch node, display-current paths, encoder metalwork, and ferromagnetic mounting hardware.
Interfaces and Connections
Table
ESP32-S3 pin
Net
Function
GPIO19
USB_DM
Native USB D−
GPIO20
USB_DP
Native USB D+
GPIO8
I2C_SCL
LIS2MDL clock
GPIO9
I2C_SDA
LIS2MDL data
GPIO10
DISP_DATA
Display serial data
GPIO11
DISP_CLK
Display clock
GPIO12
DISP_STB
Display strobe/latch
GPIO4
ENC_A
Encoder A
GPIO5
ENC_B
Encoder B
GPIO6
ENC_SW
Encoder switch
GPIO0
ESP_BOOT
Boot strap button
EN
ESP_EN
Reset/enable
Power and Runtime Expectations
Source: USB-C 5 V, no USB Power Delivery.
Conservative system ceiling: 500 mA from USB 5 V.
5 V powers the display driver and AHCT buffer directly.
AP63203 converts 5 V to 3.3 V for ESP32-S3 and LIS2MDL.
The full conservative simultaneous RF/display estimate is approximately 479 mA, leaving approximately 21 mA to the 500 mA ceiling.
Power Tree and Power Budget
Table
Path
Conservative peak
Display segments, driver, and level translator on 5 V
196 mA
3.3 V rail load
365 mA
3.3 V rail reflected to 5 V at 85% efficiency
283 mA
Total USB input
479 mA
ESP32-S3-WROOM-1 Wi-Fi TX can reach 355 mA at 802.11b, 1 Mbps, 20.5 dBm, 100% duty-cycle conditions.
Manufacturing and Assembly Expectations
One normal JLCPCB PCBA order; no consignment or user-soldered displays.
Four-layer board with Mid-Layer 1 used as the primary continuous ground reference.
Preserve DS1–DS3, SW1, J1, and all mounting-hole geometry.
Use non-magnetic enclosure hardware near U4.
Firmware-Relevant Hardware Requirements
PlatformIO + Arduino framework for ESP32-S3.
Native USB CDC/Serial/JTAG enabled at boot.
AiP1629A RAM clear before display enable; unused grids always zero.
LIS2MDL identity check, heading calculation, calibration, and Preferences storage.
Encoder brightness, sleep/wake, and long-press calibration.
Wi-Fi and BLE stacks not initialized by default.
Physical Design Expectations
125 × 65 mm board; front display, encoder, USB, and hole geometry is locked.
U1 is on the bottom at the left edge, antenna facing outward.
An 18.0 × 5.75 mm component-local antenna zone is excluded from components and copper on all copper layers.
Maintain at least 15 mm housing clearance in all directions around the PCB antenna and verify throughput/range in the finished enclosure (Espressif PCB layout guidance).
Important Design Decisions
ESP32-S3 replaces the STM32 and removes the SWD header.
Native USB Serial/JTAG is the normal programming path.
AP63203 replaces the AP2112 LDO to support ESP32-S3 RF current without excessive dissipation.
U1 is edge-mounted on the bottom to preserve the approved front-panel geometry.
U4 is placed in the quiet upper-right region; the buck cluster is lower-right.
Assumptions
The product is a mobile installation but is not intended for body-worn or portable use.
Wireless functions are optional; regulatory obligations still apply if firmware enables transmission.
The exact antenna-zone numeric geometry follows the module footprint/package drawing; the datasheet text confirms Figure 11-1 is the authoritative land-pattern source but does not expose the drawing labels as machine-readable text.
Change Notes
Replaced STM32, SWD, DFU, and AP2112 references with ESP32-S3, native USB, and AP63203.
Added final GPIO mapping, RF placement/keepout, enclosure clearance, and wireless regulatory requirements.
Updated conservative input budget to approximately 479 mA.