Commit graph

543 commits

Author SHA1 Message Date
avollkopf
2d5ca55718 add unique client id for mqtt broker 2023-01-15 09:33:11 +01:00
avollkopf
7f76645b05 adapted sattelite_controller init to upcomming asyncio-mqtt requirements 2023-01-15 08:25:01 +01:00
avollkopf
f5d9d4304a bump version 2023-01-08 13:38:07 +01:00
avollkopf
4dd20ff985 partial update for sattelite controller to adapt to future requirements of asyncio-mqtt
Still some additional work required
2023-01-08 12:05:17 +01:00
avollkopf
8d6f21749d replaced PyInquirer with inquirer for python 3.10 compatibility 2023-01-07 22:39:08 +01:00
avollkopf
1f7cd381ad updated packages requirements to latest available packages 2023-01-07 16:43:08 +01:00
phylax2020
0c957de5e5 Copy dashboard files from config folder to config/dashboard when upgrading to version 4.0.7. Detect missing or empty dashboard file in config/dashboard. 2023-01-05 10:01:57 +01:00
avollkopf
6a356c6add bump rev from rc to major 2022-12-10 14:21:07 +01:00
avollkopf
cde20f647d fix notify on error 2022-12-02 20:25:27 +01:00
avollkopf
9f655c9393 Add parameter for Notify on Error 2022-12-02 20:05:30 +01:00
avollkopf
7e0eb0f30d bump rev 2022-11-27 16:08:11 +01:00
avollkopf
05b70e3cd7 Fix log level setting for cli 2022-11-27 15:16:18 +01:00
avollkopf
f13993db31 removed loop from asyncio.queue (depracted since py 3.9 and removed in 3.10) 2022-11-27 10:49:59 +01:00
avollkopf
f83ee71369 bump rev 2022-11-19 12:47:55 +01:00
Alexander Vollkopf
a9f3bef7c7
Merge pull request #75 from lopelex/development
add hop text
2022-11-19 12:21:04 +01:00
avollkopf
afeba81740 bump rev 2022-11-17 19:41:06 +01:00
lopelex
4e234f4753 add hop text 2022-11-05 12:57:44 +01:00
avollkopf
8b2e0fb1d8 avoid error logging / notification for Notification step w/o Sensor definittion 2022-10-22 14:08:59 +02:00
avollkopf
17a2d403bf added missing updated for boilstep 2022-10-22 13:02:13 +02:00
Alexander Vollkopf
0b0ee24ab4
Merge branch 'development' into hop-name-test 2022-10-22 12:36:15 +02:00
lopelex
2ebc659bcf fix conflicts with #62 2022-10-03 16:28:42 +02:00
avollkopf
21ce9ed220 update version number 2022-10-03 12:11:53 +02:00
Alexander Vollkopf
92ddb2a45a
Revert "add hop name to BoilStep and UploadController" 2022-10-03 12:04:42 +02:00
Alexander Vollkopf
cb60b6d5c5
Merge branch 'development' into hop_text 2022-10-03 11:37:19 +02:00
prash3r
7f16a8b9b5 not copying empty cbpi_dashboard_1.json anymore.
will be created on first dashboard save instead.
2022-10-02 19:01:14 +02:00
prash3r
2a0daf354c moves cbpi_dashboard_*.json to dashboard folder.
if the file cbpi_dashboard_1.json doesnt exist in the dashboard folder
every cbpi_dashboard_*.json file from the config folder is moved to the dashboard folder.
This also removes the empty default cbpi_dashboard_1.json file from the template folder,
because the file is not needed for cbpi to function and can be created when editing the dashboard online.
2022-10-02 18:32:40 +02:00
Alexander Vollkopf
8c8d09ed72
Merge pull request #65 from prash3r/notify-log-events
notify clients on log events worse than INFO
2022-10-02 16:15:08 +02:00
Alexander Vollkopf
24ae03405c
Merge pull request #63 from prash3r/kbh-whirlpool-step
imports the whirlpool hop addition kbh with timer
2022-10-02 16:10:23 +02:00
lopelex
89da0bec04
remove unused import 2022-09-30 07:36:21 +02:00
lopelex
d1c38af3ae add First_Wort_text and fix error in json_recipe_creation #367 2022-09-29 12:11:06 +02:00
lopelex
2bc5bbb183 add hop text 2022-09-28 16:56:14 +02:00
prash3r
50fa87d6df repairs plugin creation inside the devcontainer
strange windows volume behaviour needs a small delay
between template folder unzip and rename.
reverts user changes of the dev container
which werent the cause of this problem.
2022-09-24 21:55:36 +02:00
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
1fa3f88997 adds the 'cbpi create' command to vscode.
also initilizes plugin names with dashes instead of underscores.
everything now runs as root inside the dev container
(otherwise the permissions for cbpi create wouldnt be sufficient).
2022-09-16 10:25:31 +02:00
prash3r
ac9b599619 check_for_setup() now checks for provided logs folder path 2022-09-14 19:36:51 +02:00
prash3r
706bbac9f0 keeps default dev config unchanged.
this commit moves the default config into a seperate folder.
And it adds a preLaunchTask
which copies the default dev config to the used dev config.
This is done with the cp option '-ru'
so if the files in the target dir (current config)
are newer they are not overwritten.
2022-09-14 19:14:52 +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
b5ca644e80 Merge branch 'dev-config-changes' of github.com:prash3r/craftbeerpi4 into dev-config-changes 2022-09-09 13:08:40 +02:00
prash3r
e61fbdb69c extends #62
reorders the .vscode tasks so run is the default hopefully.
removes code that was commented out anyway.
2022-09-07 12:39:52 +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
prash3r
2f085965c7 extends cbpi-dev-config to be a complete set.
cbpi requires empty folders inside the config folder to fully function, and this commit adds them.
There are also some more extensive checks on missing files and folders newly implemented.
As well as checking for restored_config.zip is now done before checking for config.yaml.
On unsuccessfull restore the zip file is renamed instead of deleted.
2022-09-02 17:00:50 +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
avollkopf
c7d01c33f6 change version # for pipe animation speed 2022-08-14 12:42:29 +02:00
Alexander Vollkopf
635ea3649c
Merge pull request #58 from phylax2020/master
Add parameter in settings to slow down pipe animation in dashboard
2022-08-07 13:57:45 +02:00
phylax2020
c0997ff357 Add setting parameter for dashboard pipe animation slow down 2022-07-21 10:27:54 +02:00
Alexander Vollkopf
205389f246
Merge pull request #57 from phylax2020/master
log_file_controller.py and __init__.py in ConfigUpdate reloaded
2022-07-19 21:53:33 +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
phylax2020
5ea4160b4f
Merge branch 'master' into master 2022-07-19 18:36:14 +02:00
phylax2020
c85b929b75 Annotations for logfile maximum size revised 2022-07-19 18:27:10 +02:00
Alexander Vollkopf
49b5067841
Revert "Allow changing logfile size and logfile backup count" 2022-07-19 17:36:37 +02:00
phylax2020
abe87b4218 Logfile size and backup logfile count in config.json 2022-07-19 09:39:27 +02:00
avollkopf
4d85c4c6af Update minor version 2022-07-16 10:26:32 +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
Alexander Vollkopf
459c4207fe
Merge pull request #52 from chappo/master
Set MQTT Actor Power Level to Zero if Switched Off
2022-07-10 18:17:29 +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
chappo
a4f1de3953
Set power to Zero if the actor is switched off.
Set power to Zero if the actor is switched off.
2022-06-07 13:35:32 +08:00
chappo
55db17e4fe
Set Power to Zero if Switched Off
Set power to Zero if the actor is switched off.
2022-06-07 13:35:06 +08:00
avollkopf
9634e876ce fix restor backup issue 2022-05-12 21:27:12 +02:00
avollkopf
e2c2e88d94 Version change fr release 2022-05-12 07:05:25 +02:00
avollkopf
59274f23c2 some updated links 2022-05-10 17:52:23 +02:00
avollkopf
29cc09c837 minor adaptions for release test 2022-05-09 22:29:50 +02:00
avollkopf
cbce63eab3 fix plugin create in cli.py 2022-04-26 07:19:25 +02:00
avollkopf
1b85eefad2 disable sorting of elements by default 2022-04-23 20:32:32 +02:00
avollkopf
da975f92b2 fix spunding hysteresis temp control 2022-04-11 13:06: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
9ac0141e4d sort hardware by name 2022-04-11 10:06:54 +02:00
avollkopf
4d95017842 Added dummy pressure sensor for testing of spunding functionality 2022-04-10 17:48:36 +02:00
avollkopf
d1f656f509 Added pressure to steps 2022-04-05 12:31:20 +02:00
avollkopf
1f25b3ae03 Fix in case no valve is defined for fermenter 2022-04-05 07:43:19 +02:00
avollkopf
4acb19fcc5 Added valve release time and pause as parameters 2022-04-04 19:56:47 +02:00
avollkopf
946d4c6261 aded wait step when spundung valve is closed 2022-04-04 07:21:41 +02:00
avollkopf
08a841ebe3 Add test for fermenter spunding logic 2022-04-03 20:07:22 +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
652fbd74be Fix tests so they run again
Tests that can not work because of missing endpoints in the controllers
were removed. Also tests that have no clear intent and were failing were
deleted.
2022-03-31 08:06:46 +02: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
Philipp Grathwohl
86bd6c5a6b Delete unused craftbeerpi.db 2022-03-31 08:04:42 +02:00
Alexander Vollkopf
d254cdfb7d
Merge branch 'master' into development 2022-03-30 17:37:55 +02:00
avollkopf
25327bab9f clear femrenter recipe name if recie is cleared 2022-03-29 18:48:36 +02:00
avollkopf
43cf27bad5 Version bump 2022-03-28 15:59:42 +02:00
avollkopf
42670efd9c Added fermenterstep with controlled ramp rate 2022-03-28 15:59:04 +02:00
avollkopf
83286150b7 Add Codename 2022-03-24 07:33:48 +01:00
Alexander Vollkopf
6cf49a822a
Merge branch 'master' into master 2022-03-21 11:30:05 +01:00
avollkopf
cdc2ee83a3 fix if no description is given in fermenterrecipe 2022-03-15 21:15:38 +01:00
avollkopf
d8ba8c0ac5 fix create plugin under windows 2022-03-15 06:53:40 +01:00
Manuel Fritsch
fda8042ff1 version number update to 4.0.3 2022-03-13 12:55:52 +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
avollkopf
bc6649dff8 Dont' start femrentationstep before mqtt sensor has received a value 2022-03-07 15:03:41 +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
a136f6b467 set default for mqtt sensor to 999 and add check to fermentersteps target temp step 2022-03-05 11:29:33 +01:00
avollkopf
bce0a0025b cleanup in fermentation controller and setup.py 2022-03-05 11:02:49 +01:00
avollkopf
2370b6d124 WindowsSelectorEventLoopPolicy import caused error under linux -> try to import 2022-03-04 17:45:28 +01:00
avollkopf
b1dc05b209 feasibility to update fermentersteps (not reqwuired yet) 2022-03-04 16:52:16 +01:00
avollkopf
db4e75525f check if server is running under windows to fix issue with mqtt under win and python 3.9 2022-03-04 16:36:50 +01:00
avollkopf
a16c14feca fix for loading fermenterrecipes from recipe book -> add endtime = 0 2022-03-02 19:40:22 +01:00
avollkopf
b84e33822b added shutdown flag to all steps for on_timer_done 2022-03-02 17:25:59 +01:00
avollkopf
662e8b4497 updated libs and fix eventloop from lib_update branch 2022-03-02 12:35:16 +01:00
avollkopf
3cf48fff04 fix to start timer directly after restart on step with remaining time 2022-03-02 10:29:21 +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
2573e39bd8 timer fix for manual stop and restart of fermentationstep 2022-02-28 16:47:33 +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
Manuel83
d02da30d11
Delete .DS_Store 2022-02-26 21:46:43 +01:00
Manuel Fritsch
18476a78c0 updated of cli 2022-02-26 21:45:10 +01:00
avollkopf
c272d1ba2a Fixed time format for timer and messages in case of longer steps 2022-02-25 07:28:18 +01:00
avollkopf
d87a578447 fix calculation of fermentation end time -> Format still open 2022-02-24 18:37:46 +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
9ed640cf6a Add fermentation time in stepform as days, hours, minutes 2022-02-22 18:32:48 +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
Alexander Vollkopf
115fa37685
Update __init__.py
Adapt version for cli.py fix from 18.02.22
2022-02-18 18:53:25 +01:00
Alexander Vollkopf
2f0edbf0fd
Update cli.py 2022-02-17 21:45:44 +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
972c9dbf49 Added check for plugin addition
before plugin is added to the config, cli.py checks if the package does exist and if the name is correct (capital letters,...)
2022-02-15 18:11:14 +01:00
avollkopf
259f5abc78 changed RPi.GPIO version to latest official version 2022-02-14 07:53:04 +01:00
avollkopf
94d32c4dc4 fixed duplicated mqtt message for gpioactors 2022-02-07 18:57:02 +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
6c1f928933 Update on mqttutil
An update on kettle and fermenter is triggered on start of cbpi
2022-02-04 17:08:10 +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
ed141f8788 Added mqttutil extension
- forces mqtt update for kettle and femrenter in specified timeframes even w/o change in payload
- required for mqttdevice
- only active if mqtt is enabled
- can be set to never and is also deactivated when mqtt is enabled
2022-01-31 17:17:53 +01:00
avollkopf
a7ddcdd306 fix get_actor_state () in CBPiBase 2022-01-31 07:27:01 +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
Alexander Vollkopf
f4b028f263
Update __init__.py
Update version for last merge
2022-01-25 21:16:52 +01:00
Alexander Vollkopf
370f9c3c5a
Merge pull request #33 from pascal1404/master
Mashout step for MMuM-JSON import
2022-01-25 21:15:48 +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
avollkopf
50677a2a3e Restore config fix for windows 2022-01-25 11:33:21 +01:00
avollkopf
8320853399 Minor fixes
- onewire is not hardcoded to busmaster 1
- try to catch exception while sending data to WS and WS has closed connection
2022-01-25 07:47:40 +01:00
Alexander Vollkopf
7ad3fd252e
Update __init__.py 2022-01-24 22:20:27 +01:00
pascal1404
e05c945d11 Update http_upload.py
add MMuM-JSON import
2022-01-24 20:41:19 +01:00
pascal1404
5c00b90390 Upload MMuM-JSON 2022-01-20 17:44:44 +01:00
avollkopf
54e7ad832c Update __init__.py
bumped version number to merge into master branch
2022-01-15 14:35:44 +01:00
avollkopf
1b6d8a3778 Update __init__.py 2022-01-14 17:32:18 +01:00
avollkopf
be1f066782 Minor change sensor update
Change for sensor plugins.

Will update also mqtt per default when push_update is called.

But if False is send for mqtt parameter, only web interface will be updated.

-> Good for sensors that retrieve values only once per minute or so
-> WI can be continuosly updated with current value and no empty value is displayed, but mqtt does not nee to be updated

(example ispindel, scd30 sensor, kettle sensor, Hydrom/Tilt,....)

Plugins will be updated later in main branches
2022-01-14 17:11:16 +01:00
avollkopf
20e6aa7e59 Fix for restore config
- removed hardcoding of user/group from pi:pi
- retrieve owner / group of oroginal folder and use them
2022-01-14 12:16:42 +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
78a0832fd2 Update __init__.py 2022-01-03 17:21:32 +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
Philipp Grathwohl
f337cb8e97 Add generic and Tasmota specific MQTT actors 2021-12-03 13:26:12 +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
db39d82432 Some fixes
- command line cbpi plugins -> not interrupted if plugin has not been installed correctly
- round power value submitted by mqtt plugin
2021-11-26 22:54:55 +01:00
avollkopf
b2e61bee8e Changed setup.py for RPI.GPIO
RPi.GPIO 0.7.0 is causing an error if installed under bullseye and python 3.9
-> 0.7.1a4 solves the issue for now.
-> will be changed as soon as new RPi.GPIO release is comming out
2021-11-24 22:10:28 +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
71897c8276 Some MQTT updates
- MQTT actor power change also if actor is off
- payload Filter for MQTT sensor
2021-11-22 17:33:46 +01:00
avollkopf
01386ef0da Update config.yaml 2021-11-22 16:11:24 +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
e1c1432f14 increased max upload size to 5 Mb for svg and config upload 2021-11-10 12:28:42 +01:00
avollkopf
6e3dc392b6 SVG upload functionality 2021-11-09 18:32:00 +01:00
avollkopf
40121e667e Experimental power mode for standard actor
Power = 100: standard on
Standard sampling time is 5 seconds.
if power is set to 50%, heating time is 2.5 sec and witing time (gpio off) is also 2.5 sec
Changing power to lower readings, wil reduce heating time within the 5 seconeds and increase waiting time
Increase of power results in longer heating times and reduced wait times
Sort of a poos men's PWM with a fix requency of 0.2 hz

This will reduce the complexity of all PID plugins.

Some additional tests and changes might be required for api.
2021-11-08 19:01:53 +01:00
avollkopf
5b0f351a98 Update __init__.py 2021-11-08 14:09:32 +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
avollkopf
3bc70f8c7f PWM Actor test 2021-11-05 19:32:34 +01:00
avollkopf
c43a0a25bf Fix for StrikeTemp in case you operate system in F
BF i sending all temps in C and striketemp needs to be converterd to F if cbpi4 is running in F
2021-11-03 12:53:34 +01:00
avollkopf
7c8351e068 Update __init__.py 2021-11-03 09:35:59 +01:00
avollkopf
326d24c48f BF StrikeTemp test and some fixes 2021-11-03 09:30:16 +01:00
avollkopf
ee2acda2e3 fixed issues with xml upload in case of non compatible characters 2021-10-28 18:35:00 +02:00
avollkopf
f8bd353f02 Added interim plugin list function 2021-10-16 14:22:04 +02:00
avollkopf
45c084360f Reverted mashsteps back
- last change caused some issues
2021-10-03 16:50:36 +02:00
avollkopf
0f58b73a98 Update http_sensor.py 2021-09-26 17:44:03 +02:00
avollkopf
dd7da9ce71 Added actiions for sensors and minor fix in mashsteps
- Actions can now also be called for sensors -> will require ui 0.0.18.
- Some fixes for timer in mashsteps in case of pause is pressed
2021-09-26 12:41:39 +02:00
avollkopf
8459ad63d5 Moved restore config to cli.py
- cbpi is now checking if a zip is existing to restore the config during start.
- If zip is there, content is checked prior to restore
- if required content is found, config folder is removed and zip is extracted.
- afterwards zip is removed
- cbpi is starting with restored config

Version -> 4.0.0.38
2021-09-22 12:14:49 +02:00
avollkopf
bd2cb1b497 Added BoilKettle to settings
- Boilkettle is used for Boil, Whirlpool and Cooldown step
- If no kettle is selected, standard MASH_TUN will be used for these steps
2021-09-21 18:06:23 +02:00
avollkopf
e1e7de2924 Changed system controller to accomodate more system fucntions
- Backup and restore of config folder is possible via system page
- Bumped version to 4.0.0.36
- will require cbpiui 0.0.17
2021-09-21 16:20:44 +02:00
avollkopf
2d55410d4a http endpoint to retrieve sensor value added 2021-08-28 17:32:31 +02:00
avollkopf
a7c9a5f0e6 current dashboard information added
Added functions to store current dashboard info in settings
Info can be also retrieved from ui to start with the dashboard that was used last time
2021-08-18 21:55:56 +02:00
avollkopf
93be663a19 Added Toggle Step to MashSteps
Additional mash step : Toggle Step
Increased Version from 4.0.0.34 to 4.0.0.35
2021-08-15 11:41:18 +02:00
avollkopf
d5ed315034 integrated system_controller into http_system endpoint
moved restart and shutdown procedure to system_controller
-> works currently only under linux with systemctl
2021-08-12 18:09:15 +02:00
avollkopf
1d7cae39b7 Activated restart and shutdown in http_system endpoint
-> shoud be transferred to system_controller at a later point of time
2021-08-12 16:56:48 +02:00
avollkopf
016c6d1adf Allow Multiple Dashboards
- Up to 10 Dashboards possible
- Config parameter max_dashboard_number added
- Default is 4 dashboards
- Config parameter will be added automatically via extension if not in config.json
2021-08-11 17:12:13 +02:00
avollkopf
3a75036b19 Removed actor GPIO 28 & 29 again
-> not relevant in BCM mode which is used in cbpi4
2021-08-10 13:01:45 +02:00
avollkopf
ec6498921e Added gpio 28 & 29 to actors 2021-08-09 12:49:31 +02:00
avollkopf
d8eda55286 Automatic config update
in case of new config parameters, the new extension can update the config automatically.
2021-07-15 07:16:26 +02:00
avollkopf
cad063e6a3 some fixes
- improved handling of 'empty' config paramaters
- improved handling of bf recipes where a step has no name
2021-07-13 07:07:55 +02:00
avollkopf
c8c6491467 Added offset to bf recipe list -> up to 250 recipes can be selected 2021-07-04 17:42:37 +02:00
avollkopf
f62263e287 Update upload_controller.py
Increase limit of BF recipes to 50
next Steps: add offset parameter to start also with recipe 51,....
2021-07-04 13:39:25 +02:00
avollkopf
f117835c2c added cbpi service
cbpi service can be activated via sudo cbpi add autostart
Service can be disabled via sudo cbpi remove autostart

sudo cbpi setup has to be triggered once -> this copies the craftbeerpi.service file to the config folder
2021-07-04 11:23:19 +02:00
avollkopf
cfff093673 Update http_config.py
Allow to query one config parameter
2021-06-28 18:50:14 +02:00
avollkopf
4e22e6415e Added setting parameter for Step AutoMode
- Adds more flexibility for users
- Default is yes
2021-06-21 06:51:58 +02:00
avollkopf
3ee23bfa59 bug fix
small bug fix with respect to auto mode for mash steps
2021-06-17 21:53:43 +02:00
avollkopf
b6a430ada1 Update upload_controller.py
merge of rutines for upload / recipe creation
2021-06-15 21:03:56 +02:00
avollkopf
a36591636e Native Brewfather recipe import added 2021-06-13 14:38:18 +02:00
avollkopf
fcb2400240 Bug Fix for kbh upload 2021-06-10 20:57:22 +02:00
avollkopf
2aa5feceb4 Added upload controller
Integrated recipe file upload into cbpi
- Controller and http endpoint added
--> No extension required
2021-06-06 13:00:55 +02:00
avollkopf
b3d87bc027 Added api path for recipe creation
- Added path parameter in config.json for settings
- If empty, 'upload' will be used per default as api path
- If something is entered, a different api path will be used for the creation of recipes.
-> this allows the standard usage of the recipe upload and selection via cbpi4, but adds the possibility that custom plugins can be written to create cbpi recipe flows from the uploaded files
*********************
+ some prep work to create the http endpoints
2021-05-30 11:58:18 +02:00
avollkopf
40020ba64d Save active recipe to recipe book 2021-05-27 20:35:10 +02:00
avollkopf
e187c9f047 Added Recipeupload and creation for beerxml and kbh database
- Beerxml files and kbh V2 database can be uploaded to cbpi via webinterface.
- Recipes can be created from the xml file or the kbh database
- cbpi setup needs to be run to create upload folder
- config.json needs to be updated manually on an existing installation ro add the step config.
--> this could be added automatically via the extension. However, needs to be discussed with Manuel.
Tip: cbpi4-RecipeImport Plugin could be installed , activated and removed later as this plugin adds the parameters during startup including creation of the upload folder
2021-05-26 21:00:35 +02:00
avollkopf
5669bb900e Support beerxml and kbh database upload 2021-05-22 18:25:57 +02:00
avollkopf
8608f08fd9 Update __init__.py
Updated property description. No functional change
2021-05-02 10:03:25 +02:00
avollkopf
175f053f9d Added Steps and Step Functions 2021-04-20 21:20:03 +02:00
avollkopf
14b08e1ddb Fix on actions, simplification on hop alarms 2021-04-17 11:11:14 +02:00
Manuel83
54ed882ad5
Merge pull request #64 from avollkopf/master
Fix Hysteresis and Add Boil Alarms + Fix Timer
2021-04-12 23:01:09 +02:00
avollkopf
0828aeacac Simplified offset handling
Change is somehow dependent dependent on issue #68 with corresponding change in dataclasses.py.
But this is an example on how the change in dataclasses.py would allow to simplify the props handling in case of empty values.
2021-04-11 12:30:34 +02:00
avollkopf
55953539da Update dataclasses.py
Returns also None when returned string is empty

This change is to address issue #68
2021-04-11 10:44:16 +02:00
avollkopf
e89c42f5dd Added offset and Temp Unit support
- Offset can be specified for each newire sensor
- Sensor is reporting temp in C or F depending on server settings
2021-04-09 10:36:06 +02:00
avollkopf
28f4113f2f Fix to improve accuracy of timer
Timer was not accurate as it was depending on the asyncio.sleep function which is most liklely not exactly one second depending on other functions running in parallel.

Now the timer is comparable to cbpi3 where it runs until an end time is reached.

This is to address issue #66 and has been tested
2021-04-08 14:40:47 +02:00
Manuel Fritsch
70469adc49 "fermentation controller pre version. Not ready to use" 2021-04-04 15:54:10 +02:00