I'm getting pretty excited about this. I was just watching the data scroll by as two nodes happily conversed and saw some interesting interdependencies in their parameters. This is exactly the kind of thing I was hoping for. But before I get carried away, this is just a very preliminary test and things should get much more interesting as the project develops. Anyway, on with the log.
I wrote version one of the software for both the nodes and the monitor. Most of the bugs seem to be worked out of it and the nodes are communicating with acceptable reliability, so I'll release this version of the code. Keep in mind that this code will be changing a lot and I will update the files whenever I make substantial progress.
- SocietyNode.ino - The node.
- SocietyMonitorUSB.ino - The monitor, which also joins the conversation as a node. This version communicates via usb and prints lots of data for debugging purposes.
Also, if you try to use these with the Arduino IDE, you will run into an error for the ATtiny85. It's because Arduino is using an outdated version of the compiler. Don't worry, this has been fixed and all you have to do is replace one file buried deep in your arduino folder. Here is the file(for Windows): tinyPCRELpatch.zip Thank you to the person on the Arduino forums who discovered this fix. Just follow the same folder structure as in the .zip and you'll find the right file.
For testing I just stuck everything on a breadboard and bounced the signals off the wall. There are no sensors here because they haven't arrived yet. Here's the setup:
I drew up a simple schematic for the nodes. Notice that the resistor values are not shown. This is because I'm still waiting for some of the parts to arrive and I want to try them out to get a feel for what values will work best.