
Components needed
To build a Bubble logger you will need:
- one NodeMCU Version3.x costing around 3.5$
- one ds18b20 probe + shield temperature probe (including a resistor 4,7K ohm) and attached it on pin 02 (D4) of NodeMCU, in all a price of 3$
- one Sound Sensor Detecting Module LM393 around 1$ at pin 14 (D5) .
- Optional – one single side Relay on pin 13 (D7) of NodeMCU.
- Some single-double-triple female til female wires to connect it all, 1$.
Diagram for “Sound” Bubble Logger
The Sound sensor is connected a bit different and The Sound Sensor Detecting Module LM393 is on Pin D5/Pin14.

Downloading
[wpdm_package id=’1140′]
Your Antivirus might detect this a dangerous files as the zip-file contains a .bin file.
Please Notice, for full value of the software you need a license, please contact me for a Donation-license.
All use is restricted till none commercial use. e.g. home brewing or educational purpose.
Installing
To install the software you need to make use of NodeMCU pyFlasher, hence, please download this tool. Remember to set the “Erase Flash” till “yes, wipe all data”!
You can also use nodemcu-flasher and download .exe files from release folders. Please insert the Sound_Bubbler.bin file under config at adress 0x0000, and under advanced set baud-rate till 115200, flash size till 4mb, Flash speed till 80Mhz and SPI mode til “DIO”.
How to build?
To build the sound sensor please see below pictures:
1). All components (click on picture for full picture). 2). Temperature components. 3). Using a shield for ds18b20 temperature sensor including the resistor make the assembly much easier. 43). Attach the temp probe til shield and attach VCC, ground and data accordingly. Data from shield til pin 02 (D4). 5). Components for making the Sound Sensor Part. Some cords and a connector with 3 pins. 6). The Sound Sensor needs to be secured by some tape as it else brakes, also it give the alignment. Secondly, it removes the shape edges there else rip the water balloon in pices. This “condom” is for moisture protection from vaporization of water. 7). To get a sufficient long cord for the Sound sensor you might have to solder…..or…. 8)…… spliced it together the cords with heat-warping-plastic. Hence, there is no need for soldering in this project. 9). Connector for Sound Sensor spliced upon a cord in both ends. Attached the data at pin 14 (D5) on NodeMCU. 10). Final Bubble Logger, and you just need to connect the USB cable and/or put the bubble-logger into a box (I use a “Sistema 200ml box”). If you wish to also include a relay please see below!
Relay – Use on you own responsibility
Please only use the relay if you know how to deal with mains and current. The Bubble Logger cycle every 2 mins and as such have the relay on or off during this 2 min cycle. Hence, only slow working actors or heating source is possible to use. I use a 27W reptile/aquarium heating mat underneath the fermenter and/or a 7W ski-boot heater to heat my fermenters. But please take all cautions if you explore the heating system of the Bubble-Logger. Only advised for skilled worker of mains.
11). Components for using the relay (missing plugs). 12). Attached the VCC, ground and data from relay till NodeMCU. The power cord should be splitted and attached till NO (NO=normal open ~ no current flowing unless trigered by NodeMCU) and then til COM. 13). Place everything in box, make sure nofthing can interfere with mains part (I use some tape to disconnect around the mains) 14). Final Bubble-Logger for both temperature control and activity assessment by BPM and SG.
Easy and fast calibration method
The digital Sound Sensor Detecting Module LM393 needs to be calibrated to a degree where it is responsive, but where we also can “work” besides make some noise. Generally, please also see this post for how to use an aquarium pump to help in the calibration process.
To calibrate: Make a brew and Put on the “condom” (small water balloon) on the LM393, se picture! When the BPM is around 15-30 (in avenge over 20-30min) by hear and see count adjust the potentiometer of the sensor till it reflect this by the logger (simply turn the potentiometer down until it stops lighten green and then fine adjust until you get the same BPM as hear and see count) . This is best done at a pressure around 1010-1018 hPa as the bubble rate is easy to detect by hear and see count. This give you a calibrated LM393 ready for your next brew (if you do the calibration very early in the fermentation and a large brew it should also be useful during the brew calibration is done upon).
During the next 1-2 brews you can fine tune the potentiometer of the sound sensor so it reflects the BPM by hear and see. In all during 3 brews you should hold a calibrated sensor there can give a precision of -/+ 3 gravity units.

This give a high resolution sensor there miss a few and also post some double bubbles, but this is fine as long the avenge BPM do reflect you hear and see count. calibration should give you between 50 and up till 100-150 SBM at high krauzen depending on temperature/yeast/brew size (I brew in 14-25L amounts), etc! This setting is prone to high sounds, but light talking, music, drier and washing machine is ok to have nearby!
To be able to compare from brew to brew of BPM and hence make use of polynomial you should try to hold as many variable the same, e.g. same sensor from brew to brew and foremost have same amount of water in airlock (+ same kind of S-airlock). I use 4-4,5 ml. Secondly, ensure the alignment of the probe is the same from brew to brew.
A picture of the amount of water under pressure:

Fitting the Condom – Water Balloon on the LM393 – fitting in Airlock – Alginment
The LM393 need a moisture protection, and this is done by a small water balloon, and it should be rather tight around the noose, but still loose as above pictures shows. It needs to sit tight in the airlock making an seal to restrict any water from vaporization. To allow the pressure to equalize a small hole needs to be drilled. Align it so the mirc is place over the direct hole in the airlock, so the sesor get the direct sound “blup”.

As the sensor got some shapes edges there will flence the ballon and secondly as the mirc rather easily can break off, try steady the sensor by some tape as first picture shows!
Besides the water amount of 4-4,5ml and the use of a calibrated censor the foremost important factor is the alignment of the probe, and it need to be pressed all the way down in the s-airlock and aligned directly over the tube-hole and hence get the direct release of C02 sound/pressure-burst. fF not fitted precisely you loose BPM and hence the SG estimate goes wrong.
One sensor = One Airlock
I propose you stick to use one airlock with you calibrated sensor especially if you have made you own polynomial and is using this setup for estimating rG/SG.