Ground Control Station Software FAQ

Configuration Gadget

Hardware Settings

What baud rate should I set?

In general, fast enough to push and pull all telemetry updates reliably, plus some spare bandwidth for error correction and retransmits. Actually, used data rate is shown by the GCS, for example, via PFD gadget. Default is 57600bps.

Please note that currently the same baud rate is set for both sides of the link: for PC serial port and for MB serial port. This will be changed later because both rates are only port speeds, and with smart radio or USB converters they may be different.

Aircraft

My aircraft is not stabilizing nor responding to any Pitch, Roll or Yaw input

Make sure the Mix level is not set too low or even 0. If the mixing level is too low, your aircraft will not stabilize or react poorly on any pitch, roll or yaw input.

Please note that some firmware versions do not save the mixing level properly,
so you should double check that the mixing level values are not set on 0.
A mixing setting of 0 will disable the stabilization or reaction on the particular axis completely.

 

Input

 I cannot configure my inputs.

Make sure you have chosen the correct receiver type in the HW settings and your receiver is powered. A common issue is that you may think that your receiver is a PPM model but in fact it's a normal PWM model. This may not always be easy to note, especially the FrSky receiver modules are commonly misinterpret.
If you are unsure what your receiver type is  see here to find out.

 The inputs are red in the System Health gadget.

 If you have chosen the correct receiver type in the HW settings and your receiver is powered, there is likely the following configuration issue. All five control functions (Pitch, Roll, Yaw, Throttle, and Flight Mode) must be mapped to RC Inputs. Even if your airframe does not have a rudder and you don't need yaw control, you must map it to an unused channel, nevertheless. If some of those mappings are missing, you will receive the above mentioned error message.
 
This is currently by design in order to avoid undefined behavior.
 
If possible, it is recommended to assign the Flight Mode function to the channel with a 3-state switch. By default, it will activate one of Manual, Stabilized, Auto modes. In Manual mode you have full control over the model. In Stabilized mode, a model will try to keep attitude or rate proportional to user input (depending on stabilization settings). And in Auto mode, it will follow a programmed way point list using the autopilot feature of the OpenPilot system.

Note: In case of a multirotor, NEVER fly a multirotor in manual mode.

 The Configuration Wizard immediately skips to the Roll input & halts there.

If the Configuration Wizards skips the throttle input & doesn't seem to detect the roll input in a PPM stream configuration, a common fault is an incorrect set receiver type. Please verify if you have set receiver to PPM & not PWM in the HW Settings tab.

 The throttle curve doesn't seem to be correct or my motors are spinning only above 80% throttle.

If you face difficulties with the throttle calibration on Futaba radios, then reverse the throttle range on your radio & not in the GCS.

Expected behavior in the Controller Gadget.

Normal throttle calibration: With the throttle stick down, you see the red dot on the GCS controller gadget down. Moving the throttle a few percent up should move the red dot to the center (throttle = 0), the remaining throttle range on your radio should move the red dot towards the maximum.
The stick positions on the controller gadget are as follows:
 
 
 
Wrong throttle calibration: with the stick down you see the red dot on the GCS down. When you move the stick up, the red dot slowly moves from down to the center for the almost the full stick deflection, and finally jumps from the center to up. In this case you should reverse your throttle range on your radio.

 I Cannot arm my CopterControl board.

Here are the requirements for the board to arm:

  1. You must hold the arm position for 1 second. Then the LED on CC will start flashing at twice the speed & your board is armed.
  2. You must have all 5 input channels mapped (pitch, roll, yaw, throttle and FlightMode) in the Input Configuration, this is a prerequisite to detect your receiver and arm the system.
  3. You must have your sticks correctly mapped (i.e. the throttle stick on your RC transmitter must be mapped to the the right channel). Verify this in the Controller gadget.
  4. You must have configured an arming position in the Arming Settings tab & cycled power to your board.
  5. CC must detect your receiver (do you see the sticks move in the Controller gadget, including throttle)
  6. The SystemAlarms in the UAVObject browser must not have any red errors. Look at the system health gadget or in the UAVObject browser and see if it does. A red error will prevent the board from arming.
  7. You must have configured your board through the GCS (Ground Control Station) software & the matching firmware for the GCS.
 What is the difference between Automatic Disarming & Failsafe or Loss of signal

Arming or disarming and receiver signal loss detection are two different things. If CopterControl detects a signal loss, it shuts down the motors very quickly (after a couple of seconds). This has nothing to do with disarming, CopterControl will still be armed and if the signal comes back after some seconds, the motors will automatically start again. If the signal doesn't come back within the time specified in 'arming timeout', CopterControl will disarm and it needs the normal arming sequence to bring the motors up again. The same is true if the throttle is kept low for longer than 'arming timeout'.

Stabilization

The INS Attitude calibration panel appears to be missing

If the GCS is not able to recognize your board, the attitude panel is not shown. If you did not upgrade the bootloader, the Board Model in the flight firmware will be set to "255/255" and the GCS won't be able to tell what sort of board it's talking to. To verify that this is what's happening to you, go to the UAVObject browser and check the firmwareIAP object: if the board type & revision are both 255, you have an outdated Bootloader. Please follow the Wiki instructions to upgrade the bootloader.

GCS Gadgets

What is the UAVObject Browser for?

The UAVObject Browser gives you a real time view of the messages passed between the GCS and the UAV. The way OpenPilot works is by having a database of UAVObjects on both GCS and UAV side, with exchanges of updates to/from GCS and UAV. The UAVObject Browser shows you the state of this database on the GCS side.

In normal use, the UAVObject Browser is absolutely not necessary. When tuning and configuring your airframe, you should definitely use the 'Config Gadget' and not the UAVObject Browser. But if you are a developer, know what you are doing, or just want to tweak your settings beyond the standard options given in the config gadget, the UAVObjectBrowser is for you. Just remember it gives you access at the lowest level, and won't warn you if you create inconsistent situations and settings.

In short: if you don't know what it is for, you should probably stay away from it :)

A part of my CGS is not working or showing errors.

If for some unknown reason your GCS configuration is corrupted, you may experience an error message as below.

"There was a problem loading the PFD artwork, please check your configuration"
or
"error on PFD or missing PFD"

In order to clear all settings from the GCS and reset the default configuration, you should delete the files containing your settings.

The OpenPilot GCS's settings are contained in two files in a directory. These are: "OpenPilotGCS.db", "OpenPilotGCS.xml" and the directory "OpenPilot". The location of these are different depending on your platform:

On Mac and Linux they are stored in:
~/.config/OpenPilot

On Windows XP they are stored in:
C:\Documents and Settings\your-username\Application Data\OpenPilot\

On Windows Vista & 7 they are stored in:
C:\Users\your-username\AppData\Roaming\OpenPilot\

Note: The AppData folder is a hidden folder in your Windows operating system. To be able to see this folder and the folders below it, you need to change your folder options to allow the display of hidden files & folders.

 Show me how to display hidden files & folders >>>

Windows Vista & Windows 7:
Follow these steps to display hidden files and folders.

  1. Open Folder Options by clicking the Start button , clicking Control Panel, clicking Appearance and Personalization, and then clicking Folder Options.
  2. Click the View tab.
  3. Under Advanced settings, click Show hidden files and folders, and then click OK.

Windows XP:

  1. Open Folder Options by clicking the Start button , clicking Settings and then Control Panel.
  2. Choose Folder Options.
  3. Click the View tab.
  4. Under Advanced settings, click Show hidden files and folders, and then click OK.

Deleting the above mentioned files will reset your GCS configuration, and has nothing to do with the settings on your OpenPilot board. Once the files are deleted and the GCS is restarted, you will be prompted that "no configuration file is found" and the default settings are loaded.

The Roll direction in the PFD (Primary Flight Display) doesn't seem to be correct.

The horizon moves like you would see it in the aircraft. If you roll to the right, the display should roll to the left. Thus, if you roll right, then the horizon (with respect to you) rolls left.

 

The "servo output" is colored red on the health gadget

A red Servo Output means that your outputs are not correctly configured. This can happen after a firmware upgrade. A previously saved uav.settings import should restore your outputs configuration.

The memory turns yellow on my System Health plugin

Yellow is not a problem, especially CopterControl is pretty "low" on memory thus it can easily happen that you have a yellow warning active. It should not turn into red however, if your memory turns red then the board is prevented from arming

The throttle indicator doesn't follow the transmitter throttle.

The throttle indicator will jump from the bottom to the position shown in the below image with only a very little stick movement (±3%), and the remaining throttle range on your transmitter moves the dot all the way up to 100% throttle on the controller gadget. This is by design and is the correct behavior. The throttle stick must be in the bottom range to arm your aircraft.

Pro/INS Flight Software Setup Tips & Tricks

The following applies only to the Pro/INS platform and is not relevant for CopterControl

 Pro/INS platform faq's....

Which stabilization algorithm is currently recommended?

This needs to be revised. It is not applicable for the CopterControl.

INSGPS_INDOOR is perfect for indoor situations and also outdoor, as long as GPS navigation is not required. INSGPS_INDOOR_NOMAG is a variant of INSGPS_INDOOR which does not use magnetometers for attitude estimation and accelerometer biases correction. INSGPS_OUTDOOR is the full-blown algo, more sensitive in all aspects, and including GPS input. SIMPLE is a test algo using accelerometers only and will crash your UAV as soon as the motors start spinning.

If you want to know all details - please refer to INS User Guide section.

Looking just for hints? Currently the recommended one is INSGPS_INDOOR. It is the most stable and predictable. But see some caveats and hints below:

SIMPLE

Use it on the ground only. NO FLIGHT. One possible use is to check control surfaces movement in stabilization mode by tilting the UAV.

INSGPS_INDOOR_NOMAG

Not recommended for general use. This algorithm does not use magnetometers to correct accelerometer biases and assumes that the UAV is not moving. When the UAV moves, INSGPS_INDOOR_NOMAG will retune its biases, thus level flight is no longer level, and this behavior is unpredictable. One possible solution is to remove self-tuning, but this will require manual accelerometer calibration before flight as it is currently done with MK. There is a developer's INSGPS version which does not include self-tuning.

INSGPS_INDOOR

Currently recommended. While using it, make sure that your HomeLocaltion or at least HomeLocation.Be values are set correctly and saved to SD card with HomeLocation.Set value set to TRUE. The simplest way to do so is to obtain GPS lock and then use GCS 'Config Gadget' to set Home Location and save it to SD. Otherwise you will have some kind of "time bomb" in your UAV and may crash it!

The problem with it is due to the fact that INSGPS_INDOOR uses magnetometers to constantly correct sensor biases. To do so it must know current magnetic flux computed using the World Magnetic Model. It needs to know GPS HomeLocation to compute flux automatically or have HomeLocation.Be values set for current location (see INS User Guide how to do that without GPS). If you do not have those values set, and GPS does not have a lock, INSGPS_INDOOR algorithm does not use magnetometers. But as soon as GPS gets a lock (possibly in flight), magnetic flux will be computed and saved to RAM, and the algorithm will begin to correct sensor biases. As a result, the UAV may crash or have unexpected behavior.

It is strictly recommended to do one of the following (in order of preference):

  • get GPS lock and save HomeLocation to SD (use 'Set' option for Home Location in 'Config Gadget', 'AHRS' tab). This also computes and saves HomeLocation.Be values); or
  • calculate HomeLocation.Be values as described in INS User Guide and save them to SD with HomeLocation.Set=TRUE; or
  • get good GPS lock at the field before launch to have updated values stored in RAM (if you have HomeLocation.Set=FALSE).

This behavior will be changed later but for current developer's release, be aware of such problem.

INSGPS_OUTDOOR

Not recommended for general use. This algorithm also uses the true velocity and position from the GPS, but requires a good GPS lock to work (>= 7 satellites and PDOP < 3.5) as well as the magnetometers. If you are below that threshold, you will likely get a poor estimate of attitude because there is no velocity correction. If you are initially above it, but drop below the model may act poorly. Until it is fixed, use this algorithm at your own risk, making sure that you always have good GPS lock.

How is HomeLocation set?

This is user-defined. If you save to SD with Home Location state 'Clear' (which means HomeLocation.Set value is set to FALSE), then it will grab a new home location each time the GPS gets a lock. Computed values are stored to RAM only in that case.

If you save to SD with HomeLocation state 'Set' (HomeLocation.Set=TRUE), it will not reset values and will use the previously stored ones.

In the future OpenPilot will separate out the HomeLocation (i.e. where it should return in emergency) from the ReferenceLocation, which is where it computes NED relative to.