As i promised this is my first XBee Project. I just needed a more or less useful application i can “test” the XBee’s in a real environment.
It is in my nature to do crazy things, so i thought it would be really cool to have a notification Jabber Message to my Phone when someone put some letters for me in my letterbox. Here it is ;)
The FTDI Chip gives me A fscking LOT PAIN more to come in the next Post. DO NOT USE IT :)
This is my Setup:
- XBee “Coordinator” API Mode connected through a FTDI USB Chip to a linux box
- XBee “End Device” Interfaced with an Atmel ATTiny13v power by two 1.5v AA Batteries
- Perl XBee Module API.pm from Thomas Jager
- Jabber Perl Modules to enable sending messages
- Siemens S685IP DECT Phone that can recieve Jabber messages
Before you read further you should note that i flashed the ZIGBEE firmware (XB24-ZB) API on my XBee’s because i don’t want to miss the mesh feature.
This Setup now runs with 2x Alkaline Batterys in the End-Device for 4 weeks now, and is still running!
Recently, well 1 year ago, i readed in The Make Zine about a Project called “The Brain Machine”.
This is the Story i had the last weekend with some cool Chips named “XBEE”.
These Chips are intelligent RS-232 -> Wireless sender and reciever who can stickt together to a so called mesh network.
First i have to tell the terminology:
“Coordinator” – is the Main Boss of the Network, who coordinates everything – and let routers and endpoints connect
“Router” – is a endpoint but can route packets and other endpoints can connect to it.
“End Device” – is a endpoint but noone can conenct to it – it is designed to save energy and run from batteries.
Mesh Networking is really fantastic because you can have a coordinator (“middle”) which is connected to routers and end devices, and is “self-healing” this means if a router is powered off, packets get automatically routed through another reachable router – so packets can arrive to their destination.
If a Enddevice don’t have a connection to a router or the coordinator, put a router in between and it will connect seamless without configuring routing or anything manually.
More about the theory you can find in the references section at the end of my Post.
Okay, first a Picture of my actual “Setup” then the painful story :)