From ce64951578055654ff3345f06951f4ca984b96fa Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Mon, 8 Feb 2021 20:50:13 -0500 Subject: [PATCH] parameter_update.msg: add basic status info --- .ci/Jenkinsfile-hardware | 3 ++- msg/parameter_update.msg | 9 +++++++++ src/lib/parameters/parameters.cpp | 13 ++++++++----- src/modules/logger/logged_topics.cpp | 1 + 4 files changed, 20 insertions(+), 6 deletions(-) diff --git a/.ci/Jenkinsfile-hardware b/.ci/Jenkinsfile-hardware index a2fa97f79f..adc2570937 100644 --- a/.ci/Jenkinsfile-hardware +++ b/.ci/Jenkinsfile-hardware @@ -1011,6 +1011,8 @@ void statusFTDI() { sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener estimator_status"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener estimator_status_flags"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener logger_status"' + sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener parameter_update"' + sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener px4io_status"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_accel"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_accel_fifo"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_baro"' @@ -1019,7 +1021,6 @@ void statusFTDI() { sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_gyro_fifo"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensor_mag"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener sensors_status_imu"' - sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener px4io_status"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener system_power"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener telemetry_status"' sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "listener vehicle_air_data"' diff --git a/msg/parameter_update.msg b/msg/parameter_update.msg index 3a9deca4d6..bfb4993749 100644 --- a/msg/parameter_update.msg +++ b/msg/parameter_update.msg @@ -3,3 +3,12 @@ uint64 timestamp # time since system start (microseconds) uint32 instance # Instance count - constantly incrementing + +uint32 get_count +uint32 set_count +uint32 find_count +uint32 export_count + +uint16 active +uint16 changed +uint16 custom_default diff --git a/src/lib/parameters/parameters.cpp b/src/lib/parameters/parameters.cpp index 582d24c4b2..e393bc54ea 100644 --- a/src/lib/parameters/parameters.cpp +++ b/src/lib/parameters/parameters.cpp @@ -256,13 +256,16 @@ void param_notify_changes() { parameter_update_s pup{}; - pup.timestamp = hrt_absolute_time(); pup.instance = param_instance++; + pup.get_count = perf_event_count(param_get_perf); + pup.set_count = perf_event_count(param_set_perf); + pup.find_count = perf_event_count(param_find_perf); + pup.export_count = perf_event_count(param_export_perf); + pup.active = params_active.count(); + pup.changed = params_changed.count(); + pup.custom_default = params_custom_default.count(); + pup.timestamp = hrt_absolute_time(); - /* - * If we don't have a handle to our topic, create one now; otherwise - * just publish. - */ if (param_topic == nullptr) { param_topic = orb_advertise(ORB_ID(parameter_update), &pup); diff --git a/src/modules/logger/logged_topics.cpp b/src/modules/logger/logged_topics.cpp index 38ccef0e75..a0a6fa4118 100644 --- a/src/modules/logger/logged_topics.cpp +++ b/src/modules/logger/logged_topics.cpp @@ -73,6 +73,7 @@ void LoggedTopics::add_default_topics() add_topic("navigator_mission_item"); add_topic("offboard_control_mode", 100); add_topic("onboard_computer_status", 10); + add_topic("parameter_update"); add_topic("position_controller_status", 500); add_topic("position_setpoint_triplet", 200); add_topic("px4io_status");