Go Down

Topic: Decoding RF 433.92MHz signal (binary available) (Read 6384 times) previous topic - next topic


I have been trying to decode the signals output by a RF remote I have here and I have managed to capture the codes but I cannot figure out how to decode them (or replicate them).

Here is the data I have captured.

Butt 1
00 A9 6E 2F

Butt 2
00 A9 62 24

00 A9 6A 28

Butt 4
00 A9 66 20

There is also an additional two bits on the end of each transmission which are always 00 but I don't know what they do?

I can see the pattern of the message starting with 00 A9 but I then cannot see how the other data is calculated.

Each message is started with a long pulse.

Could anyone let me know how I could try and mimic this with the arduino and a 433.92mhz transmitter?


Hi Richard,

Thanks for the reply, how would i go about replaying the code through a tx? Would I just make a loop and set the pin high/low? Or is there a way to output hex?

This is just one remote but I have multiple recorders that have a code button that allows me to pair a remote to the receiver. I want to be able to do away with the remotes and pair multiple receivers with the arduino without having to capture the codes every time.

I may have to get another remote and see what it's codes are.

If I can figure out how to output the codes I can try some other ones


I have just grabbed the codes coming out of two different remotes, they are ordered in the same order so the first code in the first set is the same remote button as the first code on the second remote.

Remote #1





Remote #2





Any help would be greatly appreciated.


Hi Richard,

I am trying to create my own codes in the arduino.

The remotes are for those 4 port remote powerboards you can buy and I am looking to control them with my arduino.

Each powerboard has a button it that allows you to pair a remote with it, all you do is push the pair button on the powerboard and then press a button o the remote and they are paired.

What I want to do is to be able to generate the codes myself from within the arduino and then pair the arduino with the powerboard (or multiples).

I know that I can just capture the codes of a remote and then use the arduino to repeat them (still haven't got this working yet) but I would like to be able to skip the code capture all together and just use the arduino and output the codes and pair with the powerboard.

This would mean that I could buy a new powerboard from the shops, and then pair it directly with the arduino by outputting a unique code, without having to pair the powerboard with the remote and then capture and decode the remote signals.

Do you have any idea how I can try to test if the captures codes work? I have a 433.92mhz transmitter connected to 5v, gnd and pin 4 of the arduino but I cannot workout how to put the code back out.


Hi Richard,

A "4 port remote powerboard" is a powerboard (I think they may be called powerstrips in the US) that has 4 power outlets that can be individually switched (The one I have is http://www.jaycar.com.au/productView.asp?ID=MS6150).

I know that the frequency is 433.92 mhz and I have already got the receiver and transmitter for this frequency.

I have already seen the waveform generated by the current remote and can measure the timings but I am unsure of how to feed them back into the transmitter.

As far as I know the transmitter should take care of the modulation and I should just be able to feed the codes back into it.

I am not trying to make anyone read my mind and I thought I had explained my situation, hopefully I have cleared anything up now.

My original plan was to just press the buttons with the arduino but then I decided against it as it would be quite messy if I had multiple remotes for different boards all wired up as opposed to having a nice neat setup with a RF transmitter.


Yeah that's what I am trying to do, but I cannot figure out how to do it...

I had a loop that went over the binary string of 0's and 1's and it it was a 1 it pushed the pin high and if it was a 0 it pulled it low.

I put a delay after each change to try and match the original pattern but the outgoing pattern wasn't anything like the original. It kind of just came out as a mish mash and the scope didn't pick up any distinct changes.

I am pretty sure the transmitter is the same modulation, I may try cutting the trace from the transmitter in the remote and wiring that up to the arduino to try that. But I still feel that the data I am outputting from the arduino is incorrect.


Will do, I am not home tonight but I will take a screenshot of the original signal and my generated signal (way, way off) and see how we go!

Thanks for all your help.


I have just taken another shot of the remote buttons and attached it, I didn't have my code together (have been changing it around alot to try and get it to work) so I couldn't take a shot of it on the scope.

Here is what I was doing in pseudo code:

str = '010010110101010101011110110';
  foreach char in str
     if char == 1
        set pin 2 high
        delay 5
        set pin 2 low
        set pin 2 high
        delay 2
        set pin 2 low
     delay 2

I hope this helps a bit.



Jul 26, 2010, 11:39 am Last Edit: Jul 26, 2010, 11:45 am by kenned Reason: 1
It looks to me as if you are trying to do something pretty similar to the work already published under the project name ArduinoHA.

Visit http://code.google.com/p/arduinoha/ and browse the code.

Also note that the RF receivers often expect the entire bitstream to be sent several times (like 8 or 10 times) with a specific length of 'gap' between each burst of RF. Many receivers use this 'gap' length to decide whether the particular RF stream is of interest.

I've implemented this sort of thing on an AVR device using Bascom as the programming language. See wiki at http://www.dbzoo.com/livebox/hah for more info and links to sourcecode.

Hope this helps.


Hi there, I'm having the same problem with radio controlled power outlets. But try this one:



any chance you can post your code?


Go Up

Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

via Egeo 16
Torino, 10131