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

определение готовности SIM карты

Люди подскажите АТ команду которой можно определить готовность SIM карты. А то лажа получается, у меня тут попалась карточка, которая расчехляется секунд 40-50 после регестрации в сети. Мало ли вдруг попадется еще более тормознутая. Нужно как то определять ее готовнось, а потом уж лесть к ней в мозги.

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


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

Для SIM300 я после получения Call Ready даю команду AT+CPMS="SM","SM","SM".

Если в ответ приходит "+CMS ERROR: 517", значит карта еще не готова.

После получения "+CPMS: 0,50,0,50,0,50" (для примера) работаю дальше. Не совсем корректно, но работает. Заодно получаю информацию по хранилищу SMS.

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


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

Для SIM300 я после получения Call Ready даю команду AT+CPMS="SM","SM","SM".

Если в ответ приходит "+CMS ERROR: 517", значит карта еще не готова.

После получения "+CPMS: 0,50,0,50,0,50" (для примера) работаю дальше. Не совсем корректно, но работает. Заодно получаю информацию по хранилищу SMS.

Это ясно, я тоже пока просто жду пока ошибку перестанет выдавать при попытки чтении ячейки с телефонной книги.

А может все же есть какая АТ команда, непосредственно для определения готовности симки.

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


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

на Wavecom GR64 использую команду "AT+CPIN?". Если ответит "READY", модем готов к работе (заодно по ответу ясно, требуется ли ввод пин-кода). Наличие регистрации в сети можно проверить командой "AT+CREG?".

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


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

AT+CPIN?

отвечает гораздо раньше готовности сим карты.. некатит вообще

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


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

Вот так это нужно делать:

 

 

adl_tmrHandler_t Check_SIM(void)

{

adl_simState_e SIM_event;

SIM_event = adl_simGetState ();

switch (SIM_event)

{

...

case ADL_SIM_STATE_FULL_INIT:

{

My_tmr_1 = (adl_tmr_t *)adl_tmrUnSubscribe( (adl_tmr_t *)My_tmr_1,

(adl_tmrHandler_t)Check_SIM, ADL_TMR_TYPE_100MS );

// симка готова - едем дальше

}break;

...

}

 

}

 

adl_tmr_t * My_tmr_1 = (adl_tmr_t *)adl_tmrSubscribe ( TRUE, 10, ADL_TMR_TYPE_100MS,

(adl_tmrHandler_t)Check_SIM );

 

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

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


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

Часто у людей встречаются такие "тормознутые" симки?

Си не знаю вообще и поэтому не понял, каким образом проверяет готовность сим-карты Chell из предыдущего поста.

Спасибо.

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


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

Добавлю что скорость готовности карточки еще сильно зависит от ее заполнености.

Если поставить карточку в старый Эриксон A1018 - там довольно неплохой нетмонитор - то увидим что оператор вычитывает телефонную книжку. И чем она полнее, тем дольше идет инициализация. Кроме того операторы любят баловаться карточками выпуская разные акционно-корпоративно-глючные с отступлением от стандартов. Тогда даже не все телефоны их понимают.

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


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

Люди подскажите АТ команду которой можно определить готовность SIM карты. А то лажа получается, у меня тут попалась карточка, которая расчехляется секунд 40-50 после регестрации в сети. Мало ли вдруг попадется еще более тормознутая. Нужно как то определять ее готовнось, а потом уж лесть к ней в мозги.

 

Использую

 

AT#QSS=2 - настройка вывода статуса

AT#QSS? - запрос статуса sim

QSS: 2,0 - sim отсутствует
QSS: 2,1 - sim ещё не готова
QSS: 2,2 - sim ещё не готова
QSS: 2,3 - sim готова ко всему

 

Модемы telit поддерживают эту команду

 

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


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

Вот так это нужно делать:

 

adl_tmrHandler_t Check_SIM(void)

{

adl_simState_e SIM_event;

SIM_event = adl_simGetState ();

switch (SIM_event)

{

...

case ADL_SIM_STATE_FULL_INIT:

{

My_tmr_1 = (adl_tmr_t *)adl_tmrUnSubscribe( (adl_tmr_t *)My_tmr_1,

(adl_tmrHandler_t)Check_SIM, ADL_TMR_TYPE_100MS );

// симка готова - едем дальше

}break;

...

}

 

}

 

adl_tmr_t * My_tmr_1 = (adl_tmr_t *)adl_tmrSubscribe ( TRUE, 10, ADL_TMR_TYPE_100MS,

(adl_tmrHandler_t)Check_SIM );

 

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

+1

Ну или так:

void simHandler (u8 event)
{
    switch(event)
    {
    case ADL_SIM_EVENT_FULL_INIT:
        TRACE (( 1, "SIM OK" ));
        adl_simUnsubscribe ( (adl_simHdlr_f) simHandler);
        break;
    case ADL_SIM_EVENT_REMOVED:
        
        break;
    case ADL_SIM_EVENT_INSERTED:
        
        break;
    case ADL_SIM_EVENT_PIN_ERROR:
        
        break;
    case ADL_SIM_EVENT_PIN_OK:
        
        break;
    case ADL_SIM_EVENT_PIN_WAIT:
        
        break;
    case ADL_SIM_EVENT_PUK_WAIT:
        
        break;
    case ADL_SIM_EVENT_PUK_ERROR:
        
        break;
    case ADL_SIM_EVENT_FAILURE:
        
        break;
    case ADL_SIM_EVENT_NET_LOCK:
        
        break;

    }
    
}

adl_simSubscribe(simHandler,NULL);

 

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


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

Если поставить карточку в старый Эриксон A1018 - там довольно неплохой нетмонитор - то увидим что оператор вычитывает телефонную книжку.

А не подскажете зачем это оператору моя телефонная книжка, телефонная книжка- это моя собственность (личная жизнь), а воровство

собственности (вторжение в личную жизнь) преследуется по закону.

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


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

Вы карточку никогда с важными контактами не теряли? Я случайно сломал киевстаровскую - восстановили по заявлению полностью со всеми номерами.

И еще есть такая штука - СОРМ (оперативно разыскные мероприятия) которая обязывает операторов производит определенные действия по сбору информации.

Я сам в свое время офигел когда это в эфире увидел (у нас первые сотовые мосты из-за этого глючили), а потом ничего, даже пригодилось.

Ну а про личную жизнь.... Наверное это все-же вопрос к Европе, а в exUSSR как-то сомнительно......

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


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

восстановили по заявлению полностью со всеми номерами.

Мы тут теряли - восстанавливали и каточки были пустые (мегафон мтс билайн смартс), так что у вас КГБ более крутое ;-)))

 

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


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

Вы карточку никогда с важными контактами не теряли? Я случайно сломал киевстаровскую - восстановили по заявлению полностью со всеми номерами.

И еще есть такая штука - СОРМ (оперативно разыскные мероприятия) которая обязывает операторов производит определенные действия по сбору информации.

Я сам в свое время офигел когда это в эфире увидел (у нас первые сотовые мосты из-за этого глючили), а потом ничего, даже пригодилось.

Ну а про личную жизнь.... Наверное это все-же вопрос к Европе, а в exUSSR как-то сомнительно......

Вопрос к CADiLO. Опсос не сможет считать контакты с сим карты без "согласия" модема (телефона). Вопрос: модули SIMXXX "отдают" оператору контакты?

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


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

Я бы сформулировал чуть иначе - есть ли у симкомов возможность запретить инициализацию телефонной книжки на SIM? Помимо прочего, поможет справиться с "экзотическими" SIM-картами.

У вейвкомов такая команда была, AT+WAIP.

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


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

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

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

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

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

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

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

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

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

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