[Version 2 Release] RaspberryPints - Digital Taplist Solution

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.
Without testing this code you would do something like this:
add
if(isset($config['ignorePours']) && $config['ignorePours']) return;
to includes/pours.php ~line 36

then run in mysql
INSERT INTO `config` ( configName, configValue, displayName, showOnPanel, createdDate, modifiedDate ) VALUES
( 'ignorePours', '0', 'Do not save pours', '1', NOW(), NOW() );


The configuration would automatic be added to the personalize screen, the flowmeters would still count the pours and the python attempt to save them but the php would just ignore it
 
Can't one just issue a command line "stop flowmon service" or similar?
Wait, and use the command line? Oh dear no, this is a real 1st world problem I'm trying to solve here. :D

Anyway, I'll give RandR+'s code a go this weekend. I have a few full kegs at the moment, so plenty of beer to cry into if I mess it up.
 
So I was wondering if this is still a valid project?
Yes it is, I am still trying to make updates to it though much slower now days.

The official website is out of date, and the original code does not work on the latest raspbian systems.

My version works up buster (bullseye removes python 2.7 support and some dependency are only available there i started working to get them updated to python 3 but havent made time to finish yet)

So after you install Buster on a pi open the terminal and run
curl -L https://raw.githubusercontent.com/rtlindne/RaspberryPints/master/util/installRaspberryPints | sudo bash

this will launch an install script that will install all the dependencies you need and walk you through the setup of RPints.
 
Also how can I add white bottle caps and 750ml bottles?
vim admin/includes/managers/bottle_manager.php

I added a few :

function getCapColors(){
$colors = array(
Srm::fromColors("gold","255,150,50"),
Srm::fromColors("yellow","255,255,0"),
Srm::fromColors("light blue","0,255,255"),
Srm::fromColors("purple","255,0,255"),
Srm::fromColors("blue", "0, 0, 255"),
Srm::fromColors("red","255,0,0"),
Srm::fromColors("green","0,255,0"),
Srm::fromColors("white","255,255,255"),
Srm::fromColors("black","0,0,0"),
Srm::fromColors("orange","255,165,0")
);
return $colors;
 
@RandR+
WOW, I really like the app, thanks!

Is it posible to adjust font size, without editing files (also, I updated title size, works on laptop but not on my tablet?) ?

Also, I ordered : YF-S401 and I plan to use with Arduino hardware that I have in hand, is there any updated guide for configuring flow meter with arduino?

Here is a pic of my setup so far!
 

Attachments

  • IMG_0257.jpg
    IMG_0257.jpg
    3.7 MB · Views: 0
I updated title size, works on laptop but not on my tablet
Try force refresh (Shift F5) it may have cached the paged and not getting latest

Is it posible to adjust font size, without editing files
Not at this time

is there any updated guide for configuring flow meter with arduino
The original guide on connection is still valid for Arduino. Connect the flow meters positive to the +5 and the negative to ground (both can go to the same pins) Then connect the signals to a Digital GPIO pin and configure RPints to use that pin for that tap (taps screen in the admin section)

you will also have to setup the pulses per gallon or liter, based on a spec on a website I found Pulses per Liter: 5880
 
The Tilt folks have both a pre-canned OS image - and a standalone application. Use the latter and it should work fine...
Tilt Pi Installation Instructions for Raspbian Jessie or Stretch
Cheers!
I found this post, it's obviously a bit old now. Does anyone have tilt-pi running on an Rpints install? I happened across a tilt the other day, and realised it is quite the different beast to my iSpindel. As it's Bluetooth only, and my Rpints Pi sits right next to the fermenter, I was thinking that tilt-pi would be totally cool for this. My plan is to eventually get it talking to Brewfather.

Thanks in advance.
 
I am considering using RaspberryPints but I am wondering if it can be used with flowmeters without an Alamode board as I am trying to work with what I already have.
 
All I need now is an Arduino Uno I can get a taplist that will show the remaining beer?
Correct, i use similar flow meters

The original project web page software install instructions are out of date. .
From the terminal you can run
curl -L install.rpints.com | sudo bash

and that will walk you through installation and setup of the basic RPints
 
Correct, i use similar flow meters

The original project web page software install instructions are out of date. .
From the terminal you can run
curl -L install.rpints.com | sudo bash

and that will walk you through installation and setup of the basic RPints
Awesome and I just this minute found an old Uno r3 in the shed, fingers crossed it still works.
 
So I've been taking a lot from this forum over the last year or so without giving much back, so here's a screenshot of my RPints layout:

screenshot-12-medium-68211.png


My current setup can only fit 3 kegs, but I plan to upgrade to a 6 keg setup which will look more like this:

screenshot-11-medium-68210.png


Next steps: hook up PIR & temp logging kit courtesy of day_trippr (parts acquired, just need to allocate time).

Thanks to all involved in this amazing project including a posthumous thank you to the long departed original devs who started this.

Cheers,

Kal
I would like to have the "beer names" bigger like above and have the "style names" larger as well.
Also I would like to have the tasting notes in a larger font.
In the end these will be displayed on a 32" TV that sits on a shelf about 7.5 feet up and the top will be close to 9 feet up.
Rpints_1.JPG


Also I would like to change where is says Bottles to inside and up next.
Where does one enter the information displayed in that section?
This is a new/fresh install via the script.
Rpints_2.JPG


@day_trippr you seem to be the resident expert on this project, any insight you could provide would be appreciated.
I also see where @kaljade changed the title font, I'm considering that as well.

Anyone else that might be able to point me in the right direction, all help is appreciated.

Thanks.
:bigmug:
:thumbsup::ghostly:
 
RandR+ is the man behind a lot of the recent coding.

Most of the mods you'll need to make are in the /var/www/html/style.css form
May I suggest you make a copy of that before tinkering, especially if you're not 100% confident with HTML

This is my current display. Added a chalk like webfont, and a blackboard style image to the background.

Screen Shot 2022-05-27 at 7.18.26 am.png
 
Agreed, my expertise goes back to the "classic" R'pints (which I still run in my humble brewery) and thus I would immediately defer to @RandR+ on anything to do with his implementation...

Cheers!
 
As mentioned before most of the fonts are set in styles.css in the root of the webpage

There may be some element styles in /includes/beerListTable.php but I dont see any font size information in it.
Also I would like to change where is says Bottles to inside and up next.
Where does one enter the information displayed in that section?
The Bottles title is printed in index.php in the root directory. ~line 252
The bottles information is entered in the admin bottles section admin/bottle_list.php
 
I am looking for some help as I am having trouble getting the flow meter working properly.

I have connected my Uno via USB to the Pi. In the Pi Arduino IDE I select port ttyACM0 and run the Serial Monitor, it keeps showing random letters like ukttttttttttataaaaaaaaaaatttttttttatCtttStattae from the word StatusCheck interspersed with StatusCheck;.

If I blow into the Flow Meter I shortly after get something like U;-1;3;xxxx where xxxx will be a 4 digit number that seems to be bigger the longer I blow and sometimes if I blow for 20 or 30 seconds I will get a few of these one after another.

I have selected PIN 3 for the Taps Flow Pin setting on Raspberrypints and connected the flow meter to 5v, gnd and PIN 3.

I did get one update in all my testing in the Analytics Pours Page but that was for 22,478.26ml and so was ignored but subsequent attempts blowing more or less doesn't seem to equate to any update of the pours. /var/log/rpints.log currently shows

2022-05-28 16:49:21 RPINTS: No such device - Sleeping to try again 2022-05-28 16:49:26 RPINTS: Could not import RFID Reader, RFID disabled. Assuming SPI not installed/configured 2022-05-28 16:49:36 RPINTS: starting WS server 2022-05-28 16:49:36 RPINTS: starting device monitors... 2022-05-28 16:49:36 RPINTS: starting command server 2022-05-28 16:49:36 RPINTS: starting fan control 2022-05-28 16:49:36 RPINTS: Fan Control fanControl1 is Running 2022-05-28 16:49:36 RPINTS: Not Configured to run Fan 2022-05-28 16:49:37 RPINTS: 1Wire Temperature Thread 1 is Running ('Unexpected error:', <class 'serial.serialutil.SerialException'>) Traceback (most recent call last): File "/var/www/html/python/FlowMonitor.py", line 308, in monitor msg = self.readline_notimeout(False) File "/var/www/html/python/FlowMonitor.py", line 85, in readline_notimeout c = self.arduino.read(1) File "/usr/lib/python2.7/dist-packages/serial/serialposix.py", line 501, in read 'device reports readiness to read but returned no data ' SerialException: device reports readiness to read but returned no data (device disconnected or multiple access on port?) 2022-05-28 16:56:17 RPINTS: flowmonitor aborted, restarting... 2022-05-28 16:56:18 RPINTS: 1Wire Temperature Thread 1 is Running 2022-05-28 16:57:04 RPINTS: serial connection stopped... 2022-05-28 16:57:05 RPINTS: flowmonitor aborted, restarting... 2022-05-28 16:57:16 RPINTS: serial connection stopped... 2022-05-28 16:57:17 RPINTS: flowmonitor aborted, restarting... 2022-05-28 16:57:29 RPINTS: serial connection stopped... 2022-05-28 16:57:30 RPINTS: flowmonitor aborted, restarting... 2022-05-28 16:58:02 RPINTS: serial connection stopped... 2022-05-28 16:58:03 RPINTS: flowmonitor aborted, restarting... 2022-05-28 16:58:26 RPINTS: serial connection stopped... 2022-05-28 16:58:27 RPINTS: flowmonitor aborted, restarting... 2022-05-28 16:58:34 RPINTS: serial connection stopped... 2022-05-28 16:58:35 RPINTS: flowmonitor aborted, restarting... 2022-05-28 16:58:40 RPINTS: serial connection stopped... 2022-05-28 16:58:41 RPINTS: flowmonitor aborted, restarting... 2022-05-28 16:59:06 RPINTS: serial connection stopped... 2022-05-28 16:59:07 RPINTS: flowmonitor aborted, restarting...

Please help

Thanks
 
OK I have replaced the USB Cable and I seem to be getting fewer errors and service restarts, also calibrated the Count per litre which changed it from 23 which was a guess of mine to 1323 so now a 10 second blow registers about 1.5l. Obviously I will have to re-calibrate with liquid once I have everything in place. My question now is how often and how quickly should pours be registered as mine seem to take an age to register and where can I change these settings if at all? Also is there a minimum pour setting and where can I change it?
 
Ok, had my Rpints running just long enough to have forgotten absolutely everything about setup...

Changing a keg today and could not connect to the IP so i restarted, and still no luck.

Then i connected a keyboard and a mouse and got in the menu, i saw that the last update was more then a year ago so i clicked "get latest..." and it seemed like nothing happened, after a while by not being able to do anything i pulled the plug, and it rebooted fine, but when Rpints loads i get a white screen, and it looks like i cannot do anything.

Any chance i can save all my settings (kegs) if so, how?
 
My question now is how often and how quickly should pours be registered as mine seem to take an age to register and where can I change these settings if at all? Also is there a minimum pour setting and where can I change it?
They should register pretty quickly if you dont have a long timeout when the pour stops the settings under the tap list control this: pour message delay defaults to 300 millisecondsm Pour Trigger Count is the minimum number of pulses for it to record a pour.
1653913691876.png

How hard would it be to incorporate this code or similar into Raspberrypints?
Probably not too hard, as I already have logic in Rpints to use MQTT it would just be add in a setting for just using the PI, but I like the Arduino board as it keeps the pins on the pi open for other things (like RFID or fans)
 
Any chance i can save all my settings (kegs) if so, how?
Is Pi OS loading? Can you get to the database? If so you can create a backup that way and continue on.

RPints has a built in backup feature but if you cant get RPints to load then you need to manually create the backup see:
https://mariadb.com/kb/en/incremental-backup-and-restore-with-mariabackup/
Though a few months ago my system became so corrupt i had to manually pull the files from the SD card and manual recover them to a different database then restore that back to a fresh pi (I did have a clone of the SD card that worked but it was a few months old so I wanted to save my latest data)
 
Though a few months ago my system became so corrupt i had to manually pull the files from the SD card and manual recover them to a different database then restore that back to a fresh pi (I did have a clone of the SD card that worked but it was a few months old so I wanted to save my latest data)

Ooh, there's another feature request - auto remote backups ;-) (just kidding)
 
If you have any leads on how to build OneDrive backups into a distributed project like this, let me know. I was looking into them awhile back, but OAuth isn't designed for projects that aren't centrally hosted. :(

I have no idea, my googling is possibly worse than my HTML skills.

https://jarrodstech.net/how-to-raspberry-pi-onedrive-sync/
I got this from: MS Onedrive - Raspberry Pi Forums

Like I said, no idea, not tried any of this yet. (I only just got the idea reading RandR+'s post a few minutes ago!
 
fwiw, at least with the "classic" R'Pints, there are only a handful of data files that need backing up - the database itself and its log files - and together there's not much space used. Many if not most routers provide a USB port that can accomodate a thumb drive set up as a mini NAS device, which can in turn be exploited by bash scripts on an RPi host. I've been doing this for years, with the only fly in the ointment being Microsoft's insistence in disabling SMB/CIFS client services every 30 days. But that only affects visibility/management via my Windows machines and has no deleterious affects on the actual NAS functionality wrt my fleet of RPi's...

Cheers!
 
Is Pi OS loading? Can you get to the database? If so you can create a backup that way and continue on.

RPints has a built in backup feature but if you cant get RPints to load then you need to manually create the backup see:
https://mariadb.com/kb/en/incremental-backup-and-restore-with-mariabackup/
Though a few months ago my system became so corrupt i had to manually pull the files from the SD card and manual recover them to a different database then restore that back to a fresh pi (I did have a clone of the SD card that worked but it was a few months old so I wanted to save my latest data)
Hi, yes, Pi OS is loading, but when i get the white screen i cannot get back to it...

Cant remember what keys to push to exit Rpints.
 
So trying to install w/flowmeter
After running curl -L install.rpints.com | sudo bash
reboot, web page fine

log
$ tail -f /var/log/rpints.log
/var/www/html/python/hx711.py:100: SyntaxWarning: "is" with a literal. Did you mean "=="?
if gain is 128:
/var/www/html/python/hx711.py:102: SyntaxWarning: "is" with a literal. Did you mean "=="?
elif gain is 64:
/var/www/html/python/hx711.py:104: SyntaxWarning: "is" with a literal. Did you mean "=="?
elif gain is 32:
Traceback (most recent call last):
File "/var/www/html/python/PintDispatch.py", line 21, in <module>
import SocketServer
ModuleNotFoundError: No module named 'SocketServer'

I can fix those by changing to == int the hx711.py
sudo pip3 install mysqlclient
change SocketServer to socketserver

Then get error for mod_pywebsocket.standalone
sudo pip3 install mod-pywebsocket

Then get to
Traceback (most recent call last):
File "/var/www/html/python/PintDispatch.py", line 26, in <module>
from mod_pywebsocket.standalone import WebSocketServer
File "/usr/local/lib/python3.9/dist-packages/mod_pywebsocket/standalone.py", line 331
except OpenSSL.SSL.SysCallError, (err, message):
^
SyntaxError: invalid syntax

I know site is not SSL so how do I get around this? Or what should I do differently.

Been through a few reinstalls always turns out the same.

Appreciate any help or assistance.
 
There's quite a lot to read on this thread, I've had a look at the raspberry pints web page and have installed Raspberry pi os called
bullseye on my 3b+. From reading post 7606 by @RandR+ I suspect I'm doomed and can't currently install raspberry pints.
It was one of the reasons that I got the pi but also to run kodi / watch content and use brewfather in the bar room next to the brewery.
I will wait patiently for a reworking if needed as there's been quite a lot of code change I believe from Buster to Bullseye.
Keep up the good work it's a great program by the looks of it.
 
Last edited:
Been through a few reinstalls always turns out the same.

Appreciate any help or assistance.
From those errors it looks like you are trying to use python 3.0 which RPints is not compatible with yet, I have a start on upgrading it but I just havent made time to finish it.

If running Bullseye OS version you cannot use Python 2.7
 
Back
Top