Obsolete: NodeMCU (ESP8266) Sound Bubble Logger (disconnected).

Fermenter on heating mat. Bubble-Logger box with NodeMCU and relay inside standing just next to mat. This picture likewise shows my blow-out setup I merely use when dealing with high OG beers.

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.

Diagram for Bubble-Logger: The temp probe is connected till pin D4 (pin 02), the sound sensor til D5 (pin14)and if you wish to use also a relay it is on D7 (pin 13).


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.


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:

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.

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.

The 3 sensors I have done testing on (orange Sensor 1 with most testing done ~now dead). The tiny red line indicates the level of calibration.

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:

Airlock with 4ml water in under pressure. Notice the small hole in airlock. This helps equalize the pressure and hence make best “sound” for the sensor.

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”.

Sound sensor with “condom” and placement in airlock.

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.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.