summaryrefslogtreecommitdiff
path: root/src/venus_gps.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/venus_gps.c')
-rw-r--r--src/venus_gps.c46
1 files changed, 32 insertions, 14 deletions
diff --git a/src/venus_gps.c b/src/venus_gps.c
index c11bed1..1136d07 100644
--- a/src/venus_gps.c
+++ b/src/venus_gps.c
@@ -710,42 +710,60 @@ int main(int argc, char *argv[])
exit(1);
}
- venus_conf_format(tty, MSG_TYPE_BINARY, UPDATE_ATTR_SRAM);
+ tmp = venus_conf_format(tty, MSG_TYPE_BINARY, UPDATE_ATTR_SRAM);
+ if (tmp < 0) {
+ log_error("failed to change to binary format");
+ exit(1);
+ }
tmp = venus_query_sw_version(tty, SW_TYPE_RESERVED, &msg);
if (tmp < 0) {
log_error("failed to query venus sw version info");
exit(1);
}
- if (msg.len == 14 && msg.data[0] == ID_SW_VERSION) {
- log_notice("Venus Software Type: 0x%02X", msg.data[1]);
- log_notice("Venus Kernel Version: 0x%02X%02X%02X%02X",
- msg.data[2], msg.data[3], msg.data[4], msg.data[5]);
- log_notice("Venus ODM version: 0x%02X%02X%02X%02X",
- msg.data[6], msg.data[7], msg.data[8], msg.data[9]);
- log_notice("Venus Revision: 0x%02X%02X%02X%02X",
- msg.data[10], msg.data[11], msg.data[12], msg.data[13]);
- }
+ log_notice("Venus Software Type: 0x%02X", msg.data[1]);
+ log_notice("Venus Kernel Version: 0x%02X%02X%02X%02X",
+ msg.data[2], msg.data[3], msg.data[4], msg.data[5]);
+ log_notice("Venus ODM version: 0x%02X%02X%02X%02X",
+ msg.data[6], msg.data[7], msg.data[8], msg.data[9]);
+ log_notice("Venus Revision: 0x%02X%02X%02X%02X",
+ msg.data[10], msg.data[11], msg.data[12], msg.data[13]);
venus_msg_data_free(&msg);
#if CONFIG_CAN_DEFAULT
if (factory_defaults) {
- venus_factory_defaults(tty, FACTORY_DEFAULTS_REBOOT);
log_notice("setting factory defaults");
+ tmp = venus_factory_defaults(tty, FACTORY_DEFAULTS_REBOOT);
+ if (tmp < 0) {
+ log_error("failed to set factory defaults");
+ exit(1);
+ }
exit(0);
}
#endif
#if CONFIG_CAN_RESET
if (start_mode != (typeof(start_mode)) - 1) {
- venus_system_restart(tty, start_mode, time(NULL), latitude, longitude, altitude);
log_notice("issuing system restart");
+ tmp = venus_system_restart(tty, start_mode, time(NULL), latitude, longitude, altitude);
+ if (tmp < 0) {
+ log_error("system restart failed");
+ exit(1);
+ }
exit(0);
}
#endif
- venus_conf_nmea(tty, gga, gsa, gsv, gll, rmc, vtg, zda, UPDATE_ATTR_SRAM);
+ tmp = venus_conf_nmea(tty, gga, gsa, gsv, gll, rmc, vtg, zda, UPDATE_ATTR_SRAM);
+ if (tmp < 0) {
+ log_error("failed to configure nmea sentences");
+ exit(1);
+ }
- venus_conf_format(tty, MSG_TYPE_NMEA, UPDATE_ATTR_SRAM);
+ tmp = venus_conf_format(tty, MSG_TYPE_NMEA, UPDATE_ATTR_SRAM);
+ if (tmp < 0) {
+ log_error("failed to change to nmea format");
+ exit(1);
+ }
close(tty);