The Great Bottle Opener Giveaway

Home Brew Forums > Home Brewing Beer > DIY Projects > Interest check for BrewPi, a Raspberry Pi fermentation controller/data logger

Reply
 
LinkBack Thread Tools
Old 06-03-2012, 01:54 PM   #11
Elkoe
Feedback Score: 0 reviews
Recipes 
 
Join Date: Nov 2011
Location: Eindhoven, Noord-Brabant(NL)
Posts: 21
Liked 4 Times on 3 Posts

Default

Current setup for UberFridge is:
Arduino runs low level temperature control (predictive on-off with PID for the fridge setting), Arduino reads temperatures and drives the LCD display.

The router (linux) runs a python script, which periodically asks the Arduino for data and logs this into JSON and CSV files. This script also verifies the Arduino temperature settings and updates these according to the temperature profile in a Google spreadsheet.

The web server on the router (lighttpd) just provides the web interface. It reads the JSON files from disk and can also communicate directly with the Arduino through a socket. Settings are updated by sending commands though this socket.

Example: To display the LCD text, the web server asks python for the LCD data. Python asks the Arduino, Arduino asks the LCD display. All responses go through the same chain. It's quite a complex communication chain, because of the many layers involved.

The arduino connects to the Pi through USB. With a USB hub in between, it should be possible to run multiple python scripts, all monitoring a different serial port. Multiple Arduinos, one web interface.

__________________
Elkoe is offline
 
Reply With Quote Quick reply to this message
Old 06-03-2012, 03:10 PM   #12
cobolstinks
Feedback Score: 0 reviews
Recipes 
 
Join Date: Sep 2008
Location: Rochester, MN
Posts: 229
Liked 2 Times on 2 Posts

Default

Quote:
Originally Posted by Elkoe View Post
Current setup for UberFridge is:
Arduino runs low level temperature control (predictive on-off with PID for the fridge setting), Arduino reads temperatures and drives the LCD display.

The router (linux) runs a python script, which periodically asks the Arduino for data and logs this into JSON and CSV files. This script also verifies the Arduino temperature settings and updates these according to the temperature profile in a Google spreadsheet.

The web server on the router (lighttpd) just provides the web interface. It reads the JSON files from disk and can also communicate directly with the Arduino through a socket. Settings are updated by sending commands though this socket.

Example: To display the LCD text, the web server asks python for the LCD data. Python asks the Arduino, Arduino asks the LCD display. All responses go through the same chain. It's quite a complex communication chain, because of the many layers involved.

The arduino connects to the Pi through USB. With a USB hub in between, it should be possible to run multiple python scripts, all monitoring a different serial port. Multiple Arduinos, one web interface.

I a have something similar setup. I have a netduino that listens on a socket for Ajax requests from a simple HTML page. Then it reads 4 1-wire sensors and returns json. Works pretty well thus far.

To the OP. Sorry to be negative but I see a couple of major hurdles in your plan. 1market, lets face it your product will be marketed to a tiny population of people. I think the avg Brewer isn't going to want to mess will a incorporating a micro controller on their here's rig.2 aclick once install is going to be difficult to accomplish. People are going to have several premeatations of wireless networks, brands of routers, security protocols, etc.

Good luck
__________________
cobolstinks is offline
 
Reply With Quote Quick reply to this message
Old 06-03-2012, 04:36 PM   #13
idiosyncronaut
Feedback Score: 0 reviews
Recipes 
 
Join Date: May 2012
Location: Chicago, IL
Posts: 47
Liked 1 Times on 1 Posts
Likes Given: 1

Default

I love the idea, this sounds like a phenomenal project.

Any thought to using Ruby?

__________________
Primary - Zombie Reagan (single hopped citra IPA, take #2) [Batch #3]
Bottled - Ancient of Days - (american pale wheat ale) [Batch #2]
Bottled - Zombie Lincoln (single hopped citra IPA) [Batch #1]
idiosyncronaut is offline
 
Reply With Quote Quick reply to this message
Old 06-03-2012, 05:16 PM   #14
carlisle_bob
Feedback Score: 0 reviews
Recipes 
 
Join Date: Apr 2012
Location: Carlisle, PA
Posts: 1,205
Liked 27 Times on 26 Posts

Default

Hi

USB is indeed an easy thing to tie stuff together with. It has a few odd little quirks that might get in the way on some applications.

Signaling is all done against a common ground. That can be an issue if systems get large. Power switching and the like can create ground bumps..

USB self protects in case of an over current (or what it *thinks* is one). With some devices the only way to clear the fault is to unplug it. That's not really what you want in the middle of a control system.

Stacks for USB aren't enormous, but on a bang for the bytes basis, you are not getting a lot here. As you point out, it's pretty layer intensive for a simple single controller serial i/o application.

Finally, USB has some line length limitations. In a compact setup that's not an issue. If I want to have part of the system in the garage and the rest in the basement, it would be an issue.

By no means take any of this to mean it won't work. It will indeed work, but there are some tradeoffs. I don't know of any way to do this that does not have some tradeoffs.

__________________
carlisle_bob is offline
 
Reply With Quote Quick reply to this message
Old 06-03-2012, 05:36 PM   #15
Elkoe
Feedback Score: 0 reviews
Recipes 
 
Join Date: Nov 2011
Location: Eindhoven, Noord-Brabant(NL)
Posts: 21
Liked 4 Times on 3 Posts

Default

Quote:
Originally Posted by cobolstinks View Post
I a have something similar setup. I have a netduino that listens on a socket for Ajax requests from a simple HTML page. Then it reads 4 1-wire sensors and returns json. Works pretty well thus far.

To the OP. Sorry to be negative but I see a couple of major hurdles in your plan. 1market, lets face it your product will be marketed to a tiny population of people. I think the avg Brewer isn't going to want to mess will a incorporating a micro controller on their here's rig.2 aclick once install is going to be difficult to accomplish. People are going to have several premeatations of wireless networks, brands of routers, security protocols, etc.

Good luck
I know the market is not that big. It don't expect to get rich from this and I don't even expect to pay my bills from this project. It should just bring in a bit of money that justifies the time I put in. The first group of brewers will be geeks, but when it gets a bit more mature it should not be difficult to set up.

A one click install script should be possible by sticking to the Raspberry Pi. You just connect the Pi to the Internet and do an aptget and run an install script. Connecting it to your home network of course needs a bit of manual settings, but not that much.
__________________
Elkoe is offline
 
Reply With Quote Quick reply to this message
Old 06-03-2012, 05:39 PM   #16
Elkoe
Feedback Score: 0 reviews
Recipes 
 
Join Date: Nov 2011
Location: Eindhoven, Noord-Brabant(NL)
Posts: 21
Liked 4 Times on 3 Posts

Default

Quote:
Originally Posted by idiosyncronaut View Post
I love the idea, this sounds like a phenomenal project.

Any thought to using Ruby?
I have zero experience with Ruby, so I used Python, PHP and jQuery.

It is indeed a phenomenal project, but I had many positive reactions to my survey (allmost 100 people fully filled it in) and many people want to contribute to the code.
__________________
Elkoe is offline
 
Reply With Quote Quick reply to this message
Old 06-03-2012, 11:54 PM   #17
rpfuror
Feedback Score: 0 reviews
Recipes 
 
Join Date: Jan 2010
Location: MD
Posts: 54
Liked 1 Times on 1 Posts

Default

I defiantly like the idea of having a .deb package that will load all the binaries/scripts to run the programs/demons. If you need any help with the linux/perl (as that's my language of choice)/python side of thing let me know... I can get thru most of it.

I have been looking at the raspberry pi since I heard about it and I'll get one as soon as I can.

__________________
rpfuror is offline
 
Reply With Quote Quick reply to this message
Old 06-04-2012, 09:37 PM   #18
Heckle
Feedback Score: 0 reviews
Recipes 
 
Join Date: May 2009
Location: Hartford, Connecticut
Posts: 256
Liked 4 Times on 4 Posts
Likes Given: 1

Default

Subscribing.

__________________
Heckle is offline
 
Reply With Quote Quick reply to this message
Old 06-04-2012, 10:12 PM   #19
xrattiracer
Feedback Score: 0 reviews
Recipes 
 
Join Date: Jun 2012
Location: Seattle, WA
Posts: 18
Default

Browsed through this and filled out the survey.
The one thing that comes to mind as far as connecting things together would be to use CAN bus, its made for that exact purpose.

__________________
xrattiracer is offline
 
Reply With Quote Quick reply to this message
Old 06-04-2012, 10:57 PM   #20
carlisle_bob
Feedback Score: 0 reviews
Recipes 
 
Join Date: Apr 2012
Location: Carlisle, PA
Posts: 1,205
Liked 27 Times on 26 Posts

Default

Hi

CAN (and it's little brother LIN) are indeed bus alternatives. They are lower overhead than USB. They aren't quite as good for long distances as some other alternatives.

Bob

__________________
carlisle_bob is offline
 
Reply With Quote Quick reply to this message
Reply


Quick Reply
Message:
Options
Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
Raspberry Pi Brewhouse controller? SGFBeerBuzz DIY Projects 15 08-14-2012 04:26 AM
Fermentation Temperature controller build Hbrew DIY Projects 3 01-03-2011 03:51 PM
Controller for fermentation fridge bulldogxray DIY Projects 2 11-01-2010 09:27 PM
Fermentation Temperature Controller? crypt0 DIY Projects 10 09-16-2010 11:10 PM
Fermentation chamber temp controller Danielson DIY Projects 4 05-19-2010 02:08 AM