Commit Graph

271 Commits

Author SHA1 Message Date
Florian
93bce3298e [SYS] Empty queue in a task rather than the loop
To improve performances and avoid blocked messages
2024-09-04 07:25:44 -05:00
puterboy
c5b9bcb4cb [DISPLAY] Removed obsolete pubOled stub and calls (#2039) 2024-08-29 10:40:03 -05:00
Florian
719976b652 [SYS] Remove handleJsonQueue wrapper and use std::string (#2038)
Co-authored-by: Florian <1technophile@users.noreply.github.com>
2024-08-29 09:44:05 -05:00
puterboy
1f42075ec8 [SYS] Fixed data corruption associated with jsonQueue enqueueing and dequeuing (#2035)
* Changed jsonQueue to use json String rather than json Object
Added Mutex protection to emptyQueue()
Move Mutex protection to within enqueueJsonObject to shorten lock time
2024-08-29 07:45:56 -05:00
puterboy
830d58f98e [SYS] Add Mutex to potect mqtt->publish() from concurrent… (#2034)
Protecting mqtt->publish() fixed the problem with corruption of MQTT discovery config messages #2012
2024-08-29 07:10:46 -05:00
puterboy
5564ed531c [DISC] Remove restartesp from discovery_prefix 2024-08-29 07:09:16 -05:00
Florian
5492e334dc [SERIAL] Add the capability send info to Serial instead of/added MQTT (#2030)
* [SERIAL] Add the capability send info to Serial instead of/added MQTT

Add the capability to send json data to Serial as a communication layer, added/instead of MQTT

* Use delay rather than vTaskDelay

---------

Co-authored-by: Florian <1technophile@users.noreply.github.com>
2024-08-27 13:23:42 -05:00
Florian
3d6d9baeaf [SYS} Fix disconnection detection (#2031)
Fix #2029
Introduced by #2020

Co-authored-by: Florian <1technophile@users.noreply.github.com>
2024-08-27 13:23:04 -05:00
Florian
f9a5c6961a [SYS][BREAKING] Add gateway states, Offline mode and refactor sleep (#2020)
Gaterway states to improve LED management
Make the sleep function accessible outside BT
BREAKING remove sleep for ESP8266
BREAKING lowpowermode API changed to powermode and new mode definition

Co-authored-by: Florian <1technophile@users.noreply.github.com>
2024-08-23 16:55:04 -05:00
puterboy
57fbca8f88 [DISC] Add ability to change Discovery Prefix via WebUI or via mosquitto_pub (#2007)
Add discovery_prefix change at runtime

---------

Co-authored-by: Florian <1technophile@users.noreply.github.com>
2024-08-22 13:22:08 -05:00
Florian
a2fa86eef6 [SYS] Fix Ethernet network check on MQTT failure (#2013)
Missing the check

Co-authored-by: Florian <1technophile@users.noreply.github.com>
2024-08-16 19:56:41 -05:00
Florian
f655f4fda0 [LED] Add ON Led status (#2011)
ON per default at start, never OFF unless the board loose power or the program does not start

Co-authored-by: Florian <1technophile@users.noreply.github.com>
2024-08-16 16:49:14 -05:00
Florian
8a28bb2cf8 [SERIAL][BREAKING] RS232 change to SERIAL GATEWAY (#2008)
Make the RS232 more generic by converting it to a Serial Gateway
Add the capability to decode BLE data coming through Serial
2024-08-16 11:23:39 -05:00
Michał Leśniewski
8537b7498d [SYS] Introduce MQTT Broker mode (#1988) 2024-07-27 17:40:47 -05:00
Florian
3c0140f57b [SYS] Clean queue before restart (#1986) 2024-07-03 15:02:32 -05:00
Michał Leśniewski
9257433a50 [SYS] Use PicoMQTT for MQTT communication (#1954)
* Update Arduino core for selected configurations

* Use PicoMQTT for MQTT communication
2024-07-03 11:39:58 -05:00
Florian
77d0d14af3 [SYS] Detect instable MQTT connection with AWS (#1979)
and restart directly if the connection parameters does not work, instead of taking into account other parameters like xtomqtt
2024-06-23 16:07:48 -05:00
Florian
b1b4bddcbc [SYS] Improve max buffer (#1981)
* [SYS] Reduce the usage scope of json maximum buffer usage

* Reduce procBLETask stack size
2024-06-23 15:28:52 -05:00
Florian
e4e4814c28 [CERTS] Remove certificate display on WiFi manager and enable memory certificate usage for update check (#1967)
* [SYS] Do not display certificates on WiFi Manager

And save them only if the size is more than the minimum

* Enable to use memory cert for update checks
2024-06-12 13:53:24 -05:00
Florian
0a1ee69a72 [SYS] Fix default connection (#1966) 2024-06-12 12:17:12 -05:00
Florian
676a62fecb [OTA] Add Github Digicert cert hash check (#1965)
to avoid loading a deprecated certificate
2024-06-12 12:16:48 -05:00
Florian
a74a6ebc06 [SYS] Add serial self test feature (#1964)
Add self testing for Theengs Bridge v1.1 (TBRIDGE02)
This feature enables factory testing
2024-06-12 08:02:34 -05:00
Florian
db8e850570 [SYS] Fix wrong connection index record during onboarding (#1961)
and no connection validation if CNT_DEFAULT_INDEX is different than 0
2024-06-10 12:46:24 -05:00
Florian
0db67f75aa [SYS] Add connection fallback capability (#1950)
This feature enable to rotate among the connection parameters index to find a valid one when the current MQTT connection is not working
2024-05-22 05:48:48 -05:00
Florian
819d3c2d91 [SYS] Change log level when publication is canceled (#1949) 2024-05-20 17:03:10 -05:00
Florian
f98474bed0 [SYS] Multiple connections management (#1947)
Enable the management of different connections at runtime with a set of certs for each.
Add parameters to the WiFi Manager onboarding, client certificates, and certificate validation
2024-05-20 09:30:49 -05:00
Sami Salonen
d721567adb [DISC] Do not deactive autodiscovery on reconnect-repub (#1933)
Specifically, do not deactive autodiscovery in certain cases
when discovery_republish_on_reconnect is enabled

Signed-off-by: Sami Salonen <ssalonen@gmail.com>
2024-04-17 08:34:21 -05:00
Florian
2645928dbd [SYS] Remove unnecessaries ESP8266 ESP32 macros (#1931) 2024-04-12 17:13:11 -05:00
Florian
2065d57e11 [BOARDS] Remove Arduino boards (#1929) 2024-04-10 15:48:05 -05:00
h2zero
ffe88feddc [SYS] Add Blufi support (#1913)
* First build with IDF, tested with esp32dev-ble only.

* Fix frameworks for non-esp32 boards

* Add blufi support.

* Adds an environment to use esp-idf and Arduino as a component to facilitate incorporating blufi for onboarding and configuration.

---------

Co-authored-by: h2zero <powellperalata@gmail.com>
2024-03-15 07:53:13 -05:00
Florian
c70590fb02 [SYS] Avoid AP generation if no WiFi and config already entered (#1888)
For security reason do not generate an Access Point if the configuration has been entered and if the WiFi is not detected at start
2024-02-07 15:35:05 -06:00
Florian
ef07a339ab [SYS] Avoid logging sensitive information on serial (#1879)
WiFi Manager log level to Notify
Remove MQTT information to serial
Remove system information to serial when changing with WebUI
2024-01-27 17:32:29 -06:00
Florian
a7f43eda87 [SYS] Avoid transmission of MQTT password to the web page (#1878)
This commit avoid transmitting the saved MQTT user password to the web page for security reasons.
Instead we send the init password and check if it has been modified prior saving
2024-01-24 16:05:56 -06:00
Florian
c05a759fa9 [SYS] Change OTAPASSWORD for devices using a part of the MAC as the password (#1834)
To keep the same password as previously, if it was not changed
2023-12-14 10:43:29 -06:00
Florian
8b204f2911 [SYS] Fix default adjustable setting when not using discovery and boolean init (#1825) 2023-12-06 10:56:05 -06:00
Florian
5a07020144 [SYS][BREAKING] Optim json size (#1823) 2023-12-05 08:05:19 -06:00
Florian
7f9f042f7c [BT] Add gateway deactivation/activation command (#1821) 2023-12-04 12:20:10 -06:00
Florian
771b792484 [SYS] Fix ESP8266 reboot loop (#1820) 2023-12-01 18:28:52 -06:00
Florian
7db2e93c28 [RTL_433][BREAKING] Beta support for FSK modulation, webUI frequency and active receiver change (#1812)
* [FSK] Add Lilygo Heltec environment with FSK modulation

Enable RTL_433 frequency and active receiver change with WebUI
Add FSK environment for Heltec and Lilygo
2023-12-01 13:16:03 -06:00
Florian
eb5b8fa291 [SYS/BT] Semaphores and new BT Controller (#1819)
Add semaphore to the enqueue calls to avoid concurrency issues
Add new BT controller to avoid scan evt timeout bug
2023-12-01 07:15:07 -06:00
Florian
83137f6ac9 [SYS] Publish the reboot reason with retain flag (#1802)
So as to have the information stored on the MQTT broker
Also remove stopProcessing, not necessary as we follow by a restart
2023-11-14 08:53:50 -06:00
Florian
cf285fba15 [INDICATOR] Dimmable RGB (#1801) 2023-11-14 07:34:55 -06:00
Florian
aca0850cd8 [SYS] Improve central queue stability (#1796)
* [SYS] Improve central queue stability

Improve central queue stability and add metrics

* Change partition for esp32dev-pilight-somfy-cc1101

to avoid program size too big error message with esp32dev-pilight-somfy-cc1101

* Only check for gateway updates at the start

to avoid consuming extra memory during operations
Publish the information about the available release with the retain flag
2023-11-12 12:59:45 -06:00
Florian
811bc1f608 [WM] Check input fields content before saving (#1795)
Avoid entering nonvalid data into the input fields by checking their content, also hiding passwords, and making the relevant fields compulsory
2023-11-09 20:22:14 -06:00
Florian
029409c0c3 [SYS] Implement a central queue (#1767)
to avoid concurrency issues when modules or/and gateways want to publish data
2023-11-08 07:26:21 -06:00
Florian
ca9ef664ab [SYS] Reduce default WiFi timeout when changing it (#1789)
To avoid the WDT to trigger before the end of the connect result
2023-11-02 11:24:16 -05:00
Florian
99de6ef4a6 [SYS] Password management improvements (#1787)
* Use one single password for Access point, OTA and WebUI access
* Enable to change the password during WM onboarding, with the WebUI, and MQTT command
* Remove the default password during the first configuration to connect to the AP
* When using the last 8 digits of the MAC as the password, it can now be changed
* Remove gateway password sending to client
2023-11-02 09:10:20 -05:00
Florian
c6394b241b [SYS] Add automaticaly / at the end of root topic if not present (#1772)
To avoid concatenation with the gateway name and a non working auto discovery
2023-10-12 15:37:35 -05:00
Florian
dd5e565788 [SYS] Configuration portal for Ethernet board and HA link to config (#1761)
* [SYS] Configuration portal for Ethernet board

Enable Wifi Manager as a configuration portal for Ethernet boards, also leverage the Wifi Access point as a fallback connectivity method

Add link to the WebUI from HA and reduce key length

* Remove unnecessary environment

Now that one environment cans support wifi and ethernet, merge the 2
2023-10-03 07:33:47 -05:00
Florian
246423a8a8 [LORA] Improvements, change frequency, webUI, Oled support, add boards (#1742)
* [LORA] Capability to change LORA frequency and Add OLED

Merge of the 2 environments for TTGO V1

* Merge messages keys with upper level json

* Id as a sub topic

* Add display and state measures

* Add frequency configuration through WebUI

* Add parameters

* Add auto discovery

* Add node example for ttgo lora32 v1

* Add environments and fix scope

* Support for sync word as a byte

* Fix TX Power setting

* Add LoRa gateway description

* Add onlyknown filter
2023-09-27 11:12:55 -05:00