The Internet of Things – And programming for hardware – What does it even mean?



The Internet of Things – And programming for hardware – What does it even mean?

0 0


iot-ga

Quick presentation at General Assembly about the Internet of Things

On Github charliegerard / iot-ga

The Internet of Things

And programming for hardware

Created by Charlie Gerard / @charlie__gerard

About Me

Previously: Software Developer @ThoughtWorks

Currently: Unemployed

Mainly: Maker & Creative coder

What is the Internet of Things?

Giant network of connected 'things'.

What does it even mean?

Philips Hue

Remote controlled lightbulbs

Amazon Echo and Amazon Dot

Voice commands to control “smart” appliances in your house. Like “ok google” for your house.

SmartThings

Home appliances such as motion detector that can send you notifications if someone enters your house or turn on the lights when you’re home.

Vodafone's smart jacket

Smart jacket for cyclists indicating direction to drivers behind.

Tesla

Smart car with auto pilot, voice control phone system, real time energy consumption, 17'' touch screen, etc...

ShiftWear

Smart customizable shoes

Tech Tats

Wearable temporary tattoos tracking body temperature, etc..

It's cool but why should I care?

Ok but... how do i even do stuff like that?

Hardware

LittleBits

Smart home kit with 14 wireless modules including, mp3 player, temperature sensor, servos, etc...

Arduino

Starter kit with Arduino UNO, breadboard, buttons, LEDs, jumper wires, capacitors, etc...

Raspberry Pi

Credit-card sized computer that can browse the Internet, play games, make spreadsheets, etc...

Intel Edison Kit for Arduino

Intel Edison compute module with an expansion board to add Arduino Uno shields, etc...

Particle Photon

Small Wifi development kit for prototyping IoT projects.

Tessel

Wifi development board for prototyping IoT projects.

Arduino ESLOV IoT Kit

New Arduino IoT invention kit with plug-and-play modules

Software

  • Javascript
  • Ruby
  • Artoo
  • Go
  • Gobot

And if you're lazy...

If This Then That

What can I make?

Arduino Robotic car

"What should I wear?" machine

"Hot or not" machine

Remote controlled light

Magic Mirror

More advanced

VR + Robot

Motion control + Robot

Project Jacquard

New instruments

Augmented shopping cart

YES YOU CAN!

Live demo!

But first...

Myo

Hand-tracking sign language learning platform

"Harry Potter experience"

AR / VR prototype

Getting started

"Hello World" example

var five = require("johnny-five");
var board = new five.Board();

board.on("ready", function() {
    // Create an Led on pin 13
    var led = new five.Led(13);
    // Blink every half second
    led.blink(500);
});

Code sample for Myo + Sphero.

Server

var express = require('express'),
    path = require('path');

//create web server
var app = express();

//require the custom module
var lab = require('./my_modules/myo_sphero');
lab();

app.listen(3001);
console.log("Server running on port 3001");

Code sample for Myo + Sphero.

Commands

module.exports = function() {

  var spheron = require('spheron');
  var myo = require('myo');

  myo = Myo.create(0);

  var device = '/dev/tty.Sphero-RBR-AMP-SPP';

    var controlSphero = function(sphero) {
        myo.on('wave_out', function(){
          console.log('RIGHT');
          sphero.heading = 90;
          sphero.roll(70, 90, 1);
        })
    }

    var ball = spheron.sphero().resetTimeout(true);
        ball.open(device);

      ball.on('open', function() {
          console.log('connected to Sphero');
          ball.setRGB(spheron.toolbelt.COLORS.PURPLE).setBackLED(255);
          controlSphero(ball);
      });
}

Limits

Fail

alexa help me i'm hurt pic.twitter.com/r6iHh5j5VN

— Steve Hogarty (@misterbrilliant) November 4, 2016

Motion controlled marble maze (not mine)

Motion controlled marble maze (mine)

Security

Hardware

Can be expensive Battery life Hard to debug Not as performant as you'd like it to be

Resources and additional info

Events

Meetups

Conferences

Websites

Where to buy

More?

The Internet Of Shit

"Simone's Robots" Youtube Channel

"I like to make stuff" Youtube Channel

Repos

Thank you!

Twitter: @charlie__gerard

Github: charliegerard

Blog: charliegerard.github.io/blog

The Internet of Things And programming for hardware Created by Charlie Gerard / @charlie__gerard