Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] mega from letscontrolit:mega #133

Merged
merged 35 commits into from
Sep 30, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
abee8c4
[RTTTL] Add Async play and other improvements
tonhuisman Sep 15, 2023
c3ea63f
[RTTTL] update documentation
tonhuisman Sep 15, 2023
8d9a450
[GPIO] Decrease buildsize by optimizing logging
tonhuisman Sep 15, 2023
ece1bba
[RTTTL] Add FEATURE_ flags to Custom-sample.h
tonhuisman Sep 15, 2023
38515d3
[GPIO] Adopt optimized logging improvements (@gijs)
tonhuisman Sep 16, 2023
2799c0e
[P037] Build: Include all features in ESP32 builds
tonhuisman Sep 19, 2023
771305b
added InfluxDB v2 HTTP API docs and some other minors
agroszer Sep 22, 2023
936d5b2
[DOC] Update P014 to avoid to use this Plugin with SHT2x devices
iz8mbw Sep 25, 2023
d1456d2
Update P014.rst
iz8mbw Sep 25, 2023
bc680d9
Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into …
tonhuisman Sep 26, 2023
929d9ff
Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into …
tonhuisman Sep 26, 2023
d80948f
[P037] Update documentation
tonhuisman Sep 26, 2023
e2050cc
[RTTTL] Add events for RTTTL play (async only), fix intermitted/skipp…
tonhuisman Sep 27, 2023
583e0be
[GPIO] Fix check for valid GPIO
TD-er Sep 28, 2023
ecf96f9
Merge pull request #4829 from Micha-he/mega
TD-er Sep 28, 2023
ce68d2a
[RTTTL] Fix parsing correct command argument
TD-er Sep 28, 2023
7852c42
[RTTTL] Fix argument index for melody + prevent crash when changing song
TD-er Sep 28, 2023
6abed0f
Merge pull request #4830 from TD-er/bugfix/CheckValidGPIO
TD-er Sep 28, 2023
7211227
Merge pull request #4824 from iz8mbw/patch-7
TD-er Sep 28, 2023
d677e41
Merge pull request #4810 from tonhuisman/feature/P037-enable-all-feat…
TD-er Sep 28, 2023
982df8d
Merge pull request #4802 from tonhuisman/feature/RTTTL-enable-async-p…
TD-er Sep 28, 2023
a612871
[RTTTL] Fix stupid mix-up of old/new command argument parsing
TD-er Sep 28, 2023
8369213
[RTTTL] Only check for old/new syntax in the 1st argument
TD-er Sep 28, 2023
068d0ec
[RTTTL] I need some coffee....
TD-er Sep 28, 2023
d125cd3
Merge pull request #4831 from TD-er/bugfix/RTTTL_arg_parsing
TD-er Sep 28, 2023
94e1d91
Update GPIO.cpp
chromoxdor Sep 28, 2023
bcc555e
Merge pull request #4832 from chromoxdor/rtttl_the_final_fix
TD-er Sep 28, 2023
1a812ff
[RTTTL] Restore Cancelled event, update documentation
tonhuisman Sep 28, 2023
d8cb848
[P000 Docs] Update some internal links
tonhuisman Sep 28, 2023
8b76e3e
Merge pull request #4833 from tonhuisman/feature/RTTTL-documentation-…
TD-er Sep 28, 2023
30dd469
[Internal temp] Fix crashes on ESP32-S2/S3/C3 + filter
TD-er Sep 29, 2023
3c8d617
[ESP32 temp] Fix specific includes for ESP32-S2
TD-er Sep 29, 2023
361894a
Merge pull request #4834 from TD-er/bugfix/read_temperature_ESP32
TD-er Sep 30, 2023
b5b9156
Merge pull request #4816 from agroszer/mega
TD-er Sep 30, 2023
2a07cca
automatically updated release notes for mega-20230930
TD-er Sep 30, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
200 changes: 200 additions & 0 deletions dist/Release_notes.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,203 @@
-------------------------------------------------
Changes in release mega-20230930 (since mega-20230822)
-------------------------------------------------

Release date: za 30 sep 2023 15:46:23 CEST

Adam Groszer (1):
added InfluxDB v2 HTTP API docs and some other minors

Fabio Ancona (3):
Update README.md adding "Climate"
[DOC] Update P014 to avoid to use this Plugin with SHT2x devices
Update P014.rst

Michael Schröder (1):
Ignore more variants of own Custom.h

TD-er (83):
Update issue templates
[ADS1x15] Support ADS1015 & add sample rate selector
[ADS1x15] Add ADS1015/ADS1115 sensor type detection to task config page
[Cleanup] Add macro NR_ELEMENTS for array counting
[ADS1x15] Add option to select multiple task value outputs
[ADS1x15] Simplify storage of settings
[ADS1x15] Update documentation
[ADS1x15] Update documentation
[ADS1x15] Replace "ADS1115" with "ADS1x15" in docs and I2C scan result
[ADS1x15] Fix PBC -> PCB typo in documentation
[BMP3xx] Add support for Bosch BMP384/388/390 temp/pressure modules
[BMP3xx] Fix saving I2C address
[BMP3xx] Perform a few reads after init to initialize the IIR filter
[BMP3xx] Add detected chip + altitude compensation
[BMP3xx] Document P154 BMP388/BMP390
[BME280] Show detected sensor model like is done for ADS1x15 and BMP3xx
[Scheduler] Cleanup of Scheduler code
[Scheduler] Allow to schedule task calls to specific functions
[Scheduler] Split Various Scheduler timer types into separate .cpp files
[Cleanup] Fix build issue in WOL plugin
[Scheduler] Remove unneeded scheduler call type
[Scheduler] Cleanup includes and fix decode()
[Documentation] Document ESPEasy Functional Blocks
[Documentation] Add ESPEasy Functional block diagram
[Docs] Mark arrow between controller and MQTT broker as bidirectional
[Docs] Clarify some arrows in ESPEasy block diagram
[Task] Revert 'soft disable' task (for now...)
[Cleanup] Make deviceIndex_t a strict class
[Cleanup] Only allow PLUGIN_ADD to change Device[] vector
[Cleanup] Make pluginID_t a strict class
[Cleanup] Fix build error on ETH builds with pluginID_t
[Cleanup] Partial conversion npluginID_T to class
[Cleanup] Complete convert npluginID_t to strict class
[Cleanup] Reduce build size on ESP8266 making DeviceVector less strict
[Cleanup] Fix crashing compiler on ESP8266 builds
[Cleanup] Reduce build size to 'undo' extra added bytes in this cleanup
[Cleanup] Further reduction of build size
[Cleanup] Fix build on ESP8266 Collection A
[Cleanup] Fix build error on ESP8266 Display
[Cleanup] Reduce build size by moving small functions to .h files
[Cleanup] Use constexpr for static pluginID compares
[Cleanup] Use more constexpr for static pluginID compares
[Controller] Simplify ESPEasy core administration of CPlugins
[Cleanup] Misc code cleanup + add comments from PVS Studio
[Plugin] Simplify ESPEasy plugin registration + reduce build size
[Cleanup] Simplify code for return values internal ESPEasy commands
[Cleanup] Simplify get/set functions of VariousBits1 in SettingsStruct
[Cleanup] Remove no longer needed globals/Protocol.h/.cpp
[Neopixel] Fix build error signed/unsigned compare
[Cleanup] Apply GPIO log optimizations to reduce build size (@Ton)
[Cleanup] Fix storing new task (taskenable still doesn't work...)
[Cleanup] Fix silly bug setting tasks disabled.
[Cleanup] Reduce size of embedded lookup table to only included plugins
[Cleanup] Do not use 'Number' in DeviceStruct class
[Cleanup] Simplify DeviceIndex_sorted
[Cleanup] Fix merge issue
[Cleanup] Minor code tweaks to reduce build size
[Debug] Add "minimal" special build for analysis
[PVS Studio] Fix issues found by PVS Studio
[Cleanup] Reduce build size by moving isInitialized() to .h files
[Servo] Fix servo for ESP32-S2/C3
[Cleanup] Reduce build size for bitlevel access in Controller Settings
[Cleanup] Remove code redundancy from DevicesPage and UploadPage
[PluginStats] Fix showing stats when using 256 samples buffer
[Cleanup] Fix crash when adding new controller
[Cleanup] Disable drawing partition layout for limit build size builds
[Cleanup] Fix isNaN check in thermocouple plugin
[Debug] Add special debug build env for Display builds
[Cleanup] Reduce build size making Improv smaller
[Debug] Set special debug 'display' build to BUILD_NO_DEBUG
[Cleanup] Shorten (very) elaborate notes in P039 ThermoCouple
[Cleanup] clarify single event note + reduce GPIO command logs
[I2C scanner] Fix missing ++x; causing reboot during I2C scan
[ADC] Fix handling negative ADC values from Hall Effect sensor
[Notifications] Fix deleting notifier
[GPIO] Fix check for valid GPIO
[RTTTL] Fix parsing correct command argument
[RTTTL] Fix argument index for melody + prevent crash when changing song
[RTTTL] Fix stupid mix-up of old/new command argument parsing
[RTTTL] Only check for old/new syntax in the 1st argument
[RTTTL] I need some coffee....
[Internal temp] Fix crashes on ESP32-S2/S3/C3 + filter
[ESP32 temp] Fix specific includes for ESP32-S2

Ton Huisman (77):
[P036] Show current display content on Devices page
[P036] Wrap on-display output in `pre` tag to keep spaces and similar formatting
[P036] Remove unreachable code, other optimizations
[addHtmlDiv] Add optional `attribute` argument
[P036] Reduce Show Display font-size to 75%, code optimizations
[P023] Add Show Values for on-Display content, code improvements and optimizations
[P036] Make Interval optional
[P036] Update documentation
[P023] Add documentation
[P023] Updated screenshot
[P036] Add center/right align in preview, make preview compile-optional, code optimizations
[P036] Only disable alignment feature for 1M builds
[P036] Add new compile-time directives to Custom-sample.h
[Build] Make `Climate` build fit
[P036] Code optimizations
[P023] Minor code optimizations
[P036] Add optional user-defined display headers
[P036] Change compile-time defines to bool, change enums to uint8_t type, update changelog
[P036] Fix copy/paste error for `userDef2`
[P028] Add detection-mode setting
[P028] Ignore humidity if Sensor model BMP280 is selected
[Devices] Add event PLUGIN_WEBFORM_LOAD_ALWAYS that is also called for remote data-feed devices
[P028] Fix VType matching for remote data-feed, implement new WEBFORM_LOAD_ALWAYS event
[P028] Update documentation
[Controllers] Show correct data (or nothing) for controllers without Host or Port settings
[Controllers] Code improvement
[P036] Enable Userdefined headers by default for LIMIT_BUILD_SIZE builds
[P104] Add Dot subcommand to draw individual dots in a zone
[P104] Update documentation
[P104] Code improvements and a bugfix
[P028] Fix merge conflict
[P036] Code improvements using `constexpr`
[Rules] Improving removal of comments
[Rules] Separate comment removal from reading a line
[Release] `release.yml` script improvements
[P036] Fix merge conflicts, small source formatting improvements
[SD-card] Bugfix: Opening a file from SD-card doesn't always work
[SD-browser] Code improvements
[P153] Fix incorrect Sensor_VType setting
[SD-Card] Show SD-card CS GPIO pin in pin-selection
[P036] Bugfix in documentation-syntax
[P051] Fix device being automatically disabled and I2C scan issue
[I2C Scan] Make I2C scan more robust by adding extra wakeup
[Docs] Add I2C Scan documentation
[Docs] Additional I2C Scan documentation (mux)
[Docs] Rules example for PostToHTTP/PutToHTTP
[UI] Bugfix: Don't show - None - [SD-CARD] in GPIO selector when SD-Card is not configured (improves #4780)
[Build] Restore RTTTL feature in ESP8266 Climate build
[RTTTL] Add Async play and other improvements
[RTTTL] update documentation
[GPIO] Decrease buildsize by optimizing logging
[RTTTL] Add FEATURE_ flags to Custom-sample.h
[GPIO] Adopt optimized logging improvements (@gijs)
[Build] Add Collection G builds
[Build] Move [P154] BMP3xx to Collection G
[Build] Add checks for some external defined compiletime settings
[P036] Code formatting and optimizations
[P037] Build: Include all features in ESP32 builds
[P073] Reduce logging for BUILD_NO_DEBUG builds to reduce size
[P036] Updates for documentation
[P026][Sysvars] Add Internal temperature sensor value for ESP32
[P026][Sysvars] Feedback and fixes
[P026][Sysvars] Fix typo in comment
[P026] Add Get Config feature for all values
[P026] Add documentation
[Scripts] Handle 8M builds in WebFlasher
[P026][Sysvars] Avoid temperature reading errors on ESP32 classic (2 tries only)
[P026][Sysvars] Read temperature every second on ESP32 classic for better results
[Build] Try to use real branch name on GH Actions builds
[Build] Ignore Docs commits to trigger an Actions run
[P026][Sysvars] Explicitly disable FEATURE_INTERNAL_TEMPERATURE for ESP8266
[P026][Sysvars] Add delay() call
[Build][P026] Update documentation (without Actions run...)
[P037] Update documentation
[RTTTL] Add events for RTTTL play (async only), fix intermitted/skipped async playing
[RTTTL] Restore Cancelled event, update documentation
[P000 Docs] Update some internal links

chromoxdor (2):
Fixed error in section TaskValueSet
Update GPIO.cpp

dependabot[bot] (1):
Bump actions/checkout from 3 to 4

uwekaditz (9):
[P036] Add ticker as scroll option
Compiler error if P036_SendEvent was not set
Calculation for ticker IdxStart and IdxEnd was wrong for 64x48 display, Start page updates after network has connected in PLUGIN_ONCE_A_SECOND
Some bug fixes (only 1 line displayed)
Removed unnecessary clear() functions
Merged with mega from 2023-08-25
Wrong #ifdef P036_SEND_EVENTS
CHG: Disable scrolling or ticker if new line content received (PLUGIN_WRITE)
CHG: Code reduced if P036_ENABLE_TICKER is not used


-------------------------------------------------
Changes in release mega-20230822 (since mega-20230623)
-------------------------------------------------
Expand Down
35 changes: 32 additions & 3 deletions docs/source/Controller/C011.rst
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,11 @@ You can use this placeholders in http header and in the http body:
* ``%vname4%`` will be replaced with Valuename 4
* ``%val1%`` will be replaced with the value 1 of the device which is sending data to this controller
* ``%val2%`` will be replaced with the value 2 of the device which is sending data to this controller
* ``%val3%`` will be replaced with the value 3 of the device which is sending data to this controller
* ``%val4%`` will be replaced with the value 4 of the device which is sending data to this controller
* ``%unixtime%`` will be replaced with the Unix time (seconds since epoch)

See also System variables

You can also write things like this:

Expand All @@ -71,8 +76,8 @@ You can also write things like this:
Examples
--------

InfluxDB HTTP Api
^^^^^^^^^^^^^^^^^
InfluxDB v1 HTTP API
^^^^^^^^^^^^^^^^^^^^

* HTTP Method: ``POST``
* HTTP URI: ``write?db=testdb``
Expand All @@ -89,9 +94,33 @@ InfluxDB HTTP Api

See also `InfluxDB API description <https://docs.influxdata.com/influxdb/v1.5/guides/writing_data/#writing-multiple-points>`_

InfluxDB v2 HTTP API
^^^^^^^^^^^^^^^^^^^^

* HTTP Method: ``POST``
* HTTP URI: ``api/v2/write?bucket=yourbucket&org=yourorg``

* HTTP Header:

.. code-block:: none

Content-Type: application/x-www-form-urlencoded
Authorization: Token yourtoken

* HTTP Body:

.. code-block:: none

esp,unit=%sysname%,device=%tskname%,sensor=%vname1% value=%val1% %unixtime%%LF%%2%esp,unit=%sysname%,device=%tskname%,sensor=%vname2% value=%val2% %unixtime%%/2%%LF%%3%esp,unit=%sysname%,device=%tskname%,sensor=%vname3% value=%val3% %unixtime%%/3%%LF%%4%esp,unit=%sysname%,device=%tskname%,sensor=%vname4% value=%val4% %unixtime%%/4%%LF%

Make sure the body is all ONE single line, InfluxDB seems to be very picky about newlines.

Response should be 204 on success.


Nettemp HTTP Api
^^^^^^^^^^^^^^^^

untested but should work with something like this:

``/receiver.php?device=ip&type=%1%%vname1%%/1%%2%;%vname2%%/2%%3%;%vname3%%/3%%4%;%vname4%%/4%&value=%1%%val1%%/1%%2%;%val2%%/2%%3%;%val3%%/3%%4%;%val4%%/4%``
``/receiver.php?device=ip&type=%1%%vname1%%/1%%2%;%vname2%%/2%%3%;%vname3%%/3%%4%;%vname4%%/4%&value=%1%%val1%%/1%%2%;%val2%%/2%%3%;%val3%%/3%%4%;%val4%%/4%``
15 changes: 15 additions & 0 deletions docs/source/Plugin/P000.rst
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,21 @@ Supported hardware

|P000_usedby_GPIO|, |P000_usedby_RTTTL|, |P000_usedby_Relay|, |P000_usedby_Servo|, |P000_usedby_LevelConverter|

Switch: :ref:`P001_Switch_page`

Doorswitch: :ref:`P001_Door_switch_page`

Relay: :ref:`P000_Relay_page`

PIR: :ref:`P001_PIR_sensor_page`

Servo: :ref:`P000_Servo_motor_page`

Buzzer: :ref:`P000_Buzzer_page`

Speaker RTTTL: :ref:`P000_Speaker_page`

Piezo element: :ref:`P000_Piezo_element_page`

Commands available
------------------
Expand Down
9 changes: 7 additions & 2 deletions docs/source/Plugin/P000_Buzzer_RTTTL.rst
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ From ESP Easy v2.0.0 its possible to play melodies via `RTTTL <https://en.wikipe

.. code-block:: none

http://<ESP IP address>/control?cmd=rtttl,14:d=4,o=5,b=112:8a,8a,a,8a,8a,a,8a,8c6,8f.,16g,2a,8a-,8a-,8a-.,16a-,8a-,8a,8a.,16a,8a,8g,8g,8a,g,c6
http://<ESP IP address>/control?cmd=rtttl,14,:d=4,o=5,b=112:8a,8a,a,8a,8a,a,8a,8c6,8f.,16g,2a,8a-,8a-,8a-.,16a-,8a-,8a,8a.,16a,8a,8g,8g,8a,g,c6

This plays a melody on pin 14.

Expand All @@ -68,7 +68,7 @@ To make a boot-sound on startup, create a rule like this:
.. code-block:: none

On System#Boot do
rtttl,14:d=10,o=6,b=180,c,e,g
rtttl,14,:d=10,o=6,b=180,c,e,g
endon

`A place to find more tunes <http://www.picaxe.com/RTTTL-Ringtones-for-Tune-Command/>`_, all saved as txt files.
Expand All @@ -91,6 +91,11 @@ Commands

.. include:: P001_commands_RTTTL.repl

Events
------

.. include:: P001_events_RTTTL.repl

Where to buy
------------

Expand Down
4 changes: 2 additions & 2 deletions docs/source/Plugin/P000_Piezo_element_RTTTL.rst
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ From ESP Easy v2.0.0 its possible to play melodies via `RTTTL <https://en.wikipe

.. code-block:: none

http://<ESP IP address>/control?cmd=rtttl,14:d=4,o=5,b=112:8a,8a,a,8a,8a,a,8a,8c6,8f.,16g,2a,8a-,8a-,8a-.,16a-,8a-,8a,8a.,16a,8a,8g,8g,8a,g,c6
http://<ESP IP address>/control?cmd=rtttl,14,:d=4,o=5,b=112:8a,8a,a,8a,8a,a,8a,8c6,8f.,16g,2a,8a-,8a-,8a-.,16a-,8a-,8a,8a.,16a,8a,8g,8g,8a,g,c6

This plays a melody on pin 14.

Expand All @@ -65,7 +65,7 @@ To make a boot-sound on startup, create a rule like this:
.. code-block:: none

On System#Boot do
rtttl,14:d=10,o=6,b=180,c,e,g
rtttl,14,:d=10,o=6,b=180,c,e,g
endon

`A place to find more tunes <http://www.picaxe.com/RTTTL-Ringtones-for-Tune-Command/>`_, all saved as txt files.
Expand Down
4 changes: 2 additions & 2 deletions docs/source/Plugin/P000_Speaker_RTTTL.rst
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ From ESP Easy v2.0.0 its possible to play melodies via `RTTTL <https://en.wikipe

.. code-block:: none

http://<ESP IP address>/control?cmd=rtttl,14:d=4,o=5,b=112:8a,8a,a,8a,8a,a,8a,8c6,8f.,16g,2a,8a-,8a-,8a-.,16a-,8a-,8a,8a.,16a,8a,8g,8g,8a,g,c6
http://<ESP IP address>/control?cmd=rtttl,14,:d=4,o=5,b=112:8a,8a,a,8a,8a,a,8a,8c6,8f.,16g,2a,8a-,8a-,8a-.,16a-,8a-,8a,8a.,16a,8a,8g,8g,8a,g,c6

This plays a melody on pin 14.

Expand All @@ -65,7 +65,7 @@ To make a boot-sound on startup, create a rule like this:
.. code-block:: none

On System#Boot do
rtttl,14:d=10,o=6,b=180,c,e,g
rtttl,14,:d=10,o=6,b=180,c,e,g
endon

`A place to find more tunes <http://www.picaxe.com/RTTTL-Ringtones-for-Tune-Command/>`_, all saved as txt files.
Expand Down
6 changes: 6 additions & 0 deletions docs/source/Plugin/P001_commands_RTTTL.repl
Original file line number Diff line number Diff line change
Expand Up @@ -43,4 +43,10 @@ Supported hardware: |P000_usedby_RTTTL| (Ringtones etc.)
``rtttl,14,test:d=8,o=5,b=180,c6,b,c6,p,g,g-``

`More RTTTL Ringtone Downloads <http://www.picaxe.com/RTTTL-Ringtones-for-Tune-Command/>`_

Since 2023-09-15:

The ``rtttl`` command, by default, now uses the `AnyRtttl library <https://github.com/end2endzone/AnyRtttl>`_, allowing asynchronous handling of the command. This has the advantage of being non-blocking, allowing ESPEasy to handle other tasks while the tune is being played, but comes with the disadvantage of the output possibly being interrupted/delayed by other (possibly blocking) tasks and events, so the music may not play continuously.

Also, the previous implementation may not have stopped sound correctly after playing a song, but as this has been corrected, so there is no longer a need to turn off the GPIO after playing a song.
"
Loading