Escape From The Browser – Drone – Node.js – Hello World

Node.js, a drone and a momentary escape from the browser

almost outside

almost outside

IOT has been a buzz term within web development circles for the last 24 – 36 months. As web developers find new and innovative ways to make web and native applications, some innovation is progressively funneling from the main river of code advancement to real-world non-browser hardware. Could this movement towards hardware and IOT be a sign of something more profound ? It is a rebellion against a development industry that promotes ill health melded with a society that is almost reaching the point of screen addiction. Some brave souls may be finding ways to escape…Image result for tunnel to the sky

How To Drone With Node.js For Under $100.00 US Dollars:

Nasty little sh1t. Watch out when he's airborne

Nasty little sh1t. Watch out when he’s airborne

Shopping Items:

  • Bluetooth 4.0 capable USB adapter (You computer may have this already) $8.00 NZD
  • Parrot minidrone – $96.00 NZD on special, ordered online
  • Computer

The Software:

  • Node.js 6.0 +
  • Solid text editor
  • Fetherston npm-parrot-minidrone
  • Command line

Let’s fly:

2. Bluetooth 4.0 headaches on Windows 7

The most challenging part of this process was setting up the bluetooth usb dongle on a windows machine.  I  was using windows 7 which required me to use Zadig. I went to options, “list all devices” then selected the relevant usb bluetooth device and selected Replace Driver. I take no responsibility if this destroys your bluetooth hardware or usb environment // Do this at your own risk after researching correctly for your system and requirements

zadig

 

zadig-b

3. NPM-parrot-minidrone, node.js – All we need is the demo code

All props to fetherston and their creation. This node package allows us to code with js to control a drone. The repo has a hello-world ready to go. All code is based on Featherstone’s provided demo code an api:

 

feth

Fetherston drone library on Node Package Manager – So Cool!!!!

Time for the videos:

4. Take Off & Please Land

5. Integrate the keyboard

Flight with keyboard

Laughter at end of video due to the unseen crash landing

And there we have it. A fairly simple way to interface with a drone via node and js. The first thing I learned was that the stakes are much higher when coding/debugging in the physical world.  Exciting times, what other interesting ways (no blinking LED demos please) can we easily explore IOT node.js development?

Jared Neems is a software developer and Teacher from New Zealand who works for Veratech.