Commit graph

367 commits

Author SHA1 Message Date
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
avollkopf
5cb0ce76de Added Hop alarms to boil step 2021-03-30 21:00:17 +02:00
avollkopf
06bc69b367 Fixed back hysteresis
To addres issue #44
2021-03-30 07:46:41 +02:00
Manuel83
fb2793eb85
Merge pull request #59 from MrGunnery/Fix_some_issues
Fix some issues
2021-03-21 10:27:11 +01:00
avollkopf
baf285be9f Added ConfigType.STEP
This supports also the pre-configuration of steps in the cbpi settings
2021-03-20 21:02:05 +01:00
Martin
6dc1c22e20 Fix[extension]: mqtt_sensor did not work with Mash_profile
Error NoneType object as no attribute 'get'
2021-03-18 19:27:03 +01:00
Martin
919d6c8e93
Update cbpi/extension/mashstep/__init__.py
Co-authored-by: Marcel Schulz <schullebernd@googlemail.com>
2021-03-15 22:09:23 +01:00
Martin
aabe76d15d optimize import 2021-03-15 19:55:59 +01:00
Martin
d8b083003d fix issues #55 2021-03-15 19:54:22 +01:00
Martin
de38fbc80c fix: error, i put the modification on bad class 2021-03-15 17:21:57 +01:00
Martin
93a07ac613 Fix: issuses #56 2021-03-15 13:02:35 +01:00
Martin
12d487bd3a Fix: issuses #57 2021-03-15 12:59:55 +01:00
Manuel Fritsch
2a018fb731 "fix mqtt push update issue" 2021-03-14 17:40:44 +01:00
Manuel Fritsch
12857c73ef "mqtt added" 2021-03-14 11:52:46 +01:00
Manuel83
9c3a1f564b
Merge pull request #47 from Prash3r/master
BasicController manages state of item.instance.running
2021-03-11 22:23:44 +01:00
Manuel83
7611e1d167
Merge pull request #48 from BrauereiAlt/master
Activate Timer in Boil and Mash Steps
2021-03-11 22:21:20 +01:00
BrauereiAlt
07024d7fc3
Add files via upload 2021-03-07 22:54:58 -08:00
prash3r
a9546bc40c BasicController start() and stop() functions manages item.instance.running state
Also changes usage of 'while True' inside run() functions to 'while self.running == True'
2021-03-08 01:34:13 +01:00
Manuel Fritsch
7a5e852121 "save props for steps" 2021-03-07 23:52:20 +01:00
Manuel Fritsch
51c8f82834 "notificaton added" 2021-03-07 22:11:25 +01:00
Manuel83
0371e74b4a
Merge pull request #42 from michluk/dev
fix HttpSensor
2021-03-07 19:26:46 +01:00
Manuel83
367a0dfe9e
Merge pull request #29 from vojtech/master
Fix OneWire Setup
2021-03-07 19:25:58 +01:00
Manuel83
26369e2a9b
Merge pull request #22 from madhatguy/master
fix to add_config_value
2021-03-07 19:25:34 +01:00
BrauereiAlt
03a30e70ce
Add files via upload 2021-03-06 17:05:19 -08:00
Lukas
1ddfc56f15
Update __init__.py 2021-03-04 15:07:56 +01:00
Lukas
7c94833634
Update __init__.py 2021-03-04 14:49:10 +01:00
Mich, Lukas
5874b0bda5 fix HttpSensor 2021-03-04 13:06:57 +01:00
Manuel Fritsch
441e235d1f "fix cli main_dir error" 2021-03-03 23:49:41 +01:00
Manuel Fritsch
c142380bc6 "add seconds to timer at runtime" 2021-03-03 07:37:54 +01:00
Manuel Fritsch
a55ed2a5e5 "recipe book added" 2021-02-27 20:09:19 +01:00
Manuel Fritsch
79fd2b8727 "fix actor satellite issue" 2021-02-20 12:59:23 +01:00
Manuel Fritsch
c78ab29b85 "fix actor instance error" 2021-02-20 09:24:03 +01:00
Vojtech Hrdina
0717a45449 Fix OneWire Setup 2021-02-19 22:41:53 +00:00
Manuel Fritsch
f1bcd1e543 "fix static config" 2021-02-19 22:24:15 +01:00
Manuel Fritsch
6a091c0bae "fix config.json" 2021-02-19 22:05:13 +01:00
Manuel Fritsch
fb85d67fcf "Small bug fixed. Step Actions added on server part" 2021-02-17 23:52:54 +01:00
Manuel Fritsch
93aea0c063 "added dataclassed" 2021-02-16 20:37:51 +01:00
Guy
6a0764a937
fix add_config_value 2021-02-12 12:13:32 +02:00
Manuel Fritsch
2468dab6dd "fix mash step time to minutes" 2021-02-12 00:03:18 +01:00
Manuel Fritsch
5f18e7a7b8 "Hysteresis added" 2021-02-10 22:11:35 +01:00
Manuel Fritsch
bd311edccd "mash profiles added" 2021-02-10 07:38:55 +01:00
Manuel83
ab14111787
Merge pull request #16 from avollkopf/master 2021-02-10 07:21:01 +01:00
avollkopf
ba988fbbb5 Fix for gpioactor
definition of mode --> GPIO.BCM
2021-02-09 18:48:45 +01:00
Manuel Fritsch
0f295e25c6 "1" 2021-02-07 13:52:03 +01:00
Manuel Fritsch
73ba659c59 adding description 2021-02-07 13:08:55 +01:00
Manuel Fritsch
3a39719957 adding description 2021-02-07 13:08:13 +01:00
avollkopf
9caca9074a Change Inverted logic for GPIO Actor
If sensor is set to active, GPIO pin should be high under normal conditions.
If inverted, GPIO pin should be low when sensor is active.
This logic is aligned with the old craftbeerpi3 GPIOSystem plugin
2021-02-07 12:07:48 +01:00
madhatguy
1cdc3c1cf0
cli to relative paths 2021-02-07 03:02:33 +02:00
madhatguy
c51d34a7bf
Update cli.py 2021-02-07 02:43:35 +02:00
madhatguy
35049ae7fd
Update cli.py
changed MAIN_DIR to old relative path
2021-02-07 02:24:06 +02:00
Manuel Fritsch
68fc73cc25 change dummy logic 2021-02-06 20:09:01 +01:00
Manuel Fritsch
fb61429266 setup one wire added 2021-02-06 14:19:51 +01:00
Manuel Fritsch
395ad3521d setup one wire added 2021-02-06 14:14:11 +01:00
Manuel Fritsch
b2fe0c8453 setup one wire added 2021-02-06 14:11:30 +01:00
Manuel Fritsch
aa2ab888d5 update version 2021-02-06 00:42:48 +01:00
Manuel Fritsch
fbccd11c9e actor methods added 2021-02-06 00:41:50 +01:00
Manuel Fritsch
4fe47d5a31 sensor methods added 2021-02-06 00:40:55 +01:00
Manuel Fritsch
0a3e272f85 fix props for plugin 2021-02-02 21:24:29 +01:00
Manuel Fritsch
64dea90e3b fix props for plugin 2021-02-02 21:22:59 +01:00
Manuel Fritsch
b3af77fdb8 actor added 2021-02-02 00:07:58 +01:00
Manuel83
5f846ee2ad
Merge pull request #8 from madhatguy/master
Changed paths to absolute paths
2021-02-01 21:45:59 +01:00
Manuel Fritsch
69cf3548db bugfix 2021-02-01 21:40:16 +01:00
thehatguy
23eb12ef28 Changed paths to absolute paths 2021-02-01 02:38:04 +02:00
Manuel Fritsch
aeabde8c4a plugin controller change 2021-01-30 22:29:33 +01:00
Manuel Fritsch
53a82b4249 fix dashboard path 2021-01-26 20:28:42 +01:00
Manuel Fritsch
2779c3cc2c reuqirements.txt updated 2021-01-26 20:21:53 +01:00
Manuel Fritsch
eb22311de7 fix index url bug 2021-01-24 22:22:07 +01:00
Manuel Fritsch
0d2770ef4c add missing dependencies 2021-01-24 22:14:57 +01:00
Manuel Fritsch
6c537bd278 bugfixing 2021-01-23 14:41:26 +01:00
Manuel Fritsch
296c2c69f0 rework database 2021-01-22 23:25:20 +01:00
Manuel Fritsch
05e08d0dc6 new step controller 2021-01-17 22:49:18 +01:00
Manuel Fritsch
b1b9025886 bugfixing actor, sensor controller. New dashboard api 2021-01-09 15:20:56 +01:00
manuel83
eb2ba8fdfe plugin installer added 2019-08-16 21:36:55 +02:00
manuel83
85b6549640 log http endpoint swagger doc fix 2019-08-05 23:16:12 +02:00
manuel83
30efc95462 log http endpoint swagger doc added 2019-08-05 23:15:14 +02:00
manuel83
bbbfe92aab log http endpoint added 2019-08-05 23:00:18 +02:00
manuel83
8200c48dfc log controller added 2019-08-05 20:51:20 +02:00
manuel83
8db6251fb7 changes in plugin controller 2019-07-31 07:58:54 +02:00
manuel83
8ba6b4c506 Lots of changes 2019-07-27 21:08:19 +02:00
manuel83
0496b04608 config fix 2019-01-28 22:21:31 +01:00
manuel83
8cfffa17bb actor action button added. kettle automatic connnected to ui 2019-01-24 21:27:55 +01:00
manuel83
8379dee5c7 swagger doc for system controller added 2019-01-21 22:37:00 +01:00
manuel83
6cc7f5ad77 step change add oder for new 2019-01-21 22:33:29 +01:00
manuel83
017b7373e3 fixes for step controller 2019-01-17 22:11:55 +01:00
manuel83
8cf373c993 changes for ui 2019-01-14 07:33:59 +01:00
manuel83
d0b751a0d4 json dump for Actor and Sensor added 2019-01-08 23:31:39 +01:00
manuel83
ace88601f2 fix http translation registration 2019-01-08 20:24:53 +01:00
manuel83
705c81a075 fix translaton controller 2019-01-08 20:22:50 +01:00
manuel83
d0eceffeaf Merge branch 'master' of https://github.com/Manuel83/craftbeerpi4 2019-01-08 19:45:28 +01:00
manuel83
26bc72b27e fix plugin loading error 2019-01-08 19:45:23 +01:00
Manuel83
7f2efb232f
Update craftbeerpi.py 2019-01-08 16:09:47 +01:00
manuel83
dcc82d4bd8 requirements fix 2019-01-07 22:05:52 +01:00
manuel83
5533761bb4 cleanup 2019-01-05 22:44:54 +01:00
manuel83
7ab75f0b01 setuptools added 2019-01-05 20:43:48 +01:00