If you are going to use autosteer at cm precision you should think about a rtk gps receiver.
This is a line up in gps starting with low precision.
+- Ready to use L1 System
RTK System that needs less ore more config and work
I did it as suggested by spunky here: ordering list page 35, picture page 37 https://www.landtreff.de/einfache-parallelfahrhilfe-fur-dein-android-gerat-t5428-510.html
Setup: To program the BT module, connect it with the USB UART module (cross RX and TX!). You may have to install a driver for the USB UART PL2303HX (web). You can use a terminal program such as Termite to program the BT module: AT=BAUD8 means serial speed 115200 Baud. The module should respond in Termite. With the command “AT” it normally doesn't respond. ATTENTION: if baud rate is changed, it needs to be changed in the settings of Termite too, otherwise you won’t see the module any more. AT=NAMESETGPS module changes the Bluetooth name to “GPS module”. The GPS module is connected via USB and configured using U-Center (https://www.u-blox.com/en/product/u-center-windows)
At the GPS module you solder either 4 cables, or better a 4 pin 1.27mm connector to GND / Vcc / RX / TX. This GPS module runs at 3.3 to … V so the 3.7V battery is fine. The charger module is in between the GPS, the Bluetooth module and the battery. Between the Battery and the charger I put a 500mA fuse. You connect the charger to USB and the devices are powered and the battery charges. For communication BT and GPS are connected via RX/TX (crossed). The UART (RX/TX) is normaly activated in the UBlox, you don’t have to do anything, the sentences it sends also fits to AgOpenGPS. If you need RTK the module may process it, but I don’t know how, I don’t use RTK at the moment.
Prices are only an estimation. They also have very different functions included.