Interest check for BrewPi, a Raspberry Pi fermentation controller/data logger

HomeBrewTalk.com - Beer, Wine, Mead, & Cider Brewing Discussion Community.

Help Support Homebrew Talk:

OP
Elkoe

Elkoe

Well-Known Member
Joined
Nov 21, 2011
Messages
86
Reaction score
29
Location
Eindhoven
Also, why are we even concerned about the Pi? Why not just use an Ethernet shield?
The Arduino is not powerful enough to run PHP. That really limits the web interface. It also has very limited storage, so it needs and SD card to log data.

The Pi costs the same as an ethernet shield, but offers a lot more.
 
OP
Elkoe

Elkoe

Well-Known Member
Joined
Nov 21, 2011
Messages
86
Reaction score
29
Location
Eindhoven
The Pi runs python and connects to the Arduino over USB (virtual serial port) and logs data. The pi also runs a web server (apache 2 or lighttpd). You just need the Pi, the Arduino and a WiFi dongle. No 'real' computers anywhere in the system, everything is stored on the Pi.

So the Arduino is for low level stuff (reading sensors, switching heater/cooler, temperature control algorithm) and the Pi is for data logging and web interface.
 

wsender

Well-Known Member
Joined
May 1, 2011
Messages
50
Reaction score
6
Location
Rochester
How difficult is the Python that's involved? I've done some C and Assembly but never messed around with python.
 
OP
Elkoe

Elkoe

Well-Known Member
Joined
Nov 21, 2011
Messages
86
Reaction score
29
Location
Eindhoven
wsender said:
How difficult is the Python that's involved? I've done some C and Assembly but never messed around with python.
This was my first python project as well. You'll get it. You probably can just use what others have developed and contribute to the parts your good at. Time for bed now, I'll start debugging and testing tomorrow.
 

BadHorsie

Active Member
Joined
May 23, 2012
Messages
27
Reaction score
0
As far as I am concerned, these things are all up for discussion. As this project is in a very early state and I want to get as many people on board as possible, I feel like I should definitely not rule out options. It is not in the nature of open source and I don't think I know it all. The Arduino is the choice for the first version because it is widely available and supported up to the point that any manufacturer wants to make it's boards 'arduino compatible'.

I have the tools to do small production runs, so making a dedicated board which is as versatile as possible is something I can get behind. The reason I am starting with an Arduino is compatibility with existing hardware. I think a shield with connectors for DS18B20's, JTAG, LCD, relays, SSR's, PT-100 sensors (optional amplifiers on board), etc. can really make BrewPi plug and play. I do want to design this board with the community, so I'll open the forums after the first release.

I'll release the first version for Arduino, with a project for Atmel Studio 6. So if you have your own AVR dragon or similar, you can program bare chips as well.

I don't really know about the DigiSpark. It is very limited in the number of inputs/outputs, program memory and data memory. I'd rather have a full size AVR with JTAG debug possibilities for just a couple of bucks more.

My mailman is slow with my Arduino Leonardo, so I haven't been able to test the new version yet. Should have arrived yesterday :( But the Pi is up and running on WiFi already and I feel the two will get along just fine.
I can burn chips!
 

kladue

Senior Member
Lifetime Supporter
Joined
Dec 28, 2006
Messages
2,318
Reaction score
60
Location
Turner, Oregon
What I am looking for is an embedded processor to handle the on board scanning of inputs and outputs, basic control loops, and handle the network interface, something along the lines of a Cortex M3 that would work with I2C interface chips and have enough speed and code space for more elaborate control schemes. The PI would be better suited for the top end with an application that would communicate with satellite IO modules, rather than be hardwired to a module.
 

kladue

Senior Member
Lifetime Supporter
Joined
Dec 28, 2006
Messages
2,318
Reaction score
60
Location
Turner, Oregon
With 16-5V analog in, 4 -TC in, 4 Pulse count in, 12-10V analog out, 16-PWM digital out, I would be concerned that the Arduinos are just not robust enough to handle the workload, and the PI would be too much. Maybe for the lightweight IO board with 8-5V analog in, 8-digital in, and 8-1A digital outputs but it would need to handle I2C, Ethernet, and or serial RS485 communication.
 

wsender

Well-Known Member
Joined
May 1, 2011
Messages
50
Reaction score
6
Location
Rochester
What kind of work load are you concerned about? From what I've gathered about this project, it's pretty much going to be a temperature logger what serial communicates to the Pi, trips some relays, and possibly runs a display, that's a pretty light work load.
 
OP
Elkoe

Elkoe

Well-Known Member
Joined
Nov 21, 2011
Messages
86
Reaction score
29
Location
Eindhoven
From my experience an Atmega32u4 is enough. The temperature sensors (DS18B20) take 750 ms to update. Plenty of time to do calculations in between. In the future I might port it to the NetDuino (32bit, 48 MHz). So if you are concerned about processing power, you could help with porting it to the NetDuino.

I am using fixed point low pass filters for the new version. If they are implemented with bit shifts, the workload is next to nothing. For my digital SG sensor I am using 200Hz, 64bit filters on the Atmega32u4, which runs without any problems.

The shield I have built on perf board for the first test is just a bit of headers, resistors and capacitors. I am using SSR's, which have a digital input and don't require transistors.

Because the communication between the Pi and the slave is just serial communication, it's easy to use wireless (for example bluetooth) instead of a USB cable.

I am almost done with the slave code. I just have to rewrite the LCD menu options to use a rotary encoder (like the BrewTroller). It's a big step forward from the messy Arduino code that was UberFridge. The VS2010 shell of Atmel Studio is a joy to work with.

Let's discuss board options after the first release. A board with all the connectors on board, so that you don't have to solder it yourself, would be ideal. This could be a shield or have an Atmega on board and be stand alone. Everybody has a different opinion on what should be board, so we'll have to argue a bit more what would be the most flexible setup that makes most people happy. For example, you could add the footprints for PT-100 interface IC's and you could order the board with or without them.
 

carlisle_bob

Well-Known Member
Joined
Apr 28, 2012
Messages
1,205
Reaction score
30
Location
Carlisle
The PI has I2C capability, so direct connect to analog, digital, and 1 wire IO boards is possible without using the Arduino.
Hi

The dsPIC33's from Microchip are a pretty good intermediate between the Arduino's and full blown ARM. You are up to a 140 MHz clock, even at low voltage. That helps get stuff done. You also have at least two I2C's and a pair of UARTS on almost all of the chips.

Of course the main reason I like them for this stuff is that they are about as powerful as you can get and still be in a DIP package. Much easier to deal with when manual soldering that way.

Bob
 
OP
Elkoe

Elkoe

Well-Known Member
Joined
Nov 21, 2011
Messages
86
Reaction score
29
Location
Eindhoven
Your timing is pretty good. I am basically done with programming, will put the pi in my fridge today!
Today some tests with a water, first brewing this week :).

I'll have the code on GitHub by the end of the week. I promise! It will take some more time to get a proper guide online. I only have my notes now. But I will set up a wiki and forum, so I hope it will be a collaborative effort.

Took me a bit longer to make all settings adjustable from the web interface, without reprogramming the Arduino. I have also full support for Fahrenheit now and on the fly switching from the web interface.
 
Joined
Feb 6, 2011
Messages
1,004
Reaction score
236
Location
Las Vegas
OK, we're thinking along similar lines here...
I'm looking at using the RPi as the network/web interface, and using an Arduino for temperature sensing and SSR control, with communication over the I2C lines (RPi as the master, Arduino as the slave). Since my fermentation chambers and beer coolers, and brew equipment are in separate locations in my home, I'm also considering using the Freetronics EtherTen or EtherMega boards, and connecting to them via Powerline Communication Adapters, with the RPi as the master controller.

You might also want to take a look at The RPi/a la mode...
 
OP
Elkoe

Elkoe

Well-Known Member
Joined
Nov 21, 2011
Messages
86
Reaction score
29
Location
Eindhoven
I have the Arduino connected to the Pi with a USB cable now.

What would be the benefit of buying an EtherTen board over multiple raspberry pi's? They are about the same price.
 
Joined
Feb 6, 2011
Messages
1,004
Reaction score
236
Location
Las Vegas
:eek:nestar:
I have the Arduino connected to the Pi with a USB cable now.

What would be the benefit of buying an EtherTen board over multiple raspberry pi's? They are about the same price.
I've already written a lot of the code for the Arduinos, and I already have the Freetronics boards and powerline units.
Also, I'm not convinced that the 1-wire in the RPi is up to snuff, while the Arduino 1-wire has been very solid.
I've ordered a couple of RPis, both for this project and a media player.
 
OP
Elkoe

Elkoe

Well-Known Member
Joined
Nov 21, 2011
Messages
86
Reaction score
29
Location
Eindhoven
I have uploaded the code to GitHub, Wiki is online, Bug Tracker is online. I am halfway with the blog post to go with the release. It will be posted tomorrow!

On eliminating the Arduino: in my experience, the rasp isn't very stable. When the temperature control runs on the Arduino, it will always keep on running and you are not risking ruining your beer when the rasp crashes. More details tomorrow in the blog post!
 

Ambrosia

New Member
Joined
Jul 8, 2012
Messages
1
Reaction score
0
I absolutely stoked that you've released the project. And now that you've mentioned your fermentation density sensor you've got me dreaming up closed system ways to pull that off. Hmmmm... I'm sure you'll beat me to the punch :) Good work, you're a credit to the hobby.
 

bloombrews

Well-Known Member
Joined
Aug 14, 2014
Messages
97
Reaction score
12
Location
Pittsburgh
HAPPY BIRTHDAY FuzzeWuzze BrewPi !!!!!!!!!!!
Hats off to day_tripper!!!!!!!!!!!!!!!
MoJo, hugs n stuff... to OUR Founding Father - Elco Jocobs from Eindhoven Noord Brabant Netherlands!!!!!!!!
Its been only 2 YEARS now! I had so much fun taking your brains, and running with IT!
There have been, many more BREWPi'er's helping along the way....THANK YOU also, so no ONE is left out of this Ultimate Fermentation control !
It's not 00:01 yet, but I have to go to bed, East Coast, and I just wanted to thank Elco Jocobs, FuzzeWuzze and day_tripper for what made me so happy -Cooking up my own BPI !!
 

FuzzeWuzze

I Love DIY
Joined
Jun 19, 2012
Messages
3,140
Reaction score
457
Location
Newberg
Strong 4 year bump.

Lol i dont deserve any credit, Elkoe and those that put the time into the software deserve all the credit.
All i did was document a way of building it cheap to evangelize using it over the then(and still now sort of) standard STC1000 build everyone was doing.
 

bloombrews

Well-Known Member
Joined
Aug 14, 2014
Messages
97
Reaction score
12
Location
Pittsburgh
Yeh, right......! You only posted a sketch and we just copied it - That's IT!
Oh, I just remembered....You helped gazillions of us, when we could not get the RPi cooking or screwed something up (like me)!
And, for me, you got me all excited about programming again and playing with Arduinol's for "Radio Shack" like projects!
Last time I was great at programming, was way back in 1977-1980, with COBOL, RPG, FORTRAN,BASIC,......And Radio Shack electronics kit wayway back in the 1960's!!!
Now I am having fun all over again, drinking beer this time while "programming", and loving every minute of FuzzeWuzze, getting me back in the Groove again!
Thanks soooo much!
 
Top