Bad GPS Health when I have RTK Fix

Thanks, Max. This is super helpful. I started out trying to use UBX, but Mission Planner simply showed “No GPS”. I connected through a TTL level serial to USB converter to my PC and, like Randy, could not see anything. Changing to NMEA started things happening. I use RealTerm for troubleshooting like this and it can show binary. I will go back and try to get that working and then connect it to the PixHawk.

Is it required that the PixHawk be able to transmit TO the Ublox? If so, that is the trouble we have. Inside the C94, there is not a separate receive for the Pixhawk from the 900 Mhz radio that is receiving the RTK corrections from the other C94.

I do have my telemetry radios on a separate frequency. They are on 433 MHz.

Not sure I fully understand your last comment. You could transmit to the c94 as pin 9 is a rx pin I think. you would need to check this. More important are the different voltages of the pixhawk and C94. It is ok to send data from the c94 to the pix but the other way may blow the c94 as it is 3.3v. In that case you would need a logic level shifter from spark fun.
Also you should do all the configuration of the c94 via its usb port so I see no need to send data from the pixhawk to the c94. Once you get everything sorted maybe then think about data going in that direction.
To see the ubx data you need to use the Ublox U Central binary view tool
regards

You basically answered my question. In previous docs and posts, I have seen phrases such as “the Ardupilot software CAN CONFIGURE the Ublox automatically”. The words “can configure” says to me that you send setup info TO the Ublox. That is what cannot work (level shifters besides) because internally on the C94, there is a conflict - only one device can talk to it, and the radio for RTK corrections from the base is doing that. So, I am happy to hear the the PixHawk does not need to send anything TO the C94. I only have to connect the line from the C94 to the PixHawk, which is what I have. I just have to figure out the config of the C94. I can do that!! (with much time and scratching of the head!). The transmit OUT of the C94 is pin 13 of J8 on the version I have, which by the way is named RXD_EXT. The labeling is from the perspective of the OTHER device (found with my oscilloscope). RS-232 labeling is backwards like that sometimes. When I get this working, I promise to write up with drawings and pictures my configuration. You have helped me a bunch today! I am taking vacation today to work 100% on this project.

That is good. I am glad I could help
If you do not ming me asking what is your project. I am working on autonomous mowers as I have a lot of grass and do not enjoy the grind of mowing it all.
Max

THAT IS WHAT I AM DOING!!! I am working on a zero turn Bad Boy mower. We have 11 acres! My wife cuts it and enjoys it. I just bought her a NEW Bad Boy mower so I could take over the old one. My ultimate motive is to build a chemical sprayer out of it for the 50 acres of hay land I have. I figure with the deck removed and no driver, maybe the mower could stand up to 800 lbs of water/chemical on it (assuming they built it conservatively!).

You mentioned just ignoring the Bad GPS Health. Right now, I can’t get the controller to go into auto because of the Bad GPS Health. Is there a way to disable that? I changed the settings so that I can arm the controller without checks, but I don’t see how to bypass to go into AUTO.

I have EK2_GPS_CHECK set to 0 but that does not fix the problem. If I could go into auto (as I did once or twice yesterday), I may be OK. The accuracy looks good with the 1 Hz.

I have not used mine for about 2 months so I am a little rusty. I do remember being able to arm in auto with the message.

Here is a param file however I do not guarantee the solution is in this file. Just open in a text editor

SDR_Main_Pix1_Params 23-03-2018

We are currently living in the UK however we have a place in the Hill country in Texas. Where are you located.

I am in central Georgia. I will look at the file and maybe get some help! I have just connected USB to the C94 to play with getting UBX working also. That may solve it all.

I don’t see the file attached.

I have the C94 connected to my PC through a Serial to USB converter. I am running RealTerm in a mode that shows all characters, even binary info would show up. If I set the C94 to output UBX, I see nothing. If I set it to NMEA, I get data. Will work on that for a bit and search some Ublox-related forums, etc.

NOTE: 23/03/2018 21:18:51 Frame :
ACRO_TURN_RATE,180
AHRS_COMP_BETA,0.1
AHRS_EKF_TYPE,2
AHRS_GPS_GAIN,1
AHRS_GPS_MINSATS,6
AHRS_GPS_USE,1
AHRS_ORIENTATION,0
AHRS_RP_P,0.2
AHRS_TRIM_X,0.01230216
AHRS_TRIM_Y,-0.02349949
AHRS_TRIM_Z,0
AHRS_WIND_MAX,0
AHRS_YAW_P,0.2
ARMING_ACCTHRESH,0.75
ARMING_CHECK,0
ARMING_REQUIRE,0
ARMING_VOLT_MIN,0
ARMING_VOLT2_MIN,0
ATC_ACCEL_MAX,5
ATC_BRAKE,0
ATC_SPEED_D,0
ATC_SPEED_FF,0
ATC_SPEED_FILT,50
ATC_SPEED_I,0.2
ATC_SPEED_IMAX,1
ATC_SPEED_P,0.2
ATC_STOP_SPEED,0.1
ATC_STR_ANG_P,1
ATC_STR_RAT_D,0
ATC_STR_RAT_FF,0.2
ATC_STR_RAT_FILT,50
ATC_STR_RAT_I,0.5
ATC_STR_RAT_IMAX,1
ATC_STR_RAT_P,1
AUTO_KICKSTART,0
AUTO_TRIGGER_PIN,-1
AUX_CH,7
BATT_AMP_OFFSET,0
BATT_AMP_PERVOLT,17
BATT_CAPACITY,3300
BATT_CURR_PIN,3
BATT_LOW_TIMER,10
BATT_LOW_TYPE,0
BATT_MONITOR,0
BATT_SERIAL_NUM,-1
BATT_VOLT_MULT,10.1
BATT_VOLT_PIN,2
BATT2_AMP_OFFSET,0
BATT2_AMP_PERVOL,17
BATT2_CAPACITY,3300
BATT2_CURR_PIN,3
BATT2_MONITOR,0
BATT2_SERIAL_NUM,-1
BATT2_VOLT_MULT,10.1
BATT2_VOLT_PIN,2
BCN_ALT,0
BCN_LATITUDE,0
BCN_LONGITUDE,0
BCN_ORIENT_YAW,0
BCN_TYPE,0
BRD_IMU_TARGTEMP,-1
BRD_IO_ENABLE,1
BRD_PWM_COUNT,4
BRD_SAFETY_MASK,0
BRD_SAFETYENABLE,1
BRD_SBUS_OUT,0
BRD_SER1_RTSCTS,2
BRD_SER2_RTSCTS,2
BRD_SERIAL_NUM,0
BRD_TYPE,2
BTN_ENABLE,0
CAM_AUTO_ONLY,0
CAM_DURATION,10
CAM_FEEDBACK_PIN,-1
CAM_FEEDBACK_POL,1
CAM_MAX_ROLL,0
CAM_MIN_INTERVAL,0
CAM_RELAY_ON,1
CAM_SERVO_OFF,1100
CAM_SERVO_ON,1300
CAM_TRIGG_DIST,0
CAM_TRIGG_TYPE,0
CAN_D1_PROTOCOL,1
CAN_D2_PROTOCOL,1
CAN_P1_DRIVER,0
CAN_P2_DRIVER,0
CH7_OPTION,1
COMPASS_AUTODEC,1
COMPASS_CAL_FIT,16
COMPASS_DEC,0
COMPASS_DEV_ID,131594
COMPASS_DEV_ID2,131594
COMPASS_DEV_ID3,0
COMPASS_DIA_X,0.9743134
COMPASS_DIA_Y,0.943907
COMPASS_DIA_Z,1.041512
COMPASS_DIA2_X,0
COMPASS_DIA2_Y,0
COMPASS_DIA2_Z,0
COMPASS_DIA3_X,0
COMPASS_DIA3_Y,0
COMPASS_DIA3_Z,0
COMPASS_EXTERN2,0
COMPASS_EXTERN3,0
COMPASS_EXTERNAL,0
COMPASS_LEARN,1
COMPASS_MOT_X,0
COMPASS_MOT_Y,0
COMPASS_MOT_Z,0
COMPASS_MOT2_X,0
COMPASS_MOT2_Y,0
COMPASS_MOT2_Z,0
COMPASS_MOT3_X,0
COMPASS_MOT3_Y,0
COMPASS_MOT3_Z,0
COMPASS_MOTCT,0
COMPASS_ODI_X,-0.003732702
COMPASS_ODI_Y,0.006261846
COMPASS_ODI_Z,0.02855588
COMPASS_ODI2_X,0
COMPASS_ODI2_Y,0
COMPASS_ODI2_Z,0
COMPASS_ODI3_X,0
COMPASS_ODI3_Y,0
COMPASS_ODI3_Z,0
COMPASS_OFFS_MAX,850
COMPASS_OFS_X,-271.3019
COMPASS_OFS_Y,-48.62054
COMPASS_OFS_Z,138.6305
COMPASS_OFS2_X,-63.686
COMPASS_OFS2_Y,-242.8607
COMPASS_OFS2_Z,-72.54011
COMPASS_OFS3_X,0
COMPASS_OFS3_Y,0
COMPASS_OFS3_Z,0
COMPASS_ORIENT,0
COMPASS_ORIENT2,0
COMPASS_ORIENT3,0
COMPASS_PRIMARY,0
COMPASS_TYPEMASK,0
COMPASS_USE,1
COMPASS_USE2,0
COMPASS_USE3,0
CRUISE_SPEED,2
CRUISE_THROTTLE,90
EK2_ABIAS_P_NSE,0.005
EK2_ACC_P_NSE,0.6
EK2_ALT_M_NSE,3
EK2_ALT_SOURCE,0
EK2_BCN_DELAY,50
EK2_BCN_I_GTE,500
EK2_BCN_M_NSE,1
EK2_CHECK_SCALE,100
EK2_EAS_I_GATE,400
EK2_EAS_M_NSE,1.4
EK2_ENABLE,1
EK2_FLOW_DELAY,10
EK2_FLOW_I_GATE,300
EK2_FLOW_M_NSE,0.25
EK2_GBIAS_P_NSE,0.0001
EK2_GLITCH_RAD,25
EK2_GPS_CHECK,31
EK2_GPS_DELAY,220
EK2_GPS_TYPE,0
EK2_GSCL_P_NSE,0.0005
EK2_GYRO_P_NSE,0.03
EK2_HGT_DELAY,60
EK2_HGT_I_GATE,500
EK2_IMU_MASK,3
EK2_LOG_MASK,1
EK2_MAG_CAL,2
EK2_MAG_I_GATE,300
EK2_MAG_M_NSE,0.05
EK2_MAG_MASK,0
EK2_MAGB_P_NSE,0.0001
EK2_MAGE_P_NSE,0.001
EK2_MAX_FLOW,2.5
EK2_NOAID_M_NSE,10
EK2_OGN_HGT_MASK,0
EK2_POS_I_GATE,500
EK2_POSNE_M_NSE,1
EK2_RNG_I_GATE,500
EK2_RNG_M_NSE,0.5
EK2_RNG_USE_HGT,-1
EK2_RNG_USE_SPD,2
EK2_TAU_OUTPUT,25
EK2_TERR_GRAD,0.1
EK2_VEL_I_GATE,500
EK2_VELD_M_NSE,0.7
EK2_VELNE_M_NSE,0.5
EK2_WIND_P_NSE,0.1
EK2_WIND_PSCALE,0.5
EK2_YAW_I_GATE,300
EK2_YAW_M_NSE,0.5
EK3_ENABLE,0
FORMAT_VERSION,16
FRAME_CLASS,1
FS_ACTION,2
FS_CRASH_CHECK,0
FS_GCS_ENABLE,0
FS_THR_ENABLE,1
FS_THR_VALUE,910
FS_TIMEOUT,5
GCS_PID_MASK,0
GND_ABS_PRESS,97519.55
GND_ABS_PRESS2,0
GND_ABS_PRESS3,0
GND_ALT_OFFSET,0
GND_EXT_BUS,-1
GND_PRIMARY,0
GND_TEMP,0
GPS_AUTO_CONFIG,1
GPS_AUTO_SWITCH,1
GPS_BLEND_MASK,5
GPS_BLEND_TC,10
GPS_DELAY_MS,0
GPS_DELAY_MS2,0
GPS_GNSS_MODE,0
GPS_GNSS_MODE2,0
GPS_INJECT_TO,127
GPS_MIN_DGPS,100
GPS_MIN_ELEV,-100
GPS_NAVFILTER,8
GPS_POS1_X,0
GPS_POS1_Y,0
GPS_POS1_Z,0
GPS_POS2_X,0
GPS_POS2_Y,0
GPS_POS2_Z,0
GPS_RATE_MS,200
GPS_RATE_MS2,200
GPS_RAW_DATA,0
GPS_SAVE_CFG,2
GPS_SBAS_MODE,2
GPS_SBP_LOGMASK,-256
GPS_TYPE,5
GPS_TYPE2,0
INITIAL_MODE,0
INS_ACC_BODYFIX,2
INS_ACC_ID,1246218
INS_ACC2_ID,1114634
INS_ACC2OFFS_X,0.007988153
INS_ACC2OFFS_Y,0.5272897
INS_ACC2OFFS_Z,0.8575471
INS_ACC2SCAL_X,1.00832
INS_ACC2SCAL_Y,1.012542
INS_ACC2SCAL_Z,0.9879621
INS_ACC3_ID,0
INS_ACC3OFFS_X,0
INS_ACC3OFFS_Y,0
INS_ACC3OFFS_Z,0
INS_ACC3SCAL_X,0
INS_ACC3SCAL_Y,0
INS_ACC3SCAL_Z,0
INS_ACCEL_FILTER,10
INS_ACCOFFS_X,-0.07164289
INS_ACCOFFS_Y,-0.1504336
INS_ACCOFFS_Z,-0.3677227
INS_ACCSCAL_X,0.9957786
INS_ACCSCAL_Y,0.9966228
INS_ACCSCAL_Z,0.9969301
INS_FAST_SAMPLE,0
INS_GYR_CAL,1
INS_GYR_ID,2163722
INS_GYR2_ID,2228490
INS_GYR2OFFS_X,0.004606849
INS_GYR2OFFS_Y,-0.02465498
INS_GYR2OFFS_Z,-0.009986775
INS_GYR3_ID,0
INS_GYR3OFFS_X,0
INS_GYR3OFFS_Y,0
INS_GYR3OFFS_Z,0
INS_GYRO_FILTER,4
INS_GYROFFS_X,-0.00107086
INS_GYROFFS_Y,0.03596456
INS_GYROFFS_Z,-0.01480066
INS_LOG_BAT_CNT,1024
INS_LOG_BAT_MASK,0
INS_NOTCH_ENABLE,0
INS_POS1_X,0
INS_POS1_Y,0
INS_POS1_Z,0
INS_POS2_X,0
INS_POS2_Y,0
INS_POS2_Z,0
INS_POS3_X,0
INS_POS3_Y,0
INS_POS3_Z,0
INS_PRODUCT_ID,0
INS_STILL_THRESH,0.1
INS_TRIM_OPTION,1
INS_USE,1
INS_USE2,1
INS_USE3,0
LOG_BACKEND_TYPE,1
LOG_BITMASK,65535
LOG_DISARMED,0
LOG_FILE_BUFSIZE,16
LOG_FILE_DSRMROT,0
LOG_REPLAY,0
MAG_ENABLE,1
MIS_OPTIONS,0
MIS_RESTART,0
MIS_TOTAL,1
MNT_ANGMAX_PAN,4500
MNT_ANGMAX_ROL,4500
MNT_ANGMAX_TIL,4500
MNT_ANGMIN_PAN,-4500
MNT_ANGMIN_ROL,-4500
MNT_ANGMIN_TIL,-4500
MNT_DEFLT_MODE,3
MNT_JSTICK_SPD,0
MNT_LEAD_PTCH,0
MNT_LEAD_RLL,0
MNT_NEUTRAL_X,0
MNT_NEUTRAL_Y,0
MNT_NEUTRAL_Z,0
MNT_RC_IN_PAN,0
MNT_RC_IN_ROLL,0
MNT_RC_IN_TILT,0
MNT_RETRACT_X,0
MNT_RETRACT_Y,0
MNT_RETRACT_Z,0
MNT_STAB_PAN,0
MNT_STAB_ROLL,0
MNT_STAB_TILT,0
MNT_TYPE,0
MODE_CH,6
MODE1,10
MODE2,0
MODE3,0
MODE4,2
MODE5,0
MODE6,0
MOT_PWM_FREQ,16
MOT_PWM_TYPE,0
MOT_SAFE_DISARM,0
MOT_SLEWRATE,100
MOT_THR_MAX,100
MOT_THR_MIN,0
MOT_THST_EXPO,0
NAVL1_DAMPING,0.75
NAVL1_PERIOD,6
NAVL1_XTRACK_I,0.02
NTF_BUZZ_ENABLE,1
NTF_DISPLAY_TYPE,0
NTF_LED_BRIGHT,3
NTF_LED_OVERRIDE,0
NTF_OREO_THEME,0
PILOT_STEER_TYPE,0
PIVOT_TURN_ANGLE,30
RC1_DZ,30
RC1_MAX,1906
RC1_MIN,1114
RC1_REVERSED,0
RC1_TRIM,1513
RC10_DZ,0
RC10_MAX,1900
RC10_MIN,1100
RC10_REVERSED,0
RC10_TRIM,0
RC11_DZ,0
RC11_MAX,1900
RC11_MIN,1100
RC11_REVERSED,0
RC11_TRIM,0
RC12_DZ,0
RC12_MAX,1900
RC12_MIN,1100
RC12_REVERSED,0
RC12_TRIM,0
RC13_DZ,0
RC13_MAX,1900
RC13_MIN,1100
RC13_REVERSED,0
RC13_TRIM,0
RC14_DZ,0
RC14_MAX,1900
RC14_MIN,1100
RC14_REVERSED,0
RC14_TRIM,0
RC15_DZ,0
RC15_MAX,1900
RC15_MIN,1100
RC15_REVERSED,0
RC15_TRIM,1500
RC16_DZ,0
RC16_MAX,1900
RC16_MIN,1100
RC16_REVERSED,0
RC16_TRIM,1500
RC2_DZ,0
RC2_MAX,1905
RC2_MIN,1114
RC2_REVERSED,0
RC2_TRIM,1509
RC3_DZ,30
RC3_MAX,1905
RC3_MIN,1113
RC3_REVERSED,0
RC3_TRIM,1115
RC4_DZ,0
RC4_MAX,1902
RC4_MIN,1115
RC4_REVERSED,0
RC4_TRIM,1508
RC5_DZ,0
RC5_MAX,1911
RC5_MIN,1114
RC5_REVERSED,0
RC5_TRIM,1902
RC6_DZ,0
RC6_MAX,1911
RC6_MIN,1114
RC6_REVERSED,0
RC6_TRIM,1903
RC7_DZ,0
RC7_MAX,1904
RC7_MIN,1114
RC7_REVERSED,0
RC7_TRIM,1903
RC8_DZ,0
RC8_MAX,1912
RC8_MIN,1114
RC8_REVERSED,0
RC8_TRIM,1902
RC9_DZ,0
RC9_MAX,1900
RC9_MIN,1100
RC9_REVERSED,0
RC9_TRIM,0
RCMAP_PITCH,2
RCMAP_ROLL,1
RCMAP_THROTTLE,3
RCMAP_YAW,4
RELAY_DEFAULT,0
RELAY_PIN,54
RELAY_PIN2,55
RELAY_PIN3,-1
RELAY_PIN4,-1
RNGFND_ADDR,0
RNGFND_DEBOUNCE,2
RNGFND_FUNCTION,0
RNGFND_GNDCLEAR,10
RNGFND_MAX_CM,700
RNGFND_MIN_CM,20
RNGFND_OFFSET,0
RNGFND_ORIENT,0
RNGFND_PIN,-1
RNGFND_POS_X,0
RNGFND_POS_Y,0
RNGFND_POS_Z,0
RNGFND_PWRRNG,0
RNGFND_RMETRIC,1
RNGFND_SCALING,3
RNGFND_SETTLE,0
RNGFND_STOP_PIN,-1
RNGFND_TRIGGR_CM,100
RNGFND_TURN_ANGL,45
RNGFND_TURN_TIME,1
RNGFND_TYPE,0
RNGFND2_ADDR,0
RNGFND2_FUNCTION,0
RNGFND2_GNDCLEAR,10
RNGFND2_MAX_CM,700
RNGFND2_MIN_CM,20
RNGFND2_OFFSET,0
RNGFND2_ORIENT,0
RNGFND2_PIN,-1
RNGFND2_POS_X,0
RNGFND2_POS_Y,0
RNGFND2_POS_Z,0
RNGFND2_RMETRIC,1
RNGFND2_SCALING,3
RNGFND2_SETTLE,0
RNGFND2_STOP_PIN,-1
RNGFND2_TYPE,0
RSSI_ANA_PIN,0
RSSI_CHAN_HIGH,2000
RSSI_CHAN_LOW,1000
RSSI_CHANNEL,0
RSSI_PIN_HIGH,5
RSSI_PIN_LOW,0
RSSI_TYPE,0
RST_SWITCH_CH,0
RTL_SPEED,0
SCHED_DEBUG,0
SCHED_LOOP_RATE,50
SERIAL0_BAUD,115
SERIAL0_PROTOCOL,1
SERIAL1_BAUD,57
SERIAL1_PROTOCOL,1
SERIAL2_BAUD,57
SERIAL2_PROTOCOL,1
SERIAL3_BAUD,19
SERIAL3_PROTOCOL,5
SERIAL4_BAUD,38
SERIAL4_PROTOCOL,5
SERIAL5_BAUD,57
SERIAL5_PROTOCOL,-1
SERVO_RATE,50
SERVO_SBUS_RATE,50
SERVO_VOLZ_MASK,0
SERVO1_FUNCTION,26
SERVO1_MAX,1906
SERVO1_MIN,1114
SERVO1_REVERSED,0
SERVO1_TRIM,1513
SERVO10_FUNCTION,0
SERVO10_MAX,1900
SERVO10_MIN,1100
SERVO10_REVERSED,0
SERVO10_TRIM,0
SERVO11_FUNCTION,0
SERVO11_MAX,1900
SERVO11_MIN,1100
SERVO11_REVERSED,0
SERVO11_TRIM,0
SERVO12_FUNCTION,0
SERVO12_MAX,1900
SERVO12_MIN,1100
SERVO12_REVERSED,0
SERVO12_TRIM,0
SERVO13_FUNCTION,0
SERVO13_MAX,1900
SERVO13_MIN,1100
SERVO13_REVERSED,0
SERVO13_TRIM,0
SERVO14_FUNCTION,0
SERVO14_MAX,1900
SERVO14_MIN,1100
SERVO14_REVERSED,0
SERVO14_TRIM,0
SERVO15_FUNCTION,0
SERVO15_MAX,1900
SERVO15_MIN,1100
SERVO15_REVERSED,0
SERVO15_TRIM,1500
SERVO16_FUNCTION,0
SERVO16_MAX,1900
SERVO16_MIN,1100
SERVO16_REVERSED,0
SERVO16_TRIM,1500
SERVO2_FUNCTION,0
SERVO2_MAX,1905
SERVO2_MIN,1114
SERVO2_REVERSED,0
SERVO2_TRIM,1509
SERVO3_FUNCTION,70
SERVO3_MAX,1905
SERVO3_MIN,1113
SERVO3_REVERSED,0
SERVO3_TRIM,1115
SERVO4_FUNCTION,0
SERVO4_MAX,1902
SERVO4_MIN,1115
SERVO4_REVERSED,0
SERVO4_TRIM,1508
SERVO5_FUNCTION,0
SERVO5_MAX,1911
SERVO5_MIN,1114
SERVO5_REVERSED,0
SERVO5_TRIM,1902
SERVO6_FUNCTION,0
SERVO6_MAX,1911
SERVO6_MIN,1114
SERVO6_REVERSED,0
SERVO6_TRIM,1903
SERVO7_FUNCTION,0
SERVO7_MAX,1904
SERVO7_MIN,1114
SERVO7_REVERSED,0
SERVO7_TRIM,1903
SERVO8_FUNCTION,0
SERVO8_MAX,1912
SERVO8_MIN,1114
SERVO8_REVERSED,0
SERVO8_TRIM,1902
SERVO9_FUNCTION,0
SERVO9_MAX,1900
SERVO9_MIN,1100
SERVO9_REVERSED,0
SERVO9_TRIM,0
SPEED_TURN_GAIN,100
SR0_EXT_STAT,2
SR0_EXTRA1,4
SR0_EXTRA2,4
SR0_EXTRA3,2
SR0_PARAMS,10
SR0_POSITION,2
SR0_RAW_CTRL,1
SR0_RAW_SENS,2
SR0_RC_CHAN,2
SR1_EXT_STAT,2
SR1_EXTRA1,8
SR1_EXTRA2,8
SR1_EXTRA3,8
SR1_PARAMS,10
SR1_POSITION,8
SR1_RAW_CTRL,1
SR1_RAW_SENS,8
SR1_RC_CHAN,2
SR2_EXT_STAT,1
SR2_EXTRA1,1
SR2_EXTRA2,1
SR2_EXTRA3,1
SR2_PARAMS,10
SR2_POSITION,1
SR2_RAW_CTRL,1
SR2_RAW_SENS,1
SR2_RC_CHAN,1
SR3_EXT_STAT,1
SR3_EXTRA1,1
SR3_EXTRA2,1
SR3_EXTRA3,1
SR3_PARAMS,10
SR3_POSITION,1
SR3_RAW_CTRL,1
SR3_RAW_SENS,1
SR3_RC_CHAN,1
SRTL_ACCURACY,2
SRTL_POINTS,150
STAT_BOOTCNT,119
STAT_FLTTIME,95033
STAT_RESET,45075680
STAT_RUNTIME,150047
SYSID_ENFORCE,0
SYSID_MYGCS,255
SYSID_SW_TYPE,20
SYSID_THISMAV,1
TELEM_DELAY,0
TURN_MAX_G,1
TURN_RADIUS,0.9
VISO_ORIENT,0
VISO_POS_X,0
VISO_POS_Y,0
VISO_POS_Z,0
VISO_TYPE,0
WENC_CPR,3200
WENC_PINA,55
WENC_PINB,54
WENC_POS_X,0
WENC_POS_Y,0
WENC_POS_Z,0
WENC_RADIUS,0.05
WENC_TYPE,0
WENC2_CPR,3200
WENC2_PINA,53
WENC2_PINB,52
WENC2_POS_X,0
WENC2_POS_Y,0
WENC2_POS_Z,0
WENC2_RADIUS,0.05
WENC2_TYPE,0
WP_OVERSHOOT,2
WP_RADIUS,1
WP_SPEED,0

1 Like

Thanks. And I just discovered my UBX problem. I have no messages configured to send in the UBX-CFG-MSG menu. I have to figure out what to enable there, now. There are a LOT of them. :slight_smile:

I looked through the Ardupilot code and found the UBX messages that it expects. I was able to enable most of those. Some were not available, but still not working. Over on the Ublox forum, I am seeing that UBX elicits an acknowledgement, which means that I do need the transmit from PixHawk connected which is not possible as stated above. Unless I am missing something, I don’t see how the C94 can work in UBX mode if the radio on it is in use (which it is).

As a side, I do see in the code that Ardupilot sends setup commands to the GPS so that it would indeed configure it if the transmit line were connected.

Can you share the messages?
I am sure there will be a work around. just can’t spend the time on this just yet.
I know you can turn the c94 radio on and off (not done it myself just yet.) Maybe it could be stitch off for configuration and then back on for the mission
sorry not much help
Max

This is from the ubx.h file. I looked at the ubx.cpp file and followed the code, but could have missed something. It seems that these messages are parsed by the ubx.cpp file. In Ublox u-center, I set up the device to send these messages, however, some of them were not available or could not be chosen. In reading on the UBX protocol, however, I see that if you send config commands they are acknowledged, but the streaming data that we are interested in is not acknowledged, so I am back to having hope that this may work eventually.

/* Message Classes & IDs */
#define UBX_MSG_NAV_POSLLH ((UBX_CLASS_NAV) | UBX_ID_NAV_POSLLH << 8)
#define UBX_MSG_NAV_SOL ((UBX_CLASS_NAV) | UBX_ID_NAV_SOL << 8)
#define UBX_MSG_NAV_DOP ((UBX_CLASS_NAV) | UBX_ID_NAV_DOP << 8)
#define UBX_MSG_NAV_PVT ((UBX_CLASS_NAV) | UBX_ID_NAV_PVT << 8)
#define UBX_MSG_NAV_VELNED ((UBX_CLASS_NAV) | UBX_ID_NAV_VELNED << 8)
#define UBX_MSG_NAV_TIMEUTC ((UBX_CLASS_NAV) | UBX_ID_NAV_TIMEUTC << 8)
#define UBX_MSG_NAV_SVINFO ((UBX_CLASS_NAV) | UBX_ID_NAV_SVINFO << 8)
#define UBX_MSG_ACK_NAK ((UBX_CLASS_ACK) | UBX_ID_ACK_NAK << 8)
#define UBX_MSG_ACK_ACK ((UBX_CLASS_ACK) | UBX_ID_ACK_ACK << 8)
#define UBX_MSG_CFG_PRT ((UBX_CLASS_CFG) | UBX_ID_CFG_PRT << 8)
#define UBX_MSG_CFG_MSG ((UBX_CLASS_CFG) | UBX_ID_CFG_MSG << 8)
#define UBX_MSG_CFG_RATE ((UBX_CLASS_CFG) | UBX_ID_CFG_RATE << 8)
#define UBX_MSG_CFG_NAV5 ((UBX_CLASS_CFG) | UBX_ID_CFG_NAV5 << 8)
#define UBX_MSG_CFG_SBAS ((UBX_CLASS_CFG) | UBX_ID_CFG_SBAS << 8)
#define UBX_MSG_MON_HW ((UBX_CLASS_MON) | UBX_ID_MON_HW << 8)
#define UBX_MSG_MON_VER ((UBX_CLASS_MON) | UBX_ID_MON_VER << 8)

PROGRESS! With NMEA, I was able to have the C94 plugged into either the GPS port or the Serial 4/5 port. I noticed in the ubx.cpp module, when trying to set up the GPS, the programmers try different baud rates ON BOTH ENDS. Since we can’t set the GPS port baud rate, but we can set the Serial 4 baud rate, I moved the C94 to the Serial 4/5 connector and now it is recognized! I am still having trouble with reliability. I changed the update rate to 5 Hz on U-center, etc. Still working on it, but at least it is talking!

1 Like

Very disappointing after that. In fact, I am not doubting myself. I never could get UBX to work again. I am wondering if I just thought I had the C94 set for UBX but really it was UBX+NMEA and Ardurover might have been set to NMEA. I don’t know. On top of that, I just went back to NMEA and was able to switch into AUTO even though I had the Bad GPS Signal Health message. But, then all of a sudden it would not go back into AUTO, even though the only error I saw was that same one. I stopped for dinner and some errands and came back one last time and at first it would not go into AUTO and then it did. But, too late tonight to do much. So, tomorrow…

I haven’t read through the full back log of messages here, but why not provide Ardupilot with access to read/write to the GPS, then set the GPS type to UBX, set GPS_AUTO_CONFIG 1, and pass corrections through ArduPilot instead of trying to use a separate stream of corrections? Unless you are trying to do something very specific, the UBlox driver will configure the GPS appropriately for you, and inject the corrections.