Troubleshooting Q&A
Drones are not visible in Skybrush Live
First of all, check if Skybrush Server is up and running by checking the Server connection widget color (should be green). Move your mouse over it to get detailed info about the server connection.
RGB channels of my light module are mixed up
This can happen on ArduCopter-based drones where the light module is driven by servo outputs, one for each color channel. To setup your channels properly, setup the SERVOx_FUNCTION
ArduCopter parameters with values 107, 108 and 109 for the red, green and blue channels, respectively. An example:
SERVO9_FUNCTION,107 SERVO10_FUNCTION,108 SERVO11_FUNCTION,109
In the example above servo 9 is used to drive the red channel (107), servo 10 drives the green channel (108) and servo 11 drives the blue channel (109).
To test your settings, double click on your drone in the UAVs panel to open the Properties dialog and run the LED test in the TESTS tab that goes through colors in red → green → blue → yellow → cyan → magenta → white order.
RGB channels are mixed up on my NeoPixel LED strips
This can happen if you use WS2811 LEDs. ArduCopter supports WS2812B (i.e. NeoPixel) LEDs, and these LEDs expect the RGB channels to be sent in GRB order (i.e. green first, then red, then blue). If you conect a WS2811 LED to the flight controller, you will get light signals as the signal timings and levels seem to be the same, but the red and green channels will be mixed up. Use WS2812B LEDs if possible; if you are stuck on WS2811 for some reason, get in touch with us and we will see whether we can provide a workaround.
The same issue may also happen if you use RGBW LED strips. These strips expect four bytes per LED as their input, while ArduCopter will send only three bytes. This, in addition to the mixup of the green and red channels, will yield not only incorrect colors but a different color for every third LED. If this is the case, switch the LED type to NeoPixel RGBW with the following parameter setting:
SHOW_LED0_TYPE,10
To test your settings, double click on your drone in the UAVs panel to open the Properties dialog and run the LED test in the TESTS tab that goes through colors in red → green → blue → yellow → cyan → magenta → white order.
Drones cannot pass prearm checks
There can be hundreds of reasons why drones do not pass prearm checks. Use the PREFLIGHT tab in the Properties dialog to get detailed info about preflight errors.
In case of severe errors check or calibrate your indicated system component.
If you feel that your current error is not severe, in case of ArduCopter-based drones you can try to change the value of the ARMING_CHECK
parameter to skip certain preflight tests.
Drone status is "Invalid GPS timestamp"
Some (usually cheap or not original) GPS modules are not fully ArduCopter compatible and thus ArduCopter cannot configure them automatically at startup. In this case it can happen that the GPS seems to be working, but some important navigation messages are lacking. One of this cases is when there is 2D fix but not 3D fix as the GPS timestamp is missing either the time-of-week or the week number component. In such cases contact your HW manufacturer or consider changing to a more reliable HW source.
Geofence upload fails
On Arducopter based drones geofence upload will fail with MAVLink 1 protocol even when other parts of the communication seem flawless. Always use MAVLink 2 protocol an all MAVLink channels to avoid this and other possible unexpected communication problems.
To change MAVLink protocol on your wifi communication channel, use the SERIALx_PROTOCOL
ArduCopter parameter with the value of 2 instead of 1 (x should be replaced by the number of the channel that is associated with your wifi link).
Satellite view is old or resolution is bad
Skybrush Live uses only open source satellite tiles on the Base Map Layer, such as ones from OpenStreetMap, MapBox or Maptiler. If you wish to use other tile sources at your own legal responsibility, enable the Tile Server Layer from the Layers panel and add your convenient WMS, XYZ or TILECACHE tile URL.