Releases: brewpi-remix/brewpi-script-rmx
0.8.1 Bugfix Release
This release handles a couple of bugs, the worst of which would prevent an install from completing. I've removed Arduino-core
in favor of avrdude
and some pre-compiled binaries. This in turn removed Log4j
and several other dependencies that were too much exposure and no utility.
Tools
Commit Summary
- 8e5eb53 Update bootstrap.sh
- 3db3b5d Fix python for #61
- e31e354 Merge branch 'devel' of https://github.com/brewpi-remix/brewpi-tools-rmx into devel
- 0f29e2b Prep for release
File Changes
(1 file)
- M bootstrap.sh (4)
Patch Links:
- https://github.com/brewpi-remix/brewpi-tools-rmx/pull/62.patch
- https://github.com/brewpi-remix/brewpi-tools-rmx/pull/62.diff
Scripts
Commit Summary
File Changes
(3 files)
- M .gitignore (1)
- M programController.py (28)
- M utils/doDepends.sh (19)
Patch Links:
- https://github.com/brewpi-remix/brewpi-script-rmx/pull/194.patch
- https://github.com/brewpi-remix/brewpi-script-rmx/pull/194.diff
WWW
No changes.
0.8.0 Glycol Support
This feature release adds support for the Glycol shield and pinouts. No UI changes have been made.
Upgrading
Existing users of BrewPi Remix 0.5.3 and above may upgrade with:
sudo /home/brewpi/utils/doUpdate.sh
If you are not on version 0.5.3 or above (or if you have no idea what version you are on,) use the following command to upgrade to the latest version:
curl -L upgrade.brewpiremix.com | sudo bash
You must run this from within your /home/brewpi
directory or from each chamber's directory in multi-chamber mode.
Tools
No significant changes
Scripts
Commit Summary
- e5a716c Update Python interpreter declaration
- b33d8af Add "glycol" shield type
- 8d7abdc More glycol support
File Changes
M brewpiVersion.py (13)
M gitHubReleases.py(2)
M gitInfo.py (2)
M pinList.py (21)
M updateFirmware.py (9)
Patch Links:
- https://github.com/brewpi-remix/brewpi-script-rmx/pull/189.patch
- https://github.com/brewpi-remix/brewpi-script-rmx/pull/189.diff
Web UI
No changes
0.7.6 Bug Fix Release
The most important user-facing bug fixed in this release is a nagging iSpindel bug that would happen in certain circumstances like a reboot/power outage. The iSpundel value would be null and cause one of the JavaScripts to error out.
Upgrading
Existing users of BrewPi Remix 0.5.3 and above may upgrade with:
sudo /home/brewpi/utils/doUpdate.sh
If you are not on version 0.5.3 or above (or if you have no idea what version you are on,) use the following command to upgrade to the latest version:
curl -L upgrade.brewpiremix.com | sudo bash
You must run this from within your /home/brewpi
directory or from each chamber's directory in multi-chamber mode.
Tools
No significant changes
Scripts
Commit Summary
- d8a41b6 Add .local to exclusions
- 168cfa6 Add toolPath to config
- 7bb0589 Whitespace cleanup
- 3dd2d27 Remove trailing comma after null (#174)
- 03ca630 Add gitInfo.py for future use
- 4c93d3e Skip perms on venv (#185)
File Changes
- M .gitignore (1)
- M BrewPiUtil.py (7)
- M Tilt.py (2)
- M brewpi.py (2)
- M brewpiJson.py (2)
- A gitInfo.py (132)
- M programController.py (2)
- M settings/defaults.cfg (1)
- M utils/doCleanup.sh (8)
- M utils/doDaemon.sh (8)
- M utils/doDepends.sh (12)
- M utils/doIndex.sh (10)
- M utils/doMenu.sh (6)
- M utils/doPerms.sh (16)
- M utils/doUpdate.sh (30)
- M utils/doWiFi.sh (10)
Patch Links:
- https://github.com/brewpi-remix/brewpi-script-rmx/pull/186.patch
- https://github.com/brewpi-remix/brewpi-script-rmx/pull/186.diff
Web UI
No changes
0.7.5 Bug Fix Release
The primary changes in this release address a rather frustrating bug that prevented users of BrewPi ESP8266 controllers from saving device configurations.
Secondarily, users who choose to install both BrewPi Remix and Fermentrack, or any other project which may use a different web server, may now choose to have Apache serve pages on a different port than the default port 80.
Also, some cleaning up was done to the aliases installed by the scripts. Users may now use the command bpactivate
to activate the BrewPi virtual environment when logged in as the Pi user.
Upgrading
Existing users of BrewPi Remix 0.5.3 and above may upgrade with:
sudo /home/brewpi/utils/doUpdate.sh
If you are not on version 0.5.3 or above (or if you have no idea what version you are on,) use the following command to upgrade to the latest version:
curl -L upgrade.brewpiremix.com | sudo bash
You must run this from within your /home/brewpi
directory or from each chamber's directory in multi-chamber mode.
Details
As this is a project in several parts, below are the changes in the individual repositories.
Note: Commit conflicts caused some commits from the previous release to be re-pulled into this diff. Only the changes which were actually made since 0.7.4 are listed in the commit summaries below.
Tools
Commit Summary
- No significant changes
File Changes
M bootstrap.sh (3)
M install.sh (32)
Patch Links
https://github.com/brewpi-remix/brewpi-tools-rmx/pull/57.patch
https://github.com/brewpi-remix/brewpi-tools-rmx/pull/57.diff
Scripts
Commit Summary
- ba59f56 Increase initial timeout for iSpindel to one hour
- 3a43cb9 Set iSpindel timeout to 3.5 times the interval after receiving JSON
- 23f408e Round timeout value
- 962ffd3 Add message to log when re-setting timeout
- 627f7ac Fix .bash_aliases (#172, #173, #176)
- 8a627d5 Address nginx detection (#179)
- 13e3790 Update tool scripts descriptions
File Changes
M .gitignore (1)
M BrewPiProcess.py (4)
A ConvertBrewPiDevice.py (104)
M MigrateSettings.py (6)
M Tilt.py (30)
M autoSerial.py (12)
M backgroundserial.py (3)
M brewpi.py (260)
M brewpiVersion.py (10)
R gitHubReleases.py (1)
M inc/asroot.inc (6)
M inc/help.inc (2)
M programController.py (36)
M requirements.txt (1)
R terminal.py (0)
M tests/versionTest.py (9)
R updateFirmware.py (20)
R updater.py (0)
M utils/README.md (22)
M utils/doDepends.sh (131)
A utils/doFlash.sh (164)
M utils/doUpdate.sh (2)
Patch Links:
https://github.com/brewpi-remix/brewpi-script-rmx/pull/182.patch
https://github.com/brewpi-remix/brewpi-script-rmx/pull/182.diff
Web UI
Commit Summary
- 267ceb4 Use integers for device settings
- 51307b2 Refresh devices after application
File Changes
M get-gitinfo.php (1)
M js/device-config.js (4)
Patch Links:
https://github.com/brewpi-remix/brewpi-www-rmx/pull/69.patch
https://github.com/brewpi-remix/brewpi-www-rmx/pull/69.diff
0.7.4 Bug Fix Release
0.7.4 Bug Fix Release
This release merges in several fixes to bugs discovered by @day_trippr during an overhaul of his Pi garden.
The most notable work here was to further abstract the real /dev
ports from the udev
mapped ports and allow translation via the serial number. This was required because the PySerial people apparently hate symlinks and have refused by inaction, since 2016, to fix that state of affairs. I'm sure "I'm doing it wrong" but at least I know I'm not the only one.
I've added a new tool, utils/doFlash.sh
to further abstract the venv
environment required by BrewPi Remix now. I've also added a complete description in the readme of all of the command line tools which I shall include here for reference:
Filename | Description |
---|---|
doBrewPi.sh |
This is the script called by the BrewPi Remix daemon which does all of the work of keeping BrewPi Remix running. You should not need to execute this script in normal operation. The daemon runs as brewpi , or the name of the chamber when used in multi-chamber mode. |
doCleanup.sh |
This is a script which is called by the upgrade process, intended to help clean up remnants of the previous version before restarting. |
doDaemon.sh |
This script checks and/or creates the system daemons used by BrewPi Remix: the BrewPi Remix Daemon (named for the chamber in multi-chamber mode) and the WiFIChecker. |
doDepends.sh |
This script checks and enforces the apt and pip dependencies for BrewPi Remix. |
doFlash.sh |
This script will set up and execute the updateFirmware.py code to flash firmware from the command line. |
doIndex.sh |
This script is called by the install process to generate the root web index files as symlinks. |
doMenu.sh |
This script is not yet used. |
doPerms.sh |
This script may be the most used for BrewPi Remix users. It will check all file and system permissions. After any manual manipulation of files, this script should be called in order to ensure BrewPi Remix can operate. It is often the first troubleshooting step when a user asks for help. |
doUpdate.sh |
This is the update script used to bring BrewPi Remix up to the current version. |
doWiFi.sh |
This script is the compliment to the doBrewPi.sh script. Historically, the Raspberry Pi has had challenges remaining connected to WiFi. This script is run by a daemon process called wificheck and will periodically ping the gateway. When it is unable to reach the gateway it will restart the network stack as first aid. |
All of these tools will create the proper conditions in which they need to work, to include using sudo
and venv
to enforce the environment. That's no problem if you have no idea what I am talking about. For those who do, you are bright enough to figure out your own way around that if it creates friction for you.
Upgrading
Existing users of BrewPi Remix 0.5.3 and above may upgrade with:
sudo /home/brewpi/utils/doUpdate.sh
If you are not on version 0.5.3 or above (or if you have no idea what version you are on,) use the following command to upgrade to the latest version:
curl -L upgrade.brewpiremix.com | sudo bash
This must be run from within your /home/brewpi
directory, or from each chamber directory in multi-chamber mode.
Details
As this is a project in several parts, below are the changes in the individual repositories
Note: Some of these files were changed in the last release and because of my horrible git skills, were re-included here. I believe I've learned the error of my ways. The commit summary is only this release however.
Tools
Commit Summary
- 22dd4be Fix python path for venv
- 822fac0 Remove debug
- f6489a5 Add choice for wifi script
- d37fef2 Turn on verbose logging
- 0e6bfb4 Address formatting
File Changes
- M bootstrap.sh (5)
- M install.sh (124)
- M uninstall.sh (45)
Patch Links
- https://github.com/brewpi-remix/brewpi-tools-rmx/pull/54.patch
- https://github.com/brewpi-remix/brewpi-tools-rmx/pull/54.diff
Scripts
Commit Summary
- d83f05b Fix error when setting devices
- aff8fdd Use proper Python env
- 74c6b0c New file
- e1466b1 Bail on error
- ddf80fb Add additional definition
- 2131590 Handle null ports
- 49f017c Add port conversion
- 77eb8b6 Change examples
- 60b7611 Use real ports for flash
- f48c0df Change choice flow
- 1e1124f Move updateFirmware to gitroot
- fc3cf31 Describe files in directory
- 5dd1a68 Move to main directory
- e804d4f Add downloads/ to ignore
- a2809cf Translate udev port
- 0b81f98 Fix aliases
- 5032800 Formatting for legibility
- 5991741 Avoid poorly named ports
- dfde1f4 Move from distutils to packaging
- 6d090b2 Address formatting
- 2366def Revert choice to restore settings
- 440e675 Make sure asroot passes all args
- 55b0096 Update copyright
- 8db8cd8 Do not allow restore from newer
- 011e010 Pass through proper args
- f57a866 Update copyright
- 7e4168e Fix aliases for both users
- c4d4fb9 Hard code brewpi home path
- 544442f Hard code brewpi home path
File Changes
- M .gitignore (1)
- M BrewPiProcess.py (4)
- A ConvertBrewPiDevice.py (104)
- M MigrateSettings.py (6)
- M Tilt.py (30)
- M autoSerial.py (12)
- M backgroundserial.py (3)
- M brewpi.py (246)
- M brewpiVersion.py (10)
- R gitHubReleases.py (1)
- M inc/asroot.inc (6)
- M inc/help.inc (2)
- M programController.py (36)
- M requirements.txt (1)
- R terminal.py (0)
- M tests/versionTest.py (9)
- R updateFirmware.py (20)
- R updater.py (0)
- M utils/README.md (18)
- M utils/doDepends.sh (11)
- A utils/doFlash.sh (164)
- M utils/doUpdate.sh (2)
Patch Links:
- https://github.com/brewpi-remix/brewpi-script-rmx/pull/171.patch
- https://github.com/brewpi-remix/brewpi-script-rmx/pull/171.diff
Web UI
Commit Summary
- Truncate commit info
File Changes
- A css/multi-index.css (17)
- M css/style.css (19)
- A get-bjprompt.php (49)
- A get-gitinfo.php (47)
- A get-logo.php (158)
- A get-tiltinfo.php (53)
- M index.php (56)
- M js/beer-chart.js (39)
- M js/main.js (8)
- M lcd.php (113)
- M multi-index.php (204)
- M top-bar.php (136)
Patch Links:
0.7.3 Bugfix Release
This bugfix release addresses two issues new users may have seen:
Upgrading
Existing users of BrewPi Remix 0.5.3 and above may upgrade with:
sudo /home/brewpi/utils/doUpdate.sh
If you are not on version 0.5.3 or above (or if you have no idea what version you are on,) use the following command to upgrade to the latest version:
curl -L upgrade.brewpiremix.com | sudo bash
This must be run from within your /home/brewpi
directory, or from each chamber directory in multi-chamber mode.
0.7.2 Bugfix Release
This release addresses the following:
- Clone all branches of a repo on install to allow switching between branches
- Addresses a condition where users with a Tilt configured, but no Tilt present would experience a crash
- Addresses a condition where Tiltbridge sending a NULL packet would crash the script
I'm also addressing an issue where the 0,7.0 tag was not applied correctly in the repos, which will result in a large number of changes seemingly part of this release.
Upgrading
Existing users of BrewPi Remix 0.5.3 and above may upgrade with:
sudo /home/brewpi/utils/doUpdate.sh
If you are not on version 0.5.3 or above (or if you have no idea what version you are on,) use the following command to upgrade to the latest version:
curl -L upgrade.brewpiremix.com | sudo bash
This must be run from within your /home/brewpi
directory, or from each chamber directory in multi-chamber mode.
0.7.0 Feature/Bug Release
When I decided to embrace semantic versioning, I knew I would have strange choices to make. I did not realize that it would be the very next release that caused my issues. While to the end-user, this release may seem more of a bug fix, on the inside this is a significant/feature release.
The most important aspect of this release is moving the Python3 pip environment to a venv and requirements.txt format rather than the original root install. The effect should be a much more stable environment and less potential impact from other packages and solutions.
Upgrading
Existing users of BrewPi Remix 0.5.3 and above may upgrade with:
sudo /home/brewpi/utils/doUpdate.sh
If you are not on version 0.5.3 or above (or if you have no idea what version you are on,) use the following command to upgrade to the latest version:
curl -L upgrade.brewpiremix.com | sudo bash
This must be run from within your /home/brewpi
directory, or from each chamber directory in multi-chamber mode.
Combined Release
This release includes several changes across the repositories. Notable among these are:
Tools
- Fix udev setup for multi-chamber installations
- Skip flashing controller if none was detected during multi-chamber setup
- Support Python3 venv setup
Scripts
- Address logging errors/choices
- Use Python3 venv setup. The venv must be activated if for some reason you wish to execute BrewPi or its Python tools from the command line. Execute
. /home/brewpi/venv/bin/activate
(pay attention to the leading ".") to activate the venv (or as user brewpi, you can just issue the commandactivate
.) To deactivate, typedeactivate
. - Increase temp and SG resolution displayed on Tilt Pro
- Add config items to clamp SG and temp values displayed. These can be set in the
config.cfg
and need to be entered in the current temperature format. - Move to public
aioblescan
library and re-writeTilt.py
.
WWW
- Re-format multi-index layout to match the functionality of the chamber index
- Increase temp and SG resolution displayed on Tilt Pro
- Externalize some common code blocks
One Release, Three Parts
As always: BrewPi Remix, like BrewPi before it, is made up of several different packages. Therefore, it is in separate GitHub repositories. The scripts I have provided abstract much of this from the end-user, but sometimes it is important to know.
Thank you!
Thank you to @bloombrews who pointed out an issue with the multi-chamber setup.
0.6.0 Feature Release
Upgrading
Existing users of BrewPi Remix 0.5.3.0 and above may upgrade with:
sudo /home/brewpi/utils/doUpdate.sh
If you are not on version 0.5.3.0 or above (or if you have no idea what version you are on,) use the following command to upgrade to the latest version:
curl -L upgrade.brewpiremix.com | sudo bash
This must be run from within your /home/brewpi
directory, or from each chamber directory in multi-chamber mode.
Combined Release
This release includes several changes across the repositories. Notable among these are:
Tools
- Remove version from bootstrap. The version is not needed and injects another point where I can make a mistake.
- Pre-position future capability. I intend to provide the ability to switch between branches; a new script has been pre-positioned to allow that.
Scripts
- Tilt processing has been re-written from the bottom up. These changes include a much more graceful failure handling when the upstream Bluetooth Low Energy tools fail.
- Tiltbridge handling has been re-written. Adding a Tiltbridge by pointing it to
brewpi-api.php
is seamless and may be done (and undone) on - the fly. BrewPi Remix will handle Tiltbridge colors with the sametiltColor = {color}
configuration as the Tilt. - Tilt values are clamped between reasonable values to prevent crazy readings and chart display.
- Tilt Pro is supported. Tilt Pro adds a higher resolution that requires some different value handling. Most importantly, the Tilt Pro adds more transmission power, so go check that out.
WWW
- The yellow Tilt color has been tweaked to allow you actually to see it. There are not many discrete color values to use, especially for people with eyesight issues, so turning on and off the different lines via the legend is even more critical.
- I have eliminated errors in the chart refresh.
- The header (the blue part with the display and logo) has been re-written to use CSS grid. The change evens out the classic LCD with the scroll display which shows Tilt, iSpindel, Brew Bubbles, etc.. Ideally, nobody will notice the re-write, but it makes things easier for me to change should I need to do so.
- Custom logo handling has been re-written. You must save a logo in the images directory as
custom_logo.*
. It will allow any (sane) image format and validate that the contents match the expected image type for a touch of security. The logo will be scaled uniformly to fit the 250x70 space allotted for it. This will prevent those of you who add insane logos from completely blowing up the header. It does mean your logo should be distinguishable at that size. Logos or images with transparent backgrounds are recommended but not enforced.
Semantic Versioning
Among other things, I intend for this release to begin down a path towards embracing Semantic Versioning. The version numbers so far are all over the map with their intent. As this release includes bug-fixes and features, I will start this effort with 0.6.0. I will increment bug-fixes to this as 0.6.1, 0.6.2, etc., with new features in 0.7.0.
Yes, someday I will feel like this is "done enough" for 1.0.0.
One Release, Three Parts
Some of you know this; some do not. BrewPi Remix, like BrewPi before it, is made up of several different packages. Therefore, it is in different GitHub repositories. The scripts I have provided abstract much of this from the end-user, but sometimes it is important to know.
This release is taking place in three repositories simultaneously:
- BrewPi Remix Tools - The BrewPi Remix repository which allows initial installation
- BrewPi Remix Script - The BrewPi Remix repository which contains the Python scripts used to interface between the controller and the web page
- BrewPi Remix WWW - The BrewPi Remix repository which contains the web pages which display the information and with which the end-user interacts
Script PR Specifics:
Commit Summary
- Minor changes, format with black
- Merge pull request #137 from brewpi-remix/master
- Major refactor, add tests
- Config timestamps, support refactor
- Fix path and logging
- Escape json modes
- Merge pull request #141 from brewpi-remix/main_refactor
- Add ./venv/
- mend
- Re-write Tilt.py
- Add compatibility with new Tilt.py
- (re)Fix scriptPath()
- Further Tilt.py cleanup
- Rewrite, plus Pro
- Fix startup sequence
- Merge pull request #145 from brewpi-remix/fix_startup
- Merge pull request #146 from brewpi-remix/fix_startup
- Add Pro, rewrite major areas
- Merge pull request #147 from brewpi-remix/tilt_pro
- Fix exceptions
- Fix logging
- Check color on arg
- Clamp Tilt values
- Allow higher res for Pro
- Add Tilt HW/SW version
- Merge pull request #150 from brewpi-remix/tilt_rework
- Add clamping, update Tiltbridge
- Add clamping, update Tiltbridge
- Merge branch 'tiltbridge' of https://github.com/brewpi-remix/brewpi-script-rmx into tiltbridge
- Merge branch 'devel' into tiltbridge
- Merge pull request #152 from brewpi-remix/tiltbridge
File Changes
- M .gitignore (3)
- M BrewPiUtil.py (350)
- M Tilt.py (1038)
- M brewpi.py (2538)
- M utils/doBrewPi.sh (6)
Patch Links:
Minor Feature Release / Bugfixes 0.5.4.3
This is a minor feature + bugfix rollup release.
Changes
- Clean up socket error handling
- Append stderr
- Handle temperature conversion from external API
- Fix pin definitions for brewpi-esp8266
- Update apt keys
- Allow reconfiguring nginx if present to alternate port
- Add Tilt and iSpindel to Header
- Add ISO8601 Date format as an option
- Address missing ack in socket comms
- Make SG report 3 decimals
Upgrading
Existing users of BrewPi Remix 0.5.3.0 and above may upgrade with:
sudo /home/brewpi/utils/doUpdate.sh
If you are not on version 0.5.3.0 or above, use the following command to upgrade to the latest version:
curl -L upgrade.brewpiremix.com | sudo bash
This must be run from within your /home/brewpi directory or from each chamber directory in multi-chamber mode.