0
JavaScript & Internet
Controlled Electronics
Jonathan LeBlanc
(@jcleblanc)
Head of Global Developer
Evangelism at PayPal
Early Hardware Days
Mainstreaming Effect
Arduino / Raspberry Pi / Leap Motion / etc.
Hardware Toolbox
Rasperry Pi
Arduino
Internet Meets Arduino
Arduino Yún
http://arduino.cc/en/Main/ArduinoYUN
Web Service Access with Temboo
Python 2.7 included with OpenWRT Linino
Integrated Wifi / Ethernet
Arduino Yún Feature Set
Temboo Sketch Builder
http://arduino.cc/en/main/software
Fetching the Arduino IDE
http://arduino.cc/en/main/software
Enabling the Board in the IDE
Picking the Comms Port
JavaScript, Node &
Arduino
Tessel JavaScript Microcontroller
https://tessel.io/
Johnny 5
https://github.com/rwaldron/johnny-five
Standard
Firmata
How Johnny 5 Comms Work
Arduino
Microcontroller
Node.js
Script
What is Standard Firmata?
Priming the Board with Firmata
npm install johnny-five
Installing Johnny 5
var five = require("johnny-five"),
board = new five.Board();
board.on("ready", function() {
//board is ready to use
});
En...
board.on("ready", function() {
(new five.Led(13)).strobe(3000);
});
Controlling an LED Light
board.on("ready", function() {
servo = new five.Servo(10);
servo.to( 90 );
this.wait(1000, function() {
servo.sweep();
});...
Noduino
http://semu.github.io/noduino/
Where are we Heading?
Thank You!
http://ppd.io/js-electronics
Jonathan LeBlanc
(@jcleblanc)
Head of Global Developer
Evangelism at PayPal
JavaScript and Internet Controlled Electronics
JavaScript and Internet Controlled Electronics
JavaScript and Internet Controlled Electronics
Upcoming SlideShare
Loading in...5
×

JavaScript and Internet Controlled Electronics

1,663

Published on

The audio from this talk is available at https://archive.org/details/js_electronics

The electronics maker movement has led a massive shift in how people are re-engineering the world around them through rapid hardware prototyping. With the rise of inexpensive, wifi and bluetooth low energy enabled electronics, this hardware revolution is internet and mobile controlled, all through simple bridges to build the electronics intelligence in familiar web languages.
In this session, we will play with Arduino microcontrollers and JavaScript to take a first dive into the world of internet controlled electronics, exploring:
- Setting up an Arduino to be controlled through web APIs
- Using JavaScript language bridges on the Arduino
- The future of web controlled hardware prototyping

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,663
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
21
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide
  • Internet Controller Hardware – Arduino Yun, etc.Extending to other languages, Tessel = JavaScript, Node.js through Johnny 5
  • Arduino Yun
  • Yun feature sets (temboo / wifi / etc)Based on the Leonardo boardPython 2.7 included with OpenWRT Linux distribution called Linino on the board
  • Program an arduino without writing any code.Sketch Builder (https://temboo.com/library/Library/devices/)
  • Picking the right version of the arduino softwarehttp://arduino.cc/en/main/software
  • Picking the right version of the arduino softwarehttp://arduino.cc/en/main/software
  • Picking the right version of the arduino softwarehttp://arduino.cc/en/main/software
  • The modularity and extensibility of the Devices sets them apart from just usingThe hardware components of a phone, etc
  • Alternate framework: Noduino (http://semu.github.io/noduino/) – accessing arduino from web applications (HTML5 / JS / Node)
  • How Johnny 5 works – standard firmata uploaded to the microcontroller, then Node.js script controlled.
  • http://arduino.cc/en/reference/firmata
  • Upload the firmata program to the board
  • Crap that was hard…
  • servo.min(); //set to min degrees (default 0)servo.max(); //set to max degrees (default 180)servo.center(); //center servo to 90 degrees
  • Alternate framework: Noduino (http://semu.github.io/noduino/) – accessing arduino from web applications (HTML5 / JS / Node)Download NoduinoUploadDuino to board (the communications bridge)
  • Transcript of "JavaScript and Internet Controlled Electronics"

    1. 1. JavaScript & Internet Controlled Electronics Jonathan LeBlanc (@jcleblanc) Head of Global Developer Evangelism at PayPal
    2. 2. Early Hardware Days
    3. 3. Mainstreaming Effect
    4. 4. Arduino / Raspberry Pi / Leap Motion / etc. Hardware Toolbox Rasperry Pi Arduino
    5. 5. Internet Meets Arduino
    6. 6. Arduino Yún http://arduino.cc/en/Main/ArduinoYUN
    7. 7. Web Service Access with Temboo Python 2.7 included with OpenWRT Linino Integrated Wifi / Ethernet Arduino Yún Feature Set
    8. 8. Temboo Sketch Builder http://arduino.cc/en/main/software
    9. 9. Fetching the Arduino IDE http://arduino.cc/en/main/software
    10. 10. Enabling the Board in the IDE
    11. 11. Picking the Comms Port
    12. 12. JavaScript, Node & Arduino
    13. 13. Tessel JavaScript Microcontroller https://tessel.io/
    14. 14. Johnny 5 https://github.com/rwaldron/johnny-five
    15. 15. Standard Firmata How Johnny 5 Comms Work Arduino Microcontroller Node.js Script
    16. 16. What is Standard Firmata?
    17. 17. Priming the Board with Firmata
    18. 18. npm install johnny-five Installing Johnny 5
    19. 19. var five = require("johnny-five"), board = new five.Board(); board.on("ready", function() { //board is ready to use }); Enabling the Board
    20. 20. board.on("ready", function() { (new five.Led(13)).strobe(3000); }); Controlling an LED Light
    21. 21. board.on("ready", function() { servo = new five.Servo(10); servo.to( 90 ); this.wait(1000, function() { servo.sweep(); }); }); Controlling a Servo Motor
    22. 22. Noduino http://semu.github.io/noduino/
    23. 23. Where are we Heading?
    24. 24. Thank You! http://ppd.io/js-electronics Jonathan LeBlanc (@jcleblanc) Head of Global Developer Evangelism at PayPal
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×