Who is here? 1 guest(s)
 Print Thread
CoffeeRoaster
jtemple967
I've been roasting coffee at home for a couple of years using hot air popcorn poppers exclusively and have gotten some good results but I know that in order to get more consistent results I'm going to have to up my game. At the same time I recognize that programs like Artisan might be a bit overkill for me. I just want a simple way to monitor temperature over time and somehow be able to reproduce a roast once I get good results.

So that's when CoffeeRoaster was born (I know...not a very clever name). And I know, there's several programs out there that do something similar but mine will take a somewhat different approach:
* Written in Python using Kivy as the graphical front end
* Should run on Windows/Linux/Mac/Android/iPhone/iPad
* There are 2 components to the setup: CoffeeRoaster and RoastServer. These will be IP based applications with the intent of having RoastServer be able to run on a different piece of hardware than CoffeeRoaster, if desired.
* The program will be open source. If someone wants to write a version of RoastServer that works with their setup that can be easily done since the server is separate.
* Profiles can be saved then shared with others using the same setup
* The program will be very easy to use
* A saved profile can be loaded then "replayed", letting the program control the temperature.

My current hardware setup is:
* CoffeeRoaster - Microsoft Surface Pro running Ubuntu 18.04
* RoastServer - RaspberryPI, Max31855 Temp. sensor, Solid State Relay

So I'm waiting on the arrival of my SSR, the first one I got was a dud. The program is largely written and unit tested but I'm waiting on the SSR for the final testing. Once that is complete I will make the githb repository public. In the meantime, here's a screenshot of CoffeeRoaster. The profile is totally bogus.

More details to follow!
jtemple967 attached the following image:
coffeeroaster.png
JackH
Welcome to Homeroasters!

It looks like an interesting project. The screenshot graph is a sample like you said. Being able to place roast events on the graph is very helpful.

I tried experimenting with the model 1 PI and the Linux version of Roastlogger and the TC4 years ago. Got it to work but it was very slow. The model 4 should be much faster.

I wanted to have a setup with a small screen built in to my roaster, free of external computers.
Edited by JackH on 05/10/2020 1:54 AM
---Jack

KKTO Roaster.
jtemple967

Quote

JackH wrote:

Welcome to Homeroasters!

It looks like an interesting project. The screenshot graph is a sample like you said. Being able to place roast events on the graph is very helpful.

I tried experimenting with the model 1 PI and the Linux version of Roastlogger and the TC4 years ago. Got it to work but it was very slow. The model 4 should be much faster.

I wanted to have a setup with a small screen built in to my roaster, free of external computers.


Thanks! As soon as I have all the hardware working I'll post some updated pictures.

I have the 4GB model of the Pi 4 and that combined with an application class SD card and it boots in ~10 seconds. No issues with speed. PyCharm runs nicely on it.
renatoa
I read greencardican experimented with Artisan on RasPi, maybe he will share his experience so far.
jtemple967
So I got the new SSR and it works much better than the first one...it actually triggers at 3V DC! I'm very happy with the results so far but the thing that is kicking my butt is the logic to hit and maintain a target temp. I tested with trying to hit ~90 F (I know, too low for roasting but you gotta start somewhere) and can hold that temp by calculating the swing in temperature when the SSR gives a constant "on" signal versus pulsing the SSR to maintain a temp. In my setup with a target at ~90F if I start pulsing around 75F then I can level off the temperature climb and stabilize at 90F. However that 15 doesn't work at higer temperatures.

So I'm thinking there's probably an equation that needs to be plugged into the controlling program to know when to switch from constant on to pulse. Hoping that someone might know what the formula would be. This will be great for my setup but that curve will be different for each popcorn popper out there. So I'm thinking there should be some "baseline" configuration ability where the program can measure the temperature climb over time and come up with the proper curve.
jtemple967
Oh yeah...I've also made changes to the server side where you can run it standalone and just manually adjust the temperatures. Of course you'll have to monitor you own time but I'm thinking this could also work well for things like monitoring a smoker.
renatoa
That "equation" is called PID controller, and works acceptable for fixed temperatures, but not so great for continuous increase temperature, as in coffee roasting.
I developed a fork of TC4 software where I gave up the classic profile following approach, using a PID controller, in favor of other approach, as constant power/heat level, and predictive slope analysis.
You can believe or not, but you can roast ok with a constant power level for more than 3/4 of the whole process.
We discussed in more details this subject these days in other thread, just check recent posts.
Jump to Forum: