56 |
56 |
57 float cv_beerDiff = 0.0; |
57 float cv_beerDiff = 0.0; |
58 |
58 |
59 |
59 |
60 |
60 |
61 void defaultControlsettings(void) |
61 void defaultControlSettings(void) |
62 { |
62 { |
63 cs_mode = 'o'; /* o = Off, f = fridge, b = beer, p = profile-run */ |
63 cs_mode = 'o'; /* o = Off, f = fridge, b = beer, p = profile-run */ |
64 cs_beerSet = 20.0; |
64 cs_beerSet = 20.0; |
65 cs_fridgeSet = 20.0; |
65 cs_fridgeSet = 20.0; |
66 cs_heatEstimator = 0.2; |
66 cs_heatEstimator = 0.2; |
194 } else if (strncmp(buf, "getControlSettings", 18) == 0) { |
187 } else if (strncmp(buf, "getControlSettings", 18) == 0) { |
195 srv_send("{ \"mode\":\"%c\", \"beerSet\":%.1f, \"fridgeSet\":%.1f, \"heatEstimator\":%.1f, \"coolEstimator\":%.1f }", |
188 srv_send("{ \"mode\":\"%c\", \"beerSet\":%.1f, \"fridgeSet\":%.1f, \"heatEstimator\":%.1f, \"coolEstimator\":%.1f }", |
196 cs_mode, cs_beerSet, cs_fridgeSet, cs_heatEstimator, cs_coolEstimator); |
189 cs_mode, cs_beerSet, cs_fridgeSet, cs_heatEstimator, cs_coolEstimator); |
197 } else if (strncmp(buf, "getControlVariables", 19) == 0) { |
190 } else if (strncmp(buf, "getControlVariables", 19) == 0) { |
198 srv_send("{ \"beerDiff\":%.2f }", cv_beerDiff); |
191 srv_send("{ \"beerDiff\":%.2f }", cv_beerDiff); |
|
192 } else if (strncmp(buf, "loadDefaultControlSettings", 26) == 0) { |
|
193 defaultControlSettings(); |
|
194 srv_send("ack"); |
|
195 } else if (strncmp(buf, "loadDefaultControlConstants", 27) == 0) { |
|
196 defaultControlConstants(); |
|
197 srv_send("ack"); |
199 } else if (strncmp(buf, "setBeer=", 8) == 0) { |
198 } else if (strncmp(buf, "setBeer=", 8) == 0) { |
200 inp = xstrcpy(buf+8); |
199 inp = xstrcpy(buf+8); |
201 rc = sscanf(inp, "%f", &newtemp); |
200 rc = sscanf(inp, "%f", &newtemp); |
202 if (debug) |
201 if (debug) |
203 fprintf(stdout, "new temp from %s, %.1f, rc=%d\n", inp, newtemp, rc); |
202 fprintf(stdout, "new temp from %s, %.1f, rc=%d\n", inp, newtemp, rc); |
220 cs_fridgeSet = newtemp; |
219 cs_fridgeSet = newtemp; |
221 } else { |
220 } else { |
222 srv_send("err"); |
221 srv_send("err"); |
223 } |
222 } |
224 free(inp); |
223 free(inp); |
|
224 } else if (strncmp(buf, "setOff", 6) == 0) { |
|
225 if (debug) |
|
226 fprintf(stdout, "temperature control disabled\n"); |
|
227 cs_mode = 'o'; |
|
228 srv_send("ack"); |
225 } else { |
229 } else { |
226 if (debug) |
230 if (debug) |
227 fprintf(stdout, "unknown command \"%s\"\n", buf); |
231 fprintf(stdout, "unknown command \"%s\"\n", buf); |
228 srv_send((char *)"ERR"); |
232 srv_send((char *)"ERR"); |
229 } |
233 } |