* [DISC] Add runtime configuration for OpenHAB
Add an MQTT configurable system key "ohdiscovery" for OpenHAB auto discovery
* Docs and environments update
Description:
1 - Fix nextDisplayPage/nextWebUIPage sync with SSD1306
2 - Discovery message name is SS1306
3 - Stack size tuning - ARDUINO_LOOP_STACK_SIZE=9600
With this change, in your personal ESP32 platformio environments you need to change ${com-esp.build_flags} to ${com-esp32.build_flags} and ${com-esp.lib_deps} to ${com-esp32.lib_deps}
4 - On information page, fix module display
5 - Set OTA URL to String systemUrl = RELEASE_LINK + latestVersion + "/" + ENV_NAME + "-firmware.bin";
6 - Allow back level espressif32 framework support
Add device tracker detection and automatic creation following HA discovery convention
So as to trigger the away state, add an offline status to the identified BLE trackers
* [OTA] Add automatic OTA updates
This feature will enable to update the gateway with one button or a simple MQTT command.
* [CI] Enable automatic OTA for nightly development builds
And integrate the latest_version file creation into the CI
Enable to specify a particular version
and switch between dev and production builds
To enable boards with the constant power supply to don't build this function.
Change the default behavior for the mode not to be built by default.
Only the boards with batteries are keeping it
* [BT] Adaptive scan
Add adaptive scan to avoid users setting parameters and deduct automatically the scan requirements from the list of devices
---------
Co-authored-by: DigiH <github@digih.net>
With only one control that enables the publication of all the advertisement data, default: false
Note that if the sensor is not recognized, we will no longer publish its advertisement data unless the control is true. This is for the sake of traffic reduction.
The previous macro used SENS_SAR_MEAS_WAIT2_REG to identify if we have the reading capability was not working, so replacing it by a fresh one NO_INT_TEMP_READING, defined as a negation due to the fact that most of the ESP32 supports internal temperature reading.
* Add automatic stop of relay following ESP32 temperature
To avoid overheating when too much current goes through the device.
Add internal temperature reporting to SYStoMQTT
This function is not available with ESP32 S3 and C3
* Temp update and error log
Update of the temperature to get closer to the datasheet of the ESP32 -40 +85C
and add the module name to the error log
This also changes the topic structure when using the macro valueAsATopic=true, it adds as sub-topics the `type, subtype, and channel` when they exist.
The id is the last subtopic to facilitate filtering, as it may change when replacing the batteries.
Co-authored-by: NorthernMan54 <19808920+NorthernMan54@users.noreply.github.com>
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.
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)
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
* 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
* 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
* 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