Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for Car Remotes #2764

Open
wants to merge 48 commits into
base: master
Choose a base branch
from
Open

Add support for Car Remotes #2764

wants to merge 48 commits into from

Conversation

eshaz
Copy link
Contributor

@eshaz eshaz commented Dec 24, 2023

Add support for multiple car remotes / keyfobs.

See merbanan/rtl_433_tests#462 for decode samples and documentation.

Manufacturer / Model:

  • Astroflex
    • Astrostart 2000
    • Astrostart 3000
  • Alps
    • FWB1U545
  • Audiovox
    • PRO-OE3B, AVX01BT3CL3 (FCC ID BGAOE3B)
  • Code Alarm
    • FRDPC2002
  • Compustar
    • 1WG3R-SH
    • 1WAMR-1900
  • Continental
    • KR5V2X
  • Chrysler
    • 56008761
    • 56008762 (FCC ID GQ43VT7T)
    • 04686366
    • 56021903AA
  • General Motors
    • ABO1502T
  • Microchip
    • HCS361
  • Nidec
    • OUCG8D-344H-A
  • Nutek
    • ATCD-1
    • APS99BT3BCF4, ATCH (FCC ID ELVATCD)
    • AVX1BS4, AVX-1BS4 (FCC ID ELVATCC)
    • A1BTX (FCC ID ELVATFE)
    • 105BP (FCC ID ELVATJA)
  • Siemens
    • 5WY72XX
  • Unknown
    • 6SC2

Resolves #2754

@zuckschwerdt
Copy link
Collaborator

Thanks! Simple decoders without value processing or checksums are best implemented as flex decoder confs, for examples see https://github.com/merbanan/rtl_433/tree/master/conf

For PWM Short and long need to be different, is your code that a typo?

E.g.

decoder {
    name=Audiovox-car-remote,
    modulation=OOK_PWM,
    short=550,
    long=1000,
    reset=1300,
    bits=37,
    get=
    get=@0:{16}:id,
    get=@16:{16}:code,
    get=@17:{1}:chk,
    get=@18:{4}:flags,
}

You can just add a documented conf to this PR.

@eshaz
Copy link
Contributor Author

eshaz commented Dec 25, 2023

Thanks! Simple decoders without value processing or checksums are best implemented as flex decoder confs, for examples see https://github.com/merbanan/rtl_433/tree/master/conf

I have a few devices on the 433Mhz frequency already and just using the flex decoder was causing false positives. I added a few sanity checks here that removed the false positives:

if (id == 0 || code == 0 || button == 0 || id == 0xffff || code == 0xffff) {
return DECODE_FAIL_SANITY;
}

@eshaz eshaz force-pushed the keyfobs branch 2 times, most recently from ae98d2c to 301a892 Compare December 25, 2023 17:48
@eshaz eshaz marked this pull request as ready for review December 28, 2023 05:23
@eshaz eshaz changed the title (Work In Progress) Add support for Car Remotes Add support for Car Remotes Dec 28, 2023
@eshaz eshaz force-pushed the keyfobs branch 2 times, most recently from 30746e9 to 6077f7d Compare December 30, 2023 20:09
@eshaz
Copy link
Contributor Author

eshaz commented Jan 3, 2024

I've finished decoding / reverse engineering all of the keyfobs I have as mentioned in #2754. Let me know if there's any formatting or changes needed.

I also have this PR open: merbanan/rtl_433_tests#462 that documents and adds some sample data for these devices.

@eshaz
Copy link
Contributor Author

eshaz commented Dec 15, 2024

@merbanan, @zuckschwerdt It's been almost a year since I've opened this PR. Just want to check in to see if needs any changes before merging.

@zuckschwerdt
Copy link
Collaborator

Just yesterday someone asked about HCS362 so this is interesting to some people. I'll try to review but this is really much code and not as plain as other decoders we have. Can you rebase and make sure that all files end with a linefeed?

At a quick glance the codes in the button_map's look too random. Are you sure that's not the codes for one specific sender?

@eshaz eshaz force-pushed the keyfobs branch 2 times, most recently from b83e70f to a44ebef Compare December 15, 2024 12:16
@eshaz
Copy link
Contributor Author

eshaz commented Dec 15, 2024

Just yesterday someone asked about HCS362 so this is interesting to some people. I'll try to review but this is really much code and not as plain as other decoders we have. Can you rebase and make sure that all files end with a linefeed?

@zuckschwerdt I've rebased against the current master branch and fixed the formatting.

At a quick glance the codes in the button_map's look too random. Are you sure that's not the codes for one specific sender?

Yeah I'm sure they are generic for each model. I have multiple examples of each device that I used to test with. Some of the remotes have multiple buttons that result in relatively complex bit-wise combinations. such as holding two or more down at the same time, etc.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Contribution Question: Adding Multiple Decoders
2 participants