Соединение Raspberry Pi Bluetooth 4.0

Я пытаюсь подключиться к Raspberry Pi через iPhone с помощью CoreBluetooth (Bluetooth 4.0). Я обнаружил устройство и отправил запрос на подключение, используя этот код:

if (peripheral != self.foundPeripheral) {
    NSLog(@"Try to connect to %@", peripheral.name);
    self.foundPeripheral = peripheral;
    [self.centralManager stopScan];
    [self.centralManager connectPeripheral:peripheral options:nil];

}

Ни didConnectPeripheral, ни didFailedToConnectPeripheral не вызываются. Я также позаботился о том, чтобы настроить RPi для рекламы Bluetooth с низким энергопотреблением, используя

sudo hciconfig hci0 leadv

но когда я проверяю активные соединения с

hcitool con

активных подключений нет. Я пропустил некоторые настройки для RPi? Также переменная имени на периферийном устройстве пуста, это потому, что я еще не подключился?


person Jacobcr    schedule 17.04.2013    source источник
comment
У вас есть своего рода сервер GATT, работающий для ответа на запросы? Я думаю, что hciconfig может просто щелкнуть выключателем, чтобы включить рекламу, но на самом деле ничего не отвечает на запросы о подключении.   -  person Tim Tisdall    schedule 18.04.2013
comment
В данный момент у меня нет работающего сервера GATT, но логично, что что-то должно быть запущено для обработки всего. Я посмотрю на это и прокомментирую снова позже. Спасибо!   -  person Jacobcr    schedule 19.04.2013
comment
Я думал, что существует тестовый сервер GATT, являющийся частью исходного кода Bluez, но я не смог его найти. Существует файл с именем attrib_server.c, который, кажется, способствует такой роли.   -  person Tim Tisdall    schedule 19.04.2013
comment
Альтернативой стеку BlueZ является использование ключа BLED112 от BlueGiga. Он поддерживает прошивку, имеет достаточно простой API и набор средств разработки для выполнения основных задач. Вы должны закодировать сервер GATT внутри ключа BLED112, используя простой скрипт и XML-файлы, и обмениваться данными с Linux через конечную точку USB.   -  person barbazoo    schedule 17.10.2013


Ответы (1)


Попробуйте bleno, это библиотека node.js, которую можно использовать для создания периферийного устройства BLE как в OS X, и линукс. Он хорошо работает на моем Raspberry Pi с Raspbian.

person sandeepmistry    schedule 15.11.2013