putting your device in a browser or on the web

Post on 28-Jan-2015

106 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Part of the Linux Conference Australia 2010 Arduino mini conference. Explains the various ways you can connect arduinos to the web and the internet.

TRANSCRIPT

Justin Mclean

Web: http://www.classsoftware.com.auMail: justin@classsoftware.com.auTwitter: justinmclean

Arduino MiniconfPutting your device in a browser or on the web

Monday, 18 January 2010

• Developing and creating web applications for 15 years

• Programming for 25 years

• Developer and trainer in Flex and ColdFusion

• Based in Sydney Australia

Who am I?

Monday, 18 January 2010

Overview of the Arduino Platform

Arduino

Monday, 18 January 2010

• Code in a C like high level language

• Inbuilt functions to read and set digital and analog inputs and outputs

• Includes libraries to perform common hardware or software tasks

Arduino Code

Monday, 18 January 2010

Arduino IDE

Monday, 18 January 2010

Led Shield Demo

Monday, 18 January 2010

• Debugging can be hard

• Memory, power and speed limits

• Helps to have a little electronic knowledge

Issues

Monday, 18 January 2010

How Arduinos can communicate with the outside world.

Connecting Arduinos to the Web

Monday, 18 January 2010

Connection Methods• Direct to computer

• Wireless (XBee modems)

• Ethernet or WiFi

• “The Cloud”

Monday, 18 January 2010

Supported Languages• Flash and Flex

• Processing

• Python

• Ruby

• Java

• C, C++, C# and Objective C

• .NET

Monday, 18 January 2010

How to communicate with Arduinos via a computer

Direct Connection

Monday, 18 January 2010

• Most languages can’t talk USB

• Solution: Socket to USB proxy

Direct Communication

Monday, 18 January 2010

• Code Library

• Proxy to USB

• Program on arduino to USB

Layers of Communication

Monday, 18 January 2010

• Standard Arduino library

• Simple binary protocol

• Based on MIDI

• Easy to extend

Firmata Protocal

Monday, 18 January 2010

USB Proxy FirmataLibrary

Application Code Arduino

USBCable

TCP/IPSocket

Computer Arduino

Function Calls and Events

Code

Connection Diagram

Monday, 18 January 2010

Firmata Demo

Monday, 18 January 2010

• Works best with a persistent connection

• Otherwise startup time and auto reset may be issues

• Proxy must be running on computer the Arduino is connected to

Issues

Monday, 18 January 2010

Using Arduino Ethernet Shields

Ethernet

Monday, 18 January 2010

• Allow direct internet connection

• No computer needed

• Can act as web server or client

• Shields need a little configuration

Ethernet Shields

Monday, 18 January 2010

Ethernet Shields

Monday, 18 January 2010

• Web server code

• Easy to modify

Ethernet Arduino Code

Monday, 18 January 2010

Ethernet Demo

Monday, 18 January 2010

An easier way to connect Arduinos

Pachube

Monday, 18 January 2010

• Store and share and access realtime sensor data

• Simple and secure

• API to interact with all data and services

• Graphs and maps

Pachube

Monday, 18 January 2010

Pachube

Monday, 18 January 2010

• Runs on Arduino with an ethernet shield

• Sends values to Pachube

• Request values via Pachube

Pachube Arduino Code

Monday, 18 January 2010

• Communicates over HTTP

• Plain text (csv), XML or Jason

• REST based

• Large base of supported languages

Pachube API

Monday, 18 January 2010

• Pachube can call an URL on value change

• The URL can be a dynamic

Pachube Triggers

Monday, 18 January 2010

• Expose yourself to new ideas and new ways of solving problems

• Involves interaction with the real world

• Encourages creativity

• Makes you a better programmer

Why do this?

Monday, 18 January 2010

It’s Fun!

Monday, 18 January 2010

List of useful hardware and software sites

Useful Sites

Monday, 18 January 2010

• Arduino http://www.arduino.cc for software, user forum and playground

• Ethernet Shields http://arduino.cc/en/Reference/Ethernet

• Pachhub http://www.pachube.com/

Software Sites

Monday, 18 January 2010

• Mind Kits (NZ) http://www.mindkits.co.nz/

• Spark Fun (US) http://www.sparkfun.com/

• Adafruit Industries (US) http://www.adafruit.com/

• Electronic Goldmine (US) http://www.goldmine-elec.com/

Hardware Sites

Monday, 18 January 2010

• Lady Ada http://www.ladyada.net/

• Evil Mad Scientist http://www.evilmadscientist.com/

• NY Resistor http://www.nycresistor.com/

• Make Zine http://makezine.com/

Other Sites

Monday, 18 January 2010

top related