What would it take to build a web-accessible temp monitor?

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.

Homercidal

Licensed Sensual Massage Therapist.
HBT Supporter
Joined
Feb 10, 2008
Messages
33,269
Reaction score
5,708
Location
Reed City, MI
I have a web server and just wondered what would be needed to put the out put online? I'd probably want to use a thermowell probe directly into the wort, but am also considering attaching to outside of ferm bucket.

I'd like the page to show current temp as well as a history of the fermentation and possibly a graph.

I'm smart enough to do basic HTML and can follow simple instructions if I am not distracted by shiny objects.
 
Looks kind of expensive. I was thinking more along the lines of a homebrew (pardon the pun) system with a temp probe, a device to read it and transfer to a PC running Linux, possibly the web sever itself (although actually probably not). The Linux could maybe update a log file which updates the web page via a script.. Something like that?

I'm not good on the details and have no knowledge of what might be available for hardware to read the probe and output the data to a computer. Serial, USB, LAN, etc...
 
a super easy way would be to script a cheap webcam to take a pic of the temp (either periodically or triggered by visiting the website). although thats not a good way if you want a graph...
 
That dataq looks interesting. Looks like it can do a ton of stuff for not much money.

I also found this on Ebay. Looks like it is almost custom made for this sort of thing. Could either write simple program to receive data from RS232, or use Hyperterminal in Windows to collect data.

Looks like there is a least a couple of options that might work good for a homebrew setup.
 
I was thinking of doing something like this with an Arduino and a wifi or Ethernet shield. This would give you control the fermentation temperature (with a fridge and/or heater) and log temperatures. You could even log how long you ran your heat/cooler, and program a temperature regimen for your fermentation. Although this all takes a fair bit of electronics and programing skill.
 
Heh i was about to post my other thread but someone beat me to it.

For just temperature sensing, it isn't hard to log the readings from 1wire sensors to any number of graphing methods. If you're not super wiley with scripting, this app will do it all for you and even FTP the html and images to a webserver for you: http://www.mrsoft.fi/ohj01en.htm
 
Oh i didn't realize the original poster wasn't clear on how to do the sensors.

This is a prebuilt box that I first got to learn how it all worked. You need the box and a USB connector, it uses a cable with RJ45 on one end (normal ethernet) and RJ11/12 on the other (telephone)
http://www.hobby-boards.com/catalog/product_info.php?cPath=22&products_id=109

Once you figure that out, you can then just order the chip themselves and wire them up how ever you need (no circuit board at all is needed, just the chip and cables). I ordered stainless steel probes that fit the chip perfectly from HBT member Derrin that now runs this site: http://www.brewershardware.com/Temperature-Probe-Ends/

I'll document in more detail how i've done my system one of these nights.
 
I'll post pictures of it tonight, but what I have going with regards to beer in my system is currently only two sensors in my makeshift fermentation tent. I have insulation in a circle (leftover wall type, yeah i know don't touch it, etc..), with sleeping bags covering it. It's by no means permanent - just while my current batches brew in the cold basement.

One sensor is duct taped to the side of a carboy, another is going into a mason jar of water. I have a heating pad on the low setting, sitting flat on the ground that 3 carboys are on top of, and is connected to a ranco temperature controller.

Currently I have the water sensor in the middle as well. Because this heats up so fast, i just use it currently to know when the heating pad kicks on. I have the data feeding in a linux server running software called Cacti that graphs it for me and has a web server.

Ghetto-tech-fabulous. Just my stylee. I'll make it more permanent with more sensors and some of that insulation board people post about one of these days.
 
Oh i didn't realize the original poster wasn't clear on how to do the sensors.

This is a prebuilt box that I first got to learn how it all worked. You need the box and a USB connector, it uses a cable with RJ45 on one end (normal ethernet) and RJ11/12 on the other (telephone)
http://www.hobby-boards.com/catalog/product_info.php?cPath=22&products_id=109

Once you figure that out, you can then just order the chip themselves and wire them up how ever you need (no circuit board at all is needed, just the chip and cables). I ordered stainless steel probes that fit the chip perfectly from HBT member Derrin that now runs this site: http://www.brewershardware.com/Temperature-Probe-Ends/

I'll document in more detail how i've done my system one of these nights.

I have basic knowledge of how a system might be put together, but need to make sure the sensor matches the reading device. I have a thermowell for last year that I never got a sensor for. I can probably do a bit of scripting with a bit of help.

That board looks like just what I need to get started. I'll have to dig into this a bit more tomorrow. Time to get going and blow out the driveway. May I PM you with questions later?
 
Okay so after a bit of reading, I think I got an idea of what goes on here.

Get a serial or USB adapter for a computer
Get a Temp Adapter
Wire Temp Adapter to Main Adapter using CAT5 cable
Wire any other Adapters to Temp Adapter OR Hub
Install software and Driver on PC
Collect data...

I think the beauty is that the individual adapters are pretty inexpensive and you could build a whole monitoring system for mot a lot of money. It almost seems like the hard part will be setting this up to feed into a web server, and honestly, if the FTP feature works as it looks like, that should be a piece of cake as well...

EDIT: I guess the only question I have right now is: Is there a way to replace the on-board temp sensor with a remote sensor, like in a thermowell? Seems almost as easy as soldering on a connector instead of the thermistor on the board.
 
nice looks like you can drive SSR's with it.
SSR's maybe, might need an intermediate SSR before driving a big one. In my design I need to switch an electromagnetic contactor relay. In that case I definitely need an intermediate SSR. I think the issue is that although each of the eight digital outs can drive a certain milliamp, the whole bank can only drive a smaller combined amount. Something like 10 ma each, but a total 50ma for the bank. I can look that up if someone needs the specifics.

It has a usable web-interface, but I am looking to develop my own face for it with dials and switches one single web page. HMTL, javascript, php, and mysql are the building blocks.
 
I'm working on something similar. Using a PHP/MySQL/Apache setup for the web server then using an arduino/voltage division to convert the analog 0-10 Volt temp readings from the 6 existing ranco controllers to digital via usb and then capturing the data on the PC side and writing a new row into the temperature tables at timestamped intervals. This allows me to view current temp as well as historical in graphical representation via queries in PHP. The beauty is that all of the software is FREE!!!! The arduino and associated parts are about $40. A little time spent with some basic coding and a little troubleshooting here and there gains you some great experience and the ability to expand your horizons when simple temp displays aren't enough....
 
I'm working on something similar. Using a PHP/MySQL/Apache setup for the web server then using an arduino/voltage division to convert the analog 0-10 Volt temp readings from the 6 existing ranco controllers to digital via usb and then capturing the data on the PC side and writing a new row into the temperature tables at timestamped intervals. This allows me to view current temp as well as historical in graphical representation via queries in PHP. The beauty is that all of the software is FREE!!!! The arduino and associated parts are about $40. A little time spent with some basic coding and a little troubleshooting here and there gains you some great experience and the ability to expand your horizons when simple temp displays aren't enough....

I really need to try an Arduino in a project as I can't find everything I want to do in 1wire devices. Could you specify what your exact parts are that total to $40?
 
Another big +1 on the arduino. If you're looking for something (relatively) out-of-the-box, the board equill mentioned earlier looks quite good. But arduino is definitely the Mr. Beer of embedded micro controllers. I've moved on to slightly more complex things, but I still use the arduino to prototype new designs or when I'm in a hurry.

The arduino is basically just a microchip with a bunch of in/out pins (some digital, some analog) that can be controlled by a piece of software. It's got a usb port, which makes it easy to program. If you've got a grip on basic C, it's relatively simple to program it to read sensors, drive servos, process data, run LCDs, etc. It would handle the kind of project described in the OP quite handily. I've got something similar running in the other room right now.

The arduino will hook up to a computer to feed data directly via USB, or you can connect it to a network via Ethernet or wifi. Networking makes things a bit more complicated, but still manageable. A relatively simple setup might look like this:

Arduino ($30) - brains of the project; reads the temperature probe, processes logic to turn on and off the relay that controls the heater/cooler, sends data to and receives commands from your web server. There are cheaper options, but they require a bit more investment in equipment and a bit more knowhow. If you have access to a digital programmer, for example, you can build something with the functionality of an arduino for about $10.

Server interface ($0 to $60) - The cheapest and simplest solution here is to just have the arduino feed data to a computer over USB. This requires a computer next to where you'll be fermenting, but it's cheap and straightforward. At the other extreme, the very cool $60 WiShield from Async labs will let you run your arduino as a server over a wireless network. You could either host a web page directly or use it to feed data to another site. You could do the same thing over ethernet for about $25 in parts. If you're more ambitious, you can save money by using an XBee radio network, but that gets complicated.

Temperature sensor (<$5) - There are a lot of options here, but I'm a big fan of the 1-Wire sensors (like the DS18B20). I've used thermistors and other analog components before, but if you want a long cable on your temp probe it can be a major pain to manage interference properly.

Relays (<$5 to $20; need two if you want both heating and cooling control) - If you want to control a heater or a cooling device from your arduino, you need something to switch the AC power coming from your wall on and off. A relay is basically just a high-power switch controlled by a low-power signal. These can be built relatively easily, but if you are unfamiliar with electricity I would encourage you to consider buying something prebuilt like this. None of this other stuff is dangerous. If you screw it up, at worst you'll just fry your equipment. The 120VAC/220VAC coming out of your wall can kill you if you don't know what you're doing.

Miscellaneous wires, resistors, breadboard, etc. (<$10) - just stuff to connect everything up.

Let me know if you need help finding specific parts or want more info. The board equill posted is probably easier and possibly cheaper, but arduino gives you a lot of flexibility. I'm working on a system right now to control my stovetop HERMS, have another that ferments yogurt in a crockpot for me, and yet another to let my young son control the music in his room. None of it is that practical, but then again not much we do here is :mug:

-malfet
 
malfet, great summary! I'm looking for a cheaper diy replacement for a ha7net device. My time is starting to get slim so it is sounding like the doing it entirely myself route will be more expensive in both time and money... we'll see...
 
I'm not looking to control anything. The 1-Wire stuff looks great for recording temps. The company explained that instead of wiring a temp adapter to the USB device, I could simply wire the 1-wire temp sensor directly to the USB device. But either way it's not expensive. The actual Temp Sensor is about the size of the sensor the people are putting into thermowells, but it has communication capabilities, so it can send data directly to the 1-Wire network.

And I think the software that you can get for free will FTP the data directly to a webserver. (Or maybe with minimal assistance.) At any rate, for about $35 it looks like I could get started with this. All I need is one more thing to take up my precious time!
 
If you don't need control and you can keep a computer next to your fermentor, it's easy as pie. All that temp adapter does (as far as I can tell from the schematic) is to interface the 1Wire sensor to RJ12 phone line. You should be able to wire up the same thing with a soldering iron. If you have a serial port on your computer, you don't even really need the usb dongle.

A 1Wire "network" is generally just a bunch of 1Wire sensors hooked up in serial. That's what's so great about them; the sensors themselves have a robust addressing system built in so the code handles all the legwork.

With that setup, an arduino and this USB interface would be doing exactly the same thing, which is just to translate 1Wire-speak to a tty line. One gives you more flexibility, the other requires less coding, so it's just personal preference at that point.

Make sure you get some more specific wiring instructions before you decide to skip the temp adapter, though. 1Wire devices often need a pull-up resistor bridging the power and data lines, and I couldn't tell from the usb device's description whether or not it takes care of that for you. I suspect not. If not, you can certainly whip something together less complex than a full PCB, but you will need to do some soldering, etc.
 
I don't think the output from a 1-wire sensor is "human readable", that is, it needs to be decoded and formated for normal person to read. Am I correct? Edit: The software from the vendor might take care of some of that. Can the software export readable data?
 
I don't think the output from a 1-wire sensor is "human readable", that is, it needs to be decoded and formated for normal person to read. Am I correct? Edit: The software from the vendor might take care of some of that. Can the software export readable data?

You are correct. What's more, the 1Wires don't just sit there and provide a constant output value convertible to temperature like a thermistor would. You need to send them a temperature-read command, wait an appropriate amount of time, and then read a memory register for the digital value. There is some conversion work to be done making those digital values human readable, but it's relatively simple.

I've not worked with any of the direct 1Wire software before, but I've got to imagine that it is capable of making the conversion. I could definitely be wrong on this, but it seems to me that it would be a strange design choice to have the processing happen in the usb dongle rather than in the PC (if only because it would limit compatibility with future devices so dramatically).
 
This is a great place to shop for arduinos or random parts. I also love digikey for bulk parts.

And yes you have to have something convert analog signals(temp probes) to a digital signal that a computer can understand(0011010101). How you get there can be done in a number of ways but for an uber nerd that loves automation etc.. the arduino is the route since I can use it for temp stuff and later add other functions to it on the same board.
 
I have my arduino reading from 2 OneWire temp sensors (in series) and spitting out the temperature on a wee LCD, and it was very easy. It is even easier to have the Arduino spit out the temp through it's USB connection.
Somewhere in the stream of bits the sensor spits out is the temp (along with a sensor ID and probably some other things). But you'll have to translate to a temperature with any type of sensor you get, whether it be an analog voltage or a digital signal. And while it is true that it is not a continuous signal like a termistor or other analog device would be, it's more than fast enough for brewing.
For the OneWire, there's an available library to use in your arduino code which makes picking out the temp very easy. Check out the write up here:
http://www.arduino.cc/playground/Learning/OneWire
And there's plenty of example code around.
 
I'm not looking to control anything. The 1-Wire stuff looks great for recording temps. The company explained that instead of wiring a temp adapter to the USB device, I could simply wire the 1-wire temp sensor directly to the USB device. But either way it's not expensive. The actual Temp Sensor is about the size of the sensor the people are putting into thermowells, but it has communication capabilities, so it can send data directly to the 1-Wire network.

And I think the software that you can get for free will FTP the data directly to a webserver. (Or maybe with minimal assistance.) At any rate, for about $35 it looks like I could get started with this. All I need is one more thing to take up my precious time!

Just curious about how this turned out. Were you able to get the OneWire sensor hooked up directly to your computer using the USB dongle? Did you have to do any wiring?
 
I have already recieved a 5-pack of temp sensors (look like small transistors) but have yet to purchase a USB dongle. If I can remember to look them up again, I'll probably order one soon. The Ebay site claimed a few weeks on the sensors, so I wasn't in a hurry to get the dongle, but they ended up in my mailbox right quick.
 
I have already recieved a 5-pack of temp sensors (look like small transistors) but have yet to purchase a USB dongle. If I can remember to look them up again, I'll probably order one soon. The Ebay site claimed a few weeks on the sensors, so I wasn't in a hurry to get the dongle, but they ended up in my mailbox right quick.

Nice! Keep us posted if you don't mind. Like I said, I'm curious to see how this turns out.
-malfet
 
Yeah, I tend to get sidetracked on projects, but this is one that seems pretty simple and fairly cheap.

Now to reboot my computer so I can format a replacement drive for a guy and while that's going on I can sneak out to the plant and measure the stock for a pair fo gears being cut for my barley crusher... ;)
 
I got my USB adapter this weekend. Messed around with it a bit yesterday and some more today at work.

Basically it's a smallish USB memory stick looking device, with a telephone jack on the end. You can plug in a telephone wire, or network cable with a sensor, or sensors, on the other end. I soldered a raw temp sensor (DS18B20) on the other end of the telephone wire, and installed the USB adapter driver and Logtemp software.

I love this thing! Logtemp allows me to do things such as;
FTP my graph, or current temps to a server (not working for me yet, but I'm still playing with it)
Email alarms using my Email server via SMTP.
Calibrate the sensor if required.
Rename each sensor.
Play a .wav file upon an alarm condition
SET alarm conditions!...

Right now I have it set to email me when the temp gets too high, or too low. This would be nice if I'm fermenting and something happens to the heater, or fridge. I could probably also have this send an SMS or email to my phone, although I have not tried yet. Then I could correct the problem very quickly. Here's a few screen shots for my setup.

logtemp1.jpg


You can see where the first email comes in when the temperature goes above 85F. Then it sends another when the temp drops back down below the high temp threshold (I did not set a low temp alarm).

Then I renamed the sensor to Oktoberfest Lager, and raised the temp again. Again it sends the high temp email, and another email when it drops back down.

logtemp2.jpg


You can place an icon with current reading on your system tray...

logtemp3.jpg


Picture of the graph it shows. You can see the green lights on the right when it does it's thing. The top light is showing that it's currently collecting data. The second one down shows when it's polling the sensors. The third one is obviously when it is doing FTP. A RED box pops up when there is an alarm condition, right under that area.

The only thing I wish it could do is allow you to set the amount of time displayed on the graph. I'd prefer a 4-hour windows instead of the 24 hour default. There may be a way to do this, but I haven't found it yet.
 
That's great. Looks like a super-simple solution.

You didn't need to solder on any kind of pull-up resistor? Did it come with instructions about which terminals on the phone cable each of the legs on the sensor went to, or did you have to figure that out separately?
 
I forgot to mention that the sensor I got came in a very small package, like a small transistor or something. It looks like many of the other temp sensors we would use, and I think it could be inserted into a thermowell like those others too. The difference is that this has the temp sensor part, plus logic and memory and whatnot too.

So I plan to slide one into a SS probe to go into the wort, and another to read ambient air temp, and maybe a third to tell me when the heater kicks on (or the fridge compressor, as the case may be). I only need to make or buy a SS thermowell long enough to reach from the bung, to the wort.
 
Back
Top