Package: cbpi4-BLEHydrom
CraftbeerPi4 Sensor Plugin for Hydrom / TiltAllows your Hydrom or Tilt digital hydrometer to send data to CraftBeerPi 4.0, such as the current temperature and gravity readings. The plugin allows you to create multiple sensors, each of which is associated with a different data type that the device is capturing, so that you can use these sensors as you would any other sensor in CraftBeerPi4. You can also use multiple Hydrom or/and Tilt devices for different fermentation chambers at the same time. See below for setup instructions and some screenshots of the configuration options.The plugin is poerted from the CraftbeerPi3 plugin Version (https://github.com/IndyJoeA/cbpi_Tilt)RequirementsYou need to run this on a Raspberry that has bluetooth onboard or a bluetooth dongle installed. Bluetooth needs to be enabled.InstallationBefore you can install this plugin, you will need to install a couple of additional packages manually. The plugin has been only tested yet with Raspberry Pi Bullseye 32 bit where it is confirmed to be working with the Hydrom and the Tiltsudo apt-get install pkg-config libboost-python-dev libboost-thread-dev libbluetooth-dev libglib2.0-dev python3-devOnce these packages have been installed, you need to install the plugin on your system.Please follow th instructions from thedocumentation.Package name:  cbpi4-BLEHydromPackage Github link:https://github.com/pibrewing/cbpi4-BLEHydrom/archive/main.zipPython needs also special rights, to access the bluetooth resources. Therefore you need to run the following command on bookworm that comes with python 3.11:sudo setcap 'cap_net_raw,cap_net_admin+eip' /usr/bin/python3.11ConfigurationCraftBeerPi ConfigurationIn CraftBeerPi, click on the side menu, and then chooseHardware.Click theAddbutton in the Sensor section, and fill out the sensor properties:Name: Give the sensor a name. This is specific to this sensor reading, and does not need to match the Tilt color. It can be something like Wort Gravity or Tilt Temperature.Type: Choose BLEHydrom.Tilt Color: This should be set to the color of your Tilt or color config of your HydromData Type: Each Tilt has three types of data that it reports, the Temperature,Gravity and RSSI, so select the one that you are configuring for this particular sensor.Gravity Units:This field is only required if Data Type is set to Gravity. The Tilt converts its readings into Specific Gravity by default. However you can choose one of three types here and it will be converted to that unit automatically. The choices are SG (Specific Gravity), Brix (or °Bx), and Plato (or °P).Calibration Point 1-3*:Optional. These fields allow you to calibrate your Tilt by entering an uncalibrated reading from the Tilt and then the desired, calibrated value. The format to use isuncalibrated value=actual value(spacing is optional). More info on calibration is in the section below.Once you have filled out the sensor fields, clickAdd.Repeat the above steps if you want additional sensors for the other data types that your Tilt reports, or if you have more than one Tilt, you can create sensors for those devices as well.You can now add any of the Tilt sensors to kettles or fermenters in your brewery, or you can view their data on the dashboard or graph their data with the charts.Tilt CalibrationYou can use the Calibration Point fields to calibrate your Tilt, much like when using the standalone Tilt app. Here are some examples of ways you can calibrate your Tilt with this plugin.You can perform theTare in Waterprocedure by placing the Tilt in water, taking a reading, and entering the value in a Calibration Point field in the format1.002 = 1(change the first number to your specific reading).To fine tune the calibration even more, you can make a low and/or high gravity calibration point by taking readings of one or two solutions with a known gravity and enter those readings astilt reading=solution's actual gravity.If you enter only a single calibration point, the difference will be applied to every reading equally. So you could enter0 = 5if you just want 5 added to every reading that the Tilt takes, or5 = 0if you want to subtract 5 from every reading.  If you enter two or more calibration points, a linear relationship between the points will be determined and used to adjust the readings accordingly (known as linear regression).These calibration procedures work the same for both gravity readings and temperature readings, and are calculated after the conversion to the desired units (°C to °F, SG to Brix), so you should calibrate your Tilt with the units set to what they will be when you use it for actual brewing.Changelog:10.01.23: (0.0.6) Test with PyBluez Mod as interim solution01.12.23: (0.0.6.a1) updated requirements11.05.22: (0.0.5) Updated README (removed cbpi add)25.02.22: (0.0.4) Updated README16.01.22: (0.0.3) Reduced mqtt traffic (->cbpi 4.0.1.2 required!!)08.01.22: (0.0.2) Added RSSI value from blescan as parameter07.01.22: (0.0.1) Initial Commit