Saturday, February 23, 2013

Controlling a Hottop

Thanks to the genius work of Jim it is now possible to control the heater and fan of a Hottop roaster from your PC. Jim designed the HT Roaster Interface, an electronic device. It is available as Arduino-compatible shield that may be piggybacked on a TC4C board and can take over the control of the connected Hottop. It takes serial commands send from a computer to the Arduino micro-controller and sets the heater power and fan speed accordingly. If it receives the string "OT1,75" it sets the heater to 75% and if it receives the string "IO3,21" it sets the fan speed to 21%.

Sending serial commands from Artisan to connected devices was always possible by defining corresponding custom button with associated actions. However, the string that is send on button press is fixed. So one could have a set of button like "H50" sending "OT1,50", "H100" sending "OT1,100",...

Tom (GreenBean at TMC) came up with a much more elegant control solution. He added two sliders, one to control the fan one to control the heater, to his RoastLogger application. Inspired by this, we added sliders to Artisan v0.6. However, while the sliders of RoastLogger work out of the box, there is some configuration work needed to achieve the same with Artisan.

You need to configure two of the four available event sliders in the Slider tab of the Events dialog (menu Config/Events). Activate the Power and Fan sliders, set their Action to Serial Command and set the command string to OT1,{} and IO3,{}, respectively. Ensure that the offset is set to 0 and the factor to 1.00. 

The curled brackets in the command strings are replaced by the new value defined by dragging the sliders, before the command is send out over the serial interface. This flexibility allows the use of sliders for other cases. I control the drum speed of my Probat using a frequent drive connected via its Modbus interface to Artisan. So I have a slider with action Modbus Command and command string write([1,1,{}]). Further, I set Offset to 418 and Factor 1.5 to send values in the range [418-627] based on the slider values [0-100]. That corresponds roughly to drum speeds of 59RPM to 72RPM.

Rick published a full Hottop 2B/TC4C roast tutorial on YouTube.