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

Improve Hormann BiSecur readability in SubGHz history #119

Merged
merged 4 commits into from May 13, 2024

Conversation

user890104
Copy link
Contributor

@user890104 user890104 commented May 6, 2024

What's new

  • SubGHz decoders can provide a one-line string to be used in the history list.
  • Improve Hormann BiSecur readability in SubGHz history, so that the serial number and a hash of the encrypted bytes can be seen without exiting the list.
  • Increase deduplication threshold in SubGHz history from 500 to 600 ms.

For the reviewer

  • I've uploaded the firmware with this patch to a device and verified its functionality
  • I've confirmed the bug to be fixed / feature to be stable

@Willy-JL
Copy link
Member

Willy-JL commented May 7, 2024

Adding shorthand's there would get cumbersome quickly with how many protocols there are, and I don't think starting to do that would be the best idea.

We can use a shorthand in the protocols name, could do BiSec or BSec or BS instead of the full "BiSecur"

@user890104
Copy link
Contributor Author

user890104 commented May 7, 2024

What about adding a new API method, so the protocol can provide code to generate its SubGHz history line string? I see you already added a custom member to the struct (long hash), so the BC is already broken.

For this protocol there's lots of data, so in order to make sense I would format is as follows:

  • "HBS Wrong C/S" if the checksum does not match
  • "HBS XX/YY/ZZ" if the checksum is correct where XX is the type (0x50 or 0x70), YY is a XOR hash of the serial number of the remote and ZZ is a XOR hash of the encrypted data. So each remote and each transmission from the same remote can be differentiated by just looking at the subghz history list entries.

Unrelated to this, the three repetitions of the packet (generated with a single button press) are send 504.3 ms apart, so they appear as a separare decoded messages, since the duplocation threshold is set to 500 ms. Not sure if it makes sense to bump this, because the x2 and x3 markers at the start of the lines eat up valuable space.

@Willy-JL Willy-JL marked this pull request as draft May 12, 2024 08:11
@Willy-JL Willy-JL added the enhancement New enhancement or request label May 12, 2024
@user890104 user890104 force-pushed the subghz-protocol-hormann-bisecur branch from 55588a2 to 39aa476 Compare May 12, 2024 22:58
@user890104 user890104 force-pushed the subghz-protocol-hormann-bisecur branch from 39aa476 to 1427f98 Compare May 13, 2024 02:16
@user890104 user890104 force-pushed the subghz-protocol-hormann-bisecur branch from 1427f98 to d780c55 Compare May 13, 2024 02:24
@user890104
Copy link
Contributor Author

The final format, which looks good on the flipper screen is:
HBS Bad checksum if the checksum is incorrect
or
HBS XXXXXXXX:YY where XXXXXXXX is the serial number and YY is a hash of the encrypted bytes.

…ecure remotes.

They transmit the 2FSK data 3 times, with a 504.3 ms pause, which is enough to
show them as three separate signals, although they are absolutely identical.

On the flipper, that's measured between 578 and 591 ms.
@user890104 user890104 force-pushed the subghz-protocol-hormann-bisecur branch from 43f0572 to 0a40b34 Compare May 13, 2024 02:53
@user890104 user890104 marked this pull request as ready for review May 13, 2024 02:58
@user890104
Copy link
Contributor Author

A two-byte data hash will make things more clear, and still fit on the same line.

Copy link
Member

@Willy-JL Willy-JL left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks!

@Willy-JL Willy-JL merged commit b0e4ee3 into Next-Flip:dev May 13, 2024
2 checks passed
@user890104 user890104 deleted the subghz-protocol-hormann-bisecur branch May 14, 2024 10:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New enhancement or request
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

None yet

2 participants