Подключение HM-11 BLE Module к Arduino Uno

suhamera
Offline
Зарегистрирован: 01.05.2014

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

Если со всякими датчиками проблем нет, то с подключением BT - ряд проблем, если сможете помочь - будет супер!

Итак: Есть новенький модуль BT HM-11 BLE, который только появился и еще нет информации как его подключить.К нему есть описание распиновки, причем на сайте магазина она отличается от сайта производителя. Т.е. первые 4 пина на разных схемах отличаются - я припаял выходы ко всем 4м.

Первый вопрос - как определить - какая же схема верна и найти правильный пин для RX и TX? Есть еще оди нвопрос - как понять где на плате TOP View?

Вторая часть вопроса больше программная: Для того, чтобы читать и писать в BT - я переопределил стандартные пины 2 и 3 с помощью "софтверного сериного порта":

#include <SoftwareSerial.h>
#define rxPin 2
#define txPin 3
SoftwareSerial mySerial(rxPin,txPin);

mySerial.begin(9600); 

Потом пытаюсь в него писать и читать что он вернет:

Serial.println("AT:"); 
mySerial.print("AT"); 
Serial.write(mySerial.read());
Serial.write("-");
На выходе получаю что-то типа:
:
-AT:
-AT:
-AT:
-A

 

 
Кто-то может помочь что не так?
Vasia.Z
Vasia.Z аватар
Offline
Зарегистрирован: 30.11.2013

Топ вью это вид сверху, rx and tx и там, и там указаны одинаково

suhamera
Offline
Зарегистрирован: 01.05.2014

Ну то, что TOP View - это вид сверху, это понятно, но как понять - какой вид является видом сверху?

Что касается выходов, ну как же:

На wiki магазина

Pin 1 UART_TX

Pin 2   UART_RX

 

В документации - раздел 1.7: 

Pin 2   UART_TX

Pin 4   UART_RX

Или я не правильно все понял?

 

 

Vasia.Z
Vasia.Z аватар
Offline
Зарегистрирован: 30.11.2013

suhamera пишет:

Ну то, что TOP View - это вид сверху, это понятно, но как понять - какой вид является видом сверху?

Что касается выходов, ну как же:

На wiki магазина

Pin 1 UART_TX

Pin 2   UART_RX

 

В документации - раздел 1.7: 

Pin 2   UART_TX

Pin 4   UART_RX

Или я не правильно все понял?

У hm-11 пинов (контактов) меньше, чем у hm-10. В многих даташитах, которые нагуглились, написано что у hm-11 ТХ и RХ это 2 и 4 контакты, а у hm-10 - 1 и 2 --> вики seeedstuduo наверное врет. https://www.dropbox.com/s/cff0ftu7tc3qirq/Bluetooth40_en.pdf

 Поэкспериментируйте, в конце концов:)

suhamera
Offline
Зарегистрирован: 01.05.2014

Дык в том-то и дело, что я даже понять не могу - работает этот модуль или нет!

С одной стороны он вроде как находится приложениями, но при всех моих попытках заципить его за Arduino - так и не заработал:

 - пробовал пины 1 и 2, а так же 2 и 4.

 - пробовал разные пины на Arduino делать с помощью SoftwareSerial

 - пробовал подключать tx-tx, rx-rx(ну а вдруг) и конечно tx-rx, rx-tx

При всех ппытках с Arduino написать AT, никакого ответа нет.

Vasia.Z
Vasia.Z аватар
Offline
Зарегистрирован: 30.11.2013

suhamera пишет:

Дык в том-то и дело, что я даже понять не могу - работает этот модуль или нет!

С одной стороны он вроде как находится приложениями, но при всех моих попытках заципить его за Arduino - так и не заработал:

 - пробовал пины 1 и 2, а так же 2 и 4.

 - пробовал разные пины на Arduino делать с помощью SoftwareSerial

 - пробовал подключать tx-tx, rx-rx(ну а вдруг) и конечно tx-rx, rx-tx

При всех ппытках с Arduino написать AT, никакого ответа нет.

Соедините на ардуине rst и gnd, модуль цепляйте к 0 и 1 пинам ардуины (если у вас не леонардо, конечно).

gena
Offline
Зарегистрирован: 04.11.2012

    Для проверки модуля я бы поступил так. Запитайте Ваш модуль напряжением, согласно документации. Замкните между собой  выводы Rx и Tx на модуле. С помощью ноутбука или блютуз-донгла найдите (в эфире) Ваше устройство. Запустите какую либо терминальную программу (я предпочитаю пользоваться "Termite 2.9"). Отправляйте из программы символы - должен прийти ответ от HM-11 BLE. Если не приходит - перебирайте скорости в программе, подключайте/отключайте при передаче символы CR, LF (смотреть настройки в терминальной программе). О полученных результатах отписывайтесь. Ардуина на данном этапе - преждевременна.

suhamera
Offline
Зарегистрирован: 01.05.2014

gena пишет:

    Для проверки модуля я бы поступил так. Запитайте Ваш модуль напряжением, согласно документации. Замкните между собой  выводы Rx и Tx на модуле. С помощью ноутбука или блютуз-донгла найдите (в эфире) Ваше устройство. Запустите какую либо терминальную программу (я предпочитаю пользоваться "Termite 2.9"). Отправляйте из программы символы - должен прийти ответ от HM-11 BLE. Если не приходит - перебирайте скорости в программе, подключайте/отключайте при передаче символы CR, LF (смотреть настройки в терминальной программе). О полученных результатах отписывайтесь. Ардуина на данном этапе - преждевременна.

Спасибо за идею! Попробовал, как только отключаешь от портов RX\TX на Arduino - сразу перестает находиться :(

Попробовал оставить подключенным к Arduino и замкнуть оба порта - перестает находиться.

gena
Offline
Зарегистрирован: 04.11.2012

Я вот не понял: а при каких условиях Вы её находите, если "...Попробовал, как только отключаешь от портов RX\TX на Arduino - сразу ПЕРЕСТАЁТ находиться :(.....".  Плата Ардуины для такого эксперимента вообще не нужна, уберите её вообще со стола, что бы не мешала. Каким напряжением запитываете HM-11 BLE? Где его берёте?

suhamera
Offline
Зарегистрирован: 01.05.2014

Для питания HM-11 BLE мне нужно 3.3V на 9 Pin и землю на 12. Т.к. никакого другого источника питания кроме Arduino у меня нет, то я плату использую для питания HM-11 BLE. 

gena
Offline
Зарегистрирован: 04.11.2012

  А что получается, если делать как я советую (от Ардуины брать ТОЛЬКО питание)? Желательно ссылку на схему Вашей платы.

suhamera
Offline
Зарегистрирован: 01.05.2014

Если только питание и землю - плата по BT не находится.

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

2 UART_TX
4 UART_RX

Сыылка: http://www.seeedstudio.com/wiki/Bluetooth_V4.0_HM-11_BLE_Module

suhamera
Offline
Зарегистрирован: 01.05.2014

gena пишет:

  А что получается, если делать как я советую (от Ардуины брать ТОЛЬКО питание)? Желательно ссылку на схему Вашей платы.

Спасибо большое за помощь, разобрался! В общем распайка была не правильная - перепутал top view. Теперь плата ожила и можно дальше с ней разбираться :) 

ogrenich
Offline
Зарегистрирован: 30.09.2014

suhamera пишет:

Спасибо большое за помощь, разобрался! В общем распайка была не правильная - перепутал top view. Теперь плата ожила и можно дальше с ней разбираться :) 

Выложите, пожалуйста, итоговый скетч. У меня связка Arduino Pro Mini и HM-11, никак не могу понять как разбирать данные от HM-11, приходят непонятные символы постоянно.