diff --git a/src/drivers/rpi_rc_in/rpi_rc_in.cpp b/src/drivers/rpi_rc_in/rpi_rc_in.cpp index c8f41632e1..d9f5581d7d 100644 --- a/src/drivers/rpi_rc_in/rpi_rc_in.cpp +++ b/src/drivers/rpi_rc_in/rpi_rc_in.cpp @@ -133,7 +133,13 @@ void RcInput::_measure(void) _data.rc_lost = false; _data.input_source = input_rc_s::RC_INPUT_SOURCE_PX4IO_PPM; - orb_publish(ORB_ID(input_rc), _rcinput_pub, &_data); + if (nullptr == _rcinput_pub) { + int instance; + _rcinput_pub = orb_advertise_multi(ORB_ID(input_rc), &_data, &instance, ORB_PRIO_DEFAULT); + + } else { + orb_publish(ORB_ID(input_rc), _rcinput_pub, &_data); + } } //---------------------------------------------------------------------------------------------------------// /**