When we write bi-phase executors, we are forced to treat 0 as the reversed pair, but in this case, I think the original intent was reversed, so:
-400 +400 = 1
+400 -400 = 0
Using that, I got the following binary:
Repeat: +400; 11 11111111 00000100 00000100 00000100 00000100 00000000 00000000 01000000 01000000 +400 -20000; Relay 1 On
Repeat: +400; 11 11111111 00000100 00000100 00000000 00000000 00000000 00000000 01000000 01000000 +400 -20000; Relay 1 Off
Repeat: +400; 11 11111111 00000100 00000100 00000100 00000100 00000000 00000000 00100000 00100000 +400 -20000; Relay 2 On
Repeat: +400; 11 11111111 00000100 00000100 00000000 00000000 00000000 00000000 00100000 00100000 +400 -20000; Relay 2 Off
Repeat: +400; 11 11111111 00000100 00000100 00000100 00000100 00000000 00000000 00010000 00010000 +400 -20000; Relay 3 On
Repeat: +400; 11 11111111 00000100 00000100 00000000 00000000 00000000 00000000 00010000 00010000 +400 -20000; Relay 3 Off
Repeat: +400; 11 11111111 00000100 00000100 00000100 00000100 00000000 00000000 00001000 00001000 +400 -20000; Relay 4 On
Repeat: +400; 11 11111111 00000100 00000100 00000000 00000000 00000000 00000000 00001000 00001000 +400 -20000; Relay 4 Off
You'll notice that each byte is repeated. The first two pairs are fixed. The next 2 pairs have a bit that implies ON and OFF. The next two are fixed and zero filled. The final two use the bit position to indicate which Relay is being controlled.
If someone has one of these that they want to control with a JP1 remote, it shouldn't be too hard to write an executor.
Here's an RMIR file for anyone wanting to see it for themselves:
http://www.hifi-remote.com/forums/dload ... e_id=25233