Перейти к содержанию

Примеры Bluetooth SDK

Примеры Bluetooth в SiFli-SDK помогают начать работу с конкретным профилем, ролью или радиосценарием, но не являются готовой прошивкой продукта. Начните с проекта, который позволяет проверить самое сложное техническое требование изделия. Запустите его без изменений на целевой плате, а затем добавляйте требования к изделию по одному.

На этой странице примеры классического Bluetooth, BLE и широковещательной передачи LE Audio из документации SF32LB58x сгруппированы по инженерным задачам. Путь sf32lb58x указывает раздел документации, а не гарантирует совместимость каждого примера со всеми платами SF32LB58x или другими семействами SF32. URL latest обновляется. Для используемого выпуска или коммита SDK откройте раздел Supported Platforms на странице нужного проекта и используйте только указанные там имена плат и инструкции по сборке. Если поддержка конкретной платы и ревизии SDK явно не подтверждена, отметьте совместимость как непроверенную; не делайте вывод по URL, другому примеру или похожему названию платы. Даже если указано «all platforms», до адаптации примера проверьте его сборку с фактической ревизией SDK и конфигурацией платы. Страница проекта также содержит сведения о настройках menuconfig, испытательном оборудовании и ограничениях.

Выбор подходящего сценария Bluetooth

Таблица: выбор примера Bluetooth SDK
Требование изделия Начните с Что проверить до интеграции в изделие
Собственный сервис BLE или связь с приложением-компаньоном Периферийное устройство BLE Передачу рекламных пакетов BLE, подключение, интерфейс и поведение сервиса, повторное подключение и проверку со стороны телефона
Устройство должно работать как периферийное по отношению к телефону и как центральное по отношению к датчику Центральное и периферийное устройства BLE Одновременная работа в ролях GAP и распределение функций клиента/сервера GATT
Надёжная передача данных по BLE Пропускная способность BLE или Передача файлов по BLE Необходимый поток данных, параметры подключения и поведение при восстановлении после сбоя
Обновление прошивки по Bluetooth Периферийное устройство с OTA или Центральное и периферийное устройства с Pingpong OTA Роли при обновлении, восстановление после прерывания обновления, разделы памяти и план отката
Последовательная связь или доступ к сети через телефон по классическому Bluetooth SPP или PAN Соответствие последовательного профиля или сетевого доступа через телефон требованиям изделия, совместимость с ответным устройством и повторное подключение
Транспорт HCI по UART между хостом и контроллером BT/BLE HCI через UART (BT/BLE) Границу между хостом и контроллером, транспорт UART и конфигурацию целевого контроллера и платы
Аудио или вызовы по классическому Bluetooth Приёмник музыки, Передатчик музыки или HFP Аудиотракт, тактирование, буферизация, совместимость с телефоном и бюджет энергопотребления
Широковещательная передача LE Audio Передатчик широковещательного аудио BAP или Приёмник широковещательного аудио BAP Роль при вещании, аудиотракт, тестовый приёмник или передатчик и запас по времени

Запуск примера как источник подтверждений

До изменения проекта зафиксируйте точную версию SDK, имя платы, конфигурацию, ответное устройство или приложение, параметры радиосвязи и ожидаемую запись в журнале. Затем выполните следующие шаги:

  1. Соберите и прошейте неизменённый пример, используя точное имя платы и инструкции для соответствующего выпуска SDK. Если соответствие документации и ревизии SDK или поддержка платы не установлены, перед адаптацией считайте совместимость непроверенной.
  2. Подтвердите основной сценарий по радиоканалу: обнаружение, подключение, передачу данных, потоковую передачу или приём — в зависимости от задачи.
  3. Повторите проверку после сброса, отключения, повторного подключения и выключения/включения питания.
  4. Добавляйте по одному элементу, специфичному для изделия: сервис, пользовательский сценарий, аудиотракт или политику управления питанием.
  5. Повторно проверьте систему под совокупной нагрузкой изделия, включая дисплей, датчики, накопитель, аудио и переходы в режимы низкого энергопотребления, если они применимы.

Рабочий пример демонстрирует только предусмотренный в нём сценарий. Сам по себе он не подтверждает готовность изделия к выпуску по таким параметрам, как политика безопасности, дальность связи, задержка, энергопотребление и совместимость.

Примеры BLE

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

Таблица: примеры BLE SDK по инженерным задачам
Инженерная задача Официальные примеры Что проверить с помощью этих проектов
Базовые роли и доступ к сервисам Периферийное устройство, Центральное и периферийное устройства, Несколько соединений Передачу рекламных пакетов BLE, сканирование, управление подключениями и корректное распределение ролей центрального и периферийного устройств
Интеграция с телефоном AMS, ANCS, ANCS на двух ядрах Интеграция с медиафункциями или уведомлениями Apple и требуемый сценарий сопряжения на телефоне
Стандартные профили GATT BASC, CPPC, CSCPC, DISS, HRPC, CTS Роль сервиса, определение характеристик GATT и совместимость стандартного профиля с ответным устройством
Устройства ввода и двусторонняя голосовая связь HID, Переговорное устройство BLE Модель взаимодействия до добавления интерфейса изделия или функций голосовой связи
Сопряжение и повторное подключение Сопряжение BLE Сохранение ключей сопряжения (bonding), управление идентификаторами и сценарий повторного сопряжения изделия
Передача рекламных пакетов и обнаружение устройств iBeacon, Периодическая передача рекламных пакетов BLE, Синхронизация с периодической передачей рекламных пакетов BLE Требуемое поведение широковещательной передачи или синхронизации без предположения о наличии подключения GATT
Передача данных и OTA Передача файлов, Пропускная способность, Периферийное устройство с OTA, Центральное и периферийное устройства с Pingpong OTA Данные, параметры соединения, роли при обновлении, восстановление после прерывания и сквозную проверку

Не следует считать измеренную в тесте пропускную способность гарантированной скоростью передачи данных изделия. Результат зависит от выбранного PHY, параметров подключения, поведения ответного устройства, радиочастотной обстановки, активности хоста и структуры полезной нагрузки. Аналогично, пример ANCS или AMS — это отправная точка для интеграции с телефоном, а не гарантия работы со всеми версиями iOS и при любых настройках разрешений пользователя.

Примеры классического Bluetooth

Проекты классического Bluetooth подходят изделиям, которым нужны профили BR/EDR, аудио, последовательная передача данных или доступ к IP-сети через телефон. Успешная демонстрация на отладочной плате — лишь отправная точка; проверьте совместимость с фактическими ответными устройствами и рабочей нагрузкой изделия.

Таблица: примеры классического Bluetooth SDK по инженерным задачам
Инженерная задача Официальные примеры Что проверить с помощью этих проектов
Транспорт между хостом и контроллером или профиль классической последовательной связи HCI через UART (BT/BLE), SPP Границу между хостом и контроллером и транспорт UART для HCI либо работу последовательного профиля SPP
Потоковое аудио и управление воспроизведением Несколько соединений A2DP, Совместная передача аудио A2DP, Обложка альбома AVRCP, Приёмник музыки, Приёмник музыки с ретрансляцией, Передатчик музыки Предполагаемую схему «источник/приёмник», аудиотракт, канал управления воспроизведением и бюджет ресурсов
Вызовы и голосовые соединения 3-SCO, HFP, Ретрансляция HFP Схему вызова, задержку аудио, тракт микрофона/динамика и поведение телефона
Сеть через телефон и OTA PAN, PAN OTA Раздачу сети телефоном, IP-трафик, повторное подключение и способ доставки OTA

Описание модели сетевого доступа PAN и настройки телефона см. в статье Bluetooth PAN. О маршрутизации аудио, управлении буферами и проверке под системной нагрузкой см. статьи Обзор аудио и Audio Server и буферизация.

Примеры широковещательной передачи LE Audio

Путь документации sf32lb58x сам по себе не подтверждает совместимость с платой; проверьте раздел Supported Platforms для нужной ревизии SDK и целевой платы. В примере, соединяющем классический Bluetooth и BAP, заголовок README указывает на передатчик, а путь и обзор описывают приёмник. Реализация в проверенной версии SDK обрабатывает Classic A2DP и запускает передатчик широковещательного аудио BAP. Этот вывод относится только к указанному коммиту и не переносится автоматически на все версии, доступные через latest. Перед сборкой проверьте README, исходный код и конфигурацию платы для фактически используемого выпуска или коммита SDK. Не определяйте роль или поддержку платы по скопированному описанию приёмника.

Проекты zbt содержат примеры источника и приёмника широковещательной передачи LE Audio на основе базового аудиопрофиля (Basic Audio Profile, BAP). Проверяйте источник и приёмник как единую систему: на результат влияют конфигурация вещания, источник аудио, приёмник, тактирование и условия радиосвязи.

Таблица: примеры SDK для широковещательной передачи LE Audio
Назначение изделия Официальный пример Что проверить в первую очередь
Приём широковещательного аудиопотока Приёмник широковещательного аудио BAP Поведение приёмника, тракт вывода аудио и конфигурацию тестового вещания
Передача широковещательного аудиопотока Передатчик широковещательного аудио BAP Аудиотракт источника, конфигурацию вещания и заведомо исправный приёмник
Совместная работа классического Bluetooth и широковещательной передачи LE Audio Передатчик широковещательного аудио BAP с классическим Bluetooth Оба аудиодомена, границу переключения между ними и общий запас по времени и ресурсам

Проверка изделия после адаптации примера

Таблица: проверка адаптации примеров Bluetooth к изделию
Аспект Что сохранить из исходного примера Что повторно проверить на изделии
Работа радиосистемы Поддерживаемую плату и предусмотренную примером роль или профиль Антенну, корпус, дальность, сосуществование радиосистем, ответные устройства и план испытаний на соответствие нормативам
Политика подключения Базовый сценарий передачи рекламных пакетов BLE, сканирования или подключения Требуемую задержку, целевое энергопотребление, стратегию повторного подключения и переходы состояний
Безопасность Настройку сопряжения или сохранения ключей (bonding) в примере Требования к аутентификации, хранение ключей, конфиденциальность, сброс к заводским настройкам и пользовательское восстановление
Данные и аудио Продемонстрированный обмен пакетами или потоковую передачу Формат и правила обмена данными, восстановление после ошибок, задержку, буферизацию, настройки кодека и запас памяти
Результаты проверки Настройки сборки, журналы и ожидаемое поведение Воспроизводимую матрицу телефонов и аксессуаров, график энергопотребления во времени, восстановление после разрыва связи и регрессионные тесты
  • Обзор Bluetooth — выбор ролей, профилей, мер безопасности, параметров подключения и сосуществования радиосистем на уровне изделия.
  • Bluetooth-процессор — разделение функций между хостом и контроллером и особенности энергопотребления.
  • Bluetooth PAN — IP-сеть через телефон и OTA на основе PAN.
  • Аудиопримеры SDK — дополнительные примеры локального захвата, работы с кодеками и воспроизведения.
  • Примеры — каталог примеров SDK для разных областей.

Последнее обновление: