Not a member yet?
Click here to register.

Forgotten your password?
Request a new one here.
You must login to post a message.

09/25/2023 1:36 AM
welcome cup, Clintm87

09/24/2023 1:28 AM
pouring, InspiredRoastR

09/23/2023 4:29 AM
baldzilla, morning

09/14/2023 1:29 PM
coffee drink, madcow

09/12/2023 12:10 PM
DragonCoffee Welcome

In Memory Of Ginny

Latest Donations
dmccallum - 10.00
JackH - 25.00
snwcmpr - 10.00
Anonymous - 2.00
Anonymous - 5.00
Users Online
Guests Online: 22

Members Online: 0

Total Members: 7,945
Newest Member: Clintm87

View Thread

Who is here? 4 guest(s)
 Print Thread
4-channel TC meter and datalogger project
Ordered the rest of the parts for the board today. I also ordered the arduino
board. Has anyone tried using the Mega Arduino board?

Official Office Coffee Snob
Gene Cafe, Hottop B, Mazer Mini, Expobar Brewtus III-R.... Oh.. pilot, sailor and photographer.
I am going to be trying a mega shortly. I have run out of resources on the duemilanove, so need to upgrade.



JimG wrote:
I'll also let everyone know that I've placed an order for ~15 LCD adapter PCB's (which I've not-so-cleverly named LCDapter). This new little gizmo will connect to the TC4 using a 4-conductor telephone cord and provides a 4-button keypad, a pin header to solder-connect a 16 x 2 LCD with backlight, and 3 LED's that can be used as indicators.

The bare LCDapter boards should be available in around 2 weeks and will probably cost $7 each.

Update: the LCDapter boards have arrived. I will test one over the weekend to make sure I didn't mess something up with the small layout improvements I made. If all goes well, they should be available next week.

Now that I have a super-duper-high-tech reflow oven here Grin, I can solder the surface-mount chips on before shipping for people who don't want to solder the little buggers themselves.

Edited by JimG on 11/12/2010 1:13 PM
Building on Bill's idea of guide profiles, I uploaded RC2 (Release Candidate 2) for pBourbon to to http://code.googl...ourbon_RC2

Feedback is welcome

EDIT: I'm an idiot i forgot to install the processing software...

Is anyone using pBourbon on Mac? It won't compile for me. The obvious reason is that OSX doesn't use comports the same way. I just don't know HOW to modify the incorrect lines. How would i modify the programming to call /dev/tty.usbmodem1d11? Instead of com1 or comport.

Also it doesn't seem to like the "import processing.serial.*"

I have attached the compiling errors in a text file.
Edited by trinity000 on 11/27/2010 8:28 PM

I use pBourbon on a Mac. Are you all set now?

I don't have ready access to the machine I use for roasting at the moment, but IIRC you can get the /dev/tty.usberial-...... device name when you launch the Arduino app, and access something like Tools->Serial Devices.
You then plug in that serial device name into the pBourbon.cfg file in place of COM1.

I noticed this multimeter/thermometer/ USB PC interface tool listed on Coffee Snobs and tracked it down to a US Source -- $53.
VICTOR 86C 3 3/4 Digital Multimeter
I've been browsing all the Arduino sites tonight looking for good, basic tutorial info and saw the thermocouple amps discussed at the site, to this link:

This is an awesome project, I hope to be able to build it at some point :)

I was looking at the schematics and had a question: the SSR driver output pins are connected to VIN by way of a diode. What's the purpose of this diode?

A second question now that I look at it, why do the SSR inputs draw from the VIN instead of 5V line? Any particular reason for that?

Thanks & much respect,
Hi, Brian -

The diode is to provide a little protection to the TC4 against accidentally connecting the SSR outputs to a reverse polarity source. The diode could easily have been left out of the design.

VIN is used to power the SSR outputs for a few reasons. Mostly, it is to avoid loading the voltage regulator on the Arduino board (VIN does not go through the Vr chip on the Arduino). Also, using VIN allows for the operation of connected devices that may require more than 5V to operate.

I hope you decide to take the plunge and build your own TC4 project!

Cool, thanks for the info!
Is there a BOM or other parts list posted somewhere for the LCDapter part of this project.? I'd like to order all the required parts at one time.

Is DIGIKEY the preferred source for parts? Or are there other suggested sources?

Can this Adafruit Powerswitch tail be used in place of an SSR?


It says it's controlled by 5v source.


The Power Switch Tail is a smart alternative to slicing apart power cords to wire up your own relays. Its a compact 120V 3-pronged extension cord, with a relay board embedded in the middle. Connect to the relay using two screw terminals and activate by providing a 5V signal (40mA current draw). The relay can switch 10 Amp resistive loads such as heaters, small skillets, lights, etc. An LED indicator above the terminals will help you with debugging.
Ideal for people making their own controllable lights, SMT reflow plates, boilers or heaters, coffee roasters, home automation projects, etc.

We even include a NPN transistor and 1K resistor so you can control the relay with a single microcontroller pin, as most cannot provide 40mA.
Please note, this is a safer alternative to wiring up your own relays but still requires common sense and knowledge of electrical circuits. Stay within the rated limit of the relay and de-rate properly when not using resistive loads. Do not leave DIY electrical projects unattended or where they can get wet! This product is intended to be used by advanced hobbyists who are comfortable working with power supplies.
Hi, Jim -

That Adafruit gizmo looks very handy. But since it contains a mechanical relay (and not a solid state relay), then it might not be suitable for high frequency switching. If your application can tolerate longer cycle times, then it might be OK.

Also, it would probably be wise to put a diode across the input leads to the relay coil to protect the rest of the circuit from spikes each time the coil current collapses.

The output voltage on the TC4's output pins will be equal to Vin, which is not necessarily equal to the 5V required for the relay. So keep this in mind, too.



jsutton wrote:
Is there a BOM or other parts list posted somewhere for the LCDapter part of this project.? I'd like to order all the required parts at one time.

Is DIGIKEY the preferred source for parts? Or are there other suggested sources?

Please stand by.....

I'll get the information you need posted in the next day or so.


Thanks for the response on the LCDapter BOM -- I've been studying the schematic to develop one but things like the switches, etc. would be nice to have your documentation.

One more question related to SteveN's question in early November:


SteveN wrote:
Will a 20x4 LCD will fit ok and still leave room for the buttons?

Sorry, no. Electrically, using a 20 x 4 works fine. But the buttons and LED's would be covered up.

I'm assuming one might be able to some form of cabling to offset a 20x4 LCD so it could be used. Something like the Adafruit 6 conductor cable:

Would you agree? (Maybe especially if one used 90 degree header strips to make room for the cable connectors without adding extra height.)

Ok, I have all the remaining parts ordered from MOUSER and Adafruit including an ARDUINO UNO.

A couple questions come to mind to ask you:

1. for the LCDapter which has an RJ11 connector -- what is that connecting to and how. What is it used for? I'm guessing it doesn't connect to the TC-4 board or does it? Arduino?

2. The LCDapter has two six-pin headers labeled LCD DATA and LCD CTRL.
What do these headers connect to?
The TC-4 header labeled LCD only has eight pins.
What and where is the connection between the TC-4 and the LCDapter?

Are you planning to publish a manual or other guide for the function and use of the LCDapter?



jsutton wrote:

Ok, I have all the remaining parts ordered from MOUSER and Adafruit including an ARDUINO UNO.

A couple questions come to mind to ask you:

1. for the LCDapter which has an RJ11 connector -- what is that connecting to and how. What is it used for? I'm guessing it doesn't connect to the TC-4 board or does it? Arduino?

2. The LCDapter has two six-pin headers labeled LCD DATA and LCD CTRL.
What do these headers connect to?
The TC-4 header labeled LCD only has eight pins.
What and where is the connection between the TC-4 and the LCDapter?

Are you planning to publish a manual or other guide for the function and use of the LCDapter?


1. The necessary connection to the LCDapter is a 4-pin I2C serial interface. (Optionally, a 6-pin connector can be used. The optional extra signals are Vin and an interrupt signal. For the vast majority of applications, the 4-pin interface is fine.)

The I2C connection can be made using either an RJ-11 connector or a simple 4-pin header. The LCDapter board supports either option. I mostly use the RJ-11 interface for convenience in making cables.

There is a 4-pin I2C header on the TC4 board that can be used to connect to the LCDapter.

Be sure you have the polarity correct before applying power (or you will be replacing a fried tantulum capacitor).

2. The LCD CTRL and LCD DATA headers connect directly to your LCD adapter. The layout should be compatible with most 16 x 2 LCD displays.

You will not need the 8-pin LCD header on the TC4 if you use the LCDapter. The 8-pin LCD header on the TC4 is designed to connect directly to an LCD panel.

I agree that a manual would be a good idea! But I don't have any immediate plans....

JimG attached the following image:
Here is the board drawing, for reference.

JimG attached the following image:

Edited by JimG on 02/08/2011 1:58 PM
I'm new here, drawn over from HB. I'll have to fire up my AVR Butterfly (a demo board from Atmel) and actually learn how to use it. :-) Then perhaps I can contribute...


Many (belated) thanks for sending the PCB, which I have built and over recent weeks been experimenting with. The PCB quality is excellent, which made the SMD soldering (my first ever) go like a dream! I simply positioned the parts, pressed down in the middle with tweezers, and then put the soldering iron tip on the edge of the pad to tack it in place. The solder already on the board made this very easy. Then I soldered a pad on the opposite corner properly with 0.5 mm solder, then went back to the first with the extra solder. That left the part perfectly cramped for any remaining pins. With moderation in the use of solder, I just did each pin in turn and never got any solder bridges. My first experience with SMD left me itching for more!!

Now I have finally got round to signing up to the forum, and look forward to contributing. I've already roasted using the TC4 as monitor, but have so far had less success using it as a controller, as a few things are still not quite clear.

My main hurdles at the moment boil down to:

1) Getting a better understanding of how the output possibilities are instantiated in the software;

2) The state of the hardware as I have it at present is apparently not compatible with fully controlling the hottop, so I probably have to get my hardware somewhat closer to the way yours is, if I want to be able to use existing software;

3) A few problems with knowing which version of the software to use, compiling the software etc.

More specifically:

1) The TC4 has two outputs using SSR, OT1 and OT2, plus a PWM output I/O3 which was supposted to be for the fan. It seems clear that you are using OT1 for your heater, but I am getting conflicting signals whether the fan control is implemented in the software via OT2 or I/O3? Also unclear is whether you are still using a pot on ANLG1 to control the heater, or whether you are now using buttons; and similarly whether you use buttons to control the fan. (I don't yet have any buttons installed, so I seem to be grounded for the time being.) If I put some buttons on a breadboard and connect them to free digital lines on the Arduino, is there any relatively simple way of folding them into the software to replace the I2C buttons you use, without rewriting the software from scratch? I.e. remap the I2C buttons to Arduino I/O lines?

2) As I mentioned in our email correspondance earlier, I want to use the Arduino to communicate with the main board via the built-in cable from the controller, which I reckon ought theoretically to be possible, but this still needs to be confirmed in practice. However as the TC4 hardware and software stands at present I cannot see any possibility to dispense with the hottop controller completely - there is no on-off switch for example, and as far as I can see the TC4 does turn on the bean stirrer at present. So presumably you use the TC4 in conjunction with your hottop controller at present?

At present I am thinking along the lines of either using your existing I2C LCD and buttons, and adding a second MCP23017 on a third board on the I2C bus to manage the communication lines between the hottop controller and the hottop mainboard; or to develop a new I2C board that tries to combine the two on the same MCP23017, scrounging a few extra Arduino IO lines where necessary (e.g. from the parallel LCD header). However since I am really struggling with the programming part, I need to try to use the existing programming as far as possible.

3) So far I have tried Bourbon and Catuai. However I was not able to get Catuai to compile at all - every time I commented out one line it would find another causing problems - mostly concerning variables defined more than once. Is Catuai compatible with the late?st version of the Arduino IDE (21)? I haven't tried running an older Arduino IDE version yet. I think there seem to be some library compatibility problems between versions 18 and 21.

At one point I managed to compile Catuai after I had disabled all the buttons and LCD, but the ambient temperature and thermocouples were all showing 0, and I thought I had somehow zapped the chips with static. I reinstalled the Bourbon monitor software and the temperature readings went back to normal.

The latest version of Bourbon has roaster control removed, so I tried going back to version r204 (immediately before the I2C LCD which I don't yet have). However I haven't been able to get control of either the fan or the heater working so far. How is this implemented in r204?

At this stage my most urgent priority is to try to get some kind of control over the heater and fan (even without a complete roast program as such) - to test my hypothesis that it should be possible to control via the existing cable without any modifications to the hottop mainboard. Whether that is successful or not will determine my hardware requirements for the future, so I don't want to devote too much effort to the LCD/buttons board before this. Any suggestions as to a relatively painless way to get test connections to the heater and fan working? Maybe you have some test programs that you used in the early days of TC4 that might be useful to me? I have a breadboard and a ULN2003 and/or triac available as intermediary for connections to the hottop cable if required.


Edit: That is quite a mouthful for one bite - sorry about that!
Edited by Bhante on 02/15/2011 7:41 AM
Hello everyone!

I too have come over from HB, and am joining in on this thread as I adapt your design to control my Elektra machine. This means that I need two TC inputs (boiler and grouphead) and four SSR outputs (heating element, motor, boiler fill solenoid, and group solenoid). Once I make some progress in my layout, which will uses a combination of the TC4 and LCDapter boards as a starting point on an arduino mega2560 footprint, I will post my results.

Thanks for your amazing work here - you've made getting started on the project a breeze.


aindfan wrote:I need two TC inputs (boiler and grouphead) and four SSR outputs (heating element, motor, boiler fill solenoid, and group solenoid

You might like to consider replacing all the transistors with a single chip such as ULN2003AN, which has 7 darlington arrays, each of which can carry up to 0.5 amp. You can use several outputs in parallel for greater current load. I suspect some of your outputs could probably be switched directly from the ULN2003AN, while with the heater you can use the ULN2003AN output to switch a triac etc. The ULN2003AN can be switched directly by the Arduino digital outputs.

I was also planning to use a similar approach for controlling heater and pump on my Bazzar A3, but I suspect I would leave the control of the boiler filling to the existing circuitry.

For those of you using the Hottop, where do you install your environment temperature thermocouple, and what is your rationale for measuring ET? There are various possible motivations one might have for measuring ET, and a number of different possible locations for the sensor, all of which would obviously have different results.

In my previous roaster (a pot roaster used on a gas stove) I used two sensors: one in the bean mass, and the other clamped to the copper fins distributing heat from the gas stove. This was very valuable. My primary sensor for determining the roast stage was obviously the bean mass (actually this was measuring a combination of ET and BM, but tending more towards BM), while the ET sensor (which was also a combination of ET and BM but tending much more towards ET) was an indicator of the heat energy input. By turning the heat on high I can put a lot of heat into the beans but at the cost of more variability in bean temperature - the difference between the two temperatures gives an indicator of how much variability to expect. When uniformity of bean temperature is more critical I try to bring the two temperatures as close together as I can (necessarily using a lower RoR). Throughout the roast I am trying to optimise the sometimes conflicting requirements of these two strategies (of course they conflict when I want a high RoR, but coincide when I want a low RoR).

One might also want ET for other reasons, eg: detecting exothermic energy (would need exhaust temperature and air flow rate to get quantitative information, which would be difficult on the hottop because of the complexity of the airflow) - in this case the ET probe should be as close as possible to the BM but not in contact with the beans; for relating the observed BM readings to the built-in sensor (for better understanding what the hottop controller is trying to do) - in this case it should be as close as possible to the built-in sensor, or better still use the built-in sensor itself; for determining the most appropriate fan setting and for detecting wrong settings (not sure what would be the appropriate sensor position in this case, highly dependent on air flow); for improving one's understanding of the roasting process; measuring the temperature of the wall of the roast chamber (oven-type heating effects, safety precautions etc); etc.

One might also want to measure exhaust temperature, to try to see how much known (aside from substantial losses) energy input has been given up to the beans. Because the hottop has no consolidated exhaust, meaningful quantitative exhaust data would be impossible to collect, but it may be that useful qualitative and comparative data could be obtained such as changes during the first and second cracks.

Judging from the deposition of smoke on the inner surface of the top case of the hottop, the best position for the exhaust probe might be near the holes just above the beans on the opposite side from the heater, in the space between the roasting chamber and the outer case.

The optimal position for an ET sensor inside the roast chamber I'd say is rather more difficult, as it depends on a lot of assumptions regarding air flow and the effects of the heater. About the same position as the built-in sensor might be a good start (but inside the roast chamber instead of on the wall). One might also mount the sensor on the opposite side, i.e. near the heater, to give more emphasis to input energy, but I think the uncertainties due to air flow questions would be greater there, and would probably be very dependent on fan settings (and even on roast stage independent of fan settings).

I had also sometimes thought about trying to insert a sensor along the space between inner and outer walls and then around into the front of the roasting chamber near the viewing screen, or possibly less problematic through a hole from below next to the chaff tray - the purpose here would be to see what the temperature variation is like between front and rear of the roast chamber.

What experiences do people have here? Has anybody done some experimentation comparing different positions?

I don't have a Hottop, I have an Alpenrost, but I think it is somewhat similar to the Hottop, from what I can tell of the diagrams on the hottop site.

It looks like the beans go into a perforated drum, with a heating element under the drum. My Alpenrost is like this.

I have my ET probe in the middle of the heating element, I think it is around a inch or so from the actual element. This may work for me because my fan speed is constant, so I don't have to worry about changes in airflow. Also, in the alpenrost, there is not that much airflow during the roast, since the dampers are closed.

I use a TC4 as the input into my PID program, and the PID control is based on TC, and this setup works fine for roasting. I also have a probe in the drum, to measure BT.

Edited by randytsuch on 02/16/2011 7:38 PM
Jump to Forum:

Similar Threads

Thread Forum Replies Last Post
Roast Color Meter - Build Offer JAVA TRADING COMPANY 2 08/05/2023 3:20 PM
Roast Color Meter Building Other Coffee Equipment 5 07/25/2023 8:04 AM
Flow Meter/Needle Valve Combo Electric and Gas Heat Sources 6 12/26/2022 3:43 PM
Finally Completed Roaster Project Fluidbed Roaster 10 05/25/2022 9:43 AM
Fluidbed Roaster project Fluidbed Roaster 145 03/01/2022 11:27 PM
Homeroasters Association Logo, and all Content, Images, and Icons © 2005-2016 Homeroasters Association - Logos are the property of their respective owners.
Powered by PHP-Fusion Copyright © 2023 PHP-Fusion Inc
Released as free software without warranties under GNU Affero GPL v3
Designed with by NetriX
Hosted by skpacman