• Welcome to National Homebrew Club Ireland. Please login or sign up.
April 26, 2024, 08:42:27 PM

News:

Want to Join up ? Simply follow the instructions here
Not a forum user? Now you can join the discussion on Discord


STC-1000+ Project

Started by Will_D, May 14, 2014, 12:55:56 PM

Previous topic - Next topic

Will_D

Quote from: Will_D on May 14, 2014, 10:41:59 AM
I know we can get spam filters but what about "geeky interesting stuff" filters.

You have now totally wrecked my plans for the day. I will now sit in front of the computer reading about this and then dismantling my stc-1000s.

THANKS A LOT  >:D

Well BO**OX ye lot!

Just openned up a spare STC-1000 and what do I Fekinn find inside?

Yes you guessed it,  a crappity smaking A400-P version 1.0 just like the Effing photo!

So now what do I do?

Right dig out the Arduino thats what!

Remember: The Nationals are just round the corner - time to get brewing

imark

And where did you buy it?

Will_D

So am starting a new thread.

Maybe a mod could tidy up the previous hijacked thread.

In answer to the last couple of questions:

I can find no distinguishing marks on it at all!

I bought it off the bay from a Chinese source mixtea I think

I have 3 in use at the moment so I will chech them as well.

I am using one of them just as a temp display and how mant hacked STC do I need. Will check and may swap.

I think James also has 1 that I supplied from same.
Remember: The Nationals are just round the corner - time to get brewing

Will_D

May 14, 2014, 04:17:22 PM #3 Last Edit: December 12, 2020, 09:24:06 AM by LordEoin
Started new thread for this;

https://www.nationalhomebrewclub.ie/forum/index.php/topic,6789.0.html

So maybe a mod can prune out the STC stuff
Remember: The Nationals are just round the corner - time to get brewing

Will_D

So I decided to defrost the freezer - this meant I couldn't do much more than use the computer and the Arduino!

So managed to upload and run the code on a UNO.

In order to do this I had to delete the Farhenheit constant defs!

Prog was too big for the Uno: 32,256 bytes.
Removing the Fahrenheit reduced code to 19k or so!

Next is to solder some wires to the board. I don't fancy using too much heat on the compent side to clear the holes as there are some surface mount components very close to it.

I will solder jumper wires to the back of the board.

Now its time to stop the hands shaking so its a quick pint in the rugby club then dig out the soldering iron.
Remember: The Nationals are just round the corner - time to get brewing

Garry

I'll be following this with interest. I hope you are taking pics?

Will_D

So an Update:

Took the STC apart:



And its the correct version

Now I am going to solder on the reverse side (as stated above the component side has some microscopic surface mounts very close to the through holes.
So clean up the back of the board with a glass fibre pcb brush (or a sharp scalpel/needle)



Now make up a Arduino Jumper:



So after a few pints in the club (Yes it does stop the shakes! ), warm up my smallest soldering iron and attatch the wires:



From left to right:

Orange is mCLR connected to Arduino pin 3
Red: +5 Volts
Black: Ground
Grey: Data Arduino pin 8
Yellow: Clock Arduino pin 9

Ok so far so good.

Now for the software bit and the upload:

Uploaded the sketch to the IDE and it compiles!

Try to upload the sketch and after a while get some daft error message. Turns out program is too big for a Uno.

Now the bulk of the upload to the Arduino is hex data to be uploaded to the STC. It comes with both Farhenheit Program and Data uploads as well as the 2 for Celsius. So delete the Farhenheit definitions. Size drops from 30K to about 19k and it uploads cleanly.

Now its time to connect the STC.


The STC is NOT to be connected to the mains! It is powered by the Arduino!

Connect just the power to the STC and it powers up and says EE. This is because sensor is not connected. Ok the documentation does say somewhere this should be done but I don't think it caused me a problem.

Ok at least its powered. Now disconnect power, connect the 3 logic lines and the power. All hell breaks loose. The uploader starts automatically and so theres lots of text in the Serial Momonitor and the IDE monitor window.

At the end there are loads of error from the 'avr_dude' whoever he is.
No sign of life on the STC at all. No red lights!
Oh and by the way the COM 4 port is now gone from the IDE.

Ho hum! Its near bed time and I've been at this for about 8 hours off and on.

BTW: The freezet is now spotlessly clean and empty and the brewery floor is dry.
Mrs D's comment: "See you can muli-task Will"

Part 2 commimming up


Remember: The Nationals are just round the corner - time to get brewing

Will_D

Part the second:

After a good nights sleep and dreaming of robotic sheep( >:D) a few niggles were at me:

1. Must connect the sensor.

2. Stop the auto-load

3. Add a bit of diagnostic printing to the code

4. Take it slowly

5. And analysing point 4 why the fe(k does he state in the documentation to set the serial port to 115,200 baud?
    I decided to set it to 19,200

Checked things out slowly, uploaded new sketch, powered on ok, powered off.

Connected 3 logic lines and the power. Still all ok and com 4 working

Send the 'd' command (checks the device) and ok device is there. Com 4 still ok

Use the 'p' command and yes it reads a data word. When accessing the STC there is a slight clicking from the alarm buzzer. Note there are a number of supported (but not in his pdf doc) commands in the serial monitor - I will document and add help to the code.

Ok so far so good.

Now try the 'a' command to upload both Program and data to the STC. After much clicking and scrolling:



Bugga me with a broom handle it Fekkin works.

So played with the menus and all seems ok!

Enough for now, time to get the supper on the go.

Part 3 should have the upadated code, documentation, note about physical problems (as is it wont go back in the case), also bring the programming wires out side may invalidate an insulation requirement. Also if I have another one I will try to make up a 5 pin probe that can be used to flash program other peoples STCs without the need to solder.

Please note that so far all we are getting is a loader to upload his STC software. I think how this s/w is designed and coded and compiles is somewhere in his system and may be available.
Till later
Remember: The Nationals are just round the corner - time to get brewing

Will_D

After a frustrating day or two trying to get a simple data logger working I nowe have an arduino prog that logs 3 temperatures. So now to program up a profile, connect the heater and run a 48 hour test.

Results will follow!
Remember: The Nationals are just round the corner - time to get brewing

Tom

Hi Will. I've got my first STC in a box on the bookcase. VERY pretty for £15 (couldn't wait).

What's the craic with programming it then? Is it to have a fermentation profile that could include a diacetyl rest, for example, or gradual decrease in temperature without having to adjust the STC all the time? Or is it simply an excuse to bocha (as they say in Wales)?

Also, can I use the STC just as a thermometer for now? I want to see if it works, but don't know if I should test it out without a load, if you know what I mean.

Will_D

Hi Tom,

The STC-1000 out of the box is a very capable temperature controller.

Just power it up and it acts as a thermometer.

Connect the heating and cooling circuits and it acts as a temperature controller: Too warm and the fridge kicks in, Too Cold and the brew belt kicks in.

This project is all about reprogramming the STC's controller. Its a bit techy and needs an Arduino to manage the flashing (read: New code upload) and some soldering skills. If you manage it you have now upgraded to the STC-1000+:

In a nutshell the new functionality is:

Basically the STC-1000 will now act as a fermentation controller:

6 defined fermentation profiles!

Each profile can have up to 10 setpoints.

A setpoint can run for up to 999 hours!

It will interpolate/ramp up to 64 intermediate steps between the 2 setpoints

It also acts as a normal STC!

There are 2 versions of STC-1000 available and there is no way to tell externally which is flashable and which is not!
Remember: The Nationals are just round the corner - time to get brewing

johnrm

Great work Will!
What is the procedure with changing the Temp profile on the STC?
Is it possible to tweak the temp profile on the STC via the buttons or hook it to Arduino?

Will_D

Quote from: johnrm on May 22, 2014, 11:42:57 PM
Great work Will!
What is the procedure with changing the Temp profile on the STC?
Is it possible to tweak the temp profile on the STC via the buttons or hook it to Arduino?
You only need the Arduino to upload the new code and data to the STC.

All the profiles and parameters are then settable using the buttons.
If theres a power cut it rembers where it is in the profile and starts from there!


Remember: The Nationals are just round the corner - time to get brewing

Tom

Ah, of course there is a timer in there! I assumed that it had to be plugged in permanently, but the compressor delay obviously uses some sort of timer chip. Once you've got it programmed, can you remove the arduino jumpers and get it back in the original box, assuming you've uploaded all the profiles you want?

Will_D

Quote from: Tom on May 23, 2014, 12:14:45 PM
Ah, of course there is a timer in there! I assumed that it had to be plugged in permanently, but the compressor delay obviously uses some sort of timer chip. Once you've got it programmed, can you remove the arduino jumpers and get it back in the original box, assuming you've uploaded all the profiles you want?
No need as all the parameters/profiles/settings can be done with just the buttons. No need for any more Arduino!

In fact my Arduino is now logging the temps of a test demi-john!
Remember: The Nationals are just round the corner - time to get brewing