RC Transmitter Won't Bind
-
Hello,
We're using a flight deck 2 + 4-in-1 ESC with a CRSF nano receiver and transmitter. With SDK 0.9.5 I can't get the transmitter signals to connect or register signals in QGroundControl (drone arms through QGC interface and responds to virtual joysticks) -- I've tried all the different options within voxl-px4.conf for RC. With SDK 1.0.0, the transmitter binds using RC = CRSF_RAW and all the signals are recognized in QGC (sliders move with joysticks), and I can arm the drone via the transmitter. However, once armed with motors idling the drone does not respond to any inputs on the transmitter OR the virtual joysticks on QGC.
Any help appreciated!
voxl-version output (1.0.0)
system-image: 1.6.2-M0054-14.1a-perf
kernel: #1 SMP PREEMPT Fri May 19 22:19:33 UTC 2023 4.19.125hw version: M0054
voxl-suite: 1.0.0
current IP: wlan0: 192.168.8.1
-
@camharrisvayu Can you provide a px4 log of the failed flight attempt? What happens after the drone is armed and the motors are spinning? Does it stay that way until it is disarmed?
-
@Eric-Katzfey Once the drone is armed, the motors stay spinning until I disarm it. I'm able to use the actuators tab to spin each motor faster/slower during setup using the sliders as well. Here's a link to the log file:
https://drive.google.com/file/d/1He0wvRId83cSY_Ibh0Wwn-rkNwKrNQd4/view?usp=sharing
Thanks for the help here, let me know what else I can provide
-
@camharrisvayu What drone do you have? Is this a custom drone? What do you have the parameters SYS_HAS_GPS, SYS_HAS_MAG, and EKF2_MAG_TYPE set to?
-
@Eric-Katzfey Yep custom drone with flightdeck2 + 4-in-1 ESC. SYS_HAS_GPS = 1, SYS_HAS_MAG = 1, EKF2_MAG_TYPE = Automatic.
-
@camharrisvayu What happens if you set SYS_HAS_GPS and SYS_HAS_MAG to 0 and set EKF2_MAG_TYPE to 5? Does that change anything?
-
@Eric-Katzfey Transmitter inputs still not adjusting motor speed -- but I did notice now that if i set the mode to stabilized and physically move the drone around, it sounds like it's trying to stabilize itself while armed.
-
@camharrisvayu Oh, interesting. Can you share a log of that behavior?
-
@Eric-Katzfey Interestingly (and unfortunately), I can't seem to recreate this behavior with anything I try. Any other ideas?
-
@camharrisvayu The log showed that the RC input and IMU input as coming in correctly. But EKF2 is not commanding the motors to do anything. So it could be a parameter setting issue. But I don't see anything obviously wrong. I can ask some colleagues to look at the log to see if they see anything wrong.
-
@Eric-Katzfey Great thanks! Do you know how I'd need to adjust settings in 0.9.5 to get the CRSF receiver/transmitter to communicate correctly? Since that version is responding to virtual joysticks, I'm wondering if I could get the transmitter bound if I could at least start flying that SDK version for now.
-
@camharrisvayu You can try setting the baudrate to 420000 in the file /etc/modalai/voxl-px4.config where it starts the CRSF RAW driver and currently specifies a 250000 baudrate.
-
@Eric-Katzfey That still didn't want to work -- I tried setting CRSF_RAW and CRSF_MAV, both with default baud and 420k baud in the config file + changing the transmitter settings. Is there something I'm missing to get px4 to reboot using the new config file? I just ran voxl-configure-vision-px4 and selected 'no' for reset config file to factory defaults.
-
@camharrisvayu Unfortunately, I think we only had support for raw CRSF using TBS Crossfire receivers using the 250000 baudrate. Standard ELRS receivers use 420k and our system image didn't support that back then. If you can get the receiver to use the 250000 baud rate then it may work.
-
Yeah, that sounds like the issue. If the Rx has an LED, you can see if it is bound to the Tx, but not sending data to the flight controller due to incorrect baud rate.
You can update the ELRS baud rate using the webUI: https://www.expresslrs.org/quick-start/webui/
If you turn off the Tx, then turn on the Rx placing it close to your computer, in about a minute or so, the LED should flash quickly and the Wifi will come up.
-
@RichieRich Thank you for all the input here -- unfortunately I don't have an ELRS receiver, but the crsf nano. Do you recommend buying the ELRS receiver due to the baud rate adjustability? It seems the crsf nano rx is set at 420k without a way to change it.
Thanks again!
-
@camharrisvayu Wait, scratch that. I got ahold of an ELRS rp3 receiver, and it's connected but the RSSI signal goes in and out, and causes sporadic values for all of the channels (sliders going crazy, going in and out of arming/mode/etc). Could this be due to more baud rate mismatch or have you seen this behavior before?
-
@camharrisvayu Ok, we should be able to close this issue -- I flashed 1.0.0 and uploaded params for the sentinel model and that made it so the RC inputs could control the drone -- not sure which parameter made the difference, but I may investigate and report back if I find out.