# Can't get QGroundControl to connect

Source: https://forum.modalai.com/topic/364/can-t-get-qgroundcontrol-to-connect
Category: General Questions (https://forum.modalai.com/category/2/general-questions)
Posted: 2021-07-29 06:37:18 UTC by PatrickC
Replies: 7 · Views: 993

## PatrickC · 2021-07-29 06:37:18 UTC

I have VOXL with tracking camera only. No flight core, as I'm not developing for a drone application. 

I see in wireshark UDP packets from PC going to VOXL and VOXL is seeing them also.

```
/ # cat /etc/modalai/voxl-vision-px4.conf
/**
 * VOXL Vision PX4 Configuration File
 *
 */
{
        "qgc_ip":       "NULL",
        "en_localhost_mavlink_udp":     true,
        "en_secondary_qgc":     false,
        "secondary_qgc_ip":     "192.168.1.214",
        "qgc_udp_port_number":  14550,
        "localhost_udp_port_number":    14551,
        "udp_mtu":      512,
        "en_vio":       true,
        "en_voa":       false,
        "en_send_vio_to_qgc":   false,
        "en_send_voa_to_qgc":   false,
        "en_set_clock_from_gps":        true,
        "en_force_onboard_mav1_mode":   true,
        "en_reset_px4_on_error":        true,
        "qvio_auto_reset_quality":      0.00050000002374872565,
        "en_adsb":      false,
        "adsb_uart_bus":        7,
        "adsb_uart_baudrate":   57600,
        "px4_uart_bus": 5,
        "px4_uart_baudrate":    921600,
        "offboard_mode":        "off",
        "follow_tag_id":        0,
        "en_tag_fixed_frame":   false,
        "fixed_frame_filter_len":       5,
        "en_transform_mavlink_pos_setpoints_from_fixed_frame":  false
}
```

```
voxl-vision-px4 --debug_udp_recv
Enabling UDP recv debugging
loading our own config file
=================================================================
Parameters as loaded from config file:
qgc_ip:                     NULL
en_localhost_mavlink_udp    1
en_secondary_qgc:           0
secondary_qgc_ip:           192.168.1.214
qgc_udp_port_number:        14550
localhost_udp_port_number:  14551
udp_mtu:                    512
en_vio:                     1
en_voa:                     0
en_send_vio_to_qgc:         0
en_send_voa_to_qgc:         0
en_set_clock_from_gps:      1
en_force_onboard_mav1_mode: 1
en_reset_px4_on_error:      1
qvio_auto_reset_quality:    0.000500
en_adsb:                    0
adsb_uart_bus:              7
adsb_uart_baudrate:         57600
px4_uart_bus:               5
px4_uart_baudrate:          921600
offboard_mode:              off
follow_tag_id:              0
en_tag_fixed_frame:         0
fixed_frame_filter_len:     5
en_transform_mavlink_pos_setpoints_from_fixed_frame:0
=================================================================
loading extrinsics config file
exising instance of voxl-vision-px4 found, attempting to stop it
starting geometry module
starting px4 monitor
starting uart mavlink
Successfully opened mavparser
starting udp mavlink
Adding manual QGC IP address to udp connection list: NULL
WARNING: invalid qgc_ip, this is fine if you don't want to use it
starting px4 shell
starting fixed pose input
starting vio manager
starting tag manager
Init complete, entering main loop
UDP recv msg ID:   0 sysid:255 from port: 14550 IP: 192.168.8.112
Added new UDP connection to 192.168.8.112
UDP recv msg ID:   0 sysid:255 from port: 14550 IP: 192.168.8.112
WARNING PX4 DISCONNECTED FROM UART
UDP recv msg ID:   0 sysid:255 from port: 14550 IP: 192.168.8.112
UDP recv msg ID:   0 sysid:255 from port: 14550 IP: 192.168.8.112
UDP recv msg ID:   0 sysid:255 from port: 14550 IP: 192.168.8.112
UDP recv msg ID:   0 sysid:255 from port: 14550 IP: 192.168.8.112
UDP recv msg ID:   0 sysid:255 from port: 14550 IP: 192.168.8.112
UDP recv msg ID:   0 sysid:255 from port: 14550 IP: 192.168.8.112
UDP recv msg ID:   0 sysid:255 from port: 14550 IP: 192.168.8.112
```

So packets are arriving, but nothing is being sent from VOXL?

My goal is to extract all telemetry thru UART, but want to use QGroundControl to view telemetry.

## Reply by PatrickC · 2021-07-29 16:19:19 UTC

Also, I'm not getting any readout using voxl-inspect-qvio

```
yocto:/etc/modalai$ voxl-inspect-qvio
waiting for server

```

## Reply by Guest · 2021-07-29 16:49:35 UTC

Is QVIO server running? can you paste the output of ```voxl-inspect-services```

## Reply by PatrickC · 2021-07-29 17:00:59 UTC

Not running, how does it get started?

```
 Service Name        |  Enabled  |   Running   |  CPU Usage
--------------------------------------------------------------
 docker-autorun      | Disabled  | Not Running | Not Running
 docker-daemon       | Disabled  | Not Running | Not Running
 modallink-relink    | Disabled  | Not Running | Not Running
 voxl-camera-server  |  Enabled  | Not Running | Not Running
 voxl-cpu-monitor    |  Enabled  |   Running   |   0.0%
 voxl-dfs-server     | Disabled  | Not Running | Not Running
 voxl-imu-server     |  Enabled  | Not Running | Not Running
 voxl-modem          | Disabled  | Not Running | Not Running
 voxl-qvio-server    | Disabled  | Not Running | Not Running
 voxl-streamer       | Disabled  | Not Running | Not Running
 voxl-tag-detector   | Disabled  | Not Running | Not Running
 voxl-tflite-server  | Disabled  | Not Running | Not Running
 voxl-time-sync      | Disabled  | Not Running | Not Running
 voxl-vision-px4     |  Enabled  | Not Running | Not Running

yocto:/etc/modalai$ enable voxl-qvio-server
-bash: enable: voxl-qvio-server: not a shell builtin
```

## Reply by PatrickC · 2021-07-29 17:05:16 UTC

Looks like I need to calibrate the tracking camera. Can I do this without ROS?

```
yocto:/etc/modalai$ voxl-qvio-server
loading qvio config file
Creating new config file: /etc/modalai/voxl-qvio-server.conf
=================================================================
imu_name:                         imu1
cam_name:                         tracking
odr_hz:                           30.000
use_camera_height_bootstrap:      1
camera_height_off_ground_m:        0.100
enable_init_while_moving:         1
cam_imu_timeshift_s:               0.002
cam_imu_timeshift_s_uncertainty:   0.001
T_cam_wrt_imu_uncertainty:         0.005  0.005  0.005
R_cam_to_imu_uncertainty:          0.040  0.040  0.040
accl_fsr_ms2:                     156.000
gyro_fsr_rad:                     34.000
accl_noise_std_dev:                0.316
gyro_noise_std_dev:                0.010
cam_noise_std_dev:                100.000
min_std_pixel_noise:               0.500
fail_high_pixel_noise_points:      1.665
limited_imu_bw_trigger:           35.000
gps_imu_time_alignment_s:          0.000
T_gps_wrt_imu:                    -0.115  0.450  0.100
enable_mapping:                   1
enable_gps_vel:                   0
=================================================================
setting scheduler
WARNING Failed to set priority, errno = 1
This seems to be a problem with ADB, the scheduler
should work properly when this is a background process
ERROR failed to set scheduler
loading extrinsics config file
#0:
    parent:                imu1
    child:                 tracking
    T_child_wrt_parent:    0.017   0.015   0.013
    RPY_parent_to_child:   0.0    45.0    90.0
    R_child_to_parent:     0.000  -0.707   0.707
                           1.000   0.000  -0.000
                          -0.000   0.707   0.707
tbc:   0.017  0.015  0.013
ombc:  0.614  0.614  1.482 (axis angle)
ombc:  0.000 45.000 90.000 (RPY deg)

WARNING: Failed to open tracking camera intrinsic file:
/data/modalai/opencv_tracking_intrinsics.yml
using default tracking camera intrinsics for now
follow instructions here to calibrate the tracking cam:
https://docs.modalai.com/calibrate-cameras/

using camera intrinsics:
focal lengths: 275.078000 274.931000
principle points: 319.625000 243.144000
distortion: 0.003908 -0.009574 0.010173 -0.003329
MachineVision is licensed as community user
LNX_8074 supported? 1
LNX_8096 supported? 1
LNX_IA64 supported? 1
WINDOWS supported? 0
AR ERROR: arFileOpen(): Failed to open file: /etc/modalai/vislam/Configuration.SF.xml
FASTCV: fcvAvailableHardware Linux
mempool cur block size 307200, new block size 307200
Please ignore the error about Configuration.SF.xml above. ^^^
It's an optional file, and should be a warning not an error
waiting for imu
waiting for cam
```

## Reply by PatrickC · 2021-07-29 17:26:27 UTC

@Alex-Gardner I turned on some of the services

```
 Service Name        |  Enabled  |   Running   |  CPU Usage
--------------------------------------------------------------
 docker-autorun      | Disabled  | Not Running | Not Running
 docker-daemon       | Disabled  | Not Running | Not Running
 modallink-relink    | Disabled  | Not Running | Not Running
 voxl-camera-server  |  Enabled  |   Running   |   4.1%
 voxl-cpu-monitor    |  Enabled  |   Running   |   0.0%
 voxl-dfs-server     | Disabled  | Not Running | Not Running
 voxl-imu-server     |  Enabled  | Not Running | Not Running
 voxl-modem          | Disabled  | Not Running | Not Running
 voxl-qvio-server    |  Enabled  |   Running   |  10.6%
 voxl-streamer       | Disabled  | Not Running | Not Running
 voxl-tag-detector   | Disabled  | Not Running | Not Running
 voxl-tflite-server  | Disabled  | Not Running | Not Running
 voxl-time-sync      | Disabled  | Not Running | Not Running
 voxl-vision-px4     |  Enabled  |   Running   |   1.8%
```

getting vio data, but lots of BAD_CAM_CAL

```
yocto:~$ voxl-inspect-qvio
waiting for server

    T_imu_wrt_vio (m)   |Roll Pitch Yaw (deg)| state| error_code
 -377.23 1276.78  231.84|  20.6   47.4  -97.2| OKAY | BAD_CAM_CAL
 -379.63 1270.80  230.19|  28.4   40.2  -73.3| OKAY | BAD_CAM_CAL
 -380.97 1266.02  229.11|  31.1   33.5  -57.5| OKAY | BAD_CAM_CAL
 -346.15 1295.79  243.18|  22.2    6.9    1.4| OKAY |
 -346.10 1295.99  243.34|  21.1    5.9    4.5| OKAY |
 -346.02 1296.26  243.58|  19.5    4.8    8.5| OKAY | BAD_CAM_CAL
 -345.99 1296.50  243.75|  18.2    3.9   11.6| OKAY |
 -345.98 1296.77  243.93|  16.9    3.1   14.7| OKAY | BAD_CAM_CAL
 -346.00 1297.45  244.38|  13.7    1.6   22.2| OKAY |
 -346.03 1297.77  244.58|  12.3    1.1   25.4| OKAY | BAD_CAM_CAL
```

## Reply by Guest · 2021-07-29 17:55:49 UTC

Calibrating the cameras currently requires ROS (though we're making progress on an on-board embedded tool that should be here in a few weeks).

## Reply by PatrickC · 2021-07-29 18:11:13 UTC (in reply to Guest)

@Alex-Gardner thank you. I'll head down that path with ROS.

Any readmes/docs/guidance on how I can extract the telemetry/pose data via UART(J10)? I have the hardware connected, but a bit lost on where to start. Would it be easier if I added the Flight Core to the VOXL to get the telemetry ports J4/J5?

Is Flight Core required to allow qGroundControl to connect to VOXL?

Thanks.
