LL40LS: Implement driver-specific filtering based on the datasheet and experiments

This commit is contained in:
Philipp Oettershagen
2018-07-16 21:59:04 +10:00
committed by Paul Riseborough
parent e1f2360560
commit 35bde5c9fc
17 changed files with 105 additions and 7 deletions
@@ -162,6 +162,8 @@ int DfBebopRangeFinderWrapper::_publish(struct bebop_range &data)
distance_data.covariance = 1.0f; // TODO set correct value
distance_data.signal_strength = -1;
if (_range_topic == nullptr) {
_range_topic = orb_advertise_multi(ORB_ID(distance_sensor), &distance_data,
&_orb_class_instance, ORB_PRIO_DEFAULT);
@@ -169,6 +169,8 @@ int DfISL29501Wrapper::_publish(struct range_sensor_data &data)
d.covariance = 0.0f;
d.signal_strength = -1;
if (_range_topic == nullptr) {
_range_topic = orb_advertise_multi(ORB_ID(distance_sensor), &d,
&_orb_class_instance, ORB_PRIO_DEFAULT);
@@ -175,6 +175,8 @@ int DfTROneWrapper::_publish(struct range_sensor_data &data)
d.covariance = 0.0f;
d.signal_strength = -1;
if (_range_topic == nullptr) {
_range_topic = orb_advertise_multi(ORB_ID(distance_sensor), &d,
&_orb_class_instance, ORB_PRIO_DEFAULT);