Open patfrench opened 1 year ago
modbus little endian
Hi,
Your library works perfectly! But I have a device that uses the "little endian byteorder".
How to add :
if lsb_first: formatcode = "<" # Little-endian else: formatcode = ">" # Big-endian
I think I'd have to add a constant for decoding
def read_holding_registers(starting_address: int, quantity: int) -> bytes: """ Create Modbus Protocol Data Unit for reading holding registers. :param starting_address: The starting address :type starting_address: int :param quantity: Quantity of coils :type quantity: int :returns: Packed Modbus message :rtype: bytes """ if not (1 <= quantity <= 125): raise ValueError('Invalid number of holding registers') return struct.pack('>BHH', Const.READ_HOLDING_REGISTERS, starting_address, quantity)
I'd like to do it but I'm not sure of my abilities !
Thank you
juste a question
v1.20
ESP32
v2.3.7
"
Description
modbus little endian
Hi,
Your library works perfectly! But I have a device that uses the "little endian byteorder".
How to add :
I think I'd have to add a constant for decoding
I'd like to do it but I'm not sure of my abilities !
Thank you
Reproduction steps
juste a question
MicroPython version
v1.20
MicroPython board
ESP32
MicroPython Modbus version
Relevant log output
User code
Additional informations
"