Introducing... a Teensy 3.5-powered coffee roaster! This is a "fluid-bed" style design which will roast a half-pound of coffee, precisely tracking a custom roasting profile, and saving the roasting data to the native microSD card port for later analysis.

Here is a quick run-down of the features:
  • Auto Mode which will control the temperature (bean or environment) and fan speed to a settable profile.
  • Manual Mode where temperature and fan speed can be controlled in real time.
  • Measured temperatures, set value, fan speed, and heater duty cycle saved to an SD card as a CSV file at 2 Hz while roasting. I've included a python script in the Github link below, used to plot this data from the SD card. The script requires the python module "matplotlib".
  • DC Fan PWM control. (The MOSFET on the PCB can handle quite a bit of current. I am using a 22 Amp, 260 Watt fan, and the MOSFET has additional headroom beyond that).
  • The roasting profile can be set as a sequence of up to 9 segments. The set temperature and fan speed are linearly interpolated from one segment to the next. This profile can be set and saved to EEPROM via the LCD screen interface.
  • Separate tuneable PID values for the environment temperature and bean temperature. A tuning mode for each controller is available allowing one to monitor the step response and tune the gains in real time.
  • (Optional) interface with Artisan Roaster Scope. The roast can be logged by Artisan in Auto or Manual mode, or even have Artisan control the set temperature and fan speed in Manual mode.


I have included the code and a complete set of build instructions on my github page at: https://github.com/elkayem/CoffeeRoaster.

More importantly, here are some photos:

Click image for larger version. 

Name:	IMG_2012.JPG 
Views:	64 
Size:	132.0 KB 
ID:	16036 Click image for larger version. 

Name:	IMG_2027.JPG 
Views:	78 
Size:	95.6 KB 
ID:	16037 Click image for larger version. 

Name:	IMG_2243.JPG 
Views:	69 
Size:	101.2 KB 
ID:	16038