Skip to the content
2 layers40.6 × 36.8 mmSparkFun GPS NEO M9N SMA, the printed circuit board in 3D

SparkFun GPS NEO M9N SMA

PHS-SMCS/SMCSKart-Mainboard1

Documentation for the SMCSKart PCB

Size
40.6 × 36.8 mm
Copper layers
2
Thickness
1.6 mm
Parts
94
Nets
36
Pads
153
Tracks, vias
359, 246
Pours
4
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
2 Apr 2026
Updated
20 Apr 2026

Overview

SparkFun GPS NEO M9N SMA is an open-source printed circuit board by PHS-SMCS, from the PHS-SMCS/SMCSKart-Mainboard repository on GitHub. It is a 2-layer board of 40.6 × 36.8 mm with 94 parts on 36 nets, routed with 359 tracks and 246 vias.

It is built around the PRTR5V0U2F. Its parts include 16 resistors, 6 connectors, 5 capacitors, 4 diodes and 2 ICs. It belongs with the radio and wireless and robots and motor control boards of this library.

Main components

1

README

README.md

SMCSKart Mainboard

Custom PCB integrating every system in the SMCS Robotics 8th period go-kart. The board acts as the central hub between a Raspberry Pi 4, a Teensy 4.1, all motor controller I/O, sensors, and peripherals.

Isometric View of the SMCSKart PCB


Components

ComponentDescription
Raspberry Pi 4Main compute; connected via 40-pin header
Teensy 4.1Real-time microcontroller with onboard Ethernet
NEO-M9NGPS module (connected to Pi I2C + PPS to Teensy)
MPU60506-axis accelerometer/gyroscope (connected to Pi I2C)
MCP472512-bit DAC for throttle signal generation (connected to Teensy I2C)
MCP2562-E/PCAN bus transceiver
IRLZ44NLogic-level N-channel MOSFETs for all toggle/switch outputs (with pulldown resistors)
ND721000FarDriver BLDC/PMSM speed controller (RS232 interface)

Power Rails

The board supplies three voltage rails available on the extra power port:

RailVoltage
3V33.3 V
5V5 V
24V24 V (also used for LED strip)

Teensy 4.1 Pin Assignments

Serial / UART

Pin(s)InterfaceConnected ToNotes
0, 1Serial1 (TX, RX)ND721000 ESCRS232 level — programming/telemetry port on ESC
7, 8Serial2 (TX, RX)Raspberry Pi 4UART bridge between Teensy and Pi
14, 15Serial3 (TX, RX)Transceiver moduleRF/wireless transceiver comms
34, 35Serial8 (TX, RX)FPV cameraUART control for FPV camera

I2C

Pin(s)BusConnected To
18, 19SDA, SCLMCP4725 DAC (throttle control)

CAN Bus

Pin(s)SignalNotes
30, 31CRX, CTXVia MCP2562-E/P transceiver; 120 Ω termination required at each end

Digital I/O — ESC Control & Sensors

All toggle output pins drive an IRLZ44N MOSFET with a pulldown resistor, providing an active-low ground signal to the ESC connector.

PinFunctionESC SignalDirection
2Hall Pulses inputHall Pulses (ESC pin 18)Input from ESC
3Reverse toggleREV (ESC pin 8)Output to ESC
4Brake toggleLow Brake (ESC pin 21)Output to ESC
5High speed toggleHigh Speed (ESC pin 3)Output to ESC
6Low speed toggleLow Speed (ESC pin 2)Output to ESC
9Cruise controlCruise/Boost connectorOutput to ESC
10PPSNEO-M9N GPS pulse-per-secondInput from GPS
32Contactor toggleMain contactor relayOutput

PWM — LED Strip (24 V)

PinChannel
37Red
36Green
33Blue

Auxiliary (EX1–EX5)

PinLabel
25EX1
26EX2
27EX3
28EX4
29EX5

Raspberry Pi 4 I2C Bus

DeviceAddressFunction
NEO-M9N—GPS module
MPU60500x68Accelerometer / Gyroscope

ND721000 ESC Interface

The Teensy communicates with the ND721000 over Serial1 (pins 0/1) at RS232 levels (programming/telemetry port). In addition, discrete signals are routed between the board and the ESC's connector harness.

ESC Connector Pin Reference

ESC PinColorSignalDirectionTeensy PinNotes
1YellowHall A→ ESC—Motor hall sensor A
2Blue-WhiteLow Speed← Teensy6Ground to activate low speed profile
3Yellow-WhiteHigh Speed← Teensy5Ground to activate high speed profile
4RedHALL+——~14 V supply to hall sensors / encoder
5Brown-YellowCAN L↔—CAN bus low (optional; 120 Ω termination required)
6BlackGND (Hall)——Hall sensor ground
7BlackB− / GND——Battery negative / signal ground
8Brown-WhiteREV← Teensy3Ground to request reverse direction
9PurpleSpeedometer signal→—Analog speed output for speedometer gauge
10OrangeKey——Main power-on input (connect to key switch via 5A fuse)
11GrayHigh Brake← Teensy4Active-high (12 V) brake input
12GreenHall B→ ESC—Motor hall sensor B
13Light-BlueSPD (digital speed pulse)→—Square-wave RPM output for digital speedo / ECU
14Black-WhiteFW (anti-theft)←—Ground to activate anti-theft lockout (error code 6)
15Red-YellowCAN H↔—CAN bus high (optional; 120 Ω termination required)
16BlackGND (serial/switch)——Signal ground for serial and switch circuits
17WhiteHall P (encoder index)→ ESC—Once-per-revolution encoder reference pulse
18BrownHall Pulses signal→ Teensy2Speed pulse output used as tachometer reference
19Brown-RedLock Phase——Anti-theft motor phase lock wire
20OrangeKey (anti-theft)——Secondary key input for anti-theft subsystem
21Yellow-GreenLow Brake← Teensy4Active-low brake input; ground to signal braking
22BlueHall C→ ESC—Motor hall sensor C
23Brown-BlueTxD (serial)→ Teensy0 (RX)ESC serial transmit → Teensy Serial1 RX
24WhiteMotor Temp→ ESC—Motor temperature sensor (PTC/NTC/KTY)
25—————
26BlackGND (throttle/brake)——Shared signal ground for throttle and brake circuits
27Green-WhiteTPS (throttle)← DAC—Throttle position signal (0.5–4.3 V); driven by MCP4725
28Red-WhiteACC+ (5 V)→ throttle sensor—5 V regulated supply for throttle sensor
29Brown-GreenV+ (serial power)→ adapter—5 V supply for USB-TTL programming adapter
30PinkB+ (anti-theft)——Always-live battery positive for anti-theft device
31Brown-RedRxD (serial)← Teensy1 (TX)ESC serial receive ← Teensy Serial1 TX

Note: High Brake (pin 11) is active-high (12 V) while Low Brake (pin 21) is active-low (GND). Both can signal braking; the board uses pin 21 via MOSFET toggle (Teensy pin 4). Note: Medium speed mode is the ESC default when neither High Speed nor Low Speed is grounded.


External Connectors / Ports

PortDescription
40-pin headerRaspberry Pi 4 HAT connector
USB-AHID peripheral (keyboard, gamepad, etc.)
EthernetNetworking (Teensy 4.1 native Ethernet)
CAN × 3CANBUS + I2C interface ports
ContactorTrigger port for main contactor relay (Teensy pin 32)
FPV cameraUART port (Teensy Serial8, pins 34/35)
TransceiverRF transceiver UART port (Teensy Serial3, pins 14/15)
Power portExtra 3V3 / 5V / 24V supply breakout
LED strip24 V RGB PWM output (pins 37, 36, 33)

For images of each port's annotated pinout, see ./docs/PINOUTS.md

Made by Eli Ferrara, SMCS Class of 2026 MIT License

Parts

94
QtyValueFootprintReferences
4SparkFun GPS NEO_M9N_SMA:#3V3#6U$4, U$5, U$39, U$40
4SparkFun GPS NEO_M9N_SMA:#GND#0U$7, U$8, U$38, U$41
433SparkFun GPS NEO_M9N_SMA:0603R2, R3, R4, R6
4FIDUCIALUFIDUCIALSparkFun GPS NEO_M9N_SMA:MICRO-FIDUCIALJP21, JP61, JP71, JP81
4STAND-OFFSparkFun GPS NEO_M9N_SMA:STAND-OFFJP1, JP31, JP91, JP101
31.0uFSparkFun GPS NEO_M9N_SMA:0603C3, C4, C6
31kSparkFun GPS NEO_M9N_SMA:0603R1, R5, R11
2SparkFun GPS NEO_M9N_SMA:1X04_NO_SILKJ5, JP15
2SparkFun GPS NEO_M9N_SMA:#PPS#13U$11, U$32
2SparkFun GPS NEO_M9N_SMA:#5V#1U$6, U$42
22.2kSparkFun GPS NEO_M9N_SMA:0603R7, R8
227SparkFun GPS NEO_M9N_SMA:0603R9, R10
25.1kSparkFun GPS NEO_M9N_SMA:0603R12, R13
2JUMPER-SMT_2_NC_TRACE_SILKSparkFun GPS NEO_M9N_SMA:SMT-JUMPER_2_NC_TRACE_SILKPPS0, PWR\0
2Qwiic Right AngleSparkFun GPS NEO_M9N_SMA:JST04_1MM_RAJ2, J4
1SparkFun GPS NEO_M9N_SMA:#SCK#12U$16
1SparkFun GPS NEO_M9N_SMA:##CS##6U$26
1SparkFun GPS NEO_M9N_SMA:##RST##12U$27
1SparkFun GPS NEO_M9N_SMA:U#BLOX19U$2
1SparkFun GPS NEO_M9N_SMA:#RX#SDI#10U$15
1SparkFun GPS NEO_M9N_SMA:ANT8U$24
1SparkFun GPS NEO_M9N_SMA:#RX#SDI#4U$33
1SparkFun GPS NEO_M9N_SMA:#SCL#18U$18
1SparkFun GPS NEO_M9N_SMA:QWIIC_4MMU$14
1SparkFun GPS NEO_M9N_SMA:NEO#M9N20U$25
1SparkFun GPS NEO_M9N_SMA:#SCK#3U$34
1SparkFun GPS NEO_M9N_SMA:#INT#10U$30
1SparkFun GPS NEO_M9N_SMA:L1#L28U$23
1SparkFun GPS NEO_M9N_SMA:##SAFE##15U$3
1SparkFun GPS NEO_M9N_SMA:#PWR#1U$17
1SparkFun GPS NEO_M9N_SMA:#I2C#3U$29
1SparkFun GPS NEO_M9N_SMA:USB-C-16P-2LAYER-PADSJ3
1SparkFun GPS NEO_M9N_SMA:NEO_GPS_BOARD_SILK_FINAL#03#JPGU$21
1SparkFun GPS NEO_M9N_SMA:PWR6U$13
1SparkFun GPS NEO_M9N_SMA:1X07_NO_SILKJ1
1SparkFun GPS NEO_M9N_SMA:##RST##2U$28
1SparkFun GPS NEO_M9N_SMA:##SAFE##11U$22
1SparkFun GPS NEO_M9N_SMA:#SDA#9U$36
1SparkFun GPS NEO_M9N_SMA:##CS##9U$1
1SparkFun GPS NEO_M9N_SMA:#SPI#22U$12
1SparkFun GPS NEO_M9N_SMA:PPS7U$10
1SparkFun GPS NEO_M9N_SMA:#INT#16U$9
1SparkFun GPS NEO_M9N_SMA:#SDA#17U$19
1SparkFun GPS NEO_M9N_SMA:#TX#SDO#11U$20
1SparkFun GPS NEO_M9N_SMA:#SCL#8U$35
1SparkFun GPS NEO_M9N_SMA:#TX#SDO#5U$37
1SparkFun GPS NEO_M9N_SMA:#PPS#0U$31
10.1uFSparkFun GPS NEO_M9N_SMA:0603C5
10.5A/40V/420mVSparkFun GPS NEO_M9N_SMA:SOD-323D2
1100kSparkFun GPS NEO_M9N_SMA:0603R15
110kSparkFun GPS NEO_M9N_SMA:0402R16
13.3VSparkFun GPS NEO_M9N_SMA:SOT23-5U2
133SparkFun GPS NEO_M9N_SMA:0402R14
147pFSparkFun GPS NEO_M9N_SMA:0402C1
16.8MM_COIN_CELLSparkFun GPS NEO_M9N_SMA:ML414H_IV01EB1
1ANTENNA-GROUNDEDEDGE_SMA_SMDSparkFun GPS NEO_M9N_SMA:SMA-EDGE-SMDE1
1BLUESparkFun GPS NEO_M9N_SMA:LED-0603LED1
1FERRITE_BEAD-120_OHM-0402SparkFun GPS NEO_M9N_SMA:0402FB1
1FRAME-LETTERSparkFun GPS NEO_M9N_SMA:CREATIVE_COMMONSFRAME1
1JUMPER-SMT_2_NO_SILKSparkFun GPS NEO_M9N_SMA:SMT-JUMPER_2_NO_SILKSPI0
1JUMPER-SMT_3_2-NC_TRACE_SILKSparkFun GPS NEO_M9N_SMA:SMT-JUMPER_3_2-NC_TRACE_SILKJP5
1OSHW-LOGOMINISparkFun GPS NEO_M9N_SMA:OSHW-LOGO-MINILOGO1
1PRTR5V0U2FSparkFun GPS NEO_M9N_SMA:SOT886D3
1REDSparkFun GPS NEO_M9N_SMA:LED-0603LED2
1SFE_LOGO_NAME_FLAME.1_INCHSparkFun GPS NEO_M9N_SMA:SFE_LOGO_NAME_FLAME_.1LOGO2
1TEST-POINT3X4SparkFun GPS NEO_M9N_SMA:PAD.03X.04TP1
1U-BLOX_NEO-M9NSparkFun GPS NEO_M9N_SMA:NEO-M9N_M8T_M8UU1

More from PHS-SMCS/SMCSKart-Mainboard

1
  • 4 layers128.3 × 97.8 mmSMCSKart Mainboard, the printed circuit board in 3D

    SMCSKart Mainboard

    PHS-SMCS/SMCSKart-Mainboard

    Documentation for the SMCSKart PCB

    85 parts1

Similar boards

  • 4 layers69.8 × 35.2 mmNerdYcontroller, the printed circuit board in 3D

    NerdYcontroller

    KidsLabDe/GamePadPico

    Lamp-PCB for kidslab.

    123 parts5
  • 4 layers162.6 × 78.7 mmECP5-Breakout, the printed circuit board in 3D

    ECP5-Breakout

    chenzhuoyu/rainbow-board

    ECP5 FPGA breakout board for Colorlight i5 / i9

    98 parts3Apache-2.0
  • 2 layers40.6 × 33 mmQwiic GPS RTK - ublox NEO M8P, the printed circuit board in 3D

    Qwiic GPS RTK - ublox NEO M8P

    shaun-lloyd/dev-ardupilot-obal

    ArduPi is an open hardware Raspberry Pi hat to run Ardupilot.

    103 parts2CC0-1.0
  • 4 layers68.2 × 110.1 mmVersion current, the printed circuit board in 3D

    Version current

    oomlout/oomlout_oomp_documentation_bot

    a bot that goes around generating rough documentation for kicad projects

    171 parts
  • 4 layers52 × 57.8 mmZED F9P, the printed circuit board in 3D

    ZED F9P

    Will946/GNSS

    u-blox ZED-F9P RTK GNSS breakout board with dual-band L1/L2 reception and centimeter-level positioning accuracy.

    65 partsMIT
  • 4 layers43.2 × 43.2 mmQwiic GPS RTK SMA - ublox ZED F9P, the printed circuit board in 3D

    Qwiic GPS RTK SMA - ublox ZED F9P

    Zmotive/HY_550CJ_Control_board

    This Project is still under development and not all features have been tested. As I work through the hardware I will continue to update.

    143 parts
  • 4 layers25 × 25 mmSensWear V1R2-Debug, the printed circuit board in 3D

    SensWear V1R2-Debug

    HeyPCB/senswear-kicad

    Sens Wear's SensWear smart ring hardware, converted from their Altium design to KiCad 10. Design by Sens Wear (github.com/Sens-Wear/hardware), MIT.

    73 partsMIT
  • 4 layers50 × 50 mmRosmo ESC, the printed circuit board in 3D

    Rosmo ESC

    kitspace-test-repos/kicad6-file-collection

    116 partsMIT

Questions

How big is the SparkFun GPS NEO M9N SMA PCB?

It measures 40.6 × 36.8 mm and has 2 copper layers, 1.6 mm thick.

What parts does the SparkFun GPS NEO M9N SMA use?

94 parts, built around the PRTR5V0U2F. 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 SparkFun GPS NEO M9N SMA KiCad files?

From the PHS-SMCS/SMCSKart-Mainboard repository on GitHub, at the commit this page was made from: the board is libs/GPS-17285/SparkFun GPS NEO_M9N_SMA/SparkFun GPS NEO_M9N_SMA.kicad_pcb and its schematic SMCSKart-Mainboard.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the SparkFun GPS NEO M9N SMA design in my own project?

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