Home theatre devices do not like to play nice together. They each use separate protocols and methods for command and control, and finding documentation or sample code on how they work is often difficult.
I have written two small libraries and put them up on GitHub for devices I have come in contact with:
The code for the Viewsonic Pro 8100 will let you control every feature documented in the manual over a serial connection. Reading data back from the projector is not yet fully functional, however.
The code for the Onkyo Receiver should be compatible with other Onkyo devices using their ISCP protocol over Ethernet. With a bit of elbow grease, that library should also be useful for those wishing to control their Onkyo serial devices.
If you find either library useful, please drop me a note — and patches are always welcome!