|
|
|
Поднимаю PPP на SIM800. Что есть из литературы "для чайников"?, С AT-командами знаком по модемам 25-летней давности. |
|
|
|
Sep 11 2017, 13:46
|
Группа: Участник
Сообщений: 7
Регистрация: 1-03-14
Пользователь №: 80 775
|
Для установления соединения использую следующую последовательность AT-команд: AT AT+IPR=115200 ATE0 AT+IFC=2,2 AT+CPIN? AT+CREG? AT+CGDCONT=1,\"IP\",\"xxx.server.by\ ATD*99***1#
|
|
|
|
|
Sep 12 2017, 06:25
|
Гуру
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095
|
QUOTE (DeadSilence @ Sep 11 2017, 16:46) Для установления соединения использую следующую последовательность AT-команд: Этот список я уже видел. Вы его где-то подсмотрели и повторяете как мантру или вы пришли к нему на основе каких-то исходных данных и литературы? AT+CPIN? читает, нужно ли вводить PIN. Хорошо, дальше можно догадаться, что в зависимости от ответа надо выполнять или не выполнять AT+CPIN=. AT+CREG? проверят, зарегистрирован ли модем в сети. Дальше начинаются глупые вопросы: 1) А где команда регистрации? 2) Что делать, если не зарегистрирован? Потом появятся и другие: 3) Как долго ждать этой регистрации? QUOTE (sobr @ Sep 11 2017, 17:28) Как вариант подсмотреть как это делает windows QUOTE (x893 @ Sep 11 2017, 19:18) или линукс Нет, тупое повторение мне не интересно. Мне хочется разобраться - что происходит и, главное, почему и зачем.
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
Sep 14 2017, 14:09
|
Группа: Участник
Сообщений: 7
Регистрация: 1-03-14
Пользователь №: 80 775
|
Цитата(Сергей Борщ @ Sep 12 2017, 09:25) Этот список я уже видел. Вы его где-то подсмотрели и повторяете как мантру или вы пришли к нему на основе каких-то исходных данных и литературы? AT+CPIN? читает, нужно ли вводить PIN. Хорошо, дальше можно догадаться, что в зависимости от ответа надо выполнять или не выполнять AT+CPIN=. AT+CREG? проверят, зарегистрирован ли модем в сети. Дальше начинаются глупые вопросы: 1) А где команда регистрации? 2) Что делать, если не зарегистрирован? Потом появятся и другие: 3) Как долго ждать этой регистрации?
Нет, тупое повторение мне не интересно. Мне хочется разобраться - что происходит и, главное, почему и зачем. Вы - молодец, только попробуйте не пробежаться по аппнотам, а прочитать для начала sim800 series tcp ip application note.
|
|
|
|
|
Jul 7 2018, 19:27
|
Гуру
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095
|
Вторая часть маралезонского балета. SIM800C + lwIP 2.0.x (последний из git). Загоняю модем в PPP, запускаю PPP в lwIP, они договариваются, lwIP радостно сообщает "connected", пишет полученные IP-адреса. Далее я пытаюсь послать udp или tcp пакет, lwIP посылает его в модем - а в ответ от модема полная тишина (я дважды проверял лог. анализатором). Пробовал симки от двух операторов (одна с авторизацией, вторая без), симки проверял в умном телефоне жены - интерент через них в телефоне ходит, а у меня тишина. Точнее, во время посылки этих ответов я слышу наводки от модема в колонках компа, то есть он что-то передает, но никаких ответов от модема я не получаю. Что я теперь сделал не так? Вот лог: CODE 00:00:02.10 GSM< AT 00:00:02.10 GSM> я 00:00:03.10 GSM: timeout 00:00:03.10 GSM< AT 00:00:03.22 GSM> я 00:00:04.10 GSM: timeout 00:00:04.10 GSM< AT 00:00:04.10 GSM> AT...OK.., response OK detected (result code 0) 00:00:04.10 GSM< AT+IFC=2,2 00:00:04.10 GSM> AT+IFC=2,2...OK.., response OK detected (result code 0) 00:00:04.10 GSM< ATE0 00:00:04.10 GSM> ATE0...OK.., response OK detected (result code 0) 00:00:04.10 GSM< AT+IPR=115200 00:00:04.11 GSM> ..OK.., response OK detected (result code 0) 00:00:04.12 GSM< AT+IPR=230400 00:00:04.12 GSM> ..OK.., response OK detected (result code 0) 00:00:04.13 GSM< AT+IPR=460800 00:00:04.13 GSM> ..OK.., response OK detected (result code 0) 00:00:04.14 GSM< AT+IPR=921600 00:00:04.14 GSM> ..ERROR.., response ERROR detected (result code 1) 00:00:04.14 GSM< AT+CMEE=1 00:00:04.15 GSM> ..OK.., response OK detected (result code 0) 00:00:04.15 GSM< AT+CREG=1 00:00:04.15 GSM> ..OK.., response OK detected (result code 0) 00:00:05.78 GSM> ..+CPIN: READY, response +CPIN: READY detected (result code 1) 00:00:05.78 GSM< AT+CPIN? 00:00:05.78 GSM> ....+CPIN: READY, response +CPIN: READY detected (result code 1) 00:00:05.78 GSM> ....OK.., response OK detected (result code 0) No PIN required 00:00:06.46 GSM> ..+CREG:, response +CREG: detected (result code 4) 2.. CREG state change detected: 2 00:00:10.40 GSM> ..+CREG:, response +CREG: detected (result code 4) 1.. CREG state change detected: 1 00:00:29.95 GSM> ..Call Ready.., response Call Ready detected (result code 0) 00:00:35.98 GSM> ..SMS Ready.., response SMS Ready detected (result code 1) 00:00:35.98 GSM init completed 00:00:35.98 GSM: no errors ppp phase changed[0]: phase=0 00:00:35.98 GSM< AT+CGDCONT=1,"IP","internet.lmt.lv" 00:00:35.99 GSM> ..OK.., response OK detected (result code 0) 00:00:35.99 GSM< AT+CSQ 00:00:35.99 GSM> ..+CSQ: 18,0....OK.., response OK detected (result code 0) 00:00:35.99 GSM< ATD*99***1# 00:00:35.99 GSM> ..CONNECT.., response CONNECT detected (result code 0) ppp_connect[0]: holdoff=0 ppp phase changed[0]: phase=3 pppos_connect: unit 0: connecting ppp_start[0] ppp phase changed[0]: phase=6 pppos_send_config[0]: out_accm=FF FF FF FF ppp_send_config[0] pppos_recv_config[0]: in_accm=FF FF FF FF ppp_recv_config[0] ppp: auth protocols: PAP=0 CHAP=0 CHAP_MD5=0 CHAP_MS=0 CHAP_MS2=0 EAP=0 sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xfaeb8c3c> <pcomp> <accomp>] 00:00:35.99 GSM< 45 bytes: 7E FF 7D 23 C0 21 7D 21 7D 21 7D 20 7D 34 7D 22 7D 26 7D 20 7D 20 7D 20 7D 20 7D 25 7D 26 FA EB 8C 3C 7D 27 7D 22 7D 28 7D 22 CA B7 7E pppos_write[0]: len=24 ppp_start[0]: finished 00:00:36.00 GSM> 72 bytes 7E FF 7D 23 C0 21 7D 21 7D 21 7D 20 7D 32 7D 22 7D 26 7D 20 7D 2A 7D 20 7D 20 7D 23 7D 24 C0 23 7D 27 7D 22 7D 28 7D 22 55 83 7E 7E FF 7D 23 C0 21 7D 23 7D 21 7D 20 7D 2A 7D 22 7D 26 7D 20 7D 2A 7D 20 7D 20 6C 50 7E pppos_input[0]: got 72 bytes rcvd [LCP ConfReq id=0x1 <asyncmap 0xa0000> <auth pap> <pcomp> <accomp>] No auth is possible sent [LCP ConfRej id=0x1 <auth pap>] 00:00:36.00 GSM< 22 bytes: FF 7D 23 C0 21 7D 24 7D 21 7D 20 7D 28 7D 23 7D 24 C0 23 2C D4 7E pppos_write[0]: len=12 rcvd [LCP ConfNak id=0x1 <asyncmap 0xa0000>] sent [LCP ConfReq id=0x2 <asyncmap 0xa0000> <magic 0xfaeb8c3c> <pcomp> <accomp>] 00:00:36.00 GSM< 44 bytes: FF 7D 23 C0 21 7D 21 7D 22 7D 20 7D 34 7D 22 7D 26 7D 20 7D 2A 7D 20 7D 20 7D 25 7D 26 FA EB 8C 3C 7D 27 7D 22 7D 28 7D 22 32 2C 7E pppos_write[0]: len=24 00:00:36.00 GSM> 82 bytes 7E FF 7D 23 C0 21 7D 21 7D 22 7D 20 7D 2E 7D 22 7D 26 7D 20 7D 2A 7D 20 7D 20 7D 27 7D 22 7D 28 7D 22 D0 D3 7E 7E FF 7D 23 C0 21 7D 22 7D 22 7D 20 7D 34 7D 22 7D 26 7D 20 7D 2A 7D 20 7D 20 7D 25 7D 26 FA EB 8C 3C 7D 27 7D 22 7D 28 7D 22 D9 45 7E pppos_input[0]: got 82 bytes rcvd [LCP ConfReq id=0x2 <asyncmap 0xa0000> <pcomp> <accomp>] sent [LCP ConfAck id=0x2 <asyncmap 0xa0000> <pcomp> <accomp>] 00:00:36.00 GSM< 36 bytes: FF 7D 23 C0 21 7D 22 7D 22 7D 20 7D 2E 7D 22 7D 26 7D 20 7D 2A 7D 20 7D 20 7D 27 7D 22 7D 28 7D 22 EE 50 7E pppos_write[0]: len=18 rcvd [LCP ConfAck id=0x2 <asyncmap 0xa0000> <magic 0xfaeb8c3c> <pcomp> <accomp>] netif_set_mtu[0]: mtu=1500 pppos_send_config[0]: out_accm=0 0 A 0 ppp_send_config[0] pppos_recv_config[0]: in_accm=0 0 A 0 ppp_recv_config[0] ppp phase changed[0]: phase=7 ppp phase changed[0]: phase=9 ccp_set[0]: is_open=1, is_up=0, receive_method=0, transmit_method=0 sent [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>] 00:00:36.00 GSM< 35 bytes: FF 03 80 21 01 01 00 1C 02 06 00 2D 0F 01 03 06 00 00 00 00 81 06 00 00 00 00 83 06 00 00 00 00 55 15 7E pppos_write[0]: len=32 00:00:36.01 GSM> 32 bytes 7E 80 21 01 01 00 0A 03 06 C0 A8 FE FE 48 CC 7E 7E 80 21 04 01 00 0A 02 06 00 2D 0F 01 F8 30 7E pppos_input[0]: got 32 bytes rcvd [IPCP ConfReq id=0x1 <addr 192.168.254.254>] sent [IPCP ConfAck id=0x1 <addr 192.168.254.254>] 00:00:36.01 GSM< 17 bytes: FF 03 80 21 02 01 00 0A 03 06 C0 A8 FE FE 5F 56 7E pppos_write[0]: len=14 rcvd [IPCP ConfRej id=0x1 <compress VJ 0f 01>] sent [IPCP ConfReq id=0x2 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>] 00:00:36.01 GSM< 29 bytes: FF 03 80 21 01 02 00 16 03 06 00 00 00 00 81 06 00 00 00 00 83 06 00 00 00 00 DA 82 7E pppos_write[0]: len=26 00:00:37.11 GSM> 28 bytes 7E 80 21 03 02 00 16 03 06 0A 5C 4B C7 81 06 D4 5D 61 4B 83 06 D4 5D 60 02 E8 08 7E pppos_input[0]: got 28 bytes rcvd [IPCP ConfNak id=0x2 <addr 10.92.75.199> <ms-dns1 212.93.97.75> <ms-dns2 212.93.96.2>] sent [IPCP ConfReq id=0x3 <addr 10.92.75.199> <ms-dns1 212.93.97.75> <ms-dns2 212.93.96.2>] 00:00:37.11 GSM< 30 bytes: 7E FF 03 80 21 01 03 00 16 03 06 0A 5C 4B C7 81 06 D4 5D 61 4B 83 06 D4 5D 60 02 4F F5 7E pppos_write[0]: len=26 00:00:37.11 GSM> 28 bytes 7E 80 21 02 03 00 16 03 06 0A 5C 4B C7 81 06 D4 5D 61 4B 83 06 D4 5D 60 02 D9 96 7E pppos_input[0]: got 28 bytes rcvd [IPCP ConfAck id=0x3 <addr 10.92.75.199> <ms-dns1 212.93.97.75> <ms-dns2 212.93.96.2>] sifvjcomp[0]: VJ compress enable=0 slot=0 max slot=0 sifup[0]: err_code=0 PPP link status changed to 0 status_cb: Connected local IP address 10.92.75.199 remote IP address 192.168.254.254 primary DNS address 212.93.97.75 secondary DNS address 212.93.96.2 ppp phase changed[0]: phase=10 00:01:02.00 GSM< 79 bytes: 7E 21 45 00 00 49 00 00 00 00 FF 7D 31 00 00 0A 5C 4B C7 D4 5D 61 4B F2 30 00 35 00 35 00 00 F2 30 01 00 00 01 00 00 00 00 00 00 10 68 74 74 70 73 3A 2F 2F 73 61 76 61 6E 6E 61 68 06 6E 6F 6E 67 6E 75 03 6F 72 67 00 00 01 00 01 4A 39 7E pppos_netif_output[0]: proto=0x21, len = 73 00:01:03.00 GSM< 79 bytes: 7E 21 45 00 00 49 00 01 00 00 FF 7D 31 00 00 0A 5C 4B C7 D4 5D 61 4B F2 30 00 35 00 35 00 00 F2 30 01 00 00 01 00 00 00 00 00 00 10 68 74 74 70 73 3A 2F 2F 73 61 76 61 6E 6E 61 68 06 6E 6F 6E 67 6E 75 03 6F 72 67 00 00 01 00 01 57 01 7E pppos_netif_output[0]: proto=0x21, len = 73 00:01:04.00 GSM< 79 bytes: 7E 21 45 00 00 49 00 02 00 00 FF 7D 31 00 00 0A 5C 4B C7 D4 5D 61 4B F2 30 00 35 00 35 00 00 F2 30 01 00 00 01 00 00 00 00 00 00 10 68 74 74 70 73 3A 2F 2F 73 61 76 61 6E 6E 61 68 06 6E 6F 6E 67 6E 75 03 6F 72 67 00 00 01 00 01 70 49 7E pppos_netif_output[0]: proto=0x21, len = 73 00:01:06.00 GSM< 79 bytes: 7E 21 45 00 00 49 00 03 00 00 FF 7D 31 00 00 0A 5C 4B C7 D4 5D 61 4B F2 30 00 35 00 35 00 00 F2 30 01 00 00 01 00 00 00 00 00 00 10 68 74 74 70 73 3A 2F 2F 73 61 76 61 6E 6E 61 68 06 6E 6F 6E 67 6E 75 03 6F 72 67 00 00 01 00 01 6D 71 7E pppos_netif_output[0]: proto=0x21, len = 73
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|