Main.ArduinoWirelessProtoShield History

Hide minor edits - Show changes to output

March 27, 2013, at 09:29 AM by Roberto Guido - minor typos and grammar corrections. Thanks to Jay Murphy for help
Changed lines 20-21 from:
An on-board swith allows the wireless module to communicate with the USB-to-serial converter or with the microntroller.
to:
An on-board switch allows the wireless module to communicate with the USB-to-serial converter or with the microcontroller.
Changed lines 52-53 from:
The Wireless Proto shield can be used with different modules with the same footprint as the XBee modules. The instructions below are for the '''XBee 802.15.4 modules''' (sometimes called "Series 1" to distinguish them from the Series 2 modules, although "Series 1" doesn't appear in the official name or product description) and also for the '''XBee ZNet 2.5''' or '''XBee ZB''' modules, both known as "Series 2" modules. All the modules, basically have the same type of configuration parameters, but differ by the function that they implement and the topologies of networks that they can create. Can communicate with each other only modules of the same family.
to:
The Wireless Proto shield can be used with different modules with the same footprint as the XBee modules. The instructions below are for the '''XBee 802.15.4 modules''' (sometimes called "Series 1" to distinguish them from the Series 2 modules, although "Series 1" doesn't appear in the official name or product description) and also for the '''XBee ZNet 2.5''' or '''XBee ZB''' modules, both known as "Series 2" modules. All the modules, basically have the same type of configuration parameters, but differ by the function that they implement and the topologies of networks that they can create. Only modules of the same family can communicate with each other.
Changed lines 62-63 from:
For the "Series 2" modules you must chose which firmware put on the module to give it Coordinator, Router or End Device functionality. Series 2 use only serial low (@@SL@@) and serial high (@@SH@@) for addressing.
to:
For the "Series 2" modules you must chose which firmware to put on the module to give it Coordinator, Router or End Device functionality. Series 2 use only serial low (@@SL@@) and serial high (@@SH@@) for addressing.
November 23, 2012, at 06:05 PM by Roberto Guido - added comments box on bottom
Added lines 127-128:

(:div id='commentsbox':)
June 02, 2012, at 12:59 PM by Federico -
Changed line 10 from:
(:cell:) [[http://store.arduino.cc | Attach:buttonStore.jpg ]]
to:
(:cell:) [[http://store.arduino.cc/ww/index.php?main_page=product_info&cPath=11_5&products_id=145 | Attach:buttonStore.jpg ]]
May 22, 2012, at 10:49 AM by Federico -
Changed lines 25-28 from:
EAGLE files: [[Attach:arduino_WirelessShield_SD_v3.zip | arduino_WirelessShield_SD_v3-reference-design.zip]]

Schematic: [[Attach:arduino_WirelessShield_SD_v3-schematic.pdf | arduino_WirelessShield_SD_v3-schematic.pdf]]
to:
EAGLE files: [[Attach:arduino_WirelessShield_Proto_v3.zip | arduino_WirelessShield_Proto_v3-reference-design.zip]]

Schematic: [[Attach:arduino_WirelessShield_Proto_v3-schematic.pdf | arduino_WirelessShield_Proto_v3-schematic.pdf]]
March 12, 2012, at 09:22 AM by Federico -
Changed lines 16-17 from:
The Wireless Proto shield allows an Arduino board to communicate wirelessly using a wireless module. It is based on the [[http://www.digi.com/products/wireless-wired-embedded-solutions/zigbee-rf-modules/zigbee-mesh-module/xbee-zb-module | Xbee modules from Digi]], but can use any module with the same footprint. The module can communicate up to 100 feet indoors or 300 feet outdoors (with line-of-sight). It can be used as a serial/usb replacement or you can put it into a command mode and configure it for a variety of broadcast and mesh networking options. The shields breaks out each of the Xbee's pins to a through-hole solder pad.
to:
The Wireless Proto shield allows an Arduino board to communicate wirelessly using a wireless module. It is based on the [[http://www.digi.com/products/wireless-wired-embedded-solutions/zigbee-rf-modules/zigbee-mesh-module/xbee-zb-module | Xbee modules from Digi]], but can use any module with the same footprint. The module can communicate up to 100 feet indoors or 300 feet outdoors (with line-of-sight). It can be used as a serial/usb replacement or you can put it into a command mode and configure it for a variety of broadcast and mesh networking options. The shields breaks out each of the Xbee's pins to a through-hole solder pad.
Changed lines 20-21 from:
Also on board is a switch allowing for control via USB or the microcontroller.
to:
An on-board swith allows the wireless module to communicate with the USB-to-serial converter or with the microntroller.
Changed lines 31-32 from:
The Wireless Proto shield has an onboard switch labelled Micro and USB. This determine how the Xbee's serial communication connects to the serial communication between the microcontroller (ATmega8 or ATmega168) and USB-to-serial chip on the Arduino board.
to:
The Wireless Proto shield has an on-board switch labelled Serial Selection. It determines how the Xbee's serial communication connects to the serial communication between the microcontroller (ATmega8 or ATmega168) and USB-to-serial chip on the Arduino board.
February 04, 2012, at 12:02 AM by Scott Fitzgerald -
Changed lines 16-17 from:
The Wireless Proto shield allows an Arduino board to communicate wirelessly using a wireless module. It is based on the [[http://www.maxstream.net/products/xbee/xbee-oem-rf-module-zigbee.php | Xbee modules from Digi]], but can use any module with the same footprint. The module can communicate up to 100 feet indoors or 300 feet outdoors (with line-of-sight). It can be used as a serial/usb replacement or you can put it into a command mode and configure it for a variety of broadcast and mesh networking options. The shields breaks out each of the Xbee's pins to a through-hole solder pad.
to:
The Wireless Proto shield allows an Arduino board to communicate wirelessly using a wireless module. It is based on the [[http://www.digi.com/products/wireless-wired-embedded-solutions/zigbee-rf-modules/zigbee-mesh-module/xbee-zb-module | Xbee modules from Digi]], but can use any module with the same footprint. The module can communicate up to 100 feet indoors or 300 feet outdoors (with line-of-sight). It can be used as a serial/usb replacement or you can put it into a command mode and configure it for a variety of broadcast and mesh networking options. The shields breaks out each of the Xbee's pins to a through-hole solder pad.
Changed line 126 from:
For more details on configuring the XBee module, see the [[http://www.maxstream.net/products/xbee/manual_xb_oem-rf-modules_802.15.4.pdf | 802.15.4 modules product manual]] or the [[http://ftp1.digi.com/support/documentation/90000976_G.pdf | ZB modules product manual]] [[ | ZNet 2.5 documentation page]] from Digi International.
to:
For more details on configuring the XBee module, see the [[http://www.digi.com/products/wireless-wired-embedded-solutions/zigbee-rf-modules/zigbee-mesh-module/xbee-zb-module#docs | 802.15.4 modules product manual]] or the [[http://www.digi.com/products/wireless-wired-embedded-solutions/zigbee-rf-modules/zigbee-mesh-module/xbee-zb-module#docs | ZB modules product manual]] [[ | ZNet 2.5 documentation page]] from Digi International.
December 07, 2011, at 12:27 PM by Federico -
Added lines 1-126:
!!Wireless Proto Shield

(:table border=0 align=centre:)
(:cell:)[[Attach:Arduino_WirelessProtoShield_Front.jpg | Attach:Arduino_WirelessProtoShield_Front_450px.jpg ]]
(:cellnr:)''Wireless Proto Shield Front''
(:tableend:)


(:table border = 0 :)
(:cell:) [[http://store.arduino.cc | Attach:buttonStore.jpg ]]
(:cell:)[[http://arduino.cc/en/Main/Buy | Attach:buttonDistributors.jpg ]]
(:tableend:)

!!!Overview

The Wireless Proto shield allows an Arduino board to communicate wirelessly using a wireless module. It is based on the [[http://www.maxstream.net/products/xbee/xbee-oem-rf-module-zigbee.php | Xbee modules from Digi]], but can use any module with the same footprint. The module can communicate up to 100 feet indoors or 300 feet outdoors (with line-of-sight). It can be used as a serial/usb replacement or you can put it into a command mode and configure it for a variety of broadcast and mesh networking options. The shields breaks out each of the Xbee's pins to a through-hole solder pad.

This shield doesn't have the SD socket.

Also on board is a switch allowing for control via USB or the microcontroller.

!!!Schematic


EAGLE files: [[Attach:arduino_WirelessShield_SD_v3.zip | arduino_WirelessShield_SD_v3-reference-design.zip]]

Schematic: [[Attach:arduino_WirelessShield_SD_v3-schematic.pdf | arduino_WirelessShield_SD_v3-schematic.pdf]]

!!!Switch Settings

The Wireless Proto shield has an onboard switch labelled Micro and USB. This determine how the Xbee's serial communication connects to the serial communication between the microcontroller (ATmega8 or ATmega168) and USB-to-serial chip on the Arduino board.

(:table border = 0 :)
(:cell:) Attach:WirelessShield_SD_switchUSB_detail.png
(:cell:)
When in the '''Micro''' position, the DOUT pin of the wireless module is connected to the RX pin of the microcontroller; and DIN is connected to TX. The wireless module will then communicate with the microcontroller. Note that the RX and TX pins of the microcontroller are still connected to the TX and RX pins (respectively) of the USB-to-serial converter. Data sent from the microcontroller will be transmitted to the computer via USB as well as being sent wirelessly by the wireless module. The microcontroller will not be programmable via USB in this mode.

(:cellnr:) Attach:WirelessShield_SD_switchMicro_detail.png
(:cell:)
With the switch in the '''USB''' position, the DOUT pin the wireless module is connected to the RX pin of the USB-to-serial converter, and DIN on the wireless module is connected to the TX pin of the USB-to-serial converter. This means that the module can communicate directly with the computer. The microcontroller on the board will be bypassed. '''To use the shield in this mode, you must program the microcontroller with an empty sketch (shown below), or remove it from the board.'''

(:tableend:)

Empty sketch:
(:source lang=arduino tabwidth=4:)
void setup() { }
void loop() { }
(:sourceend:)

!!!Networking

The Wireless Proto shield can be used with different modules with the same footprint as the XBee modules. The instructions below are for the '''XBee 802.15.4 modules''' (sometimes called "Series 1" to distinguish them from the Series 2 modules, although "Series 1" doesn't appear in the official name or product description) and also for the '''XBee ZNet 2.5''' or '''XBee ZB''' modules, both known as "Series 2" modules. All the modules, basically have the same type of configuration parameters, but differ by the function that they implement and the topologies of networks that they can create. Can communicate with each other only modules of the same family.

!!!!Addressing

There are multiple parameters that need to be configured correctly for two modules to talk to each other (although with the default settings, all modules should be able to talk to each other). They need to be on the same network, as set by the '''ID''' parameter (see "Configuration" below for more details on the parameters). The modules need to be on the same channel, as set by the '''CH''' parameter. Finally, a module's destination address ('''DH''' and '''DL''' parameters) determine which modules on its network and channel will receive the data it transmits. This can happen in a few ways:
* If a module's '''DH''' is 0 and its '''DL''' is less than 0xFFFF (i.e. 16 bits), data transmitted by that module will be received by any module whose 16-bit address '''MY''' parameter equals '''DL'''.
* If '''DH''' is 0 and '''DL''' equals 0xFFFF, the module's transmissions will be received by all modules.
* If '''DH''' is non-zero or '''DL''' is greater than 0xFFFF, the transmission will only be received by the module whose serial number equals the transmitting module's destination address (i.e. whose '''SH''' equals the transmitting module's '''DH''' and whose '''SL''' equals its '''DL''').
Again, this address matching will only happen between modules on the same network and channel. If two modules are on different networks or channels, they can't communicate regardless of their addresses.

For the "Series 2" modules you must chose which firmware put on the module to give it Coordinator, Router or End Device functionality. Series 2 use only serial low (@@SL@@) and serial high (@@SH@@) for addressing.

!!!!Configuration

Here are some of the more useful parameters for configuring your Xbee module. For step-by-step instructions on reading and writing them using AT commands, see the:
*[[/Guide/ArduinoWirelessShield | guide to the Wireless shield with the 802.15.4 modules]].
*[[/Guide/ArduinoWirelessShieldS2 | guide to the Wireless shield with the ZNet 2.5 modules]].
Make sure to prepend @@AT@@ to the parameter name when sending a command to the module (e.g. to read the @@ID@@ parameter, you should send the command @@ATID@@).

(:table:)
(:cellnr width="10%":)''Command''
(:cell width="50%":)''Description''
(:cell width="20%":) ''Valid Values''
(:cell width="20%":) ''Default Value''
(:cellnr:) @@ID@@
(:cell:)The network ID of the XBee module.
(:cell:)0 - 0xFFFF
(:cell:)3332
(:cellnr:) @@CH@@
(:cell:)The channel of the XBee module.
(:cell:)0x0B - 0x1A
(:cell:)0X0C
(:cellnr:) @@SH@@ and @@SL@@
(:cell:) The serial number of the XBee module (@@SH@@ gives the high 32 bits, @@SL@@ the low 32 bits). Read-only.
(:cell:) 0 - 0xFFFFFFFF [[<<]] (for both @@SH@@ and @@SL@@)
(:cell:) different for each module
(:cellnr:) @@MY@@
(:cell:) The 16-bit address of the module.
(:cell:) 0 - 0xFFFF
(:cell:) 0
(:cellnr:) @@DH@@ and @@DL@@
(:cell:) The destination address for wireless communication (@@DH@@ is the high 32 bits, @@DL@@ the low 32).
(:cell:) 0 - 0xFFFFFFFF [[<<]] (for both @@DH@@ and @@DL@@)
(:cell:) 0 (for both @@DH@@ and @@DL@@)
(:cellnr:) @@BD@@
(:cell:) The baud rate used for serial communication with the Arduino board or computer.
(:cell:) 0 (1200 bps) [[<<]] 1 (2400 bps) [[<<]] 2 (4800 bps) [[<<]] 3 (9600 bps) [[<<]] 4 (19200 bps) [[<<]] 5 (38400 bps) [[<<]] 6 (57600 bps) [[<<]] 7 (115200 bps)
(:cell:) 3 (9600 baud)
(:tableend:)

Note: although the valid and default values in the table above are written with a prefix of "0x" (to indicate that they are hexadecimal numbers), the module will not include the "0x" when reporting the value of a parameter, and you should omit it when setting values.

Here are a couple more useful commands for configuring the XBee module (you'll need to prepend @@AT@@ to these too).

(:table:)
(:cellnr width="10%":)''Command''
(:cell width="50%":)''Description''
(:cell width="20%":)
(:cell width="20%":)
(:cellnr:) @@RE@@
(:cell:) Restore factory default settings (note that like parameter changes, this is not permanent unless followed by the @@WR@@ command).
(:cell:)
(:cell:)
(:cellnr:) @@WR@@
(:cell:) Write newly configured parameter values to non-volatile (long-term) storage. Otherwise, they will only last until the module loses power.
(:cell:)
(:cell:)
(:cellnr:) @@CN@@
(:cell:) Exit command mode now. (If you don't send any commands to the module for a few seconds, command mode will timeout and exit even without a @@CN@@ command.)
(:cell:)
(:cell:)
(:tableend:)


For more details on configuring the XBee module, see the [[http://www.maxstream.net/products/xbee/manual_xb_oem-rf-modules_802.15.4.pdf | 802.15.4 modules product manual]] or the [[http://ftp1.digi.com/support/documentation/90000976_G.pdf | ZB modules product manual]] [[ | ZNet 2.5 documentation page]] from Digi International.

Share