Releases: theengs/gateway
TheengsGateway v1.5.0
BREAKING CHANGE:
See the documentation at https://gateway.theengs.io/use/use.html#details-options
NEW FEATURE:
- Whitelist and Blacklist implementation by @johannes-z in #257
What's Changed
- model_id included in tracker dict by @DigiH in #237
- Add option -ti/--tls_insecure to not check certificate hostname by @mcesar-rlacruz in #244
- Remove discovery filter remnants at startup by @DigiH in #248
- fix mqtt reason_code is not an int by @Mips2648 in #252
- [DISC] Additional discovery device classes by @DigiH in #253
- Whitelist and Blacklist implementation by @johannes-z in #257
- White/blacklist fix by @DigiH in #258
- Bump TheengsDecoder to 178 by @DigiH in #259
New devices
Devices | Model | Measurements |
---|---|---|
Gigaset | G-Tag | device tracker |
Mobvoi | TicWatch GTH (Pro) | device tracker |
Jaalee | F51C | temperature, humidity, battery |
XOSS | X2 heart rate sensor | heart rate, battery |
NodOn | NIU smart button | button press type, color, battery |
Govee | H5105 | temperature, humidity, battery |
Feasycom | Bluetooth Beacons | beacon model, battery, plugged-in |
Otodata | RC1010 | level, status, serial, model type |
Amphiro/Oras/Hansa | Faucet | serial number, battery |
Tilt | Brewing Hydro- Thermometer | color, temperature, specific gravity, txpower @ 1 m |
SwitchBot | Blind Tilt | open, direction, motion, calibrated, light level, battery |
New Contributors
- @mcesar-rlacruz made their first contribution in #244
- @Mips2648 made their first contribution in #252
- @johannes-z made their first contribution in #257
Full Changelog: v1.4.0...v1.5.0
TheengsGateway v1.4.0
What's Changed
- Don't spam log with full stack trace when bindkey not found by @koenvervloesem in #228
- [DOCS] Add installation instructions in Python venv by @koenvervloesem in #229
- [DOCS] Add Identities IRK example for docker by @1technophile in #230
- [DOCS] Add instructions for systemd service by @koenvervloesem in #231
- Tracker only discovery fix by @DigiH in #232
- General Presence implementation by @DigiH in #233
- Migrate to Paho MQTT 2.0 by @koenvervloesem in #234
Full Changelog: v1.3.0...v1.4.0
TheengsGateway v1.3.0
What's Changed
This release is focused on presence detection. We can now detect the presence and absence of trackers devices like TILE, NUT, BlueCharm (and other models identified here, the gateway will publish an offline message after tracker_timeout (120s per default) to set your controller to "Away" status.
Additionally, the Apple Watch, iPhone, and iPad can be used for presence detection using their IRK.
And of course numerous other enhancements detailed below, thanks @DigiH and @koenvervloesem !
New devices
Devices | Model | Measurements |
---|---|---|
ClearGrass/Qingping | CGP23W | temperature, humidity, atmospheric pressure, battery |
Aranet4 | CO₂ Monitor | temperature, humidity, pressure, carbon dioxide, battery |
Switchbot | Curtain model 3 | moving, position, light level, battery, calibration state |
New features
- prmac implementation by @DigiH in #187
- Apple devices Identity Address and IRK instructions by @DigiH in #190
- [DISC] HA discovery lock class added by @DigiH in #191
- Add option to disable BLE by @koenvervloesem in #196
- [DISC] device_tracker discovery by @DigiH in #213
- [DISC] device tracker discovery value_template to rssi by @DigiH in #215
- [DISC] Isolate "track" advanced property publishing by @DigiH in #217
- [DISC] Timeout for discovered device trackers by @DigiH in #219
Miscelleanous
- Process undecoded messages from MQTT the same way as from BLE by @koenvervloesem in #192
- Show command-line options alphabetically by @koenvervloesem in #195
- Show version in --help output by @koenvervloesem in #198
- Update Ruff version and use ruff-format instead of black formatter by @koenvervloesem in #199
- Fix undecoded servicedata by @DigiH in #204
- Fix TypeError for None values in diagnostics by @koenvervloesem in #206
- Don't crash when receiving JSON message without id by @koenvervloesem in #223
- Apple devices only unlocked fix by @DigiH in #221
Documentation
- [DOCS] Remove devices page as now generated by the decoder by @1technophile in #185
- [DOCS] pip upgrade addition by @koenvervloesem in #194
- [DOCS] Passive scanning path clarification by @DigiH in #200
- [DOC]S General documentation fixes, using Vale's Google style guide by @koenvervloesem in #211
- [DOCS] Further documentation fixes by enabling Google style suggestions by @koenvervloesem in #212
- [DOCS] Factorize configuration by @1technophile in #218
- [DOCS] Add IRK screenshot by @1technophile in #224
CI
- [CI] Run pre-commit on all files by @koenvervloesem in #214
- [CI] Ignore Ruff rules conflicting with formatter by @koenvervloesem in #209
- [CI] Run Vale in pre-commit to spellcheck documentation by @koenvervloesem in #210
- [CI] Run checks also on Python 3.12 by @koenvervloesem in #197
- [CI] Test build of Python package on all Python versions for every PR by @koenvervloesem in #201
- [CI] Update Vale to 3.0.4 by @koenvervloesem in #220
- [CI] Relax McCabe complexity limit to 15 by @koenvervloesem in #222
Full Changelog: v1.2.0...v1.3.0
TheengsGateway v1.2.0
What's Changed
On top of numerous new devices supported, this version brings exciting features like the support of encrypted advertisements, the capability to resolve private BLE addresses, HA MQTT discovery tuning, and TLS/Websockets support. Let's dive in!
New devices
Devices | Model | Measurements |
---|---|---|
April Brother | N07 | temperature/humidity/battery/packet ID |
BM6 Battery Monitor | BM6 | battery |
GOVEE | H5100 | temperature/humidity/battery |
GOVEE | H5104 | temperature/humidity/battery |
GOVEE | H5179 | temperature/humidity/battery |
INKBIRD | IBS-TH12S | temperature/humidity/battery |
NUT | NUTALE | tracker |
Oral B | Toothbrush | state, mode, sector, pressure, time |
Lippert | BottleCheck | temperature/level/sync status/voltage/battery/reading quality/acceleration x/y-axis |
ShellyBlu | Button1 | button press type/battery/packet ID |
ShellyBlu | Door/Window | contact/rotation/battery/packet ID |
ShellyBlu | Motion | motion, illuminance, battery, packet ID |
ThermoPro | TP357s | temperature/humidity |
New features
- Add support for ShellyBLU Button1 encrypted advertisements by @koenvervloesem in #145
- Add -c option to choose path for configuration file by @koenvervloesem in #143
- Add support for encrypted PVVX advertisements by @koenvervloesem in #146
- Publish encrypted properties when PUBLISH_ADVDATA is 1 by @koenvervloesem in #150
- Add support for decrypting ShellyBLU Door/Window advertisements by @koenvervloesem in #153
- Decode advertisement with service data for each UUID separately by @koenvervloesem in #154
- Simplify decoding of advertisements by @koenvervloesem in #157
- Simplify configuration and arguments merging by @koenvervloesem in #158
- feat/websockets-ssl by @radim-kliment in #160
- Document TLS and WebSocket options by @koenvervloesem in #161
- Support encrypted ShellyBLU Motion advertisements by @koenvervloesem in #172
- Resolve private addresses for known IRKs by @koenvervloesem in #173
- Update encryption code to Decoder 1.6.2 by @koenvervloesem in #176
- [DISC] HA discovery device classes and units additions by @DigiH in #177
Miscelleanous
- Stop scan loop and show error message on BleakError by @koenvervloesem in #179
- [DISC] Align discovery by @1technophile in #183
- Clean up configuration code by @koenvervloesem in #162
- Fix typo preventing startup by @kw217 in #169
- Clean up code with newly activated Ruff rules by @koenvervloesem in #156
- Bump Theengs Decoder to v1.6.4 by @1technophile in #184
Documentation
- [DOCS] Add H1 title by @1technophile in #164
- [DOCS] Add compatible list by @1technophile in #140
- [DOCS] Clarify support of non-Linux platforms by @koenvervloesem in #155
- [DOCS] Remove new icon by @1technophile in #141
- [DOCS] Fix typo in docs by @jcherniak in #147
CI
- [CI] Enable all Ruff rules by @koenvervloesem in #163
- [CI] Update GitHub actions by @koenvervloesem in #151
- Update pre-commit configuration and fix newly found issues by @koenvervloesem in #165
- [CI] Run pre-commit checks on all supported Python versions by @koenvervloesem in #170
- Automatic versioning from Git metadata by @koenvervloesem in #149
New Contributors
- @jcherniak made their first contribution in #147
- @radim-kliment made their first contribution in #160
- @kw217 made their first contribution in #169
Full Changelog: v1.1.0...v1.2.0
TheengsGateway v1.1.0
What's Changed
- Docstring fixes by @koenvervloesem in #133
- Add typing annotations by @koenvervloesem in #134
- Clean up exceptions by @koenvervloesem in #135
- [TD] Update TheengsDecoder requirement version to 1.4.2 by @DigiH in #136
- [DOCS] Add web parser by @1technophile in #137
- Only log number of published messages at INFO level by @koenvervloesem in #138
- Bump TheengsDecoder to 150 by @1technophile in #139
Full Changelog: v1.0.0...v1.1.0
TheengsGateway v1.0.0
What's Changed
- Fix diagnose and run diagnostics when log level is DEBUG by @koenvervloesem in #122
- Add APPLE_CONT and APPLE_CONTAT to default discovery filter by @koenvervloesem in #123
- Run ruff and mypy in pre-commit by @koenvervloesem in #125
- Add publish_advdata option by @koenvervloesem in #127
- [RMAC] Filter random mac devices by @1technophile in #128
- [TD] Update TheengsDecoder requirement version to 1.4.0 by @1technophile in #129
- [RMAC] Remove unnecessary filters by @1technophile in #130
Full Changelog: v0.9.0...v1.0.0
TheengsGateway v0.9.0
What's Changed
- Add mfr key with company name based on company ID by @koenvervloesem in #95
- Fix not being able to set publish_all to 0 by @koenvervloesem in #96
- Use UTF-8 encoding to read long description in setup.py by @koenvervloesem in #98
- The main loop should not run in the same scope as init by @blacklight in #101
- Added presence detection by @toomyem in #106
- Added LWT message handling by @toomyem in #108
- [DOCS] Add use cases links by @1technophile in #111
- Replace deprecated BLEDevice.rssi by AdvertisementData.rssi by @koenvervloesem in #114
- Use TheengsDecoder package instead of submodule by @koenvervloesem in #112
- Add diagnose module for troubleshooting by @koenvervloesem in #116
- [DIAG] Fix requirement for windows by @1technophile in #117
New BLE devices support:
Devices | Model | Measurements |
---|---|---|
Polar | H10 | heart rate |
Atomax | Skale | weight |
New Contributors
- @blacklight made their first contribution in #101
- @toomyem made their first contribution in #106
Full Changelog: v0.8.0...v0.9.0
TheengsGateway v0.8.0
What's Changed
- Generalized time synchronization support for more clocks by @koenvervloesem in #91
- [CI] Fix poetry error on isort by @1technophile in #94
- Bump TheengsDecoder to 1.1.0 by @1technophile in #93
- LYWSD03MMC negative temp fix by @DigiH in theengs/decoder#269
- MHO-C401 fix by @DigiH in theengs/decoder#259
- MAC model condition introduction by @DigiH in theengs/decoder#263
- SwitchBot Curtain fix by @DigiH in theengs/decoder#268
New BLE devices support:
Devices | Model | Measurements |
---|---|---|
BlueCharm | BC08 | acceleration x/y/z-axis/voltage/temperature |
Jaalee | JHT F525 | temperature/humidity/battery |
Full Changelog: v0.7.0...v0.8.0
TheengsGateway v0.7.0
What's Changed
- Disable duplicate detection of advertisement data on Linux by @koenvervloesem in #85
- Bump Theengs Decoder to v1.0.0 by @1technophile in #89
New BLE devices and changes:
Devices | Model | Measurements |
---|---|---|
BlueMaestro | TempoDisc 1 in 1 | temperature/battery |
BlueMaestro | TempoDisc 4 in 1 | temperature/humidity/pressure/battery |
ClearGrass alarm clock | CGD1 | temperature/humidity/battery |
ClearGrass alarm clock | CGC1 | temperature/humidity/battery |
GOVEE | H5074 | temperature/humidity/battery |
GOVEE | H5101 | temperature/humidity/battery |
GOVEE | H5106 | PM2.5/temperature/humidity/battery |
GOVEE | H5174 | temperature/humidity/battery |
GOVEE | H5177 | temperature/humidity/battery |
Oria/Brifit/SigmaWit/SensorPro | TH Sensor T301 | temperature/humidity/battery |
Mopeka | Pro | temperature/level/sync status/voltage/battery/reading quality |
Sensirion | MyCO₂/CO₂ Gadget | temperature/humidity/carbon dioxide |
Sensirion | SHT4X TH sensor | temperature/humidity |
ThermoPro | TP393 | temperature/humidity |
Full Changelog: v0.6.6...v0.7.0
TheengsGateway v0.6.6
What's Changed
- Remove usage of packaging.LegacyVersion by @koenvervloesem in #84
Full Changelog: v0.6.5...v0.6.6