Solar-Powered Dashboard Compass

proceed
I’ll proceed with post-substitution layout cleanup, then route the PCB and run DRC/airwire checks. I’ll keep this to the routing phase and report any manufacturing blockers separately.
Routed the PCB: auto-routing completed and added 558 trace/via nodes while preserving the portrait board, centered vertical display stack, and isolated magnetometer placement.
Open blocker:
  • The board is not yet JLC-ready because U3’s STM32 footprint has duplicate exposed-pad thermal sub-pads overlapping the grounded center pad. Final checks show 9 overlapping-copper errors and 1 remaining GND airwire, all tied to that U3 footprint issue.
Suggested next steps:
  1. Replace/correct U3’s footprint with a clean STM32L031 UFQFPN/QFN-32 exposed-pad footprint.
  2. Re-run DRC and route cleanup after the footprint fix.
  3. Re-check JLC/LCSC BOM status before manufacturing export.
Fix U3 footprint
Find alternate MCU
Rerun DRC after fix
Review manufacturability
Preserve layout intent

Refine this doc
Ask about this doc
Firmware Pin Map — Solar Dashboard Compass
MCU
STM32L031K4U6 (U3), 3.3 V logic.
I2C Magnetometer
  • PB6: I2C_SCL → QMC5883L SCL, 10 kΩ pull-up to 3V3
  • PB7: I2C_SDA → QMC5883L SDA, 10 kΩ pull-up to 3V3
  • PB8: MAG_DRDY → QMC5883L DRDY
  • QMC5883L I2C address: 0x0D
Seven-Segment Segment Lines
These are shared across all three digits through 47 Ω series resistors:
  • PA0: segment A
  • PA1: segment B
  • PA2: segment C
  • PA3: segment D
  • PA4: segment E
  • PA5: segment F
  • PA6: segment G
  • Decimal points are not used and are marked no-connect.
Digit Enables
Common cathodes are switched with MMBT2222A low-side transistors:
  • PA7: digit 1 enable via Q1
  • PB0: digit 2 enable via Q2
  • PB1: digit 3 enable via Q3
Boot / Reset
  • NRST: 10 kΩ pull-up to 3V3 with 0.1 µF to GND
  • BOOT0: pulldown resistor to GND
Firmware Behavior Recommendations
  • Read QMC5883L at 10–50 Hz, then average/filter heading.
  • Apply hard-iron/soft-iron calibration in firmware.
  • Multiplex display at >100 Hz total refresh to avoid visible flicker.
  • Use PWM dimming and blank the display in low-light/no-solar conditions to reduce current draw.
  • Store calibration offsets in nonvolatile memory if available.
  • MCU

  • I2C Magnetometer

  • Seven-Segment Segment Lines

  • Digit Enables

  • Boot / Reset

  • Firmware Behavior Recommendations

Assets

Assets are files uploaded to this project which can be used in various ways.

Solar Dashboard Compass thumbnail
Solar-powered dashboard compass with LiPo storage, QMC5883L magnetometer, STM32L031 controller, and three multiplexed red 7-segment displays.

Properties

V

Pricing & Availability

Distributor

Qty 1

Arrow

$3.57–$4.21

Digi-Key

$14.97

HQonline

$5.46

LCSC

$18.40–$27.70

Mouser

$18.44

TME

$3.71

Verical

$2.52–$9.81

Controls