Main.ArduinoBoardFio History

Hide minor edits - Show changes to markup

June 08, 2010, at 10:06 AM by Equipo Traduccion -
Changed lines 66-69 from:
  • AREF. Reference voltage for the analog inputs. Used with analogReference().

  • DTR. Bring this line LOW to reset the microcontroller. Typically used to add a reset button to shields which block the one on the board.
to:
  • AREF. Voltaje de referencia para las entradas analógicas. Se utiliza con analogReference().

  • DTR. Pon esta línea a nivel bajo (LOW) para reiniciar el microcontrolador. Normalmente se usa para añadir un botón de reinicio (reset) a las placas escudos (shields) que bloquean el de la placa.
Changed lines 72-81 from:
  • BAT + and BAT -. To be connected to a battery. Typically used when you don't want to connect a battery to the battery connector.

  • CHG 5V and CHG -. To be connected to charging terminals. Typically used to add an external connector for charging.

  • SW. Connected to the power switch on the board. Typically used to add an external power switch.

  • CTS. Connected to the #CTS/DIO7 pin of the XBee socket. Typically used to do sleep control for a XBee modem.

  • DTR. Connected to the #DTR/SLEEP_RQ/DI8 pin of the XBee socket. Typically used to do sleep control for a XBee modem.
to:
  • BAT + y BAT -. Para conectarlos a una batería. Normalmente se utilizan cuando no quieres conectar una batería al conector de batería.

  • CHG 5V y CHG -. Para ser conectados a los terminales de carga. Se usa normalmente para añadir un conector externo para la carga.

  • SW. Conectado al interruptor de alimentación de la placa. Normalmente utilizado para añadir un interruptor de alimentación externo.

  • CTS. Conectado al pin #CTS/DIO7 del zócalo XBee. Normalmente se utiliza para controlar el modo ahorro en el modem XBee.

  • DTR. Conectado al pin #DTR/SLEEP_RQ/DI8 del zócalo XBee. Se usa normalmente para controlar el modo ahorra del modem XBee.
June 08, 2010, at 09:49 AM by Equipo Traduccion -
Changed lines 52-53 from:
  • Interrupciones externas: 2 y 3. Estos pines se pueden configurar para disparar una interrupción por un valor bajo, flanco de subida o de bajada, o por un cambio en el valor. Consulta la función attachInterrupt() para más detalles.
to:
  • Interrupciones externas: 2 y 3. Estos pines se pueden configurar para activar (disparar) una interrupción por nivel bajo, flanco de subida o de bajada, o por cambio de valor. Consulta la función attachInterrupt() para más detalles.
Changed lines 56-65 from:
  • SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Estos pines soportan la comunicación SPI, la cual, although provided by the underlying hardware , actualmente esto no está incluido en el lenguaje Arduino.

  • LED: 13. There is a built-in LED connected to digital pin 13. When the pin is HIGH value, the LED is on, when the pin is LOW, it's off.

The Fio has 8 analog inputs, each of which provide 10 bits of resolution (i.e. 1024 different values). The analog inputs measure from ground to Vcc. Additionally, some pins have specialized functionality:

  • I2C: 4 (SDA) and 5 (SCL). Support I2C (TWI) communication using the Wire library.

There are couple of another pins on the board:

to:
  • SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Estos pines soportan la comunicación SPI, que, aunque es provista por el hardware subyacente, actualmente no está incluida en el lenguaje Arduino.

  • LED: 13. Hay un LED conectado en placa al pin digital 13. Cuando el pin tiene el valor HIGH, el LED se ilumina, cuando el pin tiene el valor LOW, se apaga.

El Arduino Fio tiene 8 entradas analógicas, cada una tiene 10 bits de resolución (es decir, 1024 valores diferentes). Las entradas analógicas miden la diferencia entre masa y Vcc. Adicionalmente, algunos pines tienen una funcionalidad especializada:

  • I2C: 4 (SDA) y 5 (SCL). Soporta la comunicación I2C (TWI) utilizando la librería Wire.

Hay un par de pines más en la placa:

Changed lines 70-71 from:

There are also 8 unsoldered holes on the board:

to:

También hay 8 orificios sin soldar en la placa:

June 08, 2010, at 09:17 AM by Equipo Traduccion -
Changed lines 6-7 from:

El Arduino Fio is una placa para microcontrolador basada en el ATmega328P (hoja de información) Funciona a 3.3V y 8 MHz. Tiene 14 pines de E/S digitales (de los cuales 6 pueden usarse como salidas PWM), 8 entradas analógicas, un resonator en placa, un botón de reinicio (reset), y agujeros para montar conectores de pines. Tiene conexiones para una batería de polímero de Litio e incluye un circuito de carga a través de USB. Un conector para módulos XBee está disponible debajo de la placa.

to:

El Arduino Fio is una placa para microcontrolador basada en el ATmega328P (hoja de información) Funciona a 3.3V y 8 MHz. Tiene 14 pines de E/S digitales (de los cuales 6 pueden usarse como salidas PWM), 8 entradas analógicas, un resonator en placa, un botón de reinicio (reset), y agujeros para montar conectores de pines. Tiene conexiones para una batería de polímero de Litio e incluye un circuito de carga a través de USB. En el reverso de la placa tiene disponible un zócalo para módulos XBee.

Changed lines 50-57 from:
  • Serial: RXI (D0) and TXO (D1). Used to receive (RX) and transmit (TX) TTL serial data. These pins are connected to the DOUT and DIN pins of the XBee modem socket.

  • External Interrupts: 2 and 3. These pins can be configured to trigger an interrupt on a low value, a rising or falling edge, or a change in value. See the attachInterrupt() function for details.

  • PWM: 3, 5, 6, 9, 10, and 11. Provide 8-bit PWM output with the analogWrite() function.

  • SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). These pins support SPI communication, which, although provided by the underlying hardware, is not currently included in the Arduino language.
to:
  • Serie: RXI (D0) y TXO (D1). Se utiliza para recibir (RX) y transmitir (TX) datos serie TTL . Estos se encuentran conectados a los pines DOUT y DIN del zócalo para módem XBee.

  • Interrupciones externas: 2 y 3. Estos pines se pueden configurar para disparar una interrupción por un valor bajo, flanco de subida o de bajada, o por un cambio en el valor. Consulta la función attachInterrupt() para más detalles.

  • PWM: 3, 5, 6, 9, 10, and 11. Proporciona una salida PWM de 8 bits con la función analogWrite().

  • SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Estos pines soportan la comunicación SPI, la cual, although provided by the underlying hardware , actualmente esto no está incluido en el lenguaje Arduino.
June 08, 2010, at 05:37 AM by Equipo Traduccion -
Changed lines 98-100 from:

Debido a que la comunica por radio XBee Fio, los siguientes consejos de redacción de Sketch le ayudará a evitar errores inesperados.

Because the Fio communicates over XBee radios, the following Sketch-writing tips will help you avoid unexpected errors.

to:

Debido a que la Fio se comunica por radios XBee, los siguientes consejos de redacción de de sketches te ayudarán a evitar errores inesperados.

June 08, 2010, at 05:34 AM by Equipo Traduccion -
Changed lines 47-48 from:

Each of the 14 digital pins on the Fio can be used as an input or output, using pinMode(), digitalWrite(), and digitalRead() functions. They operate at 3.3 volts. Each pin can provide or receive a maximum of 40 mA and has an internal pull-up resistor (disconnected by default) of 20-50 kOhms. In addition, some pins have specialized functions:

to:

Cada uno de los 14 pines digital en el Fio se puede utilizar como entrada o salida, usando las funciones pinMode (), digitalWrite (), y digitalRead (). Estos pines operan a 3,3 voltios. Cada pin puede proporcionar o recibir un máximo de 40 mA y tiene una resistencia interna de pull-up (desconectado por defecto) de 20-50 kOhms. Además, algunos pines tienen funciones especializadas:

Changed lines 82-83 from:
to:
Changed lines 85-91 from:

The Arduino Fio has a number of facilities for communicating with a computer, another Arduino, or other microcontrollers. The ATmega328P provides UART TTL serial communication, which is available on digital pins 0 (RX) and 1 (TX). The Arduino software includes a serial monitor which allows simple textual data to be sent to and from the Arduino Fio board via an external serial connection. We recommend using an FTDI Basic or FTDI cable. The on board mini-USB connector is only used for charging and does not allow for serial communication.

A SoftwareSerial library allows for serial communication on any of the Fio's digital pins.

The ATmega328P also supports I2C (TWI) and SPI communication. The Arduino software includes a Wire library to simplify use of the I2C bus; see the reference for details. To use the SPI communication, please see the ATmega328P datasheet.

to:

La FIO Arduino tiene una serie de facilidades para comunicarse con un ordenador, otro Arduino, u otros microcontroladores. El ATmega328P proporciona comunicación serie TTL UART, que está disponible en los pines digitales 0 (RX) y 1 (TX). El software Arduino incluye un monitor serie que permite que simples datos de texto sean enviados hacia y desde la placa Arduino Fio a través de una conexión serie externa. Recomendamos el uso de un FTDI Basic o un cable FTDI. El conector mini-USB en placa solamente se utiliza para la carga y no permiten la comunicación serie.

Una librería SoftwareSerial permite la comunicación de serie en cualquiera de los pines digitales de la FIO.

El ATmega328P también es compatible con I2C (TWI) y la comunicación SPI. El software de Arduino incluye la librería Wire para simplificar el uso del bus I2C; léete , su referencia para más detalles. Para utilizar la comunicación SPI, por favor consulta la hoja de referencia (datasheet) del ATmega328P.

Changed lines 92-93 from:

The dimensions of the Fio PCB are approximately 1.1" x 2.6".

to:

Las dimensiones de la PCB Fio son de 1,1 "x 2,6" aproximadamente.

Changed lines 95-96 from:

The Arduino Fio can be programmed wirelessly over its XBee radio. See the Arduino Fio Programming page for the details.

to:

La FIO Arduino puede ser programado de forma inalámbrica a través de su radio XBee. Consulta la página de programación de Arduino Fio para más los detalles.

Debido a que la comunica por radio XBee Fio, los siguientes consejos de redacción de Sketch le ayudará a evitar errores inesperados.

June 08, 2010, at 05:14 AM by Equipo Traduccion -
Changed lines 43-44 from:

The ATmega328P has 32 KB of flash memory for storing code (of which 2 KB is used for the bootloader). It has 2 KB of SRAM and 1 KB of EEPROM (which can be read and written with the EEPROM library).

to:

El ATmega328P cuenta con 32 KB de memoria flash para almacenar el código (de los cuales 2 KB se utilizan para el gestor de arranque). Dispone de 2 KB de SRAM y 1 KB de memoria EEPROM (que puede ser leído y escrito con la librería EEPROM).

June 08, 2010, at 05:11 AM by Equipo Traduccion -
Changed lines 32-35 from:

The Arduino Fio can be powered with an FTDI cable or breakout board connected to its six pin headers (as marked on the bottom side), or with a regulated 3.3V supply on the 3V3 pin or a Lithium Polymer battery on the BAT pins.

Los pines de alimentación son como sigue:

to:

El Arduino Fio puede alimentarse con un cable FTDI o una tarjeta adaptadora adicional conectada a sus seis conectores de pines (marcados en el reverso de la placa), o con una fuente de alimentación regulada a 3.3V al pin 3V3 o una batería de polímero de Litio en los pines BAT.

Los pines de alimentación los siguientes:

Changed lines 38-41 from:
  • 3V3. The regulated 3.3 volt supply pins.

  • GND. Ground pins.
to:
  • 3V3. Pines de alimentación regulada a 3.3V.

  • GND. Pines de masa.
June 08, 2010, at 05:04 AM by Equipo Traduccion -
Changed lines 13-16 from:
to:
Changed lines 19-26 from:
MicrocontrollerATmega328P
Operating Voltage3.3V
Input Voltage3.35 -12 V
Input Voltage for Charge3.7 - 7 V
Digital I/O Pins14 (of which 6 provide PWM output)
Analog Input Pins8
DC Current per I/O Pin40 mA
Flash Memory32 KB (of which 2 KB used by bootloader)
to:
MicrocontroladorATmega328P
Voltaje de trabajo3.3V
Voltaje de Entrada3.35 -12 V
Voltaje de Entrada en Carga3.7 - 7 V
Pines E/S Digital14 (of which 6 provide PWM output)
Pines de Entrada Analógica8
Corriente DC por pin E/S40 mA
Memoria Flash32 KB (of which 2 KB used by bootloader)
Changed lines 29-30 from:
Clock Speed8 MHz
to:
Frecuencia de Reloj8 MHz
June 08, 2010, at 04:07 AM by Equipo Traduccion -
Changed line 12 from:

Schematic & Reference Design

to:

Esquema y Diseño de Referencia

Changed line 17 from:

Summary

to:

Resumen

Changed line 31 from:

Power

to:

Alimentación

Changed lines 34-37 from:

The power pins are as follows:

  • BAT. For supplying a Lithium Polymer battery to the board.
to:

Los pines de alimentación son como sigue:

  • BAT. Para alimentar la placa con una batería de polímero de Litio.
Changed line 42 from:

Memory

to:

Memoria

Changed line 45 from:

Input and Output

to:

Entrada y Salida

Changed line 82 from:

Communication

to:

Comunicación

Changed line 90 from:

Physical Characteristics

to:

Características Físicas

Changed line 93 from:

Related Pages

to:

Páginas Relacionadas

June 08, 2010, at 04:02 AM by Equipo Traduccion -
Changed lines 6-11 from:

El Arduino Fio is una placa para microcontrolador basada en el ATmega328P (hoja de información) Funciona a 3.3V y 8 MHz. Tiene 14 pines de E/S digitales (de los cuales 6 pueden usarse como salidas PWM), 8 entradas analógicas, un zumbador en placa, un botón de reinicio (reset), y agujeros para montar conectores de pines. Tiene conexiones para una batería de polímero de Litio e incluye un circuito de carga a través de USB. Un conector para módulos XBee está disponible debajo de la placa.

The Arduino Fio is intended for wireless applications. The user can upload sketches with an a FTDI cable or Sparkfun breakout board. Additionally, by using a modified USB-to-XBee adaptor such as XBee Explorer USB, the user can upload sketches wirelessly. The board comes without pre-mounted headers, allowing the use of various types of connectors or direct soldering of wires.

The Arduino Fio was designed by Shigeru Kobayashi and SparkFun Electronics, and manufactured by SparkFun Electronics.

to:

El Arduino Fio is una placa para microcontrolador basada en el ATmega328P (hoja de información) Funciona a 3.3V y 8 MHz. Tiene 14 pines de E/S digitales (de los cuales 6 pueden usarse como salidas PWM), 8 entradas analógicas, un resonator en placa, un botón de reinicio (reset), y agujeros para montar conectores de pines. Tiene conexiones para una batería de polímero de Litio e incluye un circuito de carga a través de USB. Un conector para módulos XBee está disponible debajo de la placa.

El Arduino FIO está diseñado para aplicaciones inalámbricas. El usuario puede subir sus sketches con un cable FTDI o una placa adicional adaptadora Sparkfun. Además, si utiliza un adaptador de USB a XBee modificado , como el USB Explorador de XBee, el usuario puede subir sketches de forma inalámbrica. La tarjeta viene sin conectores pre-montados, permitiendo el uso de diversos tipos de conectores o la soldadura directa de los cables.

El Arduino FIO ha sido diseñado por Shigeru Kobayashi y SparkFun Electronics, y fabricado por SparkFun Electronics.

June 08, 2010, at 03:47 AM by Equipo Traduccion -
Changed lines 5-7 from:

Overview

The Arduino Fio is a microcontroller board based on the ATmega328P (datasheet) runs at 3.3V and 8 MHz. It has 14 digital input/output pins (of which 6 can be used as PWM outputs), 8 analog inputs, an on-board resonator, a reset button, and holes for mounting pin headers. It has connections for a Lithium Polymer battery and includes a charge circuit over USB. An XBee socket is available on the bottom of the board.

to:

Información General

El Arduino Fio is una placa para microcontrolador basada en el ATmega328P (hoja de información) Funciona a 3.3V y 8 MHz. Tiene 14 pines de E/S digitales (de los cuales 6 pueden usarse como salidas PWM), 8 entradas analógicas, un zumbador en placa, un botón de reinicio (reset), y agujeros para montar conectores de pines. Tiene conexiones para una batería de polímero de Litio e incluye un circuito de carga a través de USB. Un conector para módulos XBee está disponible debajo de la placa.

March 30, 2010, at 06:02 AM by Tom Igoe -
Changed lines 87-88 from:

Because the Fio communicates over XBee radios, the following Sketch-writing tips will help you avoid unexpected errors.

to:
Changed lines 94-96 from:

Arduino Fio Programming

to:

The Arduino Fio can be programmed wirelessly over its XBee radio. See the Arduino Fio Programming page for the details.

Because the Fio communicates over XBee radios, the following Sketch-writing tips will help you avoid unexpected errors.

March 30, 2010, at 06:00 AM by Tom Igoe -
Added lines 87-88:

Because the Fio communicates over XBee radios, the following Sketch-writing tips will help you avoid unexpected errors.

March 19, 2010, at 05:55 PM by Shigeru Kobayashi -
Changed lines 90-93 from:

The dimensions of the Fio PCB are approximately 1.1" x 2.6".

to:

The dimensions of the Fio PCB are approximately 1.1" x 2.6".

Related Pages

Arduino Fio Programming

March 18, 2010, at 09:30 PM by Shigeru Kobayashi -
Changed lines 72-73 from:
  • CHG 5V and CHG -.' To be connected to charging terminals. Typically used to add an external connector for charging.
to:
  • CHG 5V and CHG -. To be connected to charging terminals. Typically used to add an external connector for charging.
March 18, 2010, at 09:29 PM by Shigeru Kobayashi -
Changed lines 13-14 from:
to:
March 18, 2010, at 05:00 AM by Shigeru Kobayashi -
Deleted lines 88-128:

Wired Programming

The Arduino Fio can be programmed with the Arduino software (download). For details, see the reference and tutorials.

The ATmega328P on the Arduino Fio comes preburned with a bootloader that allows you to upload new code to it without the use of an external hardware programmer. It communicates using the original STK500 protocol (reference, C header files).

You can also bypass the bootloader and program the ATmega328P with an external programmer; see these instructions for details.

Wireless Programming

You can upload sketches wirelessly. Make sure you are using a Series 1 (not 2 or 2.5) XBee module if you want to do wireless programming. Series 2 modules do not allow for automatic IO Line Passing (this is required for toggling the reset pin when programming). Also make sure that you have a recent version of the firmware (10A5 or later). If you need to upgrade your firmware, use X-CTU (Windows only, unfortunately). If you confirmed these points, please follow the following steps.

Modifying the XBee-to-USB adaptor

If you are using a XBee Explorer USB (SparkFun Electronics) or XBee starter kit (Adafruit Industries), solder in a tiny jumper between the RTS pin and D3 as following picture:

http://farm4.static.flickr.com/3307/3214685994_3d3fd6d333_m.jpg

Modifying the serial port settings (Windows only)

You have to make a slight change to the driver preferences. In the Device Manager, select the USB COM port. Then right click and select Properties. Click on the Port Settings tab, and click on Advanced..., then make Set RTS On Close is selected and click OK to apply settings.

How to configure XBee modems

On Windows and Mac OS X, you can configure XBee modems with XBeeConfigTool.

  1. Choose a proper serial port
  2. Choose a proper mode (Coordinator or End Devices)
  3. Choose a proper baud rate (57600bps)
  4. Set a proper PAN ID (e.g. 1234, should be same on both)
  5. Set a proper MY ID (e.g. 1, for end devices only)
  6. Press the Configure button to configure the XBee modem

Uploading sketches from an Arduino IDE to a FIO board

  1. Choose Tools/Board/Arduino Pro or Pro Mini (8MHz)
  2. Choose a proper serial port in Tools/Serial Port
  3. Write a sketch and press the Upload button

Automatic (Software) Reset

Rather then requiring a physical press of the reset button before an upload, the Arduino Fio is designed in a way that allows it to be reset by software running on a connected computer. One of the pins on the six-pin header is connected to the reset line of the ATmega328P via a 100 nanofarad capacitor. This pin connects to one of the hardware flow control lines of the USB-to-serial convertor connected to the header: RTS when using an FTDI cable, DTR when using the Sparkfun breakout board. When this line is asserted (taken low), the reset line drops long enough to reset the chip. The Arduino software uses this capability to allow you to upload code by simply pressing the upload button in the Arduino environment. This means that the bootloader can have a shorter timeout, as the lowering of the reset line can be well-coordinated with the start of the upload.

This setup has other implications. When the Fio is connected to either a computer running Mac OS X or Linux, it resets each time a connection is made to it from software (via USB). For the following half-second or so, the bootloader is running on the Pro. While it is programmed to ignore malformed data (i.e. anything besides an upload of new code), it will intercept the first few bytes of data sent to the board after a connection is opened. If a sketch running on the board receives one-time configuration or other data when it first starts, make sure that the software with which it communicates waits a second after opening the connection and before sending this data.

March 17, 2010, at 12:43 AM by Shigeru Kobayashi -
Changed lines 117-119 from:
to:
March 17, 2010, at 12:39 AM by Shigeru Kobayashi -
Added lines 1-131:

Arduino Fio

Overview

The Arduino Fio is a microcontroller board based on the ATmega328P (datasheet) runs at 3.3V and 8 MHz. It has 14 digital input/output pins (of which 6 can be used as PWM outputs), 8 analog inputs, an on-board resonator, a reset button, and holes for mounting pin headers. It has connections for a Lithium Polymer battery and includes a charge circuit over USB. An XBee socket is available on the bottom of the board.

The Arduino Fio is intended for wireless applications. The user can upload sketches with an a FTDI cable or Sparkfun breakout board. Additionally, by using a modified USB-to-XBee adaptor such as XBee Explorer USB, the user can upload sketches wirelessly. The board comes without pre-mounted headers, allowing the use of various types of connectors or direct soldering of wires.

The Arduino Fio was designed by Shigeru Kobayashi and SparkFun Electronics, and manufactured by SparkFun Electronics.

Schematic & Reference Design

EAGLE files: arduino-fio-reference-design.zip

Schematic: Arduino-Fio-schematic.pdf

Summary

MicrocontrollerATmega328P
Operating Voltage3.3V
Input Voltage3.35 -12 V
Input Voltage for Charge3.7 - 7 V
Digital I/O Pins14 (of which 6 provide PWM output)
Analog Input Pins8
DC Current per I/O Pin40 mA
Flash Memory32 KB (of which 2 KB used by bootloader)
SRAM2 KB
EEPROM1 KB
Clock Speed8 MHz

Power

The Arduino Fio can be powered with an FTDI cable or breakout board connected to its six pin headers (as marked on the bottom side), or with a regulated 3.3V supply on the 3V3 pin or a Lithium Polymer battery on the BAT pins.

The power pins are as follows:

  • BAT. For supplying a Lithium Polymer battery to the board.

  • 3V3. The regulated 3.3 volt supply pins.

  • GND. Ground pins.

Memory

The ATmega328P has 32 KB of flash memory for storing code (of which 2 KB is used for the bootloader). It has 2 KB of SRAM and 1 KB of EEPROM (which can be read and written with the EEPROM library).

Input and Output

Each of the 14 digital pins on the Fio can be used as an input or output, using pinMode(), digitalWrite(), and digitalRead() functions. They operate at 3.3 volts. Each pin can provide or receive a maximum of 40 mA and has an internal pull-up resistor (disconnected by default) of 20-50 kOhms. In addition, some pins have specialized functions:

  • Serial: RXI (D0) and TXO (D1). Used to receive (RX) and transmit (TX) TTL serial data. These pins are connected to the DOUT and DIN pins of the XBee modem socket.

  • External Interrupts: 2 and 3. These pins can be configured to trigger an interrupt on a low value, a rising or falling edge, or a change in value. See the attachInterrupt() function for details.

  • PWM: 3, 5, 6, 9, 10, and 11. Provide 8-bit PWM output with the analogWrite() function.

  • SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). These pins support SPI communication, which, although provided by the underlying hardware, is not currently included in the Arduino language.

  • LED: 13. There is a built-in LED connected to digital pin 13. When the pin is HIGH value, the LED is on, when the pin is LOW, it's off.

The Fio has 8 analog inputs, each of which provide 10 bits of resolution (i.e. 1024 different values). The analog inputs measure from ground to Vcc. Additionally, some pins have specialized functionality:

  • I2C: 4 (SDA) and 5 (SCL). Support I2C (TWI) communication using the Wire library.

There are couple of another pins on the board:

  • AREF. Reference voltage for the analog inputs. Used with analogReference().

  • DTR. Bring this line LOW to reset the microcontroller. Typically used to add a reset button to shields which block the one on the board.

There are also 8 unsoldered holes on the board:

  • BAT + and BAT -. To be connected to a battery. Typically used when you don't want to connect a battery to the battery connector.

  • CHG 5V and CHG -.' To be connected to charging terminals. Typically used to add an external connector for charging.

  • SW. Connected to the power switch on the board. Typically used to add an external power switch.

  • CTS. Connected to the #CTS/DIO7 pin of the XBee socket. Typically used to do sleep control for a XBee modem.

  • DTR. Connected to the #DTR/SLEEP_RQ/DI8 pin of the XBee socket. Typically used to do sleep control for a XBee modem.

See also the mapping between Arduino pins and ATmega328P ports.

Communication

The Arduino Fio has a number of facilities for communicating with a computer, another Arduino, or other microcontrollers. The ATmega328P provides UART TTL serial communication, which is available on digital pins 0 (RX) and 1 (TX). The Arduino software includes a serial monitor which allows simple textual data to be sent to and from the Arduino Fio board via an external serial connection. We recommend using an FTDI Basic or FTDI cable. The on board mini-USB connector is only used for charging and does not allow for serial communication.

A SoftwareSerial library allows for serial communication on any of the Fio's digital pins.

The ATmega328P also supports I2C (TWI) and SPI communication. The Arduino software includes a Wire library to simplify use of the I2C bus; see the reference for details. To use the SPI communication, please see the ATmega328P datasheet.

Wired Programming

The Arduino Fio can be programmed with the Arduino software (download). For details, see the reference and tutorials.

The ATmega328P on the Arduino Fio comes preburned with a bootloader that allows you to upload new code to it without the use of an external hardware programmer. It communicates using the original STK500 protocol (reference, C header files).

You can also bypass the bootloader and program the ATmega328P with an external programmer; see these instructions for details.

Wireless Programming

You can upload sketches wirelessly. Make sure you are using a Series 1 (not 2 or 2.5) XBee module if you want to do wireless programming. Series 2 modules do not allow for automatic IO Line Passing (this is required for toggling the reset pin when programming). Also make sure that you have a recent version of the firmware (10A5 or later). If you need to upgrade your firmware, use X-CTU (Windows only, unfortunately). If you confirmed these points, please follow the following steps.

Modifying the XBee-to-USB adaptor

If you are using a XBee Explorer USB (SparkFun Electronics) or XBee starter kit (Adafruit Industries), solder in a tiny jumper between the RTS pin and D3 as following picture:

http://farm4.static.flickr.com/3307/3214685994_3d3fd6d333_m.jpg

Modifying the serial port settings (Windows only)

You have to make a slight change to the driver preferences. In the Device Manager, select the USB COM port. Then right click and select Properties. Click on the Port Settings tab, and click on Advanced..., then make Set RTS On Close is selected and click OK to apply settings.

How to configure XBee modems

On Windows and Mac OS X, you can configure XBee modems with XBeeConfigTool.

  1. Choose a proper serial port
  2. Choose a proper mode (Coordinator or End Devices)
  3. Choose a proper baud rate (57600bps)
  4. Set a proper PAN ID (e.g. 1234, should be same on both)
  5. Set a proper MY ID (e.g. 1, for end devices only)
  6. Press the Configure button to configure the XBee modem

Uploading sketches from an Arduino IDE to a FIO board

  1. Choose Tools/Board/Arduino Pro or Pro Mini (8MHz)
  2. Choose a proper serial port in Tools/Serial Port
  3. Write a sketch and press the Upload button

Automatic (Software) Reset

Rather then requiring a physical press of the reset button before an upload, the Arduino Fio is designed in a way that allows it to be reset by software running on a connected computer. One of the pins on the six-pin header is connected to the reset line of the ATmega328P via a 100 nanofarad capacitor. This pin connects to one of the hardware flow control lines of the USB-to-serial convertor connected to the header: RTS when using an FTDI cable, DTR when using the Sparkfun breakout board. When this line is asserted (taken low), the reset line drops long enough to reset the chip. The Arduino software uses this capability to allow you to upload code by simply pressing the upload button in the Arduino environment. This means that the bootloader can have a shorter timeout, as the lowering of the reset line can be well-coordinated with the start of the upload.

This setup has other implications. When the Fio is connected to either a computer running Mac OS X or Linux, it resets each time a connection is made to it from software (via USB). For the following half-second or so, the bootloader is running on the Pro. While it is programmed to ignore malformed data (i.e. anything besides an upload of new code), it will intercept the first few bytes of data sent to the board after a connection is opened. If a sketch running on the board receives one-time configuration or other data when it first starts, make sure that the software with which it communicates waits a second after opening the connection and before sending this data.

Physical Characteristics

The dimensions of the Fio PCB are approximately 1.1" x 2.6".

Share