Elitech stc-1000 temperature controller review and wirring manual
Содержание:
- STC 1000 manual guide:
- Connect the STC-1000
- MOD and firmware upgrade :
- Updates
- STC 1000 Technical data:
- Comparison with Elitech vs. Generic Version in Review
- Manual how to setup temperature controller
- Introduction
- Непосредственно тестирование
- Pros and cons
- Performing the upload
- Detailed description of temperature controller STC 1000
- Где применяется
- Building a programmer
- The firmwares
- Complete Technical Parameters:
- Upload the sketch to the Arduino
STC 1000 manual guide:
Here is complete easy manual for STC 1000 temperature controller now i describe buttons:
SET button use to set the thermostat, if you Holds for 2 seconds and the thermostat displays the menu with functions F1,F2,F3,F4, (I will explain in detail below)
Arrows is for to increase and lower values
On -Off button is for activation and deactivation
F1: SET GOAL temperature : pusch SET button again and here see currently set temperature , If you want to change it, press SET again with the up or down arrow (whether or not you want to increase or decrease the temperature). Remember SET + arrow
F2: Hysteresis od sleewe range : in manual called “Difference set value ” is gap when booth relay turn off…For example, if you set 1 degree
When the temperature is raised to a target temperature of, for example, 30 degrees of the relay for heating, it is switched off , If the temperature rises further and exceeds 31 degrees, the cooling relay switches on.
F3:Compressor delay time: time for wait after reach goal temperature , if you set 3 min temperature controller wait 3 min , after 3 min turn on relay.
F4:Temperature calibration: You can make the Stc-1000 very accurate, just compare the temperatures with a verified thermometer (best compare at the target temperature) you can increase or decrease the temperature after 0.1C steps.
This is explained in detail in the original manual here is complete scan:
manual page 1
manual page 2
manual page 3
manual page 4
manual page 5
wirring diagram stc1000 temperature controller manual page 6
Connect the STC-1000
Important: The STC-1000 must be completely unplugged from mains power, but the sensor cable should be connected. During programming and testing, the STC-1000 will be powered from the Arduino.
STC-1000 | Arduino |
---|---|
ICSPCLK | D9 |
ICSPDAT | D8 |
GND | GND |
VDD | 5V |
nMCLR | D3 |
Connections between STC-1000 and Arduino boards |
The connections can be made using pretty much any electrical wire, but a solid core or Dupont style wires make it a lot easier. Pin headers and Dupont wires can be found cheap on eBay and Amazon.
Start by opening the STC-1000. Cut or remove the sticker.
Cut or remove sticker.
Lift the tabs that hold the front panel in place and slide the board out.
Lift the tabs and pull board out.
Check the board version (upper left corner in image) and locate the programming header.
Locate programming header connections..
It might be easier to access from the bottom of the board.
Programming header can be accessed from bottom of the board as well.
The best way to proceed is to use a vacuum solder sucker and a soldering iron to clean out the solder from the programmer header pads, exposing the holes. You might also be able to clear the holes by heating the pad from underneath with the soldering iron, then rapidly remove the iron once the solder is liquid and quickly blowing out the solder. Just take proper precautions, if trying this method.
Then the programming header can be inserted from the top of the board and soldered in place. This way you will have easy access the pins, making any future upgrades easier.
If you are not able to solder, a temporary connection for programming can be made by simply pressing the pins of the pin header against the pads by hand. The board is coated, so you may need to clean the solder pads to make the connection.
Programming without soldering (image courtesy of wilconrad)
MOD and firmware upgrade :
Maybe it’s for technical enthusiasts but there are some interesting ideas on the Internet that modify the controller STC 1000.
These interesting features can be added:
- Vanilla Plain version, with no extra features.
- Dual Probe Use a second temperature probe to put limits on ambient temperature.
- Fine Offset 433MHz Send temperature data wireless (emulate wireless thermometer).
- Communication -Use an arduino to send/receive data to/from the STC.
Mod STC 1000 with aurdino https://github.com/matsstaff/stc1000p
Dual probe : https://club.coopers.com.au/coopers-forum/topic/14688/
Firmware upgrade:http://hackaday.com/2014/03/15/temperature-controller-gets-open-source-firmware-upgrade/
Updates
Date | Release | Description |
---|---|---|
2014-04-04 | v1.00 | First release |
2014-04-11 | v1.01 | Increase approximative ramping steps to 64 |
2014-04-15 | v1.02 | Improved temperature averaging |
2014-04-16 | v1.03 | Added leaky integration filtering, improved averaging (+ bugfix) |
2014-05-25 | v1.04 | A couple of minor improvements and a minor bugfix |
2014-08-02 | v1.05 | Reset both heating and cooling delay when either heating or cooling cycle ends. Improved power off |
2014-09-14 | v1.06 | Add functionality for 2nd temp probe (to limit heating/cooling). Display ‘OFF’ in soft off mode. Added user definable temperature alarm. Added profile ‘editor’ webpage. |
2015-01-02 | v1.07 | Fixed bug where every other profile had wrong limits. Fixed soft on tempprobe switch bug. |
2015-09-10 | v1.08 | Added single wire communication and 433Mhz firmwares. |
201?-??-?? | v1.09 | Merge OVBSC and minute branch, improved webpage, some refactoring. |
STC 1000 Technical data:
- Temperature measuring range : -50 – 99°C;
- Resolution : 0.1°C;
- Accuracy : ±1°C (-50 – 70°C);
- Sensor error delay : 1 minute
- Power supply : 220VAC±10%, 50/60Hz;
- Power consumption : ≤3W;
- Sensor : NTC sensor (1PC);
- Relay contact capacity : Cool 10A/250VAC;Heat 10A/250VAC;
- mbient temperature : 0 – 60°C;
- Storage temperature : -30 – 75°C;
- Relative humidity : 20% – 85% (No condensate).
Specification and size :
- Front panel size : 75(L) x 34.5(W)(mm)
- Mounting size : 71(L) x 29(W)mm;
- sensor length : 1m (include the probe).
- Product size75(L) x 34.5(W) x 85(D)mm;
Package includes :
1 x 220V or 110V Mini Digital Temperature Controller Thermostat
1 x Instruction Manual
Comparison with Elitech vs. Generic Version in Review
In the past, I made a review and manually for the generic OEM version of the STC-1000 She had a good rating, and I have a good experience with her.The aim of the comparison between Elitech and the “Generic version” is to find out whether one is just a plain copy or Elitech has some added value.
On first view temperature controller they look the same but generic version have more thicker font.
Generic STC-1000 in left ,Elitech version in right
I found the difference in weight controller temperature from Elitech is heavier than the generic version .. I verified it by exact weighing.Elitech had 60g more I felt added value
Generic have weight about 102.7g and Elitech temperature controller have 168g
Once the differences in weight were detected, I had to dismantle boht STC-1000 temperature controllers because it is definitely not a complete copy only with mark “Elitech”.
STC1000 from Elitech had completely different PCBs with other components than the generic STC1000.Here’s a comparison on photos:
Generic is left and Elitech is right
- The main visible difference is that the power supply to the Elite has a large brown while the generic version of the thermostat has smaller yellow with electronics around (which is better I do not know)
- The layout of electrical components on PCBs is also different
- Switching relays for cooling and heating are also from another manufacturer
- The main control chip is also different
Here are photos to compare:
Generic goodsky relay
elitech relay
Gerneric main chip
Elitech main chip
Manual how to setup temperature controller
Here is complete easy manual for STC 1000 temperature controller now i describe buttons:
Download complete manual:Elitech stc1000 manual guide
SET button use to set the thermostat, if you Holds for 2 seconds and the thermostat displays the menu with functions F1,F2,F3,F4, (I will explain in detail below)
Arrows is for to increase and lower values
On -Off button is for activation and deactivation
F1: SET GOAL temperature : pusch SET button again and here see currently set temperature , If you want to change it, press SET again with the up or down arrow (whether or not you want to increase or decrease the temperature). Remember SET + arrow
F2: Hysteresis od sleewe range : in manual called “Difference set value ” is gap when booth relay turn off…For example, if you set 1 degree
When the temperature is raised to a target temperature of, for example, 30 degrees of the relay for heating, it is switched off , If the temperature rises further and exceeds 31 degrees, the cooling relay switches on.
F3:Compressor delay time: time for wait after reach goal temperature , if you set 3 min temperature controller wait 3 min , after 3 min turn on relay.
F4:Temperature calibration: You can make the Stc-1000 very accurate, just compare the temperatures with a verified thermometer (best compare at the target temperature) you can increase or decrease the temperature after 0.1C steps.
This is explained in detail in the original manual here is complete scan original from Elitech:
Introduction
The STC-1000 is a dual stage (that is, it can control heating and cooling) thermostat that is pretty affordable. It is microcontroller operated, that means there is a sort of ‘computer on a chip’ that reads the temperature of the probe, turns the relays on and off, reads the state of the buttons and updates the display. To do all this, the microcontroller needs to be programmed to perform these tasks. The program is stored in non volatile (flash) memory that is retained when there is no power. The microcontroller can be reprogrammed (flashed) with a new program (firmware), that can other or additional tasks. To do that, a new firmware is needed and you need a programmer that can send it to the microcontroller the way it expects it. The STC-1000+ project provides both these things (and a few additional things as well).
So far so good, but there is a catch. Probably due to the popularity of the STC-1000, there are a number of clones out there. These are functionally (from a user perspective) equivalent, but are not based in the same design. Specifically, they use other microcontrollers that while having similar specifications, use completely different architectures and most of all, do not have freely available tools (compilers) or even freely available documentation. This makes it extremely hard and/or expensive to change the firmware on these. Just buying an STC-1000 off the usual auction sites, makes it a complete gamble what hardware version (or which clone) you will receive, you’ve got the odds stacked against you as the clones probably are using slightly cheaper (and probably worse) components.
Many thanks to Will Conrad for tracking down the manufacturer and for sharing the information!
To upload (flash) the microcontroller, you also need a programmer. There are official Microchip PIC programmers (Pickit) to purchase, but they typically cost $60-$70. There are also clones available on the usual auction sites that cost around $22. Neither of these options are very cost effective, considering the price of the STC-1000. So, as a part of the STC-1000+ project, a PIC programmer is implemented as an Arduino sketch, where the Arduino instead will act as a PIC programmer. This makes it a lot more cost effective, as an Arduino Nano clone cost around $2.30 last I checked.
Непосредственно тестирование
Для наглядности возможностей STC-1000 я подключил его к вентилятору и обыкновенной лампе накаливания. В качестве температуры для нормальной работы гаджета было выбрано +25*С. Диапазон отклонений: 2 градуса в обе стороны. То есть если температура падала или поднималась, превышая заданный диапазон, терморегулятор начинал работать либо на охлаждение, либо на нагревание.
Продемонстрировать процесс достаточно просто. Выставляю температуру – в моем случае это +25*С
и жду пока она упадет до предела допустимого значения, то есть +23*С.
При достижении необходимого порога загорается лампа накаливания.
Дальше мне необходимо лишь поднести термодатчик к лампе, температура рядом с которой постепенно повышается, и ждать пока STC-1000 зафиксирует превышение заданного диапазона – то есть +27*С. При этой температуре включится вентилятор, а температура должна начать опускаться.
Вот так вот. Достаточно легко и просто неприхотливый и удобный прибор может регулировать температуру в помещении в заданных параметрах.
Pros and cons
Compared to a generic thermostat, the Elitech has this pros and cons:
Here is pros:
- She has a nice box
- Compared to generic STC-1000, the PCB is better (Difficult to judge the quality of the used electronics)
- Probe has more lenght 2m comparet with 80cm
Here is cons:
- The price is a bit higher – The Elitech STC-1000 is about 5 usd more expensive than the generic version
- The menu is the same as the OEM generic version The added value would be, for example, the ability to set the audible alarm as for STC2000
Review conclusion:
Micro temperature controller STC-1000 is good stable choice .My experience is good with both versions from Elitech work in the hatchery 3 thermostats, OEM version I sold about 18 pieces all run reliable.
Performing the upload
Example setup (note: sensor is not connected, but it should be).
When the connections are made, connect the arduino to the computer, open the Arduino IDE and open the serial monitor in the Arduino IDE (Tools -> Serial Monitor). Make sure it is set to 115200 baud and No line ending.
You should be greeted with the following output:
STC-1000+ firmware sketch.Copyright 2014 Mats StaffanssonSend ‘d’ to check for STC-1000
Enter ‘d’ (without the apostrophes) in the serial monitor input field and press ‘Send’ button. You should then receive:
Enter low voltage programming modeLeaving programming modeDevice ID is: 0x27C5STC-1000 detected.No previous STC-1000+ firmware detected.Consider initializing EEPROM when flashing.Sketch has version 1.06Send ‘a’ to upload Celsius version and initialize EEPROM data.Send ‘b’ to upload Celsius version (program memory only).Send ‘f’ to upload Fahrenheit version and initialize EEPROM data.Send ‘g’ to upload Fahrenheit version (program memory only).
If you see this (well, version number may differ), then you are good to go. If you instead see:
STC-1000 NOT detected. Check wiring.
Then check your connections and try again, until you get the correct output.
Send ‘a’ or ‘f’ to upload the version you want (Celsius or Fahrenheit). If you are upgrading from a previous version of STC-1000+, you may want to use the ‘b’ or ‘g’ command instead. The difference is that all the data will be retained in EEPROM (i.e. profiles, temperature correction et.c.). When upgrading, the sketch will indicate (on the ‘d’ command output) if there are changes that might invalidate your current EEPROM data, and if so you might want to use the ‘a’/’f’ command even when upgrading, to make sure the data has sane defaults.
After sending the upload command, a lot of output will appear in the serial monitor (that might be useful, should there be a problem) and due to how the the hardware is designed, it will also make some noise during programming (this takes ~20 seconds).
Detailed description of temperature controller STC 1000
Now I will describe thermostat and control , i will try to describe accurately.The device STC 1000 includes five main components:
- The display is red, it shows three digits four.clearly shows the temperature value withe the one decimal place.
- Below the display are four buttons which control the thermostat STC 1000. First buton is button is on / off Below it is“SET” button with next two arrows buttons are + and – are used for menu navigation increasing or decreasing values.
- The display has diodes one shows that the thermostat has activated witch relay is ON (cooling or heating). The the third diode lights up when you set the thermostat, called SET.
- Do we involve green terminal two terminals 1-2 is for power AC 110/220V (230V) , terminal 3-4 for temperature sensor, terminals 5-6 is for heating relay 7-8 for cooling relay .
- The sensor for the temperature controller STC is placed in 3-4 terminals. It is about 80 cm long with active iron end.Type of temperature sensor is classic NTC 10K
Note: STC1000 can buy in multiple variations the most common versions of the temperature controller are:
- Only 220V (for European market).
- 220/110V Universal for US and European market.
- Temperature showing only in Fahrenheit grades.
- Temperature showing only in Celsius grades.
When purchasing carefully, select the right model
Где применяется
Перед написанием сего обзора я немного посёрфил сеть, чтобы узнать где может применяться устройство. Оказалось, что спектр его использования разнообразен. Помимо собственно теплиц и продуктовых ям, с ним прекрасно дружат целые агрохолдинги, применяя STC-1000 в инкубаторах. Прибор используют крупные сетевые магазины, чтобы регулировать температуру в холодильных установках и витринах. Также STC-1000 будет удобным и недорогим решением для компаний, которым необходимо в нужном режиме поддерживать температуру в телекоммуникационных шкафах.
Устройство легко крепится на стойке шкафа, не вызывает трудностей при подключении и имеет простой интерфейс.
В общем я остался доволен и скажу даже больше – удивлён. При отличном ценнике терморегулятор дарит, в принципе, весь необходимый функционал.
Для более подробной работы STC-1000 посмотрите краткий обзор, найденный мной на YouTube.
Основной склад – СПб, пр. Луначарского 11к1 Основной склад
18 шт.
STC-1000 электронный регулятор температуры является готовым устройством с двумя реле, по одному на охлаждение и обогрев. Одним из преимуществ термостата является наличие калибровки и программирование температуры, получаемой с датчика. Термореле может применяться в водонагревателях, морозильных камерах, холодильниках, аквариумах и т.д.
Технические характеристики терморегулятора STC-1000:
- Диапазон температур: -50C +99,9C
- Гистерезис: 0.3- 10C
- Разрешение: 0.1C
- Точность: +-1C
- Диапазон калибровки датчика температуры: -10C +10C
- Программируемая задержка включения/выключения 1 – 10 мин
- Напряжение питания: 110 – 220 В
- Потребляемая мощность:
Building a programmer
Arduino UNO
An arduino UNO is the simplest way to build a programmer, as it can be done without any soldering. It is a bit more expensive though, but there are clones that are pretty cheap (arounf $3.60). All you need as the board, a few dupont wires and a female pin header. You may need an USB cable as well.
A completed Arduino UNO programmer setup. Note that the pinheader is 6 pin, that is what I had around, only 5 pins are used though.
Arduino Nano
The Arduino Nano might just be the most cost effective and simple way to go. You’d need to do some light soldering.
Arduino Nano wiring schematic
Arduino Pro Mini + CP2102 (or CH340 or FT232 or any other similar USB to TTL serial adapter)
The material I use, Arduino pro mini, CP2102, 5 pin dupont cable and heat shrink tubing (optional).
First I use a flat nose plier to bend the 90 degree pin header on the CP2102 back straight.
CP2102 with straightened pinheader.
The 3.3V pin needs to go. You could probably just cut it, but I heat up the solder with the soldering iron while at the same time pulling it from the other end with some pliers.
Before desoldering the 3.3V pin.
After desoldering.
Flip the pro mini upside down and the pins should line up (note: rx goes to tx and tx to rx, the others should match)
Pro mini lined up on the pin header, note the empty spot for the 3.3V pin.
Solder it in and cut the excess of the pins.
CP2102 and pro mini joined together.
Then just cut off one end of the dupont cable. Strip just a little bit of insulation off the end of each cable and pre tin. Solder each cable in the correct position (D9, D8, GND, VCC, D3). Best to feed it from below the board, as the reset button (which will still work) and other stuff is on the other side.
This will function as a programmer.
The last step is optional, but will make it more durable and a bit neater. Cut a few pieces off of a hot glue stick and put around and under the wires. Then feed it through an appropriately cut length of heat shrink tubing (usb connector first). 15mm diameter heat shrink tubing is a snug fit. When heating the tubing, the glue will melt and make a cheapish stress relief for the cables. A hot air gun works well to shrink the tubing, an electric hot plate (stove) also work very well. In pinch, you can even use a lighter.
Hot glue bits placed around and under the wires.
The finished ‘product’.
The firmwares
STC-1000+ firmware
This firmware, in addition to act as a thermostat, has the possibility to update the setpoint (the desired temperature to keep) according to a schedule (a profile) once per hour. The main purpose of this firmware is control the temperature of fermenting beer.
For more information on the specifics of this firmware, please see the user manual.
The firmware comes in a few variations, depending on what the ‘free’ pin on the MCU is used for.
- VanillaPlain version, with no extra features.
- Dual ProbeUse a second temperature probe to put limits on ambient temperature.
- Fine Offset 433MHzSend temperature data wireless (emulate wireless thermometer).
- CommunicationUse an arduino to send/receive data to/from the STC.
STC-1000+ firmware with minute timebase
The exact same thing as the normal STC-1000+ firmware, except profile is updated every minute instead of every hour. Same variations of extra featured versions.
STC-1000+ OVBSC (one vessel brew system controller) firmware
Firmware built to control a single vessel brew system (for example Braumeister, Grainfather and similar systems/DIY setups). Read more here
STC-1000+ RH (relative humidity controller) firmware
This is firmware I wrote for a friend of mine (Totte). The purpose is to control a heater (heating cable) in the crawl space under his house. By measuring relative humidity and temperature, and then comparing it to a (user settable) table of ‘safe limits’, the heater is activated when out of the safe region. The idea is to raise temperature (and thereby lowering relative humidity), so that conditions do not arise such that organic growth (mold, et.c.) can occur. The firmware is currently ONLY available in Celsius.
Read more here
Complete Technical Parameters:
- Temperature measuring range: -50℃~99℃;
- Resolution: 0.1℃;
- Accuracy: ±1℃ (-50℃~70℃);
- Sensor error delay: 1 minute
- Power supply: 230 VAC±10%, 50/60Hz;
- Power consumption: less than 3W;
- Sensor: NTC sensor (1PC);
- Relay contact capacity: Cool 10A/250VAC;Heat 10A/250VAC;
- Ambient temperature: 0~60℃;
- Storage temperature: -30~75℃;
- Relative humidity: 20%~85% (No condensate).
Specification and Size:
- Front panel size 75(L)×34.5(W)mm;
- Mounting size:71(L)×29(W)mm;
- Product size 75(L)×34.5(W)×85(D)mm;
- Sensor length 2 m included.
- Measure range: -50℃+99℃
- Mounting size: 71*29 mm
- Auto switch between refrigerating and heating
- Return difference value
Upload the sketch to the Arduino
The first thing that is needed is to upload the sketch Before the connections are made from the Arduino to the STC-1000, the sketch needs to be uploaded to the Arduino. It is important that connections are not made before this. An unknown program running on the Arduino could set the pins to the wrong state and short circuit the STC-1000. This could damage your STC-1000 and/or your Arduino.
Open picprog.ino (or picprog_???.ino depending on firmware version), either by double-clicking the file or from File -> Open in the Arduino IDE. If it asks to create a folder then accept. Connect the Arduino with the USB cable and make sure the correct serial port is set under Tools -> Serial port and the correct board is selected under Tools -> Board. Then upload the sketch to the Arduino (File -> Upload).
It is recommended that you close the Arduino IDE once the sketch is uploaded and disconnect the programmer from the computer.
Only when the sketch is uploaded correctly is it safe to make the connections to the STC-1000.