Quantcast

[Version 2 Release] RaspberryPints - Digital Taplist Solution

HomeBrewTalk.com - Beer, Wine, Mead, & Cider Brewing Discussion Community.

Help Support Homebrew Talk:

sigel619

Member
Joined
Aug 11, 2020
Messages
8
Reaction score
0
Just setting up rpints on a raspberry pi. Going through the step by step I get the following error when trying to install rpints. Any help would be appreciated.
MVIMG_20200811_210948.jpg
 

danclark714

Member
Joined
Apr 2, 2020
Messages
18
Reaction score
12
Super NOOB question, I have a Pi 4 on the way. Do the instructions on Raspberry Pints website still apply/work for the Buster OS?
 

RandR+

Well-Known Member
Joined
Oct 5, 2015
Messages
586
Reaction score
184
following error when trying to install rpints
I will retry the nginx installation on my test box, if there is a specific reason you are using nginx then I recommend trying to remove it then installing with apache.

to remove
sudo apt-get remove nginx
 

RandR+

Well-Known Member
Joined
Oct 5, 2015
Messages
586
Reaction score
184
Do the instructions on Raspberry Pints website still apply/work for the Buster OS?
I recommend just running this from the terminal
curl -L install.rpints.com | sudo bash

that will run an install script that will guide you through the process and do all the installation for you. The original Rpints code wont work on Buster because php depreciated the calls used to access the database. during installation you will be prompted what version to install: mine (more features then the original), Tobor's (original that works on new Raspbian) or the original (wont work)
 

BrianRe

Member
Joined
Jan 30, 2017
Messages
6
Reaction score
1
No foam issues here using a six-pack of SF800 meters...

Cheers!
Quick question. I am building my pi/arduino as I write this. I have a 6 pack of the SF800 flow meters as well. My question is how did you connect them up? all 6 to one arduino, or 1 arduino per meter? I am struggling through this. Also, I am a complete noob to this, I have 0 programming ability. I can usually figure stuff out, but I don't want to waste any more money/time then I have to! Thanks!
 

RandR+

Well-Known Member
Joined
Oct 5, 2015
Messages
586
Reaction score
184
connect them up? all 6 to one arduino
All the flow meters go to one Arduino then the Arduino gets configured with the pins the meters are connected to (original RPints you had to modify the Arduino sketch, in my version you can configure it through the tap list admin page)

Wire all the positive wires together and connect to the +5v pin on the Arduino, wire all the negative wires together and connect to the ground pin on the Arduino. the pulse wire is what gets connected to the numbered pins on the Arduino.
 

sigel619

Member
Joined
Aug 11, 2020
Messages
8
Reaction score
0
I will retry the nginx installation on my test box, if there is a specific reason you are using nginx then I recommend trying to remove it then installing with apache.

to remove
sudo apt-get remove nginx
No preference, and honestly I don’t know enough about these things to have a preference. If you say it works with Apache then I’ll try that when I get home. I’ll uninstall nginx like you said above and then follow steps to install Apache and give rpints a go again. I’m super new to web hosting and raspberry pi so I’m following tutorials online for all this.
 

sigel619

Member
Joined
Aug 11, 2020
Messages
8
Reaction score
0
I will retry the nginx installation on my test box, if there is a specific reason you are using nginx then I recommend trying to remove it then installing with apache.

to remove
sudo apt-get remove nginx
So I tried uninstalling nginx and it gave me an error. I then tried http://localhost and it worked. I tried to install Apache2 and it was already installed. So I ran the rpints script again and it gave me the option of Apache or nginx, so I chose Apache and this is what I get. I'm lost. May need to wipe the disk and reinstall a fresh copy of raspberry pi and try again.
 

Attachments

sigel619

Member
Joined
Aug 11, 2020
Messages
8
Reaction score
0
So I tried uninstalling nginx and it gave me an error. I then tried http://localhost and it worked. I tried to install Apache2 and it was already installed. So I ran the rpints script again and it gave me the option of Apache or nginx, so I chose Apache and this is what I get. I'm lost. May need to wipe the disk and reinstall a fresh copy of raspberry pi and try again.
Update. I tried it again and it worked, at least I think it did. it went through everything and then it rebooted. Now it loads to the Apache2 Debian default page. Not sure what I'm supposed to do now.
 

RandR+

Well-Known Member
Joined
Oct 5, 2015
Messages
586
Reaction score
184
I tried it again and it worked, at least I think it did
Did you get a prompt like "Where do you want to install RaspberryPints"?

it sounds like it installed all the programs needed but never actually got Rpints installed
 

BrianRe

Member
Joined
Jan 30, 2017
Messages
6
Reaction score
1
All the flow meters go to one Arduino then the Arduino gets configured with the pins the meters are connected to (original RPints you had to modify the Arduino sketch, in my version you can configure it through the tap list admin page)

Wire all the positive wires together and connect to the +5v pin on the Arduino, wire all the negative wires together and connect to the ground pin on the Arduino. the pulse wire is what gets connected to the numbered pins on the Arduino.
Thank you! Next question. With all of the positive and negatives connected together (I will have 6 of each) do you put an individual 2200 Ohm resistor for each flow meter? (looking at the Swiss Flow meter diagram they have a 2200 Ohm resistor for 5V)?
 

day_trippr

Bastard-covered bastard with bastard filling
Joined
May 31, 2011
Messages
33,131
Reaction score
14,164
Location
Stow, MA
- If you run an SF800 on 5V you do not need the current-limiting resistor RS.

- For the RL resistor, the R'Pints Arduino code enables internal pull-up elements for each input specified (ie: the list of pins with meter data lines connected), and there have been folks that have relied on those, apparently successfully. That said, given my installation has roughly 15 feet of wire running through multiple connectors I was not comfortable relying on what could be as high as 50K ohms, so I use 2K ohm pull-ups, one per meter, pulled to the 5V rail.



sf800_-_hook_up.jpg


Cheers!
 

duncan.brown

Supporting Member
HBT Supporter
Joined
Apr 8, 2020
Messages
315
Reaction score
212
Location
Syracuse
I also use a 2k2 pull-up resistor between the +5V supply from the Arduino and the pulse pin of each flow meter. The pulse pin is then connected to the digital pins on my Arduino.

I also connected the base of a 2N2222 transistor via a 22k resistor to each pulse pin. A LED is connected via a 120 ohm resistor to the transistor's collector and the emitter is connected to ground. The LEDs go on an off as the SF800s turn, which gives me a visual indication as well. The pulses are too fast to see the LEDs flash when you pour, they just go on and off depending on whether the SF800 ends the pour high or low.

I've attached an annotated picture of the breadboard I use for the connections.

IMG_0178.jpeg
 

day_trippr

Bastard-covered bastard with bastard filling
Joined
May 31, 2011
Messages
33,131
Reaction score
14,164
Location
Stow, MA
I like that :mug:
fwiw, I added a few bits to the raspberrypints.ino file (the "classic" version) sketch that lights up the LED attached to Uno GPIO 13 when a pour has been committed...

Cheers!
 

sigel619

Member
Joined
Aug 11, 2020
Messages
8
Reaction score
0
Did you get a prompt like "Where do you want to install RaspberryPints"?

it sounds like it installed all the programs needed but never actually got Rpints installed
I think you're right. I'm trying again and now it's asking me where to install it. Not sure what to put. It just says /var/www/HTML right now.
 

BrianRe

Member
Joined
Jan 30, 2017
Messages
6
Reaction score
1
I also use a 2k2 pull-up resistor between the +5V supply from the Arduino and the pulse pin of each flow meter. The pulse pin is then connected to the digital pins on my Arduino.

I also connected the base of a 2N2222 transistor via a 22k resistor to each pulse pin. A LED is connected via a 120 ohm resistor to the transistor's collector and the emitter is connected to ground. The LEDs go on an off as the SF800s turn, which gives me a visual indication as well. The pulses are too fast to see the LEDs flash when you pour, they just go on and off depending on whether the SF800 ends the pour high or low.

I've attached an annotated picture of the breadboard I use for the connections.

View attachment 693626
Thanks, this helps a lot! Just out of curiosity, if the LEDs blink too fast to actually see the pour, do they show the pour happening or only end state of the meter?
 

duncan.brown

Supporting Member
HBT Supporter
Joined
Apr 8, 2020
Messages
315
Reaction score
212
Location
Syracuse
Just out of curiosity, if the LEDs blink too fast to actually see the pour, do they show the pour happening or only end state of the meter?
You really only see the end state of the pour. My SF800s average 5800 pulses per liter. At my serving pressure a liter pours in about 20 seconds, so during a pour they are running at 290 flashes per second, which is way to fast to see. Still, I find it useful to have an analog indicator that things are working.

One other thing I added was a set up DIP switches that can turn the SF800 pulse pin connection to the Arduino on and off. These allow me to disconnect the SF800 at the start of a keg when I'm flushing StarSan out of the line. The obvious alternative is just to wait until the beer is coming out of the tap before actually putting it on tap in RPints. I just had the DIP switches lying around.
 

day_trippr

Bastard-covered bastard with bastard filling
Joined
May 31, 2011
Messages
33,131
Reaction score
14,164
Location
Stow, MA
fwiw, when I clean my keezer lines/faucets/taps with my recirculation rig I first shut down the flow monitor service...

Cheers!
 

duncan.brown

Supporting Member
HBT Supporter
Joined
Apr 8, 2020
Messages
315
Reaction score
212
Location
Syracuse
I first shut down the flow monitor service...
A systemctl stop flowmon would also do the trick, I just don’t trust software shut-offs:


While this is more usually used in e.g. laser safety, I worry about leaving a pint un-drunk in the bottle of a keg! That’s a serious hazard! :)
 

garzlok

Well-Known Member
Joined
Aug 19, 2012
Messages
294
Reaction score
163
Location
Dacula
Once the tap isn't assigned a beer, I go ahead a clean...then have to go into the DB and delete those pours....maybe this is a feature request? A way to clean lines where the recorded pulses aren't included in the pour history, beer statistics, tap statistics, etc. (or maybe a flowmon stop to clean lines button, and a flowmon start in the GUI?)
 

sigel619

Member
Joined
Aug 11, 2020
Messages
8
Reaction score
0
Anyone have issues with Raspberry pints crashing? Everytime I go to add a new beer it crashes. Not sure what is going on.
 

day_trippr

Bastard-covered bastard with bastard filling
Joined
May 31, 2011
Messages
33,131
Reaction score
14,164
Location
Stow, MA
May not apply to modern forks, but these are what I use...
Code:
alias flowstart='sudo /etc/init.d/flowmon start'
alias flowstat='sudo /etc/init.d/flowmon status'
alias flowstop='sudo /etc/init.d/flowmon stop'
I imagine it would be not very hard to put a toggle in the gui to enable/disable the flow monitor service...

Cheers!
 

garzlok

Well-Known Member
Joined
Aug 19, 2012
Messages
294
Reaction score
163
Location
Dacula
I may need a self deprecating, you can do this Garz Button....kinda like the Easy Button, but Easier.

Not to ignore you @sigel619, but no, that's not normal behavior. /var/log/apache2/error.log ....the man that can help has arrived!
 

sigel619

Member
Joined
Aug 11, 2020
Messages
8
Reaction score
0
I may need a self deprecating, you can do this Garz Button....kinda like the Easy Button, but Easier.

Not to ignore you @sigel619, but no, that's not normal behavior. /var/log/apache2/error.log ....the man that can help has arrived!
Ha! Thanks. I do not feel ignored. However, I think I fixed it myself. Lots of Google searches made me try switching the HDMI cable out and it hasn't crashed since. So it leads me to believe it was something with the cable.
 

duncan.brown

Supporting Member
HBT Supporter
Joined
Apr 8, 2020
Messages
315
Reaction score
212
Location
Syracuse
@garzlok one thing you could do is wire one of these between the pulse pin of the SF800 and the digital in pin of the arduino:


Sorry, I've been drinking. :)
 

jbinbama

Member
Joined
Jul 3, 2017
Messages
17
Reaction score
0
Location
Madison
Once the tap isn't assigned a beer, I go ahead a clean...then have to go into the DB and delete those pours....maybe this is a feature request? A way to clean lines where the recorded pulses aren't included in the pour history, beer statistics, tap statistics, etc. (or maybe a flowmon stop to clean lines button, and a flowmon start in the GUI?)
I found if you go to the taps table and delete the old tap row that is no longer active it'll cascade and remove all the entries in the pours table. You obviously lose all the history of your taps and pours except those that are active but to me it just makes it easier to look at the pours table in case something goes awry.
 

Tobor_8thMan

Well-Known Member
Lifetime Supporter
Joined
Feb 15, 2013
Messages
2,294
Reaction score
1,107
Location
Go 97 miles and take a right...
I found if you go to the taps table and delete the old tap row that is no longer active it'll cascade and remove all the entries in the pours table. You obviously lose all the history of your taps and pours except those that are active but to me it just makes it easier to look at the pours table in case something goes awry.
So, the logic is querying the database and taking first to last. Removing a row, say row 3, bumps up the remaining rows.

In my experience, it's always best, and most perferred, to resolve an issue/error, instead of kludging things.
 

jbinbama

Member
Joined
Jul 3, 2017
Messages
17
Reaction score
0
Location
Madison
Just a gentle reminder for all you users - RUN A BACKUP of your card occasionally. A few weeks ago I was having issue with one of my taps not registering and after some debugging thought I had it figured out, soldered the connections and retested and it failed again. Frustrated I rolled up the line and put it in the keezer to avoid blowing a fuse. However in doing that I must have crossed something and smelled something - I touched the Pi and my memory card was HOT to the touch. Sure enough I somehow fried it. Luckily I had a backup from about year ago - reloaded a new card, put it in, crossed my fingers and everything came back up. I was cringing at the thought of redoing the install on my 3-4 year old setup with new OS, software, hardware etc - luckily I avoided all of that with a backup. BACKUP BACKUP BACKUP
 

Tobor_8thMan

Well-Known Member
Lifetime Supporter
Joined
Feb 15, 2013
Messages
2,294
Reaction score
1,107
Location
Go 97 miles and take a right...
Just a gentle reminder for all you users - RUN A BACKUP of your card occasionally. A few weeks ago I was having issue with one of my taps not registering and after some debugging thought I had it figured out, soldered the connections and retested and it failed again. Frustrated I rolled up the line and put it in the keezer to avoid blowing a fuse. However in doing that I must have crossed something and smelled something - I touched the Pi and my memory card was HOT to the touch. Sure enough I somehow fried it. Luckily I had a backup from about year ago - reloaded a new card, put it in, crossed my fingers and everything came back up. I was cringing at the thought of redoing the install on my 3-4 year old setup with new OS, software, hardware etc - luckily I avoided all of that with a backup. BACKUP BACKUP BACKUP
Absolutely! I detail the steps, in pain staking detail (reads worse than it actually takes to do), here (see the Clone microSD card.txt)

 

jbinbama

Member
Joined
Jul 3, 2017
Messages
17
Reaction score
0
Location
Madison
So, the logic is querying the database and taking first to last. Removing a row, say row 3, bumps up the remaining rows.

In my experience, it's always best, and most perferred, to resolve an issue/error, instead of kludging things.
The logic is querying the taps table by ACTIVE taps and ordering by tapNumber. Removing a row does absolutely nothing to the what is returned since its a non ACTIVE tap.

There is an ACTIVE column and a unique tap ID (not tapNumber) on the table. Once you kick the keg the ACTIVE flag is turned off and the data is never queried again. I would have just deleted the row when the keg is kicked which would have cascaded the delete to the pours table but to each their own. There is nothing Kludgy about this. With proper unique id management they've avoided any issues with removing a row in this table and its good DB design. I personally don't see the need to keep 1000s of records of pours from beers I had on tap 6 years ago - that's just DB bloat and makes queries run slower. Nothing wrong with keeping them there but you'll never see those records again.

If someone wants to clean up the pours table I was just offering a potentially faster (and maybe safer) option than accidently removing rows from active taps in the pours table and messing up the amount poured for active kegs.
 
Top