GithubHelp home page GithubHelp logo

bingobob / drone Goto Github PK

View Code? Open in Web Editor NEW
10.0 2.0 3.0 36.85 MB

Syma X5SC Drone modded with Raspberry Pi Zero W, Pi Camera and RGB LED

License: MIT License

Python 100.00%
drone drones raspberry-pi raspberry-pi-camera led solder electronics

drone's Introduction

Raspberry Pi Drone Project

Syma drone with Raspberry Zero W and RGB LED - syma drone modded with raspberry pi zero w, pi Camera v2.1 and monkmakes RGB LED (aka the squid). Who needs a DJI phantom X for £££ when you can have this, much more fun?

fly-pi

Summary

I know a little bit of programming, a little pi, a little electronics and I've put it all together in this project - soldering has been a great skill to learn. It's been a heck of a lot of fun and I'm still working on it. I'd love to hear more from anyone with tips or code comments. This has got to be one of the most enjoyable pi projects I've done and it's inspired me to write this and publish it here - my first github repo.

Bill of materials

Items Amazon Link Rough Cost
Syma drone - X5SC-1 http://amzn.to/2mC9hP7 £40
Pi Zero W http://amzn.to/2ngRIYi £10
Pi Camera v2.1 http://amzn.to/2mCuIPO £20
Monkmakes RGB LED http://amzn.to/2mCmebz £5

Tools

Items Amazon Link Rough Cost
Soldering iron http://amzn.to/2mC21CQ £20
Glue gun http://amzn.to/2ngUxbL £10
Multi-tool http://amzn.to/2ngYbT2 £20

How it works

I've added a Pi Zero, Pi Camera and RGB LED to the drone. Everything on the drone is powered from the original drone LIPO battery. To power the Pi Zero I soldered a positive and negative wire from the Pi GPIO header (5V header and ground) directly to the Drone controller board. Pi Camera is connected to the Pi Zero with a Pi Zero ribbon cable, I had to fold it over to get it to fit but seems to work fine. The RGB LED (monkmakes squid) is connected as per this excellent guide.

Currently the rough flight sequence is as follows.

  1. Drone is powered on (by connecting the drone's lipo battery cable)
  2. Pi boots, as it's fed off the drone's power
  3. Pi launches the drone.py python script
  4. drone.py reads config variables in top of file
  5. drone.py activates the LEDs to indicate status to pilot
  6. Take off
  7. After the green light, drone.py actvates video recording for specified time (default 2 mins)
  8. LEDs change to indicate video recording finished and photo sequence commencing
  9. Photo stage begins and camera takes a sequence of high resolution photos
  10. LED indicates python script nearly finished
  11. Pi shutdown command is issued (have disabled this currently)

The Pi is on my home wifi network so after the flight I connect to the pi and SCP the files and videos off it.

Enhancements

I've got many ideas for how to enhance this project but need to keep in mind weight at all times. I think I'm at the limit of the payload for this drone as it is. However I'd like to investigate the following.

  • GPS module or barometer, primarily for altitude data
  • Real time clock module
  • Different drone - X8C more powerful
  • Buttons/ switches to allow pi to be shutdown properly
  • Make the pi a wifi access point rather than a wifi client
  • Airborn wifi network ESSID scanner
  • Automate getting the photos/ videos off the pi
  • Light webserver and interface to access photos/ videos/ data

Yellow wire - there's a yellow wire running from the syma control board that was used with the original camera, you pressed a function on the remote control unit and it signalled to the camera to start / stop recording or take a photo. I wonder if it would be possible to connect this yellow wire to the Pi GPIO directly and have the remote unit send signals to the Pi, e.g. take a photo, or shutdown.

drone on the bench

bench1 bench3 bench4 bench5

drone in flight

flight_pic1_road flight_pic2_football_match flying flight_pic3_country cottage

drone's People

Contributors

bingobob avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

drone's Issues

Is it possible to preset or control flight during the video recording?

Read your post with great interest, will be very happy to make one myself! Please help to clarify a few questions:

  1. Wonder if possible to preset or control flight during the video recording in your python code or with the system’s controller?

  2. Is it possible to fly the drone outdoor ? ( since the drone depends on home WiFi)

  3. Can the drone be controlled with the remote controller?

Thanks a million

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.