0 / 0 / 0
Регистрация: 11.09.2013
Сообщений: 269
1

Мучаюсь с HM-10 модулем (Bluetooth Low Energy)

15.04.2014, 03:56. Показов 47718. Ответов 30
Метки нет (Все метки)

Пришел таки модуль HM-10 (брал тут) и начались мои бессоные ночи :(

Пока не нашлось чем собрать согласователь уровней (ну, нет под рукой полевичка :/ ), поэтому сразу пытаюсь наладить connect через смартфон.
Запитал модуль, закачал LightBlue апп на ios - вижу модуль в списке BLE девайсов (HMSoft). В интернетах висит даташит, где кое как описанно как работать с сим чудом по уарту. Что ж, все отлично, но мне интересно могу ли я "пообщаться" с девайсиной из смартфона. Как я понял, производитель модуля прошил TIевский чип своим софтом, где и реализованно общение по uorty при помощи команд указаных в даташите. А как же пихнуть команды из смартфона? LightBlue апп позволяет писать и читать значения (в форматах ASCI или HEX) в подключенный девайс. Попробовал послать ASCI команду "AT" (из даташита - это тестовая команда), но ответа не получаю.

Ребят, кто нибудь работал с этим модулем? С какой стороны подойти? Очень хочется пообщаться с модулем из телефона - если мне надо было бы простой мастер-слэйв из двух модулей, я бы с BLE не стал заморачиваться..
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.04.2014, 03:56
Ответы с готовыми решениями:

Bluetooth Low Energy -- BluetoothGATTGetServices() и BluetoothGATTGetCharacteristics()
Здравствуйте, Такая проблема, пишу программу для BLE, вот дошел до поиска устройств, но тут...

Как разорвать соединение с Bluetooth low energy устройством на WP8.1
Здравствуйте! Заимел отладку SensorTag от TI. Написал приложение которое через GATT...

TRibbon - мучаюсь, мучаюсь...
Никак не могу: Убрать то, что находится рядом с объектом, который я поставил на Ribbon (син....

Qt Bluetooth, ошибка qt.bluetooth: Dummy backend running. Qt Bluetooth module is non-functional
Начал разбираться с Qt и Bluetooth, для этого запустил пример...

30
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 594
15.04.2014, 11:18 2
Непонятно, что значит "пообщаться". Непонятно в чем конус BLE, блютус он и есть блютус. Что вы куда подключаете и что хотите получить?
Кунфигурируется БТ модуль через ат-команды, подключением к выводам РХ/ТХ.
Даташит не качается. Написано "can replosi HC-05, HC-06, HC-07 etc." Статей про эти модули на ресурсе много.
0
MCSD: APP BUILDER
8794 / 1073 / 104
Регистрация: 17.06.2006
Сообщений: 12,603
15.04.2014, 11:25 3
как ни странно тоже вчера наткнулся на этот модуль на али, вроде бы вещь интересная, но ни документации толковой, ни чего...
знаю только что у чипа внутри проц x51, что там производитель запишет одному богу известно, некоторые подобные модули вообще без прошивки идут.
В общем, мороки больше, чем радости

>>Написано "can replosi HC-05, HC-06, HC-07 etc." Статей про эти модули на ресурсе много.

да заменить-то он может, только это СОВЕРШЕННО ДРУГОЕ устройство и работает совершенно по-другому. хотя команды могут и совпадать
0
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 594
15.04.2014, 12:01 4
Цитата Сообщение от Johmmy0007
да заменить-то он может, только это СОВЕРШЕННО ДРУГОЕ устройство и работает совершенно по-другому. хотя команды могут и совпадать
Чем другое?
Команды указаны на сайте, даташита нету.
0
0 / 0 / 0
Регистрация: 15.06.2012
Сообщений: 3,097
15.04.2014, 12:08 5
Цитата Сообщение от Johmmy0007
В общем, мороки больше, чем радости
Он жрёт много меньше чем HC-0х, для многих это уже повод заморочиться.
Хотя есть еще новый нордик с бесплатным BT4 стёком, там cortex m0.
0
0 / 0 / 0
Регистрация: 15.06.2012
Сообщений: 3,097
15.04.2014, 12:12 6
Цитата Сообщение от homiysomb0
Очень хочется пообщаться с модулем из телефона - если мне надо было бы простой мастер-слэйв из двух модулей, я бы с BLE не стал заморачиваться..
У Bluegiga BT2.1 модулей есть спец. профиль для конфигурации по воздуху, можно подёргать ноги, считать АЦП, и ЕМНИП даже прошить...
0
MCSD: APP BUILDER
8794 / 1073 / 104
Регистрация: 17.06.2006
Сообщений: 12,603
15.04.2014, 12:17 7
Ну так не видно, чтоб кто-то использовал по наиболее прямому назначению - как BT-приёмопередатчик, например с управлением ножками. Вот конкретный пример какой-нибудь.
А то что жрёт мало - да именно поэтому я на него вчера и вышел. Но как-то пока мало информации по конкретному применению, надёжности, багам. По программирование я уж вообще молчу - можно, но денег много надо, вроде
0
omx
15.04.2014, 12:46 8
Хотя номер стандарт отличается всего-ничего, но 4 отличается от 2 принципиально. В 4.0 нету потоковой передачи данных.

Вкратце: у BLE сервера есть набор сервисов (бывают стандартные и нет). Каждый сервис имеет характеристики (длиной до 20 байт). МК (к которому подключён сервер) может читать/писать в характеристику, аналогично может делать и клиент. Отличие от синезуба 2 в том, что эти характеристики не работаю по принципу FIFO. Новая информация затирает то, что было до этого, а старая теряется, если её не успели вычитать.

Т.е. для того что бы работать с этим модулем со стороны смартфона вам надо узнать какой сервис отвечает за эмуляцию УАПП и по какому принципу работают характеристики.

Например, у Bluegiga BLE112 есть аппноут Cable Replosiment Dimo (эмуляция УАПП). Там сделан свой (нестандартный) сервис с двумя характеристиками: RX и TX. Динные записаные в RX, отправляются по УАПП в МК, а данные принятые по УАПП от МК буферизируются и отправляются по воздуху через TX кому надо. Новые данные в ТХ записываются после вычитывания.
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 594
15.04.2014, 13:35 9
Ничего не понятно. У меня в телефоне БТ 4, робот хрен знает с каким БТ (4 года назад ставил). Работают вместе идеально (SPP). Ничего дополнительно не настраивал. Так в чем принципиальная разница/отличие БТ 4? Тот же SPP, такое же спаривание.
0
0 / 0 / 0
Регистрация: 11.09.2013
Сообщений: 269
15.04.2014, 13:57 10
Цитата Сообщение от ImTuTb!
Непонятно, что значит "пообщаться". Непонятно в чем конус BLE, блютус он и есть блютус. Что вы куда подключаете и что хотите получить?
Даташит не качается.
Задача номер 1 - просто послать AT тестовую команду из смарфона, и получить в ответ OK. LightBlue апп позволяет слать и принимать байтики. Вот если бы получилось как-то запихивать АТ команды из смартфона - остальное было б за малым, садим рядом какой-нить маложрущий msp430.

Мне надо изредка считывать показания сенсоров с телефона - BLE идеальный вариант для такой задачи.

Странно, проверил линк, у меня даташит открывается.
0
0 / 0 / 0
Регистрация: 11.09.2013
Сообщений: 269
15.04.2014, 14:05 11
Цитата Сообщение от яверт
Цитата Сообщение от Johmmy0007
В общем, мороки больше, чем радости
Он жрёт много меньше чем HC-0х, для многих это уже повод заморочиться.
Хотя есть еще новый нордик с бесплатным BT4 стёком, там cortex m0.

Я вижу новый нордик с BLE стэком, но не нахожу модуля с ним, может плохо искал.
А во вторых, модули с нордиками обычно намного дороже $6 (HM-10)
:(
0
0 / 0 / 0
Регистрация: 11.09.2013
Сообщений: 269
15.04.2014, 14:09 12
Цитата Сообщение от яверт
Цитата Сообщение от homiysomb0
Очень хочется пообщаться с модулем из телефона - если мне надо было бы простой мастер-слэйв из двух модулей, я бы с BLE не стал заморачиваться..
У Bluegiga BT2.1 модулей есть спец. профиль для конфигурации по воздуху, можно подёргать ноги, считать АЦП, и ЕМНИП даже прошить...

Действительно, Bluegiga замечательный модуль! Единственное недостаток - он дороже HM-10 ровно в 7 раз. Понятное дело что к HM-10 я буду вешать дешевенький мк, но даже так Bluegiga выглядит роскошным решением, в прямом смысле этого слова.
0
omx
15.04.2014, 14:09 13
Цитата Сообщение от ImTuTb!
Ничего не понятно. У меня в телефоне БТ 4, робот хрен знает с каким БТ (4 года назад ставил). Работают вместе идеально (SPP). Ничего дополнительно не настраивал. Так в чем принципиальная разница/отличие БТ 4? Тот же SPP, такое же спаривание.
BLE не умеет SPP!
Отличия BLE и BT2.0:




Подытожить можно так: BLE разрабатывался для редкой передачи пары байт.
omx
15.04.2014, 14:14 14
Цитата Сообщение от homiysomb0
Задача номер 1 - просто послать AT тестовую команду из смарфона, и получить в ответ OK. LightBlue апп позволяет слать и принимать байтики. Вот если бы получилось как-то запихивать АТ команды из смартфона - остальное было б за малым, садим рядом какой-нить маложрущий msp430.

Мне надо изредка считывать показания сенсоров с телефона - BLE идеальный вариант для такой задачи.

Странно, проверил линк, у меня даташит открывается.
Для вас задача №1 - спарить пару этих модулей. Передавать AT команды в модуль из смартфона не получится. Между сенсором и модулем придётся ставить МК. Для передачи данных в смартфон надо будет разобраться как они сделали сервис эмуляции УАПП.

Вот ссылочки:
http://www.instructables.som/id/How-to- ... ooth-40-M/
https://github.som/domosf/hm10-omdroid-arduino
Кто-то уже его пробовал.
0 / 0 / 0
Регистрация: 11.09.2013
Сообщений: 269
15.04.2014, 14:17 15
Цитата Сообщение от omx
Хотя номер стандарт отличается всего-ничего, но 4 отличается от 2 принципиально. В 4.0 нету потоковой передачи данных.

Вкратце: у BLE сервера есть набор сервисов (бывают стандартные и нет). Каждый сервис имеет характеристики (длиной до 20 байт). МК (к которому подключён сервер) может читать/писать в характеристику, аналогично может делать и клиент. Отличие от синезуба 2 в том, что эти характеристики не работаю по принципу FIFO. Новая информация затирает то, что было до этого, а старая теряется, если её не успели вычитать.
omx, может вы знаете где можно почитать про BLE по делу (без маркетингового сахара), но доступным языком (английский сойдет вполне)?

Пока еще не разобрался толком, но уже из LightBlue аппа вижу слои: перифирия (девайс) -> сервис -> характеристика.
(В характеристику я могу вписать HEX).
0
0 / 0 / 0
Регистрация: 11.09.2013
Сообщений: 269
15.04.2014, 14:21 16
Цитата Сообщение от omx
Для вас задача №1 - спарить пару этих модулей. Передавать AT команды в модуль из смартфона не получится. Между сенсором и модулем придётся ставить МК. Для передачи данных в смартфон надо будет разобраться как они сделали сервис эмуляции УАПП.

Вот ссылочки:
http://www.instructables.som/id/How-to- ... ooth-40-M/
https://github.som/domosf/hm10-omdroid-arduino
Кто-то уже его пробовал.
Спасибо за совет - буду рыть в сторону эмуляции УАПП.
Кстати парень из линка в одном из постов "порулил" светодиодом из LightBlue аппа:) Значит как-то это можно реализовать.
0
0 / 0 / 0
Регистрация: 15.06.2012
Сообщений: 3,097
15.04.2014, 14:26 17
Цитата Сообщение от ImTuTb!
Ничего не понятно. У меня в телефоне БТ 4, робот хрен знает с каким БТ (4 года назад ставил). Работают вместе идеально (SPP). Ничего дополнительно не настраивал. Так в чем принципиальная разница/отличие БТ 4? Тот же SPP, такое же спаривание.
В телефонах с BT 4 обычно есть и BT2.1 стек, маркетологи в спеках этого правда не указывают... С БТ4 модулями и гаджетами всё совсем по другому - они зачастую умеют только BLE.
0
omx
15.04.2014, 14:30 18
Цитата Сообщение от homiysomb0
Кстати парень из линка в одном из постов "порулил" светодиодом из LightBlue аппа:) Значит как-то это можно реализовать.
Можно, когда вы разберётесь что и куда писать. Это довольно просто, если у вас есть МК, который рулит модулем.

Схема разбора примерно такая:
1. при разборе профиля модуля должен быть один сервис с 128-битным UUID.
2. Если 2 характеристики - то всё просто - одна на приём, одна на отправку.
3. Шлём много-много данных разнообразных модулю от МК. Читаем характеристики с телефона. Та что меняется - это на приём.
4. Сравниваем отправленные в модуль данные и те что пришли в характеристику. Возможно наличие заголовков и т.п.
5. Пробуем записывать в нужном формате (из п.4) данные в характеристику "на отправку" и сравниваем с тем, что принял МК.

Почитать можно стандарт, но там ну уж очень много букв. Так же можно почитать руководства к модулям/чипам (Bluegiga, TI, Nordic).
0 / 0 / 0
Регистрация: 11.09.2013
Сообщений: 269
15.04.2014, 14:36 19
Цитата Сообщение от omx
Можно, когда вы разберётесь что и куда писать. Это довольно просто, если у вас есть МК, который рулит модулем.

Схема разбора примерно такая:
1. при разборе профиля модуля должен быть один сервис с 128-битным UUID.
2. Если 2 характеристики - то всё просто - одна на приём, одна на отправку.
3. Шлём много-много данных разнообразных модулю от МК. Читаем характеристики с телефона. Та что меняется - это на приём.
4. Сравниваем отправленные в модуль данные и те что пришли в характеристику. Возможно наличие заголовков и т.п.
5. Пробуем записывать в нужном формате (из п.4) данные в характеристику "на отправку" и сравниваем с тем, что принял МК.

Почитать можно стандарт, но там ну уж очень много букв. Так же можно почитать руководства к модулям нормальных/чипам (Bluegiga, TI, Nordic).
Большое спасибо - все четко и по делу! Дома буду разбираться.
0
0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 115
20.04.2015, 11:13 20
http://www.huamaosoft.som/bluetooth.asp?ID=1
HM-12,13 умеют и BLE и SPP
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.04.2015, 11:13
Помогаю со студенческими работами здесь

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru