Пусть ваша система запустит его, когда компьютер загрузится.
Если вы используете SysVinit, все, что вам нужно сделать, это поместить скрипт оболочки, который выполнит вашу программу в /etc/rc.d/init.d/.
Утилиты Bluez используют интерфейс ядра MGMT (, а не HCI ), и этот интерфейс прост, реализует некоторую внутреннюю логику и не может обеспечить те же функции, что и HCI (, т.е. :не может выполнять непрерывное пассивное сканирование. ).
Сканирование (обнаружение ), инициированное с использованием интерфейса ядра MGMT, работает только в течение 10 с (, определенных в модуле ядра Bluetooth ). Затем Bluez информируется об окончании сканирования, и Bluez перезапускает сканирование (немедленно, если установлены фильтры обнаружения, или через 5 секунд в противном случае )
.Решения:
hcitool lescan
работает нормально -использовать исходный код в качестве эталона или найти готовые библиотеки)