Unable to switch from Spektrum to Graupner HoTT -- No radios found in QGC
-
which version of PX4 are you using on the Flight Core?
Can you please take a picture and share of your wiring setup?
Flight Core is pretty much stock PX4, have you looked at the PX4 documentation? https://docs.px4.io/main/en/getting_started/rc_transmitter_receiver.html
-
@Moderator Attached is an image from one of the drones where the Spektrum works but the Graupner does not. I don't have the version of the PX4 on the Flight Core with me right now, but I believe it is the stock version that came from modalAI with this FlightCore.
-
@tpavlic Why do you have the data line going to the RC connector J12 and power / ground going to the CAN connector J8?
-
@Eric-Katzfey If you have a better suggestion for where we should connect the 5V power on this Flight Core, please offer it up. The Graupner needs 5V, which is only available from the J8. J12 only provides 3.3V.
Also, it's important to note that the Graupner HoTT receiver is powering up and binding with our RC fine in this configuration.
-
@tpavlic here is the documented method for connecting Graupner
https://docs.modalai.com/flight-core-connections/#graupner-receiver-optional
-
@Chad-Sweet Again, if you look at the Flight Core that you equipped with this drone, it does not match the Flight Core in the instructions. Again, please instruct how to connect the Graupner to THIS flight core. We have also tried getting 5V and GND from the Fastboot/USB port on the board. The Graupner pairs fine with our RC, but still QGC says no channels. See images below for reference.
Please also note that the MCBL-00018 that you say to use cannot be used in the configuration that you've linked to. It's completely incompatible. In addition, the video you share showing how to connect the Graupner has the same Flight Core that you have in your documentation, but they say to connect the wires in a different way. So your image in the documentation is wrong.
Your video: https://youtu.be/fqQ1ET4Kn9w?si=9FQ0hlIStvCyY48n
Reminder of our original configuration, where you can see that we have a different Flight Core than in your documentation:
And here is an image of our alternate configuration, getting 5V and GND from the USB:
-
@Moderator @Eric-Katzfey @Chad-Sweet: After a long look over all of the QGC parameters, we found a parameter that is not mentioned in any of your documentation:
RC_INPUT_PROTO
On the drones that were shipped to us with the Spektrum, this was NOT set to SBUS. In order to switch to Graupner, you have to set this back to SBUS.
Please, please, update your documentation with this hint. You can find information about this parameter in the PX4 documentation here:
https://docs.px4.io/main/en/advanced_config/parameter_reference.html
That said, it is not an obvious parameter to seek out. Clearly someone at ModalAI knows how to set this parameter correctly because they arrive with it correctly matched to the radio that is selected. People on this forum have asked for this information before, but it has never been given. Please, please, update your documentation. This is such a simple thing, but it can be so hard to figure out on our own. Clearly, this was not a wiring issue.
-
@Moderator @Eric-Katzfey @Chad-Sweet: Although we have now regained connectivity between our Graupner RC, the PX4, and QGC, Mavlink appears to be non-functional (and consequently so does QGC-over-IP).
We have checked the MAV_0 and MAV_1 parameters in PX4, but this hasn't helped.
Can you please post the default QGC parameters for both Flight Core versions? Is this located somewhere already? Perhaps in a github repository? It feels like there are Spektrum-specific PX4 settings that need to be reset to start working with this Graupner again, but we do not know all of those settings (and searching through the PX4 full parameter reference hasn't been completely helpful).
Note that we have already done the VOXL unbricking procedure multiple times and this doesn't fix the issue. MAVLINK and QGC-over-IP do not seem to work even though our RC is finally talking to the PX4 again.
-
@Moderator @Eric-Katzfey @Chad-Sweet: We have confirmed that the subset of drones we have that were mailed to us mistakenly with Spektrum radios (which then was corrected when Graupner radios were sent separately) have no Mavlink connectivity. QGC-over-IP/WiFi is not working on them, and it is impossible to talk to them via MAVROS. This is even after we updated QGC settings for MAV_0, MAV_1, and MAV_2 to their default values (which matched their values on the other m500 drones we have that are working). We can get the Graupner to talk to these drones if we set the RC_INPUT_PROTO QGC setting, but regardless of whether Spektrum or Graupner are connected (and working), QGC-over-IP and MAVROS are unable to connect to the PX4.
These four drones are also the only drones ModalAI sent us with Flight Core v1, which has a different setup than the Flight Core v2 in most of the documentation.
We have re-flashed the VOXL on these drones several times (as many as 3 per drone) with no help. We have no trouble connecting to the VOXL via adb or WiFi. The problem is between the VOXL and the PX4. It is the exact same problem on all 4 drones, which suggests that it is something with the Flight Core v1's that were sent to us.
It would be great if you could let us know what the Flight Core v1 settings are supposed to be for both the Graupner and the Spektrum radios and whether there is anything we can check regarding the physical connection between the Flight Core v1 and the VOXL.
Thanks.
-
Just pinging about this post. I also wanted to make a correction -- the four drones we have that modalAI sent us with the Spektrum has Flight Core v2 (not FCv1, as I typed originally). Everything else applies though -- the documentation for the m500 everywhere uses FCv1, and so the pinouts don't match. Any m500 we have with FCv2 has non-functioning MAVLINK. We managed to get the Graupners connected, but we cannot get MAVLINK up and running even after updating MAV_0, MAV_1, and MAV_2 settings in QGC. So, we hope we're just missing some setting. These FCv2 drones don't work with either radio. As far as we know, MAVLINK has never worked on them.
Again, we have re-flashed the VOXL on these drones several times (as many as 3 per drone) with no help. We have no trouble connecting to the VOXL via adb or WiFi. The problem is between the VOXL and the PX4. It is the exact same problem on all 4 drones, which suggests that it is something with the Flight Core v2's (or their connection to the VOXL) that were sent to us.
Again, it would be great if you could let us know what the Flight Core v2 settings are supposed to be for both the Graupner and the Spektrum radios and whether there is anything we can check regarding the physical connection between the Flight Core v2 and the VOXL. For our archives, it would also be nice to have these for the FCv1, but the priority is the FCv2.
-
Can you please send a picture of your Flight Core v2 wiring? This will be different than the Flight Core v1 wiring, so we want to make sure it was done correctly.
Can you please double check that you followed the steps to configure the receiver to output sbus? In the setup video, the instructions start at 3:30 and show the sbus setting at 4:00
-
@Moderator Please see the thread above. There are SEVERAL pictures of our FCv2 wiring. This has been covered in this thread already.
The wiring seems to work (and we've tried alternative configurations that seem to work). The radio powers up and can pair with our RC (green light). Moreover, after we changed the PX4 setting to use SBUS, QGC confirms that commands from the RC are received at the radio. The problem is that the PX4 is not communicating with the voxl (and mavlink is unable to communicate with the px4). We have re-flashed the voxl multiple times.
This is the same problem on all of the drones we received from you that had an FCv2 with a Spektrum radio (even though we ordered Graupner -- you then sent us more Graupner radios to replace the Spektrum, but we gave up on these drones in order to make progress with our other drones when the Graupner wouldn't connect). All of our previous Graupner drones had FCv1 and worked fine.
We just ordered $20k more drones from you that are delivered today to our central receiving (waiting to receive them internally). They are supposed to have Graupner radios and we assume will be FCv2. We are eager to see if they work out of the box.
-
@tpavlic which version of software are you running on VOXL? Likely 0.9.5. Check the documentation for how to configure mavlink routing https://docs.modalai.com/voxl-vision-px4-telemetry-0_9/
All of this is checked before we ship, something must have gotten misconfigured through software installation.
What leads you to believe this is related to the transmitter/receiver? This seems like a configuration between voxl-vision-px4 and the flight core
-
@Moderator Some of the information from one of the problem units (not seeing obvious issues with UDP and routing between FCv2 and VOXL). Also not seeing obvious wiring problems:
Again, we can connect to QGC via USB but not over wifi. We are able to ssh into VOXL.
voxl-vision-px4.conf:
{
"config_file_version": 1,
"qgc_ip": "192.168.8.97",
"en_secondary_qgc": false,
"secondary_qgc_ip": "192.168.1.214",
"qgc_udp_port_number": 14550,
"udp_mtu": 512,
"en_localhost_mavlink_udp": true,
"localhost_udp_port_number": 14551,
"vio_pipe": "qvio",
"en_vio": true,
"en_send_vio_to_qgc": false,
"en_reset_vio_if_initialized_inverted": true,
"vio_warmup_s": 3,
"send_odom_while_failed": false,
"en_set_clock_from_gps": true,
"en_force_onboard_mav1_mode": true,
"en_reset_px4_on_error": true,
"horizon_cal_tolerance": 0.5,
"offboard_mode": "off",
"follow_tag_id": 0,
"figure_eight_move_home": true,
"robot_radius": 0.300000011920929,
"collision_sampling_dt": 0.1,
"max_lookahead_distance": 1,
"en_tag_fixed_frame": false,
"fixed_frame_filter_len": 5,
"en_transform_mavlink_pos_setpoints_from_fixed_frame": false,
"en_voa": true,
"en_send_voa_to_qgc": false,
"voa_upper_bound_m": -0.15000000596046448,
"voa_lower_bound_m": 0.15000000596046448,
"voa_memory_s": 1,
"voa_inputs": [{
"enabled": true,
"type": "point_cloud",
"input_pipe": "dfs_point_cloud",
"frame": "stereo_l"
}, {
"enabled": true,
"type": "point_cloud",
"input_pipe": "stereo_front_pc",
"frame": "stereo_front_l"
}, {
"enabled": true,
"type": "point_cloud",
"input_pipe": "stereo_rear_pc",
"frame": "stereo_rear_l"
}, {
"enabled": true,
"type": "tof",
"input_pipe": "tof",
"frame": "tof"
}, {
"enabled": true,
"type": "rangefinder",
"input_pipe": "rangefinders",
"frame": "body"
}]
}system-image: 4.0.0
kernel: #1 SMP PREEMPT Thu Oct 13 17:57:05 UTC 2022 3.18.71-perfhw version: VOXL
voxl-suite: 0.9.4
List:
apq8096-dfs-server 0.3.1
apq8096-imu-server 1.0.3
apq8096-libpng 1.6.38-1
apq8096-system-tweaks 0.1.3
apq8096-tflite 2.8.3-1
libapq8096-io 0.6.0
libmodal-cv 0.2.3
libmodal-exposure 0.0.7
libmodal-journal 0.2.1
libmodal-json 0.4.3
libmodal-pipe 2.6.0
libvoxl-cci-direct 0.1.5
libvoxl-cutils 0.1.1
voxl-camera-calibration 0.2.3
voxl-camera-server 1.3.5
voxl-cpu-monitor 0.3.0
voxl-docker-support 1.2.4
voxl-gphoto2-server 0.0.10
voxl-jpeg-turbo 2.1.3-4
voxl-libgphoto2 0.0.4
voxl-libuvc 1.0.7
voxl-logger 0.3.4
voxl-mavlink 0.1.0
voxl-mavlink-server 0.2.0
voxl-modem 0.16.1
voxl-mongoose 7.7.0-1
voxl-mpa-to-ros 0.3.6
voxl-mpa-tools 0.7.6
voxl-opencv 4.5.5-1
voxl-portal 0.4.2
voxl-qvio-server 0.8.2
voxl-streamer 0.4.1
voxl-suite 0.9.4
voxl-system-image 4.0-r0
voxl-tag-detector 0.0.4
voxl-tflite-server 0.3.1
voxl-utils 1.2.2
voxl-uvc-server 0.1.3
voxl-vision-px4 1.4.0
voxl-vpn 0.0.6FCv2 info from MAVLINK:
HW arch: MODALAI_FC_V2
HW type: V230
HW version: 0x00000003
HW revision: 0x00000000
FW git-hash: 890300a471ddac62c7c3f78b1fff863c419ff360
FW version: Release 1.13.2 (17629951)
OS: NuttX
OS version: Release 11.0.0 (184549631)
OS git-hash: 91bece51afbe7da9db12e3695cdbb4f4bba4bc83
Build datetime: Jan 9 2023 02:27:25
Build uri: localhost
Build variant: default
Toolchain: GNU GCC, 9.3.1 20200408 (release)
PX4GUID: 000600000000343630333436511000150008
MCU: STM32H7[4|5]xxx, rev. Y -
@Moderator Please see the thread above for history. When this thread was started, the 4 units that were mistakenly shipped with Spektrum modems were unable to be connected to the RC after switching to Graupner. We discovered that there was a setting (undocumented on ModalAI's site) in QGC that would allow us to switch to SBUS on the PX4, and that restored connectivity to the Graupner. Prior to that, we had connectivity with the Spektrum RC, but we had not tested out mavlink. We initially assumed that all of the problems we were having were related to the inability to switch to Graupner, and that's how the thread started this way.
But then during this thread, we discovered the QGC setting that allowed us to get the Graupner RC connected to the PX4. It was only after then that we discovered there were problems connecting the PX4 to the voxl (even after flashing and reflashing the voxl).
We only have this problem on the 4 units that were shipped to us with Spektrum radios (that were supposed to be Graupners). So, while we agree that it seems strange that this would be a radio issue, we know that there are radio-specific QGC settings (that we discovered in the thread even though they are not documented on ModalAI's Graupner documentation pages), and so we thought that the Spektrum configuration might vary from Graupner in some way that would explain the lack of mavlink.
-
@Moderator We did more troubleshooting this evening and found that if we manually run voxl-mavlink-server on the FCv2 drones, it tells us that it is unable to make a UART connection with the PX4.
Because we did not have much else we could try, we went into /etc/modalai/voxl-mavlink-server.conf and adjusted the UART bus from its default value (5, if I recall correctly) to different values from 1 through 8 (and also 12, randomly). None of these resolved the issue, although we received a different error message for 12, and we bricked our voxl when we set it to 8 (but we were able to flash again using fastboot after we unplugged the FCv2 connections).
So there seems to be some UART problem between the FCv2 and the VOXL on the seven (I miscounted) drones that were sent to us with FCv2 and Spektrum radios. We were able to convert them to Graupner radios (after finding a SBUS setting in the PX4), but the UART between the FCv2 and the VOXL seems to have always been faulty.
All of our FCv1 drones seem to be working fine. We just received 14 more drones today, and these all seem to have an integrated VOXL Flight that does not have a separate FC. These all seem to work. That said, all of the PX4 settings are different across these (and it seems like there may be as many as 3 different PX4 versions across the 14 drones that we received today, despite them all coming in the same batch).
It seems to us like there may be something fundamentally broken in the FCv2. If this is the case, anyone who is stuck with an FCv2 should be given an option to have it replaced with a working FCv1. Either that or please kindly tell us how to get the UART back up and running between the FCv2 and the VOXL Flight.
-
@tpavlic it's far more likely that there is a setting that was changed on FCv2 to prevent telemetry from being sent to VOXL. We use FCv2 daily in this configuration and it has been in production for more than one year.
-
@Moderator Hello - sorry if this isn't needed, but I put some settings/configs from one of the drones a couple messages up. If you could recommend other settings to look at to help get telemetry flowing between FCv2 and VOXL, it would be much appreciated. I'm happy to provide other settings/configs, just let me know what is helpful.
Thanks,
Jay