BlueZ version (bluetoothctl -v) in case of Linux: 5.54
Description
There is inconsistent handling of the data byte array between Linux and Windows. The same code snippet runs on Windows just fine but on linux it doesn't work.
What I Did
1) Setup client connection
2) Request services
3) Write to any valid gatt characteristic
await client.write_gatt_char(characteristic,bytearray("Hello World","utf-8"),response=True)await client.write_gatt_char(characteristic,b"Hello World",response=True)
On windows both snippets work fine, but in the linux backend the second one raises an exception.
Expected behavior: either it can on both systems throw an exception or implicitly convert the bytes to a bytearray on both os.
bluetoothctl -v
) in case of Linux: 5.54Description
There is inconsistent handling of the data byte array between Linux and Windows. The same code snippet runs on Windows just fine but on linux it doesn't work.
What I Did
1) Setup client connection 2) Request services 3) Write to any valid gatt characteristic
await client.write_gatt_char(characteristic,bytearray("Hello World","utf-8"),response=True)
await client.write_gatt_char(characteristic,b"Hello World",response=True)
On windows both snippets work fine, but in the linux backend the second one raises an exception.
Expected behavior: either it can on both systems throw an exception or implicitly convert the bytes to a bytearray on both os.
(the data received in the log does not correspond to the Hello World string, that's just from debugging)