Проблема возникает из этого, я должен отправить данные через последовательный порт Bluetooth с крошечного робота на мой ноутбук в baudrate 115200, робот отправляет 32-байтовому пакету каждые 10 мс (100 раз в секунду). Передача работает только несколько секунд, и затем cat
шоу ничто. Когда я уменьшаю частоту к 10 разам в секунду, она работает гладко. Я предполагаю что последовательный порт Bluetooth rx переполнение буфера.
Состояние Getting последовательных портов (ttyS*
) через терминал просто:
sudo cat /proc/tty/driver/serial
Затем это показывает serinfo
со списком всего uarts и информации о состоянии и буферах. Когда я звоню
sudo cat /proc/tty/drivers
Я вижу это rfcomm
драйверы доступны:
rfcomm /dev/rfcomm 216 0-255 serial
И, конечно, считывая данные, прибывающие из парного bluetooth-устройства (например, через cat
или канал), не проблема.
Вопрос: как получить состояние rfcomm последовательных портов (например, устройства SPP Blueotooth), особенно объем данных в буферах rx/tx? Эта информация, доступная где-нибудь в /proc
каталог как для ttyS*
или я мог использовать полностью другой путь?