Программирование модуля IMX8: не работает bluetooth
У меня есть модуль IMX8 в паре с оценочной платой Apalis. Операционная система основана на Linux, разработана с помощью Yocto Project. Я разрабатываю программное приложение для добавления в ОС в качестве рецепта.
У меня проблемы с проверкой работы Bluetooth. Я хочу получать рекламные сообщения от некоторых датчиков BLE. Я написал скрипт на Python, который собирает MAC-адреса всех устройств Bluetooth. Он работает на главном ПК, но целевой (модуль IMX8) не находит никаких устройств. На мишени у меня и bluePy, и Bluez. Тестирую плату с последовательным интерфейсом, с помощью «пикоком».
Чтобы заставить работать bluetooth, я запускаю в терминале следующую команду:
rfkill unblock all
Изначально я использовал следующие команды для поиска устройств bluetooth в терминале:
sudo systemctl status bluetooth
и bluetooth цели включен со следующим результатом:
* bluetooth.service - Bluetooth service
Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2020-09-20 10:44:04 UTC; 25min ago
Docs: man:bluetoothd(8)
Main PID: 904 (bluetoothd)
Status: "Running"
Tasks: 1 (limit: 1544)
Memory: 1.9M
CGroup: /system.slice/bluetooth.service
`-904 /usr/libexec/bluetooth/bluetoothd
Затем я сканирую устройства с помощью:
bluetoothctl scan on
но модуль не находит устройств.
Затем я попытался использовать Bluepy со следующим скриптом Python, который работает на хосте:
from bluepy.btle import Scanner, DefaultDelegate
import sys
# @class ScanDelegate
# @brief scan delegate to catch and interpret bluetooth advertising events
class ScanDelegate(DefaultDelegate):
def __init__(self):
DefaultDelegate.__init__(self)
def handleDiscovery(self, dev, isNewDev, isNewData):
pass
## associate the delegate to the scanner and start it for 10.0 seconds
scanner = Scanner().withDelegate(ScanDelegate())
devices = scanner.scan(5.0)
print(devices)
Но полученный словарь "устройств" пуст.
Кто-нибудь может мне помочь? Надеюсь, я был ясен.
Заранее спасибо.