* Bump ESP32 platform to v6.1.0 and ESP8266 to v4.1.0
* Fix ESP32 not connecting to Ethernet
And remove check updates as it is now done every hour
* Do not define LED pins if not explicitly stated
* OLED need to be reset for Heltec Lora 32 V2
* Fix issue with SSD1306 saving
Add optional timestamps to the SYStoMQTT and modules messages
Also, the sync with the NTP time server now occurs every hour (can be defined with TimeBetweenCheckingSYS in UserConfig.h)
* Fix WiFi interference on PIR
* Added to DOCS re: WiFi interference.
* Add sufficx -custom to configs without prod binaries
* Add ESP32 Wifi band and tx power to user_config.h
---------
Co-authored-by: andre <agreylin@gmail.com>
To see OTA progress through MQTT messages or controller
And change the stopProcessing position so as to reduce chance of collision with other processes
* Inverted idle logo
Back on white background start-up logo.
Inverted idle logo with random positioning.
* Idle Logo display default true
DISPLAY_IDLE_LOGO true as burn-in screens saver, especially fo the constant heading and line
* Display Brightness added
* SSD1306toMQTT / MQTTtoSSD1306
Additional "onstate" and "brightness" setting and regular display state reporting
Docs - separate Displays section
* [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
Publish BT config parameter at start so as to update the switch statuses in the controller
Also publish regularly in case of controller restart
Also move btqsum, btqsnd and btqavg to BTtoMQTT topic instead of SYStoMQTT as they are more relevant here
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>
* Update to rtl_433_ESP 0.1.5
Includes support for LILYGO® LoRa32 V2.1_1.6.1 433 Mhz
* Fix lint issue
* Fix build and lint issues
* Add lilygo-rtl_433 to build.yml
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>
* 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
* 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>