I've decided to take a step back from the Nessie code for a bit and consider the architecture of the system. At the current rate, I've coded myself in to a corner, back tracked, tried again, and coded myself into another corner. The system has gotten too large and complex for me to keep straight and I've found myself trying to get tests to pass by simply hacking away at code. I think some better organization and a clear architectural goal could be of help here. The chart below is my first graphical concept of how I think the architecture should work. There are some areas which lack detail, but I think it's enough to start restructuring the code a bit. Hopefully, in doing so, the missing details will become more apparent and I can then add them to the chart.
I managed to put together a wireless accelerometer the other night using my two new XBees, an Arduino XBee shield, an XBee Explorer USB, an ADXL330, and some Python. I struggled a bit with some of it, so here's what I learned: First, a parts list. XBee 2mW Series 2.5 Chip Antenna Arduino XBee (with XBee Series 2.5 module) XBee Explorer USB ADXL330 I'm not sure exactly what the specs are on the XBee that comes with the Arduino shield. But, it is definitely a series 2.5. The first thing to do is to configure and upgrade the firmware on your XBees. To do that, you'll need X-CTU (for the firmware upgrade at least, but it's also nice for configuration) which, unfortunately, is only available for Windows. But, it works fine from VMware. First up, the XBee we'll hook up to the computer to read incoming data from the accelerometer: Plug one of the XBees into the Explorer (it's also possible to do this from the Arduino shield by shifting the two XBee/USB jumpers to U