How to use iBLOPPER :

- Attach iBLOPPER till your S-airlock by rubber bands/or place sound sensor in S-airlock if using iBLOPPER/s.
- Enter Brewname, OG, Brewsize at iBLOPPER Access Point.
- Decide on Start-out polynomial (see FAQ “Best settings for S-airlock”).
- Ensure the fermenter and iBLOPPER cables is isolated from vibrations/or placed away from high sounds if using iBLOPPER/s.
- Use a S-airlock with cap on for iBLOPPER (evaporation) + a tiny drilled hole at top (pressure equalization). Use 5ml water in it.
- Follow the Blop pr. min (BPM) in either Brewfather or Ubidots STEM.
- During 33-66% into fermentation (preferably when high kreuzen has just passed), take one hydrometer reading. Calculate the speed of fermentation (polynomial) for this brew by simple math’s, e.g. “Reduction in gravity”
^{1}divided by “Sum BPM/L”, and then once update the iBLOPPER with this new polynomial. **That its. Hence, this way you can foresee the final SG by an error of mean of 3-5 points.**

**Hydrometer reading of OG and “one hydrometer reading” must be precise. This give you full insight in the fermentation, by activity, temperature, and how far it have come through indicative SG estimate. All by not adding anything into the wort.**

(^{1} Reduction in gravity, rG = OG – SG)

Please also see FAQ for more details!

# Full Introduction

The iBLOPPER and iBLOPPER/s is an Arduino device (ESP8266). It monitor your yeast activity by motioning the CO2 blops pr. minute (BPM). Besides BPM, also “Sum BPM/L” and temperature is logged. Based on Sum BPM/L indicative gravity estimate is given by polynomial/modelistic approach.

It works by placing iBLOPPER on the outside of the airlock, and iBLOPPER then detects the tiny movement the airlock makes at the release of a bubble. Hence, it need placed away from vibrations sources (flamingo mat in cooler or similarly). iBLOPPER/s must have the sound senonsor placed in the top of S-airlock and hence monitor the sound bust when a CO2 bubble is released in the S-airlock.

The software can though the “Sum BPM/L” be used to give an indicative SG/rG (reduction in gravity) by polynomial approach. To ensure a reliable SG estimation and to account for the many factors affecting CO2 release the users needs to conduct “one hydrometer reading” when preferably high kreuzen has just passed and hence re-calculating and updating the polynomial for the current brew by very simple maths (e.g. “reduction in gravity” divided by “Sum BPM/L”, for instance 14/1700 => Y=0.0082x). For more details see below!

**This approach allows all fermenters and S-airlocks to be used with iBLOPPER, but the user should strive towards fermenters with high airtightness for best results. This approach should works for other types of airlocks, but currently not tested in full (help appreciated).**

Hence, the idea of iBLOPPER and iBLOPPER/s is by simply adding one more hydrometer reading on top of the OG, and the 2 FG measurement we all recommend, this 4th sampling at preferably high kreuzen can tell us something about the speed of fermentation, thus, giving us an indicative estimate of the SG all while we monitor on the outside of fermenter.

All data can be send til Ubidots STEM and Brewfather, as below image shows:

## Initial setup/operate

The iBLOPPER got a captive portal mode (Wifi Access Point mode) and hence you log on just as it was a Wifi access point. If the login page do not automatically come up, go to: **192.168.4.1**

It will for 120 seconds go into this “Captive Portal” at power on (or after any failures as lost connection or lost power) where all setting can be done, e.g Brew Name, SSID+Password, Brew Size, Original Gravity, Polynomial, License, Location and setting URL of either Brewfather URL/Ubidots STEM Token. It light Blue for 120 sec when in portal mode/access point mode. **Please notice any changes in portal must always be followed by setting SSID and Password**, each and every time any changes is done.

Likewise it light blue when sending/treating data for 1-2 seconds. Samwise a short blue blink is seen when it detect a bubble.

Hence,

- Connect till the “iBLOPPER CONNECT” SoftAP though either you mobile phone or laptop by Wifi. After connect till access point the Bubble-logger url for the configuration page is: 192.168.4.1
- Set the various parameters accordingly (
**Currently, you need to set SSID+Password every time you enter “Captive Portal” mode, so you need to set SSID+password even you just changed one parameter**). - As a minimum Brew Name, Brewsize, OG and license + location must be set. Others parameters is optional.
- If you later on wish to change for instance polynomial, pull power for 2 sec, and go into portal mode again and make the change (remember to set SSID+password again too).

Secondly, the iBLOPPER also got a web server you can follow all data on during brewing, to access webserver you need to find the IP and best way currently is to look in the IP routing table or some Network sniffer program as “Advance IP Scanner” (https://www.advanced-ip-scanner.com). The Web server is on: 192.168.1.xxx.

We strongly propose you get a Ubidots STEM account and hence insert the TOKEN, and for Brewfather you need to enable “Custom Stream” and inset this associated URL into Bubble-logger.

Some other considerations:

- The SSID and password always needs to be set even just changing a parameter.
- Sometime after hitting “Save” iBLOPPER need a second re-run of portal (120 sec blue light) to get the internet established.
- Best behavior for portal mode is seen with iOS browser/phones.

Please also see FAQ for more details! on how to set up especially **“Best settings for S-airlock“**!

## Opperation during brewing(“One Hydrometer Reading”) = getting precise SG

During the brewing you will need to take one hydrometer sampling at preferably 33-66% into the fermentation (high kreuzen) and calculate the 1st degree polynomial or “speed of fermentation” for this brew. **We call this “One Hydrometer Reading” approach**. As the release of C02 is ensured linear by the iBLOPPER software (see more below under “Deep drive into data”), the math is very simple. Just take the rG (reduction in gravity) and divide by “sum BPM/L”. In the below case we had OG of 1056 and after “1025 Sum BPM/L” the Hydrometer reading was 1042, hence, giving an rG of 14, thus, 14/1025 => Polynomial=0.01366*sum.

After you made this simple calculation you should update iBLOPPER with the new polynomial and now the SG prediction follows the current brew (orange line below) and hence include this brew equipment, airtightness, yeast, wort, pressure, temperature and all other factors impacting CO2 release (Scaling factor). Therefore, you will see a change based on this “one hydrometer reading” adjustment. **It should be noted this approach put much faith into precise hydrometer measurements and hence a keen eye and good technic in the field of hydrometer sampling is needed. An misread off 2-4-6 at “one hydrometer reading” sampling point can fast be 5-10-15 SG units in the end if a high-voluminous beers is in the making. **

## Free to use and test

The iBLOPPER is free to use and the quarterly renewed free license can be seen at the announcement when entering this site coming up daily (if you missed please go incognito). This license supports 100+ users online at the same time. This test license are meant for users to test the software free, but please consider support this project by buying a license of 20 EUR (supports 2 devices at same location). If you find this software for your liking we strongly suggest you buy you own sole license to get fully stable logging. Hence:

**iBLOPPER is free to use and test by the “free” license renewed quarterly, e.g 31 March, 31 June, 31 September, and then 31 December (or roughly dates). Hence, not to get decapitated logging, remember these dates….or…..support us by buy you own sole ****license supporting 2 devices.**

## How to build

To build an iBLOPPER one need very basically skills in soldering, and even if you have not prior done any soldering we do believe every one can do this build. Below you find the various versions there can be build, e.g. **NodeMCU AMICA **and **D1 Mini** including the option to include a 0.96″ OLED display.

### NodeMCU “AMICA” (ESP8266) version

The easiest build is the **NodeMCU “AMICA” build.**

### Wemos D1 Mini (ESP8266) including 0.96″ OLED

A more lean and smaller version of iBLOPPER including optional OLED screen, can also be build. This version is a bit more complicated to build. **D1 mini incl. 0.96 OLED** (BETA)

**D1 mini + 0.96 OLED version**(BETA)

### iBLOPPER/s (s for sound sensor detection)

The last version of iBLOPPER is the “iBLOPPER/s” where the “S” means sound sensor detection. Here we use an cheap Sound Sensor Module LM393. This build is solderless and hence can be build from common Arduino cords and connectors. It supports besides temperature probe, also OLED and a 2-channel relay. iBLOPPER/s build.

## Estimate of “reduction in gravity” (rG) or SG prediction

The software can be used to give an indicative rG (reduction in gravity) or SG estimate base on one hydrometer measurement is taken during brewing at preferable when high kreuzen has passed.

What we measure is as said the Blops pr. Min coming when CO2 is released by vibration detection, e.g. BPM, and if we look at the chemistry behind the metabolisms of fermentation of sugar by yeast cells, we see one part Alcohol generate two part CO2. Hence, CO2 is a direct measurement of the alcohol production. This should be a linear function, and the key issue is to measurement this gas accurate and precise. Hence, sealed air tight tanks is a good start.

```
C6H12O6 ====> 2(CH3CH2OH) + 2(CO2) (+Energy)
Sugar ====> Alcohol + Carbon dioxide gas (+Energy)
```

Hence, by knowing the BPM and brew size (L) and other involving constants we can plot a curve of Sum BLOPS/L vs. the reduction in Gravity and generate a model and polynomial for the alcohol production based on our initial measurement of Blops pr. Min (BPM), se more below.

### Factors impacting on SG estrimation

There is a long list of factors affecting the SG estrimation, as shown by following figure:

*UPDATE: There is further parameters I seems to think also impacting, and that being fermenters shape and especially plastic vs. metal I deem as also have a higher impact than first considered.*

**Picture showing all the considerations for trying making SG****estimation from CO2.**The Atmospheric pressure and temperature in particular impacts on the bubbling rate, hence, the iBLOPPER software contains complex build in models to account for change of pressure and temperature and reports the adjusted “Sum BLOPS**(pt)**/L” ensuring the “Sum BPM/L” becomes a linear function. Besides the climatic factors, then also the headspace and especially the “hat/cap” on/off and tightness/resistance of “hat” do give big variation in bubble-rate. The amount of water in S-airlock alos impact on bubbling rate. More unknown is the various yeasts and wort-possibilites, but these are assumed to be less impacting.

*Therefore, to ensure a good user experience, the user needs to make the "one hydrometer reading" during brewing as this more or less balance most of above factors out if this sample/measurement is conducted precise and trustworthy.*

### Approaches for estimating SG

There is as such 2 ways or approaches for estimating SG from C02:

**“Same procedure/Same equipment from brew till brew”,** if using same equipment and same procedure from brew till brew only climatic and physical factors is left to impacting, and as such this procedure can be used with the same developed polynomial for brew till brew. But it is a tedious approach, and just a slight error in airtightness, or different airlock, cap resistance (on/off/loose), headspace, water amount, etc. can offset this polynomial for the equipment. But this is still the approach to find the range of a future-wise usable polynomial (baseline) for a given airlock.

**“One hydrometer reading”,** as said before this is what we propose is best suited to remove a lot of unknowns. simply to take one hydrometer reading during the initial brewing, best at preferably 33-66% (when high kreuzen just passed) into the fermentation and hence update the polynomial for each brew.

Please also see FAQ for more details on how to set up especially **“Best settings for S-airlock”**!

**Deep diving into the data**

Below you find links till the data behind this project for S-airlock with 4-5ml water and with a tiny equalization hole in S-airlock + the cap on to lower evaporation. It is based on various sensors, e.g. sound, infrared and MPU6050, and various S-airlocks, but the volume in S-airlock have been between 4-5ml.

*All the data behind iBLOPPER as of early 2021.***Deep diving further into the data for S-airlock**, you will notice the “One hydrometer reading” approach during the main fermentation at preferably around 33-66% complete, e.g. high kreuzen, we get a error of mean of 3.3 SG units.

**Overview of data. rG means “reduction in Gravity”.**

### All the data for S-airlock

Below you find all the data during the last years. If using the “one hydrometer reading” preferably at 33-66% (e.g. high kreuzen has just passed) into the fermentation an error of mean around 3.3 SG units is justified.

All data is done with S-airlock (assuming 4-5 different types used during the testning, but all mat/soft plastic), 4-5 ml water in airlock, and the data is a mix of sensors, e.g. sound, infrared and MPU6050. For S-airlock a tiny hole in top of airlock have been drilled to equalize pressure, secondly, the “hat” was on to lower evaporation. I do compare the dataset with a Baseline/”Normal Brew” by headspace of around 25%, e.g. function of Y=0.0074*x. This is to show unless one keeps all parameters the same, the use of a single polynomial from brew till brew cannot be used as such.

### Brew 36 “Rhubar Lager”

MPU6050 sensor. *OG=1050, FG=1006, 26L* (32L Plastic Tank).

Link till Brewfather: https://share.brewfather.app/V7EojHWTuRwLNf

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction | rG_corr | Error_corr |

11 | 0 | 0 | 1050 | 0 | |||||

11 | 2245 | 16 | 1034 | 17 | y=0.0072x | 16 | |||

18 | 6827 | 44 | 1006 | 51 | 49 | ||||

22 | 6882 | 44 | 1006 | 50 | |||||

7 | 6 |

The graph of the data for rG and Sum BPM/L:

### Brew 35 “NEIPA BLOND”

MPU6050 sensor. *OG=1055, FG=1007, 23 L* (32L Metal Tank).

Link till Brewfather: https://share.brewfather.app/gVM2MfHzXsQbYw

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

28 | 0 | 0 | 1055 | 0 | |||||

30 | 2513 | 34 | 1021 | 19 | y=0.0135x | 34 | |||

28 | 3654 | 48 | 1007 | 27 | 49 | ||||

22 | 1 |

The graph of the data for rG and Sum BPM/L:

### Brew 34 “U2PA gone V”

MPU6050 sensor. *OG=1052, FG=1006, 26L* (32LMetal tank).

Link till Brewfather: https://share.brewfather.app/ZantAz5kiYo1kL

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

19 | 0 | 0 | 1052 | 0 | |||||

19 | 1966 | 23 | 1029 | 15 | y=0.0117x | 23 | |||

19 | 3799 | 42 | 1010 | 28 | 44 | ||||

19 | 4105 | 45 | 1007 | 30 | 48 | ||||

19 | 4115 | 46 | 1006 | 30 | 48 | ||||

16 | 2 |

The graph of the data for rG and Sum BPM/L:

### Brew 33 “DD Citra IPA – check of very high headspace of 52%”

MPU6050 sensor. *OG=1058, FG=1014, 16.5L* (32L Plastic Barrel).

Link till Brewfather: https://share.brewfather.app/TFc2jJNWAKxzaR

Link till “One Hydrometer Reading” approach picture: DD-Citra-IPA-1.png

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

? | 20 | 0 | 0 | 1058 | 0 | ||||

? | 22 | 457 | 6 | 1052 | 3 | ||||

? | 24 | 2015 | 32 | 1026 | 15 | y=0.0159x | 32 | ||

? | 20 | 2742 | 44 | 1014 | 20 | 44 | |||

24 | 0 |

The graph of the data for rG and Sum BPM/L:

### Brew 32 “A Citra Wit – check of very high headspace of 55%”

MPU6050 sensor. *OG=1053, FG=1016, 14.5L* (32L Metal Tank).

Link till Brewfather: https://share.brewfather.app/TFc2jJNWAKxzaR

Link till “One Hydrometer Reading” approach picture: citra_wheat_final_SG.png

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

? | 18 | 0 | 0 | 1053 | 0 | ||||

? | 22 | 1445 | 29 | 1024 | 15 | Y=0.00200x | 29 | ||

? | 20 | 1885 | 37 | 1016 | 29 | 38 | |||

? | 20 | 1925 | 37 | 1016 | 32 | 39 | |||

23 | 2 |

The graph of the data for rG and Sum BPM/L:

### Brew 31 “Sugarwort 4 – check of very high headspace of 50%”

MPU6050 sensor. *OG=1054, FG=999, 6.5L* (13L Plastic Speidel Tank used).

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

? | 19 | 0 | 0 | 1054 | 0 | ||||

? | 19 | 2041 | 27 | 1027 | 15 | Y=0.01326x | 27 | ||

? | 20 | 3893 | 49 | 1005 | 29 | 52 | |||

? | 21 | 4336 | 55 | 999 | 32 | 58 | |||

23 | 3 |

The graph of the data for rG and Sum BPM/L:

### Brew 30: “Amber Lager”

MPU6050 sensor. *OG=1054, FG=1005, 11.8L* (13L Plastic Speidel Tank used). Check of rather low headspace.

Link till Brewfather: https://share.brewfather.app/5QUXPtznizh5oL

Link till Ubidots, “One Hydrometer Reading” aaproach: https://iblopper.bubble-logger.com/wp-content/uploads/2021/03/image-5.png

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

? | 11 | 0 | 0 | 1054 | 0 | ||||

11 | 1315 | 4 | 1050 | 10 | |||||

11 | 5400 | 21 | 1033 | 40 | Y=0.0039 | 21 | |||

11 | 11573 | 41 | 1013 | 86 | 45 | ||||

19 | 12600 | 45 | 1009 | 93 | 49 | ||||

20 | 13650 | 49 | 1005 | 101 | 53 | ||||

20 | 13746 | 49 | 1005 | 102 | 54 | ||||

53 | 5 |

The graph of the data for rG and Sum BPM/L:

### Brew 29: “IPL”

MPU6050 sensor. *OG=1042, FG=1006, 10L* (13L Plastic Speidel Tank used).

Link till Brewfather: https://share.brewfather.app/aBTQ6HmwLUnBLY

Link til Ubidots, One Hydrometer approach: https://iblopper.bubble-logger.com/wp-content/uploads/2021/02/IPL_.png

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

? | 10 | 0 | 0 | 1042 | 0 | ||||

? | 16 | 545 | 3 | 1039 | 4 | ||||

? | 21 | 4128 | 25 | 1017 | 31 | Y=0.0061x | 25 | ||

? | 20 | 6749 | 36 | 1006 | 50 | 41 | |||

14 | 5 |

The graph of the data for rG and Sum BPM/L:

**Brew 28:** “NEIPA_Jan2021”

MPU6050 sensor. *OG=1056, FG=1010, 21.8L* (30L Matal barrel used).

Link till Brewfather: https://share.brewfather.app/dKQ4cD45E01YeR

Link til Ubidots, One Hydrometer approach: https://iblopper.bubble-logger.com/wp-content/uploads/2021/02/image-45.png

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1002 | 23 | 0 | 0 | 1056 | 0 | ||||

1002 | 23 | 1035 | 14 | 1042 | 8 | Y=0.0135x | 14 | ||

1002 | 24 | 1327 | 18 | 1038 | 10 | 18 | |||

1004 | 25 | 2263 | 30 | 1026 | 17 | 31 | |||

1004 | 23 | 3055 | 40 | 1016 | 23 | 42 | |||

1002 | 22 | 3591 | 44 | 1012 | 27 | 49 | |||

1003 | 22 | 3661 | 46 | 1010 | 27 | 49 | |||

16 | 3 |

The graph of the data for rG and Sum BPM/L:

**Brew 27:** “RockKilde Pilsner”

MPU6050 sensor. *OG=1044, FG=1006 21.3L Plastic 30 L*.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

985 | 10.5 | 0 | 0 | 1044 | 0 | ||||

995 | 10.5 | 225 | 2 | 1042 | 2 | ||||

995 | 10.5 | 462 | 5 | 1039 | 3 | ||||

1006 | 10.5 | 3231 | 31 | 1013 | 24 | Y=0,0096x | 31 | ||

1003 | 18 | 3600 | 35 | 1009 | 27 | ||||

1000 | 21 | 3730 | 36 | 1008 | 28 | ||||

1000 | 21 | 3854 | 38 | 1006 | 29 | ||||

1014 | 21 | 3975 | 38 | 1006 | 29 | 38 | |||

9 | 0 |

The graph of the data for rG and Sum BPM/L:

### Brew 26: “Sugarwort3”

MPU6050 sensor. *OG=1045, FG=1016. 23L* in 30L Plastic barrel.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1026 | 22.5 | 0 | 0 | 1045 | 0 | ||||

1026 | 22.5 | 879 | 5 | 1040 | 7 | ||||

1024 | 22.5 | 1467 | 11 | 1034 | 11 | Y=0.0075x | 11 | ||

1023 | 22.5 | 1623 | 12 | 1033 | 12 | 12 | |||

1018 | 21.5 | 2156 | 16 | 1029 | 16 | 16 | |||

1020 | 21.5 | 2596 | 21 | 1024 | 19 | 20 | |||

1019 | 21.5 | 2879 | 23 | 1022 | 21 | 22 | |||

1015 | 21.5 | 3253 | 26 | 1019 | 24 | 24 | |||

1007 | 21.5 | 3494 | 29 | 1016 | 26 | 26 | |||

3 | 3 |

The graph of the data for rG and Sum BPM/L:

### Brew 25: “Sugarwort 2”

MPU6050 sensor. *OG=1030, FG=1004. 10.2L* in 11L Plastic Speidel Tank.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

998 | 22 | 0 | 0 | 1030 | 0 | ||||

998 | 22 | 852 | 6 | 1024 | 6 | ||||

998 | 22 | 1972 | 14 | 1016 | 15 | Y=0.0071x | 14 | ||

998 | 22 | 2707 | 20 | 1010 | 20 | 19 | |||

998 | 22 | 3271 | 24 | 1006 | 24 | 23 | |||

998 | 22 | 3360 | 25 | 1005 | 25 | 24 | |||

1014 | 22 | 3502 | 26 | 1004 | 26 | 25 | |||

0 | 1 |

The graph of the data for rG and Sum BPM/L:

### Brew 24: “Sugarwort1”

MPU6050 sensor. *OG=1030, FG=1004. 10.1L* in 11L Plastic Speidel Tank.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1023 | 22 | 0 | 0 | 1040 | 0 | ||||

1023 | 22 | 987 | 8 | 1032 | 7 | ||||

1023 | 22 | 1973 | 14 | 1026 | 15 | Y=0.0071x | 14 | ||

1023 | 22 | 2758 | 20 | 1020 | 20 | 20 | |||

1018 | 22 | 4092 | 29 | 1012 | 30 | 29 | |||

1018 | 22 | 4735 | 33 | 1008 | 35 | 34 | |||

1018 | 22 | 5083 | 36 | 1005 | 38 | 36 | |||

1009 | 22 | 5450 | 38 | 1003 | 40 | 39 | |||

1009 | 22 | 5487 | 39 | 1002 | 41 | 39 | |||

2 | 0 |

The graph of the data for rG and Sum BPM/L:

### Brew 23: “Rhubar Wheat2020”

Sound detection – OG 1041; FG 1009. 16L in 25L Plastic Speidel Tank.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

20 | 0 | 0 | 1041 | 0 | |||||

20 | 1131 | 12 | 1029 | 8 | Y=0,0106x | 12 | |||

20 | 2456 | 24 | 1017 | 18 | 26 | ||||

20 | 3478 | 32 | 1009 | 26 | 37 | ||||

6 | 5 |

The graph of the data for rG and Sum BPM/L:

### Brew 22: “Sweet Cold IPA”

Infared sensor. *OG=1063, FG=1024. 22L* in 30L Plastic barrel.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction | rG_corr | Error_corr |

983 | 12 | 0 | 0 | 1063 | 0 | ||||

983 | 12 | 489 | 5 | 1059 | 4 | ||||

983 | 12 | 2322 | 13 | 1048 | 17 | Y=0.0056x | 13 | ||

999 | 12 | 4830 | 25 | 1038 | 36 | 27 | |||

999 | 12 | 6291 | 32 | 1031 | 47 | 35 | |||

999 | 12 | 7003 | 34 | 1029 | 52 | 39 | |||

? | 12 | 7377 | 35 | 1028 | 55 | 41 | |||

? | 15 | 7570 | 36 | 1027 | 56 | 42 | |||

? | 18 | 7650 | 36 | 1027 | 57 | 43 | |||

? | 21 | 7871 | 37 | 1026 | 58 | 44 | |||

? | 21 | 7938 | 39 | 1024 | 59 | 44 | |||

20 | 5 |

The graph of the data for rG and Sum BPM/L:

### Brew 21: “CitLiMan_US05”

Sound detection – OG 1041; FG 1009. 10L in 12L Plastic Speidel Tank.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1014 | 18 | 0 | 0 | 1054 | 0 | ||||

1015 | 18 | 1661 | 12 | 1042 | 12 | Y=0.0072x | 12 | ||

1016 | 18 | 3082 | 22 | 1032 | 23 | 22 | |||

1014 | 18 | 4841 | 32 | 1022 | 36 | 35 | |||

1012 | 20 | 6338 | 43 | 1011 | 47 | 46 | |||

1010 | 22 | 6389 | 44 | 1010 | 47 | 46 | |||

3 | 2 |

The graph of the data for rG and Sum BPM/L:

### Brew 20: “CitLiMan_MJ44”

Sound detection – OG 1052 FG 1013. 10L in 12L Plastic Speidel Tank.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1014 | 18 | 0 | 0 | 1052 | 0 | ||||

1015 | 18 | 4678 | 37 | 1015 | 35 | Y=0.0079x | 37 | ||

1010 | 22 | 4877 | 39 | 1013 | 36 | 39 | |||

3 | 0 |

The graph of the data for rG and Sum BPM/L:

### Brew 19: “Sort Øl”

Sound detection – OG 1040 FG 1013. 26L in 30L Barrel.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1026 | 10 | 0 | 0 | 1040 | 0 | ||||

1028 | 10 | 462 | 4 | 1036 | 3 | ||||

1032 | 10 | 1212 | 11 | 1029 | 9 | Y=0.0091*x | 11 | ||

1030 | 10 | 2262 | 20 | 1020 | 17 | 21 | |||

1020 | 13 | 2701 | 25 | 1015 | 20 | 25 | |||

1014 | 17 | 2928 | 28 | 1012 | 22 | 27 | |||

6 | 1 |

The graph of the data for rG and Sum BPM/L:

### Brew 18: “Reuse-more”

Infrared detection – OG 1050; FG 1020. 10L in 12L Plastic Speidel Tank

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction | rG_corr | Error_corr |

0 | 0 | 1056 | 0 | ||||||

714 | 13 | 1043 | 5 | Y=0.0182 | 0 | ||||

1200 | 22 | 1034 | 9 | 13 | |||||

1646 | 29 | 1027 | 12 | 22 | |||||

2073 | 34 | 1022 | 15 | 30 | |||||

2166 | 35 | 1021 | 16 | 38 | |||||

2199 | 36 | 1020 | 16 | 39 | |||||

2205 | 38 | 1018 | 16 | 40 | |||||

22 | 2 |

The graph of the data for rG and Sum BPM/L:

### Brew 17: “FNOE BIPA”

Sound detection – OG 1070; FG 1016. 21L in 25L Plastic Speidel Tank.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1026 | 19 | 0 | 0 | 1070 | 0 | ||||

1026 | 18 | 1666 | 11 | 1059 | 12 | Y=0.066x | 11 | ||

1018 | 20 | 4628 | 31 | 1039 | 34 | 31 | |||

1017 | 20 | 6278 | 43 | 1027 | 46 | 41 | |||

1013 | 20 | 7147 | 50 | 1020 | 53 | 47 | |||

1020 | 20 | 7487 | 53 | 1017 | 55 | 49 | |||

1024 | 21 | 7511 | 54 | 1016 | 56 | 50 | |||

1026 | 21 | 7526 | 54 | 1016 | 56 | 50 | |||

2 | 4 |

The graph of the data for rG and Sum BPM/L:

### Brew 16: “Wit Lemon Ginger”

Infrared detection – OG 1050; FG 1020. 10L in 13L SS Brewtech Metal Tank. Bad taste = bad idea!

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

? | 18 | 0 | 0 | 1050 | 0 | ||||

? | 18 | 457 | 4 | 1046 | 12 | Y=0.0088x | 4 | ||

? | 22 | 3551 | 30 | 1020 | 34 | 31 | |||

4 | | 1 |

The graph of the data for rG and Sum BPM/L:

### Brew 15: “Yoga Pils 3”

Inferred detection – OG 1040 FG 1013. 25L in 30L Barrel.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1030 | 10 | 0 | 0 | 1041 | 0 | ||||

1028 | 10 | 808 | 7 | 1034 | 6 | Y=0.086x | 7 | ||

1032 | 10 | 3030 | 28 | 1014 | 22 | 26 | |||

1014 | 16 | 3678 | 31 | 1010 | 27 | 32 | |||

1020 | 20 | 4189 | 33 | 1008 | 31 | 36 | |||

2 | 3 |

The graph of the data for rG and Sum BPM/L:

### Brew 14: “Sugar Blue 2”

Infrared detection – OG 1026; FG 1002. 10L in 12L Plastic Speidel Tank.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1015 | 21 | 0 | 0 | 1026 | 0 | ||||

1014 | 21 | 257 | 2 | 1025 | 2 | ||||

1010 | 21 | 1182 | 10 | 1016 | 9 | y=0.0085x | 10 | ||

1012 | 21 | 2230 | 18 | 1008 | 17 | 19 | |||

1014 | 21 | 2504 | 22 | 1004 | 19 | 21 | |||

1015 | 21 | 2600 | 24 | 1002 | 19 | 22 | |||

1015 | 21 | 2618 | 24 | 1002 | 19 | 22 | |||

5 | 2 |

The graph of the data for rG and Sum BPM/L:

### Brew 13: “Sugar Blue 3”

Infrared detection – OG 1026; FG 1002. 10L in 12L Plastic Speidel Tank.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1015 | 21 | 0 | 0 | 1026 | 0 | ||||

1014 | 21 | 604 | 6 | 1020 | 4 | ||||

1010 | 21 | 1260 | 10 | 1016 | 9 | y=0.0079x | 10 | ||

1012 | 21 | 1786 | 13 | 1013 | 13 | 14 | |||

1014 | 21 | 2313 | 17 | 1009 | 17 | 18 | |||

1015 | 21 | 2447 | 19 | 1007 | 18 | 19 | |||

1 | 0 |

The graph of the data for rG and Sum BPM/L:

### Brew 12: “Re-use Agian”

Infrared detection – OG 1057; FG 1018. 10L in 12L Plastic Speidel Tank.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1015 | 21 | 0 | 0 | 1057 | 0 | ||||

1014 | 21 | 1989 | 16 | 1041 | 15 | Y=0.0080x | 16 | ||

1010 | 21 | 4429 | 33 | 1024 | 33 | 35 | |||

1012 | 21 | 5071 | 36 | 1021 | 38 | 41 | |||

1014 | 21 | 5209 | 38 | 1019 | 39 | 42 | |||

1015 | 21 | 5329 | 39 | 1018 | 39 | 43 | |||

0 | 4 |

The graph of the data for rG and Sum BPM/L:

### Brew 11: “NEIPS PIF2 (sound)”

Sound detection – OG 1052; FG 1010. 20L in 25L Plastic Speidel Tank.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1023 | 17 | 0 | 0 | 1052 | 0 | ||||

1036 | 18 | 5050 | 38 | 1014 | 37 | Y=0.0075x | 38 | ||

1040 | 18 | 5930 | 42 | 1010 | 44 | 44 | |||

1039 | 20 | 6077 | 42 | 1010 | 45 | 46 | |||

3 | 4 |

The graph of the data for rG and Sum BPM/L:

### Brew 10: “NEIPS PIF2 (infrared)”

Sound detection – OG 1052; FG 1010. 20L in 25L Plastic Speidel Tank.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1023 | 17 | 0 | 0 | 1052 | 0 | ||||

1036 | 18 | 4900 | 38 | 1014 | 36 | Y=0.0078x | 38 | ||

1040 | 18 | 5850 | 42 | 1010 | 43 | 46 | |||

1039 | 20 | 5885 | 42 | 1010 | 44 | 46 | |||

2 | 4 |

The graph of the data for rG and Sum BPM/L:

### Brew 9: “Rå Hvede”

Infared detection – OG 1052; FG 1018. 15L in 25L Plastic Speidel Tank.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1007 | 18 | 0 | 0 | 1052 | 0 | ||||

1007 | 18 | 1111 | 10 | 1042 | 8 | Y=0.0090x | 10 | ||

1010 | 18 | 1989 | 16 | 1036 | 15 | 18 | |||

1010 | 18 | 2626 | 22 | 1030 | 19 | 24 | |||

1003 | 20 | 3569 | 28 | 1024 | 26 | 32 | |||

1008 | 20 | 3992 | 32 | 1020 | 30 | 36 | |||

1010 | 20 | 4138 | 34 | 1018 | 31 | 37 | |||

1014 | 20 | 4190 | 34 | 1018 | 31 | 38 | |||

3 | 4 |

The graph of the data for rG and Sum BPM/L:

### Brew 8: “BrookVer2”

Sound detection – OG 1053 FG 1023. 23L in 30L Barrel.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1028 | 10 | 0 | 0 | 1053 | 0 | ||||

1017 | 10 | 155 | 2 | 1051 | 1 | ||||

1017 | 10 | 550 | 6 | 1047 | 4 | ||||

1017 | 10 | 738 | 7 | 1046 | 5 | ||||

1015 | 10 | 1750 | 14 | 1039 | 13 | Y=0.0080x | 14 | ||

1015 | 10 | 2562 | 20 | 1033 | 19 | 20 | |||

1005 | 10 | 3431 | 26 | 1027 | 25 | 27 | |||

989 | 11 | 3668 | 28 | 1025 | 27 | 29 | |||

994 | 15 | 3784 | 29 | 1024 | 28 | 30 | |||

998 | 17 | 3850 | 29 | 1024 | 28 | 31 | |||

995 | 17 | 3908 | 30 | 1023 | 29 | 31 | |||

1 | 1 |

The graph of the data for rG and Sum BPM/L:

### Brew 7: “Azzca IPA”

Sound detection – OG 1064; FG 1017. 15L in 25L Plastic Speidel Tank

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1019 | 18 | 0 | 0 | 1064 | 0 | ||||

1015 | 20 | 4049 | 36 | 1028 | 30 | Y=0.0089x | 36 | ||

1011 | 20 | 5054 | 41 | 1023 | 37 | 45 | |||

1011 | 20 | 6600 | 47 | 1017 | 49 | 59 | |||

2 | 12 |

The graph of the data for rG and Sum BPM/L:

### Brew 6: “Yoga Pils”

Sound detection – OG 1049 FG 1013. 23L in 30L Barrel.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

993 | 12 | 0 | 0 | 1049 | 0 | ||||

996 | 11,5 | 298 | 2 | 1047 | 2 | ||||

999 | 12 | 1209 | 9 | 1040 | 9 | Y=0.0074xx | 9 | ||

1000 | 12 | 1720 | 14 | 1035 | 13 | 13 | |||

999 | 12 | 2738 | 22 | 1027 | 20 | 20 | |||

1002 | 12 | 4003 | 29 | 1020 | 30 | 30 | |||

1003 | 12 | 4378 | 33 | 1016 | 32 | 32 | |||

1003 | 12 | 4491 | 34 | 1015 | 33 | 33 | |||

1004 | 16 | 4785 | 35 | 1014 | 35 | 35 | |||

1002 | 21 | 5087 | 36 | 1013 | 38 | 38 | |||

2 | 2 |

The graph of the data for rG and Sum BPM/L:

### Brew 5: “Bagge Brooklyn”

Sound detection – OG 1064; FG 1017. 14L in 25L Plastic Speidel Tank

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1008 | 17 | 0 | 0 | 1054 | 0 | ||||

1006 | 17 | 2220 | 19 | 1035 | 16 | Y=0.0086x | 19 | ||

1006 | 17 | 3300 | 27 | 1027 | 24 | 28 | |||

1006 | 17 | 4138 | 31 | 1023 | 31 | 36 | |||

1010 | 20 | 4362 | 32 | 1022 | 32 | 38 | |||

1018 | 20 | 4570 | 34 | 1020 | 34 | 39 | |||

1019 | 20 | 4908 | 35 | 1019 | 36 | 42 | |||

1019 | 20 | 5228 | 37 | 1017 | 39 | 45 | |||

2 | 6 |

The graph of the data for rG and Sum BPM/L:

### Brew 4: “Rå Wiess”

Sound detection – OG 1050; FG 1016. 15L in 25L Plastic Speidel Tank

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

990 | 19 | 0 | 0 | 1050 | 0 | ||||

994 | 19 | 2376 | 20 | 1030 | 18 | Y=0.0084x | 20 | ||

997 | 20 | 3811 | 26 | 1024 | 28 | 33 | |||

1000 | 22 | 4576 | 32 | 1018 | 34 | 39 | |||

1003 | 22 | 4904 | 34 | 1016 | 36 | 42 | |||

2 | 8 |

The graph of the data for rG and Sum BPM/L:

### Brew 3: “REUSE NEIPA HOPS”

Sound detection – OG 1052; FG 1012. 16L in 25L Plastic Speidel Tank.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1014 | 19 | 0 | 0 | 1052 | 0 | ||||

1009 | 18 | 1650 | 12 | 1040 | 12 | Y=0.0072x | 12 | ||

1018 | 20 | 4488 | 30 | 1022 | 33 | 32 | |||

1025 | 20 | 5525 | 37 | 1015 | 41 | 40 | |||

1014 | 20 | 6289 | 40 | 1012 | 47 | 45 | |||

7 | 5 |

The graph of the data for rG and Sum BPM/L:

### Brew 2: “RAW NEIPA”

Sound detection – OG 1052; FG 1010. 20L in 25L Plastic Speidel Tank.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1013 | 19 | 0 | 0 | 1052 | 0 | ||||

1009 | 22.5 | 1743 | 16 | 1035 | 13 | Y=0.0092x | 16 | ||

1017 | 20 | 4368 | 35 | 1017 | 32 | 40 | |||

1019 | 22 | 5178 | 40 | 1012 | 38 | 48 | |||

1014 | 22 | 5491 | 42 | 1010 | 41 | 50 | |||

1 | 8 |

The graph of the data for rG and Sum BPM/L:

### Brew 1: “SW Clone”

Sound detection – OG 1052; FG 1010. 18L in 25L Plastic Speidel Tank.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1010 | 21 | 0 | 0 | 1056 | 0 | ||||

1006 | 22 | 1300 | 8 | 1048 | 10 | Y=0.0062x | 8 | ||

1007 | 21 | 3095 | 23 | 1033 | 23 | 19 | |||

1010 | 21 | 4950 | 34 | 1022 | 37 | 31 | |||

1011 | 21 | 4984 | 34 | 1022 | 37 | 31 | |||

3 | 3 |

The graph of the data for rG and Sum BPM/L:

### Brew 0: “Hooded Kølsch”

Sound detection – OG 1049; FG 1013. 20L in 25L Plastic Speidel Tank.

hPa | Temp | Sum BPM/ L | rG | Gravity | Y=0.0074*x | Error | Correction “One hydrometer reading” | rG_corr | Error_corr |

1011 | 18 | 0 | 0 | 1049 | 0 | ||||

1013 | 18 | 1608 | 10 | 1039 | 12 | Y=0.0062x | 10 | ||

1013 | 18 | 1955 | 14 | 1035 | 14 | 12 | |||

1009 | 18 | 2294 | 17 | 1032 | 17 | 14 | |||

1008 | 18 | 3038 | 21 | 1028 | 22 | 19 | |||

1008 | 18 | 3589 | 25 | 1024 | 27 | 22 | |||

1008 | 18 | 4440 | 30 | 1019 | 33 | 28 | |||

1007 | 18 | 5032 | 33 | 1016 | 37 | 31 | |||

1007 | 18 | 5106 | 33 | 1016 | 38 | 32 | |||

1004 | 18 | 5321 | 34 | 1015 | 39 | 33 | |||

1010 | 18 | 5517 | 36 | 1013 | 41 | 34 | |||

5 | 2 |

The graph of the data for rG and Sum BPM/L: