-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
Pid branch revived #10412
Pid branch revived #10412
Conversation
@marcvs That was quick :-) Great work. Two little things from my side. My advice to use the lib folder |
Will to. One Question: |
Also: The inclrease in code size is measured on what?
|
Every useful Info in the source code is good. In |
Ok; There we go. |
Thx. I can see this is very "old" code with lots of missing optimizations leading to larger than needed code footprint. Tasmota has gone a long way since this code was conceived. I could merge but than have to optimize a lot so I request you to do it. I suggest the following changes before I merge:
I know it's some work to do but it makes it a muche better candidate for merging. Good luck, Theo. |
Thanks for the pointers; I'll get into this either tomorrow or thursday. |
Question:
Currently I'm accessing |
Great. For the DS18B20 temperature use global (float) variable |
Nice! That simplifies the code a lot! |
Search for call |
I kept one occurence where the current pid power is published. I've barred it
I was not sure about some code in xdrv_48_timeprop.ino that @colinl wrote. I've removed it, since my tests showed no changes in function. |
@marcvs It would be great if you would update the development path of the Tasmota docu. Thx! |
Support for time proportioned (``#define USE_TIMEPROP``) and optional PID (``#define USE_PID``) relay control (#10412)
@marcvs you appear to have removed the code for setting the timeprop power via MQTT where it is desired to use the timeprop output without the PID feature, or am I missing something? |
@marcvs in xdrv_49_pid.ino the code to publish the power via MQTT has been placed inside a backwards compatibility #ifdef, however access to the power is vital for loop tuning so I suggest that this should not be conditionally compiled. |
Yes, I didn't find that documented, and hence was not sure if this was a stale part or not. I can move that back in. The problem was that I had to move towards using I will take another session on this soon (towards the weekend) |
It is documented in the comments at the start of timeprop.ino.
Did you see my comment above about publishing the power value? Perhaps it is being published somewhere but I can't see it. |
Yes, I found that. I'll fix it.
|
Hi There, I'm a bit stuck on including the code that I had earlier removed. I need some instructions for: In xdrv_48_timeprop.ino, there is advanced handling of incoming commands (in bool Timeprop_Command), so that the timeprop_setvalue_x can be received to set the timeprop value for relay x. Also it is being used from xdrv_49_pid.ino. In xdrv_49_pid.ino I did comment-out-by-default the feature that reports the pid power to /PID. Apparently this is being used and required. The frequency is different to the Teleperiod, as this one changes on the update_secs interval. |
Hi Marcvs ! Any news on this ? I would be very interested in a working PID, and be happy to test it on my sonoffs. |
This was merged in 9.3. Please check the configuration in the comments at the start of these files: |
Sorry for being a bit slow here, but that does not seem to work: results in: Compiling .pio/build/tasmota-sensors/lib512/ESP8266WiFi/ESP8266WiFiAP.cpp.o Environment Status Duration what am i doing wrong ? |
@karlkashofer - I suggest taking this to discord or discussions rather than the merged PR. I am using the code in 2 projects, so it does work and will comment on a discussion thread if opened. |
Done: #11744 (comment) |
Description:
This picks up on the pid_branch of Colinl. That branch didn't compile on tasmota 9. This updated version fixes that.
See also:
Checklist: