Yeah. There's that as well A universal module which is basically an X10 controller relay modules would do it.

I know what you mean about the X10 protocol being bad. I'm designing an X10 <-> Ethernet gateway for a company at the moment and I've had to enjoy doing X10 at low levels...