This project is a custom PCB created to test the new u-blox NEO-M9N GPS module. It is designed from scratch by studying the u-blox data sheet and integration manual.
The board has a built-in micro USB interface which can be used for both power supply and high speed data transfer. Connected to a computer can communicate with u-center: the u-blox GPS evaluation software for Windows.
In order to power the module via USB, the jumper located on the side of the board must be closed. The board can also be powered providing 3.3V (jumper must be open) and controlled by using the UART (Tx, Rx) or I2C (SDA, SCL) breakout pins. It works great with the NeoGPS library for arduino.
There are two status LEDs: the green one indicates the power status, the blue one indicates the PPS. It starts to blink once the GPS has a valid fix.
The board contains an SMA antenna connector and a battery holder for hot module start to achieve a minimal time to first fix after a power down.
Please note that the design of the PCB is not optimal, in particular the RF trace coming from the antenna - as stated in the u-blox integration manual (page 85) - "must be shielded by vias to ground along the entire length of the trace". Also, the RF trace impedence was not calculated correctly and some other design mistakes. I will improve the design in a future version, but despite these mistakes the board works fine, please watch the cold start test for a demonstration.
I have tested the board with the following two antennas:
- High performance active antenna
- High Performance Active Quad Helix Antenna
Please check out the results on my GitHub page of the first quick comparison of two tracks recorded with this board and the NEO-M8N evaluation board that I purchased.
Thank you for this project. I want to build this project myself, I can see you mention that the board needs some work done to the RF track side of things. Did you manage to have time to ever do these changes ? If you are too busy, if I can get the .brd file or have this project shared on easyeda maybe I can get correct it. Rather than trying to reverse engineer it. Once again thank you for this project.