diff --git a/libraries/AP_HAL_PX4/CAN.cpp b/libraries/AP_HAL_PX4/CAN.cpp index 3a56c8e103..3407b57f75 100644 --- a/libraries/AP_HAL_PX4/CAN.cpp +++ b/libraries/AP_HAL_PX4/CAN.cpp @@ -820,7 +820,7 @@ int32_t PX4CAN::tx_pending() */ PX4CANManager::PX4CANManager() : - update_event_(*this), if0_(bxcan::Can[0], nullptr, 0, CAN_STM32_RX_QUEUE_SIZE), if1_( + AP_HAL::CANManager(this), update_event_(*this), if0_(bxcan::Can[0], nullptr, 0, CAN_STM32_RX_QUEUE_SIZE), if1_( bxcan::Can[1], nullptr, 1, CAN_STM32_RX_QUEUE_SIZE), initialized_(false), p_uavcan(nullptr) { uavcan::StaticAssert<(CAN_STM32_RX_QUEUE_SIZE <= PX4CAN::MaxRxQueueCapacity)>::check(); diff --git a/libraries/AP_HAL_PX4/CAN.h b/libraries/AP_HAL_PX4/CAN.h index 09922ab378..02609ad1cf 100644 --- a/libraries/AP_HAL_PX4/CAN.h +++ b/libraries/AP_HAL_PX4/CAN.h @@ -255,7 +255,7 @@ public: bool is_initialized() override; }; -class PX4CANManager: public AP_HAL::CANManager { +class PX4CANManager: public AP_HAL::CANManager, public uavcan::ICanDriver { BusEvent update_event_; PX4CAN if0_; PX4CAN if1_;