[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.
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
This answers my question as well thank you, I'll wait patiently.
 
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
It is python 3.x

I realized at some point it was likely the issue. Saw @DuncB post and confirmed. Not sure how I missed the one a dozen or so before but I have been through alot of this thread. Needs a place of its own with several threads. Installation, issues, feature requests etc..

Anyway I was hoping someone had some ideas. I have been altering the scripts as I find issues trying to make it work.


I do like what I have been playing with and appreciate how you @RandR+ and others have kept it alive.
 
It is python 3.x
This answers my question as well thank you, I'll wait patiently.
I got the main pieces committed to make RPints.
Mainly converting mod_pywebsocket to be python2.7 and python3 compatible.

I still need to install the latest OS on my PI and run the installer. I believe there will be some dependency changes I need to make in the installer and the rest of the python, but feel free to try it on yours and report any other python issues you have
 
Anyone know how to remove the Accolades column?
you found a bug with the vertical tap list display. Instead of removing the column that configuration would just show/hide accolade title.
Use the customize tap display under Personalize to show/hide columns (also you can drag and drop them to where you want them to be)

I removed that config now to prevent future confusion
 
I am setting up Raspberry Pints for the first time and have loaded and configured Buster, and have followed the installation routine to install Raspberry Pints with changes to Mysql to mariadb, and from php 5 to php 7 and have finally got to the setup screen.
Once completed I get this message:-

"Validating Entries...Success!
Checking DB connectivity...
Warning: mysqli_connect(): (HY000/2002): No such file or directory in /var/www/html/install/includes/configprocessor.php on line 52
Success!
Checking config folder permissions...Success!

Cannot connect the the database using the supplied information.

Please press the back button on your browser to fix these errors."

Any advice on how to fix this.

I have redownloaded the LAMP stack but it says I have the latest versions installed.
 
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.

I recommend you do ^that^...

Cheers!
 
Warning: mysqli_connect(): (HY000/2002): No such file or directory in /var/www/html/install/includes/configprocessor.php on line 52
Success!
Yes do

curl -L https://raw.githubusercontent.com/rtlindne/RaspberryPints/master/util/installRaspberryPints | sudo bash

I'm guessing you are trying to use the original, the original doesn't work past Jessie because php deprecated mysql calls in favor of mysqli calls. Tobor's version and my version both support Buster. Im working on Bullseye for some reason it seems like the Arduino isnt getting messages from the python and thats the last thing to work out
 
My SD card died a few days ago, I inserted my backup SD card (unfortunately it was very old), I ran all the update and upgrades, then ran the RPints install script. Everything is up and running just fine, except for the motion detector. The log shows this:

1656511331343.png


The motion detector is still attached to pin 26 (CE1) just as it was when it was working properly, and i have entered 26 as the pin number in the configuration.

Any ideas how to get it working again?
 
Any ideas how to get it working again?
in /var/www/html/python/Config.py
change
config['flowmon.debug' ] = False#True
to
config['flowmon.debug' ] = True

then restart flowmon
sudo /etc/init.d/flowmon restart

recheck the logs it should have more information in it
 
in /var/www/html/python/Config.py
change
config['flowmon.debug' ] = False#True
to
config['flowmon.debug' ] = True

then restart flowmon
sudo /etc/init.d/flowmon restart

recheck the logs it should have more information in it
2022-06-30 06:34:47FlowMonitorDTraceback (most recent call last): File "/var/www/html/python/FlowMonitor.py", line 658, in run GPIO.add_event_detect(self.pirPin, GPIO.RISING, callback=self.MOTION) RuntimeError: Failed to add edge detection
 
RuntimeError: Failed to add edge detection
Usually I see that when the pin number used is not a valid GPIO pin, since you said it was working on 26 before i dont suspect this to be the case.

Can you send a screen shot of the motion detector configuration? I will recreate on mine to see if it happens to me also.

You may want to try a different pin configuration just to see if it works (dont need to change wiring around until it does)
 
Usually I see that when the pin number used is not a valid GPIO pin, since you said it was working on 26 before i dont suspect this to be the case.

Can you send a screen shot of the motion detector configuration? I will recreate on mine to see if it happens to me also.

You may want to try a different pin configuration just to see if it works (dont need to change wiring around until it does)
1656594159192.png
 
I get the same error. Are you running RFID? If not try disabling SPI from the pi configuration and see if that allows it to work.
Not running RFID, I disabled SPI and rebooted. Some progress was made, according to the log the motion sensor is now detecting motion. Waiting to see if the screen comes alive, someone turned off the monitor without telling me ...

1656597525143.png
 
Is there a good database backup option that I'm not seeing in the GUI? I'd like to be able to go into the management portal and export a copy of the DB to the computer I'm accessing on, but I don't see anything for that
 
database backup option that I'm not seeing in the GUI?
In my version there is a backup/restore option on the install admin page, but it only places the file in the sql/backups directory on the pi, you have to transfer it to you local computer afterwards.
1657047506182.png
 
Have you considered adding an option for sqlite? It should be pretty simple to convert the base sql dump, there are tools to do it. This seems like a perfect project for a tiny sqlite db so you dont have to worry about a full separate db server.
 
@RandR+
An enhancement request ... currently I have the "Allow Sample Pour" set to "On" and when I click the tap number I get a one ounce pour registered. It would be nice if this pour amount could be adjusted by the user to a different default amount in the configuration along with the option to either:
1) always use that default amount, or
2) to automatically open the "Manual Pour" interface so the user could enter a variable amount each time. Sometimes my flow meters just don't record a pour and I currently need to go into the admin page, open the tap page, and enter a manual pour, then exit back to the main screen. If this function could also be triggered by simply clicking the tap number, then the user could simply enter the number of ounces poured without opening the admin screen (i.e. - click the tap number, a dialog box appears to "Enter the amount poured", and the database is updated accordingly when the dialog box is closed).
 
An enhancement request ... currently I have the "Allow Sample Pour" set to "On" and when I click the tap number I get a one ounce pour registered. It would be nice if this pour amount could be adjusted by the user to a different default amount in the configuration along with the option to either:
1) always use that default amount, or
i got that complete. the second one is going to be more time then i have right now
 
Would the attached work for running two flow meters on an Arduino R3, with the RandR version? I couldn't find any wiring diagrams that laid out how to set them up on an Uno, could only find the descriptions for getting them set up on the Alamode board. The goal is to eventually run 4 or 5, but it's much easier to read with just 2 on there.
 

Attachments

  • Pi Uno R3 2 Flow Meters Wiring.png
    Pi Uno R3 2 Flow Meters Wiring.png
    1.5 MB · Views: 0
Yes I was just thinking it would be easy for backing up and even setting up since it’s one last thing.
 
In a previous version of Raspberry Pints I had the below code I put in to name a location of taps 1-4 and taps 5-8. The current version index.php looks a little different and trying to find where I would enter this code in the index.php??
Annotation 2022-07-19 171013.jpg

<?php if ( $i == 1) { ?>
<tr>
<td colspan="6"><font size ="40"><font color="A0A0A0"<b><strong>Cedar Keezer</strong></b></font></td>
</tr>
<?php } ?>

<?php if ( $i == 5) { ?>
<tr>
<td colspan="6"><font size ="40"><font color="A0A0A0"<b><strong>Basement Keezer</strong></b></font></td>
</tr>
<?php } ?>
 
I put in to name a location of taps 1-4 and taps 5-8. The current version index.php looks a little different and trying to find where I would enter this code in the index.php??
To support vertical and horizontal tap list the logic has been moved to includes/beerListTable.php

~line 109 is where you will want to put in your code
 
To support vertical and horizontal tap list the logic has been moved to includes/beerListTable.php

~line 109 is where you will want to put in your code
Awesome! That worked. Have any ideas to remove some of the empty space between the heading "Cedar Keezer" and tap1?
Annotation 2022-07-19 171013.jpg
 
Have any ideas to remove some of the empty space between the heading "Cedar Keezer" and tap1?
that looks like the logic to make all rows the same height
1658342056437.png


you can try turning that off and if that fixes it and looks good you can leave it or you will have to modify index.php the javascript under
<?php if($config[ConfigNames::DisplayRowsSameHeight]) { ?>

specifically add a if...then continue ~line 303 if the rows are your new rows. (whatever you decide to use to determine if its your row)
 
i got that complete. the second one is going to be more time then i have right now
I set the sample amount to 14 oz, click the "submit" button, and when the interface returns the sample amount is blank and the pours still register as 1 oz ...
 
I set the sample amount to 14 oz, click the "submit" button, and when the interface returns the sample amount is blank and the pours still register as 1 oz ...
that sounds like the database didnt update properly.

On the Pi, open the terminal,
run sudo mysql
use raspberrypints (or your database name)
then
INSERT IGNORE INTO `config` (`configName`, `configValue`, `displayName`, `showOnPanel`, `createdDate`, `modifiedDate`) VALUES
( 'samplePourSize', '0', 'Size of sample Pour', '0', NOW(), NOW() );


and retry
 
that sounds like the database didnt update properly.

On the Pi, open the terminal,
run sudo mysql
use raspberrypints (or your database name)
then
INSERT IGNORE INTO `config` (`configName`, `configValue`, `displayName`, `showOnPanel`, `createdDate`, `modifiedDate`) VALUES
( 'samplePourSize', '0', 'Size of sample Pour', '0', NOW(), NOW() );


and retry
It's kinda working now, the pour value remains in the configuration field after submitting, but the pour amount is way off, it shows 0.11 oz poured when the value is 14 oz:

1658500662729.png
 

Attachments

  • 1658500618258.png
    1658500618258.png
    7.5 KB · Views: 0
It's kinda working now, the pour value remains in the configuration field after submitting, but the pour amount is way off, it shows 0.11 oz poured when the value is 14 oz:
can you look at /admin/includes/managers/pour_manager.php ~line 344 it should be

else
{
$amount = $config[ConfigNames::SamplePourSize]/(is_unit_imperial($tap->get_countUnit())?128:1000);
$amountUnit = $tap->get_countUnit();
}

my other thought is that the tap is configured for metric so its inserting 14ml but when i force that in my system i get .47oz so i am not sure where .11 is coming from.
You can check the pour table in mysql directly to see what is inserted for amountPoured and amountPouredUnit
SELECT * FROM raspberrypints.pours order by createdDate desc limit 1;
 
can you look at /admin/includes/managers/pour_manager.php ~line 344 it should be

else
{
$amount = $config[ConfigNames::SamplePourSize]/(is_unit_imperial($tap->get_countUnit())?128:1000);
$amountUnit = $tap->get_countUnit();
}

my other thought is that the tap is configured for metric so its inserting 14ml but when i force that in my system i get .47oz so i am not sure where .11 is coming from.
You can check the pour table in mysql directly to see what is inserted for amountPoured and amountPouredUnit
SELECT * FROM raspberrypints.pours order by createdDate desc limit 1;
The code shown above is exactly what mine shows, here's the pour data:

1658503737343.png


21560 is the setting for my flowmeter pulses per gallon ... in case that's important.
 
here's the pour data:
thanks that help, i was saving off the tap unit but normally pours are either gallon or liters.

I just committed a change to save sample pours in gal or l to match the rest of the logic
 
Hello, great work on this and keeping this going. I had a vanilla install with no hardware running fine. I decided to implement load cells. My load cell setup was working fine on my esp8266/esphome setup fine.
I have 1 keg, 1 beer, 1 tap setup now.
Anyhow I followed along a post a little back, but can't seem to get anything to show up in the log.

Well, there is one thing "ImportError: No module named pymysql" This is on a new NOOBS install, only thing on it is rpints installed using the latest script.
in config.py I have set:
#logging settings for flowmon
config['flowmon.debug' ] = True

#logging settings for pintdispatch
config['dispatch.debug' ] = True

#logging settings for load cells
config['loadcell.debug' ] = True

On tap 1 Command pin 11, Response pin 13, scale ratio 1, offset 1, lb

Any ideas?
 
Back
Top