Browse Source

Add CANNODE_GPS_RTCM

master
alexklimaj 3 years ago committed by Daniel Agar
parent
commit
d1304e1ceb
  1. 1
      boards/ark/can-rtk-gps/init/rc.board_defaults
  2. 6
      boards/freefly/can-rtk-gps/init/rc.board_defaults
  3. 15
      src/drivers/uavcannode/UavcanNode.cpp
  4. 9
      src/drivers/uavcannode/uavcannode_params.c

1
boards/ark/can-rtk-gps/init/rc.board_defaults

@ -4,6 +4,7 @@ @@ -4,6 +4,7 @@
#------------------------------------------------------------------------------
param set-default CBRK_IO_SAFETY 0
param set-default CANNODE_GPS_RTCM 1
safety_button start
tone_alarm start

6
boards/freefly/can-rtk-gps/init/rc.board_defaults

@ -0,0 +1,6 @@ @@ -0,0 +1,6 @@
#!/bin/sh
#
# board specific defaults
#------------------------------------------------------------------------------
param set-default CANNODE_GPS_RTCM 1

15
src/drivers/uavcannode/UavcanNode.cpp

@ -304,14 +304,25 @@ int UavcanNode::init(uavcan::NodeID node_id, UAVCAN_DRIVER::BusEvent &bus_events @@ -304,14 +304,25 @@ int UavcanNode::init(uavcan::NodeID node_id, UAVCAN_DRIVER::BusEvent &bus_events
_publisher_list.add(new MagneticFieldStrength2(this, _node));
_publisher_list.add(new RangeSensorMeasurement(this, _node));
_publisher_list.add(new RawAirData(this, _node));
_publisher_list.add(new MovingBaselineDataPub(this, _node));
int32_t enable_movingbaselinedata = 0;
param_get(param_find("CANNODE_GPS_RTCM"), &enable_movingbaselinedata);
if (enable_movingbaselinedata != 0) {
_publisher_list.add(new MovingBaselineDataPub(this, _node));
}
_publisher_list.add(new SafetyButton(this, _node));
_publisher_list.add(new StaticPressure(this, _node));
_publisher_list.add(new StaticTemperature(this, _node));
_subscriber_list.add(new BeepCommand(_node));
_subscriber_list.add(new LightsCommand(_node));
_subscriber_list.add(new MovingBaselineData(_node));
if (enable_movingbaselinedata != 0) {
_subscriber_list.add(new MovingBaselineData(_node));
}
for (auto &subscriber : _subscriber_list) {
subscriber->init();

9
src/drivers/uavcannode/uavcannode_params.c

@ -80,3 +80,12 @@ PARAM_DEFINE_INT32(CANNODE_TERM, 0); @@ -80,3 +80,12 @@ PARAM_DEFINE_INT32(CANNODE_TERM, 0);
* @group UAVCAN
*/
PARAM_DEFINE_INT32(CANNODE_FLOW_ROT, 0);
/**
* Enable RTCM pub/sub
*
* @boolean
* @max 1
* @group UAVCAN
*/
PARAM_DEFINE_INT32(CANNODE_GPS_RTCM, 0);

Loading…
Cancel
Save