No rc_raw topic


I recently moved a Naze32 board to a new system, and I am no longer getting a rc_raw topic to show up when I do rostopic list. This is extra strange because I am still able to arm the vehicle and throttle up using the transmitter. I tried reflashing the rosflight firmware as well as rebuilding the rosflight_io package, but I still am not seeing the rc_raw topic show up at all.

Does anyone know how I might move further with debugging this?



  • 6 Comments sorted by Votes Date Added
  • I must have set the STRM_RC parameter to 0 at some point. Resetting the parameter to 50hz made the topic show back up.

  • Hi @mohrad. That is strange. I'm not sure off the top of my head what might be causing it, but I'll look into it. Just to be sure, can you verify that other topics are being published, like /imu/data or /status? Or that rosflight is receiving parameters? Just want to verify that you are getting some communication and it's only the /rc_raw topic that's having an issue.

  • Ah, sorry I hadn't refreshed the page before I responded so hadn't seen your last post. Glad you got it figured out.

  • Now I am having a new problem. The /rc_raw topic is reporting back values between approximately 0-1000 centered around 500 instead of 1000-2000 centered around 1500. Do you know what might be the cause of this?

  • So far,

    I have tried swapping receivers and ppm modules. The same receiver / ppm module combination reports back the correct values on a different Naze32 board (same model / rev). I have tried uploading the parameters used on the working system to the nonworking system, and it is still reporting values <1000 for all channels. I have also tried uploading stock firmware and using a fresh copy of the rosflight package.

  • Sorry for the slow response. I'm assuming you're on the master branch of the firmware? Since the last release we've entirely removed the 1000-2000 RC representation internally (that's all handled by the board layer), since it's kind of arbitrary and doesn't apply to SBUS or other protocols. We use floating point -1 to 1 or 0 to 1 (for throttle) in the firmware itself.

    It looks like we only kind of partially updated the rc_raw message to reflect that, and so right now it is outputting 0 to 1000. That's more of an oversight than a deliberate decision though. Do you need the values to be in the 1000-2000 range for your application? I'm guessing at some point we'll switch it over to a floating point 0 to 1 or -1 to 1 message, but if it'd be useful for now we could put it back to 1000-2000. Sorry for the confusion.

Sign In or Register to comment.