Обзор модуля FSC-DB102 Ver: 1.4 (далее изделие) на основе модуля FSC-BT1026С, который в свою очередь работает на основе трех ядерного Audio процессора QCC3034. Посмотрим на что способен модуль BT1026.
Итак, что нам надо из оборудования?
№ | Оборудование | Назначение |
1 | Кабель USB micro | Для подачи питания на изделие и управления поведением прошивки |
2 | FSC-DB102 Ver: 1.4 | Изделие |
3 | Доступ в интернет | Для добычи документации |
4 | DMM | Для поиска заземления на PCB |
5 | Микроскоп | Для определения реальных микросхем на PCB |
6 | Штангенциркуль | Для снятия размеров монтажных отверстий PCB |
7 | Смартфон с Android | Для отправки Audio трафика |
8 | Логический анализатор | Для диагностики I2S шины |
9 | Наушники с Audio Jack 3,5mm | Для непосредственного излучения звука |
10 | LapTop/NetTop/DeskTop | Для диагностики и конфигурирования изделия |
Что надо из софтвера?
# | Программное обеспечение | Назначение |
1 | TeraTerm/Putty/Terminal v1.9b | Утилиты для отправки AT-команд по последовательному порту |
2 | PDF Viewer | Для чтения документации Vendor(а) |
3 | Serial Bluetooth Terminal 1.36 | Мобильное приложение для чата по Bluetooth |
4 | Браузер Tor | Для скачивания документации с сайта Qualcomm |
5 | Векторный редактор Inkscape | Для разбора и анализа I2S осциллограмм |
6 | Драйвере для чипа CP2104 | Для подключения к компьютеру |
7 | OS Windows |
Что надо из документации?
Doc Name | pages | Ver | Содержимое |
FSC-DB102 BT100x TWS User Guide V1.0 | 7 | 1.0 | Описание внешнего вида платы |
FSC-BT1026x Bluetooth 5.1 Dual Mode Module | 38 | 1.5 | Распиновка модуля FSC-BT1026C V1.2 |
FSC-BT100X Sink Programming User Guide | 35 | 3.5 | перечень доступных AT-комманд |
FSC-DB102(BT1006A) DK Board SCH | 1 | 1.4 | Схемотехника модуля |
Пролог
Сейчас очень просто сделать BlueTooth колонку буквально из подручных компонентов. Продаются готовые BlueTooth Audio модули. Вот например модуль FSC-DB102 Ver: 1.4
На плате установлен модуль FSC-BT1026C V1.2. Под линзой можно увидеть процессор QCC3024

распиновка модуля FSC-BT1026C V1.2

Вот монтажная (компоновочная) схема этой отладочной PCB.

блок-схема отладки

Ядром этой платы является модуль FSC-BT1026 V1.2. Вот его блок схема.

Так как плату надо установить вертикально на стенд, то пришлось снять размеры штангенциркулем. Плата симметричная по 2м осям.

При получении печатной платы PCB(шки) первый же вопрос, который должен задавать себе типичный инженер-электроник это: "А где же на этой плате заземление(GND)?". Это можно прозвонить DMM(ом)

Аналогично находится питание

Вот самые полезные пины посвященные UART, I2S и Reset

Вот вариант подключения платы FSC-DB102 Ver: 1.4 к отладочной плате nRF5340-DK

У модуля FSC-BT1026C V1.2 пин 34 SYS_CTR\PIO0\VREGENABLE это очень важный пин, который работает на вход. Его обычно подключают к ON/OFF кнопке или к GPIO командного микроконтроллера. Проводом SYS_CTRL подают команду загрузки модуля установкой 3,3V. Чтобы включить модуль достаточно подать питание на любой USB micro (J1 или J6) и нажать и удерживать кнопку Play/Pause (K1). То есть подать 3,3V на пин U1.34 (VREGENABLE) и удерживать 2 секунды. Станет мигать красный LED0 (U1.17). Модуль проснулся.
Далее берем смартфон, заходим в Android ->Settings->Bluetooth. Выбираем Bluetooth on. Если смартфон не видит модуль BT1026C, то надо перезагрузить модуль AT командой AT+REBOOT
В списке AVAILABLE DEVICES появляется устройство FSC-BT1026C-LE. Телефон предложит совершить pairing с FSC-BT1026C. Нажимаем PAIR.

После этого на модуле красный LED0 уже стал светится непрерывно. Теперь можно открывать YouTube и слушать видео через наушники подключенные к плате FSC-DB102 Ver: 1.4. Громкость звука можно менять с телефона. Также можно останавливать видео кнопкой PLAY/PAUSE (K1) на синей PCB модуля.
Также при подключении по USB через разъём J6 появляется COM3. На битовой скорости 115200 bit/s можно увидеть, что модуль посылает в UART лог.

Уже глядя на всё это приходит в понимание, что можно сделать на основе этого модуля Bluetooth колонку, которая будет логировать на SD карту прослушанные треки. Колонка с черным ящиком.
Общение и взаимодействие с модулем осуществляется через протокол AT-Commands поверх UART. Можно воспользоваться утилитой Terminal v1.9b

Также можно настроить TeraTerm на автоматическое дописывание переноса каретки и возврат на начало строки. Плюс надо активировать программное эхо так как прошивка эхо в UART не посылает

и устанавливаем битовую скорость 115200 bit/s

Теперь видно, что устройство отвечает на AT команды отправленные через TeraTerm

Передача звука по I2S
Сам по себе из коробки модуль ничего не посылает в I2S, даже при включенном потоке. Значит I2S надо как-то сконфигурировать. Для этого есть AT-команда AT+I2SCFG

Если отправить в UART команду AT+I2SCFG=65 (65=0x41=0b0100_0001), то модуль FSC-BT1026C после перезагрузки станет мастером на шине I2S на частоте дискретизации 48kHz и будет посылать 32х битные PCM семплы на проводе PCM-OUT. Битовая частота составляет 3,012 ....3,086 MHz

При этом при передаче звука в I2S звук в наушники на Audio Jack 3.5mm не передается, что неудобно для отладки.
BT1026 не может выдавать PCM семплы чаще чем 48kHz. Если BT1026 просить чаще например с частотой дискретизации 50kHz, то BT1026 модуль будет просто выдавать нули. Они будут слышны как раздражающие щелчки.

Передача текста по SPP (Serial Port Profile)
Модуль может передавать не только звук но и текстовые данные. Жизнь становится веселее. В режиме SPP на плате светится синий LED1. На мобильном телефоне надо установить приложение Serial Bluetooth Terminal 1.36

Получится Bluetooth chat(ик) на 10 метров.
Идеи проектов на основе модуля FSC-BT1026
1--Устройство авто-звонилка на телефонные номера, которая будет автоматически говорить какой-то звук и сбрасывать или аппаратный авто-ответчик.
2--Bluetooth колонка с функцией логирования контента. Название YouTube ролика.
3--Дистанционное управление по SPP c телефона.
4--Bluetooth SPP chat на расстояние 10 метров.
Вывод
BT1026 вещица, конечно, интересная. Может быть полезна для прототипирования. Однако недостаток прошивки модуля в том, что у него нет AT-команды для тонального режима испускания синуса в провод PCM-OUT. Поэтому отлаживать программно-аппаратный аудио тракт приходится воспроизведением синуса из *.WAV файла на телефоне.
В инженерном деле есть такое понятие как видовая/не видовая деталь. Видовая деталь это то, что всегда перед глазами. Поэтому к корпусам добавляют требования красоты. Соответственно не видовые детали - это то, что спрятано где-то под капотом и делают их максимально дешевыми из самого низкосортного пластика и выглядят такие модули соответственно.
При работе с аудиоустройствами ситуация аналогичная. Если устройство по идее издает звук, то этот звук должен звучать приятно и никого не раздражать. В аудиокодеках должны отсутствовать всякого рода шумы, свисты, чихания, хрипения и щелчки. Это же логично.
Словарь
Акроним | Расшифровка |
AT | ATtention |
PCM | Pulse Code Modulation |
SPP | Serial Port Profile |
USB | Universal Serial Bus |
LED | Light-emitting diode |
FSC | FeasyCom |
PCB | Printed circuit board |
DMM | Digital Multimeter |
SD | Secure Digital |
UART | Universal asynchronous receiver-transmitter |
I2S | Inter-IC Sound |
Links
https://aliexpress.ru/item/4000166437470.html
https://www.youtube.com/watch?v=oVu2K6WutUk&t=23s