The UnbreakaBLE Micro Drone

Use any Bluetooth 4.0(BLE) device to control this agile little modular drone.

Similar projects worth following
This new project will attempt to fix the common problems with current drones by utilizing a fully modular design that allows the hexacopter to stay "unbreakable"

With the help of rare earth neodymium magnets the drone will detach the arms safely in the event of a crash.

This is a drone that is:

1. Totally open source. With a detailed Bill Of Materials, PCB design, CAD files, and even code freely accessible.
2. Capable of Bluetooth Low Energy(BLE) communication with a range of 15-30m.
3. Capable of charging a 1S Li-Po battery through USB with smart power management. Wireless charging for the battery will be a priority for the next version.
4. Fully reprogrammable through the micro USB port. Uses Atmel Studio, but you can upload a custom bootloader through the SPI interface on the board
5. Completely modular, meaning it takes seconds to assemble in the event of a crash and makes it much easier for transportation. Just take it apart and put it back together

One of the BIGGEST problems with modern commercial drones and DIY hobby drones is that they are extremely easy to break. Anyone who has flown one can admit they have broken many frames and motor arms. 

There are countless scenarios many pilots have gone through:

  • Crashing into a tree or building
  • Battery failure in midair leading to free fall
  • Flight controller failure keeping the drone from balancing
  • Failsafe mistakes

All of these scenarios lead to a broken frames or arms, and cost hobbyists hundreds of dollars to fix.

Another HUGE problem with commercial drones is the closed source nature of their components and communication protocols making customization IMPOSSIBLE.                                                          Similarly, hobbyist drones made from off the shelf parts don't quite offer the same customization either since communication is done with radios instead of a more versatile standard like bluetooth. 

What is the solution to these problems?

The UnbreakaBLE drone is! With a complete open source platform and easy reprogrammability, pilots can customize everything from the frame to the flight software onboard. In addition, the modular design allows users to break away the arms for easy transportation, and prevents irreparable damage from falls and crashes. Imagine the drone as an easy Lego creation, any damage can be fixed by simply attaching the parts back together. The modular design can be thought of as being similar to the Apple Macbook's magsafe connector. Just bringing the motor arm close to the frame will automatically pull the arm into place.

In summation, this project will help solve the problems with commercial and hobbyist drones by setting a standard for a more open, customizable, versatile, and durable drone platform. 


  • Bluetooth 4.0 with a 6dBm radio offering a range between 15-30 meters.
  • Incredibly small PCB with a side of length 15mm.
  • Motor outputs are capable of continuous current of 4.2A and peak of 6A, which is more than enough for every mini brushed motor on the market.
  • Internal Measurement Unit with 10 degrees of freedom: Accelerometer, Gyroscope, Magnetometer, and Barometer(altimeter).
  • 1S Li-Po Battery 500 mAh. Can be switched for a higher capacity battery.
  • Smart and safe battery charging over USB with notification LEDs.
  • USB 2.0 full speed capability

Ideas and Future Possibilities:

  • Possibility for Swarm Robotics given the low cost of the components.  
  • Inter-Communication between individual drones with Bluetooth Low Energy capabilities
  • Apps for various bluetooth devices including smartwatches, tablets, etc.
  • Further development of current android app.
  • Start development of app for iOS.


As the CAD image above shows, the modularity aspect of this frame comes from neodymium magnets placed in the circular holes at each arm joint. Connection to the board inside is done with spring loaded pogo pins that when connected sit flush into the frame.

Working Prototype:

As a precursor to this current project, about an year ago I built a working prototype. The prototype used an older processor, less accurate sensors, and used only 4 motors(quadcopter). It was a huge success, and was one of the smallest drones in the world at the time. The prototype was merely a test of the PCB and circuitry. It did not have the modular capabilities of the final version.

Now 1 year later, the final version is 1.5 times smaller than the prototype, has battery charging capabilities, includes USB for programming, utilizes more accurate sensors, and has an altitude sensor. 

Pictures and video of the prototype:

**NOTICE**: I know there is a lot of contention between using the words "drone" or "multicopter". I am opting to use the less accurate term "drone" since it is how most products are advertised these days and since the word is more recognizable to...

Read more »

Standard Tesselated Geometry - 4.80 MB - 07/19/2017 at 23:59


Standard Tesselated Geometry - 2.39 MB - 07/19/2017 at 23:59


Standard Tesselated Geometry - 1.02 MB - 07/19/2017 at 23:59


Standard Tesselated Geometry - 781.43 kB - 07/19/2017 at 23:59


sch - 781.02 kB - 07/19/2017 at 23:58


View all 6 files

  • 1 × LTC3200 Power Management ICs / Switching Regulators and Controllers
  • 1 × 0.01 uF Capacitor 0402
  • 1 × SPST Switch
  • 5 × 0.1 uF Capacitor 0402
  • 1 × 0.22 uF Capacitor 0603

View all 32 components

  • First Motor Test!

    Anshul Sanamvenkata07/24/2017 at 05:13 0 comments

    First motor test has been a success!

    I tested each of the six motor outputs and all of them are working. In the video, I have a simple PWM program running that increases the speed to 40% of the motor's fill thrust, and then decreases it to zero. You can hear the motor changing speed in the video. it never fully stops because there is a only a tiny delay between zero, and the speed increasing again.

  • Soldering components to the PCB and teaching YOU how to solder Part 2

    Anshul Sanamvenkata07/24/2017 at 04:13 0 comments

    The last log is downright easy compared to what we must accomplish now. 

    Soldering a large 44 pin QFN package might've seemed difficult, but soldering the QFN IMU sensor is a different league.

    I might be exaggerating the difficulty because I am new at this, but the MPU-9250 is tiny compared to the microcontroller. Luckily the pin spacing is the exact same as the ATmega at 0.5mm.

    For a good reference, the MPU-9250 is 1/8 the size of my fingernail.

    Yep that tiny black spot above my fingernail is the sensor.

    Things to look out for:

    Soldering the MPU-9250 needs special attention. Looking at the manufacturer's guidelines it says that the ground pad should not be soldered in projects that undergo a lot of strain. I would say a drone that is meant to crash into things and survive is a strainful situation! Keeping this in mind, DO NOT put solder on the ground pad(the exposed pad directly underneath the sensor package).

    In addition, the application guidelines from before states that "Package stress can be introduced from thermal sources during soldering or reflow processes. Uneven thermal expansion of packaging materials (e.g. sensor package) and cooling during the assembly process introduces this stress."

    This is very important! Uneven heating and cooling could cause inaccurate sensor readings, so make sure the package is being EVENLY heated during the hot air rework. 

    Once you're done using the hot air station, do NOT use a soldering iron to fix bridges between pins because it would introduce heat to a specific point on the package. Instead, apply a good dose of flux directly onto the package and reheat it using the hot air station. This should remove any bridges.

  • Soldering components to the PCB and teaching YOU how to solder

    Anshul Sanamvenkata07/24/2017 at 04:04 0 comments

    I am going to have an horrendous time soldering this PCB. I have soldered SMD passives before, and I find them generally pretty easy, but I have never soldered QFN before, and this is my first time. I will document my journey of soldering QFN components here. Make sure you have a fine tip soldering iron, and a hot air station. The one I ordered was extremely cheap, and was a Hakko knockoff from Amazon. Here's the link for people who are interested.

    First Attempt:

    My first attempt was a total failure. I tried to go the cheap route without solder paste and stencils, and used the video below to help me. 

    It looks so easy right? Wrong! I only soldered components essential for the microcontroller, and the microcontroller itself. My ISP programmer couldn't even recognize it because the pins weren't all soldered correctly. I desoldered the microcontroller and kept trying over and over, reballing the QFN pads every time. I finally got the ISP to recognize and program the microcontroller. Huzzah!

    My victory ended there however, because I soon discovered I could not reprogram through the USB, and the sample LED blink program wasn't working. I reasoned it was once again bad soldering because the schematics were perfect.

    Second Attempt:

    Realizing going the cheap route wouldn't work, I ordered myself some solder paste, and hunted for cheap stencil manufacturers.

    After some digging I found a website called oshstencils which despite similar naming is NOT related to OSHPark. The order process was incredibly easy, and the stencil itself was quite cheap. Only $5.63!, in fact the shipping cost more than the stencil itself with USPS Priority Mail costing $7. 

    After receiving the needed materials, I set to work using the below video as a guide.

    With the combination of a hot air station, a solder stencil, and a tube of solder paste, I got the microcontroller working on the first try! Everything worked perfectly including the USB and outputs.

    Once the hard part is done, soldering the passive components is pretty easy with a fine tip soldering iron, and the SOT 23-5 packages in the form of voltage regulators are very easy to solder as well.

  • Received PCBs

    Anshul Sanamvenkata07/24/2017 at 03:56 0 comments

    I actually received the PCBs quite a while ago, but didn't bother to update project log so I will now.

    Just received the glorious Oshpark gold and purple PCBs.

    This thing already looks like a nightmare to solder. I might go through how I did it in my next log.

View all 4 project logs

  • 1
    Configuring the Bluetooth Low Energy Module

    The bluetooth module used in this project is a HM-11. A stock module will have a default name of "HMSoft" and a default password of "000000". In addition, it will be configured with a 9600 baud rate, and only 0 dBm.

    These are all characteristics we need to modify. There aren't any good tutorials on the net showing how to do this, so I will attempt to do just that here.

    First of all, you need an arduino for this process. It offers a stable 3.3 volts to power the module, and has a ft232rl serial chip. 

    Once you've acquired the arduino, remove the ATmega chip in the middle. 

    Image result for arduino without atmegaNext, use the HM-11 pinout diagram below to solder wires to the following pads:
    • UART_TX - Pin 2
    • UART_RX - Pin 4
    • VCC - Pin 9
    • GND - Pin 12

    Then plugin the above wires as follows to the arduino:

    • HM-11 <-----------------------> Arduino
    • UART_TX(pin 2) <---------> RX(pin 0)
    • UART_RX(pin 4) <---------> TX(pin 1)
    • VCC(pin 9) <-----------------> 3.3V(power rail)
    • GND(pin 12) <----------------> GND(any suitable pin on the board)

    If you do not have an arduino or one that has a removable atmega chip, you can use a board like this to make the same connections as above.

    Finally it is time to make configurations. The HM-11 uses a command set called "AT". To properly program the chip, download RealTerm

    Image result for realterm

    and use the following settings:

        Under the "Port" tab

    •     Baud: 9600
    •     Parity: None
    •     Data Bits: 8
    •     Stop Bits: 1
    •     Hardware Flow Control: RTS/CTS
    •     Software Flow Control: Receive--Yes, Transmit--Yes

        Under the "Echo Port" tab

    •     Echo On: Yes
    •     Monitor: Yes

    Then, under the "Send" tab type in AT commands and hit "Send ASCII":

    -Send: AT
    -Response: OK

    If the above happens, you know everything is working.

    Do the following to change settings:

    1. To change name: AT+NAME[name you choose]
      1. response: OK+SET:[name you chose]
    2. To change baud rate from 9600 to 115200: AT+BAUD4
      1. response: OK+SET:4
    3. To change password: AT+PASS[para1], para1 range is 000000 ~ 999999, the default is 000000.
      1. response: OK+SET:[para1]
    4. To change power to dBm: AT+POWE3
      1. response: OK+SET3

    That should be it. All the meaningful settings are customized, but there are many more options including the ability to pair to another bluetooth module. This is something the user could change if they want to experiment with swarm robotics. Full instructions for the other AT commands are in the datasheet starting on page 18.

View all instructions

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates