Commit Graph
56 Commits
Author SHA1 Message Date
Florian 85a4fd6e15 Remove auto discovery switch (#1365)
I don't think there is usage for such a switch into HA, if you see it, auto discovery was already activated and all the entities created, so you will have to go to the mqtt client to remove the retained messages.
If you don't want auto discovery as an HA user you would have to go to the mqtt client to send the discovery message deactivation.
So either way as a HA user you have to go to a client.
And as people not wanting to use auto discovery with HA are the people that are not using HA this switch as a little value.
2022-12-19 08:51:36 -06:00
Florian 25d921580d [HA discovery] Save the BLE settings and change switch to optimistic false (#1364)
The current way of saving settings is through the retain flag of the MQTT commands, unfortunately if several commands are issues they may overwrite each other. So as to prevent it, we now leverage the memory saving introduced earlier to store the BLE settings.
Also leverage the config status publication to show the state through the button position (optimistic false)
2022-12-19 08:44:14 -06:00
Florian 8dde777fb7 [BLE] Add dynamic active scan runtime setting (#1360)
This commit add the capability to set passive scanning during runtime, versus buildtime before, so as to improve energy consumption of sensors when they don't require active scanning
2022-12-14 17:03:34 -06:00
Florian 31403d8623 HA auto discovery - Add numbers for interval and scans netween connects (#1357)
To be able to set those values directly through the HA interface
2022-12-12 15:41:30 -06:00
Florian 1aabfb8cb8 HA auto discovery - Transform switch discovery to button when relevant (#1356)
BLE force scan, restart and erase of the gateway can be triggered with a button instead of a switch
2022-12-12 14:35:14 -06:00
FlorianandFlorian 4bbdeadb53 Update RN8209 sensors names (#1342)
to NRG to be more generic

Co-authored-by: Florian <1technophile@users.noreply.github.com>
2022-12-01 11:13:41 -06:00
Florianandh2zero 8ee1c4e524 RN8209 energy sensor support with watt, voltage and current. (#1337)
Co-authored-by: h2zero <powellperalta@gmail.com>
2022-11-29 18:41:47 -06:00
Florian 145896516d Enable to set Manufacturer and Model (#1336)
from macros
2022-11-29 10:48:00 -06:00
David Furey ec96b72d96 Support LM75 temperature sensor (#1327)
* First draft of LM75 sensor based on HTU21 sensor

* Initialise I2C on ESP8266

* Add LM75 sensor to test builds

So that it will be tested with the continuous integration
2022-11-28 11:31:46 -06:00
Florian bbaabcc20d Fix missing lowpowermode attribute (#1281)
LowPowerMode is not used outside of the BT gateway, removing it from discoveyr fixes #1267
2022-10-10 18:30:46 -05:00
spinpwr 0ff3e98d91 Adding unique device names to HA dicovery (#1270)
* Adding unique device names to HA dicovery

Multiple devices of the same model got the same name in Home Assistant,
making the device list less informative when there are many of e.g. the
same sensor.
To over come this changed the function publishing discovery messages to
add the second half of the device mac address to the device name so it
becomes unique.

Issue: #1269
2022-10-10 13:10:33 -05:00
DigiH c4300a002f MQTT-MAC-IP-mDNS (#1245) 2022-07-19 12:10:51 -05:00
h2zero 8d6acbee12 Add Switchbot support and discovery. (#995)
* Use a task to process immediate BLE actions to prevent MQTT disconnection if the action takes too long to complete.

* Add state_on and state_off parameters to createDiscovery
2022-04-30 09:16:06 -05:00
Florian e6c8b6763c Fix unit discovery for kg and kpa (#1171)
And improve the code
2022-02-25 05:51:59 -06:00
Florian 5b42e024e2 HASS auto discovery - Separate unit filtering from class (#1159) 2022-02-07 18:42:37 -06:00
Florian a9342f743f Change unique id structure for HASS discovery (#1147)
Now:
"uniq_id":"882D777014C-pres"
before it was:
"uniq_id":"882D7770014C-CLEARGRASSTRHKPA-pres"
This will impact BLE and gateways entities
2022-01-27 15:47:29 -06:00
Florian 749c1592b4 Add M5Tough board (#1135) 2022-01-17 19:22:26 -06:00
Florian 71d5622a52 Filter discovery messages against HASS classes list (#1127)
* Filter the discovery message content against HASS list of classes
2022-01-11 20:24:09 -06:00
Florian 7dc49165a0 Discovery with theengs decoder (#1106)
* Discovery with theengs decoder

* Add devices to doc

* Correct missing suffix for DT24
2021-12-11 11:54:08 -06:00
Alessandro Staniscia 4b53a30af4 Review of data structure (#1096) 2021-11-06 16:00:20 -05:00
Alessandro Staniscia bdda5df839 rationalisation of logs and removal of duplicate codes (it should fix also #931) (#1093)
* Rationalisation of logs and removal of duplicate codes
2021-11-02 16:46:01 -05:00
Alessandro Staniscia e9ce921717 Add support for discovery device trigger (#1090)
* Add announce of DeviceTrigger +  Update doc
2021-10-24 08:30:36 -05:00
Alessandro Staniscia e14a78e9c0 Support Home Assistant Long-term Statistics #1087 (#1088) 2021-10-14 18:46:13 -05:00
h2zero ed4949f769 Update to use ArduinoJson 6+ (#1071) 2021-09-01 19:18:19 -05:00
Chris van Marle d2ff32d56f Allow inversion of input GPIO (#997)
* Allow inversion of input GPIO

* Fix formatting
2021-06-26 09:31:05 -05:00
h2zero 4467ef9a17 Fix missing gateway name in discovery. (#982) 2021-06-11 15:32:23 -05:00
h2zero e3731bdccf Cleanup compiler warnings in strict environment. (#945) 2021-05-16 19:47:50 -05:00
Florian e1aef48296 [Breaking] Deactivate Home Assistant presence per default (#915)
And enable to activate it by MQTT
2021-04-04 19:34:36 -05:00
Florian 221afa98b0 Change uptime calculation method (#901)
and revert #897
2021-03-18 15:07:59 -05:00
Florian 0e8b619bb9 [BREAKING] Change uptime unit from seconds to minutes (#897)
* Change uptime from s to min

to prevent going to the max of unsigned long
2021-03-14 19:31:53 -05:00
Florian 8afb1c5223 Enable deactivation of BLE connect (#895)
Useful if you want to scan continuously for BLE device, in this case you should deactivate the BLE connect to avoid concurrency between scan and connect
2021-03-14 12:53:26 -05:00
Csiki ebd6bb8031 Bt discovery fix (#880)
* launchDiscovery fix for esp32 (sending the discovery mqtt messages on the main core)
2021-03-02 17:13:14 -06:00
Florian 4431af462f Correct RF2 gateway auto discovery (#874)
#786
2021-02-22 19:44:44 -06:00
Florian 557cf340db Improve low power mode (#859)
-add switch on HASS
-avoid issue when using ESPWifiManualSetup
-Correct issue on gateway discovery on first connect
-stop processing during discovery
2021-02-05 15:19:43 -06:00
Florian 2d377a1c3f Auto discovery deactivation at runtime by MQTT command (#856)
and switch automatic creation for it in HASS (by autodiscovery :-)
2021-01-31 13:41:22 -06:00
Thibault Cohen 0c01ded583 HASS Discovery - Create BLE devices automatically to gather entities (#826)
Create automatically devices into Home Assistant through MQTT auto discovery

Before, only entities were created automaticaly and they were not linked to a device.
2020-12-22 06:31:13 -06:00
Florian d450c505f2 Add M5 SYS parameters to auto discovery (#829) 2020-12-06 13:23:00 -06:00
Florian d172bed5ae Implement multi gateway discovery (#819)
Enable HASS to retrieve data of remote sensors from multiple gateways by using wildcards for the location (instead of default:home) and the gateway name (instead of default:OpenMQTTGateway)
2020-12-03 06:11:11 -06:00
Florian 9a66c9ef09 HASS gateway Discovery improvements (#792)
* MQTT discovery improvements

-remove gatewayBT
-remove device class formaldehyde (not existing in HASS)
-add SYStoMQTT new parameters
-attach connectivity parameter to the device
-add BT gateway infos and switches
-refactor modules storage and publication
2020-11-04 11:53:55 -06:00
hbraamandhbraam cabc8695eb Add rf2 HASS autodiscovery (#791)
* Add Home Assistant auto discovery feature

Add HA auto discovery to RF2.
For each unique combination of unit, groupbit and address a switch will be added to Home Assistant called:  "RF2_[unit]_[groupbit])_[address].
As RF2 433Mhz switches do not render their state, no state topic will be provided in the discovery.
This will cause the switch to be in optimistic mode in HA with separate on and off icons.
The two separate on/off icons allow for subsequent on commands to support the dimming feature of KAKU switches like ACM-300.

Co-authored-by: hbraam <hbraam@users.noreply.github.com>
2020-11-03 14:39:28 -06:00
orrpan 03ab7f7d0e update temperature unit to work in HA (#768)
* update temperature unit to work in HA
* use only one temperature sensor for HA
2020-10-04 14:56:34 -05:00
JonandJonathan Michael Wells 4f1b49d135 Standardize MQTTDiscovery Temp Keys [deprecate tem key] (#703)
* Detect when sensor isn't available or read fails

* Add temperature conversion macros

* Add 'tempc' & 'tempf' keys to published values

* Unique Values for HA Discovery

* Remove degree symbol from temp sensors

Co-authored-by: Jonathan Michael Wells <jonathan-wells@oist.jp>
2020-07-24 10:10:44 -05:00
Jon 0e257a58c1 Add AHTx0 Sensor (AHT10 and AHT20) (#687)
* Add AHT Sensor
2020-07-04 09:40:06 -05:00
Florian 1e10783a28 [DISCOVERY] replace unit of measurement lu by lx (#628)
#603
2020-06-10 20:16:46 -05:00
Leon Kiefer 10a9d00aaf Added clang-format (#623)
* added .clang-format
* added names to travis jobs
removed deprecated travis option
* check github action
* added .gitignore
2020-06-09 16:09:23 -05:00
Jon 4bc8621910 Ds1820 HADiscovery (#621)
* DS18b20 HADiscovery
* Allow Multiple DS18b20 Sensors
* Optimize Bus Scan
* Update Docs

Co-authored-by: Jonathan Michael Wells <jonathan-wells@oist.jp>
2020-06-04 17:16:40 -05:00
Florian 489ce99659 Implement OpenHAB autodiscovery (#612) 2020-05-12 15:05:37 -05:00
JonathanandJonathan Wells cf641851af Added HTU21 Sensor (#588)
* Added HTU21 Sensor Support

Co-authored-by: Jonathan Wells <jonathan-wells@oist.jp>
2020-04-29 08:22:17 -05:00
Peter Becker 033a583f0a remove duplicate code in main\ZgatewayBT.ino (#557)
* merge duplicate code into function setWorBMac

* rename setWorBMac to updateWorB

* add helper getDeviceByMac

* change updateWorB to use helper getDeviceByMac

* change isWhite to use helper getDeviceByMac

* change isBlack to use helper getDeviceByMac

* change isDiscovered to use helper getDeviceByMac

* eliminate duplicate devices walk for isWhite, isBlack and isDiscovered check

* fix a data corruption race between MQTTtoBT and discovery-functions

the ***Discovery functions every time create a new device unless this device is set to white-list before. as a result of this, the devices list contains the same mac multiple times with different flags

* eliminate duplicate devices walk for oneWhite check

because now we have a utility function 'createOrUpdateDevice' we can globally cache this as a single flag

* secure createOrUpdateDevice agains data races on multicore esp32

* fix the concept of the createOrUpdateDevice

c / c++ does not allow NULL as function parameter like modern languages

* use nkolban Semaphore helper class (already included and used from eos1d3/ESP32_BLE librarie)

this makes the semaphore handling more cleaner and readable

* merge duplicate code during createDiscovery into new helper createDiscoveryFromList

* replace excessive use of ZmqttDiscovery precompiler directive in ble advertised callbacks with dummy functions

for a better readability we can remove this because isDiscovered does not do a devices walk anymore

* fix build errors found by travis-ci
2020-03-02 13:54:53 -06:00
Florian f3c9d6dd90 Lean on Arduino log library instead of custom logging methods (#546)
* Lean on Arduino log library instead of custom logging methods
2020-02-09 16:01:52 +01:00