Skip to the content
PCBKitNew board
4 layers70 × 70 mmGpsdo, the printed circuit board in 3D

Low cost GPS Disciplined Oscillator

Size
70 × 70 mm
Copper layers
4
Thickness
1.6 mm
Parts
88
Nets
75
Pads
316
Tracks, vias
455, 104
Pours
7
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
3 Sep 2025
Updated
25 Nov 2025

Overview

Gpsdo is an open-source printed circuit board by AndreasArendt, from the AndreasArendt/gpsdo repository on GitHub, published under the MIT licence. It is a 4-layer board of 70 × 70 mm with 88 parts on 75 nets, routed with 455 tracks and 104 vias.

It is built around the SN74LVC1G125DBV, AD5541ARZ and SN74LVC1T45DCK, with the 74HC161S, AMS1117-3.3 and NTCG103JF103FT1 among its other parts. Its parts include 40 capacitors, 14 resistors, 9 ICs, 5 connectors and 3 diodes. It belongs with the STM32 boards of this library.

Main components

7

README

README.md

GPSDO

GPSDO (GPS Disciplined Oscillator) combines the precision of a high-quality OCXO (Oven-Controlled Crystal Oscillator) with the pulse-per-second (PPS) signal from a GNSS receiver. The goal is to achieve accurate time and frequency reference, down to the nanosecond level.

This project aims to create an open-source and affordable GPSDO from scratch, including designing custom hardware (PCB) and developing the supporting software.

PCB v2

Features

  • Combines GNSS PPS with a high-precision OCXO
  • Fully open-source hardware and software
  • Targeting nanosecond-level timing precision
  • Modular design for hardware and software development

Status

🚧 Under Construction

  • The first hardware prototype is currently being tested; all findings are documented in Issue #1
  • A Kalman-Filter to estimate phase, frequency_offset and frequency_drift has been implemented
  • A PI-Controller is running the GPSDO closed loop
  • Flatbuf Messages are implemented to ensure easy-to-extend communication to a host system

Roadmap

✅ Improve hardware based on findings from V2 prototype
🔄 Integrate the GNSS receiver on-board for a fully standalone GPSDO
⚙️ Fine-tune the control loop and filtering algorithms
📊 Benchmark the true performance against reference standards

Contributing

Contributions are welcome! Whether it's hardware design suggestions, software improvements, or analysis scripts, feel free to open an issue or a pull request.

Compiling flatcc (Windows)

  • Navigate into flatcc submodule folder.
  • Create build folder
  • Navigate into build folder
  • Run cmake ..
  • Run cmake --build . --config Release
  • Executable is in flatcc/bin/Release/flatcc.exe

Parts

88
QtyValueFootprintReferences
26100nCapacitor_SMD:C_0603_1608MetricC1, C2, C11, C14, C15, C19, C20, C21, C22, C23, C24, C27, C31, C32, C33, C34 +10
610uCapacitor_SMD:C_0603_1608MetricC3, C10, C13, C28, C29, C30
41uCapacitor_SMD:C_0603_1608MetricC6, C12, C26, C36
31.1kResistor_SMD:R_0603_1608MetricR12, R13, R14
3100Resistor_SMD:R_0603_1608MetricR1, R5, R6
310kResistor_SMD:R_0603_1608MetricR7, R9, R17
333Resistor_SMD:R_0603_1608MetricR4, R8, R18
3LEDLED_SMD:LED_0805_2012Metric_Pad1.15x1.40mm_HandSolderD1, D2, D3
3LOGOLOGOG***, G***, G***
3NetTie_2NetTie:NetTie-2_THT_Pad0.3mmNT1, NT2, NT3
212pCapacitor_SMD:C_0603_1608MetricC16, C17
222kResistor_SMD:R_0603_1608MetricR15, R16
24.7uCapacitor_SMD:C_0603_1608MetricC18, C25
2SN74LVC1T45DCKPackage_TO_SOT_SMD:SOT-363_SC-70-6U1, U2
2TestPointTestPoint:TestPoint_Pad_D1.5mmTP1, TP3
110uHInductor_SMD:L_0603_1608MetricL1
174HC161Package_SO:SO-16_3.9x9.9mm_P1.27mmU8
1AD5541APackage_SO:MSOP-10_3x3mm_P0.5mmU4
1AMS1117-3.3Package_TO_SOT_SMD:SOT-223-3_TabPin2U7
1Conn_01x02Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ1
1Conn_01x05Connector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_VerticalJ7
1Conn_02x03_Top_BottomConnector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_VerticalJ2
1Conn_CoaxialConnector_Coaxial:SMA_Samtec_SMA-J-P-H-ST-EM1_EdgeMountJ5
1NTCG103JF103FT1Resistor_SMD:R_0603_1608MetricTH1
1OPA197xDPackage_SO:SOIC-8_3.9x4.9mm_P1.27mmU5
1REF5040ADPackage_SO:SOIC-8_3.9x4.9mm_P1.27mmU3
1SN74LVC1G125DBVPackage_TO_SOT_SMD:SOT-23-5U9
1STM32F411CEUxPackage_DFN_QFN:QFN-48-1EP_7x7mm_P0.5mm_EP5.6x5.6mmU6
1TestPointTestPoint:TestPoint_Pad_D1.0mmTP2
1USB_C_Receptacle_USB2.0_14PConnector_USB:USB_C_Receptacle_G-Switch_GT-USB-7010ASVJ3
1X322516MLB4SICrystal:Crystal_SMD_3225-4Pin_3.2x2.5mmX1
1~OCXO:OSC5A2B02OSC5A2B1

The 84 most common of 88 parts.

Questions

How big is the Gpsdo PCB?

It measures 70 × 70 mm and has 4 copper layers, 1.6 mm thick.

What parts does the Gpsdo use?

88 parts, built around the SN74LVC1G125DBV, AD5541ARZ, SN74LVC1T45DCK and 74HC161S. 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 Gpsdo KiCad files?

From the AndreasArendt/gpsdo repository on GitHub, at the commit this page was made from: the board is hardware/gpsdo/gpsdo.kicad_pcb and its schematic hardware/gpsdo/Microcontroller.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Gpsdo design in my own project?

Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

Similar boards

  • 2 layers159 × 159 mmPdh v2, the printed circuit board in 3D

    Pdh v2

    vuthalab/pdh_servo_v2

    A servo controller for locking lasers to high-finesse cavities

    156 parts8MIT
  • 2 layers169.2 × 98.2 mmPower, the printed circuit board in 3D

    Power

    sonicavionics/4in-power

    99 parts2MIT
  • 2 layers81.8 × 46.5 mmCentral pcb, the printed circuit board in 3D

    Central pcb

    IoT-systems-2023-2024/Central

    Het centrale systeem

    54 parts
  • 4 layers58.5 × 85.5 mmSr jv esp32, the printed circuit board in 3D

    Sr jv esp32

    connorzheng97/srjv

    SR-JV80 Programmable Expansion Card with ESP32 Wi-Fi

    84 parts18
  • 4 layers94 × 65.9 mmMiniHexa, the printed circuit board in 3D

    MiniHexa

    Gex-devs/miniHexa

    Custom mini hexa using Hiwonders chassis

    82 parts1
  • 2 layers65.8 × 60.2 mmRocket2-trs hardware, the printed circuit board in 3D

    Rocket2-trs hardware

    UCI-Rocket-Project/rocket2-trs-hardware

    This repository contains the KiCad schematics, PCB layouts, and other files, along with full hardware documentation.

    69 parts
  • 6 layers84 × 50 mmSolar ribbit, the printed circuit board in 3D

    Solar ribbit

    Ribbit-Network/ribbit-network-frog-hardware

    The sensor for the world's largest crowdsourced network of open-source, low-cost, GHG Gas Detection Sensors.

    171 parts107MIT
  • 2 layers58.1 × 91.3 mmMeshcore solar, the printed circuit board in 3D

    Meshcore solar

    haydenkz/rak4630-solar-pcb

    Solar-powered MeshCore node PCB built around the RAK4630-8-SM-I (nRF52840 + SX1262 LoRa) module.

    55 parts1