Slide 1

Slide 1 text

NODE BOTS

Slide 2

Slide 2 text

NOT JUST CONTROLLED BY JS ACTUALLY RUNNING NODE!

Slide 3

Slide 3 text

RASPBERRY PI $35 Credit-card sized Runs Debian Has external programmable pins

Slide 4

Slide 4 text

RASPBERRY PI

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

RASPBERRY PI

Slide 7

Slide 7 text

NODE ON PI 2+ hours for compilation… But it works like a dream!

Slide 8

Slide 8 text

GPIO

Slide 9

Slide 9 text

THOSE EXTERNAL PINS ARE ENTICING! github.com/rakeshpai/pi-gpio v a r g p i o = r e q u i r e ( " p i - g p i o " ) ; g p i o . o p e n ( 1 6 , " o u t p u t " , f u n c t i o n ( e r r ) { g p i o . w r i t e ( 1 6 , 1 , f u n c t i o n ( ) { g p i o . c l o s e ( 1 6 ) ; } ) ; } ) ;

Slide 10

Slide 10 text

WELL, THAT WAS FUN How about running a motor off that?

Slide 11

Slide 11 text

L293D CC image by oomlout

Slide 12

Slide 12 text

PI-MOTOR github.com/rakeshpai/pi-motor v a r M o t o r = r e q u i r e ( " p i - m o t o r " ) ; v a r m = n e w M o t o r ( 7 , 1 1 ) ; m . c l o c k w i s e ( f u n c t i o n ( e r r ) { m . c o u n t e r c l o c k w i s e ( f u n c t i o n ( e r r ) { m . s t o p ( ) ; } ) ; } ) ;

Slide 13

Slide 13 text

SWEET! Let's add some more node-sauce How about running a web-server? And socket.io?

Slide 14

Slide 14 text

DEMO

Slide 15

Slide 15 text

BUT THE PI HAS LIMITATIONS Add an Arduino to the mix!

Slide 16

Slide 16 text

TALKING TO THE ARDUINO Small firmware on the Arduino in C Talk to it over USB using Huge thanks to Chris Williams! github.com/voodootikigod/node-serialport

Slide 17

Slide 17 text

NOW, LET'S ADD SOME MORE STUFF Ultra-sonic sensors Servo-motors …and SVG! And expose this to Node!

Slide 18

Slide 18 text

DEMO

Slide 19

Slide 19 text

THANKS! github.com/rakeshpai @rakesh314