Sun, 28 Apr 2019 17:03:45 +0200
Added sensor precision initialize. Changed PID logging.
thermferm/devices.c | file | annotate | diff | comparison | revisions | |
thermferm/thermferm.c | file | annotate | diff | comparison | revisions |
--- a/thermferm/devices.c Sun Apr 28 16:27:54 2019 +0200 +++ b/thermferm/devices.c Sun Apr 28 17:03:45 2019 +0200 @@ -734,7 +734,7 @@ #endif /* - * Set the temperature sensors to 12 bits resolution. + * Set the temperature sensors to 12 bits resolution and write it in EEPROM */ for (device = Config.devices; device; device = device->next) { if ((device->type == DEVTYPE_W1) && @@ -747,12 +747,10 @@ addr = xstrcat(addr, device->address); addr = xstrcat(addr, (char *)"/w1_slave"); if ((fp = fopen(addr, "w"))) { - rc = fprintf(fp, "12\n0\n"); + rc = fprintf(fp, "12\n0\n"); // According to the kernel documentation. Seems to work. fclose(fp); - if (rc == 5) { - syslog(LOG_NOTICE, "written 12 bits setting to %s", addr); - } else { - syslog(LOG_NOTICE, "error rc=%d for %s", rc, addr); + if (rc != 5) { + syslog(LOG_NOTICE, "Program 12 bits resolution error rc=%d for %s", rc, addr); } } free(addr);
--- a/thermferm/thermferm.c Sun Apr 28 16:27:54 2019 +0200 +++ b/thermferm/thermferm.c Sun Apr 28 17:03:45 2019 +0200 @@ -1711,11 +1711,8 @@ if ((unit->mode == UNITMODE_BEER) && ((unit->air_temperature / 1000.0) > (unit->PID_heat->Input + 8.0))) { unit->PID_heat->OutP = 0.0; } -// if (debug) -// fprintf(stdout, "Heat: sp=%.2f Input=%.2f iState=%.2f Err=%.2f Out=%.2f\n", -// unit->PID_heat->SetP, unit->PID_heat->Input, unit->PID_heat->iState, unit->PID_heat->Err, unit->PID_heat->OutP); if (seconds == 60) { - syslog(LOG_NOTICE, "Heat: sp=%.2f Input=%.2f iState=%.2f Err=%.2f Out=%.2f", + syslog(LOG_NOTICE, "Heat: sp=%.3f Input=%.3f iState=%.3f Err=%.3f Out=%.1f", unit->PID_heat->SetP, unit->PID_heat->Input, unit->PID_heat->iState, unit->PID_heat->Err, unit->PID_heat->OutP); } } else { @@ -1740,11 +1737,8 @@ } } } -// if (debug) -// fprintf(stdout, "Cool: sp=%.2f Input=%.2f iState=%.2f Err=%.2f Out=%.2f\n", -// unit->PID_cool->SetP, unit->PID_cool->Input, unit->PID_cool->iState, unit->PID_cool->Err, unit->PID_cool->OutP); if (seconds == 60) { - syslog(LOG_NOTICE, "Cool: sp=%.2f Input=%.2f iState=%.2f Err=%.2f Out=%.2f", + syslog(LOG_NOTICE, "Cool: sp=%.3f Input=%.3f iState=%.3f Err=%.3f Out=%.1f", unit->PID_cool->SetP, unit->PID_cool->Input, unit->PID_cool->iState, unit->PID_cool->Err, unit->PID_cool->OutP); } } else {