Bluetooth A2DP и ​​RFCOMM

Я пытаюсь сделать свой собственный динамик Bluetooth с некоторыми дополнениями. Мой Android-телефон Sony будет служить источником, а раковина - малиновый пи с USB-ключом Bluetooth.

У меня уже есть мой ключ Bluetooth с профилем A2DP, и выполняется скрипт обратной связи, чтобы связать входящее аудио с подключенной звуковой картой.

Далее я хочу добавить некоторые функции для чтения / записи переменных и отправки команд на Rasberry Pi через то же соединение Bluetooth с профилем RFCOMM.

когда я открываю и RFCOMM-соединение с "sdptool add sp", за которым следует "sudo rfcomm listen hci0" и пытаюсь соединиться с моим телефоном с помощью Android-эмулятора Bluetooth, эмулятор сообщает, что соединение открыто. После этого эмулятор сразу сообщает, что соединение закрыто. Raspberry Pi даже не замечает, что соединение открыто или закрыто.

Я уже читал эту статью, в которой отмечается, что моя цель возможна, единственный вопрос для меня - как.

Итак, мой вопрос:

Могу ли я использовать уже спаренное соединение Bluetooth как для профиля A2DP, так и для профиля RFCOMM, и как мне установить свои настройки с помощью HCI.

Если у кого-то есть альтернативы для отправки команд через сокет, например, соединение с моим Raspberry Pi, я, безусловно, хотел бы попробовать их.

----РЕДАКТИРОВАТЬ----

Так что в прошлые выходные я дал ему еще одну попытку решить мою проблему с Bluetooth. Сначала я попытался установить соединение RFCOMM из командной строки, и оно заработало, как и ожидалось.

Затем я отключился, установите профиль Bluetooth на 0x20041C (переносной звук) и снова установите соединение RRCOMM. Я не совсем понял, что пошло не так в прошлый раз, когда я пытался, но на этот раз это сработало. Я даже смог связать свой телефон Android в качестве источника звука с моей звуковой картой USB с PulseAdio.

Итак, вопрос решен, наверное.

1 ответ

Да, связь по Bluetooth основана на профилях, вы можете использовать много профилей одновременно, я сделал это с IPhone и PandaBoard, Профили: A2DP (источник iPhone, Sanda Sink), PBA (сервер iPhone, клиент Panda), HFP и MAP, Предлагаю попробовать с blueZ, на официальном сайте есть хороший документированный стек.

Удачи!

Другие вопросы по тегам