Here's a quick overview of why you cannot copy a rolling code, even if they have the same algorithm:
As noted in the comments, a rolling code is designed to prevent someone from breaking in by recording and later replaying a transmit code. The system does this by employing:
- A transmitter that transmits an ever-changing sequence of codes, and
- A receiver that identifies a valid transmitter and only responds to new codes from that transmitter.
In practice (in Keeloq and similar systems, which to my knowlege means all rolling code systems in existence) the code gets changed each time the transmitter is activated, and the receiver keeps track of the last code it received from the transmitter.
For example imagine a rolling code transmitter with code sequence "ABC" -- in other words on the first five activations the transmitter would transmit codes ABC01
, ABC02
, ABC03
, ABC04
, ABC05
. After that fifth transmission (assuming it was received by the receiver!) then the receiver would only accept code ABC06
or later. That's what makes the rolling code resistant to the record-and-replay hack.
Now let's copy our first transmitter (TX1) over to a second transmitter (TX2). We pair them up using the next transmission, code ABC06
and all seems well. On their next activation each transmitter will transmit code ABC07
.
Hopefully you already see the problem. If activate TX1, it transmits code ABC07
and the receiver responds. But the next time I try to activate TX2, it also transmits code ABC07
and so the receiver rejects it as an old code. Maybe if TX2 were activated a few times it would get ahead of TX1 and activate the receiver... but then later on TX1 would need to "catch up" to TX2, and the whole system is... less than good.
So you cannot copy rolling code transmitters because copying a rolling code transmitter would only work well if you could somehow keep the two transmitters in sync with one another, and there is no practical way to do this. It is far easier to simply pair a second, new rolling code transmitter with the receiver, as Abel mentioned in the comments.
interoperable
? \$\endgroup\$