|
SIM800C отправка файлов, Проблемы |
|
|
|
Oct 3 2017, 12:35
|
Частый гость
 
Группа: Участник
Сообщений: 93
Регистрация: 27-09-12
Пользователь №: 73 707

|
Здравствуйте! Не могу нормально отправить файл на почту , файлы размером 18 - 30 килобайт, обязательно всегда пропадает 4 либо 6 байт, куда они деваются не понятно.
Сначала думал что микроконтроллер ерундит, начал смотреть процесс обмена МК - SIM800C там все чисто без ошибок.
Потом подрубил SIM800C через FT232RL к ПК , взял файл картинку 30 килобайт, начал осуществлять отправку
AT+SAPBR=3,1,"CONTYPE","GPRS" AT+SAPBR=3,1,"APN","mts.internet.ru" AT+SAPBR=3,1,"USER","mts" AT+SAPBR=3,1,"PWD","mts" AT+SAPBR=1,1
AT+EMAILSSL=1 AT+EMAILCID=1 AT+EMAILTO=30 AT+SMTPSRV="smtp.mail.ru",465 AT+SMTPAUTH=1,"email","password" AT+SMTPFROM="killfrag2@mail.ru","test"
AT+SMTPRCPT=0,0,"killfrag2@mail.ru","test" AT+SMTPSUB="Test" AT+SMTPBODY=5 12345 AT+SMTPFILE=1,"test.jpg",0
AT+SMTPSEND
ну и тут как обычно приходит ответ +SMTPFT: 1,1360
отправляю AT+SMTPFT=1024
ответ: +SMTPFT: 1,1024
отправляю 1024 байт
и так далее весь файл в итоге приходит письмо с файлом но всегда не хватает нескольких байт... у кого нибудь была такая проблема?
Revision:1418B07SIM800C24_BT
Сообщение отредактировал Mysteo - Oct 3 2017, 12:45
|
|
|
|
|
Oct 3 2017, 13:24
|

Гуру
     
Группа: Свой
Сообщений: 6 023
Регистрация: 26-08-05
Из: Днепр
Пользователь №: 7 988

|
Есть предположение. Протокол SMTP не передает бинарники, должна происходить перекодировка в base64 и обратно. Для выполнения условий base64, блок который перекодируется должен быть кратен 3 - думаю что вот от этого и нужно плясать. http://cdo.bseu.by/library/ibs1/applic_l/format/base64.htmНужно попробовать подвигать длину файла на пару байт и посмотреть будет ли теряться. Дополню - попробовать передавать блоками кратными трем - например не 1024, а 1023 (341*3) И второе - самому перекодировать бинарник в base64, передавать как текст, а на выходе собирать его обратно.
--------------------
Не можна втрачати надію. Не можна здаватися до останньої миті. Можливо саме вона, остання мить, принесе весну, яка стане початком нового життя.
|
|
|
|
|
Oct 4 2017, 06:53
|
Частый гость
 
Группа: Участник
Сообщений: 146
Регистрация: 19-07-16
Пользователь №: 92 603

|
Цитата(Mysteo @ Oct 4 2017, 10:46)  Для включения ssl выполните
AT+EMAILSSL=1 Так само собой, конечно выполнялось. Может у меня не та версия прошивки?
|
|
|
|
|
Oct 4 2017, 08:21
|
Частый гость
 
Группа: Участник
Сообщений: 146
Регистрация: 19-07-16
Пользователь №: 92 603

|
Цитата(CADiLO @ Oct 4 2017, 13:43)  В 1418B04SIM800C32_BT нет SSL. Перешивайтесь на версию без BT или лучше на универсальную - 1418B08SIM800C32_BT_EAT ( S2-10688-Z1L1J ) Каким образом? Я могу это сделать самостоятельно? У меня это всё в модуле SIM800C V4.2.3 Наружу 4 контакта - +5, GND, RX, TX. Похож вот на этот, но чуть другая разводка: http://www.gyomall.com/product/sim800c-mod...ally-available/
Сообщение отредактировал serglg - Oct 4 2017, 08:25
|
|
|
|
|
Oct 4 2017, 08:42
|
Частый гость
 
Группа: Участник
Сообщений: 93
Регистрация: 27-09-12
Пользователь №: 73 707

|
И так, 4 килобайта передался без потерь байт, но есть не верные байты , сейчас передал файл размером 6634 байт из них 5 байт передались не верно , проблемы вместо 0x0D в файле 0x0A , также вместо 0x0A может быть 0x0D вместо 0x28 0x38 .......
хотя по идее когда смотрел логи обмена данными то там все чисто и UART передавал верные данные без ошибок... сейчас уменьшу скорость и посмотрю как будет , если не поможет, попробую передать так как вы писали выше
serqlq
создайте лучше тему по прошивке дабы в этой не оффтопить
на сайте симком скачиваете прошивку, там уже будет утилита для прошивки, в даташите смотрите как прошить через UART у меня такая же плата как и у вас , не очень она удобная для отладки, нет выводов многих, например PWRKey и UART криво разведен
Уменьшил скорость до 57600 ошибки остались....
сейчас передам MMS , чтобы исключить вину UART
Сообщение отредактировал Mysteo - Oct 4 2017, 08:43
|
|
|
|
|
Oct 4 2017, 09:11
|

Гуру
     
Группа: Свой
Сообщений: 6 023
Регистрация: 26-08-05
Из: Днепр
Пользователь №: 7 988

|
>>>Каким образом? Я могу это сделать самостоятельно? На родном сайте SIMCOM прошивок нет, официалы их не выкладывают в открытый доступ. А за то что гуляет по сети мы ответственности не несем. Поэтому пишите запрос в техподдержку своим дистрибьюторам: Россия - "МТ-систем" - http://mt-system.ru/Украина - "ГАММА" - http://www.microchip.ua/В 99% случаев получите прошивку + прогу + инструкцию.
--------------------
Не можна втрачати надію. Не можна здаватися до останньої миті. Можливо саме вона, остання мить, принесе весну, яка стане початком нового життя.
|
|
|
|
|
Oct 4 2017, 10:01
|
Частый гость
 
Группа: Участник
Сообщений: 146
Регистрация: 19-07-16
Пользователь №: 92 603

|
Цитата(CADiLO @ Oct 4 2017, 15:11)  >>>Каким образом? Я могу это сделать самостоятельно? На родном сайте SIMCOM прошивок нет, официалы их не выкладывают в открытый доступ. А за то что гуляет по сети мы ответственности не несем. Поэтому пишите запрос в техподдержку своим дистрибьюторам: Россия - "МТ-систем" - http://mt-system.ru/Украина - "ГАММА" - http://www.microchip.ua/В 99% случаев получите прошивку + прогу + инструкцию. Спасибо.
|
|
|
|
|
Oct 4 2017, 16:49
|
Частый гость
 
Группа: Участник
Сообщений: 93
Регистрация: 27-09-12
Пользователь №: 73 707

|
Да я в курсе что там не должно быть вот такое там согласование , только вместо VDD_EXT завели питание SIM800C Завтра буду дальше разбираться , если время позволит, так как это мое хобби всего лишь (
Сообщение отредактировал Mysteo - Oct 4 2017, 17:21
|
|
|
|
|
Oct 9 2017, 12:56
|
Участник

Группа: Участник
Сообщений: 43
Регистрация: 24-12-06
Из: Орел
Пользователь №: 23 838

|
Цитата(Mysteo @ Oct 9 2017, 15:38)  если использую
AT+FTPPUTPATH="/"
то возвращает ошибку 77 operate error при заливке файла
если AT+FTPPUTPATH=""
возвращает ERROR
На фтп сервере загрузка в корневой каталог разрешена попробуйте AT+FTPPUTPATH="//"
|
|
|
|
|
Oct 11 2017, 05:53
|
Участник

Группа: Участник
Сообщений: 43
Регистрация: 24-12-06
Из: Орел
Пользователь №: 23 838

|
Цитата(Mysteo @ Oct 10 2017, 11:30)  AT+FTPPUTPATH="//" тоже не помогло у меня работает AT+SAPBR=3,1,"CONTYPE","GPRS"....OK.. AT+SAPBR=3,1,"APN","internet.mts.ru"....OK.. AT+SAPBR=3,1,"USER","mts"....OK.. AT+SAPBR=3,1,"PWD","mts"....OK.. AT+SAPBR=1,1....OK.. AT+FTPCID=1....OK.. AT+FTPSERV="12.34.56.78"....OK.. AT+FTPUN="xyz"....OK.. AT+FTPPW="123"....OK.. AT+FTPPUTNAME="1234.txt"....OK.. AT+FTPPUTPATH="//"....OK.. AT+FTPPUTOPT="APPE"....OK.. ....... файл как положено появляется на сервере
|
|
|
|
|
Oct 11 2017, 07:41
|
Частый гость
 
Группа: Участник
Сообщений: 93
Регистрация: 27-09-12
Пользователь №: 73 707

|
Странно, ну мне это особо и не надо, просто интересно было, почему-то не работает запись в корень.....
Возможно вы используете APPE а я STOR, чем эти режимы отличаются мне не понятно, первое это вроде как добавление файла, а последнее хранение, что по сути одно и тоже
У меня новая проблема, между отправками пакетов файла должна быть какая то задержка ? Вот например :
начало цикла AT+FTPPUT=2,1024 жду ответ модуля обрабатываю ответ модуля отправляю пакет данных жду ответ обрабатываю ответ переход в начало цикла
Если перед переходом в начало цикла не сделать задержку 200 мс , то часто после отправки пакета данных вместо Ок , Error приходит, приходится пакет заново отправлять, не понятно откуда вылазит эта ошибка, к тому же она не всегда появляется а из 50 пакетов может 4 или 5 с ошибкой, но если задержку ставить то ошибок нет никакх
Сообщение отредактировал Mysteo - Oct 11 2017, 07:55
|
|
|
|
|
Oct 12 2017, 12:45
|
Частый гость
 
Группа: Участник
Сообщений: 93
Регистрация: 27-09-12
Пользователь №: 73 707

|
Сервак на Ubuntu заведен ..... завтра еще на другой железке попробую запустить
Вот сейчас снова словил глюк при передаче файла, после отправки очередного пакета ответ от модуля вообще не пришел, и на AT команды вообще не реагировал никак, что-то его вводит в ступор
Еще заметил, что если после отправки последнего байта пакета возвращается ошибка , то ответ +FTPPUT: 1,1,1360 приходит с задержкой 1.8 секунды, иногда 3 секунды, подумал на качество GPRS соединения, но оно отличное, так как файлы на почту уходят мгновенно, в общем буду разбираться с сервером FTP
Попробовал передать файл через режим EXTPUT , отправил сразу весь файл целиком проблем нет никаких, что то серверу не нравится при передаче данных пакетами, Вы были правы, завтра заведу сервер на WIN и посмотрю как он себя поведет
Сообщение отредактировал Mysteo - Oct 12 2017, 11:26
|
|
|
|
|
Oct 14 2017, 04:31
|

Частый гость
 
Группа: Участник
Сообщений: 163
Регистрация: 25-09-05
Из: Где то в Европе!
Пользователь №: 8 919

|
Цитата(CADiLO @ Oct 12 2017, 13:46)  Сталкивался с проблемами если FTP на .nix серверах На WIN проблем не было. По крайней мере там где тестировал. Никсовые сервера отвечали не на все команды, поэтому приходилось лезть терминалкой и смотреть чего там недособрали. Для экономии времени . Проверял SIM900R, SIM800C,SIM800L,SIM800H - и на WIN и на Ubuntu и на других . Проблем с FTP при передаче не было. Правда 1360 байт за раз не отправлял - не было необходимости. Опять же когда AT+ FTPPUT =1 ответ модема ОК сразу ответ сервера через время . Подозреваю что все дело в настройках FTP . Там куча настроек(параметров) которые модем использует по умолчанию . Типа порт 21 итд. Для связи с сервером попробуйте использовать любой FTP клиент который ведет лог обмена. Сразу увидите сколько еще параметров нужно при обмене и модем их шлет по умолчанию за Вас .
|
|
|
|
|
Oct 14 2017, 16:19
|
Частый гость
 
Группа: Участник
Сообщений: 93
Регистрация: 27-09-12
Пользователь №: 73 707

|
Попробую другой сервер установить, а пакеты у меня по 1024, да тоже чувствую что то с на стороне сервера барахлит, потому что бывает если при загрузки ответа возникает ошибка, то запрос на очередной пакет может с 5 сек задержкой придти. И такая проблема как на Ubuntu сервере vsftpd, и через роутер встроенный фтп поднимал тоже самое, однако на Ubuntu всегда в конце передачи файла 65 ошибка возникала, и файл все равно успешно грузился, то на встроенном в роутер сервере в конце передачи приходил успешный ответ
Сообщение отредактировал Mysteo - Oct 14 2017, 16:21
|
|
|
|
|
Dec 11 2017, 06:26
|
Частый гость
 
Группа: Участник
Сообщений: 93
Регистрация: 27-09-12
Пользователь №: 73 707

|
serglgВ SMTP бинарники нормально не передаются по этой причине. В BASE64 разбираться не стал и перешел на загрузку файлов по FTP. Попробуйте выполнить то что писал CADiLO , лично я выполнял только вот этот пункт результата не было "Нужно попробовать подвигать длину файла на пару байт и посмотреть будет ли теряться. Дополню - попробовать передавать блоками кратными трем - например не 1024, а 1023 (341*3)" Цитата(CADiLO @ Oct 3 2017, 16:24)  Протокол SMTP не передает бинарники, должна происходить перекодировка в base64 и обратно. Для выполнения условий base64, блок который перекодируется должен быть кратен 3 - думаю что вот от этого и нужно плясать. http://cdo.bseu.by/library/ibs1/applic_l/format/base64.htmНужно попробовать подвигать длину файла на пару байт и посмотреть будет ли теряться. Дополню - попробовать передавать блоками кратными трем - например не 1024, а 1023 (341*3) И второе - самому перекодировать бинарник в base64, передавать как текст, а на выходе собирать его обратно.
Сообщение отредактировал Mysteo - Dec 11 2017, 06:27
|
|
|
|
|
Dec 12 2017, 03:16
|
Частый гость
 
Группа: Участник
Сообщений: 146
Регистрация: 19-07-16
Пользователь №: 92 603

|
Цитата(Mysteo @ Dec 11 2017, 12:26)  serglg
В SMTP бинарники нормально не передаются по этой причине. В BASE64 разбираться не стал и перешел на загрузку файлов по FTP. Попробуйте выполнить то что писал CADiLO , лично я выполнял только вот этот пункт результата не было "Нужно попробовать подвигать длину файла на пару байт и посмотреть будет ли теряться. Дополню - попробовать передавать блоками кратными трем - например не 1024, а 1023 (341*3)" Да у меня текстовые файлы. Правда внутри есть символы табуляции (0х09) для их возможного открытия Экселем. В принципе погонял разные размеры и как-то всё успокоилось. Но было до того несколько раз, что символы внутри файла подменялись на мусор. Для меня самое странное, что когда аналогичные тексты передавал в теле письма - ничего даже однократно не было.
|
|
|
|
|
Dec 13 2017, 11:16
|
Частый гость
 
Группа: Участник
Сообщений: 146
Регистрация: 19-07-16
Пользователь №: 92 603

|
Цитата(Mysteo @ Dec 13 2017, 13:03)  Если только ASCII то проблем никогда не замечал. Да, пока повторения той порчи не было. Может это происходило при отладке, при ненормированных остановках в момент подачи АТ-команд. Ладно, будем смотреть. :-)
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|