Arduino & RUBY
Tomasz Warkocki
WHAT?
-
single-board microcontroller
-
open-source hardware
-
17 versions
Who? When? Why? For whom?
-
Interaction Design Institute Ivrea, Italy, 2005
-
Founders
-
Massimo Banzi
-
David Cuartielles
-
Tom Igoe
-
Gianluca Martino
-
David Mellis
-
Initially for designers and artists
Arduino Mega 2560
Microcontroller |
ATmega2560 |
Operating Voltage |
5V |
Input Voltage (safe) |
7-12V |
Input Voltage (limits) |
6-20V |
Digital I/O Pins |
54 (15 PWM) |
Analog Input Pins |
16 |
DC Current per I/O Pin |
40 mA |
Clock Speed |
16 MHz |
Input & Output
-
54 Digital pins
-
4 Serial ports (RX, TX + LEDs)
-
6 External interrupts pins
-
15 PWM pins - Pulse-width modulation pins
-
SPI (Serial Peripheral Interface) (4 pins)
-
LED (pin 13)
-
TWI / I2C pins (Two Wire Interface / Inter-Integrated Circuit) (2 pins)
-
16 Analog pins
-
10 bits of resolution (1024 different values)
-
default: 0 to 5V
PWM - Pulse-width modulation
Memory
Flash Memory (program space, non-volatile)
|
256 KB
|
SRAM (program variables, volatile)
|
8 KB
|
EEPROM (for programmers, non-volatile)
|
4 KB
|
Programming
- ATmega2560 preburned with a bootloader
- Arduino programming language (based on Wiring, C/C++)
- Arduino IDE (based on Processing)
-
Fritzing - documentation
ruby
firmata gem

dino gem
- $ gem install dino
- $ dino generate-sketch serial (ethernet)
- upload generated sketch
-
$ ruby led.rb
- unable to run on my board!
DINO GEM

rad gem
- gem install rad
- rad my_project
-
rake make:upload
- ruby 1.8.7 !
demo project with ir
DEMO
Arduino & RUBY Tomasz Warkocki