im pulling data from a modbusTCP server, but when i should receive a negative value it shows as a big number.
self.export = self.c.read_holding_registers(37113, 2)[1]
I know it has something to do with it being signed or unsigned but im really having trouble solving it.
print("export: " + "{:02f}W".format(self.inverter.export))
print("exportBytes: " + "{:16b}W".format(self.inverter.export))
print("export: " + "{:02f}W".format(self.inverter.export))
print("export 1: " + "{:16b}W".format(1))
print("export-1: " + "{:16b}W".format(-1))
Prints out
export: 59142.000000kW
exportBytes: 1110011100000110kW
export: 59142.000000kW
export 1: 1kW
export-1: -1kW
Any guesses?