Flite - Keg Level, Temperature, and Pressure Sensor

Homebrew Talk - Beer, Wine, Mead, & Cider Brewing Discussion Forum

Help Support Homebrew Talk - Beer, Wine, Mead, & Cider Brewing Discussion Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.

UncleD

Well-Known Member
Joined
Dec 1, 2018
Messages
190
Reaction score
190
9e467d70-4adb-472e-a758-0668ee84fda9_200x200.png
I am really excited to announce the official release of the Flite sensor and controller for monitoring your keg level, temperature, and CO2 pressure! This was a project that I started earlier this year, and with awesome support and feedback from the homebrewing community, I've been working hard to put this platform together. First of all, I want to say thank you to the homebrew community. Not just this forum, but everyone I've ever brewed with or met in the context of homebrewing. This is hands-down one of the best communities you'll find. In addition, I wanted to give a shout out to @BrunDog for encouraging me to push and make this a supported platform for the community. I also wanted to thank @Thorrak and @LBussy for providing excellent feedback, development contributions, and experience in this space. Also thank you to the other folks who have been testing this platform and continue to provide great feedback.

What is Flite?
The Flite sensor is a modified corny keg lid that replaces your current keg lid, and contains an integrated level, temperature, and pressure sensor. The sensor uses a time-of-flight sensor to measure the distance from the lid to the top of the beer in your keg, and from there the volume can be calculated. Along with the time-of-flight sensor, there is an integrated pressure and temperature sensor. All 3 of these parameters are measured from inside your keg, and requiring no modifications to your current kegs.

Who is this for?
Flite is designed for kegerators and keezers using corny style kegs, and a homebrewer that is tired of not knowing how much beer is left in their keg. In addition, the Flite platform has an Android and iOS mobile app to receive notifications if level, temperature, or pressure fall outside of your desired parameters. Most importantly, I have been working to make this something that is easily integrated with other brewing community platforms and open source platforms like Android and Raspberry Pi.

How can I build this?
DIY is in the DNA of homebrewers, so I wanted to make sure this is a documented and supported open sourced platform for the community. I also understand that not everyone has access to a 3D printer, or wants to write code. For this reason, I am offering a few options to try and satisfy everyone in the brewing community that wants to use this platform. You can source the parts, download the 3D files, and code in the DIY (see below) all available and completely FREE. You can buy a kit from me, where I have sourced the parts in bulk and I'll ship what you need to build it, or you can buy an assembled product.

Here is the complete DIY:
https://www.flitesense.com/flite-diy
What options are there for my setup?
Flite was designed to scale based on the number of kegs you have. Each keg has it's own sensor, and each sensor has it's own controller which is connected to your local wireless network. A controller can have a display where the keg data is displayed on a local touch screen. This is good for a setup with a single or a couple of kegs. A controller can also be "headless", where it is either polled for data or automatically transmits data, and this can be displayed on a monitor or using the Flite mobile app.

The complete support literature for DIY, 3D file downloads, Arduino library, Python library, and integration support has been published here:
https://www.flitesense.com/support
I am currently working on integration support with other community platforms (cough @Thorrak ) to make sure this is something that is available for any homebrewer who wants it. Stay tuned for more developments, but I wanted to get something for you guys, as it seemed like there was interest from quite a few homebrewers in this project.

Please feel free to ask any questions or provide any feedback here.

Pictures
sensor2.png
Controllers_1242x2208_iphone8plusspacegrey_portrait.png
Trend3_1242x2208_iphone8plusspacegrey_portrait.png
SensorAndDisplay_WithHeadless.png


Have a safe and happy holiday everyone, cheers!
 
Last edited:
does it work with both pin lock, and ball lock kegs? how much for turn-key? is it accurate to the ounce? will it work with a cheapo android tablet on my home wi-fi? i'd love to be able to stop having to click my counter for every pour, and having to make sure every glass is the same fill level!
 
Having played with Flite for the past couple of weeks, I have to say that this thing is fantastic. There's a couple of different approaches to measuring how much is left in a keg, but I think this is one of the first that directly measures - you know - how much is left in the keg. It's a blissfully simple approach that does exactly what it says on the label.

Thanks again for producing this, and releasing it the way you did - so that everyone who is interested can build it!
 
I can add one bit of advice, having messed with it a bit in beta. Derrick has given very meticulous instructions, including things "we've never done before on these projects" like potting in some of the parts. Please take any divergence from these instructions with a grain of salt. We are not gentle, and a keg is not a really delicate place. Don't over-think this and just bite the bullet and follow along. It's a very well thought out design and anyone building these should first build one like it's designed to be built.
 
does it work with both pin lock, and ball lock kegs? how much for turn-key? is it accurate to the ounce? will it work with a cheapo android tablet on my home wi-fi? i'd love to be able to stop having to click my counter for every pour, and having to make sure every glass is the same fill level!

Yes, this works with both pin lock and ball lock kegs, because it just replaces the lid. It's my understanding that the lids have the same dimensions and are interchangeable. My understanding is the main difference in ball lock vs pin lock is the type of CO2 in and beer out fittings, and the dimension of the keg.

When you set up a Flite sensor, you perform a 2-point calibration (a high volume, and a low volume), the controller then interpolates the volume based on the current distance. As long as the keg is cylindrical in nature (which I believe pretty much all are), this will work for you.

In regards to accuracy, the sensor grabs a distance once per second, and averages the distances over a 5 minute period. That average is the held until the next 5 minute period. This has allowed accuracy within 0.1 GAL. Here's a screenshot of a trend in the iOS mobile app for one of my kegs:

IMG_6941[1].PNG


The controller and mobile apps also support metric units (Liters, Deg.C, and kPa instead of Gallons, Deg.F, and PSI).

In regards to viewing the data locally, the controller has a web server that you can browse from any device.

The Flite mobile app is also available for Android, you can download it here:
https://play.google.com/store/apps/details?id=com.jed.flite
The app is currently designed for use with the Flite cloud DB, to monitor the level anywhere, there is a small cost for the subscription to cover the cloud hosting services ($15/year which covers 4 controllers). I am considering adding a "local" component to the app so you can browse the current Flite controllers on your local network and view their current data.
 
How much headroom do the controllers require above the keg?

The "headless" controller is 2.25" tall, and sits on top of the lid. You also need room to plug the micro USB in the top. I'd say you want at least 3" above the keg lid. Here's a quick picture I snapped in my kegerator:
IMG_6943[1].JPG


You can also run a 4-pin GX16 female-to-male cable to set the controller elsewhere is space is a limiting factor.

The display controller is designed to be mounted outside of the kegerator/keezer, and connected with a cable. The display can sit on top of the tap tower or mounted using the 4 mounting holes.
 
Is it right that shipping will run $30 per pair of sensor/headless controller regardless of quantity? Not a complaint, it is what it is, just noticed that's how the cart is working.
 
Is it right that shipping will run $30 per pair of sensor/headless controller regardless of quantity? Not a complaint, it is what it is, just noticed that's how the cart is working.

Great catch! I have updated the shipping calculator to more accurately reflect the order.
 
That looks much better! Will you be ramping up availability of the prebuilt units? Not quite ready to jump on this but pretty interested. I'd love to see a way to get the data into BrewBlox but as a workaround they now have an iframe widget so I could always "integrate" another app that way.
 
That looks much better! Will you be ramping up availability of the prebuilt units? Not quite ready to jump on this but pretty interested. I'd love to see a way to get the data into BrewBlox but as a workaround they now have an iframe widget so I could always "integrate" another app that way.

I'll always try to have a handful of these built. I haven't played with BrewBlox, but if it supports an iframe, there are a few ways to go with that. You can browse the controller, configure it to log to taplist.io. Also not sure if BrewBlox supports HTTP GET requests, but the controller will provide JSON data response. Here's some literature on that API:

https://www.flitesense.com/rest-api
 
Super cool idea.

Will this interfere with doing a full star-san keg purge? I try to fill the keg all the way full looks like that sensor would be in the star-san.
 
Super cool idea.

Will this interfere with doing a full star-san keg purge? I try to fill the keg all the way full looks like that sensor would be in the star-san.

The sensor is sealed and waterproof, I drop my lid into a sink full of sanitizer between kegs, rinse it and dry it off before putting it back on. So you should have no concerns in filling the keg all the way.

However, if you are trying to measure level, you cannot submerge the sensor or it will no longer provide valid readings.

It's also worth noting, that if there is water on the face of the sensor, it may have to "drip dry" before it reads accurately again.
 
Also not sure if BrewBlox supports HTTP GET requests, but the controller will provide JSON data response. Here's some literature on that API:

https://www.flitesense.com/rest-api

I think its just a matter of someone smart enough building a connector in Python that calls the API on the Flite units and publishing the data to MQTT. From there it becomes available for display in BrewBlox and gets logged to InfluxDB for trending.
 
I was asked about the safety of beer coming in contact with the 3d printed filament sensor box. Is the box coated in food-safe epoxy?
 
I think its just a matter of someone smart enough building a connector in Python that calls the API on the Flite units and publishing the data to MQTT. From there it becomes available for display in BrewBlox and gets logged to InfluxDB for trending.

Now all we need is someone smart enough, haha!

I was asked about the safety of beer coming in contact with the 3d printed filament sensor box. Is the box coated in food-safe epoxy?

The sensor enclosure is PLA and not coated in the epoxy. It's my understanding that PLA is generally food safe, and because it's pretty much never in contact with the beer, it shouldn't be a problem. I'm sure there are chemical engineers here that could argue either way on that statement however.
 
PLA is cornstarch and sugar I'm pretty sure.
Pretty much, but it does harbor bacteria and stuff pretty good which is why they always say PLA is "not food safe". It would be best to resin print these parts or coat them somehow to be perfectly safe.

I am interested in this project, I'm going to have to sit down and see how much it's actually going to cost me. 😂
 
Could print in PETG, which I believe is much less porous. I'm not sure whether it's considered food safe or not but I use it every day in contact with food and nothing has ever happened to mekasc;osa nn03.............
 
The sensor is sealed and waterproof, I drop my lid into a sink full of sanitizer between kegs, rinse it and dry it off before putting it back on. So you should have no concerns in filling the keg all the way.

However, if you are trying to measure level, you cannot submerge the sensor or it will no longer provide valid readings.

It's also worth noting, that if there is water on the face of the sensor, it may have to "drip dry" before it reads accurately again.

The pressure sensor listed above is technically not "liquid media" compatible ('D' option code), so the sensor port should not be flooded. Liquid media option is available, though in my experience DigiKey doesn't typically carry them (not sure for this one). Just FYI.
 
The pressure sensor listed above is technically not "liquid media" compatible ('D' option code), so the sensor port should not be flooded. Liquid media option is available, though in my experience DigiKey doesn't typically carry them (not sure for this one). Just FYI.

This is a good point. There are many different configurations for this sensor, unfortunately only a handful are available for purchase at this time (depending on vendors and how much you want to pay). The HSCMAND150PA4A3 is the most readily available, cost effective, and (so far) works well in this application. In a perfect world, we would want a 'T' or 'V' in the option code, and actually a 060 for a 0-60 range instead of 0-150, which would give better precision for the measurement range of keg pressures. While this sensor is not submerged 99% of the time, it is a great point that the diaphragm is not designed for measuring liquid media (a submersible pressure transducer for example). I will say that I've submerged this sensor many times, and I have not seen any degraded performance.

But, getting back to the original question about the pressurized star-san keg purge, I HAVE NOT tested any long term, liquid media, under pressure. That's really not the scenario this sensor was designed to measure. So it's probably worth swapping the lid with a regular lid if you will be filling the keg up to the lid and pressurizing it.
 
But, getting back to the original question about the pressurized star-san keg purge, I HAVE NOT tested any long term, liquid media, under pressure. That's really not the scenario this sensor was designed to measure. So it's probably worth swapping the lid with a regular lid if you will be filling the keg up to the lid and pressurizing it.

I’m guessing what @eric19312 does, he fills his kegs completely with StarSan, and then purges the StarSan out of the keg with CO2 from a cylinder or from an active fermentation to minimize/eliminate the presence of Oxygen. (So swapping lids wouldn’t be an option)

I could anticipate the Flite submerged in StarSan not being of a long duration (at least it doesn’t have to be) and it doesn’t take a lot of pressure to purge the StarSan out of the keg. I ”think” (that is usually an unsuccessful attempt for me) you saying that you submerge the apparatus in a sink of StarSan answers the question.
 
Regarding food safe filament, this video from Prusa may give a little insight.

Personally, I'm less concerned with the filament being certified food safe, any contact with beer will be minimal and temporary. The beer should never be high enough to reach that spot except for some splashing as you move a full keg around. I'd be slightly more concerned with smoothing to eliminate nooks and crannies that are hard to sanitize, but even that (in my opinion) isn't a significant concern.
 
I’m guessing what @eric19312 does, he fills his kegs completely with StarSan, and then purges the StarSan out of the keg with CO2 from a cylinder or from an active fermentation to minimize/eliminate the presence of Oxygen. (So swapping lids wouldn’t be an option)

I could anticipate the Flite submerged in StarSan not being of a long duration (at least it doesn’t have to be) and it doesn’t take a lot of pressure to purge the StarSan out of the keg. I ”think” (that is usually an unsuccessful attempt for me) you saying that you submerge the apparatus in a sink of StarSan answers the question.

Yes this is what I am doing. At this point knowing how much beer is in the keg would be a nice feature, but knowing I've done whatever I can to keep oxygen out of my keg continues to be the must have.

I can see the sensor getting wet twice in my practice. First would be the full star-san push. That would wet the sensor with star-san but it would be only for a few minutes and then it would be in pressurized CO2 atmosphere (I fill into pressurized kegs because I'm fermenting in unitank and beer is fully carbed going into the kegs). Second would be a little while later when I lift the full keg into my keezer, the beer will slosh around in there and am sure the lid will get a bit wet. Actually there is probably a bit of foam in the keg that would wet the beer for a while.

I guess cleaning the lid in heated PBW circulation basin is probably out too.
 
Personally, I'm less concerned with the filament being certified food safe, any contact with beer will be minimal and temporary. The beer should never be high enough to reach that spot except for some splashing as you move a full keg around. I'd be slightly more concerned with smoothing to eliminate nooks and crannies that are hard to sanitize, but even that (in my opinion) isn't a significant concern.

Thanks for sharing the video! You are correct that this sensor enclosure should rarely actually be in CONTACT with the beer. That being said, this is a 3D printed enclosure, so it is a somewhat porous surface and should be cleaned regularly. I remove the lid and sanitize it between every keg change and haven't had any issues with anything "funky" yet!
 
Yes this is what I am doing. At this point knowing how much beer is in the keg would be a nice feature, but knowing I've done whatever I can to keep oxygen out of my keg continues to be the must have.

I can see the sensor getting wet twice in my practice. First would be the full star-san push. That would wet the sensor with star-san but it would be only for a few minutes and then it would be in pressurized CO2 atmosphere (I fill into pressurized kegs because I'm fermenting in unitank and beer is fully carbed going into the kegs). Second would be a little while later when I lift the full keg into my keezer, the beer will slosh around in there and am sure the lid will get a bit wet. Actually there is probably a bit of foam in the keg that would wet the beer for a while.

I guess cleaning the lid in heated PBW circulation basin is probably out too.

The scenario in which the sensor is in contact with liquid media, and pressurized, and for multiple minutes is what would concern me. This port is designed to measure "gas" pressure. While I haven't had any problems with submerging it for cleaning, I have not put the port into a submerged pressurized condition. That is really not what the sensor is designed for.
 
Very neat! I might have looked up the wrong part (version), but it seems the temperature and pressure sensor is significantly more expensive than the level (distance) sensor; is that right?
 
Very neat! I might have looked up the wrong part (version), but it seems the temperature and pressure sensor is significantly more expensive than the level (distance) sensor; is that right?

You are correct, the temperature/pressure sensor is much more expensive than the ToF sensor. If you are interested in saving some money building it, you don't NEED it. You can modify the enclosure print to close up the pressure nipple, and just install the ToF sensor. Everything else will still work, you just won't have good data for your pressure or temperature readings.

Upside? You save about $30.
Downside? You don't get to tell people that you have the ONLY keg level/temperature/pressure sensor.

I would imagine some users want temperature/pressure, some may not.
 
I see you have the moral support of @BrunDog :) does this mean that BruControl can read the sensor data?

It seems each sensor needs its own controller (+display). That makes sense if you want a display for each tap. But can multiple sensors be connected to a central controller to be read by something like BruControl or another program?

Awesome awesome awesome project you have here!

Edit (v2): actually, I see that the WeMos D1 is an ESP8266, which I know will play nice with BruControl since I have a few 8266 controllers connected already. And I now see that the headless controllers have the D1 in them, which is awesome. So, set the lid, plug in the headless controller, then happy beer time from there :) I would just need to play with my BruControl to figure out how to connect and get the data.
 
Last edited:
I see you have the moral support of @BrunDog :) does this mean that BruControl can read the sensor data?

Not that I know of right now, but maybe I could talk @BrunDog into it :p

It seems each sensor needs its own controller (+display). That makes sense if you want a display for each tap. But can multiple sensors be connected to a central controller to be read by something like BruControl or another program?

As of now, there is a 1:1 relationship between the sensor and controller. The model is built out to support additional wired sensors at additional I2C addresses (or with some type of multiplexer) possibly in the future. However, the most simple and scaleable model is a controller per sensor. This also streamlines the wireless integration effort into other software, in my opinion.

Edit (v2): actually, I see that the WeMos D1 is an ESP8266, which I know will play nice with BruControl since I have a few 8266 controllers connected already. And I now see that the headless controllers have the D1 in them, which is awesome. So, set the lid, plug in the headless controller, then happy beer time from there :) I would just need to play with my BruControl to figure out how to connect and get the data.

Yes, both the headless controller and the display have an ESP8266. In regards to getting data, check out the API documentation here:
https://www.flitesense.com/rest-api
Cheers!
 
Back
Top