diff -r 6eafc4c2bf3d -r c6bbd1380f22 main/co2meter.c --- a/main/co2meter.c Wed Oct 09 22:51:37 2019 +0200 +++ b/main/co2meter.c Fri Oct 11 13:12:34 2019 +0200 @@ -279,14 +279,21 @@ /* Copy measured data and calculate results */ if (xSemaphoreTake(xSemaphoreUnits, 25) == pdTRUE) { for (int i = 0; i < 3; i++) { + if (i == 0) + units[i].mode = 1; units[i].temperature = temp; units[i].temperature_state = state; + units[i].alarm = 0; + if (state) + units[i].alarm |= ALARM_SYS_TEMPERATURE & ALARM_UNIT_TEMPERATURE; strncpy(units[i].temperature_rom_code, rom_code, 17); if (xSemaphoreTake(xSemaphoreADC, 10) == pdTRUE) { units[i].pressure_state = adc_state->Pressure[i].error; units[i].pressure_channel = adc_state->Pressure[i].channel; units[i].pressure_voltage = adc_state->Pressure[i].voltage; units[i].pressure_zero = 110; + if (units[i].pressure_state || units[i].pressure_voltage < 80) + units[i].alarm |= ALARM_UNIT_PRESSURE; int P = (units[i].pressure_voltage / (adc_state->Batt_voltage / 1000) - units[i].pressure_zero) * 14; // in bar if (P < 0) P = 0;