Controller not recognized in QGC
-
Hello,
I'm having trouble getting my Spektrum DX6e controller connected to QGroundControl. I have connected it and calibrated it before, but now when I try to do this i get the message "Radio Not Ready Please turn on the transmitter." The Spektrum Bind button works and the radio is on and connected when I get this message. I have made sure to reboot the drone after binding the controller.
Not sure if this is the problem, but I was messing around with the px4 parameters and ended up resetting them, then uploading them from here: https://gitlab.com/voxl-public/voxl-sdk/utilities/voxl-px4-params/-/tree/master/params/v1.14/platforms
I tried to use both the M500_FCV1.params and the M500_FCV2.params, but neither of these fixed my controller problem. Which of these is correct?I'm working with a brand new M500, so everything should be up to date.
Thanks in advance for your help!
-
Just wanted to follow up because I still cannot get the controller to work.
In QGroundControl I selected "Reset all to firmwares defaults", uploaded the M500_FCV1.params, and re-calibrated the sensors. Should the drone be ready to fly at this point or do I need to upload some of the helper parameters?
-
@Evan-D The drone is flown for 15 minutes prior to flight. If it shipped with a Spektrum receiver, it would have flown with a Spektrum transmitter prior to shipment. you should not need to change any settings, just bind and fly
Can you look at the PX4 log and see if there is indication to why RC isn't coming through?
-
@Moderator Thanks for your reply. I'm very new to this so I appreciate your patience.
The log file just shows that no RC messages are getting through, even though I have binded the transmitter to the receiver and am moving the joysticks. But I haven't calibrated the controller so this may be expected.
Here's the log file from simply turning on the drone and controller and moving the joysticks: https://logs.px4.io/plot_app?log=8cc328d8-5b81-426e-b04c-72698a4ed8f4
What else can I try to troubleshoot? Is there anything in the log files that stands out? -
@Evan-D Can you post the results of
journalctl -b -u voxl-px4
? That command should show the startup log for px4. -
@Eric-Katzfey Thanks for your reply.
That command returns -- No entries --, i think because I'm on a VOXL flight (m500) so there isn't a voxl-px4 service. Is there a way to view the px4 startup log on voxl?Also, I ran voxl-configure-mpa to reset the services, but the status log for voxl-mavlink-server shows that the mavlink buffer is full, as shown below. I don't understand why this would be happening when all the services should be in the default state, but maybe this is causing my problem of QGroundControl not recognizing the controller?
jou
Output of
journalctl -b -u voxl-vision-hub
:-- Logs begin at Thu 1970-01-01 00:00:04 UTC, end at Thu 2024-03-21 14:17:14 UTC. -- Jan 01 00:00:08 apq8096 systemd[1]: Started voxl-vision-hub. Jan 01 00:00:08 apq8096 voxl-vision-hub[2366]: WARNING: voxl-mavlink-server does not appear to be running Jan 01 00:00:08 apq8096 voxl-vision-hub[2366]: make sure it is enabled: systemctl enable voxl-mavlink-server Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: loading our own config file Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: ================================================================= Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: Parameters as loaded from config file: Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: config_file_version: 1 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: MAVROS / MAVSDK Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: en_localhost_mavlink_udp 0 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: localhost_udp_port_number: 14551 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: VIO Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: en_vio: 1 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: vio_pipe: qvio Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: secondary_vio_pipe: ov Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: en_reset_vio_if_initialized_inverted: 1 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: vio_warmup_s: 3.000000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: send_odom_while_failed: 1 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: APQ8096-ONLY FEATURES Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: en_set_clock_from_gps: 1 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: en_force_onboard_mav1_mode: 1 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: en_reset_px4_on_error: 1 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: MISC FEATURES Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: horizon_cal_tolerance: 0.500000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: OFFBOARD MODE Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: offboard_mode: figure_eight Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: follow_tag_id: 0 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: figure_eight_move_home: 1 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: robot_radius: 0.300000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: collision_sampling_dt: 0.100000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: max_lookahead_distance: 1.000000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: FIXED FRAME RELOCALIZATION Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: en_tag_fixed_frame: 0 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: fixed_frame_filter_len: 5 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: en_transform_mavlink_pos_setpoints_from_fixed_frame:0 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: COLLISION PREVENTION (VOA) Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: en_voa: 1 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: voa_upper_bound_m: -0.150000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: voa_lower_bound_m: 0.150000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: voa_memory_s: 1.000000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: voa_max_pc_per_fusion: 100 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: voa_pie_min_dist_m: 0.250000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: voa_pie_max_dist_m: 20.000000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: voa_pie_under_trim_m: 1.000000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: voa_pie_threshold: 3 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: voa_pie_slices: 36 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: voa_pie_bin_depth_m: 0.150000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: voa_send_rate_hz: 20.000000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: voa_input #0 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: enabled: 1 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: type: point_cloud Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: input_pipe: dfs_point_cloud Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: frame: stereo_l Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: max_depth: 8.000000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: min_depth: 0.300000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: cell_size: 0.080000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: threshold: 4 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: x_fov_deg: 68.000000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: y_fov_deg: 56.000000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: conf_cutoff: 0 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: voa_input #1 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: enabled: 1 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: type: point_cloud Jan 01 00:00:07 apq8096 systemd[1]: Starting voxl-mavlink-server... Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: collision_sampling_dt: 0.100000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: conf_cutoff: 125 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: voa_input #4 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: enabled: 1 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: type: rangefinder Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: input_pipe: rangefinders Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: frame: body Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: max_depth: 8.000000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: min_depth: 0.300000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: cell_size: 0.080000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: threshold: 4 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: x_fov_deg: 68.000000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: y_fov_deg: 56.000000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: conf_cutoff: 0 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: ================================================================= Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: loading extrinsics config file Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: loading horizon cal file Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: starting geometry module Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: starting autopilot monitor Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: starting mavlink IO Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: Waiting to connect to voxl-mavlink-server Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: starting fixed pose input Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: starting vio manager Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: starting tag manager Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: starting voa manager Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: starting horizon cal module Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: starting offboard figure eight Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: Init complete Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: Connected to VIO pipe: qvio Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: Geometry module updating to use imu: imu0 for VIO Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: new T imu wrt body: Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: 0.0200 0.0140 -0.0080 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: new R imu to body: Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: 1.0000 -0.0000 0.0000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: 0.0000 1.0000 -0.0000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: 0.0000 0.0000 1.0000 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: done updating transforms to use imu: imu0 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: Connected to voxl-mavlink-server Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: Detected Autopilot Mavlink SYSID 1 Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: requesting autopilot_version Jan 01 00:00:11 apq8096 voxl-vision-hub[2366]: Detected autopilot version: 1.14.0 Mar 21 14:18:09 apq8096 voxl-vision-hub[2366]: WARNING: Autopilot Mavlink Disconnected Mar 21 14:18:11 apq8096 voxl-vision-hub[2366]: WARNING: Autopilot Mavlink Disconnected Mar 21 14:19:08 apq8096 voxl-vision-hub[2366]: WARNING: Autopilot Mavlink Disconnected
Thanks so much for any help.
-
@Evan-D Ah, sorry, I didn't realize this was an M500 (voxl + flight core).
-
@Evan-D But you are connected to QGC? You see other data there, just not the RC data? There are QGC screens that will allow you to interact with PX4 on the flihgt controller. The mavlink console allows you to enter commands to PX4. If this is working you can use the dmesg command to see all of the startup messages. Also, for RC, you will want to use
listener input_rc
to look at the RC data in the input_rc topic that is being published by the flight controller. -
@Eric-Katzfey Yes, I'm connected to QGC and I can see the camera feed and other data. The spektrum bind command works, so the receiver lights up with a solid led when I turn on the transmitter, but for some reason the data from the receiver isn't making it to QGC. Here's the output to those commands after I have connected the rc transmitter:
nsh> listener input_rc never published
nsh> dmesg HW arch: MODALAI_FC_V1 HW type: V1001000 HW version: 0x001 HW revision: 0x000 PX4 git-hash: b02a6b4ae93d12fa399673bf442c45087cee0759 PX4 version: 1.14.0 0 (17694720) Vendor version: 2.0.63 0 (33570560) OS: NuttX OS version: Release 11.0.0 (184549631) OS git-hash: 3f77354c0dc88793a47ff3b57595195ab45f7ba9 Build datetime: Dec 11 2023 20:04:02 Build uri: localhost Build variant: default Toolchain: GNU GCC, 9.3.1 20200408 (release) PX4GUID: 000200000000203334354d3350140031002c MCU: STM32F76xxx, rev. Z INFO [param] selected parameter default file /fs/mtd_params INFO [param] importing from '/fs/mtd_params' INFO [parameters] BSON document size 2043 bytes, decoded 2043 bytes (INT32:23, FLOAT:68) INFO [param] selected parameter backup file /fs/microsd/parameters_backup.bson Board architecture defaults: /etc/init.d/rc.board_arch_defaults Board defaults: /etc/init.d/rc.board_defaults Loading airframe: /etc/init.d/airframes/4001_quad_x INFO [dataman] data manager file '/fs/microsd/dataman' size is 62560 bytes Board sensors: /etc/init.d/rc.board_sensors ERROR [voxl_esc] Invalid parameter VOXL_ESC_FUNCX. Only supports motors 1-4. Please verify parameters. ERROR [voxl_esc] Invalid parameter VOXL_ESC_FUNCX. Only supports motors 1-4. Please verify parameters. ERROR [voxl_esc] Invalid parameter VOXL_ESC_FUNCX. Only supports motors 1-4. Please verify parameters. ERROR [voxl_esc] Invalid parameter VOXL_ESC_FUNCX. Only supports motors 1-4. Please verify parameters. ERROR [voxl_esc] Invalid parameter VOXL_ESC_MOTORX. Please verify parameters. ERROR [voxl_esc] Invalid parameter VOXL_ESC_MOTORX. Please verify parameters. ERROR [voxl_esc] Invalid parameter VOXL_ESC_MOTORX. Please verify parameters. ERROR [voxl_esc] Invalid parameter VOXL_ESC_MOTORX. Please verify parameters. ERROR [voxl_esc] Task start failed (-1) voxlpm #0 on I2C bus 3 (external) address 0x44 WARN [SPI_I2C] Already running on bus 3 WARN [SPI_I2C] voxlpm: no instance started (no device on bus?) icm20602 #0 on SPI bus 1 rotation 12 icm42688p #0 on SPI bus 2 rotation 12 ERROR [SPI_I2C] bmi088: no instance started (no device on bus?) ERROR [SPI_I2C] bmi088: no instance started (no device on bus?) bmp388 #0 on I2C bus 4 (external) address 0x76 qmc5883l #0 on I2C bus 1 (external) address 0xD ekf2 [812:237] Starting Main GPS on /dev/ttyS0 Starting MAVLink on /dev/ttyS6 INFO [mavlink] mode: Normal, data rate: 1200 B/s on /dev/ttyS6 @ 57600B Starting MAVLink on /dev/ttyS4 INFO [mavlink] mode: Onboard, data rate: 46080 B/s on /dev/ttyS4 @ 921600B INFO [logger] logger started (mode=all) INFO [uavcan] Node ID 1, bitrate 1000000 NuttShell (NSH) NuttX-11.0.0 nsh> INFO [gps] baudrate set to 9600 INFO [gps] Sending initial CFG_VALSET. Attempt: 1 INFO [gps] Got ack to initial CFG_VALSET! INFO [gps] u-blox firmware version: SPG 5.10 INFO [gps] u-blox protocol version: 34.10 INFO [gps] u-blox module: MAX-M10S WARN [health_and_arming_checks] Preflight Fail: Yaw estimate error WARN [health_and_arming_checks] Preflight Fail: Strong magnetic interference WARN [health_and_arming_checks] Preflight Fail: Strong magnetic interference WARN [health_and_arming_checks] Preflight Fail: Strong magnetic interference INFO [mavlink] Starting mavlink shell
-
@Evan-D If input_rc has never been published it means that the rc driver hasn't connected to the receiver. What is the setting of your RC_INPUT_PROTO parameter? It should be -1
-
RC_INPUT_PROTO is set to -1, and RC_PORT_CONFIG is set to 0, so i'm not sure why the rc driver isn't connecting to the receiver.
Would it be worthwhile to try to reinstall px4?
Thanks so much for your help.
-
@Evan-D Definitely worth a try. Something has obviously changed in a way to prevent the driver from working and a fresh install may clear that out.
-
@Eric-Katzfey Reinstalling px4 solved my problem, thanks for your help!