Voko Labs

What your copter does when something goes wrong, from its own parameters.

  • Radio, battery, telemetry, GPS, fence, vibration, crash and motor loss: watched or not, and when
  • What it then does in each flight mode, with and without GPS, your FS_OPTIONS applied
  • What looks wrong, linked to the Setup & Tuning Guide's steps
  • ArduPilot 4.6 and 4.7, and milardu, from the code; checked in the simulator

Size a copter for your mission: drag a slider and every result moves.

  • Range, endurance, headwind and reserve for your mission
  • Battery, motor and propeller models, with every chart explained
  • An optimiser for the settings you let it change
  • Checked against your flight logs; saves its power curve to your copter for the mission check

First-flight parameters for your copter's size, and AM32 ESC settings to match.

  • From 3″ to 28″: filters, acceleration limits, thrust curve, battery, starting PIDs
  • AM32 over DShot: RPM from the ESCs for the harmonic notch
  • Betaflight motor order for quads on request
  • Every value explained; fills in from your copter, downloads, or builds into a firmware

Compare two ArduPilot parameter files, or move a 4.6 file to 4.7.

  • What changed and what each value means, by ArduPilot's own documentation
  • Two copters, before and after a tune, or a file against stock defaults
  • A 4.6 file as 4.7: every rename and unit change, with the rule from ArduPilot's source
  • The file that turns A into B, from the parameters you choose, for Mission Planner or a firmware build

Can this copter fly this mission today, with this wind and this payload?

  • Flies a .waypoints mission leg by leg as ArduCopter's AUTO does
  • Energy, time and battery left per leg, with the wind and the payload drop
  • GO / NO-GO against the reserve, and the strongest wind it takes from each side
  • Uses your copter's power curve from the Sizing Lab and its .param file

What any ArduPilot message means and what to do, the most likely cause first.

  • Type or paste a message, or what you remember of it: arming checks, failsafes, refused modes, log error codes
  • Drop a flight log (.bin, .tlog): every message explained, the most urgent first, on a timeline of the flight
  • Each cause with how to check it and the fix; your own parameter values beside the ones it talks about
  • All 2,335 messages of Copter and Plane 4.6 and 4.7 and milardu, from the code; 546 written explanations

Test each motor over USB, find the one that differs, and measure thrust.

  • RPM, current, vibration and battery from the ESCs and the flight controller, props off or on (with a checklist and a throttle cap)
  • The weak motor, bad bearing or unbalanced prop, in plain words; every chart explained
  • MOT_SPIN_ARM, MOT_SPIN_MIN, MOT_THST_EXPO and MOT_THST_HOVER from the measurements: .param or straight to the board
  • A scale's readings or a thrust stand's CSV; the thrust table for UAV Sizing Lab

What is built into an ArduPilot firmware file, read without a flight controller.

  • Version, git commit and board: processor, flash, callsign
  • The defaults it applies at boot, to download or build into a new firmware
  • Its Lua scripts, board definition and other built-in files, each explained
  • Saves the firmware's board, version and callsign to your copter; its hwdef.dat goes to the wiring planner

Which flight-controller port or output each device goes to.

  • Every 4.6 and 4.7 flight controller, the milardu boards, or your own hwdef.dat
  • Serial ports with DMA, flow control and defaults; outputs by timer group
  • A port for each device and outputs for the motors, with the checks
  • The parameter lines, a .param file and a wiring checklist

How far your ExpressLRS link reaches, and whether the terrain blocks it.

  • Link budget and range for every ExpressLRS packet rate and power
  • Terrain profile with line of sight, Fresnel zone and earth curvature
  • Checks a whole mission route and finds its worst point
  • Says what would help: rate, power, antenna height

Step by step, from a freshly flashed flight controller to a tuned, safe copter.

  • Simple mode: 17 short steps for a common ExpressLRS and AM32 build; advanced mode: 62 steps with the alternatives and the sources
  • Checks your parameters and flight logs, or reads them from the flight controller over USB and writes a step's values back
  • The whole setup in one file, to load in Mission Planner or build into a firmware
  • Works offline at the field, with a printable checklist; ArduPilot 4.6 or 4.7
  • Shares your copter with the other tools, and hands its parameters to Compare and the Failsafe Explainer

Can the compass be trusted on this route, by the magnetic anomaly map?

  • The magnetic anomaly map along a .waypoints mission, a route you draw, or one place
  • How many degrees the compass is turned from the north ArduPilot assumes
  • Against ArduPilot's own limits: the pre-arm check and the EKF's field range
  • Drift on the compass alone; the anomaly on a map with borders, rivers and cities

Ready-made ArduPilot Lua scripts, explained, for your SD card or firmware.

  • Every applet and driver of ArduPilot 4.6 and 4.7, explained, with the vehicle it is for
  • milardu's own scripts, marked as such, next to ArduPilot's
  • The parameters each adds, with defaults and ranges, and how to use it
  • Checks that your board can run scripts, and finds conflicts between scripts
  • A zip for the SD card, or build them into a firmware