Web-Accessible Temperature Logger for Raspberry Pi

Homebrew Talk - Beer, Wine, Mead, & Cider Brewing Discussion Forum

Help Support Homebrew Talk - Beer, Wine, Mead, & Cider Brewing Discussion Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.
Thanks, but you know I owe most of this last bit to you. In fact when I bundle this with the rest of the kit I shall name this "The Ichbinbier Option" in your honor for all your kind help on this particular obsession :)

Cheers! :mug:

I hoist a brew to you kind sir.
 
day_trippr and ichbinbier,
Happy to be a guinea pig to give this a shot.

Next, copy the file temp_insert.php from my Google Drive here to /var/www/temp_insert.php. Be sure to set the ownership and permissions to match whatever is set for the RaspberryPints index.php file.
You may want to provide the actual inputs needed to do this, for those of us not as smart on the coding side. I did mine using the folder manager GUI, but I'm sure it's easier to do some $ sudo commands and make it happen.

- Edit temp_insert.php and set the variables listed below.
Note that there is a "php" set and a "javascript" set of variable to configure.
The "php" set is at the top of temp_insert.php, the "javascript" set follows.

This is the php set.

//Enter all variables between the php tags
//Set database name
$dbname = 'tempdata5.db';
//Set Fahrenheit(F) or Celcius(C). Note that this is just part of the label, it doesn't affect the numeric temperature readings.
$cf = "F";
//Channel labels go here. Terse works best if you want to support handheld displays.
$ch0 = "Ch0 Room";
$ch1 = "Ch1 Tower";
$ch2 = "Ch2 Upper";
$ch3 = "Ch3 Lower";
$ch4 = "Ch4 Keg";
//URL string to the RaspberryPints server. If your server listens to a non-standard port (ie: anything other than 80) be sure to include the port as shown in the example setting below.
$url = "96.252.83.39:84";
I have no idea what 'port' my server 'istens' to, so I left this as written.

//Name of webgui(n).py file for the temperature logger gui.
$gui_file = "webgui.py";
May want to make "webgui.py" to be "webguiN.py" so people know they have to change the "N" part - or maybe that's just obvious.

The "javascript" variables start at line 28. The only critical setting is the variable "channels", the rest tune the appearance of the temperature display and aren't shown here.

var channels = 5; //valid setting is from 1 through 5, and defines the number of temperature channels to display

Now save the file.

- Next, make a back-up copy of the RaspberryPints /var/www/index.php file, then edit it as follows:

Look for this line (occurs at line 98 in the original v2.0.1 file):

<div class="HeaderRight">

Cut the (5) lines of code directly following the above tag, down to but not including the </div> tag.

Then, scroll down near the very bottom of the file, find the last occurrence of the </body> tag, and paste the cut lines directly above that tag. This will move the RaspberryPints logo to the bottom of the tap list display, making room for the temperature display.

Next, scroll back up to where the lines were cut, and insert this single line in between the <div class="HeaderRight"> tag and the following </div> tag:

<?php include'temp_insert.php'; ?>

Save the file and exit the text editor.

And that's it. If you load your RaspberryPints tap list page, the thermometer icon that links to the logger gui should appear in the top right corner, with the "rolling" temperature channel data listed directly to the left.

Cheers!

I used the leafpad editor from, as it more easily allows the copy / paste option. One suggestion in your instructions - after having people cut the 5 lines of code, have them type the <?php include'temp_insert.php'; ?> portion and THEN go to the bottom - this keeps people from needing to scroll away from where they are, only to have to go back and try to find it again.

So it's working... except...

UBm2BmX.jpg


The temperature icon covers up the display. I tried a few attempts at moving it (align=center instead of right - that just moved everything to the left, still covered the code display), tried deleting the references to thermometer.png, that screwed everything up (I probably cut out too much).

Any suggestions?
-Kevin
 
I'm away from home for the weekend so not going to be a ton of help.

Thanks for the feedback, I will expand the instructions when I return.

The url string variable example (my server ip and port) has the non-standard port suffix. If you use the standard port 80, leave off the colon and the port number and just use the ip address. If you're only serving inside your lan, use the lan address; if you want Internet access, use your wan address or your dyndns name.

As for the display, I see a degree symbol but no number. The text is right-justified against the edge of the icon, so my guess is it is not getting data successfully. I bet if you check the Apache log file you get a lead on what's broken. Look under /var/log...

Cheers!
 
Hope you're enjoying your vacation (if that's what it is)!

The URL string, I changed to 192.168.1.3 (the URL I've got my Pi set to - I'm local only at this point) and got rid of the ":84" portion. It's running great. When I click on the thermometer icon it takes me to the table - EXCEPT - for Channel 0, where you have the last line that links the temperature GUI when you click on the thermometer - on that one you include </?php> after the php echo portion. You don't have that for any of the other Channels that have otherwise the exact same wording. I went ahead and removed it and everything seems to be running - was it important, or was it a typo?

Regarding the display - you were right, after looking at it some more and trying to move it around, it wasn't that the image was OVER the temp - it was that there was no temp. I figured that out, too - the temp_insert.php file has #dbname = 'tempdataX.db' - all I did was change the X to 4 as I'm running 4 channels. What I noticed is that the file in your original download is temp_dataX.db - so all I had to do was add the "_" back into the file name and it runs great. You may wish to edit your temp_insert.php file to include the "_", as I imagine most people will have their temp database file name the same as how they downloaded it off the original install.

I am 100% up and running - temperature's are logging, the temp is displayed at the top of the index page, and my pours register and log as expected.

I owe a lot of beers to a lot of people for their hard work on getting everything running! Hell, I'll buy you a supporting membership if there's a way I can do it! Cheers to you all indeed,
-Kevin
 
We had a wonderful weekend with the grandsons (4 & 2).
They've moved beyond the "talking pets" stage and are developing into real people ;)

Thanks very much for the feedback, I've updated the installation instructions for the temperature scroller and made corresponding edits to the temp_insert.php file on my Google Drive.

If anyone finds anything else that could use changing, let me know.
I plan on bundling this option into the logger kit soon...

Cheers!
 
It's been running stable and reliably since! I definitely like it. The only thing I've noticed (which I don't worry about anymore) - it'd be nice if there was a "back to the brewery" button from the temperature graph page. In kiosk mode, access to the "back" button isn't there, and backspace doesn't work on my setup, so I have to right-click and click "back" - not a big deal, but if you're looking for ways to refine and improve, that may be one. Everything works awesome and I've pointed it out to my girlfriend at least a half dozen times - she is somewhat less impressed by the scrolling data than I am, not sure why.
-Kevin
 
It's been running stable and reliably since! I definitely like it. The only thing I've noticed (which I don't worry about anymore) - it'd be nice if there was a "back to the brewery" button from the temperature graph page. In kiosk mode, access to the "back" button isn't there, and backspace doesn't work on my setup, so I have to right-click and click "back" - not a big deal, but if you're looking for ways to refine and improve, that may be one. Everything works awesome and I've pointed it out to my girlfriend at least a half dozen times - she is somewhat less impressed by the scrolling data than I am, not sure why.
-Kevin

Using LXterminal (or similar) open you webgui(x).py in /usr/lib/cgi-bin/
i.e.
Code:
$ cd /usr/lib/cgi-bin/
then use ls to see what webgui(x).py yo are using
Code:
$ ls
then open up your webgui file
Code:
$ sudo nano webgui2.py
in this case we used the two sensor webgui(x).py
Scroll to near the bottom and find
Code:
    show_stats(option)
    print "</body>"
    print "</html>"
And above print body and below show stats enter this line
Code:
    print "<h3><a href=\"http://localhost\">Return to Taps</a></h3>"
so the code will look like this
Code:
    show_stats(option)
    print "<h3><a href=\"http://localhost\">Return to Taps</a></h3>"
    print "</body>"
    print "</html>"

Change localhost to the proper address for your system
Then press the Ctrl key and the o key (not zero but oh) at the same time to save.
Press Ctrl plus the key x to exit
And now refresh your logger page and at the bottom will be your link back.

For a working example go here.
Scroll to the bottom to find the back link.
 
Question:
I have 1 probe working 100%. Going to add another probe.
On what pins do I connect the second probe?
 
Question:
I have 1 probe working 100%. Going to add another probe.
On what pins do I connect the second probe?

Same exact pins. The joy of the probes is that they each have an internal 'ID' so they get polled by the Pi separately, unlike the flow sensors. So you can put anywhere from 1 to 5 (with this setup) on the same 3 pins and run perfectly fine.
-Kevin
 
So I have started back in to this. I have updated the rpints on my pi and have all the probes kicking out data with the phython test script. I think I need to read through this backwards to see where I need to start with this as there looks like there have been a bunch of changes.

I've noticed I still have some file lingering on my pi from having this set up with 2 probes a while back. hope that won't hurt anything or i'll have to figure out how to delete them (or just start with a fresh SD card)

I also really like the vertical layout for the tap list. Think i'll try to find your post on that as well. Thanks for all the work on this guys.
 
Guys you must stop with all this "gadgets" :smack: the wife is complaining she does not see me enough
:ban: Got my "scrolling temps" up and running :ban:
How do I change the colour of the words?
 
Guys you must stop with all this "gadgets" :smack: the wife is complaining she does not see me enough
:ban:

Be afraid. Winter brings time for projects, and there are all kinds of ways things could go from here! :D

Got my "scrolling temps" up and running :ban:
How do I change the colour of the words?

Excellent!

Take a look at lines 46 & 47 of temp_insert.php.

var startcolor= new Array(255,255,255); // start color (red, green, blue) original value = 255,255,255
var endcolor=new Array(255,255,255); // end color (red, green, blue) original value = 0,0,0


I noted that the original values for startcolor and endcolor were 255,255,255 and 0,0,0 respectively. Those values "fade" the temp string display from white to black. I preferred a less "fancy" display so I set both values to "white", but you could change those to any pair of colors in the gamut...

Cheers!
 
Tx will have a look.
Have you guys notice this..
Saw it on post #104 as well when I clicked on "day trippr's" link and then click on the temp icon.
It is not always there only the odd time it will show up.

q.JPG
 
Tx will have a look.
Have you guys notice this..
Saw it on post #104 as well when I clicked on "day trippr's" link and then click on the temp icon. It is not always there only the odd time it will show up.

I've seen this a couple of times (literally, twice) and both times a second click worked.
I haven't looked into it yet, but it definitely is something that cropped up with the scroller addition...

Cheers!

[edit] This is likely an artifact of the way the icon file (with its url link to the logger gui) gets re-loaded with each tick of the scroller. Possibly a candidate for refinement as a winter project...
 
My picture seem to be missing/broken. Any ideas?
Still working if you click on the black spot.

m.JPG
 
The apache2 log file (typically at /var/log/apache2/error.log) can be helpful in diagnosing such issues.

temp_insert.php loads the thermometer icon which must be located at /var/www/img/thermometer.png. The icon file ownership/access rights should be the same as the rest of the files - usually 'pi' in group 'pi' with x0777 privs.

$ sudo chown pi pi /var/www/img/thermometer.png
$ sudo chmod 777 /var/www/img/thermometer.png


If the file is in the right place and the rights are correct it should just work...

Cheers!
 
I was able to get this all set up with the scrolling text by follwing tge instructions on page 12. Thanks for the instructions and the project.
 
Tx will have a look.
Have you guys notice this..
Saw it on post #104 as well when I clicked on "day trippr's" link and then click on the temp icon.
It is not always there only the odd time it will show up.

I've seen this a couple of times (literally, twice) and both times a second click worked.
I haven't looked into it yet, but it definitely is something that cropped up with the scroller addition...

Cheers!

[edit] This is likely an artifact of the way the icon file (with its url link to the logger gui) gets re-loaded with each tick of the scroller. Possibly a candidate for refinement as a winter project...

I can help, I can help! I noted this back in a previous post - the "a href" reference for the thermometer image for one of the channels, I believe CH0, includes </?php> after the php echo section. It looks like a typo, and would explain why it only happens some times - IE, only when your display is showing Channel 0. You can confirm by doing a mouse-over of the thermometer image and looking at the link display - when the image changes to the right channel, the link will change to include </?php> after it. Go into the code, find the right channel (again, I'm pretty sure it's CH0) and remove the </?php> and you should be golden.
-Kevin
 
So I know rpints v2 uses an Alamode for the flow meter and I'm guessing an uno can be as well, but I was thinking...which is always dangerous. I found some code for a simple uno temp controller and was thinking of using that with this setup for s more complete keezer solution. You get logging, tap list, flow meters and temp control in one unit. It doesn't need to be pid which the code I saw earlier wasn't, so the code should be relatively small. Any thoughts or plans? I want to keep playing but don't have the cash for 4 flow meters just yet.
 
I can help, I can help! [...] the "a href" reference for the thermometer image for one of the channels, I believe CH0, includes </?php> after the php echo section. It looks like a typo, and would explain why it only happens some times - IE, only when your display is showing Channel 0. [...]

Kevin gets a :eek:nestar: for spotting the bug!
And thanks very much for that, I appreciate it! Sorry I missed it the first time you noted it.
I took out the extraneous tag and indeed it's all good now.

I've updated the temp_insert.php file on my Google Drive.
I think this has made it far enough that I'm going to bundle it in the original logger kit with the rest of the add-ons.

For those who just want to fix their existing files, open /var/www/temp_insert.php, go down to line 49 where you'll see:

Code:
?>&deg;<?php echo $cf; ?> <a href =\"http://<?php echo $url; ?>/cgi-bin/<?php echo $gui_file; ?>[b][COLOR="Red"]</?php>[/COLOR][/b]\"><img src=\"img/thermometer.png\" height=\"100\" align=\"top\"></a>";

Note the bold-red tag is extraneous and needs to disappear.

Change this to:

Code:
?>&deg;<?php echo $cf; ?> <a href =\"http://<?php echo $url; ?>/cgi-bin/<?php echo $gui_file; ?>\"><img src=\"img/thermometer.png\" height=\"100\" align=\"top\"></a>";

and you'll be up to date.

Cheers! :mug:
 
[...]I found some code for a simple uno temp controller and was thinking of using that with this setup for s more complete keezer solution. You get logging, tap list, flow meters and temp control in one unit. It doesn't need to be pid which the code I saw earlier wasn't, so the code should be relatively small. Any thoughts or plans? I want to keep playing but don't have the cash for 4 flow meters just yet.

You'll need to elaborate a bit as I'm not getting "logging, tap list, flow meters and temp control in one unit" from a "simple uno temp controller". If such a thing exists already, I'd love to see a link.

My "BrewPints" box pictured earlier is pretty much the opposite of "simple" considering it has the RPi, AlaMode, Uno and a relay board to run my keezer compressor, provide the metered tap list and my temperature logger data to the interwebs, and manage my motion sensor-driven stuff. And whatever else I come up with (there's a list of "maybes" ;))

But, I don't see any Uno doing more than half of that at best...

Cheers!
 
Uno and a relay board to run my keezer compressor,

sorry but ^ that is what i meant. i want to add an uno to run my keezer. are you using brewpi code to do that?

simple is relative. i'm talking one boxed setup that does part of what it appears you are already setup for. so it's kind of simple to have RasPints w/o flow meters, this temp logger and a uno running the keezer, at least after reading your setup description. I was just hoping to figure out how you are doing it.

Thanks!
 
Ok, I think I get you now.

So there's this enormous BrewPi thread that FuzzeWuzze kicked off when there was still snow on the ground (here, anyway) that hooked quite a few folks.

BrewPi was intended to be a fermentation chamber controller and uses an Arduino (typically an Uno or Leonardo) as the actual controlling element, with a RaspberryPi (or equivalent - like Debian running on an old peecee) providing web access to a management gui and data charting. But some folks are using it to control their kegerators/keezers instead, and that's my intention. I just had to add the Uno and the BrewPi code (and quite a few supporting packages) to what I already had/needed. I've been testing this extensively and feel it's going to work quite well.

Check out the BrewPi thing, you might find it's a good fit...

Cheers!
 
https://www.homebrewtalk.com/f51/ho...roller-cheap-466106/index147.html#post6329253

post 1465 is my brewpi.

i used it to control my keezer for a while and it worked fine. Page loading got a little slow as it got close to a month. My original intention was to just try to add brewpi on to this.

I was just looking around for other temp controller options. something a little more simple that would only need one probe and could be linked to the tap list controlled from a simple interface where temp and variables could be set.
 
I guess i could just set a link to the brewpi interface and be done with it. No reason to try an reinvent the wheel. so sorry for the rambling.
 
I'm looking at adding this to my kegerator (thanks for all the work Day_Trippr) and have a question about the size of the database.

If I add 5 temp sensors and they write to the db every 5 minutes (1440 writes per day) will the database size eventually grow to the point of affecting the performance?

Is there something in the code that limits the size of the database? Is this something I should even be worried about? Do I need to occasionally go in and purge the database?

Gathering the parts now!
 
Over time you can definitely "feel" some delay as the database grows and the engine has to paw through larger tables. It never seems onerous but unless you need data going back beyond the scope that the gui provides you might as well clean out the old entries every so often.

So I wrote up a python script to purge the database back to the last 200 hours. The write-up is here, and a copy of the purge_dbase.py script is inside the kit on my Google Share here

You can run this from the CLI periodically, or add a crontab entry for the www-dat account to run it as often as you like:

Code:
$ sudo crontab -e -u www-dat

Add the task (make sure the path and file names match your installation).
The value 1440 is in minutes and equals 24 hours, so this would run the purge script daily.

Code:
*/1440 * * * * /home/pi/purge_dbase.py

Save the crontab (^O) and exit (^X) and the new crontab will be automatically loaded...

Cheers!
 
Wow, what a fantastic response to my question. Answered the question and then provided an excellent solution. Keep up the great work day_trippr.


Sent from my iPad using Home Brew
 
Feature Creep

One thing that I've always wanted to know was how long the compressor runs on my keezer when it turns on during a cycle. While my air temperature channels give a ball park that would probably be fairly close on a fridge, chest freezers have a "cooling inertia" that really doesn't exist with fridges. A good chunk of the falling air temperature slope occurs well after the compressor is off.

As I was building my new system I provided a way to monitor the compressor on my keezer - even if BrewPi isn't actually running the keezer.

For a more conventional system run solely by a BrewPi instance, one would daisy-chain the BrewPi relay controls through a simple voltage divider (1K/1K) to bring the Arduino's 5V signals down below the 3.3V limit for the RaspberryPi GPIO pins.

I have an MH1210 single stage controller mounted in the front of the keezer lid that runs it now by switching a hunky relay located in the dolly, and it would be a back-up to BrewPi in the future.

So my new system has a panel mounted switch to select who runs the keezer - BrewPi or MH1210 - but I still wanted the temperature logger to be able to track the compressor state. As the hunky relay control from the MH1210 passes through the new box I tapped off the control signal with a voltage divider to drop the 12VDC coil voltage down below 3 volts before sending it to an RPi GPIO pin.

I've been running the new box in my office for the last week and doing some tweaking along the way, and tonight cobbled up the code to monitor the compressor state, translate the "On/Off" into "temperature" values, then added a column to the logger database for them.

Finally, I added the new column to the web gui graphing routine. Obviously my office is a bit warmer than my beer - and I've been correlating all of the probes on the system so they're all tracking tight - but you can see the "Compressor" toggling as BrewPi tries to change the room temperature to match me changing the Beer Temperature setting.

I just have a bi-state version running as there won't be a heater in my keezer and obviously the temperature in my office is well above my beer, but the idea would be to position the plot for the compressor above the keezer probe readings and below the room temperature curve. The code that writes the database has parameters to specify the values to use - I expect 45, 50 and 55 will work for "Cool", "Off" and "Heat" respectively without impacting the chart scope or overlaying the other traces.

The time bases of the two plots are way different (24 hours vs 2) so it might be hard to picture how this helps - but I'm confident it will :)

Can't wait to get this thing installed!

Cheers!

temp_logger_w_comp_state_02.jpg


temp_logger_w_comp_state_01.jpg
 
fwiw, the temperature "scroller" add-on does not re-read the logger database on its own - it grabs the last record and just recycles that data endlessly, unless the page is refreshed, either manually or when a pint is poured.

Adding a meta refresh tag to the RaspberryPints index.php file solves that fairly well. If set to something like 5 minutes it'll keep up with the current temperatures pretty closely (not a heck of a lot happens in five minutes in my keezer and I'm sure that's not unique).

So...to do this, edit /var/www/index.php.
Find the line that contains "<meta http-equiv="Content-Type"...", which should be around line 64.
Add this line immediately following the above, with the same indent level:

Code:
<meta http-equiv="refresh" content="300">

The numeric value is in seconds; 300 would be five minutes.

Save the file and you're good to go.

Tip o' the virtual fedora to sloescher for the above. I just realized how handy this is with the scroller running...

Cheers! :mug:
 
Adding a meta refresh tag to the RaspberryPints index.php file solves that fairly well. If set to something like 5 minutes it'll keep up with the current temperatures pretty closely (not a heck of a lot happens in five minutes in my keezer and I'm sure that's not unique).

So...to do this, edit /var/www/index.php.
Find the line that contains "<meta http-equiv="Content-Type"...", which should be around line 64.
Add this line immediately following the above, with the same indent level:

Code:
<meta http-equiv="refresh" content="300">
This is not working as intended. I'm leaving the code up as someone else might find the problem.

This is fine for a quick fix and I myself used this originally to refresh. The problem with this is it refreshes the whole page so everything has to be reloaded and thus puts a lot of extra work on to the Pi. I have webalizer running for the Pi so I can see who visits my Pints page so I notice it slows down on a full page refresh. If you are watching the screen at the refresh time you may see that it takes awhile to fully load.

A less intrusive and less intensive way to do this is to just refresh the the section we want, not the whole page.

So where you have
Code:
<meta http-equiv="refresh" content="300">

we delete that entire line and replace with
Code:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
		<script>
			function autoRefresh_div()
			{
				$("#temprefresh").load();
			}

		setInterval('autoRefresh_div()',60000); //every 1,000 = 1 second
		</script>
This is under the assumption that you are continuously connected to the internet. If not then you would have to download the jquery.min.js package into your /var/www folder and then call it as localhost/jquery.min.js (I think, I haven't tried calling it locally)
and we then replace our insert code
Code:
<?php include'temp_insert.php'; ?>
with this
Code:
<div id="temprefresh"><?php include'temp_insert.php'; ?></div>

I have mine set at 1 minute (60000) as I have a clock added to the temp_insert.php.

You can set the timer shorter but don't set it any shorter than the time it takes for all your sensors to scroll through.

As always to see it working go here. If you visit you may have to wait up to 1 minute to see the temperature as it is set to 1 minute refresh.

[rant]Why did this get moved to fermenters? This should reside and be attached to anything RaspberryPi[/rant]
 
Last edited:
Ok, I think I like the idea, though to be honest the "extra load" seems trivial: even with everything I have running on my wee RPi, my remote page updates in a blink.

So I made all of the changes to my index.php, including changing out the temp_insert reference for the temprefresh reference. When I reloaded the page, the scroller doesn't appear, then some number of seconds later the page goes totally blank. Nothing showed up in the apache2 error log, so I'm not sure what happened.

I'll have to give this another try when I get a chance - today I'm about to take the lid off my keezer for an extensive upgrade so I'm pressed for time...

Cheers!
 
Ok, I think I like the idea, though to be honest the "extra load" seems trivial: even with everything I have running on my wee RPi, my remote page updates in a blink.

So I made all of the changes to my index.php, including changing out the temp_insert reference for the temprefresh reference. When I reloaded the page, the scroller doesn't appear, then some number of seconds later the page goes totally blank. Nothing showed up in the apache2 error log, so I'm not sure what happened.

I'll have to give this another try when I get a chance - today I'm about to take the lid off my keezer for an extensive upgrade so I'm pressed for time...

Cheers!

Seems to be something in the scroller javascript causing this but there is a fix and I'll update my original post to include it. The fix doesn't seem to refresh and I can't find what is causing the error. Hopefully someone else can take a look at it. It does work on my RPi as I use a different code then the temp_insert.php file
 
First, thanks for taking the time to write this up.

I have mine working (sort of). I have 5 temp sensors and they are all scrolling and apparently I have a bad DS18B20 because in the scrolling display and when I run test_sensors.py they both show a temp of 262 degrees for the one sensor (the others read fine). I don't have a problem replacing the sensor but I thought the "hibound" and "lobound" settings would keep this from displaying any temp below lobound and any temp higher than hibound.

Have I missed something?
 
I didn't want to dump the user into an endless loop, so on each polling cycle I give each probe one retry to be "in bounds", then just use whatever data the second read obtains. In my experience once a system is up and running the odds of a bad probe poll is pretty small and a single retry will filter out the outlier reads, but that obviously doesn't cover a bad probe. The code is thus optimized for the normal case.

The only time I ever get a "spike" in a plot now is occasionally on first power-on. I've considered running the python probe test script during system start-up just to wake up all the probes to see if it eliminates that issue, but it happens so rarely I haven't been motivated enough yet :)

Cheers!
 
Back
Top