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>
* Add OpenHAB3 tutorial and BLE binary
* Small text changes
Just a few small text changes, also writing out OMG as OpenMQTTGateway, probably clearer for new to OMG users.
Co-authored-by: DigiH <github@digih.net>
* Bump Theengs Decoder to v0.6.1
* Differentiate a FASTLed environment
* remove BT from the nodemcuv2-all-test env as it is already tested into nodemcuv2-ble
* Decoder 0.6.2
Co-authored-by: DigiH <github@digih.net>
* Publishing/receiving inconsistencies
* General platformio.ini changes
General platformio.ini changes to allow for publishing/receiving settings to be defined in User_cofig.h instead of them only working if defined in the environments. Kept separate so far for discussion.
If you are on Linux and don't want to (or can't) install Chrome based browser to flash you can use the Python based flash tool from Espressif.
It took me some searching and reading the docs of esptool to get the commands to work, then I thought I can save this time for others by adding the relevant info to this how to.
* Add useBeaconUuidForPresence flag (disabled by default)
* Change MQTTDecodeTopic to include only the sufixe
* Rename mac_address to topic and remove unnecessary variable mactopic
* Add useBeaconUuidForTopic flag (disabled by default)
* Fix jsonPublishing #ifdef -> #if
* Revert commit 02e2d03