Creating "Add Manually" Entry

I am playing around with the idea of trying to create an “Add Manually” entry on my device for my garage door (original post here). If I cross line I will look to an admin to remove my post, but this seems like it should be fine.

My goal:
I want my flipper to work with my garage door. I do not want to clone my garage door opener. I want pair it with the motor like I do any other remote. There could be a number of issues with this, like I have no idea if the Flipper had the range to be able to make that happen. No idea. I am just a guy having fun with an open source project. I know this current plan wont work as it stands. That is why I am making a public post. If you want to help, reply or shoot me a PM.

Note:
NOTE 1: I have spent like 30minutes dinking around. While I am technical person professionally, I have minimal programming experience. I am going to be guessing a lot. Hopefully if someone wants to help, I can edit and refine my findings in this post.
NOTE 2: I see that digitalcircuit created a github request while I was making this post to get the devs to add this feature. That is super cool! I still want to dink around with this and see what we can figure out, cause nerding out is fun.


Files Needed:
Doing a quick search for (doorhan) existing menu options. I think I need to modify 4 files. I may have to edit the protocol file too, no idea, I have my hands full with these 4 right now. I figured out how to compile the code and push it to my device. If I get this working I will post my how to for compiling the code if you want to play with this your self.

  • subghz_scene_set_type.c - I am totally guessing. I think this makes the menu structure?
  • subghz_test.c - I think this what makes the menu structure work?
  • chamberlain_315.sub - I will need to make this file, I am going to copy from doorhan_315. I think this is where you set you starting parameters so the flipper knows what the hell it is doing.
  • chamberlain_raw.sub - I assume I am going to sacrifice one of the three buttons (I am only rich enough to have one garage door, no big deal). To capture the initial pairing signal which I have already uploaded in my linked post above?

chamberlain_315.sub
Create in: flipperzero-firmware-dev\assets\unit_tests\subghz

I have updated the information for this decoder based on what I was able to pull off my device for a Sec+ V1&2. This information should all be correct now. I was way off with my original guess. I would expect a lot of my other information to be just as bad. So take the unverified stuff with a grain of cyanide.

Sec+ V1.0
Filetype: Flipper SubGhz Key File
Version: 1
Frequency: 315000000
Preset: FuriHalSubGhzPresetOok650Async
Protocol: Security+ 1.0
Bit: 42
Key: 91 7E 94 EF 00 00 A5 E0

Sec+ v2.0
Filetype: Flipper SubGhz Key File
Version: 1
Frequency: 315000000
Preset: FuriHalSubGhzPresetOok650Async
Protocol: Security+ 2.0
Bit: 62
Key: 00 00 3D 11 78 A4 78 2D
Secplus_packet_1: 00 00 3C 26 36 EB 6D 61


chamberlain_raw.sub
Create in: flipperzero-firmware-dev\assets\unit_tests\subghz
I am guessing I just need to capture the initial pairing information maybe? No idea. I need help here.


subghz_scene_set_type.c and subghz_test.c
Found in: flipperzero-firmware-dev\applications\subghz\scenes\subghz_scene_set_type.c
Found in: flipperzero-firmware-dev\applications\unit_tests\subghz\subghz_test.c
Okay, I do not code. My plan for these it to essentially copy most if not all the code for Doorhan and do a find and replace for all of my additions for Chamberlain_315.

1 Like

conjectures, theories, conspiracies.

Do not confuse Doorhan and Security +. these are two completely different encryption and data transmission protocols, they only have in common that they are rolling. Doorhan has an implemented protocol and encryption encoder in the code, Security + does not. post so creating the file does not work. and it still saves from the fact that your garages are not opened like Tesla, it is worth thinking a few times before adding such functionality.

Thank you for some additional information. I will read some of the other files and Argilos information in depth tomorrow. I honestly do no think I will very far; this will likely die and I will move on to the next project, but trying is always fun.

I feel like if this needs to be feasible I need to do the following.

  • Figure out what the hell DoorHan is.
  • Review the other “Add manually” sub files.
  • Compare keeloq files and the secplus_1&2 in the flipperzero-firmware-dev\lib\subghz\protocols
  • Narrow the scope to focus on secplus 1 since that does not actually have encryption. Essentially reducing complexity.
  • Do a thorough read through on Argilos analysis and associated links.
1 Like

I made some assumptions, but it looks like it cannot be taken further on this forum. For the secplus_v1 protocol file has no abilities to transmit data at all. Even if I created an “add manually” option, sec+ cant do anything. I believe adding that information on this forum may get me banned? So this thread will just need to die.

I will update what I find that I think will not break the rules in my original post

Sorry!

1 Like

DISREGARD THIS THREAD

This post is going to be rewritten. It turns out that SkorP did write the “add manually” option for the chamberlain lift master.

Viewing the changes from

and

I can piece together some ways to do custom “add manually” options. This existing thread should no longer be referenced. The updated thread should be much more accurate (hopefully).

2 Likes