set missing ina219 to zero, BUS same as BAT

pico-i2c
alanbjohnston 3 years ago committed by GitHub
parent aff5693a78
commit ba257eb1b9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -2215,20 +2215,23 @@ void read_ina219()
float loadvoltage = 0;
if (i2c_1) {
shuntvoltage = ina219_1_0x40.getShuntVoltage_mV();
busvoltage = ina219_1_0x40.getBusVoltage_V();
current_mA = ina219_1_0x40.getCurrent_mA();
loadvoltage = busvoltage + (shuntvoltage / 1000);
if ((debug_mode) || (voltage_read)) {
Serial.print("+X (1 0x40) Voltage: ");
Serial.print(loadvoltage);
Serial.print("V Current: ");
Serial.print(current_mA);
Serial.println(" mA");
}
voltage[0] = loadvoltage;
current[0] = current_mA;
shuntvoltage = ina219_1_0x40.getShuntVoltage_mV();
busvoltage = ina219_1_0x40.getBusVoltage_V();
current_mA = ina219_1_0x40.getCurrent_mA();
loadvoltage = busvoltage + (shuntvoltage / 1000);
if ((debug_mode) || (voltage_read)) {
Serial.print("+X (1 0x40) Voltage: ");
Serial.print(loadvoltage);
Serial.print("V Current: ");
Serial.print(current_mA);
Serial.println(" mA");
}
voltage[PLUS_X] = loadvoltage;
current[PLUS_X] = current_mA;
} else {
voltage[PLUS_X] = 0.0;
current[PLUS_X] = 0.0;
}
if (i2c2) {
@ -2244,8 +2247,11 @@ void read_ina219()
Serial.print(current_mA);
Serial.println(" mA");
}
voltage[1] = loadvoltage;
current[1] = current_mA;
voltage[PLUS_Y] = loadvoltage;
current[PLUS_Y] = current_mA;
} else {
voltage[PLUS_Y] = 0.0;
current[PLUS_Y] = 0.0;
}
if (i2c3) {
@ -2261,8 +2267,8 @@ void read_ina219()
Serial.print(current_mA);
Serial.println(" mA");
}
voltage[2] = loadvoltage;
current[2] = current_mA;
voltage[BATT] = loadvoltage;
current[BATT] = current_mA;
/*
shuntvoltage = ina219_1_0x45.getShuntVoltage_mV();
busvoltage = ina219_1_0x45.getBusVoltage_V();
@ -2276,10 +2282,14 @@ void read_ina219()
Serial.print(current_mA);
Serial.println(" mA");
}
voltage[3] = loadvoltage;
current[3] = current_mA;
*/
*/
voltage[BUS] = loadvoltage; // since battery directly supplies, make BUS same as BAT for FoxTelem
current[BUS] = current_mA;
} else {
voltage[BATT] = 0.0;
current[BATT] = 0.0;
}
if (i2c5) {
@ -2295,8 +2305,11 @@ void read_ina219()
Serial.print(current_mA);
Serial.println(" mA");
}
voltage[4] = loadvoltage;
current[4] = current_mA;
voltage[PLUS_Z] = loadvoltage;
current[PLUS_Z] = current_mA;
} else {
voltage[PLUS_Z] = 0.0;
current[PLUS_Z] = 0.0;
}
if (i2c6) {
@ -2312,8 +2325,11 @@ void read_ina219()
Serial.print(current_mA);
Serial.println(" mA");
}
voltage[5] = loadvoltage;
current[5] = current_mA;
voltage[MINUS_X] = loadvoltage;
current[MINUS_X] = current_mA;
} else {
voltage[MINUS_X] = 0.0;
current[MINUS_X] = 0.0;
}
if (i2c7) {
@ -2329,8 +2345,11 @@ void read_ina219()
Serial.print(current_mA);
Serial.println(" mA");
}
voltage[6] = loadvoltage;
current[6] = current_mA;
voltage[MINUS_Y] = loadvoltage;
current[MINUS_Y] = current_mA;
} else {
voltage[MINUS_Y] = 0.0;
current[MINUS_Y] = 0.0;
}
if (i2c8) {
@ -2346,9 +2365,12 @@ void read_ina219()
Serial.print(current_mA);
Serial.println(" mA");
}
voltage[7] = loadvoltage;
current[7] = current_mA;
}
voltage[MINUS_Z] = loadvoltage;
current[MINUS_Z] = current_mA;
} else {
voltage[MINUS_Z] = 0.0;
current[MINUS_Z] = 0.0;
}
voltage_read = false;
}
@ -2998,7 +3020,7 @@ void start_ina219() {
// Serial.println(digitalRead(PI_3V3_PIN));
if (digitalRead(PI_3V3_PIN) == LOW) {
// if (true) {
Serial.println("Pi Zero not present, powering INA219s through 3.3V pin");
Serial.println("Pico powering INA219s through 3.3V pin");
pinMode(PI_3V3_PIN, OUTPUT);
digitalWrite(PI_3V3_PIN, HIGH);
} else {

Loading…
Cancel
Save

Powered by TurnKey Linux.