aboutsummaryrefslogtreecommitdiff
path: root/src/drivers/px4io/px4io.cpp
diff options
context:
space:
mode:
authorLorenz Meier <lm@inf.ethz.ch>2013-06-12 12:58:17 +0200
committerLorenz Meier <lm@inf.ethz.ch>2013-06-12 12:58:17 +0200
commitc3a8f177b6316a9cefd814e312742f47d3049739 (patch)
treec619c677676bc1bbe4bc55037cd376c42592e08f /src/drivers/px4io/px4io.cpp
parenteb76d116cc67c6354c29fa41e49b4cf9df1a472d (diff)
downloadpx4-firmware-c3a8f177b6316a9cefd814e312742f47d3049739.tar.gz
px4-firmware-c3a8f177b6316a9cefd814e312742f47d3049739.tar.bz2
px4-firmware-c3a8f177b6316a9cefd814e312742f47d3049739.zip
Software version check fixes
Diffstat (limited to 'src/drivers/px4io/px4io.cpp')
-rw-r--r--src/drivers/px4io/px4io.cpp16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/drivers/px4io/px4io.cpp b/src/drivers/px4io/px4io.cpp
index f033382a6..925041e0c 100644
--- a/src/drivers/px4io/px4io.cpp
+++ b/src/drivers/px4io/px4io.cpp
@@ -404,13 +404,23 @@ PX4IO::init()
unsigned proto_version = io_reg_get(PX4IO_PAGE_CONFIG, PX4IO_P_CONFIG_PROTOCOL_VERSION);
unsigned sw_version = io_reg_get(PX4IO_PAGE_CONFIG, PX4IO_P_CONFIG_SOFTWARE_VERSION);
- if (proto_version != PX4IO_P_CONFIG_PROTOCOL_VERSION) {
+ if (proto_version != PX4IO_P_CONFIG_PROTOCOL_VERSION_MAGIC) {
mavlink_log_emergency(_mavlink_fd, "[IO] ERROR! PROTO VER MISMATCH: v%u vs v%u\n",
proto_version,
- PX4IO_P_CONFIG_PROTOCOL_VERSION);
+ PX4IO_P_CONFIG_PROTOCOL_VERSION_MAGIC);
mavlink_log_emergency(_mavlink_fd, "[IO] Please update PX4IO firmware.");
- log("protocol version mismatch (v%u on IO vs v%u on FMU)", proto_version, PX4IO_P_CONFIG_PROTOCOL_VERSION);
+ log("protocol version mismatch (v%u on IO vs v%u on FMU)", proto_version, PX4IO_P_CONFIG_PROTOCOL_VERSION_MAGIC);
+ return 1;
+ }
+
+ if (sw_version != PX4IO_P_CONFIG_SOFTWARE_VERSION_MAGIC) {
+ mavlink_log_emergency(_mavlink_fd, "[IO] ERROR! SOFTWARE VER MISMATCH: v%u vs v%u\n",
+ proto_version,
+ PX4IO_P_CONFIG_SOFTWARE_VERSION_MAGIC);
+
+ mavlink_log_emergency(_mavlink_fd, "[IO] Please update PX4IO firmware.");
+ log("software version mismatch (v%u on IO vs v%u on FMU)", sw_version, PX4IO_P_CONFIG_SOFTWARE_VERSION_MAGIC);
return 1;
}