

Compass
A compact electronic compass and environmental sensing board built around the STM32WB35CEU6A microcontroller. The design combines a 3-axis magnetometer, barometric pressure sensor, USB-C connectivity, and BLE capability…
- Size
- 53.5 × 35 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 45
- Nets
- 62
- Pads
- 216
- Tracks, vias
- 834, 109
- Routed
- Yes
- KiCad
- KiCad 10.0 (file 20260206)
- Created
- 15 Jul 2026
- Updated
- 3 Aug 2026
Overview
Compass is an open-source printed circuit board by joshitha-c, from the joshitha-c/compass repository on GitHub. It is a 2-layer board of 53.5 × 35 mm with 45 parts on 62 nets, routed with 834 tracks and 109 vias.
It is built around the DLF162500LT-5028A1, LIS2MDL and MIC5365-3.3YD5-TR, with the USBLC6-2SC6 among its other parts. Its parts include 19 capacitors, 9 resistors, 5 ICs, 4 connectors and 3 inductors. It belongs with the STM32 boards of this library.
Main components
4DLF162500LT-5028A1
SMD-4P,1.6x0.8mm-40℃~+85℃ 0.33dB 2.4GHz~2.5GHz 49.2dB 50Ω Low Pass SMD-4P,1.6x0.8mm RF Filters ROHSTDKRF FiltersLIS2MDL
LGA-12(2x2)-40℃~+85℃ 1.71V~3.6V 16bit 200uA I2C、SPI ±5mT ±5mT LGA-12(2x2) 3D Magnetic Sensors ROHSSTMicroelectronics3D Magnetic SensorsMIC5365-3.3YD5-TR
TSOT-23-5-40℃~+125℃@(Tj) 1 150mA 200uVrms 3.3V 310mV@(150mA) 39uA 5.5V 70dB@(1kHz) Fixed Over Current Protection、Over Temperature Protection、Enable Positive TSOT-23-5 Voltage Regulators - Linear, Low Drop Out (LDO) Regulators ROHSMicrochip TechnologyVoltage Regulators - Linear, Low Drop Out (LDO) RegulatorsUSBLC6-2SC6
SOT-23-60.35pF、0.8pF 100nA 150W@8/20us 15V 2 5V 6A@8/20us 6V ESD SOT-23-6 ESD and Surge Protection (TVS/ESD) ROHSUMWESD And Surge Protection (TVS/ESD)
README
README.mdSTM32WB Electronic Compass
A compact electronic compass and environmental sensing board built around the STM32WB35CEU6A microcontroller. The design combines a 3-axis magnetometer, barometric pressure sensor, USB-C connectivity, and BLE capability into a low-power embedded platform.
Features
- STM32WB35CEU6A ARM Cortex-M4 + BLE MCU
- LIS2MDL 3-axis magnetometer
- LPS22DF digital barometric pressure sensor
- USB Type-C interface
- 3.3V regulated power supply
- SWD programming/debug interface
- UART debug interface
- External high-speed and low-speed crystals
- Designed in KiCad
Hardware Overview
Microcontroller
STM32WB35CEU6A
- ARM Cortex-M4
- Integrated Bluetooth Low Energy radio
- USB Full-Speed
- Multiple UART, SPI and I²C peripherals
- Low-power operation
Sensors
LIS2MDL Magnetometer
Provides:
- X/Y/Z magnetic field measurements
- Digital I²C interface
- Low power operation
- Electronic compass functionality
Typical applications:
- Heading estimation
- Navigation
- Orientation sensing
LPS22DF Pressure Sensor
Provides:
- Atmospheric pressure
- Temperature measurement
- Digital I²C interface
Applications:
- Altitude estimation
- Weather monitoring
- Environmental sensing
Power Supply
Input power is supplied through:
- USB Type-C connector
Power regulation:
- MIC5365-3.3V LDO regulator
- 3.3 V system rail
The design includes multiple decoupling capacitors near the MCU and sensors for stable operation.
Clock Sources
The board includes:
-
32 MHz external crystal
- Main system clock
- USB timing
- BLE radio
-
32.768 kHz crystal
- Real-Time Clock (RTC)
- Low-power timing
Interfaces
USB
USB Type-C connector
Supports:
- Device communication
- Firmware updates
- Power input
SWD
Programming interface:
| Signal | Description |
|---|---|
| SWDIO | Debug data |
| SWCLK | Debug clock |
| NRST | Reset |
| 3.3V | Reference |
| GND | Ground |
Compatible with:
- ST-Link V2
- ST-Link V3
UART
Dedicated UART header for:
- Debug output
- Logging
- Bootloader communication
Pin Summary
| Peripheral | Interface |
|---|---|
| LIS2MDL | I²C |
| LPS22DF | I²C |
| USB | USB FS |
| SWD | Programming |
| UART | Debug |
Applications
- Electronic compass
- Digital navigation
- BLE sensor node
- Altimeter
- Environmental monitoring
- Portable embedded systems
- IoT devices
Future Improvements
- Battery charger
- LiPo support
- On-board IMU (accelerometer + gyroscope)
- Status LEDs
- User push buttons
- QSPI Flash
- Battery fuel gauge
Schematics:
Pcb:
Parts
45| Qty | Value | Footprint | References |
|---|---|---|---|
| 8 | 100n | Capacitor_SMD:C_0402_1005Metric | C1, C2, C3, C4, C5, C6, C8, C16 |
| 4 | 4u7 | Capacitor_SMD:C_0201_0603Metric | C10, C11, C17, C18 |
| 4 | R | Resistor_SMD:R_0402_1005Metric | R1, R2, R3, R4 |
| 2 | 220R | Resistor_SMD:R_0402_1005Metric | R6, R7 |
| 2 | 4.7k | Resistor_SMD:R_0402_1005Metric | R8, R9 |
| 2 | C | Capacitor_SMD:C_0402_1005Metric | C9, C12 |
| 1 | 0p3 | Resistor_SMD:R_0402_1005Metric | C14 |
| 1 | 0p8' | Resistor_SMD:R_0402_1005Metric | C13 |
| 1 | 100N | Capacitor_SMD:C_0402_1005Metric | C15 |
| 1 | 100R | Resistor_SMD:R_0402_1005Metric | R5 |
| 1 | 100nF | Capacitor_SMD:C_0402_1005Metric | C19 |
| 1 | 10n | Inductor_SMD:L_0402_1005Metric | L1 |
| 1 | 10u | Inductor_SMD:L_0402_1005Metric | L2 |
| 1 | 2n7 | Inductor_SMD:L_0402_1005Metric | L3 |
| 1 | 32kHz768 | Crystal:Crystal_SMD_2012-2Pin_2.0x1.2mm | X1 |
| 1 | 4u7 | Resistor_SMD:R_0201_0603Metric | C7 |
| 1 | Conn_01x04 | Connector_Molex:Molex_PicoBlade_53048-0410_1x04_P1.25mm_Horizontal | J4 |
| 1 | Conn_Coaxial | Connector_Coaxial:U.FL_Hirose_U.FL-R-SMT-1_Vertical | J1 |
| 1 | Crystal_GND24 | Crystal:Crystal_SMD_2016-4Pin_2.0x1.6mm | Y1 |
| 1 | DLF162500LT-5028A1 | EasyEDA:FILTER-SMD_0603-4P-L1.6-W0.8-L-1 | USB1 |
| 1 | ER_OLEDM0.91_1x-I2C | Display:ER_OLEDM0.91_1x-I2C | U5 |
| 1 | LED | LED_SMD:LED_0402_1005Metric | D1 |
| 1 | LIS2MDL | Package_LGA:LGA-12_2x2mm_P0.5mm | U4 |
| 1 | MIC5365-3.3YD5 | Package_TO_SOT_SMD:TSOT-23-5 | U3 |
| 1 | STM32WB35CEUxA | Package_DFN_QFN:QFN-48-1EP_7x7mm_P0.5mm_EP5.6x5.6mm | U1 |
| 1 | SW_Push | Button_Switch_SMD:SW_SPST_CK_RS282G05A3 | SW1 |
| 1 | TC2030_SWD | PCM_marbastlib-various:CON_TC2030_outlined | J2 |
| 1 | USBLC6-2SC6 | Package_TO_SOT_SMD:SOT-23-6 | U2 |
| 1 | USB_C_Receptacle_USB2.0_16P | Connector_USB:USB_C_Receptacle_GCT_USB4105-xx-A_16P_TopMnt_Horizontal | J3 |
Questions
How big is the Compass PCB?
It measures 53.5 × 35 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Compass use?
45 parts, built around the DLF162500LT-5028A1, LIS2MDL, MIC5365-3.3YD5-TR and USBLC6-2SC6. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
Where can I download the Compass KiCad files?
From the joshitha-c/compass repository on GitHub, at the commit this page was made from: the board is compass.kicad_pcb and its schematic compass.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Compass design in my own project?
Its repository states no licence, so its author keeps all rights: ask joshitha-c before reusing the design.
Similar boards
- 4 layers58 × 31 mm

- 4 layers67.4 × 35.4 mm

- 4 layers48 × 33 mm

Stm32-bt board
OdaiJ/stm32-bt-board
My attempt at following the Phil's Lab KiCad V7 tutorial on YouTube
60 parts1 - 4 layers80.5 × 32.5 mm

Stm32wb55-ble dev board
shivamtiwari020505/stm32wb55-ble-dev-board
Custom STM32WB55 development board integrating 2.4GHz BLE 5.x, LPUART, I2C, and UART via RS232/DB9 for PC and industrial machine interfacing. Designed to bridge modern wireless IoT with legacy wired systems.
63 parts1MIT - 4 layers

- 4 layers117 × 77 mm

ProdDeck
arsovskiteodor/A.ProdDeck
Open-hardware macro pad (WIP): custom KiCad PCB with keys, encoders and a fader, plus firmware and a desktop configurator
69 parts - 4 layers48.5 × 24.3 mm

STM32 2nd Project
ashfaque-ur-rahman/STM32WB-RF-PCB-Design
STM32 microcontroller PCB design with RF capability —4 layer Board —KiCad project based on Phil's Lab tutorial series
48 parts - 4 layers29 × 43 mm

Flight controller
Bobev64/sensor-board
KiCAD design attempt at a flight controller for an RC airplane.
52 parts