Технический форум по робототехнике.
Delirium » 21 ноя 2011, 13:16
Проблема с подключением bluetooth модуля BTM-112 (slave) к смартфону HTC на ОС Android 2.3.
Смартфон модуль видит как Serial Adapter, требует ввести pin-код (1234), но затем пишет "Соединено.Отключено."
При попытке подключить модуль из программки типа "
http://developer.android.com/resources/samples/BluetoothChat/index.html" даже до ввода pin'а дело не доходит (пишет, что device connected, но модуль остается неподключенным).
Может проблема в UUID? Использую UUID "00001101-0000-1000-8000-00805F9B34FB" для Bluetooth RFCOMM / SPP (из статьи
http://radiomaster.com.ua/1586-android-bluetooth-oscillograf.html)
При этом с ПК (ОС Win XP) модуль соединяется нормально.
Если сталкивались с подобными проблемами, и/или есть соображения по решению, пожалуйста поделитесь.)
Datasheet модуля
http://www.sparkfun.com/datasheets/Wireless/Bluetooth/BTM112_wATcommands.pdf
=DeaD= » 21 ноя 2011, 13:22
У меня BTM-111 от RAINSUN, у них пин-код 0000. Попробуйте.
Delirium » 21 ноя 2011, 13:28
Я пробовал, ПК соединяется с модулем только с пином 1234, и работает. С 0000 пишет, что соединения не произошло (как смартфон, так и ПК), причина - неправильный pin.
Romeo » 21 ноя 2011, 15:00
Вот эта прога определяет у меня плату OR-BTM-115.2 без проблем и шлёт на неё команды. PIN 0000.
- Вложения
-
DROiD_D2.rar
- (1.17 МиБ) Скачиваний: 0
Delirium » 21 ноя 2011, 15:28
Romeo писал(а):Вот эта прога определяет у меня плату OR-BTM-115.2 без проблем и шлёт на неё команды. PIN 0000.
Спасибо, установил, но девайс прога так и не подключила, пишет, нужно проверить включен ли он (модуль включен), телефон его определяет, странно... При этом с компом конектится без проблем. Пин-код ступудова 1234 (на моем модуле BTM-112), с другим пин'ом он выдает ошибку соединения.
Delirium » 21 ноя 2011, 21:42
Модуль кстати нужен, чтобы всякие крутилки-вертелки к телефону подвязать.) Тестовой прогой уже управляю вертолетом-игрушкой с ПК, для android тоже часть программы написана, осталось с bluetooth connect'ом разобраться. Но что-то пока не могу найти ответ.
Вот товарищ мигает светодиодами
http://www.hsapps.com/ambient-lights/articles/ambient-lights.html именно с помощью этого модуля BTM-112 и ОС Android, только коды не выложил, а жаль.(
Может его как-то настраивать нужно для коннекта с телефоном?
Romeo » 21 ноя 2011, 21:53
Delirium писал(а):... только коды не выложил, а жаль.(...
На Java пойдёт?
- Вложения
-
RemoteBluetooth.rar
- а это из инета
- (173.24 КиБ) Скачиваний: 0
-
BT Client (рабочий).rar
- это свой
- (5.3 КиБ) Скачиваний: 0
Delirium » 21 ноя 2011, 22:14
Спасибо Romeo, буду разбираться.) Хорошо, если дело только в моем криворуком программировании, а с железом все ок.
Delirium » 22 ноя 2011, 15:50
Обращение к автору статьи, который
решило проблему.)
Выяснилось, что для HTC рекомендованный гугловский подход к получения BluetoothSocket не работает. Зато работает другой:
- Код: Выделить всё • Развернуть
/* Не работает:
* socket = device.createRfcommSocketToServiceRecord(MY_UUID)
*/
Method m = device.getClass().getMethod("createRfcommSocket",
new Class[] { int.class });
socket = (BluetoothSocket)m.invoke(device, Integer.valueOf(1));
Подтверждение нашел здесь
http://lonelyelk.ru/posts/40.
Переделал приложение по указанным рекомендациям - BTM-112 и мой HTC Wildfire соединились.)
Romeo » 22 ноя 2011, 17:41
Поздравляю!
Delirium » 22 ноя 2011, 17:47
Спасибо!) Теперь работа над android'ным bluetooth вертолетом продолжится!
Vooon » 23 ноя 2011, 22:57
Что-то страшный метод, больше похожий на хак.
Delirium » 23 ноя 2011, 23:18
Vooon
Видимо так и есть... Но это метод пока единственный работающий (у меня).)
Delirium » 28 дек 2011, 17:33
Вот что, с помощью этого модуля, получилось
http://yrezz.livejournal.com/17510.html
Delirium » 04 янв 2012, 22:03