Introduction: Build a Controllable Coffee Roaster From an Air Popcorn Popper

I have a passion for coffee.  I also have a passion for electrical engineering.  Why not combine them?

This Instructable describes how I transformed a hot air popcorn popper into a completely controllable coffee roaster!  Follow these instructions to re-purpose and hack your West Bend Poppery Popcorn Popper into this coffee roaster!  

-----------------------------------------------------------------------------------------------
The extraction of the complex aromatic and flavor characteristics of a coffee bean is dictated by a roaster’s ability to control a variety of variables that act on a green coffee bean while it is roasting.  Not only must one understand certain audible and visual cues from the beans during the course of the roast, but the roasting apparatus must also react to changes to the fan speed and heater power in order to change the temperature inside of the roasting chamber.  At the same time, the roast logging software must be displaying a graphical summary of the temperature in the chamber versus time, also known as the roasting profile.

This feat often necessitates the purchase of an expensive programmable roaster; but, a modified popcorn popper can rival the functionality of a high-end programmable roaster if adapted with internal temperature sensors, a reactive control system, and the ability for the software to save roasting profiles for later use.  This modified popcorn popper will automatically control the temperature and total roast time based on industry roasting profiles; component costs will remain under $360; and a taste comparison between beans roasted in a modified and unmodified roaster will be completed by an experienced coffee taster.

Upon submission of this Instructable, the roaster has the capabilities of controlling both the power to the heater coil and the speed of the universal AC/DC motor that is used to blow air over the heating coil.  This air is blown into the roasting chamber where thermocouples are sensing and sending temperature information to a microcontroller which is interfaced with a roast logging software called Artisan.  This roast logging software displays the temperature versus time inside of the roasting chamber while also providing functionality to the roaster user to adjust the percentage of power going to the heater coil and the percentage of speed that the fan is spinning.

Step 1: Identifying Design Goals

Before getting into the hands-on work of the project, I had to identify the features of the coffee roaster that I wanted to implement into the popcorn popper.

Initial Goals:
 - Heater control and fan control to adjust the temperature inside of the chamber.
 - Interface with a computer to log the roasting profile.
 - Manually control the heater power and fan speed using the computer roasting program
 - Ability to save roasting profiles to use for another roast.
 - Remain under $500 in total component cost

Future Work:
 - PID Control of the Roaster
 - Chaff Collection

Why did I choose the West Bend Poppery I?
The Poppery I is a 1500 Watt model.  The Poppery II  is a 1200 Watt model.  The Poppery I uses a universal AC/DC motor, while the Poppery II used a DC brush motor with a bridge rectifier (to convert the AC to DC).  Having the 300 extra Watts will allow this popper to reach higher temperatures and the induction motor of the Poppery I is easier to control with the components chosen for this project!

Step 2: Materials List

Electronic Components:
West Bend Poppery I - 1500 Watt Model! -http://www.ebay.com/sch/i.html?_odkw=west+bend+poppery&_osacat=0&_from=R40&_trksid=p2045573.m570.l1313.TR5.TRC2.A0.H0.Xwest+bend+poppery+1500&_nkw=west+bend+poppery+1500&_sacat=0
Crydom D2425-10 Solid State Relay - http://www.mouser.com/ProductDetail/Crydom/D2425-10/?qs=8ehJfnwBfpTEixK6L1K8TA==
Crydom D2425 Solid State Relay - http://www.mouser.com/ProductDetail/Crydom/D2425/?qs=mNyg5qXQ/sfvtoMGKU2zkw==
Arduino Uno Microcontroller (w/ Serial-USB Cable and DC Power Supply) - https://www.sparkfun.com/products/11021
K-Type Thermocouple - Glass Braided - https://www.sparkfun.com/products/251
K-Type Thermocouple - Flexible Probe - http://www.coleparmer.com/buy/product/62346-type-k-high-temperature-flexible-thermocouple-probe-12-l-050797b-k.html
TC4 Roasting Thermocouple Shield - (Kit or Pre-Built) - http://www.mlgp-llc.com/arduino/public/arduino-pcb.html
Zero Cross Detector - http://www.mlgp-llc.com/arduino/public/arduino-pcb.html
Terminal Block - 8 Total Connections - http://www.mouser.com/ProductDetail/Molex/38770-0108/?qs=sGAEpiMZZMsntO7gZZwOWPQYrd2HcEMKYz4jKNxRsbk%3d
12'' jumper wires: https://www.sparkfun.com/products/10372

Electronic Accessories:
Hookup Wire
Wire Connectors
Wire Terminal (Ring)
Soldering Iron
Solder
Electrical Tape

Enclosure Components:
Wooden Project Box 
Antique Glass Chimney (I found mine in an antique store.  This may be difficult to find.)

Computer Components:
A computer or laptop that is running Windows or MacOS



Step 3: Solder the TC4 Arduino Shield

If you bought the TC4 pre-built, then you can skip this step!  If you bought it as a kit, then keep reading!

I'm not going to go into how to solder the shield in this Instructable.  Please refer to the links below for tutorials on how to solder through-hole and surface mount components.

The kits require both through-hole and surface mount soldering of components.
Basic Soldering How-To: http://learn.adafruit.com/adafruit-guide-excellent-soldering/tools 
Surface Mount How-To:   http://learn.adafruit.com/adafruit-guide-excellent-soldering/surface-mount
You can test the continuity of your solder jobs by following this tutorial: http://learn.adafruit.com/multimeters/continuity

The kit is provided with instructions on the best way to solder the shield.  The toughest components to solder at the surface mount components, but you can still use a normal soldering iron to solder these in.  There are many tutorials online about how to solder surface mount components.

Once you finish soldering the TC4 shield, we can move on to test the shield!

Step 4: Artisan Roast Logging Software Setup

Now we need to test to make sure that the Arduino/TC4 combination has connectivity to your computer and the Artisan Roast Logging Application.  You can find the main page for the Artisan Roast Logger here: https://code.google.com/p/artisan/

There are a variety of roast logging software applications available for free download, but Artisan is currently the only one piece of software that can be configured with the Zero Cross Detector for phase angle control of the popper's motor (specifics will be covered in a later step, so don't worry!).  Here are the steps that I followed to download all of the necessary software components for both the logging application and the Arduino sketch.

Step 1: If you don't already have the Arduino IDE installed, follow through Lesson 1:
http://www.ladyada.net/learn/arduino/index.html

Step 2:
Part 1
Now that the Arduino IDE software and USB driver is installed, the aArtisan TC4 "Sketch" file and Arduino TC4 standard library files need to be loaded. This is the software that runs in the Arduino and passes data from the TC4 board to the Artisan application.  Download and extract all of the files from the following: aArtisanQ_PID_4_3.zip for the Arduino, and download TC4-StdLib-REL-300.zip.

Part 2
You will need to copy all the library folders in the TC4-StdLib-REL-300 folder (7 total) to the Arduino software Libraries folder location "C:/Program Files/Arduino/Libraries".

Part 3
Now that the libraries are in place we can now load the aArtisanQ_PID Arduino sketch. Run the Arduino application and make sure the Arduino is selected to what model you have (Arduino Uno in the example)

You can compile and then upload the sketch, as shown in the attached PDF.
----------------------------------------------------------------------
Part 4
Now you can download the Artisan application itself: https://code.google.com/p/artisan/downloads/list

At the time of writing of this step, the most recent release was: artisan-win-0.7.4.zip

Download this recent version of Artisan, extract the files, and then open up the application!
----------------------------------------------------------------------

This is all you need to do for now.  I'll cover the configuration of your first roast later in this Instructable.


Step 5: Baseline Coffee Roast (without Any Control Components)

In order to better compare an unmodified popcorn popper to the final, controlled popper, I decided to do some roasting!  

I recommend reading Kenneth Davids' "Home Coffee Roasting" book: 
http://www.amazon.com/Coffee-Roasting-Revised-Updated-Edition/dp/0312312199

I purchased my green coffee beans from Sweet Marias.

I used 4 oz. of green beans.
4 US Ounces = ~113 grams = ~0.5 cup of green coffee beans.

Since I'll be using these beans for tasting, I roasted each batch for 7 minutes, which was between the first and second cracks.  Once the coffee beans are a dark shade of brown, or whenever you stop hearing the first cracking noises, you should stop the roast and pour the freshly roasted beans out.  It is important to have a cookie sheet, colander, or anything that will help to cool down the freshly roasted beans.  This is an incredibly important process.  In warmer environments, you can use a squirt bottle with water to "quench" the roast.

For more specifics on how to roast with an unmodified popcorn popper, visit Sweet Marias' website to learn more!:https://www.sweetmarias.com/airpop/airpopmethod.php

Step 6: Current and Voltage Measurements

The designer of the TC4 shield recommends using 25A solid state relays.  I wanted to test the current draw of the heater and the voltage drop across the heater just to confirm it for my own satisfaction.

*** THE FOLLOWING REQUIRES THAT YOU WORK WITH LINE VOLTAGE (120 VAC) - YOU MUST TAKE CARE WHEN TAKING MEASUREMENTS WHEN THE POPPER IS PLUGGED IN.  ALWAYS UN-PLUG THE POPPER WHEN YOU ARE NOT USING IT! ***

I have included photos of the dis-assembly.  Make sure your popper is unplugged!

Begin by removing the bottom plastic housing by removing the screws on the bottom.
There will be one more metal plate.  Remove the two screws from that plate and then the inner wiring will now be exposed.
The two, exposed metal wires, that are going down into the popper, supply the current to the heater.

Current Draw
Measuring current requires that your DMM be connected in series with the current flow to the heating coil.  If you place your leads in parallel, as you would when measuring voltage drop, you will create a massive short circuit, you'll blow the fuse in your DMM, and the heat may vaporize the wire.  Be Careful not to measure current like you would measure voltage drop!

To measure the current draw, remove one of the heater wires from the screw terminal.  Place one of your multimeter leads or alligator clip onto the heater wire that you disconnected.  Place the other multimeter lead or alligator clip on the other wire.  Plug the popper in and turn the switch on.  I measured about 12 Amps of current.

Voltage Drop
The voltage from a 120V outlet is already, RMS voltage.  Therefore I measured about 108VAC across the heater.  It fluctuated between 108.3 and 108.5, but those fluctuations are due to the inherent transients in the voltage output from a 120VAC outlet.

Resistance
You could also measure the voltage and resistance across the heater and then apply Ohm's Law to calculate the current draw.  Learn more about Ohm's Law here: http://en.wikipedia.org/wiki/Ohm's_law

Through my measurements, I concluded that I will need a relay that can switch at least 12A!


Step 7: Choose and Purchase the Solid State Relays (+Theory)

From Wikipedia: A solid state relay (SSR) is an electronic switching device in which a small control signal controls a larger load current or voltage.

Why Use a Solid State Relay?
Solid state relays are popular because they contain no moving parts - which are found in an electromechanical relay.  This means that there is no bouncing or arcing of contacts when the relay switches current to the load.  This gives them a much longer lifespan.  They contain two silicon-controlled rectifiers, in "inverse-parallel", which switch the load current.  When the input signal from, say an Arduino, is applied, a small amount of current flows from the AC mains through the optical isolator and into the gate of the forward biased silicon-controlled rectifier.  This, in turn, turns on the SCR and allows load current to flow for that half of the AC cycle.  When the polarity of the AC mains reverses, the first SCR turns off and the second one conducts load current for the next half of the AC cycle.  This process repeats until the input voltage is stopped.
----------------------------------------------------------
The heater and the AC motor need to be controlled by different methods.  Since these are AC loads, we are looking for a solid state relay that uses dual power SCRs (Silicon Controlled Rectifiers) that will allow for more precise switching as the AC waveform crosses the x-axis.

Heater
The heater will be controlled by Integral Cycle Control (also known as Burst Fire Control).
Universal AC/DC Motor
The fan will be controlled by Phase Angle Control.
Other Parameters
The SSRs also need to be easily driven by the digital output pins of the Arduino.  The relays described below are reated for 3-32VDC control voltage at 25A.
----------------------------------------------------------
Since I measured 12A draw from the heater, and the only SSR options (from Crydom) are 10A and 25A, I chose the 25A relay.
---------------------------------------------------------
You will need the following Solid State Relays:

D2425 (Crydom) - http://yourduino.com/sunshop2/index.php?l=product_detail&p=348
This solid state relay is a zero-crossing relay, meaning that it only turns on and off at the zero crossing.  This type of relay is very common for heater loads, which is what we'll be connecting it in line with!

D2425-10 (Crydom) - http://www.crydom.com/en/products/catalog/s_1.pdf
This solid state relay, denoted with the suffix, "-10", utilizes Instant-On Switching.  This means that the The SSR output is activated immediately after applying control voltage.  Consequently, this relay can turn on anywhere along the AC sinusoidal voltage curve. The typical response time is thus less than 1 ms.  This SSR is particularly suitable in applications where a fast response time or phase angle control is desired.  This is the relay that will be in line with the Fan.

---------------------------------------------




Step 8: Purchase (or Build) the Zero Cross Detector

What is a Zero Cross Detector and Why is it Needed?
We are using a random fire SSR (D2425-10) to switch on and off the AC Motor.  This relay is needed to allow us to use phase angle control to control the AC Motor's speed. Think of it as a lamp dimmer or router speed controller, except that it is being controlled by a software signal (generated by the zero cross detector). 

The difference between the D2425-10 and a standard zero cross SSR (D2425) is that the standard D2425 will not turn on except when the AC voltage is passing through zero every 8ms (Period = 1/60Hz and divide by two to get every half period). To control the AC Motor with phase angle control, the D2425-10 SSR needs to be turned on at times when the AC voltage is not zero.

You can purchase a very robust zero cross detector for $19 here: http://www.mlgp-llc.com/arduino/public/arduino-pcb.html

Personally, I highly recommend purchasing it pre-built!
-----------------------------------------------------------------------
If you would like to build your own follow the instructions below (this is more difficult and the pre-built ZCD is cheap enough and safer!)
What do I need to build the Zero Cross Detector?  Since I am soldering this into a Perf board, I ordered the through-hole equivalents of those recommended in the ZCD schematic.
 - Blank PCB (found at Radioshack or any hobby/electronics store)
 - (1) 1k, 4.7k, 22k, and (2) 220k resistors 
 - (1) 1nF ceramic capacitor (399-5865-1-ND)
 - (1) 10uF/10V electrolytic capacitor (P15799CT-ND)
 - (5) 1N4148 diodes
 - (1) 2N3904 transistor
 - (1) 4N35 IC

I used the schematic found on the following website:
http://www.dextrel.net/diyzerocrosser.htm




Step 9: Choosing Wire Gauge

In the wire gauge chart shown here: http://www.powerstream.com/Wire_Size.htm, you'll see that there is a column for "Maximum amps for chassis wiring" and a column for "Maximum amps for power transmission."  We are more concerned about the maximum amperage for chassis wiring, because we aren't distributing power over a very far distance.

In my electronics stock, I had 16 AWG available, whose maximum is 22A for chassis wiring.  This is a fine choice, since my current draw per component is measured at about 12.5A.

I stripped it down, removed about 2 inches from an end of about 1 foot of wire.

Purchase a couple feet of both red and black wire, as it will make it easier to distinguish between the wires connecting to the neutral line and wires connecting to the mains voltage line!

Step 10: Aluminum Trim Piece (Optional)

This step is completely optional and is only foraesthetic purposes.

Unfortunately, my popper fell out of the trunk of my car and the black piece of plastic on the top of the popper broke into many pieces.  To my benefit, I could not remove this unsightly piece of black plastic and replace it with something similar to the metal piece shown in in this image: http://imgur.com/2MLhjgh

I decided to use SolidWorks to try and design a shape that I could send to my university's machine shop.  I ended up creating a SolidWorks design, submitting it to the machine shop, and I had it cut from a piece of .25'' thick aluminum.  Unfortunately, my dimensions in the SolidWorks drawing were slightly off.  I went to the hardware store and bought an epoxy and filled in the existing holes in the plastic.  I waited one day and once the epoxy dried, I drilled three new holes in the plastic that matched up with the metal trim.

I then attached the piece of aluminum trim to the top of the roaster.  It looks really slick!

Step 11: Glass Chimney

As the roast of the coffee bean progresses, the coffee beans get lighter.  As a result, they begin to fly out of the roasting chamber.  This is why a chimney is a necessary addition to any home air popcorn popper.

These glass chimneys are very easy to find.  I found this lamp at an antique mall for $15.  Unfortunately, I'll only be using the glass portion.  You can find a similar glass chimney at a Hobby lobby, Michael's, or other arts and crafts store!  The one that I found actually fits perfectly.

I recommend that you do not try to permanently attach the glass chimney to the popper.  It is nice to be able to stick a spoon into the roaster during roasting in order to see what the roast looks like.  Also, when you are working on the inner electronics and wiring of the popper, it wouldn't be smart to have the pressure of the roaster on the piece of glass.

Step 12: Connecting SSRs to Arduino TC4 Shield

I ordered four of these 12'' jumper wires: https://www.sparkfun.com/products/10372

I cut off one end of the female header inputs and stripped off about 1 inch from both the red and orange wires.  These wires will connect to the 3-32VDC Input (3&4) on each SSR.  I wrapped them around the screw and then screw them in to the SSR until the screw was tight.

Step 13: Project Enclosure Creation

I went to a Michael's craft store and picked up a wooden project box for around $9.99.

I centered the popper on the top of the project box.  Then, I traced the bottom of the popper with a pencil.

Once the popper was traced, I retrieved my Black and Decker Jigsaw and cut around the traced markings on the project box.  I had to make a few extra cuts to allow the popper to fit into the box.  Keep placing the popper into the box and make any more adjustment cuts.  You can also use a Dremel tool to more precisely sand down areas that may be inhibiting the placement of the popper inside of the project box.

Since some of the Jigsaw cuts will go against the grain, some parts of the wood will chip off.  I retrieved some wood filler, filled those chips, waited overnight for it to dry, and then sanded them down.

Then I grabbed some Wood Stain and stained the box!
-------------------------------------------
I grabbed a 1/2 inch drill bit and drilled a hole on the back panel of the project box for the power cord.  I disconnected the line and neutral wires from inside of the popper and then poked them through the hole.  In doing this, I didn't have to drill a super large hole to fit the plug through the hole - disconnecting the ring terminals makes it much easier.

Step 14: Thermocouple Placement

In the home coffee roasting community, you will see the acronyms, "ET" and "BT" thrown around.  ET stands for "Environmental Temperature" while BT stands for "Bean Temperature."  

The ET Thermocouple is placed as close to the source of the heat as possible.  This temperature reading represents the heat coming directly from the heater and fan.

The BT Thermocouple is placed where the bean mass will be rotating during the roast.  This temperature reading represents the temperature of the beans as they are rotating in the chamber.

I drilled a hole and placed the bare thermocouple in to the middle of the chamber.  I followed by placing the more rigid thermocouple into the same hole and bending the tip into the opening at the bottom of the chamber.  Thermocouples sense the temperature at the tip, so it is important that the tip is placed into the hole securely in order to receive an accurate ET temperature.

The rigid thermocouple kept the bare thermocouple tightly in place so I did not need to place any hot glue or grommet to keep them in place.  If the bare thermocouple is loose in the hole, you can use hot glue to keep them in place.

Step 15: Schematic and Wiring

The wiring for this roaster is very simple!  Don't be daunted by the schematic.

The Line wire is the smooth wire and the Neutral wire is the ribbed wire!
Make sure that your popper is not plugged in when you are wiring!



Try your best to follow the wiring that I have included in the photos below.

 - The Line and Neutral wires come in to the Terminal Block
 - Jumper both the Line and Neutral inputs to have one more terminal block input.
 - Take a piece of hookup wire and connect it from one of the Line inputs on the terminal block to one of the Switch leads.  I used an electrical wire connector to connect these two together.  The switch has a ring terminal on it, which you'll have to cut off and strip down in order to connect these two wires together.
 - Take the second wire from the switch and connect it to one of the existing terminals on the underside of the roaster.
 - Connect one of the sides of the heater wire to the Line terminal that you just connected the second lead of your switch to.
 - Connect the other side of the heater wire to Pin 1 on the D2425 Solid State Relay.
 - Connect one of the leads from the motor to the Line terminal that you connected your heater wire to.
 - Connect the other lead from the motor to Pin 1 on the D2425-10 Solid State Relay.
 - Connect the a piece of hookup wire from Pin 2 on each Solid State Relay, to the Neutral on the terminal block.
 - Wire the headers into OT1 and OT2 and the stripped ends into Pins 3 and 4 on the relays.
 - Connect a piece of hookup wire from the Line and Neutral to the Zero Cross Detector inputs.
 - Connect a header from the output of the Zero Cross Detector to I/O3.

Step 16: Attaching the Popper to the Project Enclosure

When the roast finishes, you will need to empty out the beans from the popper.  But if the popper is not connected to the project enclosure, then it will fall out as you try to pour out the roasted beans.

When I was working on this issue, I did not have access to a drill.  So I had to improvise.

As you can see in the photo below, I bent a metal clamp to sit nice and flush with one of the Popper's original screw holes and a tapeable wire holder.  I connected the other end of the slamp to the wire holder with a zip-tie.  Do this for all 4 screw holes.

Now, the roaster doesn't fall out of it's hole when I go to empty the beans!

Step 17: Thermocouple Testing

Test 1: Test your Thermocouples
In the attached document, you will find instructions on how to upload the aArtisan sketch onto your Arduino and test the thermocouples using both the Arduino's Serial Monitor and also the Artisan software.  

In the setup PDF document that is attached, you will see these instructions:
------------------------------------------
Type chan,1234 and click send. You should get a response: # Active channels set to 1234 as shown. This assigns each of the TC4’s logical channels (chan1, chan2, chan3, chan4) to a physical port (TC1, TC2, TC3, TC4). In this case, TC1 = channel1, TC2=channel2 etc.
-----------------------------------------

Regardless of the number of thermocouples you have (I only have two), you still  need to use chan,1234.  Do not try to use chan,12  or chan,123, or else the serial monitoring will not work.

I was getting temperature readings between 70 and 74 degrees Fahrenheit, with my ET thermocouple at a slightly higher temperature than my BT thermocouple - which can be seen in the image below.
--------------------------------------------------------------------------------------------------------------------------------------------------------------------


Step 18: Modifying the Arduino Sketch

---------------------------------------------------------------
Test 2: Testing the aArtisanQ_PID Software

This was the test that I was most hesitant to run, because after all of this time spent building, researching, and purchasing, I didn't want to fry anything!  But this is a necessary part of testing any project, and accepting any issues that my come of the testing is a customary practice.

The most recent version of the aArtisanQ_PID program can be found here: https://docs.google.com/a/union.edu/file/d/0B2vrQmicIGdXOEEybXZqZFFfMG8/edit

You will also need to download the PID_v1 library, and place it into C://ProgramFiles//Arduino//libraries.  This library can be downloaded from Github here: https://github.com/br3ttb/Arduino-PID-Library/tree/master/PID_v1

Why can't I use the normal aArtisan code for controlling the SSRs?
The original aArtisan code is used only for temeprature logging.  The Arduino sketch has no capability to send signals to the SSRs.  This is why you need to download aArtisanQ_PID.  This code includes the sketches of the original Artisan code, as well as
the code for phase angle control and PWM control over your two solid state relays.

What revisions do I need to make to the aArtisanQ_PID sketch?
After loading the entire aArtisanQ_PID sketch, you will see the user.h sketch.  In this sketch, you will want to comment out the analogue pin lines so that your code now looks like this:
//#define ANALOGUE1 // if POT connected on ANLG1
//#define ANALOGUE2 // if POT connected on ANLG2

and comment out the 50Hz frequency line, so that the last four lines of code look like this (TRIAC_HEATER remains commented out):
#define FREQ60 // 60Hz
//#define FREQ50 // 50Hz
#define TRIAC_MOTOR // inductive loads need a longer pulse width to fire at 100%
//#define TRIAC_HEATER // enable this for resistive loads, like heaters

In phase_ctrl.h, replace:
#define TRIAC_PULSE_WIDTH 4000
with
#define TRIAC_PULSE_WIDTH 2000 
----------------------------------------------------------------------------------
Next, compile and upload this sketch to your Arduino.  
Keep your Arduino plugged in to your computer, and attach your 9V power supply to your Arduino.
----------------------------------------------------------------------------------

Step 19: Setting Up the Artisan Applet

When you first load up the Artisan applet, there are only a few things you need to check and complete before you can start your first roast.

1) Click Config >> Device.  Then choose Arduino TC4 and set the match up the ET and BT thermocouple channels with the terminals that they are connected to on your Arduino.  When you click OK, you will be taken to Serial Ports Configuration.  Make sure your Baud Rate is the same in your Arduino sketch as it is here - it is almost always 19200.  Also ensure that your Comm Port is matched up with the same Comm Port that your Arduino is connected to on your computer.

2) Click Config >> Events >> Buttons.  These are the buttons that you will use to control your test roast.  As shown in the Buttons photo, I have a button which tests a variety of speeds and power levels.  DO NOT RUN THE HEATER AT 100% WITHOUT HAVING THE FAN RUNNING!  You will burn out your heating coil...

3) Click Config >> Events >> Sliders.  The sliders are another method of controlling the fan speed and heater power.  

Step 20: Determining Thermostat Limit

The West Bend line of popcorn poppers has a thermostat between the heating coil and the roasting chamber.  Home roasters who use the Poppery line, often complain about being unable to reach proper temperatures to roast their coffee.  They cite that it takes long to roast, or the beans taste rather baked instead of roasted.

According to Sweet Marias, first crack begins around 401F, until you should stop the roast by 450F or 460F.  I like to roast my coffee lighter, because it retains most of the inherent fruity and tropical flavors of the original coffee fruit.  But some people like to roast darker and if the thermostat cuts out before you can get to a dark roast, then you'll have a problem.  (Sweet Marias: https://www.sweetmarias.com/library/content/using-sight-determine-degree-roast)

I ran a test to see how high my temperature could go, and I reached 458F before I cut it off.  I definitely could have reached a higher temperature!  For me, I did not see a reason to disable my thermostat.  Well, I was almost done my project at this time and it would have been too late anyway to disassemble everything and open up the popper.  But if you do find that your popper is not reaching the temperatures that it should, there are a variety of resources online who have documented how they have disabled their thermostats.

I have listed some here:
http://www.homeroasters.org/php/forum/viewthread.php?thread_id=270
http://popperyii.blogspot.com/2011/01/completing-hiros-journey-poppery-ii-mod.html
http://members.shaw.ca/espressomio/COFFEEMENU.HTML

Step 21: Your First Roast

During my first roast, I had NO idea what I was doing!  I was having so much fun being trigger happy with the controls and sliders, that I neglected to even think about what I should be doing with the roast.  As you can see in the graph of my first roast of Burundi beans, the temperature was fluctuating wildly, because of my own lack of roasting experience.

However, I've tried to compile some basic roasting profiles for beginning roasters.  The first is from user, alleng from HomeRoasters forum:
----------------------------------------------------
0 to 300F (or yellow) is drying phase:
Try to get bean temp to 200 F as quick as reasonably possible then taper off the power from there to hit yellow somewhere between 4 and 5 minutes. Too fast brings 'grassiness' in most coffees and 'ashyness' in some low altitude beans such as Brazils, Kona etc. Too slow will flatten or mute the flavors.

300F to first crack:
Too fast brings higher percieved sharp acidity, slower brings nuttiness, too slow brings 'baked' flavor

First crack to finish:
Too fast tastes underdeveloped, flat. Too slow through this stage can also bring about a baked flavor.

From 300F on the beans should NEVER drop in temperature, always increasing.

The following basic profile is a good place to start for anyone not already familiar with roasting:

-4 to 5 minutes to yellow (300F)*

-4 to 5 more minutes to start of first crack (380-410F)*

-2 to 4 additional minutes to end of roast)**

*These temperatures are typical for the three major stages of roasting but depending on your sensor type and placement this can vary by several degrees +/-

**For light roasts where there may only be between 15 or 20 degrees from onset of first crack to finish, one should try and allow at a minimum 2+ minutes for proper development.
-----------------------------------------------------------------------------

Also, from brewmethod.com, http://brewmethod.com/coffee-roasting-time-and-temperature-a-basic/, they've provided a basic roasting profile for first-time roasters.


Step 22: Appendix: Files

These links are all included in the individual steps, but this is an amalgamation of the download locations:
Artisan 0.7.4 for Windows: https://code.google.com/p/artisan/downloads/detail?name=artisan-win-0.7.4.zip&can=2&q=
aArtisanQ_PID_4_3 (Arduino Sketch): https://docs.google.com/file/d/0B2vrQmicIGdXbXptanJWNWc2NFU/edit
TC4 Shield Library: https://code.google.com/p/tc4-shield/downloads/detail?name=TC4-StdLib-REL-300.zip&can=2&q=
Arduino PID Library: http://playground.arduino.cc/Code/PIDLibrary#.UyO3KPk7uSo
Arduino Software Download: http://arduino.cc/en/main/software#.UyO3VPk7uSo

Useful Links:
Homeroasters.org: http://homeroasters.org/php/forum/index.php
TC4 Software Installation Guide: http://homeroasters.org/php/forum/viewthread.php?thread_id=3564
Artisan Roast Control thread: http://homeroasters.org/php/forum/viewthread.php?thread_id=3583
Basic Modifications of the Poppery I: http://homeroasters.org/php/forum/viewthread.php?thread_id=270
Artisan Roast Logging Website: https://code.google.com/p/artisan/
Buy the TC4 and ZCD Here: http://www.mlgp-llc.com/arduino/public/arduino-pcb.html

Arduino Contest

Runner Up in the
Arduino Contest

Gadget Hacking and Accessories Contest

Participated in the
Gadget Hacking and Accessories Contest

Green Electronics Challenge

Participated in the
Green Electronics Challenge