XBee devices are wireless devices used for sensing, control, and serial communications. They are very popular with hobbyists as well as with industries requiring remote monitoring and control. XBees have analog and digital inputs, digital outputs, and a serial port. XBees have unique shape and footprint.
The XBee design was conceived by a company named MaxStream. Later, MaxStream was purchased by Digi International. Since the original design, other companies have adopted the XBee shape and footprint.
XBee based designs are popular because of their standardized shape, footprint, low cost, and their "AT" command set (the Virtual Wiring system gives users full access to the AT command set). There are many projects, products, and books based around XBees. XBees are available from many popular websites (Amazon is a good place to start looking).
The XBee footprint currently supports many different wireless standards and protocols. Some of the most popular are 802.15.4, ZigBee, DigiMesh, and WiFi. The Virtual Wiring system supports ZigBee devices using the Digi XBee ZB and XBee-PRO ZB devices.
XBee ZB and XBee-PRO ZB Device Overview
XBee and XBee-PRO ZB wireless devices run in a mesh network running at 2.4GHz. The devices can be purchased as embedded modules (as in the photo above), or inside of completed devices.
Digi has a family of packaged modules consisting of the XStick (a USB interface for a ZB network), a Smart Plug (a router with a controllable outlet, light sensor, and power monitor), a Wall Router (a router with a light sensor and temperature sensor), a Digital I/O Adapter (a digital input/output module for interfacing with digital devices), and an AIO Adapter (an analog input/output module for interfacing with analog devices).
The Virtual Wiring system supports any design using XBee ZB and XBee-PRO ZB embedded modules. It has Scripts which will install any device using ZB modules, as well as Scripts tailored for installing the XStick, Smart Plug, Wall Router, an DIO Adapter.
XBee Installation Overview
XBee wireless networks consist of a Coordinator, Routers, and End Devices. The Coordinator is installed first, and all the other devices are installed into the network created by the Coordinator. Routers extend the network. They are always active and can route packets between other Routers, the Coordinator, and send and receive packets to and from End Devices. End Devices typically sleep, never route, and wakeup occasionally to receive and/or send data.
The XStick device is a ready to install Coordinator. The XStick, as well as other XBee network interface devices, is a USB device, and it plugs into a standard USB port. Typical XBee systems begin by installing an XStick and then proceed by installing the rest of the system. However, it is possible to have some other, non-XStick, device act as the Coordinator (such as a bare XBee module programmed as a Coordinator). It is also possible for the Virtual Wiring system to connect to the mesh through a Router device. Due to clever XBee design, whether the system is connected to an XBee network through a Coordinator or a Router, the system interface appears identical. When accessing an XBee network through a Router, the Router should be programmed to use the API serial interface (the same one Coordinators use).
Other XBee devices are installed into the system by first powering them on, "joining" them into the XBee network, and then running the appropriate Script. Joining generally happens automatically, if one has a running open XBee network (the default) and a new device is powered on. When moving an XBee device to a new network, the XBee device needs to be reset (typically by pressing a "commissioning" button 4 times in rapid succession). For more information on joining XBee devices into networks, consult your XBee device documentation.
Once an XBee device has joined a network, it can be installed into a Virtual Wiring system by running a Script. The Script adds the XBee Device to the system and makes the Device's terminals and methods available to the rest of the system.
Supported XBee devices
For information on installing a particular XBee Device, click one of the following links.
XBee Device Shared Methods
XBee Devices are all based on a common Device, so they have shared methods. These methods allow you do low level configuration using the XBee AT command set. To learn more about these shared methods, click here.