Commit Graph
114 Commits
Author SHA1 Message Date
FlorianandDave ebe17c8899 Setmqtt setting optional (#1021)
* Define MQTTsetMQTT for configuring MQTT over MQTT

* Enable MQTTsetMQTT per default on all ESP except RFBridge

Co-authored-by: Dave <d.kneisz@gmail.com>
2021-07-14 17:25:09 -05:00
h2zero 4b135049a5 Set WifiManager debug level. (#1014)
This allows for setting the WiFimanager debug level for more or less verbosity using the WM_DEBUG_LEVEL macro.
Valid values are:
        DEBUG_ERROR     = 0,
        DEBUG_NOTIFY    = 1, // default
        DEBUG_VERBOSE   = 2,
        DEBUG_DEV       = 3,
        DEBUG_MAX       = 4
2021-07-10 17:42:06 -05:00
h2zero e92e468ca6 Add a macro to use the MAC address as the gateway name. (#1013)
Adds the macro USE_MAC_AS_GATEWAY_NAME, when defined the gateway name will default to
OMG_XXXXXXXXXXXX, where the X's are the mac address characters.
This can still be changed in WiFiManager.
2021-07-10 17:35:16 -05:00
h2zero 5e11690b69 Allow trigger gpio and input gpio to be the same pin.
This will provide the expected funtionality for the reset trigger when the button is pressed for more than 10 seconds.
Also allows the same pin to be used as an actuator/relay trigger if pressed for less than 10 seconds.
2021-07-09 21:52:40 -05:00
h2zero 45a0184320 Add triggering of actuator on/off state by button press.
This will enable using button on the gateway to switch any controlled attached actuators/relays when pressed.

Adds the following macros:
- ACTUATOR_ON; 0 or 1, set to the output level of the gpio pin to turn the actuator on.
- ACTUATOR_ONOFF_DEFAULT; ACTUATOR_ON or !ACTUATOR_ON, set to the state desired on reset.
- ACTUATOR_BUTTON_TRIGGER_LEVEL; 0 or 1, set to the sensing level which to detect a button press to change the actuator state.
2021-07-09 21:52:40 -05:00
h2zero 2ae8f0c0c0 Cleanup compiler warning. (#1010)
Resolves #917
2021-07-06 07:48:13 -05:00
h2zero c55646968f Erase stored settings in NVS when triggered. (#1009)
This resolves #994 where the esp32 would still save the client information after a factory reset is performed.
2021-07-05 19:41:57 -05:00
h2zero 3f13984f44 Bugfix: switching brokers with self signed certs. (#1007)
* Fixes BLE scanning being disabled after switching server fails.

* Fixes crash caused by BLE scan results arriving while switching servers.

* Adds documentation to use the server switching command.
2021-07-05 19:40:40 -05:00
h2zero 05dddf42de Implement error LED and status codes. (#1006)
Merges LED_RECEIVE/LED_SEND into LED_SEND_RECEIVE pin definition.

Adds LED_ERROR to display error status based on blink times as follows:

Disconnected from Wifi: 2 seconds on 2 seconds off.
Disconnected from broker: 2 seconds on 5 seconds off.

Other status LED indications added:
WifiManager configuration web portal active: LED_INFO and LED_SEND_RECEIVE = ON.
OTA Update in progress: LED_SEND_RECIEVE and LED_ERROR = ON.
2021-07-01 13:24:20 -05:00
h2zero 2708858754 Add switching between MQTT brokers with self signed client certificates. (#993) 2021-06-24 19:46:58 -05:00
h2zero 2ece72dd68 Fix null client when using MDNS. (#981) 2021-06-10 17:07:50 -05:00
h2zero cd9ed21f9d Replace github OTA update over MQTT with settings in user_config. (#976) 2021-06-05 17:01:11 -05:00
h2zero b8b99c6d5d Add Wifi and mqtt broker configuration over MQTT commands (#971)
- Adds MQTT command to change the WiFi access point.
- Adds MQTT command to change the MQTT broker and update username and password.

This will test the connection changes first and, if unsuccessful, fallback to the current connection.
If successful the new configuration will be saved in non-volatile memory.
2021-06-05 16:52:30 -05:00
h2zero 31efcb32ee Remove Secure Connection macro and add the config to wifimanager. (#961)
This adds the ability to specify if the MQTT broker connection is secure via a checkbox on the config page of WiFiManager.
Also added to the WiFiManager config page is a text box to enter the brokers TLS certificate.

In the case of using manual configuration a new macro is created MQTT_SECURE_DEFAULT.
When defined as true a secure connection will be requested and the certificate defined in user_config.h will be used.
2021-06-02 21:10:38 -06:00
Northern ManandNorthern Man 33fa1ca759 Minor RTL_433 Tuning (#960)
* Update to SmartRC-CC1101-Driver-Lib@^2.5.4 and removal of workaround from #847

Tks to @LSatan workaround no longer needed
https://github.com/LSatan/SmartRC-CC1101-Driver-Lib/issues/65

* Default to value as subject for rtl_433 and receiver switching

* Default to not publishing unparsed signals

* Fix for missing String for uint64_t

* Fix is only required when value a subject is defined and not PiLight

Co-authored-by: Northern Man <sgracey@Heisenberg.local>
2021-05-28 21:09:32 -05:00
Leon Kiefer 3a2e88e089 fixed WiFiMulti if secure connection is enabled #934 2021-05-24 14:29:40 +02:00
h2zero 295d39bc27 Trigger firmware update via MQTT (ESP Only). (#953)
If enabled in user_config.h this will trigger the OMG to update it's firmware from the link
provided in the MQTT message.

Example message:
{\"version\":\"test\",\"password\":\"OMGPASSWORD\",\"url\":\"https://github.com/1technophile/OpenMQTTGateway/releases/download/v0.9.6/esp32dev-ble-cont-firmware.bin\"}

If the firmware version in the message is not the same as the current OMG version the device will self update using the link in the url of the message.
2021-05-23 16:38:52 -05:00
h2zero e3731bdccf Cleanup compiler warnings in strict environment. (#945) 2021-05-16 19:47:50 -05:00
Northern ManandNorthern Man f69906861d Active Receiver Switching (#936)
* PR #934

* Active Receiver Switching

Switching of the active receiver module is available between the RF,
RF2, RTL_433 and Pilight Gateway modules, allowing for changing of
signal decoders without redploying the openMQTTGateway package.
Sending a JSON message to the command topic of the desired receiver
will change the active receiver module.

Other minor adjustments/improvements

1 - Improved startup serial logging that includes
- OpenMQTTGateway Version
- OpenMQTTGateway Modules

2 - Trace logging of full Gateway module command topic
 - Enabled in RF, RF2, PiLight and RTL_433

3 - Updated RTL_433 Documentation to only include enabled ASK/OOK
device decoders

4 - Trace logging of MQTT Callback topic

* Regression testing

* Adding valueAsASubject support to rtl_433_ESP
- model and id keys are appended to message topic

* Increased memory size for receiver switching in blocking build all

Co-authored-by: Northern Man <sgracey@Heisenberg.local>
2021-05-10 19:36:25 -05:00
Northern ManandNorthern Man 2744510822 Usability Improvements for esp32 platform (#934)
* Increased ESP32 base capabilities

1 - Expose SERIAL_BAUD as an optional compiler directive.
2 - Enabled mDNS based MQTT Host name lookup for ESP32 devices.
3 - Expand capability of ESPWifiManualSetup mode for multiple SSID’s.
Tested with ESP32

* Regression testing of ESP8266 and ESP32

* Removal of Wifi Debuging

* Fix lint issue

Co-authored-by: Northern Man <sgracey@Heisenberg.local>
2021-04-28 20:16:12 -05:00
Martin KorbelandMartin Korbel 23cd2a3104 GridFree SUN-2000G (#926)
* Support for GridFree Sun-2000G inverter

* Bump version of GFSunInverter

Co-authored-by: Martin Korbel <korbel@blackserver.cz>
2021-04-23 20:40:09 -05:00
Florian d0489d1a85 Correct uptime display on trace (#904)
and set unit to s
2021-03-22 19:05:14 -05:00
Florian 221afa98b0 Change uptime calculation method (#901)
and revert #897
2021-03-18 15:07:59 -05:00
Florian 0e8b619bb9 [BREAKING] Change uptime unit from seconds to minutes (#897)
* Change uptime from s to min

to prevent going to the max of unsigned long
2021-03-14 19:31:53 -05:00
Florian 625f7f358b Publish SYStoMQTT scan count (#896) 2021-03-14 15:05:09 -05:00
Florian e2feb0bc24 Wifi reconnection improvements (#894)
Deep sleep should be activated only when failing connect on low power mode.
Correct reconnection on esp8266. Unfortunately WiFi.reconnect(); prevent the esp8266 from reconnecting, so we reduce its scope to ESP32
2021-03-12 14:54:41 -06:00
Florian c3cdd8f04c Remove wifi protocol auto change (#882)
#575
so as to see if in conjunction with the platform update we get a better stability of wifi
2021-03-11 15:55:21 -06:00
Northern ManandNorthernMan54 57bc108da4 Initial pull request for rtl_433 support (#886)
* Initial pull request for rtl_433 support

Co-authored-by: NorthernMan54 <sgracey@Bart.local>
2021-03-11 12:43:05 -06:00
Csiki ebd6bb8031 Bt discovery fix (#880)
* launchDiscovery fix for esp32 (sending the discovery mqtt messages on the main core)
2021-03-02 17:13:14 -06:00
Florian cd282596e0 Correct advanced network parameter setup on ESP (#878)
#790
2021-02-26 19:44:20 -06:00
Csiki 1b7f83c014 BT lockless queue (#867)
* Lockless json queue for ESP32 BT to avoid SYStoMQTT concurrency issue

* BT haRoomPresence handle with lockless queue
2021-02-26 14:30:55 -06:00
Florian 557cf340db Improve low power mode (#859)
-add switch on HASS
-avoid issue when using ESPWifiManualSetup
-Correct issue on gateway discovery on first connect
-stop processing during discovery
2021-02-05 15:19:43 -06:00
Florian 2d377a1c3f Auto discovery deactivation at runtime by MQTT command (#856)
and switch automatic creation for it in HASS (by autodiscovery :-)
2021-01-31 13:41:22 -06:00
Northern Man 25ea909c08 Support for changing CC1101 Receive and Transmit Frequency (#847)
* Support for changing CC1101 Receive and Transmit Frequency

* Docs

* Resolve feedback

* Update Somfy module to use Global receiveMhz

ELECHOUSE_cc1101.SpiStrobe(CC1101_SIDLE); // Idle receiver prior to
setting a new frequency
2021-01-22 05:53:39 -06:00
白月秋见心 d84f64b23f Feature/add shtc3 (#843)
* Add SHTC3

* remove adc config
2021-01-05 19:17:39 -06:00
Leon Kiefer a7575b2c3a added ZactuatorSomfy (#816)
* added ZactuatorSomfy
* added Somfy RTS docs
2020-12-13 12:46:10 -06:00
Florian d450c505f2 Add M5 SYS parameters to auto discovery (#829) 2020-12-06 13:23:00 -06:00
Florian 6ae09d8bb6 Add board M5Stickc Plus (#828) 2020-12-06 12:06:50 -06:00
Florian b2c05156b2 Srfb bugs (#807)
* Correct buffer processing

was missing an instruction due to a previous refactoring

* Correct duplicate condition

* Avoid publishing \n into the raw value

* Merge extract_char and value_from_service_data functions
2020-11-28 17:16:15 -06:00
Florian 9a66c9ef09 HASS gateway Discovery improvements (#792)
* MQTT discovery improvements

-remove gatewayBT
-remove device class formaldehyde (not existing in HASS)
-add SYStoMQTT new parameters
-attach connectivity parameter to the device
-add BT gateway infos and switches
-refactor modules storage and publication
2020-11-04 11:53:55 -06:00
DieKatzchen 3df16d2d52 Basic RS232 Communication (#780)
* Added ZGateway RS232
2020-10-19 13:48:58 -05:00
Charles R 43e5629304 feat: add protocol into topic (#778) 2020-10-13 15:21:58 -05:00
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