Hi,
I recently added X10 decoding to WinOSI, and have seen working OSI X10 interfaces back in the day. (Actually I still have all the parts to make a C4PMF interface to the powerline.) The interface used by OSI is not X10 compatible, rather it interfaces to the ultrasonic input on the old wood-grain BSR x10 consoles. OSI simulates the Ultrasonic remote!
One of the OSI demo disks had an AC demo, and there were at least a couple attempts at commercial software. See
http://osi.marks-lab.com/software/misc.html
Here are the notes I have for decoding the OSI X10 signal.
-Mark
The original BSR X10 Home control consoles had an ultrasonic transducer which received messages from the ultrasonic handheld remote control.
You set the X10 home code on the console. The remote sent sonic unit and control codes. The OSI worked with a modified console. An opto- isolator, resistor and RCA plug were added to the ultrasonic input of the console.
BSR X10 Ultrasonic Wireless remote protocol (Used by OSI 540 board)
The 40KHz signal was used with a push button wireless (ultrasonic) remote
Since base has house code, it is not sent by remote
1 complete message every ~100 ms; there are 13bits, each bit is 8ms long
logic 1 is 4ms of 40Khz, 4ms silence
logic 0 is 1.2ms of 40Khz, 6.8 ms silence
13bit handheld remote message definition:
SOM 5-bit binary code Inverted code EOM
|# | D4| D3| D2| D1| D0|!D4 |!D3|!D2|!D1|!D0|###|###|
SOM (start of message) = 4ms on, 4ms off (normal '1')
EOM (end of message) = 16ms "on" burst
Cordless controller push-button code translation table.
Code: Select all
5-BIT BINARY CODE
UNITCODE D4 D3 D2 D1 D0 DECIMAL EQUIVALENT
01 0 1 1 0 0 12
02 1 1 1 0 0 28
03 0 0 1 0 0 04
04 1 0 1 0 0 20
05 0 0 0 1 0 02
06 1 0 0 1 0 18
07 0 1 0 1 0 10
08 1 1 0 1 0 26
09 0 1 1 1 0 14
10 1 1 1 1 0 30
11 0 0 1 1 0 06
12 1 0 1 1 0 22
13 0 0 0 0 0 00
14 1 0 0 0 0 16
15 0 1 0 0 0 08
16 1 1 0 0 0 24
5-BIT BINARY CODE
COMMAND D4 D3 D2 D1 D0 DECIMAL EQUIVALENT
ALL OFF 0 0 0 0 1 01
ALL LIGHTS ON 0 0 0 1 1 03
ON 0 0 1 0 1 05
OFF 0 0 1 1 1 07
DIM 0 1 0 0 1 09
BRIGHT 0 1 0 1 1 11
The 40KHz burst is controlled by bit 3 of $DE00 of the 540 video board. 1=enable 40Khz AC Home control output (used as 1 bit serial stream)