Embedded Linux Flight Computer with Flight controller

To complete my Bachelor of Engineering degree, I had to complete an Engineering project. The problem to solve was to acquire data from remote locations, using Bluetooth Low Energy beacons. The proposal was to attach an Embedded Linux processor to a UAV; a.k.a. ‘Drone’, which could be programed to fly autonomously to the remote locations, and retrieve the data.

The block diagram of the baseboard is shown below; this shows on a high level how the various components and devices will be connected.

Drone Block diagram r6

The processor module that will be connected to the baseboard is the iMX6 TinyRex; designed by Fedevel Academy, and available to purchase from Voipac. 

The overall layout of the final baseboard is shown below. The topside will have the iMX6 TinyRex processor module as well as the Pixhawk 2 and various connectors, such as HDMI input for a camera, UART, I2C, CAN and USB OTG. The bottom side will feature the Mini PCI-express slot, Micro SD and a Power Selection module.


To test the proof of concept, the TinyRex baseboard and Pixhawk were used. This enabled us to test and develop some software while the hardware was being developed.

iMX6-Tiny-Rex-Baseboard-Lite pixhawk-logo-view

The proof of concept aircraft was a 6 rotor UAV built with off the shelf hobby grade parts.


The iMX6 TinyRex development board and Pixhawk are mounted on the top.

IMG_7477 IMG_7475 IMG_7473

During the development stage, some parts needed to be fabricated. The battery and sensor tray, which bolts on the underside of the aircraft. Also a low profile heatsink with a 40 mm fan was designed to bolt on to the iMX6 processor.

battery-tray-folded heatsink-fan


And finally, the prototype in action;