Appdeamon List or not to List

I am using a Modbus TCP application to control my charge point. In order to do that I have to write a float32 to 2 consecutive registers. I can do that with an automation but I have to do a lot of calculations so I prefer Appdeamon and a Python script.
The scripts calculate a value and the code below converts the value in the requested float32. In order to write to the 2 registers (1210 and 1211) I have to offer a list of the two registervalues.
The list is hex_string_12 = [0x4150,0x0000], I checked that with the self.notify command

If I put “value = [0x4150,0x0000]” in the write_register service it works fine.
If I put “value = hex_string_12” nothing happens. no errors in the Appdeamon log and no reaction from the chargepoint, no entries in the Chargepoint log

        packed_float = struct.pack('>f', abs(value))
        unpacked_float = struct.unpack('>f', packed_float)[0]
        hex_string_1 = '0x%04x' % struct.unpack('>H', packed_float[:2])[0]
        hex_string_2 = '0x%04x' % struct.unpack('>H', packed_float[2:])[0]
        hex_string_12 = [hex_string_1, hex_string_2]
        self.notify(f" list: {hex_string_12}")
        # self.call_service("modbus/write_register", address = "1210", slave = "1", hub = "Eve", value = [0x4150,0x0000])
        self.call_service("modbus/write_register", address = "1210", slave = "1", hub = "Eve", value = hex_string_12)```

where am I going wrong?