Who is here? 1 guest(s)
 Print Thread
TC4 Roasting App
Thanks, that's tomorrows project.
I must have missed something in the mix though.
NO, there was no usb cable connected, but I didn't think the computer was supposed to be needed with the Bluetooth. I was thinking all I needed was the android phone and the TC4.
Plus, if the USB is connected, and the TX and Rx is disconnected by the switch when the USB cable is connected, how does the Bluetooth communicate with the TC4. Like I said, I guess I missed something along the way.
Anyway, I will chase the rabbit tomorrow. I cut down pine trees all day today and gotta do it again tomorrow, so my body is headed to bed.
Difficult, you do not have a LCDapter connected.
You can not see if tc4 can receive commands from Android.
For example, to send a command pid;on and on the display you will see.
What You change in the settings?
Properly installed a sketch for Android?
Already it is clear to me, the problem is elsewhere.
I use the HC-06, this is also used from Brad, even if he writes something else.
HC-05 uses a different baud rate and other pairing code!
First off, at almost 69 years old, I'm a hellava long way from being a boy.
I know it, I love old people.
I have less of 10 years.
Brad. Couple of questions on control.
First one, don't suppose there is any way to control the fan with the PID settings. For instance instead of a SOAK value have a fan speed percentage value.
How do you change fan speed? Is going to have to be an OT2;xx typed in and sent each time.
I also see the buttons, POT's and display on the TC4 don't seem to be working when in the Android mode.
That being the case, I will most likely just setup up this extra TC4 to be used with the Android.
When using bare bone TC4, I notice the temps are in C, but when using the same Sketch and just changing it to RoastLogger, and loading my regular TC4, the temps are in F. What would I need to do the change the bare bone one to F?
To get the Bluetooth working, I ended up changing the baud rate on it to 19,200 and locking it in the Slave mode. Went ahead and renamed it ROASTER while I was in there.
Edited by BenKeith on 03/02/2016 10:05 PM
There's currently no way to control the fan speed automatically.

I use the OT2:UP and OT2;DOWN commands assigned to two buttons. This allows you to increase or decrease the fan speeds by clicking a button. I would like to implement sliders (like my Arduino Centrale App) but I don't really have the time at the moment. The up Down buttons work fine for me at this stage. You could also assign a specific fan speed to a button like OT2;xx if you need to set it to a velue often like at the start or end of a roast.

The OT2:UP and OT2;DOWN commands will adjust the fan speed by the ANALOGUE_STEP value set in user.h.

When in Android mode it will disable the LCDapter buttons (I had some Arduino memory issues when in Android mode). But the LCD and POTS should keep working as normal.

User.h should allow you to set the initial temperature units. aArtisan looks like it is set to F by default while aArtisanQ_PID has C as default.

From aArtisan user.h

//#define CELSIUS // controls only the initial conditions (default is F)

Glad you got the bluetooth working! I love being able to control and log without having to drag the laptop out.
Edited by greencardigan on 03/02/2016 10:18 PM
Getting all this worked out looks like is going to be fun on app.
I have aArtisanQ_PID 5.3 set for Android loaded on TC4 but reading are all wrong.
ET: is reading/displaying AT
BT: is reading/displaying ET
FAN: is reading/displaying BT
SV: is reading/displaying RoR
HTR: Not sure what that one is doing yet, Haven't gotten it to change.
When I press PID ON button, it locks everything up, even on TC4 and have to turn power it down to unlock it. The droid timer is the only thing still working after pressing PID ON.

Do you run a voltage divider on the HC-05 RX for 3.3V? I'm not doing that but It seems a lot of people recommend it.
Check the setting -> Received Data Parameters. You need to tell it what each parameter coming from the TC4 is. I have mine set like the attachment. aArtisanQ_PID sends timer, at, et, et Ror, BT, BT Ror, heater, fan, SV. So you need to set the input parameters in that order.

Yes I use a voltage divider but mine was also working without it.

Not sure why it is locking up. What command have you set for the PID on button?
greencardigan attached the following image:
You have to luv it when things start getting aggravating, and then go down hill from there.

Do you know of anything Jim has done with the TC4 Shield ver 7.0 that would make it send temps in C?

Loading the very same sketch into three completely different Arduino/TC4 Shields.
I have two TC4 Shields, ver 5.31 and if I connect the Bluetooth to either one of those, the temps on the Android app are in F.

Connect the Bluetooth to the TC4 Shield ver 7.0, which is the bare bone one, the temps on the Android app are in C.

However, whlle having all this fun, it think I just blew the I2C on the 7.0 Shield. I was trying to redneck engineer a Sainsmart I2C adapter to a spare display module to connect to the bare bone unit. Well, it didn't work, so I just disconnected unplugged display from one of my 5.31 shields and plugged it into the 7.0 Shield, and got nothing, NaDA, not even a backlite. It still sends and receives data, through the Bluetooth and app, but no display.
Is it still reading temperaturers from the thermocouples? The ADC chip on the shield uses I2C so if you are getting readings from the thermocouples then I2C is still working.

I'm not aware of any changes on the newer TC4 boards that would change the default temperature units. Can you still change it back to F using the UNITS;F command?
Nope, no thermocouple readings. I connected thermocouples to 1 and 2 and the numbers on the App, stayed stuck on 31.8

Oh well, so much for setting up a third TC4.

I'll just configure the one I use in the stand alone mode with Q_PID. Won't really need it anyway with the Droid app. I just used it when I didn't want to mess with the computer.

Now I will have to find out why it locks up that one when I turned the PID ON


BenKeith wrote:

Do you know of anything Jim has done with the TC4 Shield ver 7.0 that would make it send temps in C?

The TC4 default is Celsius. You need to add a jumper for Fahrenheit. Check out the READ.me file in the sketch download.

- jumper selectable temperature scale (default is Celsius)
- ANLG2 port on TC4: +5V AN1 GND

Add jumper between AN1 and GND

KKTO Roaster.
Thanks Jack. I guess since I have POTS connected on the other two, they function as the jumper. I didn't think about the read.me, I went to his web site and scanned through the postings on here because I thought I had remembered reading somewhere there was a jumper involved but I've never had to use one.
Also, the 7.0 is labeled A0 and A1, but it matters not now since the I2C is not working. I've gotten where I don't think I can solder good enough to replace those surface mounted chips, and don't they don't make a tip for the old 70's model Wellers or Pace station I have to do them either. Just soldering the components on this last TC4 was some ugly soldering. I'll probably just order another TC4 Shield if I decide I like using this Droid app.
A couple of years ago the TC4 was not available and I built some up. The older TC4 design is open source and I had pc fabs built.

I used a 1/32" conical tip on my weller WES51 with liquid flux to solder. And magnification visor for my poor old eyes.

JackH attached the following image:


KKTO Roaster.
The one I'm using is the Weller PTH7 1/32"x0.8mm. Soldering the last one I couldn't find my fine solder so I was using some .030 resin core, do needless to say, each pin looks like one of those brown mounds you see in the dairy pasture.

They make cupped out tip that you just drag across the leads, but not for my old junk. I was tempted to try and make one. I say a video of a guy using that an it was slicker'n hog snot.
It does not belong to this topic, but there is some similarity.
In the last year I also destroyed during the roasting one tc4 board from 10/2012.
LCD does not display anything, so I replaced with another board tc4, re-record sketch. Everything worked,
also LCD.
Then I joined the destroyed board , upload sketch. LCD worked.
Just temperature BT and ET showed the value of AT, no reading of thermocouples. I was looking for a reason, nothing bad I have not found. Only that fault lies in the board TC4.
Now I am going to replace MCP3424SL, send the board over the ocean would be lengthy.
Now I've made a photo with the wrong board:

Wow, it thought some of my work was sloppy. Inside my TC4's look great compared to that. I have my SSR's remoted and use DB9 connectors/cable to connect the two. I can switch and swap everything just by unplugging/plugging connectors. I find that to be handy when you do and "Oh Crap!" and have to find out what part you fried. Looks like you were going to make quadruple sure you didn't overheat your SSR's. If you do it again, I have found those little $2 things off ebay are more than enough. I run about a 2,400 watt heating element and sometimes will do several roast back to back and have never had one even get warm, so I did away with those big, huge ones on my first build and put the small ones on it.
just got through ordering two MCP3424 chips off ebay for $10.49 shipped. I got two because I still plan to see if I can make that LCD I have work. Makes a lot of since to blow a $6 chip trying to make the $2 LCD work. You would also think, with three nice Tektronics O-Scopes, I would hook one up and trouble shoot it before just throwing parts at it.

I'm still chasing that rabbit that keeps locking the whole thing up when I turn the PID on.
I understand correctly so, that freeze the reading of the parameters?
You do not have chance to try a different version of Android?
You leave set Line Ending for Commands as NL, for Incoming Data as Both CR and NL?
The application is not yet fully in order, for example, does not work on Android another language.
Brad, do you have any suggestions?
I've checked and tried about everything I can and it still freezes.

Connected to a roaster, I have total manual control and it charts/logs. Does everything it's supposed to in the manual mode.

The only thing I notice when in the manual mode, when you have it set to read the PID variable, the green SV block on the screen is just counting seconds, like a second timer. I tried leaving that blank and turning the PID SET Variable off just to make sure that wasn't doing something.

When I touch the PID ON, with has a value of PID;ON, the TC4 totally freezes up, even the timer stops. The Pots, buttons, nothing has any affect and the only way to get it going again is unplugging power and plugging it back in. The problem is, I use the PID.

When the TC4 freezes, the only thing doing anything on the Droid is the timer, it's still counting but nothing else has any function.
It's not freezing up now, but it won't start up either. Heat and fan stay on zero when you try to start the roast


BenKeith wrote:

It's not freezing up now,...

What was the reason?


BenKeith wrote:

...Heat and fan stay on zero when you try to start the roast

And it should not?
The reason was something with the sketch. I don't use Artisan, and have always used RoastLogger when I had that controller hooked to a computer and it has worked fine So installed Artisan on the computer and the TC4 with Q_PID on it and it locked up with Artisan also when I turned on the PID. I down loaded another copy of aArtisanQ_PID and reloaded it. That cured the lockup problem.

Now all I need to do is figure out how to get the heat on, even when I try to manually turn it on, the PID cuts it back off immediately.
Good start.
Also I use sketch aArtisanQ_PID 5.3.1.
Now re-install sketch aArtisanQ_PID for using TC4 stand alone.
Then Try, or works heating with buttons and pots.
Only then can we begin testing of heating with Android.


BenKeith wrote:

The reason was something with the sketch. I don't use Artisan, and have always used RoastLogger when I had that controller hooked to a computer and it has worked fine So installed Artisan on the computer and the TC4 with Q_PID on it and it locked up with Artisan also when I turned on the PID. I down loaded another copy of aArtisanQ_PID and reloaded it. That cured the lockup problem.

Now all I need to do is figure out how to get the heat on, even when I try to manually turn it on, the PID cuts it back off immediately.

First lets clarify a few things regarding the PID control using aArtisanQ_PID.

1. The aArtisanQ_PID code can read roast profiles stored on the TC4s EEPROM (profile loaded to EEPROM using profile_loader sketch).

2. Profiles stored on the EEPROM are numbered starting at 1.

3. Profiles can be selected with the command PID;Px where x is the profile number.

4. You can also select profile 0 (zero) using PID;P0. This is actually the default profile in the later version of aArtisanQ_PID. This directs aArtisanQ_PID to wait for SV commands from the computer or app instead of the EEPROM profiles.

5. If you have selected profile 0, then you can send PID;SV;xxx commands where xxx is the set variable temperature for the PID.

So, the PID will automatically control the heat based on the current SV whether it is from a PID:SV;xx command or a profile stored on the EEPROM. A OT1;xxx command sent while the PID is on won't do anything.

Try sending PID;P0 to select profile zero (should be already set by default) then PID;SV;100. Heater should then come on and LCD should display 'SV: 100'.

If that works, then you can load a roast profile in the app and get the app to automatically send the SV commands.
Jump to Forum: