Browse Source

UAVCAN: Proper CDev initialization from sensor bridges

sbg
Pavel Kirienko 11 years ago
parent
commit
ce73be514e
  1. 7
      src/modules/uavcan/sensors/baro.cpp
  2. 7
      src/modules/uavcan/sensors/mag.cpp

7
src/modules/uavcan/sensors/baro.cpp

@ -53,7 +53,12 @@ _sub_air_data(node) @@ -53,7 +53,12 @@ _sub_air_data(node)
int UavcanBarometerBridge::init()
{
int res = _sub_air_data.start(AirDataCbBinder(this, &UavcanBarometerBridge::air_data_sub_cb));
int res = device::CDev::init();
if (res < 0) {
return res;
}
res = _sub_air_data.start(AirDataCbBinder(this, &UavcanBarometerBridge::air_data_sub_cb));
if (res < 0) {
log("failed to start uavcan sub: %d", res);
return res;

7
src/modules/uavcan/sensors/mag.cpp

@ -56,7 +56,12 @@ _sub_mag(node) @@ -56,7 +56,12 @@ _sub_mag(node)
int UavcanMagnetometerBridge::init()
{
int res = _sub_mag.start(MagCbBinder(this, &UavcanMagnetometerBridge::mag_sub_cb));
int res = device::CDev::init();
if (res < 0) {
return res;
}
res = _sub_mag.start(MagCbBinder(this, &UavcanMagnetometerBridge::mag_sub_cb));
if (res < 0) {
log("failed to start uavcan sub: %d", res);
return res;

Loading…
Cancel
Save