fixing voltage read problem

pull/18/head
alanbjohnston 6 years ago committed by GitHub
parent 38110e17c7
commit 9420a0b4d7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -117,8 +117,11 @@ struct SensorData read_sensor_data(struct SensorConfig sensor) {
int twos = twosToInt(valuec1, 16); // currently doesn't read negative currents correctly
float valuec3 = (float)(twos);
data.current = valuec3 / (float)sensor.currentDivider;
uint16_t value2 = (uint16_t)wiringPiI2CReadReg16(sensor.fd, INA219_REG_BUSVOLTAGE);
data.voltage = ((double)(value2 >> 3) * 4) / 1000;
// uint16_t value2 = (uint16_t)wiringPiI2CReadReg16(sensor.fd, INA219_REG_BUSVOLTAGE);
// data.voltage = ((double)(value2 >> 3) * 4) / 1000;
valuec1 = wiringPiI2CReadReg16(sensor.fd, INA219_REG_BUSVOLTAGE);
data.voltage = ((double)((uint16_t)valuec1 >> 3) * 4) / 1000;
data.power = (float)((uint16_t)wiringPiI2CReadReg16(sensor.fd, INA219_REG_POWER)) * (float)sensor.powerMultiplier;
return data;

Loading…
Cancel
Save

Powered by TurnKey Linux.