Skywalker roaster... | [386] |
Skywalker, the AL... | [279] |
Skywalker Roasts | [105] |
War on Farmers by... | [58] |
Using a TC4 with ... | [41] |
Setting up TC4 version 4
|
|
tony359 |
Posted on 10/26/2021 12:15 PM
|
Newbie Posts: 25 Joined: May 08, 2011 |
Hello all, MANY years ago I came to this forum to discuss the TC4 as a electronic reflowing device. I eventually got the board but never used it, it was one of my "to do" projects which I never started, ops! I'd like to try again. But I am struggling with the setup and I was hoping you could help me. In particular, I believe Roastlogger is the only software available for Windows (correct? I could use a RPi if Artisan is much better) so I followed the instructions found here: https://homeroasters.org/forum/viewthread.php?thread_id=3564 But when I compile the sketch I receive a long error message: Code Download source Arduino: 1.8.13 (Windows 10), Board: "Arduino Uno" Can someone point me to the right direction please? Thanks! |
|
|
renatoa |
Posted on 10/26/2021 2:03 PM
|
Administrator Posts: 3160 Joined: September 30, 2016 |
Artisan is also available for Windows. |
|
|
renatoa |
Posted on 10/26/2021 2:16 PM
|
Administrator Posts: 3160 Joined: September 30, 2016 |
The libraries in archive is obsolete, get the latest thermocouple library from the project repository. Or, edit the lines in error adding "const" as below : Code Download source static PROGMEM const PFLOAT coeff_inv[10][3]; For me compiled fine with the latest thermocouple library and Arduino 1.8.13 . |
|
|
tony359 |
Posted on 10/26/2021 3:45 PM
|
Newbie Posts: 25 Joined: May 08, 2011 |
Thank you! Would you be able to point me to the project repository for both the artisan and the roastlogger please? I tried compiling the Artisan sketch earlier on following a guide I found on the artisan website but it ended up in lots of errors too. https://github.com/greencardigan/TC4-shield/tree/master/applications/Artisan/aArtisan_PID/trunk/src/aArtisanQ_PID I am a bit lost... Edit: I think I found everything. I have got Artisan running and the termocouple showing! Thanks. Latest version for the arduino is 3.11, right? What is the PID version? Edited by tony359 on 10/26/2021 4:14 PM |
|
|
renatoa |
Posted on 10/27/2021 2:04 AM
|
Administrator Posts: 3160 Joined: September 30, 2016 |
aArtisanQ_PID last version is 6.8 3.11 of... what ? PID is 1.1 I guess, implementing Proportional on Measurement (P_ON_M). |
|
|
tony359 |
Posted on 10/27/2021 8:39 AM
|
Newbie Posts: 25 Joined: May 08, 2011 |
Ahah sorry I got confused. Last version of the ARTISAN for Windows is 2.4.6! - the 6.8 I guess it’s the PID version of the arduino sketch to work with the artisan software? But on the above link I can only find 6.7. What was 3.11 I don’t know, I think I got confused with an old link with old versions, sorry. Let me try to understand: are there different versions, PID and non PID for the TC4 - both in HW and SW? And PID means that the TC4 itself is capable of elaborating how to drive a heating element and a fan to follow a profile temperature? Do I need to install a specific firmware on my TC4? Thanks! Edit: I guess the "Firmware" I see mentioned on the Artisan website is the Arduino code? Does Version 4.00 support external control of heating elements and fans? I see the latest version uses a zero cross detector (to do PWM and phase control I reckon?) - how do things work with version 4? Edited by tony359 on 10/27/2021 11:00 AM |
|
|
renatoa |
Posted on 10/27/2021 12:53 PM
|
Administrator Posts: 3160 Joined: September 30, 2016 |
Quote are there different versions, PID and non PID for the TC4 ... Do I need to install a specific firmware on my TC4? Yes, the branch/version featuring PID is here: https://github.co...rtisan_PID and the dedicated thread is here: https://homeroast...post_43360 ... all the others branches in the repository are supposedly non PID, too old, and not explored. Quote both in HW and SW PID is a firmware/sketch/Arduino code feature, the TC4 board is the same, no additional hardware for PID is required. Quote And PID means that the TC4 itself is capable of elaborating how to drive a heating element and a fan to follow a profile temperature? PID is used to reach and maintain a single setpoint, using the heater as the single control variable, fan is not handled by PID. Following a profile is other story. Apparently all you have to do is to provide a set of points. For some it works, for others... depends on the pickiness level, and the machine inertia and thermal behavior. Strictly theoretical, could be demonstrated that PID, as a control method, is not optimal for a process with a continuous moving setpoint. PID is good for beer, or boilers, to catch and keep a temperature for hours, less for roasting coffee |
|
|
tony359 |
Posted on 10/27/2021 1:20 PM
|
Newbie Posts: 25 Joined: May 08, 2011 |
Interesting thanks! Yes, in the meantime I had found the 6.8 version on the thread you linked (the repository does not have it apparently). So PID is an evolution of the software. It's not a hardware evolution, correct? I have HW version 4, what features does my version 4 NOT have compared to the latest version? Can version 4 handle a heater and a fan? Are there schematics around? I do not see IO/2 which should have the zero cross detection. About the fan, is that then supported by running the PID via software on Artisan automatically? Or is that completely manual? I think I saw some options on Artisans about controlling the fans based on specific events. I see your point about the moving setpoint. I'll give it a go if my version supports it. So I think I am fully set. I am running 6.8 sketch on Arduino, I have the latest Artisan software, my thermocouple is correctly seen. And there is no firmware on the TC4 to update, correct? My plan is to explore the software and set up a profile which I will then try to follow manually. Then, I will consider the idea of wiring the TC4 to the heater/fans - for manual or PID control. Feedback from a newbie here: it would be worth creating a post with links at all the latest software/sketches/documents. A blocked sticky post. It's a nice project! Thanks again! Edit: one more question (Columbo mode ?). What am I doing wrong with my LCD? This is a parallel LCD if not mistaken, not I2C. I have selected the parallel one in the user.h file. Edited by tony359 on 10/27/2021 2:56 PM |
|
|
renatoa |
Posted on 10/28/2021 2:44 AM
|
Administrator Posts: 3160 Joined: September 30, 2016 |
My guess is you forgot to enable the 4x20 mode, and the display is used as a 2x16. Check LCD_4x20 declare. |
|
|
tony359 |
Posted on 10/28/2021 7:47 AM
|
Newbie Posts: 25 Joined: May 08, 2011 |
Thank you - I can double check but it should be set to 4x20 already. |
|
|
tony359 |
Posted on 10/29/2021 12:54 PM
|
Newbie Posts: 25 Joined: May 08, 2011 |
I can confirm I have the correct LCD settings in the user.h file. Any ideas? Code Download source //////////////////// |
|
|
tony359 |
Posted on 11/02/2021 12:50 PM
|
Newbie Posts: 25 Joined: May 08, 2011 |
any ideas? |
|
|
greencardigan |
Posted on 11/02/2021 7:22 PM
|
1 1/2 Pounder Posts: 1185 Joined: November 21, 2010 |
I have never tested the LCD code with a parallel LCD. It predates my involvement in the code. You could try getting an I2C LCD or get an I2C module to add to you current LCD. |
|
|
renatoa |
Posted on 11/03/2021 2:17 AM
|
Administrator Posts: 3160 Joined: September 30, 2016 |
I would try to see if disabling 4x20 will produce a clean 2x16 readout. |
|
|
timbarnes |
Posted on 11/08/2021 2:29 PM
|
Newbie Posts: 38 Joined: October 25, 2021 |
I just tested a parallel interface LCD with an Arduino Uno and aArtisan PID version dated 20171004. It seems to work correctly. The pin assignments can be found in aArtisanQ_PID.ino, but they are as follows: Code Download source #else // parallel interface, standard LiquidCrystal Note that D4 through D7 are named for the LCD, not the Arduino, so D4 for the display connects to D7 on the Arduino etc. If your display board is plugged directly in as a shield, you may need to look for the documentation, and if necessary change the #define statements in the Arduino code. The fact that your display is almost right suggests you are probably connected properly, though. Could you have a bad connection? Is the display stably incorrect, or does it do random things? I think that's all I can suggest. I hope this helps. |
|
|
tony359 |
Posted on 11/08/2021 4:33 PM
|
Newbie Posts: 25 Joined: May 08, 2011 |
interesting thanks - been looking for that schematic a while! However my TC4 has an LCD terminal with D4, D5, D6, D7. I do not have D7, D8, D12 ane D13. Any ideas? I guess the D7,8,12 and 13 may be accessible via the through connector but as there is an "LCD" terminal, I thought that would be the best option. Also: my Arduino seems to be losing the program every time it's power cycled? thanks again |
|
|
timbarnes |
Posted on 11/08/2021 10:47 PM
|
Newbie Posts: 38 Joined: October 25, 2021 |
Thinking about it a bit more, I am coming to the conclusion that your display must be wired correctly, because you are getting information transmitted to the display. The D4-D7 are on the LCD. They connect to pins D7, D8, D12 and D13 on the Arduino - in my case directly, in your case via the TC4 board. So perhaps the next step is to check that you are running the latest version of the software. I just downloaded the 6.3 version of aArtisan PID yesterday, hooked up the display today using the parallel connections, and it works properly. Regarding losing the program when you power cycle the Arduino, I have never seen that behavior and can't speak to it. You might want to try a different board if you have a spare. |
|
|
timbarnes |
Posted on 11/09/2021 12:05 AM
|
Newbie Posts: 38 Joined: October 25, 2021 |
I was able to reproduce exactly the odd scrolling behavior you showed in your video, in two different ways.
I was able to fix cause #2 by changing the line "#define RS 2" to "#define RS 5" in aArtisanQ_PID.ino, and re-routing the RS wire. If the display is connected to the Arduino via the TC4, this will require surgery, and I would suggest picking up an I2C display instead, if you need the phase control capability. I am using the CONFIG_PWM, which does not have this conflict. EDIT: greencardigan pointed out (thank you!) that as all the Arduino lines are presented on the TC4 board, there's no "surgery" needed if you re-program aArtisanQ_PID to use a different pin for the RS line. I don't have a TC4 board on hand (it's on its way), and didn't think it through. But I gather the generally recommended approach now is to use the I2C connection anyway. Edited by timbarnes on 11/09/2021 6:10 PM |
|
|
BernardJ87 |
Posted on 11/09/2021 4:47 AM
|
Newbie Posts: 5 Joined: November 09, 2021 |
Good information. |
|
|
tony359 |
Posted on 11/09/2021 5:06 AM
|
Newbie Posts: 25 Joined: May 08, 2011 |
yes indeed! For £2.95 I have order an I2C adaptor but I will test timbarnes points later - it's the minimum I can do to say thanks for the time he's invested into this! |
|
|
tony359 |
Posted on 11/10/2021 4:49 PM
|
Newbie Posts: 25 Joined: May 08, 2011 |
The I2C adaptor arrived promptly and it works like a charm. Indeed for £2.95 I save lots of wires! |
|
|
timbarnes |
Posted on 11/10/2021 6:36 PM
|
Newbie Posts: 38 Joined: October 25, 2021 |
That's great! Mine showed up as well and works as advertised. Now I'm waiting for my TC4+ and I should be able to start putting the whole system together. |
|
Jump to Forum: |