Настройка Bluetooth на Raspberry Pi 3

0
7037
Настройка Bluetooth на Raspberry Pi
Настройка Bluetooth на Raspberry Pi

Уже появилась поддержка Wi-Fi и чипа Bluetooth и можем использовать их с Raspbian. Поддержка работы с Windows 10 IoT Core будет доступна в скором времени через Insider Program, прежде чем выйдет полный релиз.

Как всегда, убедитесь, что ваш дистрибутив Raspbian актуальный во времени. В этом руководстве будем использовать ОС Raspbian Jessie, которая, как и ранее, для 32-разрядного ядра ARMv7. Подключите Raspberry Pi (RPi) к Интернету через Wi-Fi или Ethernet и выполните следующие команды:

sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get dist-upgrade -y
sudo rpi-update

Установка программного обеспечения

После того как все обновится, вам нужно создать пару своих устройств Bluetooth. Можете сделать это в Raspbian GUI, просто нажав на значок Bluetooth в правом верхнем углу, а затем добавить устройства так же, как в любом другом настольном компьютере. Здесь все говорит само за себя. Хотя, добавление устройств из командной строки не столь очевидное.

У вас есть несколько вариантов: можете установить следующий пакет:

sudo apt-get install pi-bluetooth

Должно установиться то, что нужно для использовать части Bluetooth чипа. Можете установить следующие пакеты, вместо pi-bluetooth:

sudo apt-get install bluez bluez-firmware

Микросхема требует прошивку, чтобы работать вместе с драйвером. Bluez также устанавливает набор инструментов. Они будут работать с консольного терминала. Если хотите управлять устройствами Bluetooth X-среды, или, другими словами, из своего оконного менеджера (рабочего стола), то можете установить следующий пакет:

sudo apt-get install blueman

После установки программного обеспечения и драйверов, перезагрузите RPi. В противном случае, если не нашли устройство, скачать драйвер для адаптера.

Терминал/Консоль

Bluez поставляется с инструментом под названием bluetoothctl, который можно запустить из консоли терминала. Набрав man bluetoothctl, вы получите не много деталей, поэтому должны ввести help изнутри программного обеспечения:

pi@raspberrypi:~ $ bluetoothctl
[bluetooth]# help

Доступные команды:

list Получить список доступных котролерів
show [ctrl] Информацию о контроллер
select <ctrl> Выбрать контроллер по умолчанию
devices Получить список доступных устройств
paired-devices Список подключенных устройств
power <on/off> Включить/отключить питание контроллера
pairable <on/off> Включить/отключить режим подключения (сопряжения)
discoverable <on/off> Включить/отключить режим видимости контроллера
agent <on/off/capability> Разрешить/запретить агента с заданным параметром
default-agent Установить агента по умолчанию
scan <on/off> Включить/отключить сканирование для устройства
info <dev> Информация об устройстве
pair <dev> Соединиться (совокупиться) с устройством
trust <dev> Доверенный устройство
untrust <dev> Ненадежным устройство
block <dev> Блокировать устройство
unblock <dev> Разблокировать устройство
remove <dev> Удалить устройство
connect <dev> Подключить устройство
disconnect <dev> Отключить устройство
version Показать версию
quit Выход из программы

В командной строке введите bluetoothctl, чтобы запустить инструмент Bluetooth. Теперь имеете кучу команд, которые можно запустить, но подключения к устройству достаточно простое:

1. С помощью инструмента bluetoothctl введите power on, чтобы убедиться, что Bluetooth включен.
2. Введите agent on, чтобы убедиться, что Bluetooth работает.
3. Введите scan on, чтобы начать поиск ближайших устройств Bluetooth.
4. Вы должны увидеть все ваши различные устройства BluetoothЖ: всплывает их MAC-адрес (число, отображается на экране рядом с именем устройства, как правило, что-то вроде «50: 54: B4: 45: 00: EB»). Запишите МАС-адрес устройства, с которым нужно создать пару Raspberry Pi.
5. Введите connect с последующей МАС-адресу, например, connect 50:54:B4:45:00:EB

В принципе, мы общаемся с устройствами напрямую на аппаратном уровне. Обычно, на вашем типичном WiFi или сети Ethernet это делается прозрачно и мы работаем только с IP-адресами. Однако, с Bluetooth сегодня такого нет.

Теперь устройства должны быть в паре. Вперед дальше, чтобы пройти через этот процесс для каждого из устройств Bluetooth, которые хотите настроить.

Графический интерфейс пользователя (GUI)

Некоторые считают пакет blueman и программное обеспечение нестабильными, хотя источники, которые указывают на это, устаревшие и сейчас стабильность может быть немного лучше.

BT_RPi_3_2

Когда у вас установлен пакет blueman, то должны иметь красивый значок Bluetooth в системном трее. Если щелкнуть левой кнопкой подключенной к Raspberry Pi мыши, то должны получить меню со всеми, надеемся, параметрами, чтобы играть с ними:

BT_RPi_3_3

Если хотим начать сканирование устройств, аналогично использованию команды scan для bluetoothctl, то выбираем в меню Devices:

BT_RPi_3_4

И отсюда можем увидеть, что есть в непосредственной близости: можете удивиться, неожиданно обнаружив смарт-телевизор или телефон своих соседей, так узнаете, насколько на самом деле тонкие стены квартиры. Этот процесс может быть еще более захватывающим на рабочем месте в офисе.

Однако, давайте выберем пункт setup a new device (установка нового устройства):

BT_RPi_3_5

BT_RPi_3_6

BT_RPi_3_7

Однако, автор обнаружил, что на практике метод пароля устарел или игнорируется, он может быть применен для старых программных продуктов или устройств Bluetooth, но сегодня появится приглашение (а потом спрячется) на Raspbian, рядом со значком blueman, и будет сообщение, в котором будет отображаться что-то типа:

This device wants to pair with this machine, with this code xxxxxxxx, do you want to permit or deny?
(Это устройство хочет создать пару с данной машиной, с кодом XXXXXXXX, вы хотите разрешить или запретить?)

Скорее всего, это происходит с новыми устройствами, такими как смартфоны и телевизоры, как мера безопасности для устройств, которые вы должны физически или просматриваете в вопросе. Конечно, тогда выбираете permit (разрешить) на любом устройстве или Raspbian и они вдвоем будут работать в паре. Затем продолжаете, чтобы настроить драйверы для функциональности своего устройства Bluetooth для использования его в качестве модема, при подключении телефона, чтобы делиться доступом в Интернет или просто обмениваться файлами. Потенциально, даже можете использовать его как звуковое устройство!

Присоединение к устройств, таких как гарнитура, обычно, легче, и, как правило, не использует код для соединения. Стандарт, как правило, четыре нуля (0000) для большинства бытовых устройств.

А вы настроили Bluetooth на своем Raspberry Pi 3?