aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apps/examples/px4_mavlink_debug/Makefile42
-rw-r--r--apps/examples/px4_mavlink_debug/px4_mavlink_debug.c74
-rw-r--r--apps/px4io/dsm.c1
-rw-r--r--nuttx/configs/px4fmu/nsh/appconfig4
4 files changed, 121 insertions, 0 deletions
diff --git a/apps/examples/px4_mavlink_debug/Makefile b/apps/examples/px4_mavlink_debug/Makefile
new file mode 100644
index 000000000..f59aef16f
--- /dev/null
+++ b/apps/examples/px4_mavlink_debug/Makefile
@@ -0,0 +1,42 @@
+############################################################################
+#
+# Copyright (C) 2012 PX4 Development Team. All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+#
+# 1. Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in
+# the documentation and/or other materials provided with the
+# distribution.
+# 3. Neither the name PX4 nor the names of its contributors may be
+# used to endorse or promote products derived from this software
+# without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+# POSSIBILITY OF SUCH DAMAGE.
+#
+############################################################################
+
+#
+# Basic example application
+#
+
+APPNAME = px4_mavlink_debug
+PRIORITY = SCHED_PRIORITY_DEFAULT
+STACKSIZE = 2048
+
+include $(APPDIR)/mk/app.mk
diff --git a/apps/examples/px4_mavlink_debug/px4_mavlink_debug.c b/apps/examples/px4_mavlink_debug/px4_mavlink_debug.c
new file mode 100644
index 000000000..aa1eb5ed8
--- /dev/null
+++ b/apps/examples/px4_mavlink_debug/px4_mavlink_debug.c
@@ -0,0 +1,74 @@
+/****************************************************************************
+ *
+ * Copyright (C) 2012 PX4 Development Team. All rights reserved.
+ * Author: @author Example User <mail@example.com>
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in
+ * the documentation and/or other materials provided with the
+ * distribution.
+ * 3. Neither the name PX4 nor the names of its contributors may be
+ * used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ ****************************************************************************/
+
+/**
+ * @file px4_mavlink_debug.c
+ * Debug application example for PX4 autopilot
+ */
+
+#include <nuttx/config.h>
+#include <unistd.h>
+#include <stdio.h>
+#include <poll.h>
+
+#include <systemlib/err.h>
+
+#include <uORB/uORB.h>
+#include <uORB/topics/debug_key_value.h>
+
+__EXPORT int px4_mavlink_debug_main(int argc, char *argv[]);
+
+int px4_mavlink_debug_main(int argc, char *argv[])
+{
+ printf("Hello Debug!\n");
+
+ /* advertise debug value */
+ struct debug_key_value_s dbg = { .key = "velx", .value = 0.0f };
+ orb_advert_t pub_dbg = orb_advertise(ORB_ID(debug_key_value), &dbg);
+
+ int value_counter = 0;
+
+ while (value_counter < 100) {
+ /* send one value */
+ dbg.value = value_counter;
+ orb_publish(ORB_ID(debug_key_value), pub_dbg, &dbg);
+
+ warnx("sent one more value..");
+
+ value_counter++;
+ usleep(500000);
+ }
+
+ return 0;
+}
diff --git a/apps/px4io/dsm.c b/apps/px4io/dsm.c
index 1719cf58c..ea35e5513 100644
--- a/apps/px4io/dsm.c
+++ b/apps/px4io/dsm.c
@@ -231,6 +231,7 @@ dsm_guess_format(bool reset)
0x3f, /* 6 channels (DX6) */
0x7f, /* 7 channels (DX7) */
0xff, /* 8 channels (DX8) */
+ 0x1ff, /* 9 channels (DX9, etc.) */
0x3ff, /* 10 channels (DX10) */
0x3fff /* 18 channels (DX10) */
};
diff --git a/nuttx/configs/px4fmu/nsh/appconfig b/nuttx/configs/px4fmu/nsh/appconfig
index 517399a05..289a721a1 100644
--- a/nuttx/configs/px4fmu/nsh/appconfig
+++ b/nuttx/configs/px4fmu/nsh/appconfig
@@ -79,6 +79,10 @@ CONFIGURED_APPS += systemcmds/delay_test
# https://pixhawk.ethz.ch/px4/dev/deamon
# CONFIGURED_APPS += examples/px4_deamon_app
+# Tutorial code from
+# https://pixhawk.ethz.ch/px4/dev/debug_values
+CONFIGURED_APPS += examples/px4_mavlink_debug
+
# Shared object broker; required by many parts of the system.
CONFIGURED_APPS += uORB