XBee ZNet 2.5 (ZigBee) wireless modem communications https://github.com/djoyner/zigbee-znet25

Latest on Hackage:

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.

BSD3 licensed and maintained by David Joyner


This is a Haskell protocol library enabling wireless communications via XBee/XBee-PRO (ZigBee) ZNet 2.5 RF modules.

The library performs binary encoding/decoding, on-the-wire framing, and error checking of control and data "API" frames. In other words the library expects to communicate with an XBee modem that has AP parameter = 2, indicating API frames with HDLC-like escape characters. This mode provides for 8-bit transparent operation and is described in Section 6 of the [XBee ZNet 2.5 Product Manual] (ftp://ftp1.digi.com/support/documentation/90000866_C.pdf).

The library code is 100% pure; nothing here depends on the IO monad and no particular modem device is assumed. The code depends on the cereal package for serialization but is otherwise pretty standard. The test suite is based on QuickCheck properties.

Getting Started

Install with cabal:

  • cabal install zigbee-znet25

Or clone the master git repository:

  • git clone git://github.com/djoyner/zigbee-znet25.git

A sample program is included. I've also used the library to communicate with an Arduino-based temperature and power-usage probe.

Author and Maintainer

David Joyner,

Used by 1 package:
comments powered byDisqus