In our setup, a single serial port is used to communicate to a single tracker, and then this tracker turns on the emitter and other trackers over the FBB, or fast bird bus, which is the bunch of telephone-style connectors running between the boxes.
Luckily, Ascension provides both a helpful demo program and a reasonable API for windows development. The demo is winbird.exe (At Start->All Programs->Ascension Technology). To run it:
1. Power up the trackers. After a fairly long time (10 secs or so), you should hear a faint click which seems to indicate it has booted.
2. Start winbird.exe. Under setup, chose RS-232. Choose 3 devices, then OK through the menus. You should hear another click and then the LEDs in the panel should come on for trackers 1 & 2. The demo will report setup is complete.
3. Now the magic part is that you have to find Options->System Options, and choose pulsed instead on non-pulsed. I haven't really found any reference to this, but without this it doesn't seem to work. I also don't know if this can be done through the API, although it must be.
4. Now you can choose Take Data->Animate and you should see two fairly stable and smooth coordinate axes move about with the trackers. Notice that if you cross the plane of the box faces sometimes you get a jump, which is where the tracker can't tell which box hemisphere you are in. So stay away from those.
5. To develop for the tracker, use the windows driver (Look in Start->All Programs->Flock_of_Birds. The BIRD.DLL API Reference manual has a code snippet that works for me (Example Code #8). The code uses DEVCOUNT to determine the number of trackers. Recall that the extended transmitter counts as a device, so you will need to work to figure out DEVCOUNT and which tracker gets what number. You should put the setup stuff in your main (or called from there), and call the get data part from your glut idle loop. Make sure you put the shutdown stuff in your code exit calls.
6. I have found that if I crash my code without shutting down properly, it is best to power the tracker down and repeat the steps from the beginning. If you don't crash, then the tracker seems to be in a reasonable state, and you can just run your code again. I'll try to track down the API calls to avoid the demo program nonsense.