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)
* added thingspulse gateways
* added thingspulse gateways, RGB LED for tinypico
* Added some LED and Birghtness options
* Requested Changes
* fixed format
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
So as to avoid to have a growing memory consumption, indeed each time these devices change their MAC it will create a new entry into the list. This increase continuously the memory consumption of the list. And as these devices can't be discovered and doesn't have interest to be white or black listed we don't store them
so as to don't disclose the password used for WM.
Also change the wm password from MAc to be the last 8 digits, as these will change more than the first 8 ones.
Also make consistent the ifndef qnd the parsing between WM_PWD_FROM_MAC and USE_MAC_AS_GATEWAY_NAME
* 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
* Add RGB Led management for errors, infos, and send receive events
Add RGB led management for indicators, integrate it for M5 Atom and ESP32 C3 and S3 dev board
Update Fastled version to 3.5.0.
The default behavior is with regular LED, to use RGB Led the macro RGB_INDICATORS needs to be define, along with the FASTLED_IND_TYPE, FASTLED_IND_DATA_GPIO and FASTLED_IND_NUM_LEDS
Note that some RGB led need to have a different color scheme, so in this case it can be entered along with the data PIN definition: -DFASTLED_IND_DATA_GPIO=27,GRB
* Add FastLed library to the environments
* Update Arduino core and BLE/WiFiManager libs.
* Add esp32-s3 and esp32-c3 environments.
* Update build script to use matrix.
* Update release build.
* Fix WiFiManager crash
* Use espressif32 version 3.5.0 for standard ESP32.
* Resolves BLE scan_evt timeout issue with latest version (5.2.0).
* ESP32C3 and ESP32S3 Env's use espressif32 version 5.2.0.
* Update LED pins for C3/S3 environments.
* Handle OTA actively when MQTT is not connected
Resolves#1292
* Fix compilation for targets not having OTA
* ArduinoOTA.handle() only with non-ESP targets
* OTA check before reboot: fix condition and add more comments
Signed-off-by: Sami Salonen <ssalonen@gmail.com>
Added to Heltec board display code logic to reduce corruption of messages on the display
Two piece of defensive code were added
- Only display messages to the display when operating on Core 1 ( Default Arduino ESP32 CONFIG_ARDUINO_RUNNING_CORE )
- Only display one character/string at a time
In the event of failure, default to Serial output.
PS SSD1306 driver similar issues
https://github.com/ThingPulse/esp8266-oled-ssd1306/issues/326https://github.com/ThingPulse/esp8266-oled-ssd1306/issues/352
* Re-publish BTtoMQTT Theengs discovery topics on MQTT re-connect
- Improved version of #1274, this should re-publish more
- Handle return value of (MQTT) client.loop() to detect connection loss
faster
Signed-off-by: Sami Salonen <ssalonen@gmail.com>
The main features of the upgrade to 0.1.3 of rtl_433_ESP are
1 - Change Transceiver Library to RadioLib
2 - Add support for SX127X transceiver module ( I used the 433 Mhz version of this Heltec module for development ).
3 - Added automatic calibration of the RSSI Signal detection Threshold
4 - Removed dependency on loop for start and end of signal detection, and moved to a ESP32 Task
5 - Moved received signal decoding to a ESP32 Task
6 - Identified Blueline PowerCost Monitor decoder as source of significant memory overhead and disabled.
7 - Multi Receiver support has been validated with RF, RF2 and PiLight
* 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
* Move minRssi in config_BT.h
Move var definitions next to compilation var definitions
* Introduce UseExtDecoder when is def MQTTDecodeTopic
Replace #ifdef MQTTDecodeTopic by #if UseExtDecoder
* Rename AttemptBLECOnnect to AttemptBLEConnect
* Create a struct (BTConfig_s) for BT configuration data
Create a default config for BTConfig_s (BTConfig_default) based on defines
Create a global variable (BTConfig) to hold live BT configuration data and initialize it
Move bleConnect to BTConfig
* Move BLEscanBeforeConnect in BTConfig
* Move BLEinterval in BTConfig
* Move PublishOnlySensors in BTConfig
* Move hassPresence in BTConfig
* Move minRssi into BTConfig
* Introduce presenceTopic into BTConfig
* Move MQTTDecodeTopic as extDecoderTopic into BTConfig
* Mutate UseExtDecoder as runtime var BTConfig.extDecoderTopic
* Remove ServicedataMinLength (unused)
Always declare AttemptBLEConnect & BLE_FILTER_CONNECTABLE
* Mutate BLE_FILTER_CONNECTABLE as runtime parameter BTConfig.filterConnectable
* Mutate pubKnownBLEServiceData as runtime var in BTConfig
Mutate pubUnknownBLEServiceData as runtime var in BTConfig
Mutate pubBLEManufacturerData as runtime var in BTConfig
Mutate pubUnknownBLEManufacturerData as runtime var in BTConfig
Mutate pubBLEServiceUUID as runtime var in BTConfig
* Mutate useBeaconUuidForTopic as runtime var in BTConfig
Mutate useBeaconUuidForPresence as runtime var in BTConfig
* Small optimization
* Formatting of config_BT
Co-authored-by: Florian <1technophile@users.noreply.github.com>