Monitoring/controlling with Linux on the cheap

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.
RJ-12 6x6 - that's what the USB plug uses, so I kept it consistent throughout. My wiring follows the Dallas Semiconductor pinout, so off the shelf components should be plug and play.

The system is now slightly more accurate, giving me decent results up to around 180ºF. The sensors still fall short as temps approach boiling.
 
That's what I'm going to use too, as I have the USB dongle and I found a RJ-12 die for my crimper.

That's disappointing the sensors are not more accurate at higher temperatures, but I guess they'll be fine for what I'm going to use them for. I'm only going to monitor HLT, Mash, and Cooling temps for now.
 
Bumping this thread to let me dump my thoughts on a project. I have 17 days of vacation starting next week, so I'm hoping to get this done.

Going to grab the assembled 8 channel kit from Hobby Boards:
http://www.hobby-boards.com/catalog/product_info.php?products_id=1554

4 DS18S20 sensors:
http://www.hobby-boards.com/catalog/product_info.php?products_id=93

Leviton 4port wallplate:
http://www.amazon.com/dp/B000U39WO2/?tag=skimlinks_replacement-20


4x Leviton RJ45 QuickPorts:
http://www.amazon.com/dp/B000U3DY78/?tag=skimlinks_replacement-20


Large project box:
Haven't found yet

USB adapter:
http://www.hobby-boards.com/catalog/product_info.php?products_id=1503

Weldless bulkhead:
http://www.brewershardware.com/Weldless-Bulkhead-1-2-MPT-X-1-2-FPT.html

2" heat-shielded thermowell:
http://www.brewershardware.com/2-Heat-Shielded-1-2-MNPT-Stainless-Steel-Thermowell.html

I'll put the 1-wire switch in the large project box with an 4-port RJ45 wallplate connected to 4 of the inputs. DS18S20 will go inside the Brewer's Hardware thermowell on my kettle. Another DS18S20 will be for ambient temperature. A third will go to my mashtun after this is proven to work. All DS18S20s will be wired with RJ45 on CAT5 back to the enclosure. Enclosure will connect with RJ45->RJ11 cable to 1-Wire USB adapter. OWFS will provide the interface. PHP script will update MySQL database with temperatures (Either cron on CentOS or scheduled task on Windows depending on my mood). Simple website will display information. iPad app will allow setting timers and monitoring temperatures. Scheduled PHP script will send SMS updated every X minutes with temperatures and timer count. I wont be using any of the relays on the 1-wire switch. Not initially anyway.

Am I missing anything?
 
Last edited by a moderator:
this is friggin awesome. Im a programmer but haven't worked on anything embedded like this. So once you have linux and the required packages installed, and the devices wired, they just automagically start writting out to files? How do you configure the sensors, say to read in celsius for example? How are you hooking the system up to your network, these boards dont seem to have a NIC....
 
Huzzah for bumping this thread. I got sample sensors in the mail, but haven't bought the usb adapter-- relatively new desktop has no serial port.

This has so much potential for kits, plug-n-play monitoring solutions, etc. Please post with progress! I'm a few weeks behind ya...
 
That said, if you're aiming for eventual temp control instead of monitoring, I'd get all that worked out with cron and bash scripts before jumping into websites and ipad apps. But then, I'm alot better at the CL than web developing.
 
this is friggin awesome. Im a programmer but haven't worked on anything embedded like this.

This isn't really embedded. Much easier. :)

So once you have linux and the required packages installed, and the devices wired, they just automagically start writting out to files? How do you configure the sensors, say to read in celsius for example? How are you hooking the system up to your network, these boards dont seem to have a NIC....

The 1wire devices require no configuring - just wire 'em up and they work. Very simple. The devices don't really write to files - OWFS creates a faux file system structure that can be used to read or write to the 1wire device by your app (using whatever language or script you want).

You connect the 1wire devices to your system via a 1wire adapter. There are 1wire adapters for serial ports and USB ports. They run about $30 each.
 
That said, if you're aiming for eventual temp control instead of monitoring, I'd get all that worked out with cron and bash scripts before jumping into websites and ipad apps. But then, I'm alot better at the CL than web developing.

True, but understand it's really not that hard. Whip up a quicky script to test out your concept (read a sensor, turn a switch on/off, etc) but after you have the hang of that (15 mins) go for it. I posted a PHP class a while back that simplifies the interface a bit, so you can start with that if you like.
 
Thanks Gator for the clarification. So just to make sure i understand. The USB/serial adapter is placed on a pc running linux. There is RJ45 from it to the I/O board. Than from the I/O board to the probes is more cat 5 (directly soldered to the board??)

So you basically have to have a PC within cable range of your brew rig?
Thanks!
 
That's pretty much it. However, you can load OWFS on an old Linksys router so a computer isn't necesssarily required. And, if you want to use a computer, almost ANY OLD machine will run it fine.

I am using a fairly old Dell laptop to play with. There are TONS of very small old computer for hardly any money on ebay.
 
Wow! This is awesome! I definitely foresee myself working on this project as soon as I get a good fermentation chamber setup. I've recently built a fan controller for my BBQ smoker (using Arduino), so this seems pretty doable as well. I work in IT, so I've got plenty of old computers around, so a few parts, and a small bit of soldering and I'll be good to go! Thanks for sharing your info!
 
Playign with this at work and I can't seem to get the device to work. I get a no valid 1-wire device error. I have tried searching for the device, but to no avail.

I'm running Slackware 13 and it almost seems as though...

hold on.

dam. simple reboot got it to show up.
 
My Hobby Boards order finally arrived (a couple of weeks after placing it), and I got a chance to do some tinkering today.

I was a little worried when I read this but my order just shipped. Shipping priority mail from the next state over, so I "should" have it before Veteran's Day on Friday.
 
RJ-12 6x6 - that's what the USB plug uses, so I kept it consistent throughout. My wiring follows the Dallas Semiconductor pinout, so off the shelf components should be plug and play.

The system is now slightly more accurate, giving me decent results up to around 180ºF. The sensors still fall short as temps approach boiling.

Have you figured out anything what the problem is with 180F+ temps?
 
What would be an alternative to the thermowell? Just making it myself?

#1: Put the sensor I use a piece of copper tubing (1 end closed) and fill it with epoxy.

#2: Use a looped piece of copper tubing, put your (sealed) sensor in it, fill with enough water to cover the sensor. My (10 gal cooler) HLT is rigged this way - the tubing goes in the top, down about 18", does a 180 back to the top and exits the top. A small hose clamp keeps it all in place.

#3: I doubt these are the only two ways to skin this cat. :)
 
Have you figured out anything what the problem is with 180F+ temps?

Maybe I'm lucky, but my 1wire temp sensors are pretty accurate. They're all within 0.5 degrees of each other, and the old glass/mercury thermo I have.
 
Maybe I'm lucky, but my 1wire temp sensors are pretty accurate. They're all within 0.5 degrees of each other, and the old glass/mercury thermo I have.
Are you using parasite power? I rewired mine to use pin 1 for power (per the datasheet). It helped, but I still get wild inaccuracies above 160º F. This is true for all three of my sensors.
 
Are you using parasite power? I rewired mine to use pin 1 for power (per the datasheet). It helped, but I still get wild inaccuracies above 160º F. This is true for all three of my sensors.

Yes. How are you mounting your sensors? Epoxy? Perhaps you have a bubble or two locked up with it (common prob with epoxy mounts). Mine are in water (for various reasons).

I just ran the 5'th batch (Amarillo IPA) through this rig yesterday and everything is coming out spot-on. HLT sensors (2) and glass thermo agree at 163, mash sensor and glass thermo read 152 (after settling). Glass thermo and sensors are within 0.5 degrees of each other.
 
My HLT 1-wire controller. Made from spare parts I had laying around. :)

_DSC4512.jpg


inside:
_DSC4515.jpg
 
Are you using parasite power? I rewired mine to use pin 1 for power (per the datasheet). It helped, but I still get wild inaccuracies above 160º F. This is true for all three of my sensors.

Any chance the vessel is acting as a heat sink for your probe?

My boiling point is 200F, give or take a degree for weather, and my RTD typically shows 192 or so until I turn the pump on (my probe passes through a tee into the kettle). Then it settles right around 200.

Granted, the DS18S20 accuracy drops off at the extremes but it still should be +/- 2C over its rated range. Another thought - what frequency are you polling the sensor? As I recall, the DS18S20 needs like 750ms to perform and store a sample.
 
Any chance the vessel is acting as a heat sink for your probe?

I'm using a Rubbermaid cooler for my HLT. The lid and interface:

_DSC4517.jpg


It's not a heat sink. :)

Granted, the DS18S20 accuracy drops off at the extremes but it still should be +/- 2C over its rated range.

The rated accuracy is 0.5C over the range of -10C to +85C. At 200F, you are outside that range. Curious: what are you monitoring at 200F?

Another thought - what frequency are you polling the sensor? As I recall, the DS18S20 needs like 750ms to perform and store a sample.

I read it every 15 seconds. That 750ms is the *max* it needs to convert. In practice it converts much faster.


DS18S20 datasheet. :)
 
I'm using a Rubbermaid cooler for my HLT. The lid and interface:
It's not a heat sink. :)

That's great GatorDad, but I think you're a bit confused.

I was just spitballing ideas at Yuri, not you. I'm relatively certain his vessels are metal. I'm also aware of the DS18S20 datasheet. While I don't use them in my brewing system, I've worked with 1-wire protocol devices extensively in the past. :fro:
 
That's great GatorDad, but I think you're a bit confused.

LOL. Yea, I though that was Yuri talking to *me*. I'm gonna blame the post-op drugs. :)

I was just spitballing ideas at Yuri, not you. I'm relatively certain his vessels are metal. I'm also aware of the DS18S20 datasheet. While I don't use them in my brewing system, I've worked with 1-wire protocol devices extensively in the past. :fro:

OK, but the numbers you quoted are not accurate. Hence my post. :)
 
I don't poll very fast at all. Once per second, max. Usually more like once every 5 seconds.

The heat sink concept isn't valid. The kettle/thermowell temperature will lag the temperature of the liquid it holds, but should reach equilibrium.

There may be an air gap between the sensor and thermowell, but I just can't believe that it would induce up to 30º inaccuracy.

I'm at a loss.
 
The heat sink concept isn't valid. The kettle/thermowell temperature will lag the temperature of the liquid it holds, but should reach equilibrium.

There may be an air gap between the sensor and thermowell, but I just can't believe that it would induce up to 30º inaccuracy.

I'm at a loss.

I can assure the heat loss is valid. I see it every time I brew. Granted, mine may be exaggerated by the tee and I sure don't see 30 deg error, but it exists.

I've personally never used DS18S20s north of 100F so I can't say if this is is normal but I'd hope not.
 
OK, but the numbers you quoted are not accurate. Hence my post. :)

Just curious what I posted that wasn't accurate. I pulled the 750ms from memory and after glancing at the datasheet, I was correct. Granted, as you said that's the max value but I see no reason in brewing to poll less than once a second.
 
Just curious what I posted that wasn't accurate. I pulled the 750ms from memory and after glancing at the datasheet, I was correct. Granted, as you said that's the max value but I see no reason in brewing to poll less than once a second.

"needs like 750ms" and "+/- 2C over its rated range".

Both are in error, but please allow me to be clear: I have no interest in splitting hairs with you on this topic. Lets have a beer instead.:)
 
There may be an air gap between the sensor and thermowell, but I just can't believe that it would induce up to 30º inaccuracy.

I'm at a loss.

Yuri,

At what temp are you seeing 30º error's? High or low? What kind of epoxy did you use (slow or fast cure)?
 
Back
Top