一、Introduction Product introduction DELINCOMM Single GPS receiver RG4538 GPS&GLONASS receiver RU4538-G GPS&BeiDou (BeiDou)receiver RM4538-B DK2635U7F Detailed parameters Interface DELINCOMM VCC: Red wire GND: Black wire TX : White wire RX : Green wire DK2635U7F VCC: White wire GND: Black wire TX : Blue wire RX : Green wire 二、Usage Hardware connection Connect the VCC, GND, TX and RX of the module to 3.3V, GND, RX and TX of {{uart}} (the corresponding node is ) respectively. Pay attention to avoid burning the module due to wrong connection of VCC, GND, TX and RX For some definitions and descriptions of UART, please refer to the Wiki tutorial "UART Usage" of each board How to enable GPS and modify serial port configuration ? Android temporary modification Enable ADB: How to enable ADB, refer to the chapter "Using ADB" in the Wiki tutorial of each product. Set the system to be readable and writable adb shell setprop persist.sys.root_access 3 adb root && adb remount Change parameters Enable GPS: Modify ro.factory.hasGPS in /vendor/build.prop to true Modify the serial port configuration: modify the SERIAL_DEVICE in the board /system/etc/u-blox.conf to the serial port path where the corresponding module is connected, and SERIAL_BAUD_RATE to the baud rate of the corresponding module Reboot the board Android code modification Enable GPS Modify BOARD_HAS_GPS in device/rockchip/{CPU}/{PRODUCT}/{PRODUCT}.mk in SDK directory to true Modify serial port configuration Modify SERIAL_DEVICE in device/rockchip/{CPU}/{PRODUCT}/gps/u-blox.conf in the SDK directory to the serial port path where the corresponding module is connected, and SERIAL_BAUD_RATE to the baud rate of the corresponding module Rate Recompile the SDK and flash the firmware FAQ Note:The following content is based on the GPS module's serial port path "/dev/ttysWK2" and baud rate "9600" as an example. How to judge whether the GPS module hardware connection is correct ? When the GPS module operates according to the Hardware Connection " chapter, through debugging the serial port or adb shell, after executing "cat /dev/ttysWK2", the correct hardware connection will appear The following LOG information. cat /dev/ttysWK2 $GPRMC,,V,,,,,,,,,,N*53 $GPVTG,,,,,,,,,N*30 $GPGGA,,,,,,0,00,99.99,,,,,,*48 $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30 $GPGLL,,,,,,V,N*64 $GPRMC,,V,,,,,,,,,,N*53 $GPVTG,,,,,,,,,N*30 $GPGGA,,,,,,0,00,99.99,,,,,,*48 $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30 $GPGLL,,,,,,V,N*64 $GPRMC,,V,,,,,,,,,,N*53 $GPVTG,,,,,,,,,N*30 $GPGGA,,,,,,0,00,99.99,,,,,,*48 $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30 $GPGLL,,,,,,V,N*64 $GPRMC,,V,,,,,,,,,,N*53 $GPVTG,,,,,,,,,N*30 $GPGGA,,,,,,0,00,99.99,,,,,,*48 $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30 $GPGLL,,,,,,V,N*64 $GPRMC,,V,,,,,,,,,,N*53 $GPVTG,,,,,,,,,N*30 $GPGGA,,,,,,0,00,99.99,,,,,,*48 $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30 $GPGLL,,,,,,V,N*64 $GPRMC,,V,,,,,,,,,,N*53 $GPVTG,,,,,,,,,N*30 $GPGGA,,,,,,0,00,99.99,,,,,,*48 $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30 $GPGLL,,,,,,V,N*64 ... How to judge whether gps.default.so is loaded normally? When according to " How to enable GPS and modify serial port configuration " section, power on the motherboard again, and execute "logcat -s TD1030DBG" through serial port debugging or adb shell, gps.default.so will appear as follows when loading normally LOG information: logcat -s TD1030DBG --------- beginning of kernel --------- beginning of system --------- beginning of main 06-01 01:38:26.913 254 254 D TD1030DBG: ======ro.factory.hasGPS: true 06-01 01:38:26.913 254 254 D TD1030DBG: Ver:20170626 06-01 01:38:26.913 254 254 D TD1030DBG: Firefly Version: gps_hal-android-arm64-5299e92006fa 06-01 01:38:26.922 254 254 D TD1030DBG: [DebugMask:0x60] 06-01 01:38:26.922 254 254 D TD1030DBG: [PROJECT_NAME : TD1030] 06-01 01:38:26.922 254 254 D TD1030DBG: Uart Path : /dev/ttysWK2 06-01 01:38:26.922 254 254 D TD1030DBG: Uart Baudrate : 9600 06-01 01:38:26.922 254 254 D TD1030DBG: AGPS_PORT:7275 06-01 01:38:26.922 254 254 D TD1030DBG: [AGPS_SERVER : supl.google.com] 06-01 01:38:26.922 254 254 D TD1030DBG: GNSS_MODE:3 06-01 01:38:26.922 254 254 D TD1030DBG: Succeed : Load configfile ok! 06-01 01:38:26.923 254 254 D TD1030DBG: Succeed : open uart /dev/ttysWK2 boadrate = 9600 06-01 01:38:26.924 254 254 V TD1030DBG: UartTxData, do not send data to gps_soc by uart 06-01 01:38:27.074 254 254 V TD1030DBG: UartTxData, do not send data to gps_soc by uart 06-01 01:38:27.224 254 254 V TD1030DBG: UartTxData, do not send data to gps_soc by uart 06-01 01:38:37.447 254 254 D TD1030DBG: Enter : td_bdgps_get_extension(gps-xtra) 06-01 01:38:37.447 254 254 D TD1030DBG: Enter : td_bdgps_get_extension(agps_ril) 06-01 01:38:37.448 254 254 D TD1030DBG: Enter : td_bdgps_get_extension(agps) 06-01 01:38:37.448 254 254 D TD1030DBG: Enter : td_bdgps_get_extension(gps_navigation_message) 06-01 01:38:37.448 254 254 D TD1030DBG: Enter : td_bdgps_get_extension(gps_measurement) 06-01 01:38:37.448 254 254 D TD1030DBG: Enter : td_bdgps_get_extension(gps-debug) 06-01 01:38:37.448 254 254 D TD1030DBG: Enter : td_bdgps_get_extension(gps-ni) 06-01 01:38:37.449 254 254 D TD1030DBG: Enter : td_bdgps_get_extension(gnss_configuration) 06-01 01:38:37.449 254 254 D TD1030DBG: Enter : td_bdgps_get_extension(gps_geofencing) 06-01 01:38:37.450 254 254 D TD1030DBG: Enter : td_bdgps_init 06-01 01:38:37.450 254 254 D TD1030DBG: Enter : gps_state_init 06-01 01:38:37.452 254 254 D TD1030DBG: Enter : td_bd_agps_init 06-01 01:38:37.452 254 254 D TD1030DBG: Succeed : agps init 06-01 01:38:37.453 254 254 D TD1030DBG: Enter : bd_xtra_init 06-01 01:38:37.453 254 254 D TD1030DBG: Enter : td_agps_init 06-01 01:38:37.453 254 254 D TD1030DBG: Enter : td_gps_ni_init 06-01 01:38:37.454 254 254 D TD1030DBG: Enter : td_agps_ril_init 06-01 01:38:37.454 254 254 D TD1030DBG: Enter : td_bdgps_cleanup 06-01 01:38:37.463 254 719 D TD1030DBG: Enter : tdchip_ack_timer_thread(0) 06-01 01:38:37.465 254 254 D TD1030DBG: Enter : td_bdgps_init 06-01 01:38:37.465 254 254 D TD1030DBG: Enter : bd_xtra_init 06-01 01:38:37.466 254 715 D TD1030DBG: Enter : gps_state_thread 06-01 01:38:37.466 254 715 D TD1030DBG: Event : gps control fd event 10 06-01 01:38:37.466 254 717 D TD1030DBG: Enter : supl_client_assist_thread 06-01 01:38:37.467 254 254 D TD1030DBG: Enter : td_agps_init 06-01 01:38:37.467 254 254 D TD1030DBG: Enter : td_gps_ni_init 06-01 01:38:37.468 254 254 D TD1030DBG: Enter : td_agps_ril_init Among them, you can check whether the serial port path and baud rate set by the software are consistent with the GPS module through the LOG information, such as: 06-01 01:38:26.923 254 254 D TD1030DBG: Succeed : open uart /dev/ttysWK2 boadrate = 9600 If the serial port path does not have 0666 permission, gps.default.so will fail to load, and the following error LOG information will appear: 06-01 01:38:26.923 254 254 D TD1030DBG: ERROR : Uart Open Permission denied Solution: Give 0666 permission to the serial port path. The GPS test APK has a small number of stars or fails to locate When the GPS module is connected correctly and gps.default.so is loaded normally, the GPS test APK may find that the number of satellites is small or the positioning fails. It is necessary to check whether the GPS antenna is placed in an open outdoor . 三、Firmware and Resource Download For related documents and firmware download, see Data Download on the official website . 四、Getting Started Flash firmware Compile the firmware RK3399 platform RK3399Pro platform RK3566 platform RK3568 platform RK3588 platform