I finally received my Raspberry Pi Zero,  just in time to get into the DIY challenge of building a smart drone with the Pi Zero and APM under 100$. I called this project: MINI-Zee

3689684951?profile=original

How this can be done?

Well first of all, thanks to Victor and the team at Erle Robotics for releasing the plans and software of their PXFmini.  This is a real inspiration for building my own board, because all the parts are available at a cheap price and are relatively easy to assemble and interconnect using through-hole breadboard, providing you are very experienced with this type of build.  Thanks to Mirko as well, for having introduced a real DIY autopilot project that allows us to experiment with a fully working and well supported BeagleBone  based  ArduPilot  Cape called the BBBMINI.


3689684972?profile=original

Bill of Material (US$ - Transport & taxes excl.):

Raspberry Pi Zero                                      5.

MPU 9250 (SPI 9 dof IMU)                         8.

MS 5611 (SPI Baro)                                   9.

PCA 9685 (16 channel PWM Servo Driver)  5. 

3.3 v. regulator                                          1.

BEC 3 amps                                             3.

Breadboard, Resistors, Connectors, Misc.   7.

                                               AutoPilot:  38.

HobbyKing Spec FPV250 V2 Quad Copter

ARF Combo Kit - Mini Sized FPV         60. 

                                                     Total:  98.

*This is Banggood price; I had an ADAFRUIT –PWM on hand, and I really recommend going with ADAFRUIT, because of all the effort  they put on making a great tutorial and drivers for this product. Note: Just like Erle , the USB WIFI, GPS and the Radio Control are excluded.

Building:


A) Hardest part: Get a  RASPBERRY PI ZERO (Where is my Zero site)
B) Hardware - See BOM
C) Board Schematics : Erle pxfmini
D) Board Software: Erle pxfmini

E) LOAD LATEST Raspbian-Jessie

Disable serial Login (Allow GPS on serial Port)
Enable , I2C, SPI , Serial
Disable Console = Auto Log on a shell


F) LOAD RT-PREEMPT
http://www.frank-durr.de/?p=203
Load Test Result: TEST: T: 0 ( 1136) P:80 I:500 C: 100000 Min: 16 Act: 31 Avg: 32 Max: 157


G) MAKE ArduCopter

Special MINI-ZEE release:
1) The MPU 9250 is mounted on the Z-Axis, so we need to change : 

CONFIG_HAL_BOARD_SUBTYPE == HAL_BOARD_SUBTYPE_LINUX_PXFMINI
, _default_rotation(ROTATION_YAW_270)  = to ROTATION_NONE

2) The PCA9585 has no external clock, and the ESC are connected to ports 1-2-3-4, so we need to change: 

static RCOutput_PCA9685 rcoutDriver(PCA9685_PRIMARY_ADDRESS, true, 3, RPI_GPIO_27);      -to-

static RCOutput_PCA9685 rcoutDriver(PCA9685_PRIMARY_ADDRESS, false, 0, RPI_GPIO_27);

H) Fly the MINI-ZEE == Add these to /etc/rc.local

#wait till network is up and DHCP assigned address

while ! ifconfig | grep 192.168.2. >> /home/pi/bootlog; do
echo “no network, waiting…” >> /home/pi/bootlog
sleep 5
done
echo “Starting ArduCopter” >> /home/pi/bootlog

sudo /home/pi/ardupilot/ArduCopter/ArduCopter.elf -A udp:192.168.gcu-address:14550  -B /dev/ttyAMA0 > /home/pi/startup_log &

exit 0

I) FIRST FLY LOG:

3689684898?profile=original

Thanks to the damping platform, the vibration level is within specs. Video is available for anyone interested..;-)

Conclusion:

This project took about 20 hours to complete. As you can see, I really enjoyed  doing some hardcore DIY to demonstrate that it is still possible to build your own flight controller from a Linux Based system.  I do not recommend to try this as a first project, but if you are interested, get a BBBMINI, this is the best introduction to DIY  and if you want to fly a Raspberry Pi Zero, it is much  easier to buy a PXFMINI.

E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones

Comments

  • Developer

    Very good DIY build! Im interested to try one as well :)

  • Please made your own sensor shield.

  • Lol Patrick! I was wondering where you disappeared to!! ;-)

    Now I know! Nice build too! (I'm not a UAV celeb but I'm sure it means something...;-)

    I've been missing our hangout chats and there's a lot for me to catch up on CC n co.

    BTW I have a few BOM for high performance fair price 250 quads if you want some pointers for your next build.

    I'm going to have to give your zero build a go too...once I get my hads on a pi0.

    Regards

  • Glad to see how our work inspires people making such cool DIY projects!

  • @Chris, Yes I wanted to compete with the same frame, but it is build out of lead !!  it is way too heavy for serious fly, so I am looking for a lightweight 250 carbon fiber frame.

    @Randy, Now you know why I was not working on the balloon_finder since the last weeks... ;-)

  • Moderator

    Fair enough, makes sense in that context.

    I took a look at your BOM last night with one eye on the digikey and RS catalogs and I think this could quickly become the go to stack, ignoring the air frame costs which are an entirely individual choice I reckon it'd be possible to get the autopilot costs down even lower by etching/milling your own board, especially if you're prepared to solder ESCs etc directly. Even at $40 (or €69 ready made from Erle) it makes the original APM hardware a costly alternative.

    I think I've got all of these bits in my various stashes of electronics so I might give it a go once the Pi Zero reappears in stock somewhere. Do you have the actual eagle files from Erle (or a link) as all I could find on their website was images of the schematic.

    Cheers

    Chris 

    Bill of Materials  

    Raspberry Pi Zero                                      5.

    MPU 9250 (SPI 9 dof IMU)                         8.    £7.37 RS

    MS 5611 (SPI Baro)                                   9.    £6.30 RS

    PCA 9685 (16 channel PWM Servo Driver)  5.    £1.52 RS

    3.3 v. regulator                                          1.    £0.69 RS

    BEC 3 amps                                             3. 

    Breadboard, Resistors, Connectors, Misc.   7.

                                                   AutoPilot:  38.

     

  • Developer

    Made your own sensor shield, cool!

  • Hello Chris,

    Yes , otherwise the ArduCopter start before the Zero gets its dhcp adress, so this is a little annoying when you are setting up the Quad. Putting this in rc.local makes it a simple on step operation that is easy to configure and modify without having to setup services.

    Regards

  • Moderator

    This is really really good, I hadn't even realised that Erle had open sourced their designs.

    One question though, why wait for the network to come up is this just to ensure GCS connection?

  • Thanks Andrew, 

    Coming from the Tridge, I am quite happy !!

    Here's the picture of shield cabling, most of it is underneath the shield, leaving a clean top.

    3702207957?profile=original

This reply was deleted.