Stc-1000+

Homebrew Talk - Beer, Wine, Mead, & Cider Brewing Discussion Forum

Help Support Homebrew Talk - Beer, Wine, Mead, & Cider Brewing Discussion Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.
I received a v1.0 from Amazon today, $16.99 from Amazon Prime here... now if I can only figure out how to do this with my Arduino Nano.
 
I don't think it should be a problem to use the nano for the upload. The only thing that *may* be a problem is if the voltage regulator doesn't have the oomph, but I don't think that will be a problem. A bit of googling should give you the correct pins to use.
Please post back how things turn out.
Good luck!
 
I don't think it should be a problem to use the nano for the upload. The only thing that *may* be a problem is if the voltage regulator doesn't have the oomph, but I don't think that will be a problem. A bit of googling should give you the correct pins to use.
Please post back how things turn out.
Good luck!
I posted what I supposed were the pins here (previous page). I'll probably give it a try tonight.
 
Please post back how things turn out. Good luck!
EDIT: I'm now at the point that in serial monitor, I see the correct prompt:

STC-1000+ firmware sketch.
Copyright 2014 Mats Staffansson
Send 'd' to check for STC-1000


...however, if I enter d, nothing happens. No acknowledgement.

The STC-1000 powers up from the Nano, probe is in, reads in C... but I get nothing back from Serial Monitor.

EDIT 2: I'm sending this device back, if they'll take it. I can't even get it to work with the factory flash... compressor delay expires, solid LED on the "cool" indicator, and no voltage at the cool relay. This is my luck. Ordered another one.
 
Just to double check, you do have a hot side going into the relay right? Then the switched coming out to your outlet? With my first one I had to have the stc plugged in to 120v to be able to flash it, which I think was said to be a no no, but alas I am here to tell the tale. If I were you I would carefully try plugging it in and reflashing, and double check your relay wiring to make sure it is correct. Just remember that the relay only controls 1 pole to turn things off and on, not both your hot and neutral.
 
With my first one I had to have the stc plugged in to 120v to be able to flash it, which I think was said to be a no no, but alas I am here to tell the tale.

It is not really a no no, you just need to know what you are doing as live mains are involved. It is perfectly acceptable to power the STC as well as the Arduino from STC instead. In fact I have included some rudimentary code in the sketch to flash headless (without serial monitor), though I have not tested that code for a while, so it might not be functional atm. This could be useful though, if your STC is mounted, but you have a programming header. You could then upload the new version to the Arduino, disconnect it from your computer and bring it down to the basement (or where ever you ferment) and connect it to the STC and have it provide the power during the update.
 
Yeah, I have a new STC and it's working correctly with the factory flash. When I attempted to flash it over the weekend as above, no, I didn't have 120VAC connected to it, only the probe.

I may or may not give it another try sometime soon. I'm less likely to use steps or the ramping features, but it'd be nice to see degrees in F on the STC.
 
I have a quick request. I have been following this thread since it started. I believe I have missed the whole 'how to' portion and would appreciate a dummies guide to materials and directions for making the STC-1000 a STC-1000+. I know that an Andruino Uno or equivalent is necessary, and there is a necessary pin diagram for reprogramming it, but an easy to find dumbed down 'manual' would be nice. I have read mention of a manual for programming, understanding it exists, but I do not know where. Possibly a good idea is to make the original post contain the "for dummies" how to manual etc.
 
Click the link in the OP, download the zip and read the manual (PDF doc)


Sent from my iPhone using Home Brew
 
I finally got my 5-pin MIDI connectors and got a chance to put one in my Keezer controller and flashed it. I used the male X male dupont jumper wires to connect directly to the board (pushed them through as I heated the solder from the back side). I then soldered a set of jumper wires with a female end to the MIDI panel connector. You could solder the first set directly to the panel connector, but there isn't much wire to work with and this was a little easier. Also, if I ever need to replace the SCT it has quick-connects built in. Now if I want to re-flash the controller, I can just un-plug the controller from the wall and plug in my MIDI adapter from the Arduino, quick flash and I'm done. I also added a female 3.5mm mono phone panel jack to the housing and a male jack to the TC to make the TC quick-connect too (not shown in the pics). You can see a video of me flashing the controller for the first time
Here are a few pics of the controller as I wired it up.
A small craft vice with rubber jaws makes it a little easier to handle, a second person would probably make it even easier.

20140503_165658.jpg


20140503_175038.jpg


20140503_175004.jpg


20140503_175955.jpg


20140415_224646.jpg
 
Last edited by a moderator:
Excellent!
Very good run down, and really nice to see a vid of programming in action. I've been wanting to put up a video, but alas the force is not strong enough in me :)
I like that you included the midi connector to make it easier to to reflash.
I also saw in the video that initialization of the temperature filter in not working properly for you (it gradually rises when power is applied, which it shouldn't). I'll try to fix that (probably just need a bit more delay before reading the first value from A/D), it is just cosmetic though as it will always start with the initial delay, so don't worry about it :)
Thanks for the very cool success story, and happy fermenting!
 
Hi guys,

Greetings from Ireland. I am from the National Homebrew Club of Ireland and one of our members found this thread a few days ago so naturally I had to try it out.

Have 3 v1.0 and only 1 1.1 so we are good to good. Only diff is the 1.1 has Elitech printed on the front and a very small screw on the cover plate.

Downloaded V1.3

Decided to solder jumpers to back of board.
Had to deleter the Farenheit data as it would load onto my Uno (Boot loader to big I think)
Couldn't flash until I dropped the baud rate down to 19,200 and then it worked fine!

Yippee thanks to Alpha and the testers!

I have just finished reading the 70 pages ( I am retired!!) and have a couple of comments:

1. Change SP9 to nxt (Next) It could then specify another profile to link to (range 0..5) or 9 (revert to th mode with last setpoint (SP8)
That way profiles could be linked if needed.
However is this really need? Its just a sugestion!

2. Does pressing up & down together read out the version number only when in run mode.

3. How many steps to a ramp are there in V 1.03

You are all very welcome to have a look at us:
http://www.nationalhomebrewclub.com/forum/index.php

IMG_0103s.jpg


IMG_0105s.jpg
 
Now I also want to use my Arduino to log temperatures.

No problem with the sensors and code its just a question of how to upload to my computer. I don't want to use anything more than the serial interface.

So basically set the Arduino to record mode and store the data in Ram.

Then later upload the data via the serial port and cut and paste from the serial monitor window.

However due to lack of eeprom I will have to keep the Arduino powered and connected to a laptop. Dig out spare laptop!

Any othre thoughts?

Also when I dowloaded the IDE 1.0.5 it comes up with an error in application startup (on Windows 7 Pro 32 bit) so had to use 1.0.1 but it worked!
 
Hi again Will! Nice of you to post your experieces! I'll try to answer your questions.

1. Change SP9 to nxt (Next) It could then specify another profile to link to (range 0..5) or 9 (revert to th mode with last setpoint (SP8)
That way profiles could be linked if needed.
However is this really need? Its just a sugestion!

2. Does pressing up & down together read out the version number only when in run mode.

3. How many steps to a ramp are there in V 1.03

1. Unfortunately, there is not enough eeprom left to do this. Implementing this would mean having to drop one profile. With ramping enabled you should probably not need any more setpoints to brew great beer though :)

2. It will work when menu is idle, as when in the menu the buttons are needed for making selections.

3.There are a maximum of 64 substeps between two setpoints when ramping is enabled, if that is what you are referring to. It depends on the step duration and setpoints. The user guide is still outdated, I have started editing it, but life has caught up with me atm.

Regarding logging temperatures with the Arduino, I would strongly suggest you look into buying a cheap SD card module off ebay. There are libraries ready to use. Logging to RAM is no good and besides both RAM and EEPROM is too restricted. You can read the data off using serial if you really want, or just pop the card in the computer.

Cheers!
 
Thanks for all the work everyone's done on this! I've successfully flashed a few of the v1.0 devices and they're working great. In addition to a v1.1, I've now received a 3rd variety dated 2014.03 with yet another OTP chip. We've identified this one as a Holtek HT68F40 microprocessor SOP (300mil outline) 24pin. Of course the data sheets are in Chinese.

alphaomega - would you be willing to share the schematic you put together for the v1.0 board? I think the angle we'll take on the new version is to build a new PCB for the display, buttons, and a new programmable chip.

Thanks!
 
Ah. That sucks.

I don't have any schematics, I only measured up where each pin went. That is at the top of page0.c file.
That sounds like a good idea. Though you could probably just desolder the mcu and make an 'adapter' (just reroute some pins) to directly fit a suitable AVR.
 
Now I also want to use my Arduino to log temperatures.

No problem with the sensors and code its just a question of how to upload to my computer. I don't want to use anything more than the serial interface.

So basically set the Arduino to record mode and store the data in Ram.

Then later upload the data via the serial port and cut and paste from the serial monitor window.

However due to lack of eeprom I will have to keep the Arduino powered and connected to a laptop. Dig out spare laptop!

Any othre thoughts?

Also when I dowloaded the IDE 1.0.5 it comes up with an error in application startup (on Windows 7 Pro 32 bit) so had to use 1.0.1 but it worked!

Lol by that point you just built a BrewPi with a STC-1000 instead of a stand alone relay...
I like this STC-1000+ project because its a way to turn a cheap controller into one with a lot more functionality.

If you want logging as your describing though just pony up the extra cash and build a BrewPi.
 
I would say that depends on what you want to achieve. I can see a how an independent temperature logger could be useful for other stuff as well.
For me, I dont care much about logging. It might be useful if something is not working as intended, to try and track down what is wrong. But If everything works as supposed, then I'd just set it and forget it :)
 
I've ordered one from ebay just because of this great project. I will use it for a chicken incubator and the key feature for me in this firmware is hysteresis 0 (I will use it with an SSR).
@alphaomega you mentioned that you'll try to put PID in this firmware, are you still working at that?
That will be very important thing.
 
Hi!

Yes, I am still working on a PID firmware. And I have actually got a pretty decent PID algorithm implemented based off Brett Beauregards write up. It is however only 16 bit at the moment. It might be good enough, but I really need to do some modeling as well. It might well be that 32 bit is needed, then would need to rethink a lot more...
Anyway, I have got a lot of other things going on and have not had a lot of time to spend on it.
I might put the project on github, but it is probably not usable yet.
 
Does anyone have a link to Amazon or Ebay for the Pin header? I can only find them in qty 50, but just need the one!
 
Does anyone have a link to Amazon or Ebay for the Pin header? I can only find them in qty 50, but just need the one!

This is the one I bought, super cheap and free shipping. It's a 10 pack, so you'll have plenty to go around.
 
Last edited by a moderator:
Yes.
Radio shack also sells them with DuPont wires for about $5. That's where I ended up buying mine.
 
Hi guys!
Just thought you might want to know that I have released v1.04. If you are already running v1.03 there is no real need to update, unless you want to help out and make sure it works as supposed.
I found a minor bug that is corrected. Interrupts were not re-enabled after EEPROM writes. This does not seem to cause much problems, as EEPROM writes occur very seldom and interrupts are enabled every time LED display is updated (which occurs very often). But it is corrected mostly for completeness.
I added a wait for first A/D value to complete before initializing the filter as it seemed in the video by rocketbrewer that it might not always be ready by that time. This is mainly cosmetics and wont affect function.
I also added a bias for the interpolation of the temperature (theoretically it should help to round the value correctly), I doubt that it will matter much, but its 'the right thing' (tm).

I have not tested the changes (more than uploading and making sure that it is at least not broken). But I think these are changes are pretty low risk.

Cheers!
//mats

Edit: Oh yeah! I almost forgot... I doubt I will ever get around to make any youtube performance... So I am begging for any help here. Please make videos!! It would be awesome if someone would make more of a video tutorial of how to upgrade the controller or how to use it. I'd be more than happy to feature it on the project page. But any videos are welcome, just showing off your setup would be cool! I'd like to see :) Please tag the vid with 'STC-1000+' so it can be found when searching and it would be awesome if you provide a link to the project in the description.
Brew on!
 
I made 2 quick videos on using/programming the STC-1000+ and posted them to YouTube.

The first one covers basic menu navigation, the second one covers temperature profile programming. Hope this is helpful. I'll make a 3rd on flashing the firmware next time I flash one.

In the meantime, let me know if you spot any errors in these 2 :eek:
 
Oh holy moly!
Less than a day after I made the request, you come up with this Will...
That, sir, is so much better than anything I could ever have hoped for and certainly better than anything I could ever have excreted. Spot on! The like button is not enough... Hats off to you! No pressure, but I am very much looking forward to the flashing vid.
Big thanks man!
Would it be ok if I link to these on the project page, and perhaps your spreadsheet as well? Full credit to you of course.
 
Well, I gotta say, you've done it again! I am seriously impressed, you got skills! I honestly can't say anything bad about this. Very professional production, consise and to the point, methodical and easy follow and not least, technical correct information.
These vids show so clearly what a user might expect, in a way a document never can. Just a super job! I will link to these where ever I can. Thanks a million!
 
Glad you like it, Mats!

I updated the link above adding a short section at 4:34 on connecting the STC to the Uno (accidentally left this piece out of the prior upload).
 
Even better!
I have to call it a night now, but I will fix the links first thing in the morning. (Already added the first two on the project page). I think I need to update first post in this thread as well.
 
Very cool and intuitive. Thanks for the good work!

I was going to solder a header in, but holding the wires against the pads was easy.
 
Back
Top