Commit graph

214 commits

Author SHA1 Message Date
prash3r
e7aa0a64c7 repairs log_file_controller.py.
I seem to have exidentally search and replaced some
needed glob.glob calls when adding dinamic log location,
which should now be repaired.
There also was a mysterious cbpi_dashboard_1.json appearing
in the wrong folder which now inside the dashboard folder.
I also figured out how to run tests locally,
they should now respect the dynamic folder paths.
2022-09-24 15:19:34 +02:00
prash3r
fea1ba04f0 corrected some more places where ./logs was used
instead of the dynamically given logs path.
2022-09-16 18:56:52 +02:00
prash3r
6bf1b14a36 notify clients on log events worse than INFO 2022-09-16 16:54:33 +02:00
prash3r
cfc876f2f4 KBH import with and without whirlpool additions 2022-09-14 15:08:59 +02:00
prash3r
f924e1a683 adds journalctl arg '--output cat' (log exports),
because cbpi already writes timestamps into the logs
and we dont need two timestamps when exporting.
This commit also reverts to using the same formatter for all logHandlers.
2022-09-14 13:54:58 +02:00
prash3r
c56d7ccc51 adds --logs-folder-path as cli option 2022-09-12 21:54:51 +02:00
prash3r
4952861a58 logs folder is next to the active config folder.
It was wherever 'cbpi setup' was run from.
and if no config folder path is provided its still the same.
This also adds a file based global logger placed in the logs folder.
The sensor loggers respect the new logs folder location.
2022-09-09 18:44:48 +02:00
prash3r
2076c66eb5 uploaded restored_config.zip is now placed in provided config folder and not the working directory where it will be ignored on restart 2022-09-03 13:43:17 +02:00
prash3r
76b11a7247 imports the whirlpool hop addition kbh with timer
previously the whirlpool step has been ignored when importing from a kbh database.
on creation the whirlpoolstep would only be on a hardcoded 15 minute timer.
I added the optional timer as argument to create_Whirlpool_Cooldown().
And made use of it for negative hops timer imported from KBH.
For KBH databases this is valid because if the hops timer value is negative it can only be the whirlpool timer
and the value is the time that is set for the brewing device for getting from boil to below 80°C.
I did only test the data and not the functionality,
but it sucessfully replaces the hardcoded "15" timer with the value
from the first whirlpool hop addition while getting rid of the sign.
2022-09-02 18:17:08 +02:00
avollkopf
ac3c880523 actor update api for WS 2022-08-31 20:46:27 +02:00
avollkopf
9c6ede13f1 change upload controller to support kbh 2.4.0 hop timer categories 2022-08-14 13:39:08 +02:00
phylax2020
c0997ff357 Add setting parameter for dashboard pipe animation slow down 2022-07-21 10:27:54 +02:00
phylax2020
16190124d0 hopefully this commit works! 2022-07-19 21:03:17 +02:00
phylax2020
41018182de Merge branch 'master' of https://github.com/phylax2020/craftbeerpi4
# Conflicts:
#	cbpi/controller/log_file_controller.py
2022-07-19 20:54:34 +02:00
phylax2020
ff0ba76cc0 log_file_controller added again 2022-07-19 20:47:11 +02:00
phylax2020
752d9a27b6 delete log_file_controller.py. will be later restored 2022-07-19 20:45:26 +02:00
phylax2020
313f9d4b39 Set default logfile size to 100000 bytes 2022-07-19 20:28:36 +02:00
Alexander Vollkopf
49b5067841
Revert "Allow changing logfile size and logfile backup count" 2022-07-19 17:36:37 +02:00
phylax2020
8621888d81 Allow changing log file size and log file backup count in settings. Default for log file size is now 130000 bytes (was 1MB). Dashboard with charts can be blocked
if accumulated size of log file data exceeds some megabytes. Also chart refresh rate should be greater than some 10 seconds so that chart plots can not block the user interface.
In functions get_data (for dashboard charts) and get_data2 (for chart in analytics) the pandas resample function is reactivated respectively added to further reduce the amount of data to be transferred to the clients.
In function log_data max_bytes and backup_count must be converted to int, when these settings are changed in the settings dialog.
2022-07-15 21:47:23 +02:00
phylax2020
e95237eef6 limit log data transfer to not exceed 2 times max_rows = 1000 rows by removing every nth row. This keeps the user interface operable. 2022-07-09 22:23:26 +02:00
phylax2020
4652b2b516 Missing string conversion of value in log_data function. 2022-07-03 21:28:19 +02:00
avollkopf
1b85eefad2 disable sorting of elements by default 2022-04-23 20:32:32 +02:00
avollkopf
d63bbbb887 sort order needs also change in basic controller for existing data 2022-04-11 10:15:08 +02:00
avollkopf
4d95017842 Added dummy pressure sensor for testing of spunding functionality 2022-04-10 17:48:36 +02:00
avollkopf
1f25b3ae03 Fix in case no valve is defined for fermenter 2022-04-05 07:43:19 +02:00
avollkopf
b7d54952d1 Add valve, pressure sensor and target pressure to fermenter class 2022-04-03 12:37:34 +02:00
avollkopf
72ea595f16 fix typos 2022-04-02 16:27:09 +02:00
avollkopf
14f1bd6dd4 fix typos in step controller 2022-04-02 16:20:48 +02:00
avollkopf
fec02047ad fix for fermenter_recipe_controller and flexible config path 2022-04-01 19:28:17 +02:00
Philipp Grathwohl
0c0bda6abe Use config folder abstraction in fermentation controller 2022-04-01 15:02:12 +00:00
Philipp Grathwohl
86b8d6fc62 Allow specifying config path on start
Bitte geben Sie eine Commit-Beschreibung für Ihre Änderungen ein. Zeilen,
2022-03-31 08:06:42 +02:00
avollkopf
25327bab9f clear femrenter recipe name if recie is cleared 2022-03-29 18:48:36 +02:00
avollkopf
42670efd9c Added fermenterstep with controlled ramp rate 2022-03-28 15:59:04 +02:00
avollkopf
cdc2ee83a3 fix if no description is given in fermenterrecipe 2022-03-15 21:15:38 +01:00
Manuel Fritsch
036e70e4bf Merge form dev branch 2022-03-13 12:52:40 +01:00
avollkopf
aa76c908ef wlan0 speed fix for linux / defalt mqtt actor off on startup 2022-03-09 08:25:17 +01:00
avollkopf
12803b62c4 check if nic is down 2022-03-08 19:43:37 +01:00
avollkopf
c3c4101b6b Added NIC Speed info to system controller 2022-03-08 14:25:00 +01:00
avollkopf
6ac93e5212 fix for stepid on load recipe/addstep 2022-03-07 16:43:00 +01:00
Manuel Fritsch
3b81f1d844 remove db and update get async loop 2022-03-06 14:39:52 +01:00
Manuel Fritsch
248be2c6e2 db removed 2022-03-06 14:37:44 +01:00
avollkopf
ecbb2d404d use current fermenter recipe name when sending recipe to fermenter 2022-03-05 16:07:15 +01:00
avollkopf
bce0a0025b cleanup in fermentation controller and setup.py 2022-03-05 11:02:49 +01:00
avollkopf
b1dc05b209 feasibility to update fermentersteps (not reqwuired yet) 2022-03-04 16:52:16 +01:00
avollkopf
a16c14feca fix for loading fermenterrecipes from recipe book -> add endtime = 0 2022-03-02 19:40:22 +01:00
avollkopf
662e8b4497 updated libs and fix eventloop from lib_update branch 2022-03-02 12:35:16 +01:00
avollkopf
1d3298fc60 autostart active fermenterstep with remaining time 2022-03-02 07:53:43 +01:00
avollkopf
5bcbb7480a fixes for femrentersteps on controler shutdown 2022-03-01 21:55:52 +01:00
avollkopf
959c33624d one more fix on timer reset for fermentationstep 2022-02-28 18:15:23 +01:00
avollkopf
a503995d98 update cli and remove target temp to 0 at fermenterstep end 2022-02-28 11:15:02 +01:00
avollkopf
580bdd899a Autostart active or stopped step with orignila endtime 2022-02-27 18:45:57 +01:00
avollkopf
ff37779863 Fermentation controller will start step instead of logic after restart 2022-02-26 23:08:45 +01:00
Manuel Fritsch
18476a78c0 updated of cli 2022-02-26 21:45:10 +01:00
avollkopf
b2d29678b5 Added fermenter recipe book 2022-02-24 13:46:56 +01:00
avollkopf
2d481bff81 added fermenterstep actions 2022-02-23 07:12:51 +01:00
avollkopf
3aa9ad9cd2 fix fermenter steps -> self.next() requires now fermenter id 2022-02-21 19:39:36 +01:00
avollkopf
84f9bbb67f update on fermentersteps for automode 2022-02-21 17:54:22 +01:00
avollkopf
36329fb533 further changes to support fermentersteps - WIP 2022-02-21 07:16:34 +01:00
avollkopf
286198fcd1 update on fermenter steps - Work In Progress 2022-02-18 20:22:16 +01:00
avollkopf
2cc2df0208 fermentertest 2022-02-17 21:42:54 +01:00
avollkopf
b8ef79d11c further tests on fermentersteps 2022-02-16 20:36:11 +01:00
avollkopf
033165d619 updated requirements in setup.py 2022-02-07 17:52:42 +01:00
pascal1404
49e8488c0b
Merge branch 'development' into master 2022-02-06 14:06:21 +01:00
pascal1404
ab60c5c0fc Remove kettle and fermenter target temp logs and actor logs 2022-02-06 14:05:31 +01:00
pascal1404
f8024f3b49 Add Influxdb-cloud connection and log for actor, fermenter and kettles 2022-02-04 20:48:55 +01:00
avollkopf
c1dacd691e added filters for mqtt updates that can be triggered via mqtt
cbpi/updatekettle
cbpi/updateactor
cbpi/updatesensor
cbpi/updatefermenter
2022-02-03 18:03:53 +01:00
avollkopf
0bf2b64c3e Reduction of duplicated mqtt actor messages 2022-02-03 17:00:12 +01:00
avollkopf
f2e9b1bebc Update fermentation_controller.py 2022-01-28 19:41:58 +01:00
avollkopf
2de62ca7d5 Added Actor for Cooldown step in settings
- Default Actor can be defined for cooldown to trigger cooling water on and off.
- will be used in automated recipe creation for cooldown step
2022-01-28 07:56:24 +01:00
pascal1404
1ecc8451e4 add condition for mashout step
add mashout step only if temp of last step is not the same as "Abmaischtemperatur" in MMuM-JSON.
2022-01-25 18:34:11 +01:00
pascal1404
7c90340236 Add mashout step to MMuM-JSON import 2022-01-25 18:16:04 +01:00
pascal1404
5c00b90390 Upload MMuM-JSON 2022-01-20 17:44:44 +01:00
avollkopf
6f60b7ae7c Reverted step controller mqtt topic back (requirement for mqttdevice) 2022-01-12 22:02:05 +01:00
avollkopf
ff638b2d13 changed mqtt step notification topic to 'stepnotification' 2022-01-12 18:34:59 +01:00
avollkopf
027966af12 Reverted back to item based mqtt updates for testing 2022-01-12 17:56:30 +01:00
Alexander Vollkopf
57af6cac59
Merge branch 'development' into development 2022-01-12 17:25:35 +01:00
avollkopf
dfa5df2ef1 Some fixes
- Different names for fermentersteps as Notificationstep caused an issue (steps not yot implemented for fermentation)
- Reverted back item based mqtt as this may require further testing -> will be activated in dev branch later
2022-01-11 06:59:16 +01:00
InnuendoPi
1640453525 4.01a8
Signed-off-by: InnuendoPi <k.ader@pc-team.de>
2022-01-08 23:29:21 +01:00
avollkopf
a8f7f2d92f Additional CBPIFermenterStep Class
Class has been activated but is not yet used
Fix in mqtt actor power action setting
2022-01-05 06:46:35 +01:00
avollkopf
49362aa098 Fixed Recipe import in case of two kettles
In case of different boil kettle, sensor from first kettle was used by external recipe import. Thi sis now fixed.
In case of different boil kettle, Sensor specified for this kettle will be used during external recipe import
2022-01-03 17:53:22 +01:00
avollkopf
51136aef88 Unification of mqtt data
-> sensor values are updated under sensordata/{sensorid}
One topic for each sensor to keep data small (esp compatibility)

actor, kettle, sensor, fermenter, steps are updated also for each id individually to keep packets small

e.g. actorupdate/{actorid}

This was proposed by Innuendo to ensure compatibility with the ESP based MQTTDevice
2022-01-03 12:47:20 +01:00
avollkopf
e43aaf4fcd Fix for Property Type Fermenter
-> allows usage of property.ferenter in sensors, steps,....
2022-01-02 17:08:23 +01:00
avollkopf
ba42027e75 Another fix based now on a life Pi system
- fixed storage of femrenter_data.json -> Fermenters are in 'data'
- fixed hysteresis
2022-01-02 13:24:40 +01:00
avollkopf
751b3dcad9 Bug fix for first startup w/o fermenter 2022-01-02 12:43:33 +01:00
avollkopf
d7c1b64493 Added Fermenters (development)
Added fermenter type
Added fermenter logic (incl. new class)
-> will require cbpi4ui -> >= 0.1.a1

Still under development, but fermentation w/o steps should be working
2022-01-02 11:25:56 +01:00
avollkopf
bee645ff96 activate chromium desktop via cli
- added option to activate chromium desktop on startup via cli
- save also actor, sensor, kettle and plugin information when log is downloaded
2021-12-27 18:11:40 +01:00
avollkopf
563fae9359 Add cbpi service logfile download via journalctl 2021-12-19 18:00:15 +01:00
avollkopf
9b3219d89c Test to transfer Data to influxdb
CSV logfile writing can be switched off via settings
influxdb can be switched on via settings

->Some changes will be required
2021-12-14 07:20:22 +01:00
avollkopf
b2fe624d08 Version change
- bumped Version to 4.0.0.56
- Uncommented on push_ update in basic_controller2.py which seemd to cause error messages during startup and is not required
2021-12-06 17:13:49 +01:00
Philipp Grathwohl
7413f79d6e Extend exception messages for warning logs 2021-12-03 13:26:18 +01:00
avollkopf
80bdac45ce some fixes for actor power
- Actor used to set power to 100 eventhough target was 0
- moved chromium.desktop file to config folder -> easier available for users and potential to enable chromium desktop via cbpi commandline in future
2021-12-02 14:48:39 +01:00
avollkopf
3724f76faa mqtt sensor fix
- mqtt sensor is now also working after changing the configuration
- config.yaml accepts now also 'true' besides 'True' to activate mqtt
2021-11-23 17:33:58 +01:00
avollkopf
75ab9b96fc Added MQTT Actor and power setting 2021-11-22 16:09:09 +01:00
avollkopf
19f3a16154 minor bug fix
Error message showed up when no instance of kettle was active
2021-11-21 13:59:54 +01:00
avollkopf
a0e89fe4dc Update kettle controller/mashsteps 2021-11-20 11:13:51 +01:00
avollkopf
2fca6dcdc9 Actor Power fixes 2021-11-15 20:18:33 +01:00
avollkopf
80a81c50a2 some tweaks for actor power settings 2021-11-11 11:22:13 +01:00
avollkopf
6e3dc392b6 SVG upload functionality 2021-11-09 18:32:00 +01:00
avollkopf
2462f9329a Update on pwm test
-> set power action should now update also directly in dashboard
2021-11-08 14:04:28 +01:00
avollkopf
4c543b46f7 added power to actor dataclass 2021-11-06 15:15:11 +01:00