rcSwitch: What does all the data mean? Trying to understand rolling code

Hello, so I'm using rcSwitch to try to understand more about radio controlled key fobs, in this case for my garage. Especially since there is an interesting twist: The master key states that it is a rolling code key.

However, I managed to clone the key (for my girlfriend) with a cheap amazon "universal" fob. It really works and I'm starting to wonder if the master key is actually really a rolling code secured key.

The garage is used by more people so for example if it was a rolling code, wouldn't it mean that when I'm on holiday and for example in the mean time 250 people used the garage and I come back my key would be outside the acceptance window of the rolling or hopping code?

For some extra context: The key I have has 2 buttons where the first one does nothing and the second one opens the garage door.

Now I'm using rcSwitch to check the data and to confirm if it really is a rolling code. Now I'm not really sure what the data shown by rcSwitch actually means so I would love to get some help with this.

The data shown by rcSwitch looks like this:

Decimal: 32767 (15Bit) Binary: 111111111111111 Tri-State: 1111111 PulseLength: 322 microseconds Protocol: 0
Raw data: 324,316,644,636,324,636,328,632,552,408,232,724,240,720,244,712,568,616,344,388,572,392,568,392,248,708,576,384,256,700,580,

With either the left, or the right button, the binary and decimal and tri-state (and also PulseLength if im not mistaken) is always the same. However, the raw data is ALWAYS different. Even when I press the right (correct) button, the raw data differs every time. Does this mean its the rolling code being active?

Now what is the decimal, or the binary? What is the actual data sent? Is that the binary or the raw data? What is the difference between these?

Is it also weird that the binary is just 15 times TRUE (1)? Why 15 bit and not 16 bit? Could this be normal or might rcSwitch have some trouble reading the data?

When I plot the data using the rcSwitch plot tool, I always get some random plot. However, I read about the protocol maybe unknown. So I used the modified version of rcSwitch and used the scanner sketch which gave me a new protocol. 2 different ones for the left and right keys actually. Now when I plot this data, for either the left or right button, I always get the same plot but with different raw data values. So the binary is the same but the numbers in the plot at the binaries differ.

The data from the protocol scanner looks like:

Received 32767 / 15bit Protocol: 0
Received level in first timing: 0
Received inverted: 0
0
data bits of pulse train duration: 14508
proposed protocol: { 242, { 3, 21 }, { 1, 3 }, { 3, 1 }, false }
====
first level down
5124,
736, 248, 724, 244, 720, 252, 712, 248, 712, 252, 712, 256, 708, 260, 700, 264,
696, 272, 692, 272, 688, 276, 684, 284, 676, 288, 672, 296, 672, 292,
660
====

The data everytime seems somewhat the same with some slight differences, except for the raw data which is totally different of course and when I press the left button, the protocol changes. The protocol is mostly the same it seems.

So again, what is the difference? What is the actual data? For example, when I want to send "Hello World", would that be converted to binary where the receiver decodes it? Or has it to do with the raw data? How do I even send custom raw data with the rcSwitch? Or is the raw data just some other parameter what the rolling code affect? Can the raw data be decoded (if it werent rolling code)? Would my Hello World text be in the raw data then?

Thanks in advance!

Welcome to the forum.

Okay, let's go.

What is the model/type of your rcSwitch? Datasheet link, or link showing an image similar to yours, etc. etc.

Can you post this Amazon link that shows this cheap "cloner"?

Thanks, what a warm welcome :smiley:

What do you mean by what is the model/type? It is a library for arduino.. the hardware is just a simple 433mhz receiver and transmitter.

Cant find the amazon link now. Maybe later but I'm sure its not on stock anymore.

If you read up on key fobs and rolling codes, that will tell you the fob will transmit the current code and up to a dozen or more of the future codes so you can be sure of one code operating the opener.

That does not make any sense. It just transmits 1 code. From my understanding the code changes due to some algorithm where some number is counting up on the receiver.

If it uses a "rolling code", the value transmitted will be very different, every time the button is pressed.

Post a couple of successive captures so people can compare.

Should the binary change or the raw data?

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.