S_COVER & S_IR implementation

This commit is contained in:
Barduino
2015-09-06 10:27:00 -04:00
parent ad2d94dddf
commit fe86934360
+27 -13
View File
@@ -130,7 +130,8 @@ MyHwATMega328 hw;
MyMessage msg_S_COVER_U(ID_S_COVER,V_UP); MyMessage msg_S_COVER_U(ID_S_COVER,V_UP);
MyMessage msg_S_COVER_D(ID_S_COVER,V_DOWN); MyMessage msg_S_COVER_D(ID_S_COVER,V_DOWN);
MyMessage msg_S_COVER_S(ID_S_COVER,V_STOP); MyMessage msg_S_COVER_S(ID_S_COVER,V_STOP);
const char* coverVal = "V_STOP"; //compiler warnings MyMessage msg_S_COVER_V(ID_S_COVER,V_VAR1);
int coverState=0; //0=Stop; 1=up; -1=down
#endif #endif
#ifdef ID_S_TEMP #ifdef ID_S_TEMP
@@ -196,7 +197,7 @@ MyHwATMega328 hw;
#ifdef ID_S_IR #ifdef ID_S_IR
MyMessage msg_S_IR_S(ID_S_IR,V_IR_SEND); MyMessage msg_S_IR_S(ID_S_IR,V_IR_SEND);
MyMessage msg_S_IR_R(ID_S_IR,V_IR_RECEIVE); MyMessage msg_S_IR_R(ID_S_IR,V_IR_RECEIVE);
const char* irVal = ""; long irVal = 0;
#endif #endif
#ifdef ID_S_WATER #ifdef ID_S_WATER
@@ -646,17 +647,17 @@ void cover(){
Serial.print("Cover is : " ); Serial.print("Cover is : " );
if (coverVal == "V_UP"){ if (coverState == 1){
Serial.println("Opening"); Serial.println("Opening");
gw.send(msg_S_COVER_U.set(V_UP)); gw.send(msg_S_COVER_U.set(1));
}else if (coverVal == "V_DOWN"){ }else if (coverState == -1){
Serial.println("Closing"); Serial.println("Closing");
gw.send(msg_S_COVER_D.set(V_DOWN)); gw.send(msg_S_COVER_D.set(0));
}else{ }else{
Serial.println("Idle"); Serial.println("Idle");
gw.send(msg_S_COVER_S.set(V_STOP)); gw.send(msg_S_COVER_S.set(-1));
} }
gw.send(msg_S_COVER_V.set(coverState));
} }
#endif #endif
@@ -844,6 +845,7 @@ void ir(){
Serial.println(irVal); Serial.println(irVal);
gw.send(msg_S_IR_S.set(irVal)); gw.send(msg_S_IR_S.set(irVal));
gw.send(msg_S_IR_R.set(irVal));
} }
#endif #endif
@@ -966,27 +968,30 @@ void incomingMessage(const MyMessage &message) {
#ifdef ID_S_COVER #ifdef ID_S_COVER
case V_UP: case V_UP:
coverVal="V_UP"; coverState=1;
Serial.print("Incoming change for ID_S_COVER:"); Serial.print("Incoming change for ID_S_COVER:");
Serial.print(message.sensor); Serial.print(message.sensor);
Serial.print(", New status: "); Serial.print(", New status: ");
Serial.println("V_UP"); Serial.println("V_UP");
cover(); // temp ack
break; break;
case V_DOWN: case V_DOWN:
coverVal="V_DOWN"; coverState=-1;
Serial.print("Incoming change for ID_S_COVER:"); Serial.print("Incoming change for ID_S_COVER:");
Serial.print(message.sensor); Serial.print(message.sensor);
Serial.print(", New status: "); Serial.print(", New status: ");
Serial.println("V_DOWN"); Serial.println("V_DOWN");
cover(); //temp ack
break; break;
case V_STOP: case V_STOP:
coverVal="V_STOP"; coverState=0;
Serial.print("Incoming change for ID_S_COVER:"); Serial.print("Incoming change for ID_S_COVER:");
Serial.print(message.sensor); Serial.print(message.sensor);
Serial.print(", New status: "); Serial.print(", New status: ");
Serial.println("V_STOP"); Serial.println("V_STOP");
cover(); //temp ack
break; break;
#endif #endif
@@ -1023,12 +1028,21 @@ void incomingMessage(const MyMessage &message) {
#endif #endif
#ifdef ID_S_IR #ifdef ID_S_IR
case V_IR_RECEIVE: case V_IR_SEND:
irVal = message.getString(); irVal = message.getLong();
Serial.print("Incoming change for ID_S_IR:"); Serial.print("Incoming change for ID_S_IR:");
Serial.print(message.sensor); Serial.print(message.sensor);
Serial.print(", New status: "); Serial.print(", New status: ");
Serial.println(irVal); Serial.println(irVal);
ir(); // temp ack
break;
case V_IR_RECEIVE:
irVal = message.getLong();
Serial.print("Incoming change for ID_S_IR:");
Serial.print(message.sensor);
Serial.print(", New status: ");
Serial.println(irVal);
ir(); // temp ack
break; break;
#endif #endif