В данной статье мы расскажем про несложный способ подключения устройства через bluetooth при помощи виртуального COM-порта на стороне хоста.

Модуль bluetooth был куплен в магазине Чип и Дип как приложение к модулям seeedstudio, ответвление arduino, за 1000 рублей, хотя в Китае подобные девайсы стоят около 300 рублей. Что же позволяет делать данная сборка?

По сути это преобразователь bluetooth<->UART, подобный UART<->USB на чипе ft232. Изначально данный модуль мы приобрели в качестве замены адаптеру на ft232. Идею почерпнули из адаптеров ELM327 для автодиагностики, там тоже есть адаптер на основе usb, а есть и на аналогичном блютус модуле. Однако в процессе мы столкнулись с небольшой проблемой, об этом поподробнее.

Обычный юсб-уарт работает как plug-and-play устройство, то есть, подключаем его к микроконтроллеру, к ПК, устанавливаем драйвера виртуального ком-порта и пишем программы. Тут ситуация оказалась несколько сложнее. Мы подключили bluetooth адаптер к микроконтроллеру ARM7 (чтобы не утруждаться я с логическими уровнями — они на обоих частях 3.3 Вольта), подключили адаптер блютус к ПК и стали наблюдать. Как не удивительно результата не было. Оказалось, что блютус модуль сначала надо проинициализировать строкой: "+INQ=0\r\n"



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

С другой стороны, разработчик получает возможность связываться с устройством при помощи любого мобильного устройства, даже телефона. SPP-профиль поддерживают почти все гаджеты, а работа с COM-портом через bluetooth уже реализована в android, maemo и других мобильных ОС. Можно без проблем делать девайсы-приставки для телефонов, например, беспроводное управление силовыми выходами, освещением и т.д. Но стоит учитывать дальность работы блютус и надежность передачи. Дальность у модуля вполне достаточная, в пределах большой офисной комнаты. А вот с надежностью проблемы: иногда связь может просто внезапно оборваться и не сразу восстановиться, да и скорость передачи данных не очень большая. Думаю эффект утери данных испытали и многие пользователи блютус-наушников с профилем A2DP, когда кладешь передатчик в задний карман, наушники просто перестают работать…

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

Ниже представлена схема подключения. Когда подано питание, мигает синий светодиод, когда связь установлена, загорается второй светодиод.



Спасибо за внимание!

Комментарии ()


  1. r_ii
    21.08.2015 15:52

    Было бы хорошо предоставить название и спецификацию данного модуля. Их есть несколько видов.
    Один из документов.
    А еще этот модуль сам является микроконтроллером и его можно программировать. Здесь была об этом статья. Искать по ключевых словах CSR.


  1. ftp27
    21.08.2015 16:22
    +2

    Очень и очень скудная статья. Можно было бы хотябы освятить список AT-команд которые указаны в доках. Ну или описать обвязку модуля.