De Bruijn sequences

Have you guys considered making a De Bruijn sequence function available for quickly brute forcing shift registers? You could probably have something pretty universal that takes key length, and delta t between bits. I feel like that could be very useful for a number of the capabilities of this device.

Edit: On second thought you wouldn’t put Dt there you would have just have a debruijn to generate the sequence and pass it back as an array then let the programs hand how it’s transmitted.

I did have a thought since posting this. Is there any litterateur on combining debruijn sequences for subsets of a known range but unknown length? Like generate the most efficient set such that sub sets of length let’s say 16 through 129 avoid overlapping as much as possible. Basically make a sequence for the largest value then sort through to try shifting it around in such a way that it maintains full coverage but avoids repeating smaller sub sets of itself.

Or even like give me the most efficient sequence of subset length n such that subset length n-k is fully covered and then remaining members of subset n not covered in n-k are added on. So you could give priority to subsets that are most probable first but still generate a sequence that covers up to the max defined subset length.


Well first the code for python de brujin is right here de Bruijn sequence - Wikipedia, it would be quite easy to make a converter for that, there are some code you could start with here Protocol documentation - #9 by malmusimie

But you have to consider that garage door systems use different length for pauses and when it should be sending data - and also different bits they use. We could make a program that would take in the length of the signal needed, number of bits, then make a .sub file for that.

I was looking into the Marantec system, but they use 49 bits, so making a de brujin sequence for that would be … well quite big :wink: 562.949.953.421.312 possible ways, that would maybe get it to around 22.517.998.136.852? So i guess it’s not really possible. Not totally sure if my calculations are right.

1 Like

I think major problem with using De Bruijn sequence for modern gates is not only the pauses involved, the main problem is the shift register, as most modern gates dont use that, so you need to send the exact length of bit to work


and in general we are against the illegal use of the flipper

1 Like

Regarding the De Brujin sequence, the guys at Veritasium made a cool video about :stuck_out_tongue:

1 Like

I would see this as a cool aplication for the Flipper as well… :slight_smile:

Exactly. If you watch carefully the whole video, you will find out that:

  1. the third garage door didn’t open, because it’s receiver is not using “old shift registers” to decode the remote signal (it’s the usage of these “shift registers” that allows the use of De Brujin sequences, and “shift registers” are no longer used these days);
  2. the gate door didn’t open, because it uses a different coding for “ones” and “zeroes”.

Again, breaking into something is not impossible, but require more than just throwing “ones” and “zeros” over the air with blind eyes…

By the way De Brujin sequence is not an application, it’s just a RAW sequence that is somehow already available for the FLIPPER (you have to dig in some of the FZ repositories), but I’m pretty sure that if you try it you’ll be disappointed that it doesn’t work…