This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
GPO function - A new v2.0 feature that can be used to drive a relay.
General Purpose Output function.

This is a new feature introduced in the v2.0 software, that can be used to drive a relay or provide a signal to any other device, based on a user programmable condition. Almost all of the internal WeatherDuino Pro2 variables, can be used to compose the condition required by the user.

An example of use, can be enable or disable a sprinkler system based on the Today Rain value, or the Soil Moisture content, or a combination of both. Interesting isn't it? Since you are using a WeatherDuino Pro2 weather station almost anything will be possible.

Soon, I will publish here more details about how to use it.
MeteoCercal - Air Quality Data
Click here to watch at my ThingSpeak channel

Could be useful for my home heating tooSmile
Could it have hysteresis? Say you wanted to turn a heater on when it drops from a set temp by a set amount?
Hysteresis? Dodgy What a hell is this? Huh Sounds complicated. Angry
Let me think. Humm... Better say it can't be done, so its solved Confused.

Just joking...
My dear friend, do you mean something like this:

Set_Temp = 20.0
Variation_drop = 3.0

Supposing you will gonna use the inside temperature sensor to monitor when turning the heater on or off:

if (  Set_Temp - Output_T_Int >= Variation drop)  turn heater on
else if ( Output_T_Int >= Set_Temp + Variation_drop) turn heater off

Heater turn on at 17º and off at 23º

You can do everything you can program using Arduino code! The only restriction is available memory. Keep in mind that long and complex conditions, may turn the software to big to be compiled, or unstable.

That said, I think that everyone now realize that to use the GPO function, a minimal knowledge of Arduino programing is required.

Thanks uncle bob. In some way your question ended helping me to explain a little more about the GPO function.
MeteoCercal - Air Quality Data
Click here to watch at my ThingSpeak channel

Some more info to conclude...
Basically the GPO function, is a user programmable routine that is called every minute during execution.
The code to that routine is placed on the GPO_Task.ino file. This way, when there is an software update, there is no need for the user to rewrite the personalized code again, it's just a matter of copy the existing GPO_Task.ino file, over the default GPO_Task.ino file in the upgrade package.

Where can we connect the relay?

On all v4.xx or v5.xx RX boards there are two pins marked Led+ and Led-, these two pins were previously used to control the backlight of the small TFT display which is not used since long time.
On the already assembled v6.xx RX boards there is dedicated GPO connector.
The output (Led+ pin) is a 5V signal, driven by a MosFET transistor. You can connect to those two pins, any 5V relay which not requires more than 50 ~60 mA.
A recommended method is using one of these arduino modules, depending of the load you intend to control.

[Image: s-l225.jpg] [Image: s-l225.jpg] [Image: s-l225.jpg]
MeteoCercal - Air Quality Data
Click here to watch at my ThingSpeak channel


Users browsing this thread: 1 Guest(s)