Debugging code that runs on the brewery takes time and is not simple. Software that heats and transfers physical quantities of liquid results in a slow, constrained debug environment. To avoid these issues I decided to incorporate a brewery simulator into the code.
The physical nature of process control takes time and energy to run through the code. This makes debugging a difficult and time consuming process. Until recently this meant I had to run snippets of the code in isolation. For example the transfer of liquid, heating of kettle and chilling of the kettle were tested individually. This still took a long time to find and fix bugs.
To avoid a lot of this pain I decided to incorporate a simulation mode that would allow me to run and test the code on a windows PC instead of a Raspberry Pi.
MRAA is currently used to drive the I2C and GPIO pins on the Pi. I replaced this with a stub that mimics pin activity.
Modified device drivers to interact differently, e.g.
Flow sensors listen to Pump events and generate simulated pulses.
The Kettle temperature sensor listens to Power settings and simulates fluid temperature changes.
Allowed simulation to run at many times faster than real-time by modifying many process timing constants.
In conclusion. Running the process faster than real time made debugging really fast and simple. This resulted in a significant number of problems being identified and fixed very quickly. The nature of the publish-subscribe model I had chosen made it simple to adapt behaviour for simulation mode. Running on Windows also meant that the post processing of results to draw graphs and publish data etc could also be tested with ease.
I had just gotten hold of some Cryo Hops® LupuLN2® pellets and I wanted to know if they made any difference from using normal pellets. This new form of hops claims to provide an intense hop flavour and aroma without introducing astringent flavours. I also had some Cascade hops in the freezer that I had grown. So it seemed like the perfect time to experiment with dry-hopping the same beer three different ways.
The basis of this experiment was a light pale ale. The same beer was dry hopped for 4 days with pellets, whole hops and LupuLN2 pellets. The quantities of each hop type was adjusted to keep the level of alpha acids constant.
Each beer was given to a bunch of mates at work to obtain their perceived differences. The replies were mixed, perhaps indicative of the similarity of the beers. Unarguably though, the normal pellets were noticeably cloudier than LupuLN2® pellets. I believe this is due to the significantly less quantity of pellets used.
The whole hops divided opinion, people liked and disliked them in equal measure. The main debate seemed to exist between the two hop forms. LupuLN2® arguably had some more aroma than the standard pellets. The pellets though seemed to win out on flavour.
There doesn’t seem to be any great advantage in LupuLN2® pellets in terms of flavour or aroma. The smaller quantities required however result in more clarity. I would recommened there use for beers requiring a high level of dry-hopping. Then again no-one seemed concerned by the cloudier version, it was actually deemed preferable by some tasters.
This months Beer52 box contained a rather exciting experiment which highlights the difference that a single ingredient can make.
Exactly the same reason for building Brewnode.
Ruby Rising v 11th Hour
Both beers have Caramalt, Amber Malt, and Pilsner Malt. 11th hour has the addition of rye malt. The differences were surprising. The rye dramatically increased the head foam and its retention. It also caused a slight haze. Overall it seemed more rounded and suited the style.
California Dreaming v Dreaming of Frites.
No surprises here. The Abbey yeast gave a saison nose and correspondingly typical flavour. It also made the beer a bit darker and slightly better head retention.
Zig v Zag
Zig used a Belgian abbey yeast and Zag was T-58 (whatever that means). In my mind, Zig was the clearly the better beer. It had a sweet, fruity aroma and a more rounded mouth feel than Zag. Most significantly, Zag retained no head foam and was clearly less effervescent.
Mosaic v Ekuanot
Well this one is all about the nose. I preferred the Mosaic because it was more floral and slightly sweet smelling.The Ekuanot was not as powerful and had a medicinal edge to it. Mosaic has a stronger aftertaste but was less bitter than Ekuanot.
One thing that came as a surprise was that the Ekuanot had better head retention. I don’t understand how hops can have this effect. I definitely need to do some more research on this.
Amber malt increased the head retention but introduced a slight haze.
To celebrate the launch of Brewnode, I invited a few friends around to sample my wares. I had all the ingredients for a replica of the classic Summer Lightning from Hopback brewery. I decided that it would be good to give a go and brew live on the day. I wasn’t sure if this was a good idea or not since I’ve never had a brew run complete automatically from start to finish. But hey, why not?
Pale Ale, Golden Promise
30g for 60 mins
30g for 30 mins
35g for 15 mins
East Kent Goldings
50g Dry hopped for 7 days
Mosaic Hops (panicked addition)
50g Dry hopped for 3 days
WLP002 English Ale Yeast
You might notice the addition of some Mosaic dry hops. That’s not in the original recipe but I panicked a bit about the taste during fermentation.
With hindsight, the initial mash temperature was too. This meant that the average temperature during the mash was only
Active fermentation lasted only 3 or 4 days but I left it for about 2 weeks before transferring to a keg. I took a sample after about 10 days and I was not impressed. So much so that I had a decision to make as to whether leave it as is and hope for the best. Or take action and attempt to turn it into something more palatable.
I didn’t have the bottle to run with it as was, so I decided to chuck in a large amount of Mosaic hops into the fermenter. I know this was not in the plan and diverged significantly from he original intention. But I am glad I did because the change was remarkable. The aroma changed almost immediately from a stale smell to a fresh citrus.
Like previous brews, there was a definitive chill haze. I now suspect that cold break in the fermenter is the cause. I chill straight from the kettle to the fermenter through the plate chiller. This means that all of the cold break ends up in the fermenter.
I had to buy some Summer Lightening to compare mine against. Over the past 20 years, what used to be a classic in my mind had turned into a rather bland and fizzy lager like drink. I exaggerate of course but the aroma of Goldings just doesn’t compare to what I’ve become used to.
The main difference with this brew from the previous (Hop++) was the addition of Carafa malt to give the black colour. It was interesting to see that this malt has no husk and doesn’t look like a grain at all. The lack of husk avoids extra tannin making into the beer. Leaving the colour to dominate.
One other change I made was using an east coast yeast because this was where the Black IPA style originated.
Maris Otter Pale Malt
Pale Crystal Malt
Carafa III Malt
30g for 70 mins
15g for 40 mins
9g for 15 mins
26g Dry hop for 4 days
46g Dry hop for 4 days.
WLP008 East Coast Ale
Points of Note
The significant amount of dry hops appeared to have little effect. The same amount in a beer (Hop++) without the dark malt had more aroma.
There was a definite chocolate taste.
The colour was actually more dark brown than black. This visually detracted at times from the taste. Next time, I will add more Carafa malt.
All seemed well during the mash until I started to take some gravity readings. Two things surprised me. Firstly the colour was a lot lighter than expected. This was backed up by the correspondingly low gravity. Something was not right.
After puzzling for a while I realised that I had made a dumb mistake weighing the malt. Instead of adding 700g of caramalt, I had only added 70g!
The boil and cooling went well. The gravity into the fermenter was only 1040 but it tasted great. Given the nature of this brew, I figured that a significant amount of dry hops would do no harm. So 50g of Citra was added for 4 days. The final gravity was 1022 which comes out at 3.3%. Resulting in a light hoppy summer session IPA.