DIY Drones Firmware builds
These firmware builds are automatically generated by the DIY Drones autotest system.
License
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
For details see http://www.gnu.org/licenses/gpl.html
Safety
Operating a powered vehicle of any kind can be a lot of fun. However, nothing will ruin your day at the park more quickly than an accident or running afoul of the law. Since we want you to have a great experience, please make sure that you do all of the following:- Operate within all local laws and regulations. For example, in the United States, current regulations require you to operate most UAVs under 400 foot above ground level, within line of site, and away from obstructions and populated areas. Since these regulations vary from place to place, even within the same country, ensure that you understand what you need to do to stay compliant.
- Never operate the vehicle or software in a way that could be dangerous to you, other people, or property. Propellers, while rotating, could easily cut you; if a UAV fell on a person or object, it could cause a lot of pain and damage; a UAV caught in power lines could cause an outage for many people. As Ben Franklin said, "An ounce of prevention is worth a pound of cure."
- Always keep in mind that software and hardware failures happen. Although we design our products to minimize such issues, you should always operate with the understanding that a failure could occur at any point of time and without warning. As such, you should take the appropriate precautions to minimize danger in case of failure.
- Never use the software or hardware for manned vehicles. The software and hardware we provide is only for use in unmanned vehicles.
Firmwares
APM Plane - for fixed wing aircraftAPM Copter - for multicopters and traditional helicopters
APM Rover - for land vehicles and boats
PX4IO - for the PX4IO board
Tools - Build and development tools
Types of firmware available
To choose a firmware to download you need to choose:- The type of board that you have
- Whether you want the stable, beta or latest version of the firmware
- Whether you want a HIL (hardware in the loop) image
- stable - this is the version recommended for new users. It has had the most testing
- beta - this is the firmware to choose if you want to be part of beta testing of new versions prior to release as a stable version. Note that during some development times the beta release will be the same as the stable release
- latest - this is the latest version from our git source code repository. This version is only for developers. The code may have unknown bugs and extreme care should be taken by anyone using it
Load your firmware using APM Mission Planner
- You can load the stable version of the firmware by selecting the appropriate icon for your airframe from the Firmware Tab.
- You can load the beta version of the firmware by selecting the "BETA firmware" button in the bottom right corner of the screen and then the appropriate icon.
- You can load the latest version of the firmware by downloading a firmware image from one of the links and selecting the "Load custom firmware" button in the bottom right corner of the screen.
Loading firmware to a PX4IO board
If you have a PX4IO board attached to your PX4FMU then you will need to separately load the latest firmware to that board. To load the PX4IO firmware you need to download the px4io.bin file from the above link, then put it in the root directory of the microSD card you have in your PX4FMU board.You then need to hold the arming switch while applying power to your PX4FMU board. The PX4IO board detects that the arming switch is held when it powers on, and will enter bootloader mode, which is indicated by a rapidly flashing red light on your PX4IO board.
The APM firmware for your PX4FMU board will check in the root directory of your microSD card every time it boots, and if it finds a new px4io.bin file it will attempt to load it to your PX4IO board. A log of the firmware load attempt is placed in the APM directory of your microSD card to aid with debugging.
Load your firmware using QUpgrade
QUpgrade is a standalone firmware upgrade tool. It can be used to download and flash the appropriate firmware for your PX4 autopilot. Instructions and downloads for Windows, Mac Os, and Linux are available here:
Download QUpgradeLoading APM1 or APM2 firmware on Linux or MacOS
If you don't use Mission Planner on Linux then you can load firmware using the avrdude command. A typical command for uploading a file called ArduPlane.hex to an APM2 or APM1-2560 is:avrdude -patmega2560 -cstk500v2 -P /dev/ttyACM0 -b115200 -D -Uflash:w:ArduPlane.hex:iYou will need to replace the /dev/ttyACM0 path with the path to your APM device. You may wish to use the device paths in /dev/serial/by-id so the path doesn't change. If you have an APM1-1280 then the command would be:
avrdude -patmega1280 -cstk500v1 -P /dev/ttyUSB1 -b115200 -D -Uflash:w:ArduPlane.hex:i
Loading PX4FMU firmware on Linux or MacOS
To load a PX4FMU firmware on a Linux or MacOS machine you will need to use the px_uploader.py python script. You can run it like this:python px_uploader.py --port /dev/ttyACM0 px4fmu.px4After starting the script, press the reset button on your PX4FMU to make it enter bootloader mode.