Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

Проблем с GSM/GPRS модем
http://mcu-bg.com/mcu_site/viewtopic.php?f=4&t=9657
Страница 1 от 3

Автор:  marcuka68 [ Чет Яну 05, 2012 6:13 pm ]
Заглавие:  Проблем с GSM/GPRS модем

Здравейте! За много години!

Боря се тук с един GSM/GPRS модем, с вграден TCP/IP стек. При изпращане по TCP/IP, понякога модемът не иска да ми върне отговор, потвърждение на изпратената информация. След като го изчакам много време, примерно 10s, му изпращам АТ команда за затваряне на сесията. В момента, в който получи тази команда, модемът връща чаканият отговор.

Правя разни шмекерии, да го излъжа, ама май ме бърка това. Изпращането на информацията на няколко порции помага доста, но не напълно. След като не получа отговора за даден времеинтервал, взех да му пращам само "AT\r", но това вече пречи на комуникацията, а и това не помага напълно. Взех да му изпращам само '\r', та дано върне чаканият отговор, но не знам дали това не пречи.

Ще съм благодарен на всякакви съвети от ваша страна! :)

Автор:  bateAz [ Чет Яну 05, 2012 8:09 pm ]
Заглавие:  Re: Проблем с GSM/GPRS модем

Какво ще рече "отговор, потвърждение .." ? можеш ли да покажеш лог на комуникацията ?

Автор:  marcuka68 [ Пет Яну 06, 2012 1:15 pm ]
Заглавие:  Re: Проблем с GSM/GPRS модем

Ами малко е секретна тази работа и лог не мога да покажа, но мисля, че проблемът е в кода! Още не мога да го хвана, но е грешка във функцията, която ми обработва отговорите. Причините може да са 2:

- Модемът не връща винаги отговорите, според стандарта за AT комуникацията, струва ми се: понякога форматът е: \r\n <response> \r\n, което е очакваното. Понякога форматът е <response> \r\n, което е кофти, според мен!

- Ехото от изпращаната информация бърка разпознаването на отговорите. Него мога да го спра и да го пусна, като си свърша работата.

Продължавам да го боря, пък все ще излезе нещо.

Автор:  miro_atc [ Пет Яну 06, 2012 4:10 pm ]
Заглавие:  Re: Проблем с GSM/GPRS модем

marcuka68 написа:
понякога модемът не иска да ми върне отговор, потвърждение на изпратената информация. След като го изчакам много време, примерно 10s, му изпращам АТ команда за затваряне на сесията. В момента, в който получи тази команда, модемът връща чаканият отговор.


Някои модули имат и такава екстра ;-)

Не знам твоя какъв е... но зависи от хендшейка, ако ползваш хардуерен и го клатиш... Прочети внимателно дейташита и специално изискванията за времената за хендшейка и паузите между пращанията.

Автор:  marcuka68 [ Пет Яну 06, 2012 5:14 pm ]
Заглавие:  Re: Проблем с GSM/GPRS модем

Хендшейк не се използва. Писах им на поддръжката, да ги питам колко трябва да изчаквам между командите, те ми казаха, щом съм получил отговор на последната команда, можеш да пратиш следваща - да ама не :) Изчаквам около 90ms, преди да изпратя следващата, иначе дава грешка на повечето команди. За някои команди изчаквам и повече.

Но грешката ще да е в мен, не е в модема. В разчитането на съобщенията от модема е, трябва да си го оправя.

Благодаря за указаната подкрепа все пак, ако изскочи нещо по този проблем, пак ще пиша, за сега трябва да си оправя кода.

Автор:  bateAz [ Пет Яну 06, 2012 5:48 pm ]
Заглавие:  Re: Проблем с GSM/GPRS модем

ако не е чак толкова секретно: какъв е типът на модема?

Автор:  Desert Leo [ Нед Яну 08, 2012 10:25 am ]
Заглавие:  Re: Проблем с GSM/GPRS модем

Нещо не схващам.

1. АТ-командите имат съответен таймаут. За много от тях той е кратък и еднакъв, но за някои е различен и дори доста дълъг. Обикновено отговора пристига доста преди изтичането на таймауто, но... е негативен, та се налага повтаряне, че и потретване.

2. Не задължително стека да приеме подадената АТ-команда, въпреки, че обикновено го прави.

3. Щом използваш ТСР и си активирал GPRS контекста и отворил сокета - ти си в режим на предаване на данни. Ако нямаш втори паралелен парсер на команди, такива може да подаваш само след суспендиране или затваряне на сокета, т.е. връщане от режим данни в команден режим.

Автор:  marcuka68 [ Пон Яну 09, 2012 10:34 am ]
Заглавие:  Re: Проблем с GSM/GPRS модем

Desert Leo написа:
1. АТ-командите имат съответен таймаут. За много от тях той е кратък и еднакъв, но за някои е различен и дори доста дълъг. Обикновено отговора пристига доста преди изтичането на таймауто, но... е негативен, та се налага повтаряне, че и потретване.


Пробвах го това с повтарянето - за едната команда работеше, за другата не:

- Когато чакам символ от модема за потвърждение на готовност за приемане на данни от мен, повтарянето на командите работеше екстра.
- При повтаряне на командата, за да получа потвърждение на приетата информация, модема дава грешка.


Все пак, мисля, че нещата постепенно се оправят. Направих го да се спира ехото от командите, като влизам в режим TCP/IP и да се възстановява отново, като се излезе от този режим. Настроих го и в режим на бързо изпращане - направо си пращам, без да чакам символ за готовност за приемане. Чакам само потвърждение, че е изпратено. За сега работи, тестовете продължават. Благодаря Ви за съветите :)

Автор:  marcuka68 [ Пон Яну 23, 2012 4:47 pm ]
Заглавие:  Re: Проблем с GSM/GPRS модем

bateAz написа:
ако не е чак толкова секретно: какъв е типът на модема?


Ами за модема - не мога да кажа какъв е.


Иначе, оказа се, че самият модем не ги обработва изпратените баитове и седи и си чака за още, докато станах зададеният с командата за изпращане брой. Това била причината да ми изпраща потвърждение за успешен пренос, след като му изпратя някоя друга команда - допълвал си е чаканите баитове.

За сега решавам проблема по доста дървен начин, но сякаш работи - изпращам на няколко порции информацията, като между тях правя изчакване от около 200 - 300 ms

Автор:  Desert Leo [ Сря Яну 25, 2012 11:57 am ]
Заглавие:  Re: Проблем с GSM/GPRS модем

Няма ли команда за задаване размера на пакета?

Автор:  marcuka68 [ Сря Яну 25, 2012 5:47 pm ]
Заглавие:  Re: Проблем с GSM/GPRS модем

Desert Leo написа:
Няма ли команда за задаване размера на пакета?


Има команда и аз нея използвам, но проблемът е, че модемът не ги приема баитовете. Първо проверявам може ли да се изпраща, след потвърждение му казвам колко баита ще изпращам и започвам да ги пращам. Пращам ги не наведнъж, а един по един, докато ги наброя.

Проблемът е, че сякаш модемът не ме слуша през това време и не приема всичките и стои и се чака за още. Проблемът остава нерешен за сега.

Автор:  Desert Leo [ Чет Яну 26, 2012 8:37 am ]
Заглавие:  Re: Проблем с GSM/GPRS модем

Или ти нещо бъркаш или модема, който използваш е за изхвърляне.
Но поради високата секретност на разработката ти не мога да ти помогна.

Аз се занимавам с много по-прозаични неща - GPS/GSM проследяване на лешояди, кучета, диви кози, мечки, а сега и соколи. Заради това последното пиле трябва да се вместя в тегло от 25 грама, та и от припоя трябва да се пести :wink: .
Използвам само GL865-DUAL на Телит и нямам никакви проблеми.

Автор:  ike [ Чет Яну 26, 2012 1:40 pm ]
Заглавие:  Re: Проблем с GSM/GPRS модем

Desert Leo, този GL865-DUAL има ли GPS? Питам, защото вече има чипове с GSM/GPRS/GPS/Bluetooth/WiFi/FM radio и още няколко протокола, за които в момента не се сещам.

Автор:  Lupus [ Чет Яну 26, 2012 2:18 pm ]
Заглавие:  Re: Проблем с GSM/GPRS модем

ike написа:
.... Питам, защото вече има чипове с GSM/GPRS/GPS/Bluetooth/WiFi/FM radio и още няколко протокола, за които в момента не се сещам.

Би ли дал пример за един такъв чип, че ми стана интересно?

Автор:  marcuka68 [ Чет Яну 26, 2012 2:58 pm ]
Заглавие:  Re: Проблем с GSM/GPRS модем

Е по-слонен съм да кажа, че модемът е за изхвърляне, ама с него ще се работи. Писах им на поддръжката, да ги питам за някакъв времеинтервал, преди да изпращам следваща команда. Те твърдят, че щом съм получил отговора на последната команда, мога да изпращам следващата. Е да, ама не. И ми се струва, че с увеличаване на този времеинтервал, ще се оправят нещата, което си е доста дървено.

Сега продължавам тестовете, при четене на приетите данни, махнах изчакването и си работи, при изпращането, махна ли изчакването, забива веднага. На мен ми прилича на кьопава изработка, не знам, може и да бъркам.



Лъве, преди време гледах снимки на някакви застрашени орли, на които са сложили сателитно проследяване. Бяха с едни ранички на гърба, от които стърчеше антената. Ти нямаш ли ядове с покритието на GSM?

Страница 1 от 3 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/