- Bluetooth-UART модуль JDY-23 BLE 5.0
- Основные параметры
- Приобрести на Aliexpress
- Что может эта штука
- Элементная база
- Подключение
- Связь между модулем и телефоном через блютуз-соединение
- Рекомендуемое программное обеспечение
- Связь с телефоном через приложение
- Список основных команд
- Управление выводами GPIO
- Как быть с паролем (совет от китайцев)
- Потребляемая мощность
- Проверка дальности передачи
- Техническая документация и полезные файлы
- Видеообзор
- Итого
- Добавляем Bluetooth в любую магнитолу
Bluetooth-UART модуль JDY-23 BLE 5.0
Действительно интересный блютуз-приёмопередатчик , который имеет широкий диапазон применения, ведь энергопотребление его сверхнизкое ( BLE — Bluetooth Low Energy ) и размеры малы. В статье приведены основные параметры модуля JDY-23, схема подключения, описание основных команд управления, способы использования и испытания в бою (замеры тока и дальности передачи).
Основные параметры
Приобрести на Aliexpress
?️ JDY-23 JDY-23A BLE 5.0 Module BLE5.0 (0.83?): https://ali.ski/FuEXar
?️ JDY-23 Bluetooth 5.0 module (1.12?): https://ali.ski/JegQ8
?️ 10pcs JDY-23 Bluetooth 5.0 (11.2?/10pcs): https://ali.ski/b0Lxm
Также существует предыдущая, мало чем отличающаяся версия JDY-19 (может работать как ведущее!, то есть есть возможность передачи данных между двумя модулями):
Что может эта штука
- Обмен данными между двумя модулями (JDY-23 не может, а вот JDY-19 может!)
- Обмен данными между модулем (ведомым) и другим Bluetooth-устройством (ведущим)
- Обмен данными между модулем и телефоном
Элементная база
На странице товара пишут, что используется микроконтроллер CC2541 (здесь вроде как блютуз 4.0), на некоторых фото можно увидеть JY01S512E G101S-32P, но самой плате маркировка уничтожена.
Подключение
Связь между модулем и телефоном через блютуз-соединение
Установим связь между ПК и телефоном. Согласно схеме подключаем USB-TTL преобразователь к модулю, желательно также подключить светодиод к выводу ALED — он будет показывать текущий статус подключения (во время простоя — мигает, в подключенном состоянии — просто светится).
Кроме этого может понадобится задействовать вывод PWRC . Когда связь установлена, то команды не работают, для отправки нужно подключить этот вывод к минусу, отправить АТ-команды и отпустить.
Рекомендуемое программное обеспечение
- Для компьютера: YAT
- Для телефона: Bluetooth USB Terminal
Открываем терминал на ПК. Проверяем некоторые AT-команды:
Модуль отвечает, а это уже хорошо (но команда выбора мощности AT+P OWR не сработала, ну и и ладно).
Заходим в приложение на моб.. Меню слева -> Devices -> BLUETOOTH LE -> SCAN
- обязательно дать все разрешения и включить геолокацию (GPS)!
- не пытайтесь добавить модуль в настройках Bluetooth (создать пару) — это сделать не получится (да и не нужно)
Тыкаем по названию (также можно сверить MAC-адрес) и начинается подключение (еще есть кнопка вверху).
Всё! Теперь создана связь между устройствами, отправленное с ПК видно на телефоне, и наоборот ( AT-команды больше не принимаются, чтобы отправить нужно прижать к минусу вывод PWRC ).
Связь с телефоном через приложение
В App Invertor 2 можно создавать приложения, которые могут что-то делать используя как раз Bluetooth (нужно загрузить дополнение BluetoothLE ) с версией не ниже 20181124 .
Осуществив получение данных на телефон и отправку с него с использованием такого модуля можно делать классные штуки.
Пример сделанного приложения (скачать можно внизу):
- Включить Bluetooth и GPS.
- Дать разрешение на геолокацию самостоятельно.
- По нажатию на кнопки ON и OFF отправляются числа 48 и 49, что соответствует символам 1 и 0 в кодировке ASCII.
- Также осуществляется прием байта (0-255) и его отображение на экране.
*это немного измененное приложение на основе:
Список основных команд
Команда | Ответ | Параметр | |
Версия | AT+VER | +VER:JDY-23-V1.2 | — |
Имя | AT+NAME | +NAME:JDY-23 | Имя (до 24 байт) |
Отключится | AT+DISC | +OK | — |
Текущий статус подключения | AT+STAT | +STAT:00 | 00: не подключен 01: подключен |
MAC-адрес | AT+MAC | +MAC:19093010061F | MAC-адрес (пример: AT+MAC11223344566) |
Скорость UART | AT+BAUD | +BAUD:4 | Параметр: (1-9) 0——*115200 1——57600 2——38400 3——19200 4——9600 5——4800 6——2400 По умолчанию: 4 *исправлено |
Сон | AT+SLEEP | +SLEEP:OK | 1: Легкий сон (вещание) 2: Глубокий сон (нет вещания) |
Режим работы | AT+STARTEN | +STARTEN:1 | 1: Проснутся, управление сном через AT+SLEEP 0 (*исправлено): Начать спать, проснутся при подключении, при отключении опять спать |
Интервал вещания | AT+ADVIN | +ADVIN:1 | Параметр: (0-9) 0——100 мс 1——200 мс 2——300 мс 3——500 мс 4——500 мс 5——600 мс 6——700 мс 7——800 мс 8——900 мс 9——1000 мс По умолчанию: 0 |
Вкл./Выкл. светодиод | AT+ALED | Параметр: (0-1) 0: выключить 1: включить | |
Сброс настроек | AT+RST | +OK | — |
Остальные команды нас не интересуют, т.к. предназначены для бекона (их можно найти в документации, которая прикреплена ниже).
Управление выводами GPIO
У модуля есть выводы OUT1—OUT7, которыми можно управлять.
Уровень напряжения на них можно выставлять с помощью кодов-команд.
Установка высокого уровня на OUT1: 0xE7F101
Установка низкого уровня на OUT1: 0xE7F100
Важно! Characteristic UUID должен быть при отправке команд 0xFFE2
1) Сделать это можно с помощью NRF Connection:
После подключения нажать на стрелку вверх (отправка) характеристики UUID: 0000ffe2-. и ввести шестнадцатеричное число-код-команду и выбрать тип массив байтов BYTE ARRAY (выбрано по умолчанию).
2) Также с помощью Serial Bluetooth: сначала отключить любые добавочные символы при отправке (Settings -> Send -> Newline -> None) и можно врубить режим HEX (Settings -> Send -> Edit Mode -> HEX). Здесь сначала во вкладке Devices -> Bluetooth LE нужно зажать на названии JDY-23 (если не изменено), далее Edit и установить пользовательский профиль (Custom), при этом характеристика при записи (Write characteristic UUID) должна быть: 0000ffe2-.
3) В App Invertor 2 при отправке с помощью WriteBytes нужно установить опять же characteristicUUID: 0000ffe2-0000-1000-8000-00805f9b34fb
Далее создать список (make a list) из трех элементов (нажать на шестерню для увеличения количества item) и запихнуть туда команду: E7 F1 01 (то есть она разбивается на три части — три байта).
В итоге все прекрасно работает, теперь можно управлять какой либо нагрузкой с телефона посредством ручной отправки команд или замутить простое приложение с кнопками в конструкторе.
Как быть с паролем (совет от китайцев)
JDY-23 не имеет пароля для подключения через Bluetooth, если вам нужно, чтобы другие не могли подключиться, вы можете настроить отправку пароля с подключаемого по блютуз устройства (через приложение) и его дальнейшую проверку средствами микроконтроллера.
Если пароль не получен/неправильный в течение n секунд после подключения, МК должен прижать вывод PWRC к минусу и отправить команду AT+DISC, модуль сразу же отключится.
Потребляемая мощность
? Обратите внимание на измерения от пользователя:
Они выполнены специализированным прибором, поэтому ориентируйтесь на них!
Ток во время простоя (не подключено): | 1 мА |
Ток в подключенном состоянии: | 2.2 мА |
Ток в подключенном состоянии (глубокий сон, нет вещания): | 60-200 мкА |
Ток при передачи данных через UART: | 2-3 мА |
Проверка дальности передачи
Рассчитывать от синезуба огромного расстояния передачи никто не будет, да и не нужно, заявлено до 60 м (ну эт. на открытой местности), на деле же пару стен пробивает, чего вполне достаточно.
Техническая документация и полезные файлы
Можно посмотреть
как все устроено
и сделать под себя
с JDY-23.
(Прием и отправка байта)
Видеообзор
Итого
Штука очень полезная, стоит не дорого, но при этом дает возможность делать устройства, которые будут взаимодействовать с телефоном, что отлично подойдет для многих применений (прием данных от каких-то датчиков, управление светом/воротами. ).
По сравнению с известными модулями HC-0xx этот стоит дешевле (в два-три раза!) и при этом имеет меньшие размеры и (возможно) энергопотребление.
Добавляем Bluetooth в любую магнитолу
Сделать из любой старой автомагнитолы магнитолу с блютус оказалось совсем не сложно. И совсем недорого.
Особенно такой апгрейд актуален для тех машин, где стоит встроенная старенькая аудиосистема, которую на новую так просто не заменишь.
Смысл происходящего: блютус модуль принимает звук от телефона, с точки зрения смартфона этот модуль — как гарнитура. Модуль декодирует звук и отправляет его на линейный аудиовход магнитолы. При выборе источника звука «линейный вход», из колонок мы слишим то, что играет в нашем телефоне.
Для модернизации нам потребуется:
1) блютус модуль (меньше ста рублей, ссылка внизу)
3) старый кабель с разъемом микро-юсб
4) старый провод от наушников.
Последние два пункта можно заменить на отрезки простого провода, только паять придется чуть больше.
Я заказал продвинутую версию модуля. Она отличается от самой простой наличием кнопок. В нашей модернизации они не нужны, но кто знает, какие еще идеи придут в голову. Разницы в цене у вариантов почти нет.
На борту у модуля мы видим основной чип, контроллер заряда литий-ионной батареи (нам не потребуется), переключатель питания (батарея/usb) — ставим в положение usb, три кнопки (стоп, вперед/громче, назад/тише), разъем для наушников. Имеются контактные площадки для аккумулятора, проводов для аудио, встроенная антенна, и конечно же непременный синий светодиод для индикации состояния.
На обратной стороне платы шелкография с описанием всего этого, контакт для подключения кнопки mute, перемычки, на которых капля припоя задает режим работы mute. Если мы не планируем вставлять в магнитолу новые кнопки, все эти излишества нам не понадобятся.
Крупно два чипа — основной (его pdf по маркировке я не нашел) и контроллер заряда литий-иона (в правом нижнем углу).
Наш пациент — магнитола Supra. Куплена в Ашане за мелочь, ссыпанную из кошелька, лет 10 назад.
Разбираем, смотрим, где там можно подключиться к +5В. Мне повезло, у этой магнитолы есть usb гнездо. Я от него иногда подзаряжаю телефон, и знаю, что оно включается вместе с магнитолой. Это очень хорошо, нам ни к чему, чтоб блютус модуль работал постоянно.
Если в вашем случае usb нет — ничего страшного, в магнитоле наверняка есть это напряжение. Но в этом случае нам потребуется мультиметр. В режиме вольтметра проверяем наиболее удобные для подключения точки. Находим нужную, припаиваем проводок.
На плате модуля нет отдельных пятаков для подключения питания. Можно отрезать кусок usb шнура с micro-usb штекером. Подпаиваем красный провод к источнику +5, черный — к «земле». Зеленый и белый не трогаем. Затем находим на плате аудиоразъем. В моем случае он тоже был на передней панели магнитолы. Выясняем, где там у него левый канал, где правый, где земля. Можно посмотреть распиновку штекера в интернете, можно подключить колонку и выкрутить баланс магнитолы то в левый то в правый канал. По результатам припаиваем провод от соответствующих контактных площадок модуля (L — левый, R — правый и G — земля).
Я взял старый шнур от наушников и просто вставил штекер в гнездо модуля.
Осталось решить последнюю задачу — как укрепить модуль внутри магнитолы. В моей полно свободного места. Я распечатал небольшую скобу, которая крепит модуль к слоту SD карты. Но можно приклеить на двухсторонний скотч, примотать изолентой, приклеить клеем-расплавом.
Проверяем и собираем в обратной последовательности.
Включаем в телефоне bluetooth. Осуществляем поиск устройств. Устройство обнаруживается под названием VHM-314 V2.0 Выбираем его для воспроизведения звука.
Все готово. Можно ставить магнитолу обратно в машину и слушать что угодно. Подкасты, ютуб, новости — теперь все доступно, и с хорошим качеством звука. И советы навигатора не пропустишь мимо ушей, среди других звуков.
Вот как у меня получилось:
Можно такой модуль добавить к старому музыкальному центру, просто усилителю, а добавив аккумулятор — и к наушникам.
Есть варианты с кнопками и без кнопок, с пультами дистанционного управления и без. Там же есть корпуса для них.
Об авторе
Готов к сотрудничеству: tykhonthecat@gmail.com
Ready for cooperation: tykhonthecat@gmail.com
detector