DIY GPS Receiver for Motorsports

For those who would like to buy external GPS receivers to log 1/10Hz accurate position but don’t know which you should buy, or just want to save money, here is an instruction for you. This works for RaceChrono, GPSLaps or other lap-timer application on Android.

For this version, you need to buy only 2 devices. I bought them in Japan and don’t know if they are available on Amazon.com or eBay. I hope you get the basic idea how to connect devices by reading below instructions.

I believe devices like this and this should work. You need to prepare 5V power supply for two devices and I don’t 100% guarantee that these parts work properly. I haven’t tried yet, but if I buy devices from Amazon.com, I would purchase these two.


What to buy as of October 2020
物品 リンク お店 税込価格
GPS Device

u-blox M8

GPS/GLONASS受信機(Galileo/BeiDou可)u‐blox M8搭載 みちびき3機受信対応 AKIZUKI DENSHI 2,480 JPY
Bluetooth / UART converter RN-42使用 Bluetooth無線モジュール評価キット AKIZUKI DENSHI 2,400 JPY
USB-Serial Converter FT-232RQ USBシリアル変換モジュール AKIZUKI DENSHI 980 JPY
wire ブレッドボード・ジャンパーワイヤ(オス-オス)セット 各種 合計60本以上 AKIZUKI DENSHI 220 JPY
pin socket 分割ロングピンソケット 1×42 (42P) AKIZUKI DENSHI 80 JPY
other Windows PC for device configuration
other Tera Term
other Soldering iron, Needle-Nose Pliers, Micro USB cable, Mobile batteries, etc

Connect using Soldering Iron
  1. Solder GPS cables and male pins like below picture. The brown line from the GPS doesn’t use.
  2. Solder the Bluetooth / UART converter with female pins. You need 4 pins minimum and short circuit as described below.


Device Configurations
  1. Prepare Windows PC. Old windows PC should work.
    1. FTDICHIP device driver ( Select Windows )
    2. u-blox u-center
  2. Connect the Bluetooth / UART converter with your windows and run Tera Term. Select New Connection and  pic out appropriate COM port. I used COM5 but you should see different ports.
  3. After successfully connected, Config – Serial Port, then configure Baud rate to 115200.
  4. Type”$$$” then hit the enter key. The LED on the device blinks fast then you see “CMD” on Tera Term.
  5. Type “SU,57” then hit the enter key.  You don’t see what you typed but you can see “AOK”
  6. Type “—”  ( 3 dashes ) then hit the enter key. You will see “END” and disconnect the Bluetooth / UART device.
  7. Connect your USB-Serial Converter like below and run u-blox u-center. Connect TxD(RxD) to USB-Serial converter RxD(TxD).
  8. Hit the connection icon and select the com port. Mine is COM9, but you should see different ports. Then, hit the baud rate icon and select 115200.
  9. If successfully connected, the status icon like the below picture starts blinking in green. If not successful, the light doesn’t on, keep gray or red. Make sure the connection is right, the baud rate is 115200 or any other values if you change the baud rate.
  10. Select「view」-「Configure」, Then change「RATE(Rates)」「Measurement Frequency」 from 1000 to 200 ( 5Hz update. ) If you want to update 10Hz, configure this to 100.
  11. 「PRT(Ports)」「Baudrate」to 57600. You can select any other values like 38400 or 115200. I used 57600.
  12. Change 「NAV5」-「Dynamic Model」to「4 – Automotive」
  13. Hit the Send button at the bottom of the window.
  14. Select「Receiver」-「Action」-「Save Config」

FInal Step : Connect Each Devices
  1. Connect GPS and Bluetooth / UART converter like this.
  2. Connect your mobile battery to the Bluetooth / UART converter, then set up Android apps which you like. I have confirmed that this works perfectly with RaceChrono and GPSLaps

Notes

I used 57600 for the baud rate, but you can select 115200 or any other values. If you want to use 115200, please change the all 57600 value to it.