Firmware 0.2.10 is out (bugfix release)


I discovered a bug in yesterday’s release and fixed it. New version is 0.2.10.
Bug was in converting temperatures very close to a whole number, which were converted incorrectly due to internal rounding.

Hi Guys,

I just released a firmware update to fix a few bugs in the controller.

Here is a copy of our changelog:


This is a faster release in between our normal release schedule to fix some bugs that we thought were bad enough to warrant a hotfix release.


No new features in this release


  • ####Temperature filter initialization

Temperature sensor filters could be used uninitialized in when a fridge or beer sensor was plugged in 1-60 seconds after start. See issue #18.

  • ####External flash

A bug in the flashee library, which handles external flash to store settings, could cause a hard reset and temp sensors to be installed with an incorrect device address. This would only happen when a flash was worn out and the new data block spanned multiple pages, which is unlikely to have occured yet under normal use. See

  • ####Error checking when parsing strings received from script

When an invalid temperature or setting string was received from the script, the value defaulted to 0. We have refactored the string parsing functions to detect and ignore invalid strings. See issue #16 and #21.

  • ####Small rounding errors in conversions

We fixed small 1 bit rounding errors (0.0002 degree) in or temperature conversion functions. See issue #22.


Catch unit tests were added to the build (replacing googletest). We used it to test all the new temperature conversion functions. Closes issue #15.

Meanwhile I have been updating our update scripts, so hopefully it will be a smooth update for all of you.

Just run our update script to update the pi and the controller:

sudo python ~/brewpi-tools/

If you are still getting errors while updating, let me know and I’ll try to squash some more bugs. Please surrount your log with three backticks when posting bug details.


1 Like

Update was smooth as silk… thanks!

1 Like

went well of me.

Thank you Elco!

It appears the update worked, but I got this at the end of my update script:

 sent packet nr 103 
 sent packet nr 104 
 sent packet nr 105 
 sent packet nr 0 
 File flashed successfully
 Waiting for device to reset.
Traceback (most recent call last):
  File "/home/brewpi/utils/", line 144, in <module>
    result = updateFromGitHub(userInput)
  File "/home/brewpi/utils/", line 124, in updateFromGitHub
    {'settings': restoreSettings, 'devices': restoreDevices})
  File "/home/brewpi/utils/../", line 160, in programController
    return programmer.program(hexFile, restoreWhat)
  File "/home/brewpi/utils/../", line 217, in program
    self.open_serial(self.config, 57600, 0.2)
  File "/home/brewpi/utils/../", line 284, in open_serial
    self.ser = util.setupSerial(config, baud, timeout)
  File "/home/brewpi/utils/../", line 119, in setupSerial
    except (IOError, OSError, ser.SerialException) as e:
AttributeError: 'NoneType' object has no attribute 'SerialException'

*** Done updating BrewPi! ***


I also got this error.

The bug above should be fixed now. I also released a new firmware version to address another bug. Please update again, sorry!

Update to 0.2.10 from 0.2.9 worked perfectly for me. Thanks for the update.

0.2.8 -> 0.2.10 went straight through without issues. Thanks guys

I get this error when I run the updater:
Downloading latest firmware…
Could not find download in release 0.2.10 with these words in the file name: [‘Uno’, ‘revC’, ‘.hex’]
Downloading firmware failed

Arduino user here

has anyone been getting this error when trying to upload the uno Hex?

SyntaxError: invalid syntax
BrewPi: wifiChecker: Cannot find gateway IP. Restarting wlan0 interface… (Wed Apr 22 09:40:01 BST 2015)
File “/home/brewpi/”, line 4

SyntaxError: invalid syntax
File “/home/brewpi/”, line 4

i don’t seem to be able to get passed this.


Files were missing the extension .hex, should be fixed.

Did you by any chance upload the files from a Windows PC? Git could check out the files with windows line endings which cause errors when the files are uploaded to Linux later.

I’m using a Mac have tried to upload via the safari and also via ice weasel.

I think the arduino might have a dodge usb socket as the mac couldn’t detect it via serial port

I meant the actual script files. You are getting a syntax error on an empty line:

That is why I suspected the line endings to be incorrect.

A git reset might work to fix that.

No everything is done either through the RPI or via ssh through terminal.

Can you explain how to do a Gir reset? Is it as simple as git reset with the http path?

cd into the directory, run:

git reset --hard

Then verify that you have no differences with our repository:

git diff origin/master

If you have, make sure you are up to date by running the update script.

Nope, now I get a HTTP error:

Downloading latest firmware…
HTTP Error: 404
Downloading firmware failed

Strange, even clicking the files on GitHub doesn’t work:

I have re-uploaded the files.

Thank You, Elco.
Now it works. :smiley:

I’m away from the brewpi for a few days now but I’ll try and reinstall again when I get back