 
 struct AVERAGE {
     float  temperature;
+    int    temperatureCount;
     float  humidity;
+    int    humidityCount;
     float  pressure;
+    int    pressureCount;
     float  gas;
+    int    gasCount;
 } average;
-
-int averageCount;
 
 // Utilities
 void resetLCD();

void pushVariPass() {
    if (WiFi.status() == WL_CONNECTED) {
        int result;
        varipassWriteFloat(KEY1, ID_TEMPERATURE, average.temperature / averageCount, &result);
        varipassWriteFloat(KEY1, ID_HUMIDITY,    average.humidity    / averageCount, &result);
        varipassWriteFloat(KEY1, ID_PRESSURE,    average.pressure    / averageCount, &result);
        if (settings.gasSensor)
            varipassWriteFloat(KEY1, ID_GAS,     average.gas         / averageCount, &result);
        varipassWriteInt  (KEY1, ID_CPM,  data.cpm,  &result);
        varipassWriteFloat(KEY1, ID_DOSE, data.dose, &result);
    }

    average.pressure    = 0;
    average.gas         = 0;
    
    average.temperatureCount = 0;
    average.humidityCount    = 0;
    average.pressureCount    = 0;
    average.gasCount         = 0;
}

void geigerClick() {
