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

MI32 legacy: add BTHOME sensor parser #20625

Merged
merged 1 commit into from
Jan 30, 2024
Merged

Conversation

Staars
Copy link
Contributor

@Staars Staars commented Jan 30, 2024

Description:

Initial support for sensors using BTHOME packet format - https://bthome.io.
Thankfully this format can serve all kinds of purposes and is very flexible. It can even be useful for internal use as it is possible to build pure BLE devices with Tasmota sending BTHOME packets for many months now.

Basically every BLE sensor, that can be flashed with a custom firmware based on the first project of this kind (https://github.com/atc1441/ATC_MiThermometer for the LYWSD003MMC) can be configured to send in the BTHOME format.
The number of supported sensors is growing steadily and meanwhile includes some TUYA based models, although no easy OTA conversion for every new type is available. Kudos for @pvvx for his huge amount of work: https://pvvx.github.io

As the parser must stop if an unknown data type is received, Feedback is needed in such cases. It should be pretty trivial to add more data types, although ATM it is only planned to roughly match the feature set of the Xiaomi/Mijia sensors. More advanced use case can already be realized with Berry anyway (like multiple entities of the same data type in one sensor).

Decryption is not supported yet.

Checklist:

  • The pull request is done against the latest development branch
  • Only relevant files were touched
  • Only one feature/fix was added per PR and the code change compiles without warnings
  • The code change is tested and works with Tasmota core ESP8266 V.2.7.6
  • The code change is tested and works with Tasmota core ESP32 V.2.0.14
  • I accept the CLA.

NOTE: The code change must pass CI tests. Your PR cannot be merged unless tests pass

@arendst arendst merged commit 083ddad into arendst:development Jan 30, 2024
64 checks passed
@Staars Staars deleted the mi32_bthome branch February 8, 2024 15:35
@AleXSR700
Copy link
Contributor

AleXSR700 commented Feb 29, 2024

Would it be possible to add this as a build option to the normal tasmota32-bluetooth build? That way other bluetooth features would continue to work :)

It looks like more and more sensors are moving to BTHome and pvvx is no longer adding any other format to his repos (e.g. his Tuya firmwares only support BTHome).

@pvvx
Copy link

pvvx commented Mar 1, 2024

Only BTHome v2 has a certified (official, paid) UUID in the Bluetooth SIG.
Previous formats using non-standard UUID (ATC/pvvx custom) will soon be removed from all DIY projects.

https://bthome.io/:Sponsors
The BTHome 16 bit UUID has been sponsored by Allterco, who purchased the UUID for us at the Bluetooth SIG organisation.

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.

4 participants