For example; I'm measuring my body temperature. The value I read is (tP [2] + tP [3] * 256) = 182 or 181. Because MSB bytes always come at 0. But sensor body temperature is OK, not wrong.
bus.write_byte(DEVICE_ADDRESS, 0x02)
bus.write_byte(DEVICE_ADDRESS, 0x00)
bus.write_byte(DEVICE_ADDRESS, 0x01)
bus.write_byte(DEVICE_ADDRESS, 0xEE)
bus.write_byte(DEVICE_ADDRESS, 0x05)
bus.write_byte(DEVICE_ADDRESS, 0x90)
bus.write_byte(DEVICE_ADDRESS, 0x3A)
bus.write_byte(DEVICE_ADDRESS, 0xB8)
bus.write_byte(DEVICE_ADDRESS, 0x03)
bus.write_byte(DEVICE_ADDRESS, 0x00)
bus.write_byte(DEVICE_ADDRESS, 0x03)
bus.write_byte(DEVICE_ADDRESS, 0x8B)
bus.write_byte(DEVICE_ADDRESS, 0x03)
bus.write_byte(DEVICE_ADDRESS, 0x00)
bus.write_byte(DEVICE_ADDRESS, 0x07)
bus.write_byte(DEVICE_ADDRESS, 0x97)
bus.write_byte(DEVICE_ADDRESS, 0x02)
bus.write_byte(DEVICE_ADDRESS, 0x00)
bus.write_byte(DEVICE_ADDRESS, 0x00)
bus.write_byte(DEVICE_ADDRESS, 0xE9)
a = bus.read_i2c_block_data(DEVICE_ADDRESS, 0x05, 2)
b = bus.read_i2c_block_data(DEVICE_ADDRESS, 0x03, 2)
readbuff = bus.read_i2c_block_data(DEVICE_ADDRESS, 0x4C, 19)
bus.close()
tPTAT = 256 * readbuff[1] + readbuff[0]
tP[0] = ((readbuff[3] * 256) + readbuff[2])
.
.
tP[7] = ((readbuff[17] * 256) + readbuff[16])
tPEC = readbuff[18]