Commit Graph
65 Commits
Author SHA1 Message Date
Stephen Littman 7c5538be65 Doc spelling typo (#1104)
Fixed typo
2021-12-04 13:48:15 -06:00
h2zeroandFlorian ca616939b8 Add ability to change MQTT topic and or gateway name by MQTT command. (#1053)
* Add ability to change MQTT topic and or gateway name by MQTT command.

This adds new commands to allow changing the MQTT topic and or gateway name from a command.
The new topic/name will be saved in flash memory and used on subsequent reboots.
Either/both parameters can be sent or combined with other commands.

Example use:
```
mosquitto_pub -t "home/OpenMQTTGateway/commands/MQTTtoSYS/config" -m
'{
  "mqtt_topic": "topic/",
  "gateway_name: "name"
}'
```

* Update example with /

Co-authored-by: Florian <1technophile@users.noreply.github.com>
2021-08-05 05:50:16 -05:00
DigiH 3fd075b750 Disable MQTTsetMQTT and MQTT_HTTPS_FW_UPDATE to allow OTA for Avatto (#1046)
* Disable MQTTsetMQTT and MQTT_HTTPS_FW_UPDATE to allow OTA for Avatto Bakery IR

Trying to update my Avattos with the currently released 0.9.8 I found that OTA wasn't possible any longer as the build was now to large

0.9.8
Checking size .pio/build/avatto-bakeey-ir/firmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM:   [====      ]  42.4% (used 34772 bytes from 81920 bytes)
Flash: [======    ]  55.2% (used 528716 bytes from 958448 bytes)

this goes back to 0.9.7, where WiFi, MQTT and firmware update was introduced over MQTT commands

0.9.7
Checking size .pio/build/avatto-bakeey-ir/firmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM:   [====      ]  42.4% (used 34772 bytes from 81920 bytes)
Flash: [======    ]  55.2% (used 528716 bytes from 958448 bytes)

Going back to building 0.9.6 I was able to OTA update again with the much smaller build

0.9.6
Checking size .pio/build/avatto-bakeey-ir/firmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM:   [====      ]  39.7% (used 32512 bytes from 81920 bytes)
Flash: [====      ]  41.4% (used 396804 bytes from 958448 bytes)

Building 0.9.8 with the flags brings the build back to OTAable size

0.9.8 with
	'-UMQTTsetMQTT'
	'-UMQTT_HTTPS_FW_UPDATE'
Checking size .pio/build/avatto-bakeey-ir/firmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM:   [====      ]  39.9% (used 32684 bytes from 81920 bytes)
Flash: [====      ]  42.3% (used 405024 bytes from 958448 bytes)

Similar to the flag setting in [env:rfbridge]

I'm not even sure if MQTT_HTTPS_FW_UPDATE would even work on the Avatto, with the limited flash memory. 

Should we also add

board_build.ldscript = eagle.flash.1m64.ld

as a default, as it's required for OTA updates on the Avattos as discussed in https://github.com/1technophile/OpenMQTTGateway/issues/763#issuecomment-698864712 ?

* Doc addition for restricted MQTT options

Doc addition for https://github.com/1technophile/OpenMQTTGateway/pull/1046 and https://github.com/1technophile/OpenMQTTGateway/pull/986
2021-08-02 15:51:13 -05:00
h2zero 2dedabc52f Add "server_cert" parameter to firmware_update command. (#1043)
When updating from the MQTT command from a SSL enabled server this adds an option to provide
the server SSL certificate with the command.

This is useful if connecting to different servers or if the configured certificate has expired
and requires updating to not lose the ability to update via OTA.

The certificate provided will be saved to flash memory for use on subsequent restarts.
2021-07-29 16:13:30 -05:00
Florian 373ec29803 Correct LORA embedded video (#1030) 2021-07-20 19:01:20 -05:00
Florian c06a6c9ceb [DOCS] Add new devices, parameters and LORA tutorial (#1028)
* Add new devices and parameters
* Update readme and lora use
2021-07-18 14:18:40 -05:00
Florian bce9bf3e00 Minor readme update (#1025)
* readme and BLE update
2021-07-16 20:09:47 -05:00
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 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 7cfbd3d050 Ble read/write characteristics over MQTT. (#988)
* EXPERIMENTAL: Ble read/write characteristics over MQTT.

Uses #979

This allows reading and writing BLE characteristics from an MQTT message.

Example format:
mosquitto_pub -t home/OpenMQTTGateway/commands/MQTTtoBT/config -m '{"ble_write_address":"AA:BB:CC:DD:EE:FF", "ble_write_service":"cba20d00-224d-11e6-9fb8-0002a5d5c51b", "ble_write_char":"cba20002-224d-11e6-9fb8-0002a5d5c51b", "ble_write_value":"TEST", "ttl":4 }'
mosquitto_pub -t home/OpenMQTTGateway/commands/MQTTtoBT/config -m '{"ble_read_address":"30:AE:A4:7C:3C:A6", "ble_read_service":"cba20d00-224d-11e6-9fb8-0002a5d5c51b", "ble_read_char":"cba20002-224d-11e6-9fb8-0002a5d5c51b", "ttl": 2 }'
The ttl parameter is the number of calls to connect (defaults to 1), which occur after the BLE scan completes.

A response is provided over MQTT in the format:
write : {"id":"30:AE:A4:7C:3C:A6","service":"cba20d00-224d-11e6-9fb8-0002a5d5c51b","characteristic":"cba20002-224d-11e6-9fb8-0002a5d5c51b","write":"TEST","success":true}
read : {"id":"30:AE:A4:7C:3C:A6","service":"cba20d00-224d-11e6-9fb8-0002a5d5c51b","characteristic":"cba20002-224d-11e6-9fb8-0002a5d5c51b","read":"TEST","success":true}

* Add generic BLE connect class and read data as hex.

* Add value_type parameter and document usage

* Add note to docs
2021-06-21 20:27:06 -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
Leon Kiefer 18c8524ae0 added somfy repeat option (#957)
update somfy dependency to fix bug with multiple somfy remotes
2021-05-24 15:09:18 -05: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
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
DigiH ac41f95cfc Typo fix (#924)
Type in sending status command to MQTTtoRTL_433. "-1" should be "1" as it produces an error otherwise.
2021-04-14 20:02:48 -05:00
Florian e1aef48296 [Breaking] Deactivate Home Assistant presence per default (#915)
And enable to activate it by MQTT
2021-04-04 19:34:36 -05:00
Florian adc5f157cd Add hass auto discovery gif and img (#916)
and update M5Stack docs
2021-04-04 14:53:00 -05:00
Florian 8afb1c5223 Enable deactivation of BLE connect (#895)
Useful if you want to scan continuously for BLE device, in this case you should deactivate the BLE connect to avoid concurrency between scan and connect
2021-03-14 12:53:26 -05: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
Florian a6fb17595e [BREAKING] remove tem key (#883)
* [BREAKING] remove tem key

we rely now on tempc and tempf only
2021-03-03 18:38:37 -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
Florian e8b4c63c6c Increase TimeLedON to 1s (#857)
#534
2021-01-30 16:29:09 -06:00
Florian 39568d8288 [DOC] Tip correction 2021-01-29 17:23:29 -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
Leon Kiefer a83f725bad Npm docs setup (#834)
* added vuepress to package json
* use vuepress from package json
2020-12-13 12:49:13 -06:00
Leon Kiefer a7575b2c3a added ZactuatorSomfy (#816)
* added ZactuatorSomfy
* added Somfy RTS docs
2020-12-13 12:46:10 -06:00
Florian 6ae09d8bb6 Add board M5Stickc Plus (#828) 2020-12-06 12:06:50 -06:00
melyux fd2d25bf31 Add ability to specify repeats for raw Pilight strings (#803)
* Add ability to specify repeats for raw Pilight strings

* Updated RF Pilight doc to add raw transmission tut

Added information about transmitting raw messages using the MQTTtoPilight topic, including using the new repeats functionality. Fixed some scattered English mistakes.
2020-11-24 21:58:03 -05: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
Jon 1780458683 Add ability to inverse notify PIR LED (#765) 2020-09-22 13:04:29 -05:00
Florian 4b265384b2 DOCS improvements 2020-09-17 13:43:05 -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 5e2d86e963 Add publish only BLE sensors function (#741)
don't publish the non identified BLE devices when requested (at build or by MQTT setting)
2020-08-26 17: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 8d79bebab8 [breaking] Refactor the BLE devices identification (#720)
* [breaking] Refactor the BLE devices identification

generalize the use of the mac address with : for the lists, white, black and internal identification
Move structures from config_BT.h to ZgatewayBT.ino
update doc

* Move minRssi to INO and optimizations

change Minrssi name to match other variable convention
Optimize the add of : to mac address
Reduce the use of abs()

Note: I cannot move BLEinterval to the ZgatewayBT.ino due to its use on main.ino
2020-08-04 12:03:22 -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
Jon 61f7843e40 [Breaking Change] Change HCSR501 MQTT key to 'presence' (#710)
* Change HCSR501 MQTT key to 'presence'
2020-07-26 08:14:06 -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
JonandJonathan Michael Wells 40a69037e5 PIR Notify LED (#702)
* Add PIR LED mirroring

* Lint formating

* Changed var name & added example define

Co-authored-by: Jonathan Michael Wells <jonathan-wells@oist.jp>
2020-07-19 06:34:13 -05:00
JonandJonathan Michael Wells 40152d6a02 Rf receive only (#701)
* Disable RF transmit

* Added definition example (commented out)

Co-authored-by: Jonathan Michael Wells <jonathan-wells@oist.jp>
2020-07-19 06:29:49 -05:00
Jon 0e257a58c1 Add AHTx0 Sensor (AHT10 and AHT20) (#687)
* Add AHT Sensor
2020-07-04 09:40:06 -05:00
Florian 5e19a004d7 Minor doc adjustements for low power mode 2020-07-01 06:03:25 -05:00
Florian 12a5033ca3 IR signal forwarding by MQTT
differentiate command subject so as to enable the repeat on another gateway
add doc info regarding raw forwarding
2020-06-22 07:04:00 -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 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 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