Skip to the content
PCBKitNew board
6 layers63.5 × 50.8 mmNavigation Board, the printed circuit board in 3D

Navigation Board

LouisVizard/NavBoard2

A full navigation solution featuring MCU, GNSS receiver, RF transceiver, and 9-DOF IMU

Size
63.5 × 50.8 mm
Copper layers
6
Thickness
1.55 mm
Parts
136
Nets
144
Pads
480
Tracks, vias
762, 275
Pours
45
Routed
Yes
KiCad
KiCad 7 (file 20221018)
Created
6 Jun 2026
Updated
7 Jun 2026

Overview

Navigation Board is an open-source printed circuit board by LouisVizard, from the LouisVizard/NavBoard repository on GitHub. It is a 6-layer board of 63.5 × 50.8 mm with 136 parts on 144 nets, routed with 762 tracks and 275 vias.

It is built around the NEO-M9N-00B, NRF24L01 and RFX2401C, with the 2450LP14A0100001T, ADP7142ARDZ-3.3 and BNO086 among its other parts. Its parts include 55 capacitors, 45 resistors, 11 ICs, 6 inductors and 5 diodes. It belongs with the radio and wireless boards and the STM32 boards of this library.

Main components

12

README

README.md

🛰️ Navigation Board PCB

A compact, 6-layer embedded navigation platform for real-time sensor fusion and wireless telemetry

Status MCU GNSS PCB Power


📌 Overview

The Navigation Board is a custom PCB designed as a dedicated navigation and state estimation platform. It integrates GNSS positioning, inertial sensing, and wireless communication onto a single, compact board — enabling real-time vehicle attitude estimation via a Kalman filter and live data streaming to a host computer for visualization.

The hardware is complete and functional. Active development is now focused on firmware (EKF implementation) and the host-side Python visualization pipeline.


🖼️ Board Preview

Isometric TopIsometric Bottom
3D Render Top3D Render Bottom
📐 PCB Layout

PCB Layout

🔌 Full Schematic

Schematic


⚡ Specifications

ParameterValue
MCUSTM32F4CEU6
GNSS Receiveru-blox NEO-M9N
IMU9DOF — Accelerometer + Gyroscope + Magnetometer
WirelessnRF24L01 (2.4 GHz RF)
Power InputSingle-cell LiPo + USB-C charging
PCB Stackup6-layer, impedance controlled

🏗️ System Architecture

text
┌─────────────┐     ┌─────────────────────────┐     ┌──────────────────┐     ┌──────────────────┐
│  GNSS       │     │                         │     │                  │     │                  │
│  NEO-M9N    │────▶│     STM32F4CEU6         │────▶│  nRF24L01        │────▶│  Host PC         │
│  (UART)     │     │   Kalman Filter /        │     │  2.4 GHz RF Link │     │  Python Viz      │
├─────────────┤     │   Sensor Fusion          │     │                  │     │                  │
│  IMU 9DOF   │     │                         │     │                  │     │                  │
│  (SPI/I2C)  │────▶│                         │     │                  │     │                  │
└─────────────┘     └─────────────────────────┘     └──────────────────┘     └──────────────────┘

Goal: Fuse absolute positioning (GNSS) with high-rate inertial data (IMU) using an Extended Kalman Filter to estimate real-time orientation and motion, then stream state estimates wirelessly to a host computer for visualization.


🔧 Design Details

Hardware Integration

The board centers around the STM32F4 MCU, which interfaces with:

  • NEO-M9N GNSS receiver over UART for global positioning
  • 9DOF IMU over SPI/I2C for high-rate motion sensing
  • nRF24L01 providing a low-latency 2.4 GHz RF link to stream processed state estimates to an external computer

Power System

Powered by a single-cell LiPo battery with onboard USB-C charging circuitry. Independent regulation stages supply stable rails for:

  • RF front-end
  • Digital logic
  • Analog sensing paths

This architecture minimizes noise coupling into sensitive IMU measurements.

PCB Stackup

A 6-layer stackup was chosen to provide:

  • Controlled impedance for RF and GNSS antenna traces
  • Solid ground referencing across all layers
  • Clean power distribution

Dedicated power and ground planes minimize EMI and improve signal integrity throughout.


📊 PCB Stackup Details

The full layer stackup with impedance targets and material specifications is documented in the design spreadsheet:

📄 View Stackup Spreadsheet (Google Sheets)


🗺️ Roadmap

The hardware platform is complete. Next steps are focused on firmware and software:

  • Implement Extended Kalman Filter (EKF) for GNSS + IMU fusion on STM32F4
  • Tune process and measurement noise covariance matrices
  • Stream state estimates over nRF24L01 RF link
  • Develop Python visualization for real-time attitude display
  • Validate filter output against ground truth measurements

🛠️ Tech Stack

LayerTechnology
Hardware DesignKiCad
FirmwareC (STM32 HAL / bare-metal)
Host SoftwarePython
Comms ProtocolnRF24L01 2.4 GHz

👤 Author

Luis Martinez

LinkedIn GitHub Portfolio


Built with KiCad · STM32 · u-blox · nRF24L01

Parts

136
QtyValueFootprintReferences
1010kResistor_SMD:R_0603_1608MetricR1, R2, R7, R27, R30, R31, R34, R35, R42, R43
101uFCapacitor_SMD:C_0603_1608MetricC12, C20, C22, C24, C26, C39, C45, C48, C49, C50
933Resistor_SMD:R_0603_1608MetricR10, R11, R12, R13, R16, R17, R18, R44, R45
8100nFCapacitor_SMD:C_0603_1608MetricC3, C5, C6, C7, C8, C9, C10, C11
70.1uFCapacitor_SMD:C_0603_1608MetricC19, C21, C23, C25, C36, C46, C47
51.65kResistor_SMD:R_0603_1608MetricR6, R21, R22, R36, R38
422uFCapacitor_SMD:C_1206_3216MetricC40, C41, C42, C44
30.1uFCapacitor_SMD:C_0402_1005MetricC54, C55, C56
322kResistor_SMD:R_0805_2012MetricR15, R23, R32
2100Resistor_SMD:R_0603_1608MetricR29, R33
2100kResistor_SMD:R_0805_2012MetricR14, R26
212pFCapacitor_SMD:C_0402_1005MetricC52, C53
21MResistor_SMD:R_0603_1608MetricR19, R24
21nFCapacitor_SMD:C_0603_1608MetricC15, C28
21uHInductor_SMD:L_Vishay_IHLP-1616L5, L6
22.2kResistor_SMD:R_0603_1608MetricR40, R41
22.2uFCapacitor_SMD:C_0603_1608MetricC14, C16
227Resistor_SMD:R_0603_1608MetricR8, R9
22N7002Nav_Library:2N7002Q1, Q3
24.7uFCapacitor_SMD:C_0805_2012MetricC4, C13
2470nFCapacitor_SMD:C_0603_1608MetricC17, C18
25.1kResistor_SMD:R_0603_1608MetricR3, R4
2510Resistor_SMD:R_0603_1608MetricR37, R39
26pFCapacitor_SMD:C_0603_1608MetricC1, C2
28pFCapacitor_SMD:C_0402_1005MetricC30, C31
2CONSMA022-GNav_Library:CONSMA022GJ2, J3
2GREENDiode_SMD:D_0603_1608MetricD4, D5
2REDDiode_SMD:D_0603_1608MetricD1, D3
10Resistor_SMD:R_1210_3225MetricR5
10.3pFCapacitor_SMD:C_0402_1005MetricC37
11.5pFCapacitor_SMD:C_0402_1005MetricC32
110Resistor_SMD:R_0805_2012MetricR20
110nFCapacitor_SMD:C_0805_2012MetricC43
110nFCapacitor_SMD:C_0603_1608MetricC27
11pFCapacitor_SMD:C_0402_1005MetricC33
12.2nFCapacitor_SMD:C_0402_1005MetricC34
12.7nHInductor_SMD:L_0603_1608MetricL3
1220pFCapacitor_SMD:C_0603_1608MetricC38
12450LP14A0100001TNav_Library:2450LP14A0100001TFL1
127nHInductor_SMD:L_0603_1608MetricL4
13.9nHInductor_SMD:L_0603_1608MetricL2
133nFCapacitor_SMD:C_0402_1005MetricC29
14.7pFCapacitor_SMD:C_0402_1005MetricC35
1402Resistor_SMD:R_0402_1005MetricR28
1402kResistor_SMD:R_0603_1608MetricR25
18.2nHInductor_SMD:L_0603_1608MetricL1
1ABS06-32.768KHZ-TNav_Library:ABS06-32.768KHZ-TY3
1ADP7142ARDZ-3.3Nav_Library:ADP7142ARDZ-3.3U2
1BNO086Nav_Library:BNO086IC8
1CG06750-25MNav_Library:CG06750-25MY1
1MCP73833-FCI_MFNav_Library:MCP73833-FCI_MFIC7
1MM5Z10VT1GNav_Library:MM5Z10VT1GD2
1NEO-M9N-00BNav_Library:NEOM9N00BIC1
1NRF24L01Nav_Library:nRF24L01IC2
1PTS636SM43JSMTRNav_Library:PTS636SM43JSMTRLFSSW1
1RFX2401CNav_Library:RFX2401CIC4
1S2B-ZRNav_Library:S2B-ZRJ5
1S4B-ZR-3.4Nav_Library:S4BZR34LFSNJ4
1SSM3J372R,LFNav_Library:SSM3J372RLFQ2
1STM32F411CEUxNav_Library:STM32F411CEU6U1
1TDD01H0SB1R Nav_Library:TDD01H0SB1RSW2
1TLV75533PDBVRNav_Library:TLV75533PDBVRIC3
1TPS2115ADRBRNav_Library:TPS2115ADRBRIC6
1TPS61232DRCRNav_Library:TPS61232DRCRIC5
1UJ20-C-H-G-SMT-5-P16-TRNav_Library:UJ20-C-H-G-SMT-5-P16-TRJ1
1USBLC6-2SC6Package_TO_SOT_SMD:SOT-23-6U3
1XRCGB16M000FXN22R0Nav_Library:XRCGB16M000FXN22R0Y2

Questions

How big is the Navigation Board PCB?

It measures 63.5 × 50.8 mm and has 6 copper layers, 1.55 mm thick.

What parts does the Navigation Board use?

136 parts, built around the NEO-M9N-00B, NRF24L01, RFX2401C and 2450LP14A0100001T. 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 Navigation Board KiCad files?

From the LouisVizard/NavBoard repository on GitHub, at the commit this page was made from: the board is Navigation Board.kicad_pcb and its schematic Navigation Board.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Navigation Board design in my own project?

Its repository states no licence, so its author keeps all rights: ask LouisVizard before reusing the design.

Similar boards

  • 2 layers63.5 × 69.3 mmTurtlePico Leatherback, the printed circuit board in 3D

    TurtlePico Leatherback

    Jin-Neuron/Turtle-Pico

    The development board making electronics work easier and more widely

    127 parts1
  • 4 layers104.9 × 88.3 mmTX Board Rev2, the printed circuit board in 3D

    TX Board Rev2

    yilmaz-kaan/OpenPhasedArray

    Rice ECE BEAMFORM Capstone Project Repo

    303 parts
  • 4 layersMosfets, the printed circuit board in 3D

    Mosfets

    abd-alaj/BLDC-motor-custom-inverter

    Matlab, Simulink, Hardware and C-code for a custom inverter project.

    139 parts1
  • 2 layers74.1 × 112 mmKangaroo, the printed circuit board in 3D

    Kangaroo

    DPIclimate/kangaroo-node

    Enviro-Node About • Install • Firmware • License

    29 partsMIT
  • 2 layers70.6 × 30 mmVCAI2C02, the printed circuit board in 3D

    VCAI2C02

    mlab-modules/VCAI2C02

    I2C module for measuring 0-50A current and 0-50V voltage with high accuracy and reliability.

    43 parts
  • 2 layers54.3 × 111.4 mmMeeseeks sao, the printed circuit board in 3D

    Meeseeks sao

    Hexum064/bfb-dc31-plumbus-pcbs

    27 parts
  • 4 layers100.1 × 60.2 mmHades, the printed circuit board in 3D

    Hades

    pms67/HadesFCS

    Complete flight control system designed from scratch. Hardware designed with KiCad.

    215 parts1kBSD-3-Clause
  • 4 layers57 × 74.3 mmCM4, the printed circuit board in 3D

    CM4

    ybabs/H745FCS

    Quadcopter Flight Controller based on the dual core STM32H745 Microcontroller

    101 parts6