[go: nahoru, domu]

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

release v3.0 #260

Merged
merged 82 commits into from
Aug 31, 2022
Merged

release v3.0 #260

merged 82 commits into from
Aug 31, 2022

Conversation

IgorYbema
Copy link
Contributor

Release notes for v3.0

Recoding the webserver part
Adding rules engine to run simple code on heishamon
s0 pulse and dallas temp sensor improvement
wifi code improvement
adding more heatpump types
add NTP config
logging show time/date
improved firmware flashing

IgorYbema and others added 28 commits January 2, 2022 23:12
* add mmu=3216

* add safe non-32bit access instead of fast
When there is still client data to be transmitted during wifi reset a memory leak can occur. So introduce a timer wait for the wifi reconfig call
adding a big progmem options blob for static tzdata to speed up the settings loading. Load now subsecond instead of > 5 seconds
I could also clear the websetting in the if else but this seems nicer as it is following the same structure as the wifi ssid/pass check.
* Implement rules config page and add userdata webserver field

* Better memory management

* Initialize userdata

* Remove obsolete variable

* Also check FS:File boolean

* Implementing rules

* Allow ds18b20 sensors as rules event

* Fix proper length of ds18b20 strcmp

* Actually subscribe to opentherm topic

* Allow opentherm vars as event triggers

* Fix small edge case in webserver

```c
-----------------------------354617515641648399072235817744\r\n
Content-Disposition: form-data; name="rules"\r\n
\r\n
on ds18b20#28610695f0013c42 then\r\n
  #foo = ds18b20#28610695f0013c42;\r\n
end\r\n
\r\n
on ?setpoint then\r\n
  #bar = ?setpoint;\r\n
end\r\n
-----------------------------354617515641648399072235817744--\r\n
\r\n
```

The webserver detects `\r\n--` chunks as possible boundary delimiters. However, when a chunks splits the `\r\n` and `--` tokens the `\r\n` is added to the content and not seen as a potential boundary delimiter. This commit fixes that.

* hide settings while loading

* Differentiate between push SHA and PR SHA (#83)

* Fix small edge case in webserver

```c
-----------------------------354617515641648399072235817744\r\n
Content-Disposition: form-data; name="rules"\r\n
\r\n
on ds18b20#28610695f0013c42 then\r\n
  #foo = ds18b20#28610695f0013c42;\r\n
end\r\n
\r\n
on ?setpoint then\r\n
  #bar = ?setpoint;\r\n
end\r\n
-----------------------------354617515641648399072235817744--\r\n
\r\n
```

The webserver detects `\r\n--` chunks as possible boundary delimiters. However, when a chunks splits the `\r\n` and `--` tokens the `\r\n` is added to the content and not seen as a potential boundary delimiter. This commit fixes that.

* Fixed memory leak in rules.cpp

* Workaround too deep function nesting with ringbuffer

* Updated documentation to reflect last commits

* Store WiFiClient in heap instead of local stack

* Forgot to push updated header

* Reclaim memory

* Reclaim more memory

* Reclaim memory in webserver

* Don't log rules over MQTT

* Store opentherm data in String

* Re-enable send_initial_query

* Properly communicate NULL

* Various rules lib fixes

* Allocate mempool for rules storage

* Directly send rule commands

* Communicate more memory info

* add missing ntpservers global static

* Added configurable NTP functionality (#77)

Co-authored-by: IgorYbema <igor@ergens.org>

* Better handle PROGMEM structs

* Fix few bugs in previous commit

* optimize topicdescription handling

* sync xmlhttprequest to not overload the webserver

* Fix MQTT opentherm topic bug

* Only send command when not in listenonly mode

* Fix small inconsistency in webserver

* Reclaim some more memory

* Make @TD-er happy :)

* Reserve space for string stats objects

* Use static buffers for webserver

* Switch PSTR to F for log_message

* Revert "Use static buffers for webserver"

This reverts commit ecad221.

* make ssid and password correct length

* Move rules to 2nd heap

* Fix merge with main

* Fixes in regard to watchdog

* Updated webserver to latest version

* fix txtoffset alignment

* new version of webserver

* Fixed merge

* Add websockets support to webserver

* Add missing libraries

* Allow 5 webserver / -socket clients

* Proper websocket ping

* Increase webserver timeout

* Free websocket key when as early as possible

* disable initial query again to prevent a lot of start errors

* Properly calculate necessary bytes

* Make local varstack static

* capitalize min / max defines

* Remove unused variable

* Rename strincmp to strnicmp

* Remove need for valstack and better folder structure for rules

* Change rules memory free to used

* fix merge issue in javascript firmware page

* 1 sec optionalpcb

* fix weird wifi -1% but online status

* progress bar in javascript for firmware upload

* Delete HeishaMon.ino.d1_mini.bin

* fix rules callback memory free issue causing reboot

* better fix for the reboot issue on rules

* fix opt data error on compare new value

* publish raw binary data to mqtt

* add some firmware upload debugging messages

* fix merge mistake

Co-authored-by: CurlyMoo <curlymoo1@gmail.com>
Co-authored-by: CurlyMoo <CurlyMoo@users.noreply.github.com>
@Egyras Egyras merged commit 5c3558a into Egyras:master Aug 31, 2022
IgorYbema added a commit to IgorYbema/HeishaMon that referenced this pull request Jan 29, 2023
commit e4955ce
Merge: a48d38a efc7112
Author: IgorYbema <igor@ergens.org>
Date:   Sun Jan 15 11:47:18 2023 +0100

    Merge branch 'main' of https://github.com/IgorYbema/HeishaMon

commit a48d38a
Author: IgorYbema <igor@ergens.org>
Date:   Sun Jan 15 11:47:01 2023 +0100

    release v3.1

commit efc7112
Author: IgorYbema <igor@ergens.org>
Date:   Sun Jan 15 11:38:49 2023 +0100

    switch back to esp8266 stable release build (#106)

commit 6a71e5f
Author: IgorYbema <igor@ergens.org>
Date:   Sun Jan 15 11:24:35 2023 +0100

    prepare v3.1

commit 76eec29
Author: geduxas <gediminas.vileikis@gmail.com>
Date:   Sun Jan 15 11:39:47 2023 +0200

    Add buffer tank set command  (#103)

commit cf25619
Author: Grégoire Seux <grego_github@familleseux.net>
Date:   Sun Jan 15 10:02:43 2023 +0100

    🗒 Document heishamon-homeassistant integration (#95)

    Fixes Egyras#267

    Change-Id: I4e71c29d65e32d20fe423e103072265b5440e601

commit 631d0b6
Author: IgorYbema <igor@ergens.org>
Date:   Sun Jan 15 09:58:19 2023 +0100

    Add listen-only improvements (#105)

    * test for listen only improvement

    * Update main.yml

    * Update main.yml

    * add disable gpio15 on change listenonly

    * move cz-taw1 detection to switchserial

    * remove from setupconditionals

    * small improvements

commit f0dab78
Merge: 3e1913f 5510e25
Author: IgorYbema <igor@ergens.org>
Date:   Tue Jan 3 10:58:58 2023 +0100

    Merge branch 'main' of https://github.com/IgorYbema/HeishaMon

commit 3e1913f
Author: IgorYbema <igor@ergens.org>
Date:   Tue Jan 3 10:58:38 2023 +0100

    fix top111/112 order

commit 5510e25
Author: CurlyMoo <CurlyMoo@users.noreply.github.com>
Date:   Tue Jan 3 10:47:00 2023 +0100

    Check length of vars for overlapping name matches (#104)

    * Check length of vars for overlapping name matches

    There are two topics with similar leading characters:
    - Pump_Flow
    - Pump_Flowrate_Mode

    We didn't check properly if the length of the variable matched the length of the topic. Therefor, in both cases `Pump_Flow` matched leaving `rate_Mode` as an unknown string.

    * A var has an identifying leading character

commit 96012af
Author: IgorYbema <igor@ergens.org>
Date:   Mon Dec 26 21:30:21 2022 +0100

    Update ProtocolByteDecrypt.md

commit b812a7f
Merge: 4c4403a 98a738d
Author: IgorYbema <igor@ergens.org>
Date:   Wed Dec 21 19:18:08 2022 +0100

    Merge branch 'Egyras:master' into main

commit 4c4403a
Author: IgorYbema <igor@ergens.org>
Date:   Tue Dec 20 11:01:47 2022 +0100

    fix models

commit 247f24c
Author: IgorYbema <igor@ergens.org>
Date:   Mon Dec 19 14:58:14 2022 +0100

    fix indenting

commit b26702b
Author: IgorYbema <igor@ergens.org>
Date:   Mon Dec 19 14:55:35 2022 +0100

    add new version WH-MDC05J3E5

commit 0733734
Author: IgorYbema <igor@ergens.org>
Date:   Mon Dec 19 07:59:35 2022 +0100

    add description for syncing s0 value to kWh meter

commit 0a47a39
Author: IgorYbema <igor@ergens.org>
Date:   Sat Dec 17 12:03:02 2022 +0100

    add new version WH-MDC05J3E5

commit 98a738d
Merge: 999c90c 86432bd
Author: Egyras <36902688+Egyras@users.noreply.github.com>
Date:   Fri Dec 16 13:46:56 2022 +0200

    Merge pull request Egyras#299 from AleXXw1/patch-1

    Update heishamon.yaml

commit 78744fd
Merge: 6e45f9c b09f1bc
Author: Igor Ybema <igor@ergens.org>
Date:   Tue Dec 13 21:32:38 2022 +0100

    Merge branch 'Egyras-master' into main

commit b09f1bc
Merge: 6e45f9c 999c90c
Author: Igor Ybema <igor@ergens.org>
Date:   Tue Dec 13 21:32:22 2022 +0100

    fix merge issue

commit 6e45f9c
Author: IgorYbema <igor@ergens.org>
Date:   Tue Dec 13 08:23:42 2022 +0100

    move serial debug to serial1

commit 6d6edf1
Author: IgorYbema <igor@ergens.org>
Date:   Mon Dec 12 07:55:12 2022 +0100

    fix error in pad heater top/set

commit d1ec650
Author: IgorYbema <igor@ergens.org>
Date:   Sun Dec 11 22:36:44 2022 +0100

    merge Newtopics to main (#101)

    * add TOP106 to TOP110 and Set Alt Sensor

    * Expose byte 22 to TOP111 and TOP112 (#98)

    * Expose byte 22 to TOP107 and TOP108, to allow determinate zone sensor type.

    * Leave room for topics

    * Add buffer tank delta, aligned topic comments.

    * add top114 and set26 for ext. pad heater

    Co-authored-by: geduxas <gediminas.vileikis@gmail.com>

commit f1f9f76
Author: IgorYbema <igor@ergens.org>
Date:   Sun Dec 11 22:22:51 2022 +0100

    fractional test on byte 118 (#100)

commit 6041ea0
Author: IgorYbema <igor@ergens.org>
Date:   Sun Dec 11 22:18:14 2022 +0100

    prepare for 3.1 release

commit 7a33e23
Author: IgorYbema <igor@ergens.org>
Date:   Sun Dec 11 22:17:02 2022 +0100

    Update decode.h

commit abefd72
Author: IgorYbema <igor@ergens.org>
Date:   Sun Dec 11 22:16:37 2022 +0100

    add type WH-MDC07J3E5 2nd release

commit 4cf73de
Author: IgorYbema <igor@ergens.org>
Date:   Sun Dec 11 22:13:21 2022 +0100

    Update HeatPumpType.md

commit 86432bd
Author: AleXXw1 <74563855+AleXXw1@users.noreply.github.com>
Date:   Fri Dec 9 23:37:24 2022 +0100

    Update heishamon.yaml

    duplicated state_class for 3 entitys

commit d88e25b
Author: IgorYbema <igor@ergens.org>
Date:   Mon Nov 28 12:10:56 2022 +0100

    Update ProtocolByteDecrypt.md

commit 999c90c
Merge: 4e7a0df 7aca63c
Author: Egyras <36902688+Egyras@users.noreply.github.com>
Date:   Mon Nov 28 12:07:43 2022 +0200

    Merge pull request Egyras#292 from Emacee/patch-1

    Update heishamon.yaml

commit d7925d8
Author: IgorYbema <igor@ergens.org>
Date:   Mon Nov 28 08:19:05 2022 +0100

    Update ProtocolByteDecrypt.md

commit 7aca63c
Author: Emacee <mauritscassee@gmail.com>
Date:   Sun Nov 27 18:46:32 2022 +0100

    Update heishamon.yaml

    Add state class measurement to the respective sensors.

commit 0ae4ef4
Author: CurlyMoo <CurlyMoo@users.noreply.github.com>
Date:   Sat Nov 19 21:32:52 2022 +0100

    Added rule ceil and floor functions (#97)

    To calculate the requested heating temperature based on HeishaMon
    values, the ceil functionality is necessary. The actual calculation
    is done like this:

    ceil(@Z1_Heat_Curve_Target_Low_Temp +
     (
       (@Z1_Heat_Curve_Outside_High_Temp - @Outside_Temp) *
       (@Z1_Heat_Curve_Target_High_Temp - @Z1_Heat_Curve_Target_Low_Temp) /
       (@Z1_Heat_Curve_Outside_High_Temp - @Z1_Heat_Curve_Outside_Low_Temp)
      )
    );

commit a32dca2
Author: IgorYbema <igor@ergens.org>
Date:   Mon Nov 14 10:48:29 2022 +0100

    add KIT-ADC07J3E5C

commit 3c1234b
Author: IgorYbema <igor@ergens.org>
Date:   Mon Nov 14 10:38:32 2022 +0100

    Update HeatPumpType.md

commit ae4607c
Author: IgorYbema <igor@ergens.org>
Date:   Mon Nov 14 10:34:02 2022 +0100

    add KIT-ADC07J3E5C

commit 13e0340
Author: IgorYbema <igor@ergens.org>
Date:   Fri Nov 11 14:05:42 2022 +0100

    sync fork (#96)

    * Convert mqtt format according to HA 2022.6 change

    * readme - information about compatibility

    * Update MQTT-Topics.md

    Correction of DHW delta temp.

    * Update webfunctions.h

    Extended length of MQTT topic base from 40 to 128, the 40 characters were not enough for me.

    * Update heishamon.yaml

    Only Z1was used as a whole heatshift selector. I've properly split it into 2 zones. Also extended the max limit to 40 deg to allow direct temperature get/set.

    * Update webfunctions.h

    Co-authored-by: ArkKle <26692162+gilder0@users.noreply.github.com>
    Co-authored-by: Egyras <36902688+Egyras@users.noreply.github.com>
    Co-authored-by: MiG-41 <57936100+MiG-41@users.noreply.github.com>
    Co-authored-by: Gábor Auth <auth.gabor@gmail.com>
    Co-authored-by: mrrudy <31594962+mrrudy@users.noreply.github.com>
    Co-authored-by: Adam Kaliszan <32864941+adamkaliszan@users.noreply.github.com>

commit 4e7a0df
Merge: fe65dab 49ed7da
Author: Egyras <36902688+Egyras@users.noreply.github.com>
Date:   Fri Nov 11 08:36:33 2022 +0200

    Merge pull request Egyras#285 from adamkaliszan/master

    Longer server name up to 64 characters

commit 49ed7da
Author: Adam Kaliszan <32864941+adamkaliszan@users.noreply.github.com>
Date:   Wed Nov 9 22:16:50 2022 +0100

    Update webfunctions.h

commit a1f7484
Author: IgorYbema <igor@ergens.org>
Date:   Mon Nov 7 15:21:20 2022 +0100

    Update main.yml

    Update main.yml

    Update main.yml

    Update main.yml

commit fe65dab
Merge: 6375b52 9d36d01
Author: Egyras <36902688+Egyras@users.noreply.github.com>
Date:   Thu Sep 29 10:13:29 2022 +0300

    Merge pull request Egyras#275 from gaborauth/master

    Increased length of MQTT topic base

commit 9d36d01
Merge: ac969ce 6375b52
Author: Gábor Auth <auth.gabor@gmail.com>
Date:   Wed Sep 28 15:49:23 2022 +0200

    Merge branch 'Egyras:master' into master

commit 6375b52
Merge: 701c607 8735be2
Author: Egyras <36902688+Egyras@users.noreply.github.com>
Date:   Mon Sep 19 10:47:50 2022 +0300

    Merge pull request Egyras#273 from mrrudy/master

    Split heatshift into Z1 and Z2

commit 701c607
Merge: 5c3558a f41775d
Author: Egyras <36902688+Egyras@users.noreply.github.com>
Date:   Mon Sep 19 10:47:18 2022 +0300

    Merge pull request Egyras#272 from MiG-41/patch-9

    Update MQTT-Topics.md

commit 8735be2
Author: mrrudy <31594962+mrrudy@users.noreply.github.com>
Date:   Sun Sep 18 21:52:06 2022 +0200

    Update heishamon.yaml

    Only Z1was used as a whole heatshift selector. I've properly split it into 2 zones. Also extended the max limit to 40 deg to allow direct temperature get/set.

commit ac969ce
Author: Gábor Auth <auth.gabor@gmail.com>
Date:   Wed Sep 14 22:53:45 2022 +0200

    Update webfunctions.h

    Extended length of MQTT topic base from 40 to 128, the 40 characters were not enough for me.

commit f41775d
Author: MiG-41 <57936100+MiG-41@users.noreply.github.com>
Date:   Mon Sep 12 08:22:19 2022 +0200

    Update MQTT-Topics.md

    Correction of DHW delta temp.

commit 5c3558a
Merge: 98acf55 4abbd33
Author: Egyras <36902688+Egyras@users.noreply.github.com>
Date:   Wed Aug 31 12:34:08 2022 +0300

    Merge pull request Egyras#260 from IgorYbema/main

    release v3.0

commit 98acf55
Merge: ab3d893 3c6341b
Author: Egyras <36902688+Egyras@users.noreply.github.com>
Date:   Wed Aug 31 12:33:07 2022 +0300

    Merge pull request Egyras#251 from gilder0/HA_2022.6_mqtt

    Ha 2022.6 MQTT format

commit 3c6341b
Author: ArkKle <26692162+gilder0@users.noreply.github.com>
Date:   Wed Jun 22 20:38:48 2022 +0200

    readme - information about compatibility

commit c595ec0
Author: ArkKle <26692162+gilder0@users.noreply.github.com>
Date:   Tue Jun 21 23:15:27 2022 +0200

    Convert mqtt format according to HA 2022.6 change
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants