Beer Fermentation Beer Data Logger // Beer Analytics
Update: since this blog was written, the Project was transferred to a more professional looking project box and is now called the Beeruino, please search to see that blog – also code has been posted to Git.
- empty cigar box (smaller plastic project boxes also are ideal, but cigar box was free)
- Arduino UNO R3
- Arduino UNO R3 compatible ethernet shield + SD card that plugs into the SD slot
- two Dallas 1-wire temperature sensors (1 meter long, internal cable length was extended)
- 4×20 blue LCD Screen – works over I2C
- an RTC (real-time-clock), also works over I2C
- miscellaneous: wires, shrink wraps, hot glue, plastic wire ties and some light soldering
If you are one of those people – who is reading this and inside your head you are saying “why the hell should I do any of this shit, I just buy!!” – guess what, you are not a Maker and you will learn nothing from buying things that others have created. Once you learn, you have full control over your creation and any future ideas/goals, you are not tied to a product that someone else has created.
In this quick blog I wanted to share a quick story about how I converted an empty cigar box into a data logger. It uses the Arduino Uno and two Dallas 1-wire sensor to capture and record both the internal temperature inside the fermentor and the external temperature (outside the fermentor), so that we have a base to compare against. You should see a higher temperature inside, because when yeast ferments, that is considered an exothermic process – https://en.wikipedia.org/wiki/Exothermic_process
The primary goal was to create a small, portable system (small size and weight wise) and also for it to be independent, meaning be able to do everything on its own without external dependencies like the internet, or some network, at this stage we don’t want to send live data to the internet or log to a database // but those things can certainly be done and in the future can be nice to have.
To have this system somewhat nice, I have added a 4×20 blue LCD screen – it uses the I2C interface to make the hook up easy. Also an RTC (real-time-clock) was installed to work on the same I2C bus, this adds date+time.
In addition I have used 4-pin aviation plugs to make the sensors connection modular, so that they can be easily unplugged (cleaning or swapping) without messing with the internal electronics or wires…
Hot glue was used to stick things in place inside the cigar box, along with some limited soldering, and shrink-wrap, and wire ties to keep things organized and properly connected for solid connections.
The programming code is not super complex, and it being shared below:
It assumes that the external temp. sensor is being pulled from index(0) and internal from index(1). Having the temp sensors assigned to a static index will allow you to switch the aviation plugs and still have them assigned correctly and display from the right sensor without having to worry about which plug which should be.
A quick video and Arduino C++ code below…
The data is recorded on an SD card (inside the ethernet shield) which is plugged-in on top of the Arduino UNO R3.