Commit Graph

303 Commits

Author SHA1 Message Date
Jason2866 fc48fe1d3b
fix include for HTTPUpdate 2022-01-16 17:58:46 +01:00
Helmut Fischer a7dbee27b8
fix preprocessor directive remarks 2022-01-14 21:47:40 +01:00
Stephan Hadinger 15668fa8e1 Allow Tasmota32 minimal setup 2022-01-10 18:39:42 +01:00
Stephan Hadinger 0fd168c6cf Berry fast loop 2022-01-09 19:22:23 +01:00
Theo Arends d6fc62e376 Add support for Linkind dimmer
Add support for Linkind dimmer as GPIO ``Option A6`` (#14004)
2022-01-07 16:17:53 +01:00
Theo Arends 4c8c8572c5 Bump version to v2022.01.1 2021-12-31 18:23:35 +01:00
Theo Arends 39ec4c6d5d Revert change to fix extra flashwrite before QuickPowerDetection
Revert change to fix extra flashwrite before QuickPowerDetection (#14153)
2021-12-23 12:34:16 +01:00
wir3z b8752b7272 TasmotaSerial:
- Added transmit parity to software TX.  Software RX just consumes in the incoming parity bit with no error checking.
- Fixed issue where Serial.begin for the ESP8266 was not passing the UART SerialConfig compatible values.

support.ino
- Cleanup to use already present ConvertSerialConfig API.

tasmota.ino:
- Force the baudrate + serial config settings after boot.  Previously, the baudrate would change, but any non 8N1 settings were not applied.

xdrv_08_serial_bridge.ino:
- Increased the software serial bridge buffer size and changed type to prevent overflow.
- Added missing serial config settings to the serial begin.  Previously was forcing 8N1.

xdrv_10_scripter.ino
- Cleanup to use already present ConvertSerialConfig API.
2021-12-22 09:23:15 -07:00
Theo Arends 8bad0115b0 Fix ESP32 webcam WDT
Fix ESP32 webcam WDT (#13882)
2021-12-17 18:01:27 +01:00
Paul C Diem 8632f971ec Make sure PWM Dimmer night light stays updated 2021-11-29 14:53:24 -06:00
Stephan Hadinger 5315ccb2c4 OTA over HTTPS 2021-11-23 22:15:08 +01:00
Stephan Hadinger 9fcebb17ed Move LList to its own library 2021-11-06 09:37:40 +01:00
Theo Arends aa79f73aa9 Remove TWDT remnants 2021-11-04 17:41:03 +01:00
Theo Arends 5243b17a1a Add 1 second heartbeat GPIO 2021-11-03 11:58:05 +01:00
Theo Arends 4c65de2561 Fix OTA watchdog caused by TWDTLoop() 2021-10-27 16:22:50 +02:00
Stephan Hadinger f4dc0090b0 Move TWDT watchdog from esp-idf to Tasmota 2021-10-19 21:00:48 +02:00
bkcsfi de554466cc
fix typo in comment
comment didn't match code, I updated the comment to match
2021-10-17 15:25:55 -04:00
Stephan Hadinger 72083d34a7 Reset GPIO16/17 on ESP32 only for non-pico 2021-10-12 10:58:06 +02:00
Stephan Hadinger d527b9042e ESP32 restore GPIO16/17 if no PSRAM was found 2021-10-11 19:36:39 +02:00
Stephan Hadinger a21e4a58fc Berry add `tasmota.global` 2021-09-30 19:51:40 +02:00
Theo Arends 2143491b37 Refactor Serial.swap 2021-09-20 14:31:00 +02:00
Barbudor 4fa80c1609 Serial.swap if TXD/RXD on GPIO13/15 (ESP8266) 2021-09-15 21:02:24 +02:00
Theo Arends c47307bd5e Add optional emergency reset
Add optional emergency reset when Rx is connected to Tx at restart
2021-09-02 12:25:53 +02:00
Stephan Hadinger dcc25cf7e9 Fix compilation for ESP8266 2021-09-01 23:06:39 +02:00
Stephan Hadinger a2fdeff9c5 Fixed crash when PSRAM is absent and ``BOARD_HAS_PSRAM`` set 2021-09-01 22:48:02 +02:00
Theo Arends e039edde33 Enforce valid hostname 2021-07-26 15:10:47 +02:00
Theo Arends 520612b67c Fix discovery fails when using ``%hostname%`` in a topic (#12710) 2021-07-21 11:41:31 +02:00
Theo Arends 153a9a69da
Merge pull request #12690 from Jason2866/New_framework
Updated Arduino ESP32/IDF4.4 framework, LITTLEFS -> LittleFS
2021-07-20 09:21:32 +02:00
Adrian Scillato c73bb9953a
LOG: Increase readability of project name and device name 2021-07-19 14:24:53 -03:00
Jason2866 3ab4a2a3e0
New framework LITTLEFS -> LittleFS 2021-07-18 23:14:10 +02:00
Stephan Hadinger f0f70ce1df Fix compilation for ESP8266 2021-07-18 19:52:50 +02:00
Stephan Hadinger 1682582bea Disable PSRAM on unsupported hardware
Either ESP32 rev1/2 that needs special fixes
`-DHAS_PSRAM_FIX -mfix-esp32-psram-cache-issue -lc-psram-workaround -lm-psram-workaround`
or ESP32-PICO-V3-02 that requires esp-idf 4.4
2021-07-18 19:43:33 +02:00
Theo Arends 5abadbf221 Fix ESP32 do not use chip temperature sensor as global temperature if external temperature sensor is used (#12630) 2021-07-13 16:44:28 +02:00
Theo Arends 58c8841299 Fix TasmotaClient compilation regression 2021-06-13 10:43:10 +02:00
Theo Arends 5e805e0c4a Move Settings from DRAM to heap 2021-06-11 18:14:12 +02:00
Theo Arends 99a8c3d06a Allocate ESP8266 log buffer in iram heap space if available 2021-06-11 16:02:49 +02:00
Theo Arends 446706f16d Prep for larger log buffer 2021-06-09 17:24:28 +02:00
Theo Arends 749093a697 Prep mqtt_data from char to String (prt.3) 2021-06-06 17:26:01 +02:00
Stephan Hadinger 6d54949273 LVGL prepare M5StickC 2021-05-25 18:53:10 +02:00
Theo Arends 77760dc2cc Prep virtual mqtt_data prt2 2021-05-23 16:50:17 +02:00
Theo Arends e2e6184877 Delay HA discovery during PZEM sensor intialization
Delay HA discovery during PZEM sensor intialization (#12076)
2021-05-11 11:01:46 +02:00
Theo Arends 674509a56e Fix teleperiod rule handling regression
Fix teleperiod rule handling regression from v9.3.1.2 (#11851)
2021-04-23 10:59:33 +02:00
Theo Arends 147440fd99 Add command ``Wifi 0/1`` for ESP8266
Add command ``Wifi 0/1`` for ESP8266 to turn wifi Off and On. When wifi is Off it is always returned On after a restart except for a wake-up from deepsleep (#11839)
2021-04-22 18:10:26 +02:00
Theo Arends cd0adfe3e4 Add detected hardware to logging 2021-04-21 11:55:52 +02:00
Jason2866 59294fd55b
Fix compile error
Thx @benzino77 solves #11724 mentioned in #11704
2021-04-14 13:41:10 +02:00
Theo Arends 162e60eb30 Fix migration to higher version (#11640) 2021-04-12 11:49:53 +02:00
Theo Arends 60de9696d8 Refactor backlog nodelay in relation to sleep 2021-04-09 14:00:09 +02:00
Theo Arends dd7cecc064 Fix backlog nodelay when sleep is active 2021-04-09 12:49:57 +02:00
Theo Arends ad423d199d Add command ``Backlog 1;``
Add command ``Backlog 1;`` to allow execution of following commands without delay
2021-04-07 17:55:33 +02:00
Theo Arends 36288037a8 Refactor energy init 2021-04-06 15:23:07 +02:00
Theo Arends ca61cb06d0 Fix possible rule issue 2021-04-05 10:39:43 +02:00
Theo Arends e80c08cd18 Speed up initial power on state
Speed up initial power on state gaining 1mS pulse time (#11478)
2021-03-27 12:05:55 +01:00
Theo Arends 6dc436039b Add support for Frequency monitoring and zero-cross detection on CSE7761 (Sonoff Dual R3)
Add support for Frequency monitoring and zero-cross detection on CSE7761 (Sonoff Dual R3)
2021-03-23 11:21:38 +01:00
Theo Arends 3555b9e5f9 Init RTC sooner 2021-03-15 15:51:31 +01:00
Stephan Hadinger 0475212b54 ESP32 support for secondary I2C controller 2021-03-10 22:20:21 +01:00
Theo Arends 89d8fbb0ec Change ARRAY_SIZE() to nitems() 2021-02-28 12:50:02 +01:00
Theo Arends ead77e536c Refactor command file 2021-02-16 16:21:46 +01:00
Theo Arends e16ba61dea Add command UfsRun 2021-02-16 12:19:40 +01:00
Theo Arends 3c623b5233 Add autoexec failsafe 2021-02-15 16:51:13 +01:00
Theo Arends b073905a2e Consolidate ESP specific functions 2021-02-08 11:34:29 +01:00
Stephan Hadinger 48c4b64879 Fix and improvement to ext_snprintf 2021-01-25 16:02:56 +01:00
Stephan Hadinger cf52f1c99e Added ext_snprintf to support extended types 2021-01-24 16:35:36 +01:00
Theo Arends efaed8046d Refactor AddLog usage 2021-01-23 16:26:23 +01:00
Theo Arends 5561de02fa Add support for Sugar Valley NeoPool Controller
Add support for Sugar Valley NeoPool Controller by Norbert Richter (#10637)
2021-01-20 17:03:53 +01:00
Theo Arends 96c0951587 move includes 2021-01-20 15:43:26 +01:00
Stephan Hadinger 2f139d0e47 More PROGMEM 2021-01-18 21:48:04 +01:00
Theo Arends fdbd1dcc0a Changed command ``Sleep 0``
Changed command ``Sleep 0`` removes any sleep from wifi modem except when ESP32 BLE is active
2021-01-14 17:03:01 +01:00
Theo Arends 85b2d62225 ESP8266 Support for 2MB and up linker files with 1MB and up LittleFS
Breaking Change: ESP8266 until now NOT SUPPORTED linker files 2MB and up. Current settings will be overwritten once LittleFS is enabled
2021-01-11 17:56:18 +01:00
Theo Arends d53fa3234d Refactor web upload 2021-01-10 17:46:30 +01:00
BBBits f99f413065 mDNS Performance Fix & mDNS ESP32 Support 2021-01-10 22:04:16 +13:00
Theo Arends 8a269c8902 Integrate filesystem in core
Integrate filesystem in core
2021-01-08 15:00:40 +01:00
Theo Arends c7545d93dc Fix RTC related power on sequence 2021-01-05 11:49:13 +01:00
Theo Arends 5c92c5a9a9 Optimize sleepdelay 2021-01-04 12:47:00 +01:00
Theo Arends d1ef1c3255 Optimize sleepdelay after profiling 2021-01-04 12:31:05 +01:00
Theo Arends f9403c8489 Optimize sleepdelay
Optimize sleepdelay (#10379)
2021-01-03 16:30:45 +01:00
Theo Arends 7b5184c89b Optimize sleepdelay
Optimize sleepdelay (#10379)
2021-01-03 15:28:52 +01:00
Theo Arends 628f17de8c Add TasAutoMutex 2021-01-01 17:04:36 +01:00
Theo Arends ee146b2e29
Merge pull request #10336 from btsimonh/loggingmutex
Add mutex/semaphore for logging - protects new logging_buffer
2021-01-01 16:26:19 +01:00
Theo Arends dcbb3f1e0e Happy New Year 2021-01-01 13:44:04 +01:00
Theo Arends 58e6ec55f1 Breaking change replacing SPI CS and SPI DC
Breaking change replacing SPI CS and SPI DC by device specific CS and DC
2020-12-31 16:17:30 +01:00
Simon Hailes 6b2daa14d0 Add mutex/semaphore for logging - protects new logging_buffer 2020-12-31 11:36:35 +00:00
Theo Arends 593675eb7a Removal of global log_data providing re-entry
Removal of global log_data providing re-entry and freeing 700k RAM
2020-12-23 18:26:15 +01:00
Theo Arends b8197181d0 Remove obsolete version marker 2020-12-23 16:40:46 +01:00
Theo Arends 244611f12f Add logging buffer management 2020-12-22 15:26:07 +01:00
Theo Arends dcfb74f457 Support for GPIO option selection
- Support for GPIO option selection
- Gpio ``Option_a1`` enabling PWM1 high impedance if powered off and no fading as used by Wyze bulbs (#10196)
2020-12-20 13:22:01 +01:00
Theo Arends bafcee4b05 Effort to get rid of PrepLog_P
Effort to get rid of PrepLog_P now syslog and mqttlog are async
2020-12-18 16:49:11 +01:00
Theo Arends 2eb4eef08c Rename web_log to log_buffer 2020-12-18 16:30:37 +01:00
Theo Arends f243a01adf Fic initial milliseconds 2020-12-17 16:41:04 +01:00
Theo Arends 2f47a4b5c9 Refactor serial init 2020-12-07 17:03:22 +01:00
Theo Arends b9a3fd4342 Fix initial baudrate
Fix initial baudrate (#7447)
2020-12-07 15:33:09 +01:00
Theo Arends 5892cffbda Prep RC522 rfid reader pt2 2020-11-30 17:54:40 +01:00
Theo Arends 4b5dbe7a86 Fix reset to defaults after 6 hours of DeepSleep
Fix reset to defaults after 6 hours of DeepSleep (#9993)
2020-11-27 16:43:56 +01:00
Theo Arends c57e79d51f
Merge pull request #9995 from emontnemery/fix_backlog_wrap_around
Fix wraparound bug in backlog
2020-11-27 15:31:29 +01:00
Erik aa12879356 Fix wraparound bug in backlog 2020-11-27 14:43:45 +01:00
Theo Arends fa7fdbd51a Consolidate `AddLog_P`
Consolidate `AddLog_P` into `AddLog_P2` and rename to `AddLog_P`
2020-11-06 17:09:13 +01:00
Christopher Tremblay b5b6b97295 Swapped strstr for strchr where applicable
strstr calls with a single character were changed to strchr which should be more efficient.
2020-11-04 02:20:17 -08:00
Jason2866 e10cbfc81f
No core_version.h in ESP32 stage 2020-11-01 15:24:12 +01:00
Theo Arends 8338a9cc80 Refactor module change detection 2020-11-01 12:12:27 +01:00
Theo Arends af5082320d Use global struct 2020-10-30 12:29:48 +01:00
Theo Arends 8a703adf84 Use global struct 2020-10-29 16:16:34 +01:00
Theo Arends e59bfc1d69 Use global struct 2020-10-29 13:58:50 +01:00
Theo Arends 280f0a9de7 Use global struct 2020-10-29 13:37:09 +01:00
Theo Arends 0d85f5c583 Use global struct 2020-10-29 12:58:22 +01:00
Theo Arends 0cfe1ac3e1 Use global struct 2020-10-29 12:39:44 +01:00
Theo Arends 3bebfb32d3 Use global struct 2020-10-29 12:21:24 +01:00
Theo Arends f1ac7b2d67 Use global struct 2020-10-28 19:03:39 +01:00
Theo Arends b93b719108 Use global struct 2020-10-28 17:32:07 +01:00
Theo Arends 594f57464f Prep global struct 2020-10-28 12:40:52 +01:00
Theo Arends 66f5d5d180 Prep global struct 2020-10-28 11:48:57 +01:00
Theo Arends 85d2626e84 Refactor feature list build 2020-10-28 11:37:59 +01:00
Theo Arends 7bc8956d86 Changed management of serial baudrate
Changed management of serial baudrate (#9554)
2020-10-16 15:18:16 +02:00
Theo Arends 074aec0a23 Adjust command ``NoDelay`` 2020-10-15 15:33:17 +02:00
Theo Arends 29e73dae9b Add command ``NoDelay``
Add command ``NoDelay`` for immediate backlog command execution by Erik Montnemery (#9544)
2020-10-15 12:32:40 +02:00
Theo Arends 7a73dd7019 Merge branch 'development' into dev-gpio16 2020-09-30 14:54:29 +02:00
Theo Arends c00d7035d9 Redesign GPIO to 16-bit 2020-09-29 18:10:21 +02:00
Theo Arends 9cbd2d531d Initial GPIO redesign 2020-09-25 18:15:31 +02:00
Theo Arends 27caccf7a0 Remove ArduinoJson in favour of JSMN
Remove ArduinoJson library in favour of JSMN library
2020-09-25 11:33:12 +02:00
Stephan Hadinger 019e402fe7 Move IR from ArduinoJson to JSMN 2020-09-24 08:51:43 +02:00
Theo Arends 423b4c0712 Workaround compilation regression
Workaround compilation regression (#9223)
2020-09-03 20:31:31 +02:00
Stephan Hadinger f8f0f4f616 Reduce memory usage of BackLog 2020-09-03 15:11:14 +02:00
Theo Arends 4724fa2c49 Add support for DYP ME007
Add support for DYP ME007 ultrasonic distance sensor by Janusz Kostorz (#9113)
2020-08-17 16:25:24 +02:00
Theo Arends 1eea0978ed Change Fast Reboot Cycle prefix 2020-08-13 17:15:57 +02:00
Theo Arends f268697e54 Add command ``Restart 2`` to halt system
Add command ``Restart 2`` to halt system. Needs hardware reset or power cycle to restart (#9046)
2020-08-10 16:19:44 +02:00
Theo Arends a5857ac03f Add masterlog_level to control master log level control 2020-07-31 11:53:12 +02:00
Theo Arends 934ca43463 Remove Arduino ESP8266 Core support before 2.7.1
Remove Arduino ESP8266 Core support for versions before 2.7.1
2020-07-17 11:49:56 +02:00
Theo Arends 6b0870343b Change to limited support of Arduino IDE
Change to limited support of Arduino IDE as an increasing amount of features cannot be compiled with Arduino IDE
2020-07-16 18:21:19 +02:00
Theo Arends 06c06705dd Fix minimal binary fast reboot issue 2020-07-15 16:09:32 +02:00
Theo Arends cc301e9395
Merge pull request #8837 from gemu2015/scripter-update
Scripter update
2020-07-02 18:18:41 +02:00
Theo Arends 0cc1dd957b Add SO98 to control user rotary support 2020-07-02 18:13:14 +02:00
gemu2015 67b3702b0b Update tasmota.ino 2020-07-02 06:48:07 +02:00
gemu2015 64bd9f1974 scripter fixes 2020-07-02 06:46:04 +02:00
Theo Arends 83b6665c39 Rotary experiments 2020-07-01 10:24:46 +02:00
Theo Arends 9ac4502c78 Rotary experiments 2020-07-01 10:22:20 +02:00
Theo Arends 7dafeb280e Rename global temp and pressure
- Rename global temp and pressure (#8808, #8810)
- Fix SGP30 calculation (#8808)
2020-06-28 12:23:18 +02:00
Theo Arends 83bbe757db Add command ``Module2``
Add command ``Module2`` to configure fallback module on fast reboot (#8464)
2020-06-17 14:06:46 +02:00
gemu2015 865769767d scripter call >BS after sensor init 2020-06-16 10:36:16 +02:00
Theo Arends ef0b797686 Add basic support for ESP32 ethernet
Add basic support for ESP32 ethernet adding commands ``Wifi 0/1`` and ``Ethernet 0/1`` both default ON (#8503)
2020-06-15 18:27:04 +02:00
Theo Arends cdf7aa74bf Add rule trigger ``System#Init``
Add rule trigger ``System#Init`` to allow early rule execution without wifi and mqtt initialized yet (#8673)
2020-06-14 12:36:44 +02:00
Theo Arends 0abfcf1954 Fix global temperature
- Fix global temperature use of float solving intermittend power off (#8175)
- Fix BL0940 power monitoring when powered on but no load present
2020-06-12 16:51:21 +02:00
Stephan Hadinger 1d68fe9bc6 Cleaned TLS options and prepare for TELEGRAM 2020-06-10 20:14:46 +02:00
Theo Arends aafa0862ab Refactor LedPwm code 2020-05-23 13:09:16 +02:00
George e21cbfdc5d More sensible behaviour
* When setting PWM values, updates all the LEDs (instant response). Uses led_power values.
* If LEDLINK not set, but LED1 is, LED1 is the status led. When turning on/off, setledlink uses digitalwrite (which does not respect the new pwm operation). In this case only, we will use the setledpoweridx instead of digitalwrite - costly (every 250ms this runs), but edge case / legacy. Allows more intuitive operation - if we blink an LED with the max and min PWM limits, we'd expect it to respect these. In this case, blink will also now update the led_power status, which keeps this accurate e.g. if ledpower 1 cmnd was sent, then blink occurred, led_state would read a 1 for that bit but the led would be off (but nothing was reading it for status so it didn't cause any trouble). Leaving digitalwrite when LEDLINK is defined as this is more efficient and the use case for pwm leds is to find buttons - link indicator would become more ambiguous for no benefit.
2020-05-20 13:23:53 +10:00
Theo Arends d7f6c78ed9 Add command ``DeviceName``
Add command ``DeviceName`` defaults to FriendlyName1 and replaces FriendlyName1 in GUI
2020-05-17 17:10:17 +02:00
Theo Arends 4aa1c18d82 Revert uart buffer size increase
Revert uart buffer size increase but visit uart buffer reads more often to solve possible uart buffer overrun caused by sleep
2020-05-11 16:45:22 +02:00
Theo Arends 125ee62ff3 Add Serial buffer overrun detection
Add Serial buffer overrun detection and fix serial corruption by increasing uart serial buffer to 520
2020-05-11 15:27:29 +02:00
Theo Arends 892be892fa Remove gpio to pin support 2020-05-01 17:37:56 +02:00
Theo Arends 5d18ad1c74 Add experimental basic support for ESP32
- Add experimental basic support for Tasmota on ESP32 based on work by Jörg Schüler-Maroldt
- Bump version to 8.2.0.6
- This ESP32 upgrade breaks current ESP32 templates
2020-05-01 17:30:09 +02:00
Theo Arends 7177c7d8e0 Change ESP32 pin allocation part 4 2020-05-01 16:47:41 +02:00
Theo Arends d805803daa Change pin array names
Change pin array names to block unwanted use of direct access
2020-04-29 14:01:02 +02:00
Theo Arends c24de18278 Change ESP32 pin allocation part 1 2020-04-28 18:27:07 +02:00