Drone King of the Hill

The recent Hak5 episode 1903 inspired me to build a King of the Hill version for quadcopters. Shannon and Darren talked about their acrylic drone-fighting cage, the last-man-standing matches they had, and their future plans including a version of king of the hill.

Since then, I’ve been working on my own implementation of the king of the hill idea based on an old ADJD-S311 Color Light Sensor Evaluation Board from Sparkfun which I still had lying around. Combined with an Pololu A-Star 32U4 Micro for the brains, a single button for input, and an LPD8806 based RGB-LED-strip from Adafruit for output, this made a pretty nice tinkering project.

Micro Quadcopter Micro Quadrcopter on Platform

The micro quadcopters are split into 2 to 4 teams and are marked with differently coloured stickers at the bottom (red, green, blue, yellow).
The light sensor in the centre of the platform is initially passive and set to maximum sensitivity. In combination with ambient light, the A-Star Micro can detect whether the sensor is covered or not. As soon as it detects that the sensor is covered, it is set to active mode. It then evaluates reflected light using a white LED and a lower sensitivity setting. Based on the measured rgb-colour, ‘the brains’ decide which team the drone on the platform belongs to.
After a team covered the sensor for 3 seconds to win a point, the platform needs to be cleared for 5 seconds before another winning point can be gained.

Drone King of the Hill Game   Drone King of the Hill Game (animated)

The game play is set-up using the single button. First the number of teams is shown using the LEDs in the vertical stand. Clicking the button iterates between 2, 3, or 4 teams with different colours. After a long-click, the number of winning points are selected. Again by clicking the button 1, 3, 5, or 7 winning points can be selected. The game starts after another long-click with the progress being displayed on the vertical bar. As only a single LED strip is used, additive colour mixing occurs between the teams. The game continues until one of the teams achieves the necessary number of points, upon which the winning team’s colour flashes along the bar in ‘knight rider’ fashion.

Some friends from FIX, the local maker space, and I ordered a whole bunch of Eachine H8 Mini drones. Now we’re looking forward to some awesome team matches the space 🙂

The CAD models can be found at Onshape, a really interesting web-based CAD solution done by veterans of Solidworks. (log-in and search for ‘Drone King of the Hill’, couldn’t find a public link … still beta 😉 )
The source code can be found on GitHub and relies on the awesome cross-platform code builder and library manager PlatformIO.

DIY ESP8266EX Breadboard Adapter

Today I received the ESP8266EX Serial -> WiFi modules! After not being convinced by the rather expensive Adafruit TI CC3000 (35USD!) module I am now very curious about these tiny and cheap (<4USD) modules.

As their default header (2X4 male) is not exactly breadboard friendly, I sat down today and soldered a simple breadboard adapter. All you need is a tiny piece of stripboard 4×4, two male headers 1×4, two female headers 1×4 or one female header 2×4, and a bit of hot glue.

use the male headers to stbilise the female header place the strip-board on the female header solder the female header to the strip-board

  • Cut the stripboard to the correct size (4×4) and sandpaper any rough edges. Use a file to separate the copper strips across the middle.
  • Place the female header on a breadboard using the male headers to give it some stability and solder it to the stripboard. Watch out for the correct orientation!

re-aligned male header reverse inserted male headers solder the male headers

  • Re-align the plastic spacer of the male headers all the way to the top.
  • Place the stripboard with the male headers inserted from the non-copper side on some support (I used my vice for this).
  • Solder the male headers to the stripboard.

plastic spacer on the bottom side hot glue around the male header tips DIY breadboard adapter for the ESP8266

  • Now replace the plastic spacer of the male headers to the bottom side and push it as far up as possible (it probably will not go all the way because of the solder)
  • Add some hot glue around the tips of the male headers to provide additional support and strength.
  • Voilà!

The first tests using the Bus Pirate as UART bridge worked fine. I could talk to the module and connect to my home WiFi via WPA2.