Not a member yet?
Click here to register.

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

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

09/12/2023 12:10 PM
DragonCoffee Welcome

09/10/2023 6:26 AM
welcome cup, Burfelt

09/09/2023 11:25 AM
philosofool Welcome

09/08/2023 7:44 PM
boricuajc 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: 9

Members Online: 0

Total Members: 7,942
Newest Member: madcow

View Thread

Who is here? 1 guest(s)
 Print Thread
TC4 with aArtisanQ_PID
Thank you Brad,
The digital pins work nicely.
Its Espresso, not Short Black
Hi All,

I would like to make a few changes to the TC4 Artisan sketches, but thought I should run my proposed changes past users here first.

Let me know what you think and if you see any issues with my proposals.

1. Always including heat, fan and SV in the serial output stream
Currently when in Artisan mode, the TC4 only sends 'ambient, ET, BT' to artisan unless the TC4 PID is active when it also includes 'heat duty, fan duty, SV'.

I would like to have at least the heat duty and fan duty values always included in the serial output stream regardless of the PID state.
This would allow the heat duty and fan duty values to be logged/graphed by Artisan when roasting manually or using Artisan's built in PID function.

2. Changing the PID;CHAN;X serial command
Currently the X in this command is referring to a logical channel. That is, the Xth channel in the serial stream. For example sending PID;CHAN;2 will set the TC4s PID channel to BT as the serial stream is always 'ET, BT, chan3, chan4'.

I would like to make the X refer to a physical channel. That is, the Xth thermocouple connector. This should make it more intuitive to set up in Artisan where physical channels are linked to ET and BT in the 'Device Assignment' dialog. Then in the 'Control' dialog, selecting a PID source channel would match either the ET or BT channel number as defined in the 'Device Assignment' dialog. See my diagram attached.

If you currently use Artisan with a TC4, especially with the PID features I would be interested to hear your thoughts.

greencardigan attached the following image:
I have made the above changes in aArtisanQ_PID.

Version 6_3 can be downloaded from GitHub here.
Howdy Brad, I had to re-read your proposed changes a couple of times to take it in. I can't see any down side to what you've done and looks to be quite an improvement in function and ability to see more of the needed sensed values regardless of on PID mode or not.

I'm going to assume the lack of feedback to your post was due to no one seeing an issue with it.

Either way, i really appreciate the continued labor of love you, Jim, Marko, Jack and all the others here have put into making the TC4 evolve and constantly improve.

1/2 lb and 1 lb drum, Siemens Sirocco fluidbed, presspot, chemex, cajun biggin brewer from the backwoods of Louisiana
Thanks Brad for still supporting Artisan! I just added links to your repository hosting the two main variants relevant for Artisan, Jims original aArtisan firmware (v3.10 from 2015) and your ongoing work on the aArtisanQ PID 6.
Thanks Marko, but note that I have not yet made the corresponding changes to Jim's original Artisan firmware. I was hesitant to make changes to it without hearing back from him.

Allen, I probably got no feedback as I didn't give enough time! If something isn't working I find it hard to stop until it's fixed.
Brad, I've just come across your recent videos on youtube and have to say they are brilliant especially the one that demonstrates the PID function.
Not sure if it's been asked before but is there any pros/cons to using Artisan's internal PID versus using the TC4's PID?
Its Espresso, not Short Black
Hi and thanks. I'm glad you find them helpful.

I don't think there's any real benefit either way. Marko suggests that the TC4 PID will perform better but I haven't really noticed much difference. But I haven't used the Artisan PID much yet.

I just thought of one minor difference if you're using a LCD with the TC4. The TC4 PID will display the set variable on the LCD. Using the Artisan PID it's harder to see what the current set variable is. I roast outside with my laptop inside running Artisan and connected via bluetooth so it's handy to have the info on the TC4's LCD.
Thanks Brad, I'll have to give them both a try soon as I'm just about finished rigging up my new roaster.
In regards to tuning the PID, with my old roaster running RoastLogger I used the auto tune function with several batch sizes to get the ballpark parameters which worked well.
With Artisan, can it do some sort of auto tune? If it not, I'm wondering if temporarily running RoastLogger to obtain the auto tune parameters to then use in Artisan would be useful?
Its Espresso, not Short Black
There is no auto tuning function in Artisan as far as I know.

The PID in RoastLogger is based on the same library as the TC4's PID. I'm not sure what Artisan uses, but using your RoastLogger values could be a good starting point.
Cheers, thanks for that. I'll give it a try and report back.
Its Espresso, not Short Black
About 10 seconds before the end of profile created by Artisan Designer, SV always jumps to an unreasonably high temperature. (aArtisanQ_6_3, backround follow TC4 PID, background follow Artisan PID is a little different problem).
Where can be a mistake?
I do not have this problem with the ramp / soak profile or the Android app.
Interesting. I can replicate this but I'm not sure yet what is causing it. In my test the SV was dropping once it reached the end of the background profile. See my attached screenshots. One with no look ahead and one with 10 seconds look ahead.

I'm assuming you have your look ahead set at 10 seconds which is why it changes 10 seconds early.

I suspect it is something to do with Artisan as the TC4 should only be sending back the SV as sent from Artisan.
greencardigan attached the following images:
10s_look_ahead_copy.jpg no_look_ahead_copy.jpg
I've confirmed that Artisan is sending a strange SV value to the TC4 when it reaches the end of the background profile it is following.

Looking at the Artisan source code I don't understand it enough to determine exactly what the cause is. And I don't know how to compile it myself so I can't test any modifications anyway.

Marko may have to investigate?
I expected Sv to fall to zero or stay at last value.
I tried it with another TC4, it still behaves the same way.
I'll look into this...
I guess Artisan jumps to the SV set within the PID Config dialog at the end of the background. What would be the correct behavior here?

Should the PID just be turned off at the end of the background profile? What happens if the PID is turned of, does the heater stays at the last value?


MaKoMo wrote:

I guess Artisan jumps to the SV set within the PID Config dialog ...

If you mean the max value for the slider, it will not be that.
Only in the case of Artisan PID this maximum value will not exceed. Values are varied.

What normal behavior would be, I can try to write it for myself.
At the end of the background profile, PID should not be turned off automatically, only manually.
The last SV value should be retained:

When turning off the PID manually, the value for the heater should be preserved.

This way, I can stop roasting anytime,
or continue with roasting manually by adjusting the SV slider value,
or when the PID is off by adjusting the Heater slider value.
here is one another example of strange behavior:

the SV value does not exceed the last value in the background profile.
Here is maybe a partial answer:


here is written:
... The background mode is only active between CHARGE and DROP ...

I thought that this was related to the actual roasting, not to the background profile.


MaKoMo wrote:

I guess Artisan jumps to the SV set within the PID Config dialog at the end of the background. What would be the correct behavior here?

I agree with Will, the SV it jumps to is not the value set in the PID Config.


MaKoMo wrote:

Should the PID just be turned off at the end of the background profile? What happens if the PID is turned of, does the heater stays at the last value?

When TC4 PID turns off, heater remains at last computed value.

Also agree. PID should remain on at end of background profile, but not send any more PID;SV commands.
Edited by greencardigan on 10/14/2017 11:12 PM


Will2 wrote:
the SV value does not exceed the last value ...

It was a DROP value!
(I mean the DROP value at time 12:00)
In this case, normal behavior.
Edited by Will2 on 10/15/2017 1:59 AM
Found the issue in Artisan. A typo. The fix will be part of Artisan v1.2. Public beta builds should be available soon.
I have also found some different behaviors in the same situations in different modes.
In some cases, this arises from the philosophy of Artisan
It might be advisable to discuss all the differences in behavior found.
There was little time to test.
Tomorrow we may try to write down differences so far so as to rule out what is normal behavior.
I uploaded a public beta of Artisan v1.2 on its GitHub home.
Jump to Forum:

Similar Threads

Thread Forum Replies Last Post
Using aArtisanQ_PID with an old TC4 Dataloggers/Controllers/Rate of Rise Meters 12 02/14/2023 10:50 AM
How do I get the latest aArtisanQ_PID libraries? Dataloggers/Controllers/Rate of Rise Meters 3 02/06/2023 5:44 PM
aArtisanQ_PID thermocouple jumps when active PID channel Dataloggers/Controllers/Rate of Rise Meters 16 06/10/2021 9:57 AM
Loading aArtisanQ_PID in Arduino Dataloggers/Controllers/Rate of Rise Meters 14 05/28/2018 8:32 PM
Help with aArtisanQ_PID Specifying Temps Dataloggers/Controllers/Rate of Rise Meters 7 08/03/2017 7:05 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