“iBLOPPER/t” (t for TILT) for Wemos D1 ESP32 MINI including 0.96 OLED

“iBLOPPER/t”, or iBLOPPER4TILT, is an outliner of the older SBL4TILT project. Here the iBLOPPER/t do not make use of “sum BPM” to calculate SG, but only relay the TILT SG and temperature further on till Ubidots or Brewfather. It do capture the BPM and include this. This build contains and MPU6050 and OLED 0.96, the later to display information what is going on.

Hence, this project measure/do:

  1. Measure the activity of the yeast as CO2 escape the fermenter by Vibration though MPU6050 giving blops pr. min (BPM) and Sum BLOPs/L.
  2. Repeats temperature and Gravity from TILT into cloud.
  3. Hence, Send all data to the cloud in a easy way (BPM, Sum BLOP(pt)/L, Temperature, Gravity and color of TILT in use). The software sends to Ubidtos and Brewfather if you enter the url or Token in captive portal mode.
  4. The “Sun BPM” (sum BLOP(PT)/L) can be used to give an additional calculation of SG progression if a “speed of fermentation” check is done by the “One Hydrometer Approach”.

As we get temperature from TILT no temperature probe is needed.. For the build of iBLOPPER/t the OLED and MPU65050 both goes till pin 16 (SCL) and pi 17 (SDA) of D1 ESP 32 Mini.

The issue of this build is to find the 0.96 OLED (SSD1306) in the correct 4 pin-configuration of VCC, GRD, SCL and SDA, and hence match the pin out of MPU65050. As the ESP8266 only got one Ic2 bus, we need to align both the MPU and OLED on same bus. As the OLED can also be fund in a GRD, VCC, SCL and SDA configuration and this one is the most common, it can be tricky to find the correct ones.

On below pictures you can see how “iBLOPPER/t” get build.


In the portal mode you can set the sensitivity or treadshold when a bubble should be detected. This is needed based on your airlock, tightness of airlock holder and fermenter, eg. your setup. Box version of AMICA should have 3 till 6, and I find 4 to be best. But you can finetune if needed to remove double blops or if you loose any.

If you build by a juice cap, and hence a smaller “footprint”, then the sensitivity of the logger get less, and you need to use a sensitivity treads hold of 2 – 2.5 instead of the normal 4 (fits the lager box version).

Install file and install

iBLOPPER/t (t for TILT) ver1.0 for D1 ESP 32 MINI (0 downloads)
  1. Install CP210x USB to UART Bridge VCP Drivers, if not already done. If you played with Arduino IDE and NodeMCU before you most likely have done this before.
  2. Ensure NodeMCU is pugged into USB.
  3. Go to “Devices” (e.g. use win10 search and write “devices”).
  4. Under “Ports” in Devices. Notice this USB port number for “CP210x USB to UART”!
  5. Edit the “Window batch file” named “SETUP_USB_COMX” to reflect the port you using (eg. change the port number ONLY: “esptool.exe --chip esp32 --port COM14 --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size detect 0xe000 boot_app0.bin 0x1000 bootloader_dio_80m.bin 0x10000 iBLOPPER_4_TILT_ver1.0_D1_32_mini.ino.bin 0x8000 iBLOPPER_4_TILT_ver1.0_D1_32_mini.ino.partitions.bin“)
  6. Hit and run the “Window batch file” named “SETUP_USB_COMX”
  7. Now the iBLOPPPER software get installed.

If something goes wrong you can erase everything after editing accordingly as above by running “Erase_USB_COMX” (esptool.exe -p COM4 -b 115200 erase_flash). 

If updating to new build and/or making use of an D1 Mini from earlier project, ensure to erase everything as else you will get instability issues.

Secondly, always pull the power from iBLOPPER/t after installing before setting it up.

Polynomial option to finetune TILT

IBLOPPER/t got the option to finetune the SG of TILT by either the inbuild offset of SG points, but also the option to make use of a polynomial.

If you during sugar dilutions calibration or brewing see a difference in reported SG vs. measured gravity by hydrometer you can make your own polynomial to try to heighten the precision. The below picture is from Ispindel calibration tool, and here the Hydrometer reading is put in as reading where off the SG from TILT is put in as “TILT“.

Take the 2rd or even better the 3rd degree polynomial and shorten it, and then use this in SBL4TILT to give better precession.

The “iBLOPPER/t” support 1st or 2nd and 3rd degree polynomial as the example below:

(875.63 + (9.33*tilt) - (0.212*tilt*tilt) + (0.00175*tilt*tilt*tilt))-(0.1*(temp-20))

The Polynomial can max. hold 200 ciphers, if longer shorten. As the temperature can impact on the angle (e.g when cold crashing), a temperature function of, "SG – (TemperatureCorrectionFactor X (Temperature – 20 °C))" is build in as marked by bold in above. I use a TemperatureCorrectionFactor of 0.1, hence, going from 20C till 10C would impacts 1 SG if not accounted for.