dinsdag 30 juni 2009

Links

µracoli - The µController Radio Communication Library
ICRadio RF230 OEM
Zigbee for Linux
The motherload of answers!
Wiki info

Forum thread

Hardware for programming the ZigBit's

I've read that there are multiple options for programming the ZigBit-module's:
1. via a serial-cable
2. via JTAG

I've found a cable which i'd bought for connecting a phone to my computer. Upon plugging-in it announces itself as an "USB Data Cable". Notice the bump in the USB-connector. It probably contains some type of Usb-Serial-chip. Be looking up the serialnumber: "WT048000317" i found that it probably uses the arkMicroChips "ark3116" chip.


http://www.bobhobby.com/2008/02/25/modify-usb-data-cable-to-use-with-microcontroller-projects/



Also I've found an "USB Link cable" which came with an X10-CM11 module. It announces itself as an "Prolific USB-to-serial Comm Port" device in Windows.


I also have the Sanguino laying around which might act as an in-between. Which reminds me. I also bought an accompanying cable with the Sanguino. Bingo! It annouces itself as an "USB Serial Port".

I will probably start out with programming the ZigBit's via the serial-method.

I just got into contact via Twitter with Aaron Steiner. He uses the Sparkfun RS232 Shifter. Ah ok! Note to self: check which TTL voltage the ZigBig-modules need. I'm unable to verify which the correct TTL voltage is from the datasheet of the ZigBit-modules. Until now i've been unable to find an answer, only the same question. Fortunatly Aaron had the answer which voltage to use: 3.0volt. So propably i'm unable to use one of the three cables i've got lying around, because they have 5.0volt as output.

I've looked around for some JTAG-interfaces which can be used for the ZigBits. Ofcourse Atmel sells their own AVR JTAG ICE MKII interfaces, but for a private person the pricing is too steep and will take the "hobby-factor" away. On Ebay i found two different JTAG ICE MKII clones, which are more nicely priced. For now i've decided to wait for the shipment of the ZigBit's. My options are clear for reprogramming the ZigBit's:
* Buy a USB -> Serial 3.0volt cable
* Buy an MKII clone from Ebay.

JTAG
I found a thread where somebody is trying to program an zigbit with USBProg.

Compiling PingPong-sample

I downloaded the BitCloud software.

I received an error upon building the PingPong-sample-code, because i placed it in a folder with spaces in the name. After removing the invalid-foldername the pingpong-code compiles succesfully to 106334 bytes of code.

Installing AVR Studio

I downloaded and installed:
* AVRStudio v4.16
* AVRStudio v4.16 sp1 (incremental update on v4.16)
* WinAvr

Modules bought

I found it quite hard to make a decision which module to use. I've created a spreadsheet for myself with properties of the various modules.

Mandatory properties:
* RF-Module. This because factory created hardware is much smaller in comparison to DIY.
* MCU based. This because I want to be able to do customizations.
* Small. I want to be able to automate many different things, so space might be sparse.

I really liked the IDwaRF, Decibit- and the Busware CPM modules because they are super small sized and I know there is a big and friendly community (Arduino, Sanguino, AVRFreaks, etc.).

I also liked the "TI EZ430-RF2500". Because this solution comes with an USB host adapter.

Size ranking:
1. Panasonic PAN4555 12,2 * 16,4 mm = 200 mm2
2. Busware CPM (estimated, excluding antenna) 21 * 10,3mm = 216 mm2
3. Decibit DCBT-24AX 25 * 10mm = 250 mm2
4. ZigBit ATZB-24-B0 (exlcuding antenna) 18,8 * 13,5 mm = 254 mm2
5. ZigBit ATZB-24-A2 13,5 * 24mm = 324 mm2
...
Strobit 70 * 30,5 mm = 2135 mm2

My reasons to choose for the ZigBit modules:
* They are quite small. Although not the smallest
* There is "free" software to be found. (BitCloud-stack, Contiki-port)
* There are experienced users to be found.
* There is a free Development-solution for download (WinAVR, AVRStudio)
* The module has a MCU which has enough memory for customization.
* By choosing for a ZigBee-module I hope to have chosen a stable future platform.
* By choosing for a ZigBee-module I hope not to have much to do with protocols and lowlevel things.

I've ordered two ZigBit-modules (MNZB-24-A2) from Digi-key 20,51euro a piece. Hopefully I will receive the modules in a week or so.

Project started

A while ago I use to be quite busy with receiving, decoding and transmitting RF-based signals. The main components for doing this i had been using a 433Mhz tuned receiver module, a simple 433Mhz tuned transmitter module and an Arduino (later replaced with the Sanguino). Although everything worked quite well, i never achieved a complete hassle-free functioning of it all. I had troubles with the range and also the reliability.

I've decided to make a brand new start and today i ordered two Meshnetics/Atmel ZigBit OEM modules.

To set myself goals, i've created the following list of ToDo's:
1. Select which module to start out with (Completed on 30 juni 2009)
2. Get the ZigBit modules running of a 3volt coin-cell.
3. Create a prototype-platform with which i'm able to upload and/or monitor the modules.
4. Get a sample/test application running on the modules.
5. Get the modules to communicate with each other.
6. Get the latest BitCloud-stack compiled.
7. Upload the newest BitCloud-stack to the module.