diff --git a/src/thermostat.c b/src/thermostat.c --- a/src/thermostat.c +++ b/src/thermostat.c @@ -11,52 +11,52 @@ float thermostat_process(void) { -// #ifdef MAX31865_RTD_SENSOR -// max31865_readtemp(spi_get(), &set, &status); -// #else -// max31855_readtemp(spi_get(), &set, &status); // Read MAX31855 -// #endif + // #ifdef MAX31865_RTD_SENSOR + // max31865_readtemp(spi_get(), &set, &status); + // #else + // max31855_readtemp(spi_get(), &set, &status); // Read MAX31855 + // #endif - float ssr_output = 0.0; - uint8_t thermostat_plant_on = 0; + float ssr_output = 0.0; + uint8_t thermostat_plant_on = 0; - // TODO: Migrate this FxP conversion to the readtemp code or similar - float temp = runtime_status()->temp; + // TODO: Migrate this FxP conversion to the readtemp code or similar + float temp = runtime_status()->temp; - // EMZ FIXME: This could be way simpler - if(flash_getsettings()->val.plant_type == PLANT_HEATER && runtime_status()->setpoint * 10 < temp - flash_getsettings()->val.hysteresis * 10) - thermostat_plant_on = 1; - else if(flash_getsettings()->val.plant_type == PLANT_HEATER && runtime_status()->setpoint * 10 > temp + flash_getsettings()->val.hysteresis * 10) - thermostat_plant_on = 0; + // EMZ FIXME: This could be way simpler + if(flash_getsettings()->val.plant_type == PLANT_HEATER && runtime_status()->setpoint * 10 < temp - flash_getsettings()->val.hysteresis * 10) + thermostat_plant_on = 1; + else if(flash_getsettings()->val.plant_type == PLANT_HEATER && runtime_status()->setpoint * 10 > temp + flash_getsettings()->val.hysteresis * 10) + thermostat_plant_on = 0; - if(flash_getsettings()->val.plant_type == PLANT_COOLER && runtime_status()->setpoint * 10 > temp + flash_getsettings()->val.hysteresis * 10) - thermostat_plant_on = 1; - else if(flash_getsettings()->val.plant_type == PLANT_COOLER && runtime_status()->setpoint * 10 < temp - flash_getsettings()->val.hysteresis * 10) - thermostat_plant_on = 0; + if(flash_getsettings()->val.plant_type == PLANT_COOLER && runtime_status()->setpoint * 10 > temp + flash_getsettings()->val.hysteresis * 10) + thermostat_plant_on = 1; + else if(flash_getsettings()->val.plant_type == PLANT_COOLER && runtime_status()->setpoint * 10 < temp - flash_getsettings()->val.hysteresis * 10) + thermostat_plant_on = 0; - // EMZ: TODO: Refactor to output_enabled or something - if(runtime_status()->pid_enabled && thermostat_plant_on) - { - // EMZ TODO: functionalize this - // put ssr output on display - ssd1306_drawstring(" ", 0, 90); //fixme: this is bad, but I can't get the old digits to clear otherwise - char tempstr[6]; - itoa(ssr_output, tempstr, 10); - ssd1306_drawstring(tempstr, 0, 90); + // EMZ: TODO: Refactor to output_enabled or something + if(runtime_status()->pid_enabled && thermostat_plant_on) + { + // EMZ TODO: functionalize this + // put ssr output on display + ssd1306_drawstring(" ", 0, 90); //fixme: this is bad, but I can't get the old digits to clear otherwise + char tempstr[6]; + itoa(ssr_output, tempstr, 10); + ssd1306_drawstring(tempstr, 0, 90); -// HAL_GPIO_WritePin(SSR_PIN, 1); - HAL_GPIO_WritePin(LED, 1); - } - else - { -// HAL_GPIO_WritePin(SSR_PIN, 0); - HAL_GPIO_WritePin(LED, 0); - } + // HAL_GPIO_WritePin(SSR_PIN, 1); + HAL_GPIO_WritePin(LED, 1); + } + else + { + // HAL_GPIO_WritePin(SSR_PIN, 0); + HAL_GPIO_WritePin(LED, 0); + } - return ssr_output; + return ssr_output; }