Купил 2 bluetooth модуля и не один не обнаружается

bloodwolf
Offline
Зарегистрирован: 15.05.2012

Здравствуйте уважаемые форумчани ! Я столкнулся с проблемой, купил bluetooth btm112 припаял его выходы 3v3 и GND к Arduino uno, произвел поиск Bluetooth устройств с телефона и даже с ПК (2 ноута 1 со встроеным БТ другой с внешним) и нечего не обнаружил, далее купил еще один бт  btm180 ефект такой же, пожалуйста поскажите, в чем может бить проблема? может я чтото не так делаю ? 

leshak
Offline
Зарегистрирован: 29.09.2011

>припаял его выходы 3v3 и GND

Гм. А нафига? И какие выводу? У него, судя по даташиту их фигова туча (кстати могли бы и дать ссылочку на даташит сразу).

Или это вы так питание выходом обозвали?

Во вторых. По аналогоии с телефономи и блютусами, можно предположить что ему нужно включить "режим видимости". Я же так понимаю он "далеко не тупой" и скорее всего требует какой-то инициализации через UART или SPI, подать какие-то команды, насетапить его. Даташит вычитывать внимательно нужно.

В третитьх, судя по всем он трех-вольтовый, поэтому линии данных нужно согласовывать с 5-ти вольтовой ардуиной. Иначе спалить его - не долго.

vworld
vworld аватар
Offline
Зарегистрирован: 26.09.2011

Подключил блутус к ардуино
следующим образом:

3.3v — к 3.3 В от Arduino
GND — к GND Arduino
RX — к TX Arduino
TX — к RX Arduino
в сети видно устройство, как linvol
в Termite вижу отправку данных в COM порт, но вот странное дело… у меня в схеме ЖК на регистре сдвига с регулировкой подсветки и набором различных датчиков… так вот беда в том, что при подключенном блутусе индикации на модуле нет, но мигает подсветка ЖК :(
В чем может быть причина такого?

robocraft.ru/shop/index.php?route=product/product&path=39&product_id=64
вот такой экран…

Tassadar
Offline
Зарегистрирован: 21.04.2012

To vworld:

Тупо не хватает питания. У меня такая же штука происходит, особенно когда БТ модуль ещё не сконнектился - он находится в режиме поиска и потребляет больше. Если откинуть других потребителей, то всё ОК.

vworld
vworld аватар
Offline
Зарегистрирован: 26.09.2011

под рукой есть разъем под крону с проводками и сама крона...сейчас ардуино запита через USB...как лучше подключить крону?

Tassadar
Offline
Зарегистрирован: 21.04.2012

У меня крона со штекером "по стандартному" в ардуину втыкается. В этом случае ардуина сама выбирает - USB или внешнее питание.

Проводками, я бы делал так: вынул усб на всякий случай, а  землю и 9В батарейки воткнул соответственно в GND и VIN ардуины. Сам я  "с тыла" не втыкал питание и в этом не особенно копенгаген, так что на свой страх и риск. А вообще говоря, наверное без разницы, что через штекер питание, что через VIN, по крайней мере видел тут, как запитывали ардуину пятью вольтами на пин 5В ардуины. Но это, повторюсь мной не проверялось лично. И схему платы я не смотрел внимательно. :)

vworld
vworld аватар
Offline
Зарегистрирован: 26.09.2011

ну вот ступил я :( не купил штекер под разъем питания ардуино :(

а так бы если был то конечно же бы его использовал...

leshak
Offline
Зарегистрирован: 29.09.2011

Tassadar пишет:

 А вообще говоря, наверное без разницы, что через штекер питание, что через VIN ... И схему платы я не смотрел внимательно

Верное. Без разницы. Если посмотрите схему, то увидите что VIN и штекер питания - это одно и тоже. Они тупо соеденены напрямую.

 

Tassadar пишет:

 по крайней мере видел тут, как запитывали ардуину пятью вольтами на пин 5В ардуины. 

А вот 5v pin - уже другая песня. Если питать через него, то нужно подавать ровно 5v. Не больше.  А на vin нужно давать от 7.5v до 12v (а лучше не превышать 9v, на 12 на некоторых платах, особенно китайских, регулятор начинает грется на 12v).

Этим и отличается 5v от vin. Они соотносятся примерно так:  vin(штекер)->регулятор питания->5v pin -> сам камень.

На регуляторе питания тереяется, минимум, от 1.5 до 2.5v (в зависимости от регулятора). Поэтому на vin нужно давать минимум 7v.

 

leshak
Offline
Зарегистрирован: 29.09.2011

 И кстати, на некоторых ардуинах  для образование 3.3v используется отдельный регулятор, а на некоторых для этого юзается FTDI чип (есть у него такая "побочная функция"). Но это для этого, если честно, весьма хил. Только небольшие токи может выдать. Поэтому нужно еще на саму дуину смотреть, если у нее два регулятора (один для 5v, другой для 3.3v) - все хорошо. А вот если только один - возможно прийдется самому собирать отдельный для 3.3v.

По крайней мере у меня с Ethernet шилдом был такой танец. Вроде работает, но не стабильно. Померял напряженение на 3.3 пине, а там только 2.8v под нагрузкой. Сделал внешний регулятор - все запахало.

vworld
vworld аватар
Offline
Зарегистрирован: 26.09.2011

сделал подключение от кроны по средствам gnd&vin - при подключеном модуле блутуса подсветка у ЖК все равно моргает :(

leshak
Offline
Зарегистрирован: 29.09.2011

 Промеряйте какое напряжение в этот момент у вас на 5v пине и на 3.3v пине.

Ну и "схему подключиня" и скетч в студию. Мало-ли где хомутнули.

 А если "модуль подключить, но ничего с ним в скетче не делать", работать только с экраном - тоже моргает?

Tassadar
Offline
Зарегистрирован: 21.04.2012

Откинуть RX и TX с блютуса. Картина изменилась?

vworld
vworld аватар
Offline
Зарегистрирован: 26.09.2011

3.3v — к 3.3 В от Arduino
GND — к GND Arduino
RX — к TX Arduino
TX — к RX Arduino

вот так модуль подключил к ардуино....

а в скетче с ЖК делается только одно - вывод значения температуры с датчика температуры...

сейчас думаю сделать так - отцепить все от ардуино и подключить только модуль блутуса и посомтреть что будет...

в общем добаловался с модулем блутус...сейчас ситема находит "Другое Bluetooth" и соответсвенно подключиться не может к нему :( - При попытке добавления устройства произошла неизвестная ошибка. Возвращенный код ошибки 0x80004005...

leshak
Offline
Зарегистрирован: 29.09.2011

 >вот так модуль подключил к ардуино....

А в чем смысл повторять инфу которую вы дали пару постов назад? Подозрение раз что-то спрашивают то значит инфа не полная не возникала?

По этому вашему ответу можно дать только один совет: подключите модуль ЖК. Из вашего описания следует что он вообще не подключен.

>сейчас думаю сделать так - отцепить все от ардуино и подключить только модуль блутуса

Прикольно. Два человека спросли что будет если отключить модуль блупуп (я "не трогать программно", Tassadar - железно). Вы же пошли по пути "отключить все" кроме блутуса (у вас еще что-то нацеплено к ардуине?).

>а в скетче с ЖК делается только одно - вывод значения температуры

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

P.S. А модуль блутуса вы имели все шансы упалить. Возможная причина в посте #1, раздел "в третих".

 

 

polk
Offline
Зарегистрирован: 13.03.2011

 А если блютуфу нужно 3,3В питания, то не нужно ли делать согласование напряжения на RX-TX соединение?

 

polk
Offline
Зарегистрирован: 13.03.2011

 пардон. уже написали

vworld
vworld аватар
Offline
Зарегистрирован: 26.09.2011

на сколько мне известно из прочитанного в инете данный модуль работает как на 3,3В так и на 5В.

после всех проблем и пикировок уважаемых форумчан таки модуль оказался живой...по крайней мере я к нему подключился с компа...в системе образовалось 2а СОМ порта

скетч

enum { LED_PIN = 13 };
enum LedState { LED_ON, LED_OFF, LED_BLINK };

LedState led_state;

void setup()
{
  led_state = LED_OFF;
  pinMode(LED_PIN, OUTPUT);
  
  Serial.begin(38400);
}

void loop()
{  
  if (Serial.available())
  {
    char command = Serial.read();
    
    switch (command)
    {
      case '1': led_state = LED_ON; break;
      case '0': led_state = LED_OFF; break;
      case '*': led_state = LED_BLINK; break;
      
      default:
      {
        for (int i = 0; i < 5; ++i)
        {
          digitalWrite(LED_PIN, HIGH);
          delay(50);
          digitalWrite(LED_PIN, LOW);
          delay(50);
        }
      }
    }
  }
  
  switch (led_state)
  {
    case LED_ON: digitalWrite(LED_PIN, HIGH); break;
    case LED_OFF: digitalWrite(LED_PIN, LOW); break;
    
    case LED_BLINK:
    {
      static unsigned long start_millis = 0;
      
      if (millis() - start_millis >= 300)
      {
        start_millis = millis();
        digitalWrite(LED_PIN, !digitalRead(LED_PIN));
      }
    }
  }
}

если в Termite использовать СОМ от USB, то все работает четко, если выбирать СОМ12, СОМ13, которые от блутуса, то Termit зависает

И еще конечно же я в скетче менял скорость на 9600

З.Ы. делал по http://robocraft.ru/blog/electronics/587.html

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

Ещё хотел бы отметить, что вместо Termit мне оказалось удобнее использовать Putty удобство в том, что команды сразу транслируются в ардуино, т.е. ентер не нужно нажимать....

Ещё одно расстройство добавилось - питание ардуино, а именно подключил крону GND, VIN за 2часа работы ардуины и блутус модуля крона расходуется в лет :(

Так и должно быть?

denchic129
Offline
Зарегистрирован: 27.03.2013

не  могли  скинуть  схему  подключения  btm112  к  ARDUINO    ЕСЛИ  НЕ  ЗАТРУДНИТ

ВОТ  МЫЛО  denlapaev@rambler.ru

dmitrydi
Offline
Зарегистрирован: 31.03.2013

Уважаемые форумчане!

Я прочитал всю ветку со вниманием - но все-таки вот какой вопрос:

- Питание Arduino Uno через внешний разъем платы = 9вольт;

- в разъеме USB платы внешний модуль BlueTooth (то есть такой же, что втыкается в ПК разъем USB);

- это достаточно, чтобы ПК и плата подружились?

С уважением. кандидат технических наук, чайник ардуинных наук 

dmitrydi

leshak
Offline
Зарегистрирован: 29.09.2011

>- в разъеме USB платы внешний модуль BlueTooth (то есть такой же, что втыкается в ПК разъем USB);

Нет. Забудте про это. Не подключите вы его к дуине. Обычные блюпуп-донглы не пойдут. Покупайте отдельный модуль.

dmitrydi
Offline
Зарегистрирован: 31.03.2013

Уважаемый leshak!

Какие материалы Вы посоветуете посмотреть, чтобы понять аргументированность Вашего ответа?

dmitrydi

leshak
Offline
Зарегистрирован: 29.09.2011

Уважаемый dmitrydi

А существуют ли материалы доказывающие не существование невидимого и неосязаемого носорога? Их в принципе не может быть. Точно так же вы не найдете материалов описывающих почему Windows-8 нельзя установить на ZX-спектрум. Материалы могут быть только для существующих предметов/схем.

Можно взять перечень "что требуется Win8" и смотреть что из этого есть в наличии у ZX. И по отсуствию необходимого - понять что "не запустится".

Точно так же и с USB донглом. Составить список "что ему нужно для работы" и гуглить искать что из этого вы можете предоставить ему со стороны ардуины (host, драйвера, питание).

А вообще, на форуме тема поднималась не раз и не два. Буквально пару дней назад, к примеру связь Arduino Mega и ПК по блютуз без шилдов | Аппаратная платформа Arduino

А можете еще проще понять аргументацию. Представте себе что "вы воткнули и все работает". У вас, естественно, встанет вопрос "а как прочитать что-то из него". После этого - берете гугл и пытаетесь найти какой-нибудь пример/библиотеку для этого. Вряд ли что-то найдете.

Или еще проще. Вам не первому пришла в голову эта идея (подключать обычный донгл к дуине). Опять-таки гуглом, попробуйте найти статьи описывающие такое подключение.... вообщем это опять "неосязаемый носорог".

P.S. Подписываться в каждом посте - не обязательно. Ваше имя и так видно, слева от каждого вашего сообщения. Не в смысле "не нужно так делать". Если вам нравится - пожалуста, можете подписывать, вряд ли это кому-то мешает. Просто - не обязательно.

P.S.S. Если хочется, все-таки, что-то почитать, то можно почитать спецификации USB для начала. Хотя-бы бегло обзорно. Общую архитектуру. И понять в роли кого у вас, при такой схеме будет выступать донгл, и в роли кого - ардуина