dennisma wrote:So the PC talks through the Uno to the FIO?
This is correct. Both controllers work together to automate my observatory dome. The Fio controlls the shutter and a permanent light panel that will be mounted on the wall. The Uno controls the rotation of the dome and acts as a go-between for the Fio.
The Uno uses the hardware serial for the PC connection (through USB). The Uno also uses 2 SoftwareSerial objects. One to talk to the Fio via XBee and the other to control a Pololu motor controller over serial.
PC <--> Uno (Rotation Controller) <--> Fio (Shutter/lightbox controller)
The Fio uses the hardware serial for the XBee and also has a SoftwareSerial object to talk to another Pololu motor controller that will open and close the dome. The lightbox is controlled via PWM and a boost converter.
The Uno is directly connected to the PC and the XBees are only used for the Uno and Fio to communicate...but when I need to change the software on the Fio that means unplugging the XBee and hooking up a FTDI cable. Right now it's not a big deal. But eventually the Fio will be installed in my dome, in a case, at the top of the dome over all my astronomy equipment...so getting to it will be a pain! Thus the desire to program wirelessly.
I also wrote a little WCF server that exposes the interface to the Dome and Lightbox so that I can call it from multiple applications. On the left is the Dome Server which is interfaced with the Uno (which gets the Shutter and Brightness from the Fio). On the right is another application (Sequence Generator Pro) which is used for image capture and automation...here it is talking with the lightbox and adjusting it accordingly. DomeDuino Server and SGPro