CADiLO 1 April 5, 2018 Posted April 5, 2018 · Report post Документация на ваш шилд от производителя, со схемой, лежит тут: http://www.tuxti.com.br/arquivos/arduino/m...SIM808_V3.1.rar Наконец то я увидел китайский шилд где сделали правильно согласование уровней и вообще нормальная схемотехника. Quote Share this post Link to post Share on other sites More sharing options...
alex2103 0 April 5, 2018 Posted April 5, 2018 · Report post Чтобы не гадать на кофейной гуще, следует сразу же приводить лог обмена с модулем. Желательно и в текстовой и в бинарной форме. Тут никто, я думаю, не обладает способностями увидеть экран вашей терминалки. Что-то я сходу не могу придумать как снять лог обмена т.к. там используется мультиплексор. Писать какой-то велосипед чтоб это все распарсить и красиво показать пока что нет времени... Может кто-то сталкивался и знает решение как снять лог обмена по CMUX подручными средствами? С уверенностью могу сказать что после AT+BTSPPSEND на uart полная тишина. Где-то тут ранее проскакивало что на sim800c нет одновременно BT и CMUX. Я обрадовался что все-таки есть. Из BT активно использую AT+BTSCAN - все работает хорошо, но иногда тоже есть проблема - UART начинает молчать. Лечится перезагрузкой модуля. Частота зависаний зависит от частоты вызова AT+BTSCAN. Если не делать паузы после окончания сканирования (+BTSCAN: 1), то зависает часто. В итоге пришел к паузе 2,5с. В sim800 BT реализован где-то криво именно в части общения c UART. Quote Share this post Link to post Share on other sites More sharing options...
CADiLO 1 April 5, 2018 Posted April 5, 2018 · Report post >>>Где-то тут ранее проскакивало что на sim800c нет одновременно BT и CMUX. Да, это было в некоторых прошивках с EAT. Есть такая чудная команда - AT+CLIST Она показывает что реализовано в модуле Если дать AT+CLIST=<группа>, то покажет все доступные команды в этой группе. Quote Share this post Link to post Share on other sites More sharing options...
alex2103 0 April 5, 2018 Posted April 5, 2018 · Report post AT+CLIST=BT +CLIST: 001: BTPOWER 002: BTHOST 003: BTSTATUS 004: BTRSSI 005: BTVIS 006: BTCOD 007: BTSCAN 008: BTPAIR 009: BTUNPAIR 010: BTGETPROF 011: BTCONNECT 012: BTDISCONN 013: BTACPT 014: BTPAIRCFG 015: BTOPPACPT 016: BTOPPPUSH 017: BTSPPCFD 018: BTSPPSEND 019: BTSPPGET 020: BTSPPCFG 021: BTSPPURC 022: BTATA 023: BTATD 024: BTVTS 025: BTATDL 026: BTATH 027: BTVGS 028: BTVGM 029: BTCLCCS 030: BTCIND 031: BTPBSYNC 032: BTPBF 033: BTRING 034: BTACI 035: BTHFGOP OK Вырубил CMUX... at+btsppsend работает. Quote Share this post Link to post Share on other sites More sharing options...
jcxz 51 April 5, 2018 Posted April 5, 2018 · Report post Что-то я сходу не могу придумать как снять лог обмена т.к. там используется мультиплексор. Писать какой-то велосипед чтоб это все распарсить и красиво показать пока что нет времени... Может кто-то сталкивался и знает решение как снять лог обмена по CMUX подручными средствами? Вы писали ранее, что пробовали и без CMUX AT+BTSPPSEND пробовал в разных вариациях. И с мультиконектом и без. Приглашение на ввод строки никогда не появляется. Так выложите без. Что такого сложного в снятии лога? Печатаете (printf) весь обмен в отладочный UART на комп (с метками времени и метками приём/передача) и сохраняете его в файл любой терминалкой. Но более достоверно и независимо (чтобы исключить ошибки в своём коде): берёте два COM-порта и на их входы RxD заводите TxD и RxD с UART-а между МК и модулем. Данные из этих двух COM-портов также сохраняете в файл терминалке на компе. С метками времени обязательно! Документация на ваш шилд от производителя, со схемой, лежит тут: Спасибо! Я полный этот архив не находил, только его части. Хотя уже наверное и не нужно - проблема не в схеме, а в SIM808. Наконец то я увидел китайский шилд где сделали правильно согласование уровней и вообще нормальная схемотехника. Ну не особо то и правильно - TxD, RxD как-то согласованы, но вот остальные сигналы - CTS, RTS, ... - нет. Сейчас заказали вот этот: https://www.mikroe.com/gsmgnss-2-click#heading1 Ссылка на принципиальную схему есть внизу страницы. Согласование уровней сигналов тут сделано лучше, даже лампочки подключены аккуратно - через транзисторы, а не напрямую к пинам модуля как на плате с SIM808. Но вот с питанием какая-то лажа. :(((( Использованный здесь MCP1826 судя по даташиту может отдать только 1А, что как бы маловато для SIM868. :( Quote Share this post Link to post Share on other sites More sharing options...
alex2103 0 April 5, 2018 Posted April 5, 2018 · Report post Про мультиконектом я подразумевал мультиконект bluetooth. Не путайте его с CMUX Quote Share this post Link to post Share on other sites More sharing options...
CADiLO 1 April 5, 2018 Posted April 5, 2018 · Report post >>>Ну не особо то и правильно - TxD, RxD как-то согласованы, но вот остальные сигналы - CTS, RTS, ... - нет. По сравнению с тем что раньше видел - уже прогресс. >>>Ссылка на принципиальную схему есть внизу страницы. USB не вывели - очень не помешало бы VRTC в воздухе - а 4.7 мкф там должен стоять STATUS и DTR тоже наружу бы не помешали ну и совсем прикол - развели уже SD карточку, так поставьте и второй SIM держатель. Quote Share this post Link to post Share on other sites More sharing options...
jcxz 51 April 5, 2018 Posted April 5, 2018 · Report post Про мультиконектом я подразумевал мультиконект bluetooth. Не путайте его с CMUX Это Вы тут всех путаете. На SIM800C нет мультиконнекта BT. Если верить доке: MTK6261 platforms: SIM808, SIM800C, SIM800A, SIM800F. ... For the MTK6261 and MTK2503 platform module, only supports the simultaneous connection of 1 device. Как Вы могли пробовать то, чего нет? VRTC в воздухе - а 4.7 мкф там должен стоять Учтём. Спасибо. ну и совсем прикол - развели уже SD карточку, так поставьте и второй SIM держатель. Это у них в этот разъём одновременно и микро-SIM-ка и микро-SD ставятся что-ль? Quote Share this post Link to post Share on other sites More sharing options...
CADiLO 1 April 5, 2018 Posted April 5, 2018 · Report post >>>Это у них в этот разъём одновременно и микро-SIM-ка и микро-SD ставятся что-ль? Нет, раздельно - выводы под вторую SIM на брюхе модуля просто оставили в воздухе. Можно было бы просто поставить совмещенный держатель и был бы двухкарточник. Quote Share this post Link to post Share on other sites More sharing options...
alex2103 0 April 5, 2018 Posted April 5, 2018 · Report post Это Вы тут всех путаете. На SIM800C нет мультиконнекта BT. Если верить доке: MTK6261 platforms: SIM808, SIM800C, SIM800A, SIM800F. ... For the MTK6261 and MTK2503 platform module, only supports the simultaneous connection of 1 device. Как Вы могли пробовать то, чего нет? Да вот так: AT+BTSPPCFG="MC",1 OK AT+BTSPPCFG="MC",2 +BTSPPCFG: MC,1 OK +BTSPPDATA: 1,8,blabla Реально правда второе соединение не проверял т.к. не нужно мне это. Quote Share this post Link to post Share on other sites More sharing options...
alex2103 0 April 5, 2018 Posted April 5, 2018 · Report post Продолжаю раскопки :) Проблема оказалась не в CMUX...к сожалению она глубже закопана :( AT+BTSPPSEND работает только до того момента как я не начинаю PPP сессию. Ниже ситуация когда я после CONNECT OK специально не запустил PPP и мы видим входящие LCP пакеты. После какого-то таймаута (я же молчу) происходит NO CARRIER и AT+BTSPPSEND чудно заработала. Чтобы проверить реакцию на АТ команды несколько раз отправлял at и получал OK В лог валится все что приходит от модуля. Мои же команды отправляются в 3-й канал CMUX. PPP поднимается по 1-му каналу CMUX. ATD*99***1# CONNECT OK +BTSPPDATA: 1,3,fgh [i]- это я отправил с телефона и оно дошло т.е. SPP соединение открыто и работает[/i] AT+BTSPPSEND [i]- в ответ тишина[/i] ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ [i]<- LCP[/i] ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ AT+BTSPPSEND [i]- в ответ тишина[/i] ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ AT+BTSPPSEND [i]- в ответ тишина[/i] ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ at [i]- проверяю реакцию на AT[/i] OK at OK[i]- проверяю реакцию на AT[/i] ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ AT+BTSPPSEND [i]- в ответ тишина[/i] ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ ~{FF}}#А!}!}!} }2}"}&} }*} } }#}$А#}'}"}(}"Uѓ~ AT+BTSPPSEND [i]- заработало!!![/i] NO CARRIER > ertwetet SEND OK Еще поэкспериментировал. Если дать PPP соединению установится, то 100% не работает BTSPPSEND. Если соединение разорвать, то начинает работать. На прием BTSPPDATA не влияет. С активным PPP похоже все функции BT работают кроме BTSPPSEND. BTSCAN работает, гарнитуру подключает, SPP если перевести в APP mode тоже отвечает на AT команды. Quote Share this post Link to post Share on other sites More sharing options...
jcxz 51 April 5, 2018 Posted April 5, 2018 · Report post Еще поэкспериментировал. Если дать PPP соединению установится, то 100% не работает BTSPPSEND. Если соединение разорвать, то начинает работать. На прием BTSPPDATA не влияет. Ну так я же приводил выше выдержку из даташита про "only supports the simultaneous connection of 1 device". Видимо это относится не только к BT-соединениям. Вы бы лучше документацию повнимательнее изучили.... :laughing: Quote Share this post Link to post Share on other sites More sharing options...
alex2103 0 April 5, 2018 Posted April 5, 2018 · Report post Ну так я же приводил выше выдержку из даташита про "only supports the simultaneous connection of 1 device". Видимо это относится не только к BT-соединениям. Вы бы лучше документацию повнимательнее изучили.... :laughing: Не забивайте себе голову мультиконектом к SPP. Ограничение mtk6261 описано в SIM800 Series_Bluetooth_Application Note_V1.07 и явно это только про Bluetooth. Мне мультиконект не нужен совсем. Даже вреден будет. Завтра попробую еще тоже самое с SIM868. Про него там тоже самое написано , но он на другой платформе:) SIM868 ведет себя так же :( Где-то есть досадная ошибка в софте simcom касательно работы с UART. Сам стек BT совместно с открытым PPP 100% работает т.к. в режиме +BTSPPCFG: S,1,0 он и принимает и передает ответы по SPP. A вот в режиме +BTSPPCFG: S,1,1 не работает только AT+btsppsend, прием работает без замечаний (по крайней мере на малых объемах данных). Quote Share this post Link to post Share on other sites More sharing options...
CADiLO 1 April 6, 2018 Posted April 6, 2018 · Report post Подкину еще одну доку - может кому пригодится. Не самая свежая, но кое-что отсутствующее в апнотес там имеется. Вычитал интересный момент. ///К популярным профилям, наиболее широко востребованным в самых различных приложениях и поддерживаемым (или поддержка которых может быть реализована) модулями 800-й серии, относятся: .... DUN (Dial-up Networking Profile) стандартный профиль для предоставления доступа в Интернет. Базируется на SPP, включает в себя команды PPP и AT, определенные в спецификации ETSI 07.07 Вот тут скорее всего и кроется причина - если задействовали PPP, то капут..... simcom_sim800_series_bluetooth_application_guide_v1.02.pdf Quote Share this post Link to post Share on other sites More sharing options...
jcxz 51 April 6, 2018 Posted April 6, 2018 · Report post Не самая свежая, но кое-что отсутствующее в апнотес там имеется. ... ///К популярным профилям, наиболее широко востребованным в самых различных приложениях и поддерживаемым (или поддержка которых может быть реализована) модулями 800-й серии, относятся: Было бы классно, если бы профиль OPP мог работать не только с внутренней памятью SIM800, а ретранслировал бы запросы по чтению/записи файлов в UART (AT-командами). Т.е. - при передаче файла командой AT+BTOPPPUSH, модуль читал бы файл не из своей внутренней памяти, а запрашивал бы файл по частям по UART у пользовательского микроконтроллера. То же самое при приёма файла - принимаемый по команде AT+BTOPPACPT файл не писал бы во внутреннюю память SIM800, а отправлял пользовательскому МК через AT-командный интерфейс. Почему интересно в SIMCOM-е не додумались сделать такую полезную вещь? Тогда бы и профиль OPP был бы тоже очень полезным, не только SPP. А сейчас придётся ещё поверх SPP прокладывать свой протокол передачи файлов. :( Quote Share this post Link to post Share on other sites More sharing options...