After many nights stretched over a few years, I’ve finally finished the preliminary design for my Raspberry Pi Brew Controller. All the circuits appear to work and now I’m ready to buy some parts to breadboard the design. I’m sure things will change along the way, but getting to the point where I can purchase things has been a huge hurdle for me. Expect to see many more posts as the prototyping comes along and hopefully I’ll get to a real brew controlled some time in the future.
I had been using Raspberry Pints ported over to my windows server for a while. Getting it installed was a hack job and the database calls never worked right. After upgrading my database and PHP, my Raspberry Pints install stopped working and a reinstall didn’t work either (I was hoping that my upgrades eliminated the need for my hacks, but no luck). Raspberry Pints hasn’t been updated in a few years so rather than figuring out how to do another hack install, I started searching for other options. I came across Kegerface which looked nice and rather than using database is just reads simple csv file. This worked out of the box, but I kind of liked the Raspberry Pints display better. This inspired me to mix the simplicity of Kegerface with the display of Raspberry Pints. I started with the raspberry pints code base. Then I cut out the database calls and added in a file read scheme. With a few more tweaks the first working version is online. There is more to do. The code is still messy with old code commented out and random test lines also commented out. Also, I’d like to change up the style.css a bit, but I’m also happy with what is working now. I’ve named it Simple Pints and posted to github.com to share just in case there is someone else who might find it useful. Here is my running version.
I ran into issues with the latest phpmyadmin. seems like there is a real bug in 4.9.2 that won’t let cookies work at the moment. I tried a lower version, but had different problems. I’ve been providing some feedback through Issue #15634. In the meantime, I’ve turned to Adminer. It’s a single small php file and worked first time. Given the hours I’ve spent with phpmyadmin and the limited need I have to edit the SQL database, Adminer is my new goto tool
After the PHP Upgrade I noticed that PHPmyAdmin wasn’t working. After messing around with this a bit I decided to go ahead and upgrade MySQL to 8.0. Things have changed a lot since I did 5.5, but after getting the new installer things went ok. I failed the first time at importing the old database into the new one so bad that I ruin the root login. After an uninstall and clean install I successfully migrated the data with the migration tool. WordPress wasn’t working. After a little digging it looks like the users from the old database didn’t really migrate. So after setting up the WordPress User account again things worked no problem. With that complete, PHPmyAdmin still doesn’t work. Also, Raspberry Pints doesn’t work with the new SHA2 encryption. To help here I reconfigured MySQL for backward compatibility to 5.X. That almost worked, but now I need to go redo all the hacks that I made to get raspberry pints to work the first time.
I successfully upgraded PHP and still have my wordpress site working! I hadn’t touched a PHP upgrade since I setup my server a while ago. I thought this was going to be a disaster, but it wasn’t too bad. I discovered my spam blocker ad was no longer supported which created errors the first night I tried to jump to PHP 7.X. To figure this out, I deactivated all plugins and changed to a basic theme. Then I upgraded to PHP 7.X and individually turned on each plugin and restored the theme. When I hit the spam blocker plugin it was clear this was the problem from the first night. Next up trying to upgrade Apache….
I discovered that many excel save problems I’ve been having are a result of the “new” Google Backup Sync program. In Windows MS Office when a file is open it creates a ~filename temp/lock file. With BackupSync running, it would backup/copy this file and somehow it wouldn’t release the file. Then when saving in Excel the save would fail.
So I decided to only turn Backupsync at night and then turn off 2 hours later. That should be enough time to copy everything from the previous day and if not it should eventually catch up.
To turn it on I setup a TaskManager task to simple trigger at 3am and start the program.
To turn it off is a bit more complicated. In the end I created a .bat file based on this post. Which resulted in the code below. From there I have another TaskManager task to run the .bat file at 5am
tasklist /fi “imagename eq googledrivesync.exe” | find “:” > nul
if errorlevel 1 taskkill /f /im “googledrivesync.exe”
I replaced the main board and now it just resets, flashes, and repeats. Any suggestions?
The following deals were at Costco. Not sure what the problem is/was, but Costco didn’t get me signed up for it. Then after 6+ hours of chat with sprint and an hour phone call they finally honored the deal (I think). Though I’m not sure Sprint ever really found this plan and just gave me what I told them
I also bought a new phone that is supposed to have the following deal. I suspect this is a mess and I’ll have to fight to get the deal too. Fortunately, I have plenty of saved IM conversations with Spring saying they will honor the deal.
For a while I was making my own certs, just to see that I could and to understand how to setup and force https. However, since my certs were not signed every browsers said my site wasn’t secure (rightly so). So after a few times of my certs expiring I turned off forcing https and all redirects related to it.
With Chrome now making https more mandatory I looked into getting real SSL certs. I found ZeroSSL.com could do the trick. I followed the new user directions and have a few trips I was able to get real certs. However, I read that these certs expire every 90 days. Now I’m not the best at remembering to do updates like this so I set out to figure out how to refresh my certs automatically.
Perhaps I’ll get into the details later, but my final messy solution is a php script that will create an html output will run the refresh command. It translates the refresh command output to a less descriptive output (i.e. it hides all the folder paths and files used). If the refresh command generates keys the command is setup to place the keys in my webservers SSL folder. From there I use a windows batch file to call the php file and to log the output to a html file. The batch file also transfers the lastest html log file to a known folder that I can see from my website (the reason I don’t capture the full refresh command output into the html log file). Finally, I have Windows Scheduled task setup to run the batch file every night.
And with that I should have SSL certs always up to date….at least that’s the theory.
I have my own bar coasters! I don’t know why, but this seems so much fun. I was fortunate enough to have a few beers reviewed on The Brewing Network’s Dr. Homebrew podcast from which I won a gift certificate to GrogTag. After looking at the various products I settled on getting bar coasters. I spent way too much time thinking about this. I think I received the gift card in February and then thought about it for a good six months. When I actually sat down to make something I spent several nights working on various designs. In the end I settled on a somewhat modern theme loaded things with Easter eggs about my background. Can you find everything?
I will have to say when I sent this to get printed I suspected the print quality wouldn’t be that great. Much to my surprise everything looks fantastic. Below is a photo of the real coaster
And finally here are all the easter eggs exposed
- ViaSat-2: The last satellite I help build at Boeing. I helped design several of the unique digital payload units.
- Silhouette of Engineer Mountain as seen from Purgatory: Purgatory is where I grew up skiing
- Iron Cross 360 with a grab: I’m still trying to land my dream trick from Tommy Mosley’s 1998 gold medal Olympic run
- A Zia symbol: New Mexico state symbol as a look back to where I was born and raised
- Delta Chi: My college fraternity
- A pull down circuit: A reflection of my EE background. Also this is a variant of what I designed into my future brewstand controller
- My family: two boys, my wife, and I
- Palm Trees: These are the plam trees that could be seen from our old Hermosa Beach balcony
- NMSU: where I attended undergrad
- Standford: where I completed my masters’ degree
- My mash paddle: Not really and Easter egg, but this corner got charred one brew session when I left it too close to the burner and later cut it off
- Norte Dame!!!!!
- Soccer ball: I’ve been playing since a kid, still play, and am having fun teaching the boys to play
- Abbey of St. Peter in Oudenburg: Abbey founded by St. Arnold, commonly referred to as the brewer’s saint