Commit Graph
72 Commits
Author SHA1 Message Date
Northern Man 7cd1e9a1ab The reset button function does not work if TRIGGER_GPIO = 0 (#770)
After a bit of a challenge getting the config correct, determined that the reset button option doesn't work on a ESP32 due to the definition logic
2020-10-01 13:10:12 -05:00
Charles R 347783a1c4 Fix pilight value as subject (#752)
* feat: pilight gateway now send value

* feat: when device id is empty, try fo find it from the message payload
2020-09-02 16:46:37 -05:00
Florian ca3bc436ee Increase the size of MQTT password (#751)
avoid #716
2020-09-02 15:27:35 -05:00
Florian 5810420d93 Add ESP32 Olimex ethernet gateway (#747)
-Add ethernet board
-Add wifi board
-Add ethernet management for ESP32
2020-09-02 14:16:48 -05:00
Oli Wright ef39e14497 Add new actuator : PWM controller (#737)
* Initial generalization from a PWM LED controller, to a PWM controller.
Allow the config file to set the name of each channel and the number of channels.
Fade time is now per-channel, so MQTT messages can genuinely set an individual channel, and specify the fade time for that channel.
The default gamma is configurable in the config.
2020-09-02 11:17:36 -05:00
Florian 7b9944d1ca Refactor LED management (#745)
-replace low power led by led info
-enable to change the led ON value
-go upper case for the led macros

Also transform BLE connect warning to notice in log
Add Sonoff RF Bridge LED
2020-08-27 16:24:23 -05:00
Florian d6d42bfce5 BLE sensors data through a connect, LYWSD03MMC and MHO-C401 add (#736)
* Add LYWSD03MMC and MHO-C401 device
and an associated BLE connect mechanism as these devices advertise only encrypted data
-free manufacturer data
-update library

* Implement scans number before connect
-Add the possibility to do a connect every X scan
-Rename variables for consistency
-Some refactoring for improved code reading
2020-08-18 12:28:45 -05:00
Florian e9910a9165 Arduino NimBLE support (#732)
* NimBLE-arduino support

* Decorrelate discovery from BLEScan

To avoid Stack canary watchpoint triggered and store sensor model into BLEdevice vector
2020-08-17 09:51:58 -05:00
Jon 418c1d0c81 Minimize decompose, remove calls to extract_char, check data length before parsing (#724) 2020-08-15 08:12:27 -05:00
JonandJonathan Wells 15e7f5ab1a Prevent storing duplicate RF/IT signals (#717)
* Check if signal is duplicate

* Fix storing duplicate RF/IR Codes

* Lint formatting

Co-authored-by: Jonathan Wells <jonathan-wells@oist.jp>
2020-08-04 12:18:21 -05:00
Leon Kiefer b5527d2e7b added support for secure TLS connections (#699)
* added support for secure TLS connections
on ESP32 and ESP8266 close #101

* added TLS test builds

* added documentation for TLS
fixed some some issues in the documentation

* added documentation for error code=54
2020-08-02 11:29:28 -05:00
JonandJonathan Wells f9787312a3 Fix ESPWifiManualSetup / Move MQTT variables (#704)
* Move MQTT configs to main.ino

Co-authored-by: Jonathan Wells <jonathan-wells@oist.jp>
2020-07-24 18:34:54 -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
FlorianandLeon Kiefer 6e9b170c00 [RF] handle 64 bits values (except for UNO) (#698)
* handle 64 bits values, except for UNO
Arduino UNO is not enough powerfull to handle properly uint64_t in terms of memory so differenciate the variable type depending on the board type
With this configuration ATMega will not be able to receive with simpleReceiving 64 bits values. Of course Json will work with 64 bits values for this board.
* Simplify jsondata.success() condition
* Renamings and optimize deduplication functions
* replace 2 dimensions array by a structure so as to handle the time with an uint32_t  when using an ESP (instead of a uint64_t)
* change storeValue and isAduplicate function names
* point to the rcswitch revision with the new 40 bits protocol

Co-authored-by: Leon Kiefer <leon.k97@gmx.de>
2020-07-18 17:14:19 -05:00
Leon Kiefer 04b95945b8 set the host name as server of the PubSubClient (#696)
don't do a manual DNS lookup
2020-07-09 19:36:04 -05:00
Jon 0e257a58c1 Add AHTx0 Sensor (AHT10 and AHT20) (#687)
* Add AHT Sensor
2020-07-04 09:40:06 -05:00
Leon Kiefer 6cc4ca4ed5 fixed wrong string type after refactoring #546 (#643) 2020-06-23 16:39:18 -05:00
Florian 647df124d5 WifiProtocol - force when change only
force special wifi protocol when > 0
2020-06-21 14:06:48 -05:00
Florian 9bba730e84 Add a lock mechanism to improve the OTA chances of success with ESP32 and BLE (#634)
* Add a lock mechanism to improve the OTA chances of success
change TimeBeforeMQTTconnect to InitialMQTTConnectionTimeout
move delay(BLEinterval); after the scan so  the first scan will always be done at start now
remove non relevant delay
add stopProcessing and startProcessing functions
2020-06-19 12:44:53 -05:00
Jens Balvig 1e599415fc Automatically set mqtt buffer size (#637)
* Automatically set mqtt buffer size

Current versions of pubsubclient allows the buffer size to be set
dynamically: https://github.com/knolleary/pubsubclient/pull/282

We can take advantage of this to avoid having to modify one of the
dependencies and instead automatically up the buffer size when a
powerful board is detected.
2020-06-18 05:36:40 -05:00
Florian 713727cf98 Correct endless loop when first wifi connection missed with wifi manual setup (#636)
and add parenthesis for better understanding of the comparisons
correct also a non pertinent ;
2020-06-16 13:28:34 -05:00
Florian afa3010033 Per default don't use TRIGGER_GPIO (#633)
and move SLEEP_BUTTON definition to config_M5 as it is only used for the moment with M5 stack and stickc boards
2020-06-14 07:53:00 -05:00
Florian ae342f4a32 Remove auto erase function (#632)
* Remove auto erase function
* add docs
2020-06-14 06:57:44 -05:00
Florian c9e6de1a1c Replace pin by gpio (#631)
* replace _PIN by _GPIO

* add mention about the goal of -all binaries

* [breaking] change json key from "pin" to "gpio" for actuatorONOFF
2020-06-13 20:04:36 -05:00
Florian f65cdd831a move scope of MQTTtoONOFF
due to build error on Arduino IDE (working with PIO)
#556
2020-06-09 21:06:13 -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
Florian 661ef9c55e Refactor BLE gateways (#617)
* Refactor BLE gateways:
-merge HM10 and ESP32 code
-publish sensor values with the other BLE device parameters to avoid MQTT multiple publication
-make uniform the case of mac adress id between HM10 and ESP32
-add the possibility to remove service data publishing either when sensors is recognised or not
-correct manufacturing data display
-merge process cleargrass methods
-check service data validity before processing
2020-06-05 08:09:49 -05:00
Florian 0afcb61717 Correct spelling mistake 2020-05-23 16:07:37 -05:00
Florian a82bbe684a Optimizations when using low power mode (#608) 2020-05-07 17:28:27 -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
Florian 30147140bd Add M5 boards compatibility and low power mode (#586) 2020-04-26 19:56:10 -05:00
Florian 1385ddfa8d Bypass for ESP not reconnecting by WIFI automaticaly the second time (#580)
https://github.com/espressif/arduino-esp32/issues/2501
2020-04-09 09:19:55 -05:00
Florian d5724bbf1f Correct Arduino boards build errors
Add the necessary macros and move the new OTA function to an appropriate location (for ESP only)
2020-04-08 15:49:09 -05:00
Florian 26501b2176 Recover ESP8266 build and ESPWifiManualSetup
#563  Move protocol change method outside of wifimanager scope
and correct build error for ESP8266
2020-04-08 15:14:14 -05:00
Florian bd72075349 refactor connection mng on ESP32 and ESP8266 (#575)
enable after ATTEMPTS_BEFORE_BG
and  ATTEMPTS_BEFORE_BG to try another Wifi protocol
 #563
2020-03-28 20:46:30 -05:00
Florian f991b209e5 Add version into SYStoMQTT gateway status
#537
2020-03-22 20:29:21 -05:00
Florian 85517e842b [WM] enable automatic erasing of configuration for ESP8266 2020-02-12 21:48:21 +01: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
Lars Wessels a99d5fb670 added support for DS1820 1-wire temperature sensor(s) (#538) 2020-01-23 12:11:29 -06:00
Martin Korbel 4115f2a723 Add support for weather stations (#532)
* Add support for weather stations
* Add configuration for ESP8266
2020-01-20 21:04:58 +01:00
Florian aeb00c4a7a correct build error when using ESPWifiManualSetup
#529
add a test environment so as to verify this functionnality on [CI]
2020-01-14 20:59:01 +01:00
Florian d4280ffde3 [IR] long long value and hex not taken into account
Nox we can process long long values and hex key when doing MQTTtoIR.
Also remove simpleReceiving as it only enable to use NEC or Raw
2020-01-11 15:45:50 +01:00
Florian a1cfd57c23 Publish discovery msg at start once
#448
2020-01-09 21:16:15 +01:00
Florian c524f04d1f Replace fixed allocation of json buffer (#520)
* Replace fixed allocation of json buffer

by a dynamic one, and simplify trace function of json objects

* differentiate the change depending on board memory size

to make it works with UNO
2020-01-02 22:30:20 +01:00
Florian db8df1ddf6 Hass discovery improvments (#512)
Rename set commands to config
correct json buffer size and gateway name
replace state to cmd
replace set by config
add restart and erase command
add unicity to gateway command switches
BLE devices shouldn't be child of the gateway
make the BTtoMQTT topic consistent with other definitions
2019-12-20 23:01:56 +01:00
Florian ae33ea7458 publish discovery once at each MQTT connection with retain flag set true (#507)
* publish discovery once at each MQTT connection with retain flag set to true

#448
2019-12-14 19:17:09 +01:00
Florian e44717bac7 add wifi advanced setup into user_config.h (#506)
* add wifi advanced setup into user_config.h

#496

* add advanced network config for wifi
2019-12-14 18:18:30 +01:00
1technophile 7f9d8d18da Apply VSC auto format to the code and indent macros for readability 2019-12-14 17:14:36 +01:00
1technophile f7ec81ffaa remove string usage for topic comparison 2019-12-14 11:10:12 +01:00
1technophile 7f16d00a55 Change topics concatenation method
Correct regression introduced by #503
Nevertheless this method needs to be optimized to avoid the use of string.
2019-12-13 23:25:09 +01:00