So I calibrated my two temp probes by doing the following:
screen /dev/ttyACM0 57600
h{v:1 to list the sensor(s) and to verify the Arduino can see the sensor.
In my case, both my probes we’re reading 0.5c low, so I adjusted with the following command: U{i:0,j:0.5} and U{i:1,j:0.5}
Doing that worked and BrewPi displayed the adjusted temps, matching my Thermapen reading.
After calibrating, I did an update (including firmware update) with: sudo ~/brewpi-tools/updater.py
After the update, my calibration settings are no longer in place. I attemped to redo the calibration, but no matter what “J” value I put in, it always reads as 0. I’m back to being 0.5c low and it doesn’t seem to matter what number I put in for the J value, it never changes anything.
Update to this. Everything has been working fine up until last night. The error I got in the web UI is:
Warning: Cannot receive version number from controller. Your controller
is either not programmed or running a very old version of BrewPi. Please
upload a new version of BrewPi to your controller.
The logs also showed the additional error:
File “/home/brewpi/brewpi.py”, line 728, in
ser.write(‘l’)
File “/usr/local/lib/python2.7/dist-packages/serial/serialposix.py”, line 518, in write
raise SerialException(‘write failed: %s’ % (v,))
serial.serialutil.SerialException: write failed: [Errno 5] Input/output error
I rebooted the laptop that I’ve got the arduino hooked up to and things came back and worked again. The temp readings still showed that the fermentation was under control, so does the system keep working even if other parts have crashed? I’m a little concerned that if vigirous fermentation starts and things crash again, that I’ll lose my beer.
The arduino will maintain settings on its own. The rpi only logs and updates the arduino. Elco built it that way for just such occasions where things can get muddled between the rpi and arduino.