2015-03-11 18:13:53 +02:00
.. _framework_arduino:
Framework `` arduino ``
=====================
Arduino Framework allows writing cross-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences.
2015-03-16 17:30:23 +02:00
For more detailed information please visit `vendor site <http://arduino.cc/en/Reference/HomePage> `_ .
2015-03-11 18:13:53 +02:00
.. contents ::
2015-03-20 21:44:26 +02:00
Platforms
---------
.. list-table ::
:header-rows: 1
* - Name
- Description
* - :ref: `platform_atmelavr`
- Atmel AVR 8- and 32-bit MCUs deliver a unique combination of performance, power efficiency and design flexibility. Optimized to speed time to market-and easily adapt to new ones-they are based on the industrys most code-efficient architecture for C and assembly programming.
* - :ref: `platform_atmelsam`
- Atmel | SMART offers Flash- based ARM products based on the ARM Cortex-M0+, Cortex-M3 and Cortex-M4 architectures, ranging from 8KB to 2MB of Flash including a rich peripheral and feature mix.
* - :ref: `platform_teensy`
- Teensy is a complete USB-based microcontroller development system, in a very small footprint, capable of implementing many types of projects. All programming is done via the USB port. No special programmer is needed, only a standard "Mini-B" USB cable and a PC or Macintosh with a USB port.
* - :ref: `platform_timsp430`
- MSP430 microcontrollers (MCUs) from Texas Instruments (TI) are 16-bit, RISC-based, mixed-signal processors designed for ultra-low power. These MCUs offer the lowest power consumption and the perfect mix of integrated peripherals for thousands of applications.
2015-03-11 18:13:53 +02:00
Boards
------
.. note ::
2015-03-13 19:06:35 +02:00
* You can list pre-configured boards by :ref: `cmd_boards` command or
2015-03-16 23:08:59 +02:00
`PlatformIO Boards Explorer <http://platformio.org/#!/boards> `_
2015-03-11 18:13:53 +02:00
* For more detailed `` board `` information please scroll tables below by horizontal.
Adafruit
~~~~~~~~
.. list-table ::
:header-rows: 1
* - Type `` board ``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - `` flora8 ``
- `Adafruit Flora <http://www.adafruit.com/product/659> `_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - `` protrinket3 ``
2015-03-25 11:42:36 +02:00
- `Adafruit Pro Trinket 3V/12MHz (USB) <http://www.adafruit.com/products/2010> `_
2015-03-11 18:13:53 +02:00
- ATMEGA328P
- 12 MHz
- 32 Kb
- 2 Kb
* - `` protrinket3ftdi ``
2015-03-25 11:42:36 +02:00
- `Adafruit Pro Trinket 3V/12MHz (FTDI) <http://www.adafruit.com/products/2010> `_
2015-03-11 18:13:53 +02:00
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - `` protrinket5 ``
2015-03-25 11:42:36 +02:00
- `Adafruit Pro Trinket 5V/16MHz (USB) <http://www.adafruit.com/products/2000> `_
2015-03-11 18:13:53 +02:00
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - `` protrinket5ftdi ``
2015-03-25 11:42:36 +02:00
- `Adafruit Pro Trinket 5V/16MHz (USB) <http://www.adafruit.com/products/2000> `_
2015-03-11 18:13:53 +02:00
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - `` trinket3 ``
- `Adafruit Trinket 3V/8MHz <http://www.adafruit.com/products/1500> `_
- ATTINY85
- 8 MHz
- 8 Kb
- 0.5 Kb
* - `` trinket5 ``
- `Adafruit Trinket 5V/16MHz <http://www.adafruit.com/products/1501> `_
- ATTINY85
- 16 MHz
- 8 Kb
- 0.5 Kb
2015-03-11 19:32:53 +02:00
2015-03-11 18:13:53 +02:00
Arduino
~~~~~~~
.. list-table ::
:header-rows: 1
* - Type `` board ``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - `` LilyPadUSB ``
2015-03-25 11:42:36 +02:00
- `Arduino LilyPad USB <http://arduino.cc/en/Main/ArduinoBoardLilyPadUSB> `_
2015-03-11 18:13:53 +02:00
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - `` atmegangatmega168 ``
- `Arduino NG or older ATmega168 <http://arduino.cc/en/main/boards> `_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - `` atmegangatmega8 ``
- `Arduino NG or older ATmega8 <http://arduino.cc/en/main/boards> `_
- ATMEGA8
- 16 MHz
- 8 Kb
- 1 Kb
* - `` btatmega168 ``
- `Arduino BT ATmega168 <http://arduino.cc/en/main/boards> `_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - `` btatmega328 ``
- `Arduino BT ATmega328 <http://arduino.cc/en/main/boards> `_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - `` diecimilaatmega168 ``
- `Arduino Duemilanove or Diecimila ATmega168 <http://arduino.cc/en/Main/ArduinoBoardDiecimila> `_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - `` diecimilaatmega328 ``
- `Arduino Duemilanove or Diecimila ATmega328 <http://arduino.cc/en/Main/ArduinoBoardDiecimila> `_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - `` due ``
- `Arduino Due (Programming Port) <http://arduino.cc/en/Main/arduinoBoardDue> `_
- AT91SAM3X8E
- 84 MHz
- 512 Kb
- 32 Kb
* - `` dueUSB ``
- `Arduino Due (USB Native Port) <http://arduino.cc/en/Main/arduinoBoardDue> `_
- AT91SAM3X8E
- 84 MHz
- 512 Kb
- 32 Kb
* - `` esplora ``
- `Arduino Esplora <http://arduino.cc/en/Main/ArduinoBoardEsplora> `_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - `` ethernet ``
- `Arduino Ethernet <http://arduino.cc/en/Main/ArduinoBoardEthernet> `_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - `` fio ``
- `Arduino Fio <http://arduino.cc/en/Main/ArduinoBoardFio> `_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - `` leonardo ``
- `Arduino Leonardo <http://arduino.cc/en/Main/arduinoBoardLeonardo> `_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - `` lilypadatmega168 ``
2015-03-25 11:42:36 +02:00
- `Arduino LilyPad ATmega168 <http://arduino.cc/en/Main/ArduinoBoardLilyPad> `_
2015-03-11 18:13:53 +02:00
- ATMEGA168
- 8 MHz
- 16 Kb
- 1 Kb
* - `` lilypadatmega328 ``
2015-03-25 11:42:36 +02:00
- `Arduino LilyPad ATmega328 <http://arduino.cc/en/Main/ArduinoBoardLilyPad> `_
2015-03-11 18:13:53 +02:00
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - `` megaADK ``
- `Arduino Mega ADK <http://arduino.cc/en/Main/ArduinoBoardMegaADK> `_
- ATMEGA2560
- 16 MHz
- 256 Kb
- 8 Kb
* - `` megaatmega1280 ``
- `Arduino Mega or Mega 2560 ATmega1280 <http://arduino.cc/en/Main/arduinoBoardMega> `_
- ATMEGA1280
- 16 MHz
- 128 Kb
- 8 Kb
* - `` megaatmega2560 ``
- `Arduino Mega or Mega 2560 ATmega2560 (Mega 2560) <http://arduino.cc/en/Main/arduinoBoardMega2560> `_
- ATMEGA2560
- 16 MHz
- 256 Kb
- 8 Kb
* - `` micro ``
- `Arduino Micro <http://arduino.cc/en/Main/ArduinoBoardMicro> `_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - `` miniatmega168 ``
- `Arduino Mini ATmega168 <http://arduino.cc/en/Main/ArduinoBoardMini> `_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - `` miniatmega328 ``
- `Arduino Mini ATmega328 <http://arduino.cc/en/Main/ArduinoBoardMini> `_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - `` nanoatmega168 ``
- `Arduino Nano ATmega168 <http://arduino.cc/en/Main/ArduinoBoardNano> `_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - `` nanoatmega328 ``
- `Arduino Nano ATmega328 <http://arduino.cc/en/Main/ArduinoBoardNano> `_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - `` pro16MHzatmega168 ``
- `Arduino Pro or Pro Mini ATmega168 (5V, 16 MHz) <http://arduino.cc/en/Main/ArduinoBoardProMini> `_
- ATMEGA168
- 16 MHz
- 16 Kb
- 1 Kb
* - `` pro16MHzatmega328 ``
- `Arduino Pro or Pro Mini ATmega328 (5V, 16 MHz) <http://arduino.cc/en/Main/ArduinoBoardProMini> `_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - `` pro8MHzatmega168 ``
- `Arduino Pro or Pro Mini ATmega168 (3.3V, 8 MHz) <http://arduino.cc/en/Main/ArduinoBoardProMini> `_
- ATMEGA168
- 8 MHz
- 16 Kb
- 1 Kb
* - `` pro8MHzatmega328 ``
- `Arduino Pro or Pro Mini ATmega328 (3.3V, 8 MHz) <http://arduino.cc/en/Main/ArduinoBoardProMini> `_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - `` robotControl ``
- `Arduino Robot Control <http://arduino.cc/en/Main/Robot> `_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - `` robotMotor ``
- `Arduino Robot Motor <http://arduino.cc/en/Main/Robot> `_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - `` uno ``
- `Arduino Uno <http://arduino.cc/en/Main/ArduinoBoardUno> `_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - `` yun ``
- `Arduino Yun <http://arduino.cc/en/Main/ArduinoBoardYun> `_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
2015-03-11 19:32:53 +02:00
2015-03-11 18:13:53 +02:00
BitWizard
~~~~~~~~~
.. list-table ::
:header-rows: 1
* - Type `` board ``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - `` raspduino ``
2015-03-25 11:42:36 +02:00
- `BitWizard Raspduino <http://www.bitwizard.nl/wiki/index.php/Raspduino> `_
2015-03-11 18:13:53 +02:00
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
2015-03-11 19:32:53 +02:00
2015-03-11 18:13:53 +02:00
Digistump
~~~~~~~~~
.. list-table ::
:header-rows: 1
* - Type `` board ``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - `` digispark-pro ``
2015-03-25 11:42:36 +02:00
- `Digistump Digispark Pro (Default 16 MHz) <http://digistump.com/products/109> `_
2015-03-11 18:13:53 +02:00
- ATTINY167
- 16 MHz
- 16 Kb
- 0.5 Kb
* - `` digispark-pro32 ``
2015-03-25 11:42:36 +02:00
- `Digistump Digispark Pro (16 MHz) (32 byte buffer) <http://digistump.com/products/109> `_
2015-03-11 18:13:53 +02:00
- ATTINY167
- 16 MHz
- 16 Kb
- 0.5 Kb
* - `` digispark-pro64 ``
2015-03-25 11:42:36 +02:00
- `Digistump Digispark Pro (16 MHz) (64 byte buffer) <http://digistump.com/products/109> `_
2015-03-11 18:13:53 +02:00
- ATTINY167
- 16 MHz
- 16 Kb
- 0.5 Kb
* - `` digispark-tiny ``
2015-03-25 11:42:36 +02:00
- `Digistump Digispark (Default - 16 MHz) <http://digistump.com/products/1> `_
2015-03-11 18:13:53 +02:00
- ATTINY85
- 16 MHz
- 8 Kb
- 0.5 Kb
* - `` digix ``
- `Digistump DigiX <http://digistump.com/products/50> `_
- AT91SAM3X8E
- 84 MHz
- 512 Kb
- 28 Kb
2015-03-11 19:32:53 +02:00
2015-03-11 18:13:53 +02:00
Engduino
~~~~~~~~
.. list-table ::
:header-rows: 1
* - Type `` board ``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - `` engduinov1 ``
- `Engduino 1 <http://www.engduino.org> `_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - `` engduinov2 ``
- `Engduino 2 <http://www.engduino.org> `_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
* - `` engduinov3 ``
- `Engduino 3 <http://www.engduino.org> `_
- ATMEGA32U4
- 8 MHz
- 32 Kb
- 2.5 Kb
2015-03-11 19:32:53 +02:00
2015-03-11 18:13:53 +02:00
Microduino
~~~~~~~~~~
.. list-table ::
:header-rows: 1
* - Type `` board ``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - `` 1284p16m ``
- `Microduino Core+ (ATmega1284P@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core%2B> `_
- ATMEGA1284P
- 16 MHz
- 128 Kb
- 16 Kb
* - `` 1284p8m ``
- `Microduino Core+ (ATmega1284P@8M,3.3V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core%2B> `_
- ATMEGA1284P
- 8 MHz
- 128 Kb
- 16 Kb
* - `` 168pa16m ``
- `Microduino Core (Atmega168PA@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core> `_
- ATMEGA168P
- 16 MHz
- 16 Kb
- 1 Kb
* - `` 168pa8m ``
- `Microduino Core (Atmega168PA@8M,3.3V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core> `_
- ATMEGA168P
- 8 MHz
- 16 Kb
- 1 Kb
* - `` 328p16m ``
- `Microduino Core (Atmega328P@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core> `_
- ATMEGA328P
- 16 MHz
- 32 Kb
- 2 Kb
* - `` 328p8m ``
- `Microduino Core (Atmega328P@8M,3.3V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core> `_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - `` 32u416m ``
- `Microduino Core USB (ATmega32U4@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-CoreUSB> `_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - `` 644pa16m ``
- `Microduino Core+ (Atmega644PA@16M,5V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core%2B> `_
- ATMEGA644P
- 16 MHz
- 64 Kb
- 4 Kb
* - `` 644pa8m ``
- `Microduino Core+ (Atmega644PA@8M,3.3V) <https://www.microduino.cc/wiki/index.php?title=Microduino-Core%2B> `_
- ATMEGA644P
- 8 MHz
- 64 Kb
- 4 Kb
2015-03-11 19:32:53 +02:00
2015-03-20 21:44:26 +02:00
PanStamp
~~~~~~~~
.. list-table ::
:header-rows: 1
* - Type `` board ``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - `` panStampAVR ``
- `PanStamp AVR <http://www.panstamp.com/product/panstamp-avr/> `_
- ATMEGA328P
- 8 MHz
- 32 Kb
- 2 Kb
* - `` panStampNRG ``
- `PanStamp NRG 1.1 <http://www.panstamp.com/product/197/> `_
- CC430F5137
- 12 MHz
- 32 Kb
- 4 Kb
2015-03-11 18:13:53 +02:00
SainSmart
~~~~~~~~~
.. list-table ::
:header-rows: 1
* - Type `` board ``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - `` sainSmartDue ``
- `SainSmart Due (Programming Port) <http://www.sainsmart.com/arduino/control-boards/sainsmart-due-atmel-sam3x8e-arm-cortex-m3-board-black.html> `_
- AT91SAM3X8E
- 84 MHz
- 512 Kb
- 32 Kb
* - `` sainSmartDueUSB ``
- `SainSmart Due (USB Native Port) <http://www.sainsmart.com/arduino/control-boards/sainsmart-due-atmel-sam3x8e-arm-cortex-m3-board-black.html> `_
- AT91SAM3X8E
- 84 MHz
- 512 Kb
- 32 Kb
2015-03-11 19:32:53 +02:00
2015-03-11 18:13:53 +02:00
Teensy
~~~~~~
.. list-table ::
:header-rows: 1
* - Type `` board ``
- Name
- Microcontroller
- Frequency
- Flash
- RAM
* - `` teensy20 ``
- `Teensy 2.0 <https://www.pjrc.com/store/teensy.html> `_
- ATMEGA32U4
- 16 MHz
- 32 Kb
- 2.5 Kb
* - `` teensy20pp ``
- `Teensy++ 2.0 <https://www.pjrc.com/store/teensypp.html> `_
- AT90USB1286
- 16 MHz
- 128 Kb
- 8 Kb
* - `` teensy30 ``
- `Teensy 3.0 <https://www.pjrc.com/store/teensy3.html> `_
- MK20DX128
- 48 MHz
- 128 Kb
- 16 Kb
* - `` teensy31 ``
- `Teensy 3.1 <https://www.pjrc.com/store/teensy31.html> `_
- MK20DX256
- 72 MHz
- 256 Kb
- 64 Kb