Skip to content

Releases: brewpi-remix/brewpi-script-rmx

0.8.1 Bugfix Release

09 Jan 17:52
3833f9f
Compare
Choose a tag to compare

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

File Changes

(1 file)

  • M bootstrap.sh (4)

Patch Links:

Scripts

Commit Summary

File Changes

(3 files)

  • M .gitignore (1)
  • M programController.py (28)
  • M utils/doDepends.sh (19)

Patch Links:

WWW

No changes.

0.8.0 Glycol Support

07 Jun 21:17
e560efc
Compare
Choose a tag to compare

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:

Web UI

No changes

0.7.6 Bug Fix Release

24 Apr 18:45
fe28738
Compare
Choose a tag to compare

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

File Changes

Patch Links:

Web UI

No changes

0.7.5 Bug Fix Release

21 Apr 23:07
Compare
Choose a tag to compare

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

31 Mar 23:56
289fdd3
Compare
Choose a tag to compare

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

Scripts

Commit Summary

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:

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

27 Mar 10:58
504c445
Compare
Choose a tag to compare

This bugfix release addresses two issues new users may have seen:

  • 640af2f - Error when requesting devices
  • d83f05b - Error (Silent failure) when setting devices

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

16 Jan 01:28
dcfe130
Compare
Choose a tag to compare

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

31 Dec 15:35
5327de1
Compare
Choose a tag to compare

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 command activate.) To deactivate, type deactivate.
  • 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-write Tilt.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

23 Dec 16:45
8a6f865
Compare
Choose a tag to compare

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 same tiltColor = {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

Patch Links:

Minor Feature Release / Bugfixes 0.5.4.3

01 Aug 19:48
a4dcaa8
Compare
Choose a tag to compare

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.