SlideShare a Scribd company logo
1 of 40
Download to read offline
HOW TO ELECTROCUTE
YOURSELF USING
THE INTERNET
ALEX ROCHE
@ALEXHACKED
Tom Scott being Electrocuted as part of a PayPal charity hack.
(http://www.youtube.com/embed/j_74elSiI7E)
Matt, of SI Digital, being shocked.
WHAT I'M GOING TO BE TALKING ABOUT
Internet of Things
Arduino
Johnny Five
BreakoutJS
Today computers—and, therefore, the Internet—are almost wholly
dependent on human beings for information ... The problem is, people
have limited time, attention and accuracy—all of which means they
are not very good at capturing data about things in the real world ...
We're physical, and so is our environment ... Ideas and information
are important, but things matter much more.
Yet today's information technology is so dependent on data
originated by people that our computers know more about ideas than
things. If we had computers that knew everything there was to know
about things—using data they gathered without any help from us—we
would be able to track and count everything.
- Kevin Ashton
XIVELY
Cloud Based Service
Users send JSON, XML or CSV to a RESTful API
Amalgamates data from around the world and stores it
Data is also accessible through AJAX requests
WHAT CAN YOU USE THE INTERNET OF
THINGS FOR?
MONITORING AN ENVIRONMENT

Moderating the temperature in your house
Making sure you're not being broken in to

REACTING TO DATA FROM AN ENVIRONMENT
Printing out the news every morning
Flashing a light when someone enters a room ...
... on the other side of the world
BERG'S LITTLE PRINTER
PHILIPS HUE LIGHTS
MAKE THE COSM
Pulls from Xively based on a user defined search term
Data is updated in real time
User can use the data provided to trigger sounds
STRAVA

Gathers data about your surrounding area
Transfers this data to a server which aggregates
Server reacts to the data you post
ARDUINO
WHAT IS AN ARDUINO?
Open Source
Microcontroller board with addressable GPIO pins
Various form factors depending on need
Communicates with electronics using GPIO pins
GUH-PEE-OH WHAT?
General Purpose Input and Output
Can be used to receive and transmit current to electronic
components
Can also be used to pass messages to serial input
Are how the Microcontroller talks to the outside world
PINS ON THE ARDUINO
Normal pins which can be set high or low
Analogue and PWM Pins
Analogue pins which can read values between 0 and 1023
PWM Pins can be set to values between 0 and 255
WARNING

WINDOWS USERS
You will have to bypass windows security to install drivers for the
Arduino.
Drivers are unsigned by Arduino
As such, you will need to disable Driver Signature Checking
S.H.I.E.L.D.S.
Not a comic law enforcement agency (in this case)
Add on to an Arduino which extends functionality
Can be stacked, but some care does need to be taken
S.H.I.E.L.D. REQUIREMENTS
Plugs to the non-GPIO pins need to reach all shields.
Each shield will have outputs which need to be left unconnected
to.
Outputs to the Arduino need to be unique.
PROGRAMMING AN ARDUINO
Breaks down in to two main types
Code that is compiled to C / C++ and uploaded to the
microcontroller
Code that communicates with the board and issues commands
BREAKOUT JS; WHAT?
Javascript based framework
Can be ran in a web page
Needs Arduino to be connected to a computer
Needs a server to run on your computer
Resulting web page can be connected to from any device on the
local network
BREAKOUT JS; HOW?
Install the Firmata firmware
Open the file located in the Breakout zip in the firmware folder
Upload it to the board using any compatible IDE
BREAKOUT JS; INSTALLING THE SERVER
Depends on which server you want to install; Java or Node
USING THE JAVA SERVER
Unzip the folder relevant to your Operating System
MacOS, Linux, Windows x32 & x64
Run the resulting Executable
USING THE NODE SERVER
Install NodeJS
Navigate to the node_server folder in command line
Run “npm install” to install all dependencies
“node server.js” starts the server
WHAT THE API LOOKS LIKE
Classes for most things you would connect to an Arduino
Mixed in amongst normal Javascript and HTML
BO and JSUTILS namespacing
BO.I2CBase, BO.IOBoard, BO.IOBoardEvent, BO.PhysicalInputBase,
BO.Pin, BO.PinEvent, BO.WSocketEvent, BO.WSocketWrapper,
BO.custom.ID12RFIDReader, BO.custom.RFIDEvent,
BO.filters.Convolution, BO.filters.FilterBase, BO.filters.Scaler,
BO.filters.TriggerPoint, BO.generators.GeneratorBase,
BO.generators.GeneratorEvent, BO.generators.Oscillator,
BO.io.AccelerometerADXL345, BO.io.AccelerometerEvent,
BO.io.AnalogAccelerometer, BO.io.BiColorLED, BO.io.BlinkM,
BO.io.Button, BO.io.ButtonEvent, BO.io.CompassEvent,
BO.io.CompassHMC6352, BO.io.DCMotor, BO.io.GyroEvent,
BO.io.GyroITG3200, BO.io.LED, BO.io.MagnetometerEvent,
BO.io.MagnetometerHMC5883, BO.io.PotEvent, BO.io.Potentiometer,
BO.io.RGBLED, BO.io.Servo, BO.io.SoftPot, BO.io.SoftPotEvent,
BO.io.Stepper, JSUTILS.Event, JSUTILS.EventDispatcher,
JSUTILS.SignalScope, JSUTILS.Timer, JSUTILS.TimerEvent
HELLO WORLD EXAMPLE
vrIBad=B.Oor;
a Oor
OIBad
vrIBadvn =B.OorEet
a OorEet
OIBadvn;
vrLD=B.oLD
a E
Oi.E;
vrBto =B.oBto;
a utn
Oi.utn
vrBtoEet=B.oBtoEet
a utnvn
Oi.utnvn;
vrhs =wno.oainhsnm;
a ot
idwlcto.otae
/ i tefl i oee lcly sttehs t "oahs"
/ f h ie s pnd oal, e h ot o lclot
i (idwlcto.rtclidxf"ie" ==0 {
f wno.oainpooo.neO(fl:) = )
hs ="oahs"
ot
lclot;
}
vradio=nwIBadhs,88)
a run
e Oor(ot 87;
adioadvnLsee(OorEetRAY oRay;
run.dEetitnrIBadvn.ED, ned)
fnto oRayeet {
ucin ned(vn)
/ Rmv teeetlsee bcuei i n lne nee
/ eoe h vn itnr eas t s o ogr edd
adiormvEetitnrIBadvn.ED,oRay;
run.eoevnLsee(OorEetRAY ned)
vrld=nwLDadio adiogtiiaPn1);
a e
e E(run, run.eDgtli(1)
bto =nwBto(run,adiogtiiaPn2)
utn
e utnadio run.eDgtli();
bto.dEetitnrBtoEetPES oPes;
utnadvnLsee(utnvn.RS, nrs)
bto.dEetitnrBtoEetRLAE oRlae;
utnadvnLsee(utnvn.EES, nees)
$'bnet)o(cik,trLdf)
(#tLf'.n'lc' uneOf;
$'bnih'.n'lc' trLdn;
(#tRgt)o(cik, uneO)
}
HELLO WORLD EXAMPLE
fnto trLdnet {
ucin uneO(v)
/ Tr teLDo
/ un h E n
ldo(;
e.n)
}
fnto trLdf(v){
ucin uneOfet
/ Tr teLDof
/ un h E f
ldof)
e.f(;
}
fnto oPeset {
ucin nrs(v)
/ gtarfrnet tebto ojc ta frdteeet
/ e
eeec o h utn bet ht ie h vn
vrbn=ettre;
a t
v.agt
$'sae)hm(Bto "+bnpnubr+"sae Pesd)
(#tt'.tl"utn
t.iNme
tt: rse";
}
fnto oRlaeet {
ucin nees(v)
/ gtarfrnet tebto ojc ta frdteeet
/ e
eeec o h utn bet ht ie h vn
vrbn=ettre;
a t
v.agt
$'sae)hm(Bto "+bnpnubr+"sae Rlae";
(#tt'.tl"utn
t.iNme
tt: eesd)
}
CONNECTING TO THE INTERNET WITH BREAKOUTJS
BreakoutJS runs in a web page
Treat it like any other Javascript Library
XMLHttpRequest() is something you can use
Or jQuery.ajax() if you prefer!
No extra shields needed to extend functionality
WHAT WOULD YOU USE BREAKOUTJS FOR?
Large scale hacks which need monitoring
Systems which you can adjust over an internal network
Setting the colour of lights using a colour picker
Monitoring the heating and adjusting a thermostat
Deciding which person to administer an electrical shock to
JOHNNY FIVE
JOHNNY FIVE; WHAT?
NodeJS based framework
Needs the Arduino connected to the computer running Johnny
Five
JOHNNY FIVE; HOW?
Upload the "StandardFirmata" Arduino example to your Arduino
Install NodeJS
Pick a directory
nmisaljhn-ie
p ntl onyfv
WHAT DOES THE API LOOK LIKE?
Creating instances of hardware objects and passing initiation
properties
vrsro=nwfv.ev(0;
a ev
e ieSro1)

servo.min(), servo.max(), servo.center(), move(deg), sweep(deg)
HELLO WORLD EXAMPLE
vrfv =rqie"onyfv",bto,ld ltol
a ie
eur(jhn-ie) utn e, iBo;
vrbad=nwfv.or(;
a or
e ieBad)
bado(ray,fnto( {
or.n"ed" ucin)
/Oc tebadi rayadteclbc frs yu cd ge hr!
/ne h or s ed n h alak ie, or oe os ee
ltol=fle
iBo
as;
ld=fv.e(3;
e
ieLd1)
bto =nwfv.utn8;
utn
e ieBto()
bto.n"on,fnto( {
utno(dw" ucin)
i(iBo = fle{
fltol = as)
ldof)
e.f(;
}le
es{
ldo(;
e.n)
}
ltol=!iBo;
iBo
ltol
};
)
bto.n"od,fnto( {
utno(hl" ucin)
ldsrb(;
e.toe)
};
)
};
)
CONNECTING TO THE INTERNET WITH JOHNNY FIVE
Johnny Five is just a Node package
Treat it like any other Node Library
Connecting to API's is the same as you normally would with
NodeJS
No extra shields needed either!
WHAT WOULD YOU USE JOHNNY FIVE FOR?
Autonomously monitoring and adjusting
Inteligently regulating an aquarium
Building a little robot to intelligently avoid walls
Letting twitter decide who to administer a shock to
The Internet of Things is already here!
No concrete definition; make it your own
We can take part with (relative) ease
BreakoutJS : Watch and control your environment
Johnny Five : Control your environment with AI
THANK YOU!
I'VE BEEN;

ALEX ROCHE
@ALEXHACKED

More Related Content

What's hot

Docker for data science
Docker for data scienceDocker for data science
Docker for data scienceCalvin Giles
 
ASFWS 2012 - Node.js Security – Old vulnerabilities in new dresses par Sven V...
ASFWS 2012 - Node.js Security – Old vulnerabilities in new dresses par Sven V...ASFWS 2012 - Node.js Security – Old vulnerabilities in new dresses par Sven V...
ASFWS 2012 - Node.js Security – Old vulnerabilities in new dresses par Sven V...Cyber Security Alliance
 
Docker @ Data Science Meetup
Docker @ Data Science MeetupDocker @ Data Science Meetup
Docker @ Data Science MeetupDaniel Nüst
 
Microservices: 5 Things I Wish I'd Known - Code Motion Milan 2017
Microservices: 5 Things I Wish I'd Known - Code Motion Milan 2017Microservices: 5 Things I Wish I'd Known - Code Motion Milan 2017
Microservices: 5 Things I Wish I'd Known - Code Motion Milan 2017Vincent Kok
 
Elasticsearch sur Azure : Make sense of your (BIG) data !
Elasticsearch sur Azure : Make sense of your (BIG) data !Elasticsearch sur Azure : Make sense of your (BIG) data !
Elasticsearch sur Azure : Make sense of your (BIG) data !Microsoft
 
10 Excellent Ways to Secure Your Spring Boot Application - Devoxx Belgium 2019
10 Excellent Ways to Secure Your Spring Boot Application - Devoxx Belgium 201910 Excellent Ways to Secure Your Spring Boot Application - Devoxx Belgium 2019
10 Excellent Ways to Secure Your Spring Boot Application - Devoxx Belgium 2019Matt Raible
 
Building A Poor man’s Fir3Ey3 Mail Scanner
Building A Poor man’s Fir3Ey3 Mail ScannerBuilding A Poor man’s Fir3Ey3 Mail Scanner
Building A Poor man’s Fir3Ey3 Mail ScannerXavier Mertens
 
Got Logs? Get Answers with Elasticsearch ELK - PuppetConf 2014
Got Logs? Get Answers with Elasticsearch ELK - PuppetConf 2014Got Logs? Get Answers with Elasticsearch ELK - PuppetConf 2014
Got Logs? Get Answers with Elasticsearch ELK - PuppetConf 2014Puppet
 
Regex Considered Harmful: Use Rosie Pattern Language Instead
Regex Considered Harmful: Use Rosie Pattern Language InsteadRegex Considered Harmful: Use Rosie Pattern Language Instead
Regex Considered Harmful: Use Rosie Pattern Language InsteadAll Things Open
 
HAProxy as Egress Controller
HAProxy as Egress ControllerHAProxy as Egress Controller
HAProxy as Egress ControllerJulien Pivotto
 
HTTP For the Good or the Bad
HTTP For the Good or the BadHTTP For the Good or the Bad
HTTP For the Good or the BadXavier Mertens
 
node.js: Javascript's in your backend
node.js: Javascript's in your backendnode.js: Javascript's in your backend
node.js: Javascript's in your backendDavid Padbury
 
Java script at backend nodejs
Java script at backend   nodejsJava script at backend   nodejs
Java script at backend nodejsAmit Thakkar
 
Eddystone Beacons - Physical Web - Giving a URL to All Objects
Eddystone Beacons - Physical Web - Giving a URL to All ObjectsEddystone Beacons - Physical Web - Giving a URL to All Objects
Eddystone Beacons - Physical Web - Giving a URL to All ObjectsJeff Prestes
 
10 Excellent Ways to Secure Your Spring Boot Application - The Secure Develop...
10 Excellent Ways to Secure Your Spring Boot Application - The Secure Develop...10 Excellent Ways to Secure Your Spring Boot Application - The Secure Develop...
10 Excellent Ways to Secure Your Spring Boot Application - The Secure Develop...Matt Raible
 
Internet of everything: let's talk about IoT and Azure - DotNet Conf 2018
Internet of everything: let's talk about IoT and Azure - DotNet Conf 2018Internet of everything: let's talk about IoT and Azure - DotNet Conf 2018
Internet of everything: let's talk about IoT and Azure - DotNet Conf 2018Angelo Gino Varrati
 
Introduce about Nodejs - duyetdev.com
Introduce about Nodejs - duyetdev.comIntroduce about Nodejs - duyetdev.com
Introduce about Nodejs - duyetdev.comVan-Duyet Le
 

What's hot (20)

Docker for data science
Docker for data scienceDocker for data science
Docker for data science
 
ASFWS 2012 - Node.js Security – Old vulnerabilities in new dresses par Sven V...
ASFWS 2012 - Node.js Security – Old vulnerabilities in new dresses par Sven V...ASFWS 2012 - Node.js Security – Old vulnerabilities in new dresses par Sven V...
ASFWS 2012 - Node.js Security – Old vulnerabilities in new dresses par Sven V...
 
Docker @ Data Science Meetup
Docker @ Data Science MeetupDocker @ Data Science Meetup
Docker @ Data Science Meetup
 
Microservices: 5 Things I Wish I'd Known - Code Motion Milan 2017
Microservices: 5 Things I Wish I'd Known - Code Motion Milan 2017Microservices: 5 Things I Wish I'd Known - Code Motion Milan 2017
Microservices: 5 Things I Wish I'd Known - Code Motion Milan 2017
 
Elasticsearch sur Azure : Make sense of your (BIG) data !
Elasticsearch sur Azure : Make sense of your (BIG) data !Elasticsearch sur Azure : Make sense of your (BIG) data !
Elasticsearch sur Azure : Make sense of your (BIG) data !
 
10 Excellent Ways to Secure Your Spring Boot Application - Devoxx Belgium 2019
10 Excellent Ways to Secure Your Spring Boot Application - Devoxx Belgium 201910 Excellent Ways to Secure Your Spring Boot Application - Devoxx Belgium 2019
10 Excellent Ways to Secure Your Spring Boot Application - Devoxx Belgium 2019
 
Introduction Node.js
Introduction Node.jsIntroduction Node.js
Introduction Node.js
 
Building A Poor man’s Fir3Ey3 Mail Scanner
Building A Poor man’s Fir3Ey3 Mail ScannerBuilding A Poor man’s Fir3Ey3 Mail Scanner
Building A Poor man’s Fir3Ey3 Mail Scanner
 
Got Logs? Get Answers with Elasticsearch ELK - PuppetConf 2014
Got Logs? Get Answers with Elasticsearch ELK - PuppetConf 2014Got Logs? Get Answers with Elasticsearch ELK - PuppetConf 2014
Got Logs? Get Answers with Elasticsearch ELK - PuppetConf 2014
 
Regex Considered Harmful: Use Rosie Pattern Language Instead
Regex Considered Harmful: Use Rosie Pattern Language InsteadRegex Considered Harmful: Use Rosie Pattern Language Instead
Regex Considered Harmful: Use Rosie Pattern Language Instead
 
Introduction to NodeJS
Introduction to NodeJSIntroduction to NodeJS
Introduction to NodeJS
 
hacking with node.JS
hacking with node.JShacking with node.JS
hacking with node.JS
 
HAProxy as Egress Controller
HAProxy as Egress ControllerHAProxy as Egress Controller
HAProxy as Egress Controller
 
HTTP For the Good or the Bad
HTTP For the Good or the BadHTTP For the Good or the Bad
HTTP For the Good or the Bad
 
node.js: Javascript's in your backend
node.js: Javascript's in your backendnode.js: Javascript's in your backend
node.js: Javascript's in your backend
 
Java script at backend nodejs
Java script at backend   nodejsJava script at backend   nodejs
Java script at backend nodejs
 
Eddystone Beacons - Physical Web - Giving a URL to All Objects
Eddystone Beacons - Physical Web - Giving a URL to All ObjectsEddystone Beacons - Physical Web - Giving a URL to All Objects
Eddystone Beacons - Physical Web - Giving a URL to All Objects
 
10 Excellent Ways to Secure Your Spring Boot Application - The Secure Develop...
10 Excellent Ways to Secure Your Spring Boot Application - The Secure Develop...10 Excellent Ways to Secure Your Spring Boot Application - The Secure Develop...
10 Excellent Ways to Secure Your Spring Boot Application - The Secure Develop...
 
Internet of everything: let's talk about IoT and Azure - DotNet Conf 2018
Internet of everything: let's talk about IoT and Azure - DotNet Conf 2018Internet of everything: let's talk about IoT and Azure - DotNet Conf 2018
Internet of everything: let's talk about IoT and Azure - DotNet Conf 2018
 
Introduce about Nodejs - duyetdev.com
Introduce about Nodejs - duyetdev.comIntroduce about Nodejs - duyetdev.com
Introduce about Nodejs - duyetdev.com
 

Viewers also liked

Creating the Internet of Things with JavaScript - Fluent Conf
Creating the Internet of Things with JavaScript - Fluent ConfCreating the Internet of Things with JavaScript - Fluent Conf
Creating the Internet of Things with JavaScript - Fluent ConfTom Croucher
 
1 aula introdução à lógica fevereiro
1 aula   introdução à lógica fevereiro 1 aula   introdução à lógica fevereiro
1 aula introdução à lógica fevereiro Marcelo Pinto
 
Video games, literacy, and identity
Video games, literacy, and identityVideo games, literacy, and identity
Video games, literacy, and identityNicky Rosi
 
HENSCO_CASSAVA_FLOUR
HENSCO_CASSAVA_FLOURHENSCO_CASSAVA_FLOUR
HENSCO_CASSAVA_FLOURAmelia Hadin
 
Tend, Gather and Grow Curriculum: Berries
Tend, Gather and Grow Curriculum: BerriesTend, Gather and Grow Curriculum: Berries
Tend, Gather and Grow Curriculum: BerriesSheila Wilson
 
Water Quality Monitoring 2015
Water Quality Monitoring 2015Water Quality Monitoring 2015
Water Quality Monitoring 2015Sheila Wilson
 
Proposal Kegiatan
Proposal KegiatanProposal Kegiatan
Proposal KegiatanKaruniaOP
 
Intro biomimicry talk- edu
Intro biomimicry talk- eduIntro biomimicry talk- edu
Intro biomimicry talk- eduSheila Wilson
 
E&C Вrodaband 2015 Диалог бизнеса и государства
E&C Вrodaband 2015  Диалог бизнеса и государства E&C Вrodaband 2015  Диалог бизнеса и государства
E&C Вrodaband 2015 Диалог бизнеса и государства Expert and Consulting (EnC)
 
Pre-trip Planting Presentation- Anderson Version
Pre-trip Planting Presentation- Anderson VersionPre-trip Planting Presentation- Anderson Version
Pre-trip Planting Presentation- Anderson VersionSheila Wilson
 
Updated version of media presentation 2
Updated version of media presentation 2Updated version of media presentation 2
Updated version of media presentation 2shipy02
 
Ekologi yang terdera dari danau semi alami
Ekologi yang terdera dari danau semi alamiEkologi yang terdera dari danau semi alami
Ekologi yang terdera dari danau semi alamiDevy Ratnasari
 
NREP Ohop Tree Planting -Fall 2013
NREP Ohop Tree Planting -Fall 2013NREP Ohop Tree Planting -Fall 2013
NREP Ohop Tree Planting -Fall 2013Sheila Wilson
 

Viewers also liked (20)

Creating the Internet of Things with JavaScript - Fluent Conf
Creating the Internet of Things with JavaScript - Fluent ConfCreating the Internet of Things with JavaScript - Fluent Conf
Creating the Internet of Things with JavaScript - Fluent Conf
 
1 aula introdução à lógica fevereiro
1 aula   introdução à lógica fevereiro 1 aula   introdução à lógica fevereiro
1 aula introdução à lógica fevereiro
 
Rebuda patges reials
Rebuda patges reialsRebuda patges reials
Rebuda patges reials
 
перспективные технологии
перспективные технологииперспективные технологии
перспективные технологии
 
Els ordinadors de les classes
Els ordinadors de les classesEls ordinadors de les classes
Els ordinadors de les classes
 
Video games, literacy, and identity
Video games, literacy, and identityVideo games, literacy, and identity
Video games, literacy, and identity
 
Visita Taller Titelles Teia Moner
Visita Taller Titelles Teia MonerVisita Taller Titelles Teia Moner
Visita Taller Titelles Teia Moner
 
Mussel Magic
Mussel MagicMussel Magic
Mussel Magic
 
HENSCO_CASSAVA_FLOUR
HENSCO_CASSAVA_FLOURHENSCO_CASSAVA_FLOUR
HENSCO_CASSAVA_FLOUR
 
Tend, Gather and Grow Curriculum: Berries
Tend, Gather and Grow Curriculum: BerriesTend, Gather and Grow Curriculum: Berries
Tend, Gather and Grow Curriculum: Berries
 
Water Quality Monitoring 2015
Water Quality Monitoring 2015Water Quality Monitoring 2015
Water Quality Monitoring 2015
 
Proposal Kegiatan
Proposal KegiatanProposal Kegiatan
Proposal Kegiatan
 
Intro biomimicry talk- edu
Intro biomimicry talk- eduIntro biomimicry talk- edu
Intro biomimicry talk- edu
 
E&C Вrodaband 2015 Диалог бизнеса и государства
E&C Вrodaband 2015  Диалог бизнеса и государства E&C Вrodaband 2015  Диалог бизнеса и государства
E&C Вrodaband 2015 Диалог бизнеса и государства
 
Pre-trip Planting Presentation- Anderson Version
Pre-trip Planting Presentation- Anderson VersionPre-trip Planting Presentation- Anderson Version
Pre-trip Planting Presentation- Anderson Version
 
Frontend++
Frontend++Frontend++
Frontend++
 
Updated version of media presentation 2
Updated version of media presentation 2Updated version of media presentation 2
Updated version of media presentation 2
 
Ekologi yang terdera dari danau semi alami
Ekologi yang terdera dari danau semi alamiEkologi yang terdera dari danau semi alami
Ekologi yang terdera dari danau semi alami
 
Mostra de moniatos
Mostra de moniatosMostra de moniatos
Mostra de moniatos
 
NREP Ohop Tree Planting -Fall 2013
NREP Ohop Tree Planting -Fall 2013NREP Ohop Tree Planting -Fall 2013
NREP Ohop Tree Planting -Fall 2013
 

Similar to How To Electrocute Yourself using the Internet

Bare metal Javascript & GPIO programming in Linux
Bare metal Javascript & GPIO programming in LinuxBare metal Javascript & GPIO programming in Linux
Bare metal Javascript & GPIO programming in LinuxAlexander Vanwynsberghe
 
Internet of things - The Present & The Future
Internet of things - The Present & The FutureInternet of things - The Present & The Future
Internet of things - The Present & The Futureiotians
 
Hack the Real World with ANDROID THINGS
Hack the Real World with ANDROID THINGSHack the Real World with ANDROID THINGS
Hack the Real World with ANDROID THINGSDevFest DC
 
Internet of Things (IoT) - workshop with wifi chip
Internet of Things (IoT) - workshop with wifi chipInternet of Things (IoT) - workshop with wifi chip
Internet of Things (IoT) - workshop with wifi chipPairoch Julrat
 
Taller IoT en la Actualidad
Taller IoT en la ActualidadTaller IoT en la Actualidad
Taller IoT en la ActualidadLaurence HR
 
ESP32 WiFi & Bluetooth Module - Getting Started Guide
ESP32 WiFi & Bluetooth Module - Getting Started GuideESP32 WiFi & Bluetooth Module - Getting Started Guide
ESP32 WiFi & Bluetooth Module - Getting Started Guidehandson28
 
IoT with openHAB on pcDuino3B
IoT with openHAB on pcDuino3BIoT with openHAB on pcDuino3B
IoT with openHAB on pcDuino3BJingfeng Liu
 
Get in Touch with Internet of Things
Get in Touch with Internet of ThingsGet in Touch with Internet of Things
Get in Touch with Internet of ThingsCodePolitan
 
Lab Handson: Power your Creations with Intel Edison!
Lab Handson: Power your Creations with Intel Edison!Lab Handson: Power your Creations with Intel Edison!
Lab Handson: Power your Creations with Intel Edison!Codemotion
 
Can we build an Azure IoT controlled device in less than 40 minutes that cost...
Can we build an Azure IoT controlled device in less than 40 minutes that cost...Can we build an Azure IoT controlled device in less than 40 minutes that cost...
Can we build an Azure IoT controlled device in less than 40 minutes that cost...Codemotion Tel Aviv
 
PowerShell: A Language for the Internet of Things #ATLPUG
PowerShell: A Language for the Internet of Things #ATLPUGPowerShell: A Language for the Internet of Things #ATLPUG
PowerShell: A Language for the Internet of Things #ATLPUGTaylor Riggan
 
Internet of Things Conference - Bogor city
Internet of Things Conference - Bogor cityInternet of Things Conference - Bogor city
Internet of Things Conference - Bogor cityAndri Yadi
 
Physical Computing and IoT
Physical Computing and IoTPhysical Computing and IoT
Physical Computing and IoTEduardo Oliveira
 
IoT on Raspberry PI v1.2
IoT on Raspberry PI v1.2IoT on Raspberry PI v1.2
IoT on Raspberry PI v1.2John Staveley
 
Iot for smart agriculture
Iot for smart agricultureIot for smart agriculture
Iot for smart agricultureAtit Patumvan
 

Similar to How To Electrocute Yourself using the Internet (20)

IoT on Raspberry Pi
IoT on Raspberry PiIoT on Raspberry Pi
IoT on Raspberry Pi
 
Bare metal Javascript & GPIO programming in Linux
Bare metal Javascript & GPIO programming in LinuxBare metal Javascript & GPIO programming in Linux
Bare metal Javascript & GPIO programming in Linux
 
Internet of things - The Present & The Future
Internet of things - The Present & The FutureInternet of things - The Present & The Future
Internet of things - The Present & The Future
 
Hack the Real World with ANDROID THINGS
Hack the Real World with ANDROID THINGSHack the Real World with ANDROID THINGS
Hack the Real World with ANDROID THINGS
 
Internet of Things (IoT) - workshop with wifi chip
Internet of Things (IoT) - workshop with wifi chipInternet of Things (IoT) - workshop with wifi chip
Internet of Things (IoT) - workshop with wifi chip
 
Taller IoT en la Actualidad
Taller IoT en la ActualidadTaller IoT en la Actualidad
Taller IoT en la Actualidad
 
ESP32 WiFi & Bluetooth Module - Getting Started Guide
ESP32 WiFi & Bluetooth Module - Getting Started GuideESP32 WiFi & Bluetooth Module - Getting Started Guide
ESP32 WiFi & Bluetooth Module - Getting Started Guide
 
IoT Workshop in Macao
IoT Workshop in MacaoIoT Workshop in Macao
IoT Workshop in Macao
 
IoT Workshop in Macao
IoT Workshop in MacaoIoT Workshop in Macao
IoT Workshop in Macao
 
IoT with openHAB on pcDuino3B
IoT with openHAB on pcDuino3BIoT with openHAB on pcDuino3B
IoT with openHAB on pcDuino3B
 
Get in Touch with Internet of Things
Get in Touch with Internet of ThingsGet in Touch with Internet of Things
Get in Touch with Internet of Things
 
Lab Handson: Power your Creations with Intel Edison!
Lab Handson: Power your Creations with Intel Edison!Lab Handson: Power your Creations with Intel Edison!
Lab Handson: Power your Creations with Intel Edison!
 
Can we build an Azure IoT controlled device in less than 40 minutes that cost...
Can we build an Azure IoT controlled device in less than 40 minutes that cost...Can we build an Azure IoT controlled device in less than 40 minutes that cost...
Can we build an Azure IoT controlled device in less than 40 minutes that cost...
 
PowerShell: A Language for the Internet of Things #ATLPUG
PowerShell: A Language for the Internet of Things #ATLPUGPowerShell: A Language for the Internet of Things #ATLPUG
PowerShell: A Language for the Internet of Things #ATLPUG
 
IoT
IoTIoT
IoT
 
Internet of Things Conference - Bogor city
Internet of Things Conference - Bogor cityInternet of Things Conference - Bogor city
Internet of Things Conference - Bogor city
 
Physical Computing and IoT
Physical Computing and IoTPhysical Computing and IoT
Physical Computing and IoT
 
IoT on Raspberry PI v1.2
IoT on Raspberry PI v1.2IoT on Raspberry PI v1.2
IoT on Raspberry PI v1.2
 
The arduino and iot
The arduino and iotThe arduino and iot
The arduino and iot
 
Iot for smart agriculture
Iot for smart agricultureIot for smart agriculture
Iot for smart agriculture
 

Recently uploaded

Scenario Library et REX Discover industry- and role- based scenarios
Scenario Library et REX Discover industry- and role- based scenariosScenario Library et REX Discover industry- and role- based scenarios
Scenario Library et REX Discover industry- and role- based scenariosErol GIRAUDY
 
Graphene Quantum Dots-Based Composites for Biomedical Applications
Graphene Quantum Dots-Based Composites for  Biomedical ApplicationsGraphene Quantum Dots-Based Composites for  Biomedical Applications
Graphene Quantum Dots-Based Composites for Biomedical Applicationsnooralam814309
 
UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3DianaGray10
 
Stobox 4: Revolutionizing Investment in Real-World Assets Through Tokenization
Stobox 4: Revolutionizing Investment in Real-World Assets Through TokenizationStobox 4: Revolutionizing Investment in Real-World Assets Through Tokenization
Stobox 4: Revolutionizing Investment in Real-World Assets Through TokenizationStobox
 
March Patch Tuesday
March Patch TuesdayMarch Patch Tuesday
March Patch TuesdayIvanti
 
How to release an Open Source Dataweave Library
How to release an Open Source Dataweave LibraryHow to release an Open Source Dataweave Library
How to release an Open Source Dataweave Libraryshyamraj55
 
Novo Nordisk's journey in developing an open-source application on Neo4j
Novo Nordisk's journey in developing an open-source application on Neo4jNovo Nordisk's journey in developing an open-source application on Neo4j
Novo Nordisk's journey in developing an open-source application on Neo4jNeo4j
 
20140402 - Smart house demo kit
20140402 - Smart house demo kit20140402 - Smart house demo kit
20140402 - Smart house demo kitJamie (Taka) Wang
 
Keep Your Finger on the Pulse of Your Building's Performance with IES Live
Keep Your Finger on the Pulse of Your Building's Performance with IES LiveKeep Your Finger on the Pulse of Your Building's Performance with IES Live
Keep Your Finger on the Pulse of Your Building's Performance with IES LiveIES VE
 
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptxGraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptxNeo4j
 
Technical SEO for Improved Accessibility WTS FEST
Technical SEO for Improved Accessibility  WTS FESTTechnical SEO for Improved Accessibility  WTS FEST
Technical SEO for Improved Accessibility WTS FESTBillieHyde
 
Outage Analysis: March 5th/6th 2024 Meta, Comcast, and LinkedIn
Outage Analysis: March 5th/6th 2024 Meta, Comcast, and LinkedInOutage Analysis: March 5th/6th 2024 Meta, Comcast, and LinkedIn
Outage Analysis: March 5th/6th 2024 Meta, Comcast, and LinkedInThousandEyes
 
UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2DianaGray10
 
Trailblazer Community - Flows Workshop (Session 2)
Trailblazer Community - Flows Workshop (Session 2)Trailblazer Community - Flows Workshop (Session 2)
Trailblazer Community - Flows Workshop (Session 2)Muhammad Tiham Siddiqui
 
The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)codyslingerland1
 
2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdf2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdfThe Good Food Institute
 
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptxEmil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptxNeo4j
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
 
My key hands-on projects in Quantum, and QAI
My key hands-on projects in Quantum, and QAIMy key hands-on projects in Quantum, and QAI
My key hands-on projects in Quantum, and QAIVijayananda Mohire
 

Recently uploaded (20)

Scenario Library et REX Discover industry- and role- based scenarios
Scenario Library et REX Discover industry- and role- based scenariosScenario Library et REX Discover industry- and role- based scenarios
Scenario Library et REX Discover industry- and role- based scenarios
 
Graphene Quantum Dots-Based Composites for Biomedical Applications
Graphene Quantum Dots-Based Composites for  Biomedical ApplicationsGraphene Quantum Dots-Based Composites for  Biomedical Applications
Graphene Quantum Dots-Based Composites for Biomedical Applications
 
UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3
 
SheDev 2024
SheDev 2024SheDev 2024
SheDev 2024
 
Stobox 4: Revolutionizing Investment in Real-World Assets Through Tokenization
Stobox 4: Revolutionizing Investment in Real-World Assets Through TokenizationStobox 4: Revolutionizing Investment in Real-World Assets Through Tokenization
Stobox 4: Revolutionizing Investment in Real-World Assets Through Tokenization
 
March Patch Tuesday
March Patch TuesdayMarch Patch Tuesday
March Patch Tuesday
 
How to release an Open Source Dataweave Library
How to release an Open Source Dataweave LibraryHow to release an Open Source Dataweave Library
How to release an Open Source Dataweave Library
 
Novo Nordisk's journey in developing an open-source application on Neo4j
Novo Nordisk's journey in developing an open-source application on Neo4jNovo Nordisk's journey in developing an open-source application on Neo4j
Novo Nordisk's journey in developing an open-source application on Neo4j
 
20140402 - Smart house demo kit
20140402 - Smart house demo kit20140402 - Smart house demo kit
20140402 - Smart house demo kit
 
Keep Your Finger on the Pulse of Your Building's Performance with IES Live
Keep Your Finger on the Pulse of Your Building's Performance with IES LiveKeep Your Finger on the Pulse of Your Building's Performance with IES Live
Keep Your Finger on the Pulse of Your Building's Performance with IES Live
 
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptxGraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
 
Technical SEO for Improved Accessibility WTS FEST
Technical SEO for Improved Accessibility  WTS FESTTechnical SEO for Improved Accessibility  WTS FEST
Technical SEO for Improved Accessibility WTS FEST
 
Outage Analysis: March 5th/6th 2024 Meta, Comcast, and LinkedIn
Outage Analysis: March 5th/6th 2024 Meta, Comcast, and LinkedInOutage Analysis: March 5th/6th 2024 Meta, Comcast, and LinkedIn
Outage Analysis: March 5th/6th 2024 Meta, Comcast, and LinkedIn
 
UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2
 
Trailblazer Community - Flows Workshop (Session 2)
Trailblazer Community - Flows Workshop (Session 2)Trailblazer Community - Flows Workshop (Session 2)
Trailblazer Community - Flows Workshop (Session 2)
 
The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)
 
2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdf2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdf
 
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptxEmil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
My key hands-on projects in Quantum, and QAI
My key hands-on projects in Quantum, and QAIMy key hands-on projects in Quantum, and QAI
My key hands-on projects in Quantum, and QAI
 

How To Electrocute Yourself using the Internet

  • 1. HOW TO ELECTROCUTE YOURSELF USING THE INTERNET
  • 3. Tom Scott being Electrocuted as part of a PayPal charity hack. (http://www.youtube.com/embed/j_74elSiI7E)
  • 4. Matt, of SI Digital, being shocked.
  • 5. WHAT I'M GOING TO BE TALKING ABOUT Internet of Things Arduino Johnny Five BreakoutJS
  • 6. Today computers—and, therefore, the Internet—are almost wholly dependent on human beings for information ... The problem is, people have limited time, attention and accuracy—all of which means they are not very good at capturing data about things in the real world ... We're physical, and so is our environment ... Ideas and information are important, but things matter much more. Yet today's information technology is so dependent on data originated by people that our computers know more about ideas than things. If we had computers that knew everything there was to know about things—using data they gathered without any help from us—we would be able to track and count everything. - Kevin Ashton
  • 7. XIVELY Cloud Based Service Users send JSON, XML or CSV to a RESTful API Amalgamates data from around the world and stores it Data is also accessible through AJAX requests
  • 8. WHAT CAN YOU USE THE INTERNET OF THINGS FOR? MONITORING AN ENVIRONMENT Moderating the temperature in your house Making sure you're not being broken in to REACTING TO DATA FROM AN ENVIRONMENT Printing out the news every morning Flashing a light when someone enters a room ... ... on the other side of the world
  • 11. MAKE THE COSM Pulls from Xively based on a user defined search term Data is updated in real time User can use the data provided to trigger sounds
  • 12. STRAVA Gathers data about your surrounding area Transfers this data to a server which aggregates Server reacts to the data you post
  • 14. WHAT IS AN ARDUINO? Open Source Microcontroller board with addressable GPIO pins Various form factors depending on need Communicates with electronics using GPIO pins
  • 15. GUH-PEE-OH WHAT? General Purpose Input and Output Can be used to receive and transmit current to electronic components Can also be used to pass messages to serial input Are how the Microcontroller talks to the outside world
  • 16. PINS ON THE ARDUINO Normal pins which can be set high or low Analogue and PWM Pins Analogue pins which can read values between 0 and 1023 PWM Pins can be set to values between 0 and 255
  • 17. WARNING WINDOWS USERS You will have to bypass windows security to install drivers for the Arduino. Drivers are unsigned by Arduino As such, you will need to disable Driver Signature Checking
  • 18. S.H.I.E.L.D.S. Not a comic law enforcement agency (in this case) Add on to an Arduino which extends functionality Can be stacked, but some care does need to be taken
  • 19. S.H.I.E.L.D. REQUIREMENTS Plugs to the non-GPIO pins need to reach all shields. Each shield will have outputs which need to be left unconnected to. Outputs to the Arduino need to be unique.
  • 20. PROGRAMMING AN ARDUINO Breaks down in to two main types Code that is compiled to C / C++ and uploaded to the microcontroller Code that communicates with the board and issues commands
  • 21. BREAKOUT JS; WHAT? Javascript based framework Can be ran in a web page Needs Arduino to be connected to a computer Needs a server to run on your computer Resulting web page can be connected to from any device on the local network
  • 22. BREAKOUT JS; HOW? Install the Firmata firmware Open the file located in the Breakout zip in the firmware folder Upload it to the board using any compatible IDE
  • 23. BREAKOUT JS; INSTALLING THE SERVER Depends on which server you want to install; Java or Node
  • 24. USING THE JAVA SERVER Unzip the folder relevant to your Operating System MacOS, Linux, Windows x32 & x64 Run the resulting Executable
  • 25. USING THE NODE SERVER Install NodeJS Navigate to the node_server folder in command line Run “npm install” to install all dependencies “node server.js” starts the server
  • 26. WHAT THE API LOOKS LIKE Classes for most things you would connect to an Arduino Mixed in amongst normal Javascript and HTML BO and JSUTILS namespacing
  • 27. BO.I2CBase, BO.IOBoard, BO.IOBoardEvent, BO.PhysicalInputBase, BO.Pin, BO.PinEvent, BO.WSocketEvent, BO.WSocketWrapper, BO.custom.ID12RFIDReader, BO.custom.RFIDEvent, BO.filters.Convolution, BO.filters.FilterBase, BO.filters.Scaler, BO.filters.TriggerPoint, BO.generators.GeneratorBase, BO.generators.GeneratorEvent, BO.generators.Oscillator, BO.io.AccelerometerADXL345, BO.io.AccelerometerEvent, BO.io.AnalogAccelerometer, BO.io.BiColorLED, BO.io.BlinkM, BO.io.Button, BO.io.ButtonEvent, BO.io.CompassEvent, BO.io.CompassHMC6352, BO.io.DCMotor, BO.io.GyroEvent, BO.io.GyroITG3200, BO.io.LED, BO.io.MagnetometerEvent, BO.io.MagnetometerHMC5883, BO.io.PotEvent, BO.io.Potentiometer, BO.io.RGBLED, BO.io.Servo, BO.io.SoftPot, BO.io.SoftPotEvent, BO.io.Stepper, JSUTILS.Event, JSUTILS.EventDispatcher, JSUTILS.SignalScope, JSUTILS.Timer, JSUTILS.TimerEvent
  • 28. HELLO WORLD EXAMPLE vrIBad=B.Oor; a Oor OIBad vrIBadvn =B.OorEet a OorEet OIBadvn; vrLD=B.oLD a E Oi.E; vrBto =B.oBto; a utn Oi.utn vrBtoEet=B.oBtoEet a utnvn Oi.utnvn; vrhs =wno.oainhsnm; a ot idwlcto.otae / i tefl i oee lcly sttehs t "oahs" / f h ie s pnd oal, e h ot o lclot i (idwlcto.rtclidxf"ie" ==0 { f wno.oainpooo.neO(fl:) = ) hs ="oahs" ot lclot; } vradio=nwIBadhs,88) a run e Oor(ot 87; adioadvnLsee(OorEetRAY oRay; run.dEetitnrIBadvn.ED, ned) fnto oRayeet { ucin ned(vn) / Rmv teeetlsee bcuei i n lne nee / eoe h vn itnr eas t s o ogr edd adiormvEetitnrIBadvn.ED,oRay; run.eoevnLsee(OorEetRAY ned) vrld=nwLDadio adiogtiiaPn1); a e e E(run, run.eDgtli(1) bto =nwBto(run,adiogtiiaPn2) utn e utnadio run.eDgtli(); bto.dEetitnrBtoEetPES oPes; utnadvnLsee(utnvn.RS, nrs) bto.dEetitnrBtoEetRLAE oRlae; utnadvnLsee(utnvn.EES, nees) $'bnet)o(cik,trLdf) (#tLf'.n'lc' uneOf; $'bnih'.n'lc' trLdn; (#tRgt)o(cik, uneO) }
  • 29. HELLO WORLD EXAMPLE fnto trLdnet { ucin uneO(v) / Tr teLDo / un h E n ldo(; e.n) } fnto trLdf(v){ ucin uneOfet / Tr teLDof / un h E f ldof) e.f(; } fnto oPeset { ucin nrs(v) / gtarfrnet tebto ojc ta frdteeet / e eeec o h utn bet ht ie h vn vrbn=ettre; a t v.agt $'sae)hm(Bto "+bnpnubr+"sae Pesd) (#tt'.tl"utn t.iNme tt: rse"; } fnto oRlaeet { ucin nees(v) / gtarfrnet tebto ojc ta frdteeet / e eeec o h utn bet ht ie h vn vrbn=ettre; a t v.agt $'sae)hm(Bto "+bnpnubr+"sae Rlae"; (#tt'.tl"utn t.iNme tt: eesd) }
  • 30. CONNECTING TO THE INTERNET WITH BREAKOUTJS BreakoutJS runs in a web page Treat it like any other Javascript Library XMLHttpRequest() is something you can use Or jQuery.ajax() if you prefer! No extra shields needed to extend functionality
  • 31. WHAT WOULD YOU USE BREAKOUTJS FOR? Large scale hacks which need monitoring Systems which you can adjust over an internal network Setting the colour of lights using a colour picker Monitoring the heating and adjusting a thermostat Deciding which person to administer an electrical shock to
  • 33. JOHNNY FIVE; WHAT? NodeJS based framework Needs the Arduino connected to the computer running Johnny Five
  • 34. JOHNNY FIVE; HOW? Upload the "StandardFirmata" Arduino example to your Arduino Install NodeJS Pick a directory nmisaljhn-ie p ntl onyfv
  • 35. WHAT DOES THE API LOOK LIKE? Creating instances of hardware objects and passing initiation properties vrsro=nwfv.ev(0; a ev e ieSro1) servo.min(), servo.max(), servo.center(), move(deg), sweep(deg)
  • 36. HELLO WORLD EXAMPLE vrfv =rqie"onyfv",bto,ld ltol a ie eur(jhn-ie) utn e, iBo; vrbad=nwfv.or(; a or e ieBad) bado(ray,fnto( { or.n"ed" ucin) /Oc tebadi rayadteclbc frs yu cd ge hr! /ne h or s ed n h alak ie, or oe os ee ltol=fle iBo as; ld=fv.e(3; e ieLd1) bto =nwfv.utn8; utn e ieBto() bto.n"on,fnto( { utno(dw" ucin) i(iBo = fle{ fltol = as) ldof) e.f(; }le es{ ldo(; e.n) } ltol=!iBo; iBo ltol }; ) bto.n"od,fnto( { utno(hl" ucin) ldsrb(; e.toe) }; ) }; )
  • 37. CONNECTING TO THE INTERNET WITH JOHNNY FIVE Johnny Five is just a Node package Treat it like any other Node Library Connecting to API's is the same as you normally would with NodeJS No extra shields needed either!
  • 38. WHAT WOULD YOU USE JOHNNY FIVE FOR? Autonomously monitoring and adjusting Inteligently regulating an aquarium Building a little robot to intelligently avoid walls Letting twitter decide who to administer a shock to
  • 39. The Internet of Things is already here! No concrete definition; make it your own We can take part with (relative) ease BreakoutJS : Watch and control your environment Johnny Five : Control your environment with AI
  • 40. THANK YOU! I'VE BEEN; ALEX ROCHE @ALEXHACKED