I recently purchased two sparkfun zed-f9p GPS RTK, which I intend to use to locate the px4 drone. on the ucenter software, I have set the uart2 interface protocol of the device as:
Protocol in:RTCM3 and
Protocol out:UBX+NMEA and Baudrate as
115200. I know the px4 system does not support nmea protocol.
I connected an rtk device and pixhawk4 to qgc on the same computer via two usb cables respectively. But when I connect this rtk device to the gps port of pixhawk4 like an ordinary gps device
nsh> gps start -d /dev/ttyS0 -b 115200 -p ubx, the device cannot be connected successfully. qgc terminal shows:
nsh> gps status INFO [gps] Main GPS INFO [gps] protocol: UBX INFO [gps] status: NOT OK, port: /dev/ttyS0, baudrate: 115200 INFO [gps] sat info: disabled INFO [gps] rate reading: 0 B/s
However, if the ash protocol is used, px4 can detect a small number of satellites, but cannot publish
INFO [gps] Main GPS INFO [gps] protocol: ASHTECH INFO [gps] status: NOT OK, port: /dev/ttyS0, baudrate: 115200 INFO [gps] sat info: disabled INFO [gps] rate reading: 0 B/s INFO [gps] rate position: 0.00 Hz INFO [gps] rate velocity: 0.00 Hz INFO [gps] rate publication: 0.00 Hz INFO [gps] rate RTCM injection: 0.00 Hz sensor_gps_s timestamp: 689759983 (0.000529 seconds ago) time_utc_usec: 0 device_id: 0 (Type: 0x00, UNKNOWN:0 (0x00)) lat: 488456306 lon: 23570470 alt: 134100 alt_ellipsoid: 0 s_variance_m_s: 0.0000 c_variance_rad: 0.1000 eph: 0.0000 epv: 0.0000 hdop: 0.0000 vdop: 0.0000 noise_per_ms: 0 jamming_indicator: 0 vel_m_s: 0.0000 vel_n_m_s: 0.0000 vel_e_m_s: 0.0000 vel_d_m_s: 0.0000 cog_rad: 0.0000 timestamp_time_relative: -689759983 heading: nan heading_offset: nan automatic_gain_control: 0 fix_type: 3 jamming_state: 0 vel_ned_valid: True satellites_used: 6
The base RTK device works fine. The topic
gps_inject_data published by qgc could be received on px4.
Well, I followed this tutorial, but I did not receive any valid rtk data. Does anyone have experience with zed f9p of sparkfun please? Can anyone help me?
Thanks a lot.