Hi everyone. I have a basic room heater control with blynk. Blynk android app is ok but there is something absent in physical world about visual. I add a nextion lcd to command in parallel room heater with Blynk.
My first issue is which one will be master ? In my scenario, younger peoples in the house (who can use smartphone) can control heater in Blynk android app easily. The other side, elder people (who cant use smartphone or dont want do ) can control heater by LCD touch screen. I chose LCD, that master one. Blynk app will secondary. If one of LCD user change the heat, heat will change and Blynk app commands will ignored. I ensured that with this part of code;
BLYNK_WRITE(V0) // V0 is desired temp slider
{
if (nextion_forced == 0) // if LCD in standby mode
{
int pinValue = param.asInt(); // Blynk could change the heat
set = pinValue; // SET is desired temp from V0 pin
}
else // If LCD in command
{
Serial.println("Blynk control ignored.");
set = set_nextion; // SET is desired temp from LCD
}
}
But in this situation, Blynk app user change the heat by slider for example “26”, the slider remains in “26”
I think for these situations, Blynk control elements (buton, slider, ± butons etc) should have third position. 1. ON 2.OFF and 3.DISABLED.
When a control element disabled by the code, in Blynk app this control must be recognize and its value should not be changed. Some examples;
-
Master device was changed the set temprature of the room by physical buton, Blynk app only watch cant change. In Blynk app set temprature element must be in disabled position.
-
Blynk app has water pump on/off buton. But this buton will disabled when the soil moisture more than %90 to prevent overwatering by mistake.
-
The door has a RFID controlled lock system also Blynk app has a on/off buton to operate same lock. At nights, Blynk app button will disabled for the security. Or your phone stolen
easily switch another physical buton from “RFID+BLYNK mode” to “only RFID mode”. then Blynk app buton will disabled.
-
An automated window blind (curtain, stor etc) can control by Blynk. If the blind reach the max position with Blynk 's soft “+” buton (physical limit switch will triggered) then Blynk app “+” buton will disabled. The user only can press “-” buton to open blind.
etc… I think eventor could handle like this " when…pin HIGH …buton is DISABLED"
What do you think? Would not it be nice?