void checkBatteryCharging(float voltage, int relay_id) { char buffer[BUFSIZE]; int relay_status = getRelayState(relay_id); Serial.print("checkBatteryCharging: "); ftoa(buffer, voltage, 2); Serial.print(buffer); Serial.print(" "); Serial.print(relay_status); Serial.print(" "); if (voltage <= BAT_ALARM_LOW) { die(); } else if (voltage >= BAT_ALARM_HIGH) { die(); } else if (relay_status == HIGH && voltage >= BAT_HIGH) { Serial.println("Relay off"); relayOff(relay_id); } else if (relay_status == LOW) { if (voltage < BAT_HIGH) { Serial.println("Relay on"); relayOn(relay_id); } else { Serial.println("no charging needed"); } } else { Serial.println("Nothing"); } }
void Reflowster::relayToggle() { if (digitalRead(pinConfiguration_relay)) { relayOff(); } else { relayOn(); } }
void chaser(void) { for (int i=0; i < 1; i++) { if (getRelayState(i) == HIGH) { relayOff(i); } else { relayOn(i); } } }
void die() { for (int i=0; i < countRelays; i++) relayOff(i); lcd.setCursor(0, 0); lcd.print("Casse..."); digitalWrite(ALARM_PIN, HIGH); wdt_disable(); exit(1); }