I’ve been working on trying to better understand how they work, and I think I have them figured out fairly well now. They seem to work really well with motor ports B and C, but port A uses a different H-Bridge IC, and the signals are inverted. To control relays, any of the ports work fine, but to take advantage of PWM (like for motor or solenoid control), I find it best to only use port B or C.
Here is a project I did to demonstrate the relay driver:I used the relay driver to control a relay, which was connected to an outlet; so the NXT can control of the outlet. In the video, I just used a lamp to demonstrate this, but it could be useful for many other applications. I could use it to automate control of battery chargers, outdoor lights, or many other things. Or, like I did in the video, I can use the NXT as a human interface device, and control the outlet through the sensors.
The relay driver is by no means limited to use with relays. You can directly control low-voltage lights, motors, or solenoids as well. The relay drivers are rated for 18v 10A, so they should be able to handle a fair load.
Note, please do not attempt to connect the NXT to any circuit involving mains power. Doing so could cause serious harm to you or your NXT.