Open
Conversation
1. Fixed Celsius units. The correct is: °C 2. Added binary sensors supporting DW BLU and Motion BLU 3. DW State and tilt stored in dedicated, retained topics (to prevent unknown state after HA restart when most recent telementry didn't reported them) 4. Added option to process only devices provided in `allowed_devices` struct (incl. KVS) 5. The structure might contain a manufacturer and model, in order to store them into Discovery topics 6. Added via_device to the discovered device, reporting BLE proxy device mac address 7. Added mac address of BLE device to the discovered device 8. rotation renamed to tilt (in HA entities) 9. window class changed to opening to make it more universal (ie windows, doors) 10. window binary state named contact to support both doors and windows, otherwise HA generates senseless names, 11. changed default device name to macaddress[-modelname] 12. added debug (default: true). Helps to find mac of the new device 13. set mqtt_src to id-name (attributes of Shelly DEVICE_INFO)
option to report as mqtt_event (prefered) or device_trigger
1. Fixed Celsius units. The correct is: °C 2. Added binary sensors supporting DW BLU and Motion BLU 3. Added MQTT events to support buttons (incl. multi-button devices) 4. DW State and tilt are stored in dedicated, retained topics (to prevent unknown state after HA restart when the most recent telemetry didn't reported them) 5. Added option to process only devices provided in `allowed_devices` struct (within script and/or KVS) 6. The structure might contain the manufacturer and model names, in order to pass them in the Discovery topics 7. Added via_device to the discovered device, reporting the MAC address of the proxying device 8. Added the MAC address of BLE device to the discovered device 9. Rotation renamed to tilt (in HA entities) 10. Changed the window class to opening one, to make it more universal (ie windows, doors) 11. A window binary state named contact to support both doors and windows; otherwise, HA generates senseless names 12. changed default device name to macaddress[-modelname] 13. added debug (default: true). Helps to find the MAC of the new device 14. set mqtt_src to id-name (attributes of Shelly DEVICE_INFO)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
ble pasv mqtt gw overhaul
This PR introduces several changes, including fixes, refactors, and new features. All are focused on Discovery while BLE code remains untouched (almost... support of multi-button devices has required some touches)
Major changes:
New features
connections,identifiers, andvia_deviceto the MQTT discovered deviceImprovements
Breaking changes:
The data are no longer stored in
sensor,telemetry, andstatustopics. The new common topic isdata.Click for details
There are multiple reasons for that:It turns out that depending on the combination of values in the event, particular values might got their topic changed as time goes by.
Changed naming schema
mac-modelormacif the model is not providedtemperature. Then HA will create entity_id based onmac-model devclass, for example (sensor.xxxxxxxxx_ht_temperature)unique_idof entities is set tomac-type(xxxxxxxxx-window) ormac-type-index(xxxxxxxxxxx-button-2)Click for details
Change to the naming aligns final device and entity names with Home Assistant standards.HA will name the entity to
devicename name, for example:1a2b3c4d5e6f-H&T BLU Temperature. Then, renaming the device gives an option to automatically rename entities in order to follow the device name change. For example, changing the name of the device toPCROOM HTwill (after confirmation) turn the entity name intoPCROOM HT Temperature.On top of that, some HA pages (ie, device view) can strip the device name out of the entity name, making them shorter and less cluttered.