Hi All,
What do you think is the best method of performing a decode of the incoming serial data stream from a X10 (Home Automation product) RF (433MHz) Receiver?
Here is a link to the protocol X10 RF Protocol Basically a AGC header followed by a address byte, complement of the address byte, data byte followed by the compliment of the data byte.
I've never done a software based decode of a serial stream before, I've always used SPI/I2C/UART hardware.
I could do it -
1) All manually, looking at the level of the pin and doing a series of loops with udelays etc.
2) Using an Interrupt on the pin and a internal timer.
Given how noisy this area of the radio spectrum is, should I attempt to do multiple sampling within each bit?
Does any one have some code for this style of thing that they are willing to share? Save me reinventing the wheel again.
Thanks,
Neil.
What do you think is the best method of performing a decode of the incoming serial data stream from a X10 (Home Automation product) RF (433MHz) Receiver?
Here is a link to the protocol X10 RF Protocol Basically a AGC header followed by a address byte, complement of the address byte, data byte followed by the compliment of the data byte.
I've never done a software based decode of a serial stream before, I've always used SPI/I2C/UART hardware.
I could do it -
1) All manually, looking at the level of the pin and doing a series of loops with udelays etc.
2) Using an Interrupt on the pin and a internal timer.
Given how noisy this area of the radio spectrum is, should I attempt to do multiple sampling within each bit?
Does any one have some code for this style of thing that they are willing to share? Save me reinventing the wheel again.
Thanks,
Neil.

) product. My PC software is looking for a W800 data stream and this is what I need to emulate. Ie convert the RF stream into four bytes, representing the 32 bits coming in. I don't need to do a decode of the bit's, more just a conversion between hardware mediums, ie from RF to RS232. But I do need to do some error checking though.