204 temp = (ds18b20_state->sensor[0].temperature * 1000); |
204 temp = (ds18b20_state->sensor[0].temperature * 1000); |
205 state = (ds18b20_state->sensor[0].error == 0) ? 0:1; |
205 state = (ds18b20_state->sensor[0].error == 0) ? 0:1; |
206 strncpy(rom_code, ds18b20_state->sensor[0].rom_code, 17); |
206 strncpy(rom_code, ds18b20_state->sensor[0].rom_code, 17); |
207 rom_code[16] = '\0'; |
207 rom_code[16] = '\0'; |
208 xSemaphoreGive(xSemaphoreDS18B20); |
208 xSemaphoreGive(xSemaphoreDS18B20); |
209 } |
209 } else { |
|
210 ESP_LOGE(TAG, "ML1_MQTT_CONNECT DS18B20 lock error"); |
|
211 } |
210 |
212 |
211 /* Copy measured data and calculate results */ |
213 /* Copy measured data and calculate results */ |
212 if (xSemaphoreTake(xSemaphoreUnits, 25) == pdTRUE) { |
214 if (xSemaphoreTake(xSemaphoreUnits, 25) == pdTRUE) { |
213 for (int i = 0; i < 3; i++) { |
215 for (int i = 0; i < 3; i++) { |
214 units[i].temperature = temp; |
216 units[i].temperature = temp; |
231 units[i].pressure_voltage / (adc_state->Batt_voltage / 1000) - units[i].pressure_zero, P); |
233 units[i].pressure_voltage / (adc_state->Batt_voltage / 1000) - units[i].pressure_zero, P); |
232 // Moet die echt op 5 volt? |
234 // Moet die echt op 5 volt? |
233 // Verbruik 10 mA |
235 // Verbruik 10 mA |
234 // Setup tijd max 2 mS |
236 // Setup tijd max 2 mS |
235 xSemaphoreGive(xSemaphoreADC); |
237 xSemaphoreGive(xSemaphoreADC); |
236 } |
238 } else { |
|
239 ESP_LOGE(TAG, "ML1_MQTT_CONNECT ADC lock error"); |
|
240 } |
237 } |
241 } |
238 write_units(); |
242 write_units(); |
239 xSemaphoreGive(xSemaphoreUnits); |
243 xSemaphoreGive(xSemaphoreUnits); |
240 user_refresh(); |
244 user_refresh(); |
|
245 } else { |
|
246 ESP_LOGE(TAG, "ML1_MQTT_CONNECT units lock error"); |
241 } |
247 } |
242 } |
248 } |
243 break; |
249 break; |
244 |
250 |
245 case ML1_WAITCON: |
251 case ML1_WAITCON: |