This repository holds a customized version of the PX4 Flight Controller (v1.13.3). This is a work in progress and there may be changes.
A new message type was added to the firmware that has the following:
# ERL Quad States
uint64 timestamp # time since system start (microseconds)
float32[3] position # position in (FRD) body-frame
float32[4] orientation # orientation in quaternion [w, x, y, z]
float32[3] velocity # velocity in (FRD) body-frame
float32[3] angular_velocity # angular velocity in (FRD) body-frame
float32[4] controls # thrust, torque x, torque y, torque z
float32[4] controls_scaled # thrust, torque x, torque y, torque z (after battery scaling)
For more information, take a look at this Wiki page.
- Our custom px4 firmware can be found in
~/firmware/px4_fmu-v3_default.px4
- Follow this link to upload the new firmware
- Clone this repo
$ git clone git@github.com:ExistentialRobotics/erl_quadrotor_firmware.git
- Build the firmware
$ cd erl_quadrotor_firmware
$ make px4_fmu-v6c_default
-
Connect the Pixhawk 2 (Cube Black) (FMUv3) to your computer via USB
-
Upload the firmware
make px4_fmu-v6c_default upload
you will see the following
Erase : [====================] 100.0%
Program: [====================] 100.0%
Verify : [====================] 100.0%
Rebooting.
[100%] Built target upload