Who is here? 1 guest(s)
 Print Thread
TC4ESP
renatoa
Hi all,

Wrote vaguely about the subject in several posts in the last months, so is time to raise the curtain.
Having a short break these days, due to Easter and 1 May holidays, finalised posting the first draft/stable version.
Actually, it is stable and operating real roasts for 3-4 months, delayed the public launch for more polishing and checks.

All the relevant info about this project can be found at the links below:
- hardware, schematic, components description, and cost analysis:
https://github.co...are/TC4ESP
- software, source code, firmware loading and operation instructions:
https://github.co...ArtisanESP

What is TC4ESP: a new way to run the greatly acclaimed and successful TC4 software, more exactly the last version 6.7 of the aArtisanQ_PID sketch.
It is based on complete different hardware platform, using ESP family processors, the only element that is still common to both architectures is the MCP3424 ADC.
Despite this huge hardware difference, the guys from Espressif did a so wonderful job to create an Arduino IDE compatibility layer, that the resulting sketch can be used now for both platforms. You can get the slightly changed aArtisanQ_PID.ino from my repository, drop in a Uno project, recompile, and have an operational TC4 system without any change. Operational, but without the new goodies added by my version, that are in a separate file.
To differentiate the two softwares, when running on the ESP architecture, the banner at start will read aArtisanESP V1.0
So aArtisanESP is name of the software that runs on this new platform, and is 100% TC4 compatible, because its structure is made from (rough numbers) 50% aArtisanQ_PID code, 25% modified or new libraries, to accommodate the new hardware, and 25% my work, some UI and operating mode changes, detailed described in the instructions at links above.
As aArtisanQ_PID will evolve in the future, will try to continue maintain this compatibility, as much as possible.

What is not TC4ESP:
- not a shield for an Arduino platform... the solution embed its own processor board, as TC4C
- not a plug and play or ready to use solution, it is a builders platform by the highest degree
- not a product to buy, although it can became, if someone design a shield, and sell the whole bag of parts as a kit, more or less soldered.

Why TC4ESP? Because I want to have a solution to run TC4 software:
- without need for much soldering, especially smd. I do this for a life, I have all tools and skills, so not a worry for me, but I speak about what others told me what they want...
- without actual processor limitations, especially memory
- with better temperature acquisition and signal processing
- different UI and intelligence added
- not the last, cheaper... genuine TC4 could end costing a fortune when imported in Europe, with all the taxes added...

Expect to see changes in this introductory announcement next days, as more thoughts comes in my mind, or as a result of your questions.

I am open and welcome any positive criticism and improvement suggestions, as well as code contributions to add to this project.

Some years later edit: to compile the initial github commit, the board core version should be set to 2.4.2.
A successful build was also reported using V3.0.0, however...
Edited by renatoa on 06/21/2024 7:09 AM
 
greencardigan
Great work! You've done a lot of work with this.
 
Gullygossner
Ordered the components to give this a go. Will be following this until my parts arrive. Did you build a project box to house your components?
 
renatoa
Mine are still on a test board because I am tinkering permanently.

Built a "commercial" looking version for a fellow, in standard ABS electronics box from a DIYer shop, 15x9x4 cm or close.
The minimum size of the parts is 13x7 cm, given by LCD and buttons board side by side. All other boards can fit in this footprint.
 
marcov
Awesome! I was waiting since some time for this.

Quote


What is not TC4ESP:
- not a plug and play or ready to use solution, it is a builders platform by the highest degree
- not a product to buy, although it can became, if someone design a shield, and sell the whole bag of parts as a kit, more or less soldered.


Any chances this can happen? It would also be cool to have a collaborative design.
 
Wiz Kalita
Wow, really cool! I look forward to seeing where this goes. Are you planning on implementing your ideas for a control scheme better than PID?
 
renatoa
Yes, there is also an extended UI, not confident enough to publish yet, but using it almost daily, where the roasting is driven based on prediction lines evolution, aiming only two points, DE and FC.
The evolution between these two points being the natural exponential machine curve based on thermodynamic laws.
So no profile as list of values, but as coefficients of an equation.
 
JackH
The project looks interesting Renatoa! You certainly put a lot of work into developing it.

The ESP processor looks like something small yet powerful. I would like to get one to tinker with.
---Jack

KKTO Roaster.
 
JackH
I bought two of the ESP8266 NodeMCU boards with the micro usb interface . Very impressive little board.

Have you seen the WeMos D1 R2 WiFi ESP8266 Development Board? I wonder if the TC4 shield would work with that as is.
JackH attached the following image:
41viy0w-vel.jpg

---Jack

KKTO Roaster.
 
mg512

Quote

JackH wrote:

I bought two of the ESP8266 NodeMCU boards with the micro usb interface . Very impressive little board.

Have you seen the WeMos D1 R2 WiFi ESP8266 Development Board? I wonder if the TC4 shield would work with that as is.


Probably it will work, but keep a few things in mind.

One, you might run into some trouble due to different voltage levels. The ESP8266 runs at 3.3V, and the TC4 has all the ICs at 5V supply voltage, which according to spec means they should need at least 3.5V for a logic high. But you could try - it's quite possible they accept 3.3V.

Also the I2C lines are pulled up to 5V on the TC4, which means there is a small risk of damaging the ESP8266. I've interfaced ESPs with 5V devices before and it was fine, but be aware of the risk.

If it doesn't work you could try connect the TC4's 5V rail to 3.3V instead. That would require some minor modifications on the board. But it should at least get the ICs working. Probably the SSR drivers would be OK at 3.3V as well, I haven't done the maths on that though.

That is all for the plain TC4. For the additional features on the TC4+, in case anyone is tempted: For the DC fan driver you would probably have to switch out the MOSFET for a different one. The BT interface would probably require some minor modification. Definitely do not tie 5V to 3.3V if you're using the voltage regulator, or bad things will happen. ;)
 
JackH
Forgot about the 3.3V. Oh, well. Just a crazy idea.
Edited by JackH on 05/05/2019 6:42 PM
---Jack

KKTO Roaster.
 
renatoa
Didn't evaluated WeMos D1 R2 board, interested to see pin layout, because a real compatibility at pin level with an Arduino looks very difficult.
But a nice idea to be able to accept Arduino shields, even only physically, as a support.
...
After a bit ...

i.stack.imgur.com/ELW7g.jpg

Evaluating the change of pins I use currently in TC4ESP, to match this board... at first sight I found an issue... the default OT1 pin, GPIO9 on Uno, can't be equated to GPIO13 on Wemos, because I am already using this pin for BT (Rx2), and is fixed, can't be reallocated.
Anyway, this reassignment alone will not make this a board compatible with original TC4 shield...
Edited by renatoa on 05/06/2019 2:21 AM
 
renatoa
One of the latest additions of my TC4ESP project is support for Pt100 RTD sensor, i.e. non-thermocouple.
This addition could be of interest for any user of the TC4/+ boards, being fully compatible with the main TC4 code.

The library can be found here:
https://github.co...ermocouple

... and can be used as is in a TC4 project, the only change is to declare that the specific channel is using a Pt100 sensor:


typePt tc1;


The sensors allocation on channels and their usage can be freely mixed without any interference.
The test bed of this new setup was a Pt100 on CH1 for BT, and a K TC on CH2 for ET.
 
zamunda
Hello,
I would like to give this project a try, have a SSR and HC-06 laying around and for a minimal setup I need:

ESP8266 board - $3.58
MCP3424 ADC board - $4.82
AD849x TC amp board - $4.30
Total $12.70

This was in 2020 I think...
Is it me or have prices raised a lot since then?

I can not find these parts under a budget of $35...
 
renatoa
Yep, prices are higher... but still in the cheap ballmark

For the last setup I built, in May this year, I bought three AD8495 K-Type Thermocouple Amplifier with £11.64, so less than 4 for unit, now, atm, i.e. October, they are £4.62 Grin

cayin35, located in China, was the eBay seller. 193485133150 is the eBay ID of the AD8495 board.
 
zamunda

Quote

renatoa wrote:

Yep, prices are higher... but still in the cheap ballmark

For the last setup I built, in May this year, I bought three AD8495 K-Type Thermocouple Amplifier with £11.64, so less than 4 for unit, now, atm, i.e. October, they are £4.62 Grin

cayin35, located in China, was the eBay seller. 193485133150 is the eBay ID of the AD8495 board.


Hello Renatoa,

Thanks for this info!

Maybe it's me but this seller does not seem to sell these anymore?
 
renatoa
Oups... didn't noticed the "0 available" part...
But the worst news is that nobody seems to sell this board now for a decent price... on eBay at least...
Lowest source could be in US Adafruit board, at $12.
Or Aliexpress, for less... https://www.aliex...13452.html

Found a notice about the chip itself: Available to back order for despatch 18/07/2022... Shock

This shortage should affect phidgets too, they use the same or similar TC amplifier chip from Analog Devices.

Architecture could be changed to MAX31856, and drop the last link with TC4, the ADC chip, but the cost will be the same.
Edited by renatoa on 10/04/2021 9:52 AM
 
zamunda
Hello Renatoa,

The reason that you used AD8495 in this project and not fe MAX31856 is because of price or also performance?
Otherwise I consider the MAX31856 for this project.

Thanks!
 
renatoa
AD8495 works very well as a front-end for MCP3424 ADC, from the original TC4 design.
The same architecture. i.e.: dedicated TC amplifier with cold junction compensation, followed by a high class ADC, and a MCU, is used by phidgets too, so you can consider TC4ESP as a phidget running TC4 software.

Replacing amplifier and ADC with MAX31856 is possible and would work, but half of TC4 "character" would be lost. Not a perceivable loss in real operation, just saying... sentimental Grin
Actually, already started this separation, by adding the PT100 sensor capability, but it's the same architecture... just another sensor type dedicated amplifier, with analog output, as AD8495, that still rely on ADC presence.

Price wise... when using two channels both solutions are on par... if you want all the 4 temperature channels for your setup, then the MAX31856 way would be significantly costly... and the PT100 capability broken.

Not the last reason... this was the market status at the moment of TC4ESP inception, in 2018. At that time wasn't aware about the MAX31856 availability.

If this detail is all that stop you jumping on this project... maybe I can add support for this MAX31856... but not soon, the next 2-3 weeks are busy for me.
Edited by renatoa on 10/09/2021 2:14 AM
 
miyankizu
I think it is hard to find Max31856. But how about Max6675? In this case also do we need to use also MCP3424 and how should be connections ? I have already esp32 and the other components out of MCP3424 and AD849x Grin
 
renatoa
MAX6675 is not up to task, for the processing I am doing inside this version of TC4 on steroids. Nor MAX31855.
Max31856 boards are available at Adafruit, or from ebay/chinese shops.
MCP3424 not needed for any MAX family chips interrfacing, but please don't make any plans to have this feature ready "tomorrow"... is an unexpected request and not fitting in my immediate future plans.
 
miyankizu
It is okay @renatoa , this is a big work and I am totally understand you. I can’t ask extra from you. I try implement my project yours. Anyway big thanks and appriciate ThumbsUp

Quote

renatoa wrote:

MAX6675 is not up to task, for the processing I am doing inside this version of TC4 on steroids. Nor MAX31855.
Max31856 boards are available at Adafruit, or from ebay/chinese shops.
MCP3424 not needed for any MAX family chips interrfacing, but please don't make any plans to have this feature ready "tomorrow"... is an unexpected request and not fitting in my immediate future plans.
 
renatoa
Ok, so I ordered a MAX31856 board from eBay, but still you have to be patient, delivery will take one month.
Preparing code meanwhile... but without any real world test.
 
zamunda

Quote

renatoa wrote:

AD8495 works very well as a front-end for MCP3424 ADC, from the original TC4 design.
The same architecture. i.e.: dedicated TC amplifier with cold junction compensation, followed by a high class ADC, and a MCU, is used by phidgets too, so you can consider TC4ESP as a phidget running TC4 software.

Replacing amplifier and ADC with MAX31856 is possible and would work, but half of TC4 "character" would be lost. Not a perceivable loss in real operation, just saying... sentimental Grin
Actually, already started this separation, by adding the PT100 sensor capability, but it's the same architecture... just another sensor type dedicated amplifier, with analog output, as AD8495, that still rely on ADC presence.

Price wise... when using two channels both solutions are on par... if you want all the 4 temperature channels for your setup, then the MAX31856 way would be significantly costly... and the PT100 capability broken.

Not the last reason... this was the market status at the moment of TC4ESP inception, in 2018. At that time wasn't aware about the MAX31856 availability.

If this detail is all that stop you jumping on this project... maybe I can add support for this MAX31856... but not soon, the next 2-3 weeks are busy for me.


Hello Renatoa,

Thanks for this explaination!
OK, so I'll stick to the original components and see if I them can get from different sources here in Europe.
Let you know how it goes!

Thanks and regards
 
zamunda

Quote

zamunda wrote:

Quote

renatoa wrote:

AD8495 works very well as a front-end for MCP3424 ADC, from the original TC4 design.
The same architecture. i.e.: dedicated TC amplifier with cold junction compensation, followed by a high class ADC, and a MCU, is used by phidgets too, so you can consider TC4ESP as a phidget running TC4 software.

Replacing amplifier and ADC with MAX31856 is possible and would work, but half of TC4 "character" would be lost. Not a perceivable loss in real operation, just saying... sentimental Grin
Actually, already started this separation, by adding the PT100 sensor capability, but it's the same architecture... just another sensor type dedicated amplifier, with analog output, as AD8495, that still rely on ADC presence.

Price wise... when using two channels both solutions are on par... if you want all the 4 temperature channels for your setup, then the MAX31856 way would be significantly costly... and the PT100 capability broken.

Not the last reason... this was the market status at the moment of TC4ESP inception, in 2018. At that time wasn't aware about the MAX31856 availability.

If this detail is all that stop you jumping on this project... maybe I can add support for this MAX31856... but not soon, the next 2-3 weeks are busy for me.


Hello Renatoa,

Thanks for this explaination!
OK, so I'll stick to the original components and see if I them can get from different sources here in Europe.
Let you know how it goes!

Thanks and regards


Just ordered from AliExpress:
ESP8266 board (1x)
MCP3424 ADC (1x)
AD849x TC amp board (2x)
---------
Total 24 Euros
 
Jump to Forum: