Last week, scriptr.io attended the AT&T IoT Hackathon in the East Village in Manhattan, NYC. Held in an old Public City Bathhouse, 36 teams and hundreds of programmers converged to prototype Internet of Things concepts using hardware and services from sponsors IBM Watson, Twilio, Intel Edison, and more. We met the DroneSmith team while there and decided to work together and build some mashups! And so DroneMaster was born out of the whirlwind, a drone command and control system. Read on for more.

Overview

This project was an illustration of a drone control system that could be administered easily by the user via text to fly missions that collect sensor data which is then displayed via a heatmap. Practical use cases that we discussed were the measurement of cellular coverage or micro-climate data. Built by Ed Borden, Ethel Dubrovsky, and Greg Friesmuth!

See the video demo above for the system in action. The full code is also available, which can be redeployed to scriptr.io from within our UI with just a few clicks!

Part 1 – Sensor System via Intel Edison

An Intel Edison board provided the sensor platform. This reads the sensor(s) and pushes data to the DroneSmith API.

Part 2 – DroneSmith API

DroneSmith provided a virtual drone, accessible via their API, which gave us a proof of concept for the flight of the drone while using real hardware for sensor readings. The scriptr.io frontend continuously polled that system for near-real-time updates.

Part 3 – Twilio

The primary UI for the system is via texting to Twilio. This was set up to trigger a webhook to…

Part 4 – Backend orchestration services via Scriptr.io

All of the command and control logic is performed via javascript containers on Scriptr. These process the incoming addresses and commands, uses MapQuest services to geocode incoming addresses on-the-fly as well as build the mission paths, and check airspace availability using Airmap. A websocket backbone handles communication between modules.

Part 5 – Heatmap via Scriptr.io

Finally, data and current location of the drone can be viewed in the frontend. This is a static file served up via Scriptr.io which collects the current sensor data readings and adds them to the dataset behind the heatmap.

All in all, a fun project which is a great starting point for ANY command and control system or heatmap!