Thu, 29 Jul 2021 19:57:41 +0200
Fixed KWh measurement for Hendi equipment.
main/task_driver.c | file | annotate | diff | comparison | revisions | |
sdkconfig | file | annotate | diff | comparison | revisions |
--- a/main/task_driver.c Wed Jul 28 22:04:54 2021 +0200 +++ b/main/task_driver.c Thu Jul 29 19:57:41 2021 +0200 @@ -73,12 +73,12 @@ void MLT(int onoff) { if (onoff && outEnable) { - if (MLT_pin != 1) + if (MLT_pin != 1 && ! equipment.Hendi) MLT_time = xTaskGetTickCount(); gpio_set_level(SSR_MLT, 1); MLT_pin = 1; } else { - if (MLT_pin) + if (MLT_pin && ! equipment.Hendi) runtime.MLT_usage += xTaskGetTickCount() - MLT_time; gpio_set_level(SSR_MLT, 0); MLT_pin = 0; @@ -123,6 +123,7 @@ if (outEnable) { if (percent < 0) { val = 0; + MLT_time = xTaskGetTickCount(); } else if (percent > 100) { val = 1024; } else { @@ -130,6 +131,7 @@ } } else { val = 0; + MLT_time = xTaskGetTickCount(); } /* @@ -142,6 +144,10 @@ log_msg(TAG, "MLT_PWM(%d) val=%d %.0f watt", percent, val, (percent / 100.0) * equipment.MLT_watt); ledc_set_duty(LEDC_HIGH_SPEED_MODE, LEDC_CHANNEL_0,/* 1024 - */val); ledc_update_duty(LEDC_HIGH_SPEED_MODE, LEDC_CHANNEL_0); + if (val >= 10) { + runtime.MLT_usage += (xTaskGetTickCount() - MLT_time) * (percent / 100.0); + } + MLT_time = xTaskGetTickCount(); } oldval = val; }
--- a/sdkconfig Wed Jul 28 22:04:54 2021 +0200 +++ b/sdkconfig Thu Jul 29 19:57:41 2021 +0200 @@ -121,10 +121,8 @@ # # BrewBoard Configuration # -CONFIG_TEMP_SENSORS_ONEWIRE=y -# CONFIG_TEMP_SENSORS_SIMULATOR is not set -CONFIG_ONE_WIRE_MLT=27 -CONFIG_ONE_WIRE_HLT=26 +# CONFIG_TEMP_SENSORS_ONEWIRE is not set +CONFIG_TEMP_SENSORS_SIMULATOR=y CONFIG_SSR_MLT_GPIO=32 CONFIG_PWM_MLT_GPIO=0 CONFIG_SSR_HLT_GPIO=33