Commit b4a7f4ac06c6560db8bba32bb035902755abe2e3

Authored by henyxia
1 parent 6e35f0fb

Querying for pump informations

Showing 1 changed file with 21 additions and 2 deletions   Show diff stats
@@ -27,10 +27,14 @@ @@ -27,10 +27,14 @@
27 #define SET_HEAT_OFF 'G' 27 #define SET_HEAT_OFF 'G'
28 #define SET_PUMP_ON 'B' 28 #define SET_PUMP_ON 'B'
29 #define SET_PUMP_OFF 'D' 29 #define SET_PUMP_OFF 'D'
  30 +#define PUMP_STATE_HIGH 'I'
  31 +#define GET_PUMP 'F'
30 32
31 // Globals 33 // Globals
32 int hvc_fd = -1; 34 int hvc_fd = -1;
33 bool hvcStop = false; 35 bool hvcStop = false;
  36 +int pumped = 0;
  37 +bool previousPumpState;
34 bool sPump = false; 38 bool sPump = false;
35 bool sHeat = false; 39 bool sHeat = false;
36 bool autoHeat = false; 40 bool autoHeat = false;
@@ -47,6 +51,7 @@ int tempCons; @@ -47,6 +51,7 @@ int tempCons;
47 51
48 void setPumpOn() 52 void setPumpOn()
49 { 53 {
  54 + pumped = 0;
50 setPumpWantedState(true); 55 setPumpWantedState(true);
51 } 56 }
52 57
@@ -120,13 +125,19 @@ bool initHVC() @@ -120,13 +125,19 @@ bool initHVC()
120 return false; 125 return false;
121 } 126 }
122 127
  128 + sendData(&hvc_fd, GET_PUMP);
  129 + data = getData(&hvc_fd);
  130 +
  131 + previousPumpState = data == PUMP_STATE_HIGH;
  132 +
123 return true; 133 return true;
124 } 134 }
125 135
126 void* processHVC(void* we) 136 void* processHVC(void* we)
127 { 137 {
128 - uint8_t data;  
129 - float temp; 138 + uint8_t data;
  139 + bool pumpState;
  140 + float temp;
130 141
131 while(!hvcStop) 142 while(!hvcStop)
132 { 143 {
@@ -175,6 +186,14 @@ void* processHVC(void* we) @@ -175,6 +186,14 @@ void* processHVC(void* we)
175 tPumpStart = clock(); 186 tPumpStart = clock();
176 } 187 }
177 188
  189 + // Querying pump state
  190 + sendData(&hvc_fd, GET_TEMP);
  191 + data = getData(&hvc_fd);
  192 + pumpState = data == PUMP_STATE_HIGH;
  193 + if(pumpState ^ previousPumpState)
  194 + pumped++;
  195 + previousPumpState = pumpState;
  196 +
178 usleep(HVC_POLLING_TIME); 197 usleep(HVC_POLLING_TIME);
179 } 198 }
180 199