Я запустил этот код Perl в Linux:
my $command = "\x{11}\x{22}\x{33}\x{44}\x{55}\x{66}\x{77}\x{88}\x{00}\x{00}\x{00}\x{00}\x{00}\x{00}\x{00}\x{00}\x{00}\x{00}\x{00}\x{00}"; # total of 20 bytes to transmit
my $bytesWritten = $device->bulk_write(0x01, $command, 1000);
Используя Wireshark, я обнаружил, что фактические данные приложения были переданы как
0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0010 00 00 00 00 00 00 00 00 11 22 33 44
Печать $ bytesWritten
показывает, что Было передано 20 байтов, но это отличается от того, что было захвачено Wireshark.
В чем может быть проблема?