aboutsummaryrefslogtreecommitdiff
path: root/ROMFS
diff options
context:
space:
mode:
authorPavel Kirienko <pavel.kirienko@gmail.com>2014-08-23 17:23:59 +0400
committerPavel Kirienko <pavel.kirienko@gmail.com>2014-08-23 17:31:46 +0400
commit6a8971e28f492073a951d96065df30034853bea7 (patch)
tree66081062727f82c5a108367abd051cd24c8c588d /ROMFS
parent7132141cc478e1b9cdde41207c03f2c622f7831a (diff)
downloadpx4-firmware-6a8971e28f492073a951d96065df30034853bea7.tar.gz
px4-firmware-6a8971e28f492073a951d96065df30034853bea7.tar.bz2
px4-firmware-6a8971e28f492073a951d96065df30034853bea7.zip
New UAVCAN initialization logic
Diffstat (limited to 'ROMFS')
-rw-r--r--ROMFS/px4fmu_common/init.d/rc.uavcan16
-rw-r--r--ROMFS/px4fmu_common/init.d/rcS12
2 files changed, 24 insertions, 4 deletions
diff --git a/ROMFS/px4fmu_common/init.d/rc.uavcan b/ROMFS/px4fmu_common/init.d/rc.uavcan
new file mode 100644
index 000000000..abb76b400
--- /dev/null
+++ b/ROMFS/px4fmu_common/init.d/rc.uavcan
@@ -0,0 +1,16 @@
+#!nsh
+#
+# UAVCAN initialization script.
+#
+
+if param compare UAVCAN_ENABLE 1
+then
+ if uavcan start
+ then
+ sleep 1 # Sensor autodetection delay
+ echo "[init] UAVCAN started"
+ else
+ echo "[init] ERROR: Could not start UAVCAN"
+ tone_alarm $TUNE_OUT_ERROR
+ fi
+fi
diff --git a/ROMFS/px4fmu_common/init.d/rcS b/ROMFS/px4fmu_common/init.d/rcS
index c9e6a27ca..195771905 100644
--- a/ROMFS/px4fmu_common/init.d/rcS
+++ b/ROMFS/px4fmu_common/init.d/rcS
@@ -304,11 +304,10 @@ then
then
if [ $OUTPUT_MODE == uavcan_esc ]
then
- if uavcan start 1
+ if param compare UAVCAN_ENABLE 0
then
- echo "CAN UP"
- else
- echo "CAN ERR"
+ echo "[init] OVERRIDING UAVCAN_ENABLE = 1"
+ param set UAVCAN_ENABLE 1
fi
fi
@@ -448,6 +447,11 @@ then
mavlink start $MAVLINK_FLAGS
#
+ # UAVCAN
+ #
+ sh /etc/init.d/rc.uavcan
+
+ #
# Sensors, Logging, GPS
#
sh /etc/init.d/rc.sensors