Перейти к содержанию
    

Всем добрый день.

Разыскиваю модуль в котором можно удаленно скорость задавать. Управляться будет с коммуникатора на андроиде.

Смотрел НС-05, цена очень хорошая, но скорость задается внешним хостом через АТ команды. Сейчас просматриваю доки на другие (BTM-ххх).

Может кто знает готовый ответ, какой модуль применить? :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

как вариант - включить рядом какую-нибудь Attiny, которая будет слушать трафик и по спец.команде отключать RX/TX, и перепрограммировать модуль

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я об этом думал, но хотелось бы все таки модуль с такой поддержкой.

в случае установки внешнего МК не обязательно RX/TX отключать и перепрограммировать модуль. Можно МК постоянно на 115200 общаться с модулем, а с конечным устройством(КУ) уже в зависимости от настроек, которые надо каждый раз передавать с хоста при поднятии линка. Реализовать транспортный протокол в котором будут 2 типа фреймов: 1й это инкапсуляция данных для КУ, 2й это менеджмент пакеты для МК. Но хотелось бы такого решения избежать.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Есть предположение, что HC-05 можно перепрограммировать, и второе предположение - что можно сделать лупбэк на uart и тогда команды принятые из воздуха будут транслироваться назад.

я пока не держал в руках модули, доку не вчитывался, публикую в рамках сырой идеи "попробовать"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Просмотрел LMX9838, таже самая фигня. Там ножками OP3,OP4,OP5 конфигурят скорость уарта.

 

SFx

Не охота колхозить. Лучше наверно реализовать транспортный протокол и инкапсулировать свои данные. Так будет правильней.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Просмотрел LMX9838, таже самая фигня. Там ножками OP3,OP4,OP5 конфигурят скорость уарта.

Если в нём (LMX9838) есть какие-либо GPIO, доступные удалённо (как в WT12), или хотя-бы сигналы CTS/DSR, которыми можно удалённо рулить по BT,

цепляете сдвиговый регистр на них, а параллельные выводы регистра - на ноги OP3,OP4,OP5. :biggrin:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Остановился на "CSR HC-06". Он поддерживает заливать в себя прошивку, писать можно в BlueLab(xIDE). Теоретически можно скорость UART менять. Но в тоже время надо знать с каким бауд-рейтом мастер открыл наш виртуальный UART порт. Я вижу несколько вариантов:

1. SPP профиль вообще не позволяет бауд-рейт мастера удаленно получить.

2. В андроиде могут быть ограничения имплементации(планируется с коммуникатора девайсом управлять).

3. Данные получить можно, но BlueLab этого не позволяет.

 

Подскажите кто имет опыт с чипами CSR и SPP работал? Решаемая задача вообще?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Есть такой готовый RS232-BT адаптер LM048, насколько понимаю, у него можно менять скорость удаленно.

LM048_RemoteAccessv1.0.pdf

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Остановился на "CSR HC-06". Он поддерживает заливать в себя прошивку,

 

Они все (-04/-05-06) поддерживают заливку прошивки, т.к. по железу одинаковые.

 

Подскажите кто имет опыт с чипами CSR и SPP работал? Решаемая задача вообще?

 

Решаемая. Только сразу берите и прошивальщик, т.к. по LPT уж больно уныло заливать - 15-20минут.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Bluelab та еще штука. Сделать в ней что-то у меня не хватило терпения.

Документации толковой я не нашел, только примеры вместе с bluelab.

Проект с блютуз делал на LMX9838.

Я бы лучше поставил внешний контроллер.

Почему вам не хочется его ставить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Всем добрый день.

Разыскиваю модуль в котором можно удаленно скорость задавать. Управляться будет с коммуникатора на андроиде.

Смотрел НС-05, цена очень хорошая, но скорость задается внешним хостом через АТ команды. Сейчас просматриваю доки на другие (BTM-ххх).

Может кто знает готовый ответ, какой модуль применить? :)

 

Если я Вас правильно понял, то цель "удаленно скорость задавать" - избежать переполнения буферов.

В таком случае сама постановка задачи не правильная!

Дело в том, что нижние протоколы (в данном случае RFCOMM на котором базируется SPP) имеют несколько встроенных механизмов Flow Control.

Поэтому правильнее вести речь о том, что полностью ли реализован стандарт в Ваших устройствах!

В Андроид - скорее всего да!

В модуле HC-05 возможны упрощения стека и ориентироваться (с макс.стороны) надо на скорость встроенного USART. И желательна буферизация при приеме/передаче на HC-05.

Именно по причине встроенного механизма Flow Control в протоколы, например при обмене между компьютерами ч/з Bluetooth ч/з виртуальный Com-port бессмыленно устанавливать скорость конкретного Com-port. Хоть Вы установите 4800, хоть 115000 результат будет одинаковый.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Именно по причине встроенного механизма Flow Control в протоколы, например при обмене между компьютерами ч/з Bluetooth ч/з виртуальный Com-port бессмыленно устанавливать скорость конкретного Com-port. Хоть Вы установите 4800, хоть 115000 результат будет одинаковый.

Ну не скажите. УстанОвите слишком маленький baudrate на локальном UART модуля - и скорость передачи данных у вас будет ограничиваться не скоростью раддиоканала

(как должно быть), а скоростью UART.

Вообще - нужно ставить максимальный baudrate который позволяет связка МК + BT-модуль и естественно - пользоваться флов-контролем (с обязательной буферизацией).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну не скажите....

 

Вы цитируете мой параграф, где речь идет о связи PC-Pc ч/з Bluetooth. Все что ранеем мной написано в этой части соответствует действительности! Там практически всегда в качестве транспортного протокола HCI применяется USB и оперционная система создает соответствущий виртуальный Com-port.

 

Что же касается связи с применением HC-05 (или подобных модулей с UART-ом в качестве транспорта HCI протокола) , то я указал что желательно использовать максимальную скорость UART ( было написано "с макс.стороны").

 

Но мысль моя была в том, что даже если Вы установите UART в модуле на очень низкую скорость - не произойдет переполнение буферов из-за втроенного в протоколы (в частности RFCOMM) Flow Control! Просто Вы "зарежите" сквозную пропускную способность канала Bluetooth!

 

Это все верно, если в модуле эта часть стека протокола обрабатывается не по упрощенной схеме, а полноценно!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Есть такой готовый RS232-BT адаптер LM048, насколько понимаю, у него можно менять скорость удаленно.

Не подходит. Я делаю ус-во в своей коробочке, пихать туда сторонние продукты не подходит.

Причем подозреваю что в этом адаптере тоже проц стоит. Управляется он через ESC постелодвательности, скорость уарта таким же образом задается. Прозрачного и полноценного UART все равно он не предоставляет.

 

Если я Вас правильно понял, то цель "удаленно скорость задавать" - избежать переполнения буферов.

Вы неправильно поняли. У меня на удаленной стороне, на слейве, висит мой девайсик. Его скорость уарта задается настройками. Т.е. хост приложение открыло КОМ порт на 115200, передало настройку "работать на 9600" и железка сразу же переключилась на эту скорость. Хост тоже переоткрыл порт на 9600.

 

Именно по причине встроенного механизма Flow Control в протоколы, например при обмене между компьютерами ч/з Bluetooth ч/з виртуальный Com-port бессмыленно устанавливать скорость конкретного Com-port. Хоть Вы установите 4800, хоть 115000 результат будет одинаковый.

Почему это бессмысленно? Когда вы открываете COM порт (CDC) и указываете скорость, UART в той же FTDI именно с этой скоростью и работает.

 

Я бы лучше поставил внешний контроллер.

Почему вам не хочется его ставить?

Уже поставил. Не хотелось ставить чтобы прошивку не писать и не заливать при производстве..

 

Решаемая. Только сразу берите и прошивальщик, т.к. по LPT уж больно уныло заливать - 15-20минут.

Подскажите как он хоть выглядит. Я ничего не нагуглил, только LPT по ссылкам находил. У меня в ПК такого раритета нету.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите как он хоть выглядит. Я ничего не нагуглил, только LPT по ссылкам находил. У меня в ПК такого раритета нету.

 

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

 

 

УПД. Внезапно нашлось такое. Насколько я понял, из HC04 получается оригинальный USB<>SPI. LPT хоть и нужен, но один раз. Надо будет попробовать.

УПД2. упс

First, you should buy some BlueCore3-Multimedia External bluetooth modules

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...