Troubleshooting Guide

Spiri Mu is turned on but is not appearing in QGroundControl on my Spiri Host.

  1. Ensure that both Spiri Mu and Spiri Host are on the same Wi-Fi network. Start by making sure the Spiri Host is connected to a Wi-Fi network that you have used with Spiri Mu before. If there is no familiar Wi-Fi network here, then Spiri Mu might not be connecting to any. All Spiri Mus are programmed to connect to a network called "Spirinet" with password "spiri-friend" if no other network is available. You can create this network on your local router, or on a device such as a cell phone. Do so, then connect your Spiri Host to that "Spirinet" Wi-Fi network, and then reboot your Spiri. Wait about twenty seconds. Then, on the command line of your Spiri Host, type "sudo arp-scan -l" and look for a device named NVIDIA. That is Spiri Mu. Take note of its address.
  2. Make sure the ROS launch file for your Spiri Mu points to the address of your Spiri Host on this network. On the Spiri Host, type "ifconfig" and look for the LAN address for eth0. Take note of it. Now, open a terminal on Spiri Mu by typing "ssh -l <spiri_name>@<spiri_LAN_address>". Unless you have changed the user name on Spiri Mu, the default is "spiri". The address is the one you found by using arp-scan. The password for Spiri Mu, unless you have changed it, is "spiri-friend". Once you are logged into Spiri, type "sudo nano /opt/ros/melodic/share/mavros/spiri_mu.launch" to access the launch file. In the line defining the "gcs" (ground control station) enter your Spiri Host LAN address. Hit CTL-X to exit (say yes to save). On the command line, type "sudo reboot" – this will reboot Spiri Mu (and end your bash session). See if this time it comes up and connects to QGroundControl running on your Spiri Host.

Spiri Mu passes all pre-flight checks, but does not take off properly.

  1. Remove the propellers and then arm the motors. With a finger, gently touch the side of each spinning motor, without stopping the motor, and note the direction of spin. If you are looking down at the top of Spiri Mu then the front-right and rear-left motors (with the silver dots) should be spinning counter-clockwise, while the front-left and rear-right motors should be spinning clockwise. If this is not the case, then turn Spiri off and remove the battery and then the top shell. Look at the ESC signal lines connecting to the flight control board, and verify whether they are in the correct order. Re-order them if necessary. If they are in the correct order but all motors are spinning in the same direction, then follow the steps to flash the ESC and reverse the polarity of the two motors spinning the wrong way.
  2. In QGroundControl, verify that the correct firmware is loaded on the flight controller; this should be PX4 v1.9.2 (stable). Open a bash session from your Spiri Host on Spiri Mu. Run the parameter setting script by typing "./". Reboot Spiri and try again.

Spiri Mu is getting flight times under four minutes on a fully charged battery.

  1. If the ambient temperature is below the freezing point, the batteries will perform poorly.
  2. In high winds, carrying a heavy payload, or performing extreme maneuvers at high speed, Spiri Mu will use its battery much faster than normal.
  3. Battery life degrades over time and re-use. Try with new batteries.

Spiri Mu does not pass pre-flight checks, and either gets the message "Mag sensors inconsistent" or "EKF blah blah."

  1. Re-calibrate the sensors on Spiri Mu by following the guidelines for calibration. Perform the calibration in open air away from magnetic influences.
  2. If the magnetometer error persists, try altering the parameter "COM_ARM_MAG" by increasing it in small increments (0.01) at a time, to see if the error clears.
  3. Ensure that Spiri Mu is receiving local coordinates by viewing the ROS topic /global_position/home.
  4. If Spiri Mu is unusually hot, or is not publishing local coordinates, turn it off, wait five minutes, turn it back on, wait five minutes, and try again.