[Ovmsdev] SIMCOM PPP

Michael Balzer dexter at expeedo.de
Sun Nov 5 20:48:57 HKT 2017


Works in Germany with Hologram & roaming via Telekom.de:

    D (113179) SIMCOM line: 2b 43 4f 50 53 3a 20 30 2c 30 2c 22 54 65 6c 65 +COPS: 0,0,"Tele
    D (113179) SIMCOM line: 6b 6f 6d 2e 64 65 20 48 6f 6c 6f 67 72 61 6d 22 kom.de Hologram"
    D (113179) SIMCOM line: 2c 32                                           ,2             
    …
    I (117679) gsm-ppp: status_cb: Connected
    I (117689) gsm-ppp:    our_ipaddr  = 10.170.195.13
    I (117699) gsm-ppp:    his_ipaddr  = 10.64.64.64
    I (117699) gsm-ppp:    netmask     = 255.255.255.255
    I (117709) gsm-ppp:    our6_ipaddr = ::
    …
    I (144379) ovms-server-v2: Connected to OVMS Server V2 at ovms.dexters-web.de
    …
    I (145149) ovms-server-v2: OVMS V2 login successful, and crypto channel established


    OVMS > metrics list m.net
    m.net.mdm.iccid                          8944500408175816389
    m.net.mdm.model                          35316B10SIM5360E
    m.net.provider                           Telekom.de Hologram
    m.net.sq                                 -77
    m.net.type                               modem


…but the ip stack seems to crash on CREG 2:

    I (2780639) gsm-mux: ChanProcessFrame(CHAN=4, ADDR=11, CTRL=ff, LEN=18, IFP=3)
    I (2787149) gsm-mux: ProcessFrame(CHAN=3, ADDR=0d, CTRL=ff, FCS=14, LEN=18)
    I (2787149) gsm-mux: ChanProcessFrame(CHAN=3, ADDR=0d, CTRL=ff, LEN=15, IFP=3)
    I (2787159) simcom: CREG Network Registration 2
    I (2787159) gsm-mux: ProcessGuru Meditation Error of type LoadProhibited occurred on core  1. Exception was unhandled.
    Register dump:
    PC      : 0x4016c38d  PS      : 0x00060f30  A0      : 0x8016c3ce  A1      : 0x3ffdd690 
    A2      : 0x0000f01d  A3      : 0x00000000  A4      : 0x3ffee9a8  A5      : 0x3f4261a4 
    A6      : 0x00000008  A7      : 0x3ffdd8b8  A8      : 0x8016c381  A9      : 0x3ffdd670 
    A10     : 0x00000000  A11     : 0x00000000  A12     : 0x3ffdf6d4  A13     : 0x3ffdd8a0 
    A14     : 0x00000004  A15     : 0xab9423a7  SAR     : 0x00000018  EXCCAUSE: 0x0000001c 
    EXCVADDR: 0x0000f0d2  LBEG    : 0x4000c349  LEND    : 0x4000c36b  LCOUNT  : 0x00000000 

    Backtrace: 0x4016c38d:0x3ffdd690 0x4016c3cb:0x3ffdd6b0 0x4016a5ba:0x3ffdd6d0 0x40167bf3:0x3ffdd710 0x40167c15:0x3ffdd740 0x40167cb6:0x3ffdd760
    0x40168114:0x3ffdd780 0x4016888a:0x3ffdd7a0 0x401688cb:0x3ffdd7c0 0
    x401712f5:0x3ffdd7e0 0x401716b9:0x3ffdd800 0x40171700:0x3ffdd820 0x40174899:0x3ffdd840 0x401715f0:0x3ffdd860 0x4017992a:0x3ffdd880 0x40179966:0x3ffdd8a0
    0x4017347d:0x3ffdd8c0 0x40174eb9:0x3ffdd8e0 0x40174f64:0x
    3ffdd900 0x4017329f:0x3ffdd920 0x4017111d:0x3ffdd940 0x40194768:0x3ffdd970 0x401948b5:0x3ffdd990 0x4016254d:0x3ffdd9b0

    …
    Remote debugging using /dev/ttyUSB0
    0x4016c38d in ip4_route (dest=0x3ffee9a8) at /home/balzer/esp/esp-idf/components/lwip/core/ipv4/ip4.c:250
    250      if ((netif_default == NULL) || !netif_is_up(netif_default) || !netif_is_link_up(netif_default) ||

    (gdb) bt
    #0  0x4016c38d in ip4_route (dest=0x3ffee9a8) at /home/balzer/esp/esp-idf/components/lwip/core/ipv4/ip4.c:250
    #1  0x4016c3ce in ip4_route_src (dest=0x3ffee9a8, src=0x3ffee994) at /home/balzer/esp/esp-idf/components/lwip/core/ipv4/ip4.c:159
    #2  0x4016a5bd in tcp_rst (seqno=<optimized out>, ackno=146640207, local_ip=0x3ffee994, remote_ip=0x3ffee9a8, local_port=10308, remote_port=6867) at
    /home/balzer/esp/esp-idf/components/lwip/core/tcp_out.c:1336
    #3  0x40167bf6 in tcp_abandon (pcb=0x3ffee994, reset=<optimized out>) at /home/balzer/esp/esp-idf/components/lwip/core/tcp.c:403
    #4  0x40167c18 in tcp_abort (pcb=0x3ffee994) at /home/balzer/esp/esp-idf/components/lwip/core/tcp.c:423
    #5  0x40167cb9 in tcp_netif_ipv4_addr_changed_pcblist (old_addr=0x3ffdf6d4, pcb_list=<optimized out>) at
    /home/balzer/esp/esp-idf/components/lwip/core/tcp.c:1930
    #6  0x40168117 in tcp_netif_ipv4_addr_changed (old_addr=0x3ffdf6d4, new_addr=0x3f4261a4 <ip_addr_any>) at
    /home/balzer/esp/esp-idf/components/lwip/core/tcp.c:1947
    #7  0x4016888d in netif_set_ipaddr (netif=0x3ffdf6d0, ipaddr=0x3f4261a4 <ip_addr_any>) at /home/balzer/esp/esp-idf/components/lwip/core/netif.c:452
    #8  0x401688ce in netif_set_addr (netif=0x3ffdf6d0, ipaddr=0x3f4261a4 <ip_addr_any>, netmask=0x3f426190 <ip_addr_broadcast>, gw=0x3f4261a4 <ip_addr_any>)
        at /home/balzer/esp/esp-idf/components/lwip/core/netif.c:330
    #9  0x401712f8 in cifaddr (pcb=0x3fff76a0, our_adr=230926858, his_adr=1077952522) at /home/balzer/esp/esp-idf/components/lwip/netif/ppp/ppp.c:1048
    #10 0x401716bc in ipcp_clear_addrs (pcb=0x3fff76a0, ouraddr=230926858, hisaddr=1077952522, replacedefaultroute=0 '\000') at
    /home/balzer/esp/esp-idf/components/lwip/netif/ppp/ipcp.c:2192
    #11 0x40171703 in ipcp_down (f=<optimized out>) at /home/balzer/esp/esp-idf/components/lwip/netif/ppp/ipcp.c:2156
    #12 0x4017489c in fsm_lowerdown (f=0x3fff8900) at /home/balzer/esp/esp-idf/components/lwip/netif/ppp/fsm.c:146
    #13 0x401715f3 in ipcp_lowerdown (pcb=0x3fff76a0) at /home/balzer/esp/esp-idf/components/lwip/netif/ppp/ipcp.c:687
    #14 0x4017992d in upper_layers_down (pcb=0x3fff76a0) at /home/balzer/esp/esp-idf/components/lwip/netif/ppp/auth.c:715
    #15 0x40179969 in link_down (pcb=0x3fff76a0) at /home/balzer/esp/esp-idf/components/lwip/netif/ppp/auth.c:701
    #16 0x40173480 in lcp_down (f=<optimized out>) at /home/balzer/esp/esp-idf/components/lwip/netif/ppp/lcp.c:2341
    #17 0x40174ebc in fsm_rtermreq (f=0x3fff7730, id=3, p=<optimized out>, len=0) at /home/balzer/esp/esp-idf/components/lwip/netif/ppp/fsm.c:597
    #18 0x40174f67 in fsm_input (f=0x3fff7730, inpacket=0x3ffeea8a "\005\003", l=<optimized out>) at /home/balzer/esp/esp-idf/components/lwip/netif/ppp/fsm.c:369
    #19 0x401732a2 in lcp_input (pcb=0x3fff76a0, p=0x3ffeea8a "\005\003", len=4) at /home/balzer/esp/esp-idf/components/lwip/netif/ppp/lcp.c:513
    #20 0x40171120 in ppp_input (pcb=0x3fff76a0, pb=0x3ffeea70) at /home/balzer/esp/esp-idf/components/lwip/netif/ppp/ppp.c:878
    #21 0x4019476b in pppos_input (ppp=0x3fff76a0, s=0x3ffee1fd "", l=0) at /home/balzer/esp/esp-idf/components/lwip/netif/ppp/pppos.c:578
    #22 0x401948b8 in pppos_input_sys (p=0x3ffee1d4, inp=<optimized out>) at /home/balzer/esp/esp-idf/components/lwip/netif/ppp/pppos.c:460
    #23 0x40162550 in tcpip_thread (arg=<optimized out>) at /home/balzer/esp/esp-idf/components/lwip/api/tcpip.c:143

    (gdb) print netif_default
    $1 = (struct netif *) 0xf01d
    (gdb) print *netif_default
    $2 = {next = 0xffffffff, ip_addr = {u_addr = {ip6 = {addr = {4294967295, 4294967295, 4294967295, 4294967295}}, ip4 = {addr = 4294967295}}, type = 255
    '\377'}, netmask = {u_addr = {ip6 = {addr = {4294967295,
              4294967295, 4294967295, 4294967295}}, ip4 = {addr = 4294967295}}, type = 255 '\377'}, gw = {u_addr = {ip6 = {addr = {4294967295, 4294967295,
    4294967295, 4294967295}}, ip4 = {addr = 4294967295}},
        type = 255 '\377'}, ip6_addr = {{u_addr = {ip6 = {addr = {4294967295, 4294967295, 4294967295, 4294967295}}, ip4 = {addr = 4294967295}}, type = 255
    '\377'}, {u_addr = {ip6 = {addr = {4294967295,
                4294967295, 4294967295, 4294967295}}, ip4 = {addr = 4294967295}}, type = 255 '\377'}, {u_addr = {ip6 = {addr = {4294967295, 4294967295,
    4294967295, 4294967295}}, ip4 = {addr = 4294967295}},
          type = 255 '\377'}}, ip6_addr_state = "\377\377\377", ipv6_addr_cb = 0xffffffff, input = 0xffffffff, output = 0xffffffff, linkoutput = 0xffffffff,
    output_ip6 = 0xffffffff, state = 0xffffffff,
      dhcp = 0xffffffff, dhcps_pcb = 0xffffffff, dhcp_event = 0xffffffff, ip6_autoconfig_enabled = 255 '\377', rs_count = 255 '\377', hostname = 0xffffffff
    '\377' <repeats 200 times>..., mtu = 65535,
      hwaddr_len = 255 '\377', hwaddr = "\377\377\377\377\377\377", flags = 255 '\377', name = "\377\377", num = 255 '\377', igmp_mac_filter = 0xffffffff,
    mld_mac_filter = 0xffffffff,
      l2_buffer_free_notify = 0xffffffff}


Tell me if I shall fetch more detail on this.

Regards,
Michael


Am 24.10.2017 um 08:52 schrieb Mark Webb-Johnson:
>
> That was a hell of a lot of work:
>
>     OVMS > config list modem
>     modem
>       apn: hologram
>       apn.password:
>       apn.user:
>       enable.net <http://enable.net>: yes
>       enable.sms: yes
>
>
>     OVMS > power simcom on
>     Power mode of simcom is now on
>     I (13073) simcom: State: Enter PoweringOn state
>     I (13073) simcom: Power Cycle
>     SIMCOM tx 41 54 0d 0a                                     AT..
>     SIMCOM tx 41 54 0d 0a                                     AT..
>     SIMCOM tx 41 54 0d 0a                                     AT..
>     SIMCOM tx 41 54 0d 0a                                     AT..
>     SIMCOM tx 41 54 0d 0a                                     AT..
>     SIMCOM tx 41 54 0d 0a                                     AT..
>     SIMCOM tx 41 54 0d 0a                                     AT..
>     SIMCOM rx 0d 0a 53 54 41 52 54 0d 0a 41 54 0d 0d 0a 4f 4b ..START..AT...OK
>     I (19193) simcom: State: Enter PoweredOn state
>     SIMCOM rx 0d 0a                                           ..
>     SIMCOM rx 0d 0a 2b 43 50 49 4e 3a 20 52 45 41 44 59 0d 0a ..+CPIN: READY..
>     SIMCOM line 2b 43 50 49 4e 3a 20 52 45 41 44 59             +CPIN: READY
>     SIMCOM rx 0d 0a 4f 50 4c 20 55 50 44 41 54 49 4e 47 0d 0a ..OPL UPDATING..
>     SIMCOM line 4f 50 4c 20 55 50 44 41 54 49 4e 47             OPL UPDATING
>     SIMCOM rx 0d 0a 50 4e 4e 20 55 50 44 41 54 49 4e 47 0d 0a ..PNN UPDATING..
>     SIMCOM line 50 4e 4e 20 55 50 44 41 54 49 4e 47             PNN UPDATING
>     SIMCOM rx 0d 0a 53 4d 53 20 44 4f 4e 45 0d 0a             ..SMS DONE..
>     SIMCOM line 53 4d 53 20 44 4f 4e 45                         SMS DONE
>     SIMCOM rx 0d 0a 43 41 4c 4c 20 52 45 41 44 59 0d 0a       ..CALL READY..
>     SIMCOM line 43 41 4c 4c 20 52 45 41 44 59                   CALL READY
>     SIMCOM rx 0d 0a 50 42 20 44 4f 4e 45 0d 0a                ..PB DONE..
>     SIMCOM line 50 42 20 44 4f 4e 45                            PB DONE
>     SIMCOM tx 41 54 2b 43 50 49 4e 3f 3b 2b 43 52 45 47 3d 31 AT+CPIN?;+CREG=1
>     SIMCOM tx 3b 2b 43 54 5a 55 3d 31 3b 2b 43 54 5a 52 3d 31 ;+CTZU=1;+CTZR=1
>     SIMCOM tx 3b 2b 43 4c 49 50 3d 31 3b 2b 43 4d 47 46 3d 31 ;+CLIP=1;+CMGF=1
>     SIMCOM tx 3b 2b 43 4e 4d 49 3d 31 2c 32 2c 30 2c 30 2c 30 ;+CNMI=1,2,0,0,0
>     SIMCOM tx 3b 2b 43 53 44 48 3d 31 3b 2b 43 4d 45 45 3d 32 ;+CSDH=1;+CMEE=2
>     SIMCOM tx 3b 2b 43 53 51 3b 2b 41 55 54 4f 43 53 51 3d 31 ;+CSQ;+AUTOCSQ=1
>     SIMCOM tx 2c 31 3b 45 30 0d 0a                            ,1;E0..
>     SIMCOM rx 41 54 2b 43 50 49 4e 3f 3b 2b 43 52 45 47 3d 31 AT+CPIN?;+CREG=1
>     SIMCOM rx 3b 2b 43 54 5a 55 3d 31 3b 2b 43 54 5a 52 3d 31 ;+CTZU=1;+CTZR=1
>     SIMCOM rx 3b 2b 43 4c 49 50 3d 31 3b 2b 43 4d 47 46 3d 31 ;+CLIP=1;+CMGF=1
>     SIMCOM rx 3b 2b 43 4e 4d 49 3d 31 2c 32 2c 30 2c 30 2c 30 ;+CNMI=1,2,0,0,0
>     SIMCOM rx 3b 2b 43 53 44 48 3d 31 3b 2b 43 4d 45 45 3d 32 ;+CSDH=1;+CMEE=2
>     SIMCOM rx 3b 2b 43 53 51 3b 2b 41 55 54 4f 43 53 51 3d 31 ;+CSQ;+AUTOCSQ=1
>     SIMCOM rx 2c 31 3b 45 30 0d                               ,1;E0.
>     SIMCOM line 41 54 2b 43 50 49 4e 3f 3b 2b 43 52 45 47 3d 31 AT+CPIN?;+CREG=1
>     SIMCOM line 3b 2b 43 54 5a 55 3d 31 3b 2b 43 54 5a 52 3d 31 ;+CTZU=1;+CTZR=1
>     SIMCOM line 3b 2b 43 4c 49 50 3d 31 3b 2b 43 4d 47 46 3d 31 ;+CLIP=1;+CMGF=1
>     SIMCOM line 3b 2b 43 4e 4d 49 3d 31 2c 32 2c 30 2c 30 2c 30 ;+CNMI=1,2,0,0,0
>     SIMCOM line 3b 2b 43 53 44 48 3d 31 3b 2b 43 4d 45 45 3d 32 ;+CSDH=1;+CMEE=2
>     SIMCOM line 3b 2b 43 53 51 3b 2b 41 55 54 4f 43 53 51 3d 31 ;+CSQ;+AUTOCSQ=1
>     SIMCOM line 2c 31 3b 45 30                                  ,1;E0
>     SIMCOM rx 0d 0a 2b 43 50 49 4e 3a 20 52 45 41 44 59 0d 0a ..+CPIN: READY..
>     SIMCOM line 2b 43 50 49 4e 3a 20 52 45 41 44 59             +CPIN: READY
>     SIMCOM rx 0d 0a 2b 43 53 51 3a 20 32 31 2c 39 39 0d 0a 0d ..+CSQ: 21,99...
>     SIMCOM line 2b 43 53 51 3a 20 32 31 2c 39 39                +CSQ: 21,99
>     SIMCOM rx 0a 4f 4b 0d 0a                                  .OK..
>     SIMCOM line 4f 4b                                           OK
>     SIMCOM tx 41 54 2b 43 4f 50 53 3f                         AT+COPS?
>     SIMCOM tx 41 54 2b 43 4d 55 58 53 52 56 50 4f 52 54 3d 33 AT+CMUXSRVPORT=3
>     SIMCOM tx 2c 31 0d 0a                                     ,1..
>     SIMCOM rx 0d 0a 45 52 52 4f 52 0d 0a                      ..ERROR..
>     SIMCOM line 45 52 52 4f 52                                  ERROR
>     SIMCOM tx 41 54 2b 43 4d 55 58 53 52 56 50 4f 52 54 3d 32 AT+CMUXSRVPORT=2
>     SIMCOM tx 2c 31 0d 0a                                     ,1..
>     SIMCOM rx 0d 0a 4f 4b 0d 0a                               ..OK..
>     SIMCOM line 4f 4b                                           OK
>     SIMCOM tx 41 54 2b 43 4d 55 58 53 52 56 50 4f 52 54 3d 31 AT+CMUXSRVPORT=1
>     SIMCOM tx 2c 31 0d 0a                                     ,1..
>     SIMCOM rx 0d 0a 4f 4b 0d 0a                               ..OK..
>     SIMCOM line 4f 4b                                           OK
>     SIMCOM tx 41 54 2b 43 4d 55 58 53 52 56 50 4f 52 54 3d 30 AT+CMUXSRVPORT=0
>     SIMCOM tx 2c 35 0d 0a                                     ,5..
>     SIMCOM rx 0d 0a 4f 4b 0d 0a                               ..OK..
>     SIMCOM line 4f 4b                                           OK
>     SIMCOM tx 41 54 2b 43 4d 55 58 3d 30 0d 0a                AT+CMUX=0..
>     SIMCOM rx 0d 0a 4f 4b 0d 0a                               ..OK..
>     SIMCOM line 4f 4b                                           OK
>     I (39223) simcom: State: Enter MuxMode state
>     I (39223) gsm-mux: Start MUX
>     I (39223) gsm-mux: StartChannel(0)
>     SIMCOM tx f9 03 3f 01 1c f9                               ..?...
>     SIMCOM rx f9 03 73 01 d7 f9                               ..s...
>     I (39233) gsm-mux: ProcessFrame(CHAN=0, ADDR=03, CTRL=73, FCS=d7, LEN=6)
>     I (39233) gsm-mux: ChanProcessFrame(CHAN=0, ADDR=03, CTRL=73, LEN=3, IFP=3)
>     I (39233) gsm-mux: Channel #0 is open
>     I (39233) gsm-mux: StartChannel(1)
>     SIMCOM tx f9 07 3f 01 de f9                               ..?...
>     SIMCOM rx f9 07 73 01 15 f9                               ..s...
>     I (39243) gsm-mux: ProcessFrame(CHAN=1, ADDR=07, CTRL=73, FCS=15, LEN=6)
>     I (39243) gsm-mux: ChanProcessFrame(CHAN=1, ADDR=07, CTRL=73, LEN=3, IFP=3)
>     I (39243) gsm-mux: Channel #1 is open
>     I (39243) gsm-mux: StartChannel(2)
>     SIMCOM tx f9 0b 3f 01 59 f9                               ..?.Y.
>     SIMCOM rx f9 0b 73 01 92 f9                               ..s...
>     I (39243) gsm-mux: ProcessFrame(CHAN=2, ADDR=0b, CTRL=73, FCS=92, LEN=6)
>     I (39243) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=0b, CTRL=73, LEN=3, IFP=3)
>     I (39243) gsm-mux: Channel #2 is open
>     I (39243) gsm-mux: StartChannel(3)
>     SIMCOM tx f9 0f 3f 01 9b f9                               ..?...
>     SIMCOM rx f9 0f 73 01 50 f9                               ..s.P.
>     I (39253) gsm-mux: ProcessFrame(CHAN=3, ADDR=0f, CTRL=73, FCS=50, LEN=6)
>     I (39253) gsm-mux: ChanProcessFrame(CHAN=3, ADDR=0f, CTRL=73, LEN=3, IFP=3)
>     I (39253) gsm-mux: Channel #3 is open
>     I (39253) gsm-mux: StartChannel(4)
>     SIMCOM tx f9 13 3f 01 96 f9                               ..?...
>     SIMCOM rx f9 13 73 01 5d f9                               ..s.].
>     I (39263) gsm-mux: ProcessFrame(CHAN=4, ADDR=13, CTRL=73, FCS=5d, LEN=6)
>     I (39263) gsm-mux: ChanProcessFrame(CHAN=4, ADDR=13, CTRL=73, LEN=3, IFP=3)
>     I (39263) gsm-mux: Channel #4 is open
>     I (40193) simcom: State: Enter NetStart state
>     SIMCOM tx f9 0d ff 3b 41 54 2b 43 52 45 47 3f 3b 2b 43 43 ...;AT+CREG?;+CC
>     SIMCOM tx 4c 4b 3f 3b 2b 43 53 51 3b 2b 43 4f 50 53 3f 0d LK?;+CSQ;+COPS?.
>     SIMCOM tx 0a cf f9                                        ...
>     SIMCOM rx f9 0d ff c7 0d 0a 2b 43 52 45 47 3a 20 31 2c 35 ......+CREG: 1,5
>     SIMCOM rx 0d 0a 0d 0a 2b 43 43 4c 4b 3a 20 22 31 37 2f 31 ....+CCLK: "17/1
>     SIMCOM rx 30 2f 32 34 2c 31 34 3a 33 34 3a 32 35 2b 33 32 0/24,14:34:25+32
>     SIMCOM rx 22 0d 0a 0d 0a 2b 43 53 51 3a 20 32 31 2c 39 39 "....+CSQ: 21,99
>     SIMCOM rx 0d 0a 0d 0a 2b 43 4f 50 53 3a 20 30 2c 30 2c 22 ....+COPS: 0,0,"
>     SIMCOM rx 43 4d 48 4b 20 4a 73 79 20 54 65 6c 22 2c 32 0d CMHK Jsy Tel",2.
>     SIMCOM rx 0a 0d 0a 4f 4b 0d 0a 72 f9                      ...OK..r.
>     I (70273) gsm-mux: ProcessFrame(CHAN=3, ADDR=0d, CTRL=ff, FCS=72, LEN=105)
>     I (70273) gsm-mux: ChanProcessFrame(CHAN=3, ADDR=0d, CTRL=ff, LEN=102, IFP=3)
>     SIMCOM line 2b 43 52 45 47 3a 20 31 2c 35                   +CREG: 1,5
>     I (70273) simcom: CREG Network Registration 5
>     SIMCOM line 2b 43 43 4c 4b 3a 20 22 31 37 2f 31 30 2f 32 34 +CCLK: "17/10/24
>     SIMCOM line 2c 31 34 3a 33 34 3a 32 35 2b 33 32 22          ,14:34:25+32"
>     SIMCOM line 2b 43 53 51 3a 20 32 31 2c 39 39                +CSQ: 21,99
>     SIMCOM line 2b 43 4f 50 53 3a 20 30 2c 30 2c 22 43 4d 48 4b +COPS: 0,0,"CMHK
>     SIMCOM line 20 4a 73 79 20 54 65 6c 22 2c 32                 Jsy Tel",2
>     SIMCOM line 4f 4b                                           OK
>     SIMCOM tx f9 09 ff 5d 41 54 2b 43 47 44 43 4f 4e 54 3d 31 ...]AT+CGDCONT=1
>     SIMCOM tx 2c 22 49 50 22 2c 22 68 6f 6c 6f 67 72 61 6d 22 ,"IP","hologram"
>     SIMCOM tx 3b 2b 43 47 44 41 54 41 3d 22 50 50 50 22 2c 31 ;+CGDATA="PPP",1
>     SIMCOM tx 0d 0a a1 f9                                     ....
>     SIMCOM rx f9 09 ff 25 0d 0a 43 4f 4e 4e 45 43 54 20 31 31 ...%..CONNECT 11
>     SIMCOM rx 35 32 30 30 0d 0a fb f9                         5200....
>     I (71283) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=fb, LEN=24)
>     I (71283) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=21, IFP=3)
>     SIMCOM line 43 4f 4e 4e 45 43 54 20 31 31 35 32 30 30       CONNECT 115200
>     I (71283) simcom: PPP Connection is ready to start
>     I (72193) simcom: State: Enter NetMode state
>     SIMCOM ppp tx 7e ff 7d 23 c0 21 7d 21 7d 21 7d 20 7d 34 7d 22 ~.}#.!}!}!} }4}"
>     SIMCOM ppp tx 7d 26 7d 20 7d 20 7d 20 7d 20 7d 25 7d 26 7d 2d }&} } } } }%}&}-
>     SIMCOM ppp tx 51 7d 3d 27 7d 27 7d 22 7d 28 7d 22 ca 61 7e    Q}='}'}"}(}".a~
>     SIMCOM tx f9 09 ff 5f 7e ff 7d 23 c0 21 7d 21 7d 21 7d 20 ..._~.}#.!}!}!}
>     SIMCOM tx 7d 34 7d 22 7d 26 7d 20 7d 20 7d 20 7d 20 7d 25 }4}"}&} } } } }%
>     SIMCOM tx 7d 26 7d 2d 51 7d 3d 27 7d 27 7d 22 7d 28 7d 22 }&}-Q}='}'}"}(}"
>     SIMCOM tx ca 61 7e 42 f9                                  .a~B.
>     SIMCOM rx f9 09 ff 67 7e ff 7d 23 c0 21 7d 21 7d 20 7d 20 ...g~.}#.!}!} }
>     SIMCOM rx 7d 38 7d 22 7d 26 7d 20 7d 20 7d 20 7d 20 7d 23 }8}"}&} } } } }#
>     SIMCOM rx 7d 24 c0 23 7d 25 7d 26 c0 e5 f2 46 7d 27 7d 22 }$.#}%}&...F}'}"
>     SIMCOM rx 7d 28 7d 22 76 fc 7e 68 f9 f9 09 ff 61 7e ff 7d }(}"v.~h....a~.}
>     I (72243) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=68, LEN=57)
>     I (72243) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=54, IFP=3)
>     SIMCOM ppp rx 7e ff 7d 23 c0 21 7d 21 7d 20 7d 20 7d 38 7d 22 ~.}#.!}!} } }8}"
>     SIMCOM ppp rx 7d 26 7d 20 7d 20 7d 20 7d 20 7d 23 7d 24 c0 23 }&} } } } }#}$.#
>     SIMCOM ppp rx 7d 25 7d 26 c0 e5 f2 46 7d 27 7d 22 7d 28 7d 22 }%}&...F}'}"}(}"
>     SIMCOM ppp rx 76 fc 7e                                        v.~
>     SIMCOM ppp tx 7e ff 7d 23 c0 21 7d 22 7d 20 7d 20 7d 38 7d 22 ~.}#.!}"} } }8}"
>     SIMCOM ppp tx 7d 26 7d 20 7d 20 7d 20 7d 20 7d 23 7d 24 c0 23 }&} } } } }#}$.#
>     SIMCOM ppp tx 7d 25 7d 26 c0 e5 f2 46 7d 27 7d 22 7d 28 7d 22 }%}&...F}'}"}(}"
>     SIMCOM ppp tx ba 7d 31 7e                                     .}1~
>     SIMCOM tx f9 09 ff 69 7e ff 7d 23 c0 21 7d 22 7d 20 7d 20 ...i~.}#.!}"} }
>     SIMCOM tx 7d 38 7d 22 7d 26 7d 20 7d 20 7d 20 7d 20 7d 23 }8}"}&} } } } }#
>     SIMCOM tx 7d 24 c0 23 7d 25 7d 26 c0 e5 f2 46 7d 27 7d 22 }$.#}%}&...F}'}"
>     SIMCOM tx 7d 28 7d 22 ba 7d 31 7e 82 f9                   }(}".}1~..
>     SIMCOM rx 23 c0 21 7d 22 7d 21 7d 20 7d 34 7d 22 7d 26 7d #.!}"}!} }4}"}&}
>     SIMCOM rx 20 7d 20 7d 20 7d 20 7d 25 7d 26 7d 2d 51 7d 3d  } } } }%}&}-Q}=
>     SIMCOM rx 27 7d 27 7d 22 7d 28 7d 22 21 7d 28 7e 8c f9    '}'}"}(}"!}(~..
>     I (72263) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=8c, LEN=54)
>     I (72263) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=51, IFP=3)
>     SIMCOM ppp rx 7e ff 7d 23 c0 21 7d 22 7d 21 7d 20 7d 34 7d 22 ~.}#.!}"}!} }4}"
>     SIMCOM ppp rx 7d 26 7d 20 7d 20 7d 20 7d 20 7d 25 7d 26 7d 2d }&} } } } }%}&}-
>     SIMCOM ppp rx 51 7d 3d 27 7d 27 7d 22 7d 28 7d 22 21 7d 28 7e Q}='}'}"}(}"!}(~
>     SIMCOM ppp tx 7e ff 03 c0 23 01 01 00 0f 09 8c 31 fd 3f fa 8d ~...#......1.?..
>     SIMCOM ppp tx fe 3f 30 00 79 f0 7e                            .?0.y.~
>     SIMCOM tx f9 09 ff 2f 7e ff 03 c0 23 01 01 00 0f 09 8c 31 .../~...#......1
>     SIMCOM tx fd 3f fa 8d fe 3f 30 00 79 f0 7e 16 f9          .?...?0.y.~..
>     SIMCOM rx f9 09 ff 2b 7e ff 7d 23 c0 21 7d 2b 7d 21 7d 20 ...+~.}#.!}+}!}
>     SIMCOM rx 7d 28 c0 e5 f2 46 4e 99 7e 11 f9                }(...FN.~..
>     I (72283) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=11, LEN=27)
>     I (72283) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=24, IFP=3)
>     SIMCOM ppp rx 7e ff 7d 23 c0 21 7d 2b 7d 21 7d 20 7d 28 c0 e5 ~.}#.!}+}!} }(..
>     SIMCOM ppp rx f2 46 4e 99 7e                                  .FN.~
>     SIMCOM rx f9 09 ff 17 7e c0 23 02 01 00 05 00 fd 30 7e 3c ....~.#......0~<
>     SIMCOM rx f9                                              .
>     I (72293) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=3c, LEN=17)
>     I (72293) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=14, IFP=3)
>     SIMCOM ppp rx 7e c0 23 02 01 00 05 00 fd 30 7e                ~.#......0~
>     SIMCOM ppp tx 7e ff 03 80 21 01 01 00 1c 02 06 00 2d 0f 01 03 ~...!.......-...
>     SIMCOM ppp tx 06 00 00 00 00 81 06 00 00 00 00 83 06 00 00 00 ................
>     SIMCOM ppp tx 00 55 15 7e                                     .U.~
>     SIMCOM tx f9 09 ff 49 7e ff 03 80 21 01 01 00 1c 02 06 00 ...I~...!.......
>     SIMCOM tx 2d 0f 01 03 06 00 00 00 00 81 06 00 00 00 00 83 -...............
>     SIMCOM tx 06 00 00 00 00 55 15 7e ba f9                   .....U.~..
>     SIMCOM ppp tx 7e ff 03 80 57 01 01 00 0e 01 0a 18 b5 9a ee fe ~...W...........
>     SIMCOM ppp tx c2 87 ef 19 1f 7e                               .....~
>     SIMCOM tx f9 09 ff 2d 7e ff 03 80 57 01 01 00 0e 01 0a 18 ...-~...W.......
>     SIMCOM tx b5 9a ee fe c2 87 ef 19 1f 7e f5 f9             .........~..
>     SIMCOM rx f9 09 ff 13 7e 00 03 01 00 04 42 f6 7e 3b f9    ....~.....B.~;.
>     I (73353) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=3b, LEN=15)
>     I (73353) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=12, IFP=3)
>     SIMCOM ppp rx 7e 00 03 01 00 04 42 f6 7e                      ~.....B.~
>     SIMCOM ppp tx 7e ff 03 c0 21 08 02 00 09 00 03 01 00 04 c2 80 ~...!...........
>     SIMCOM ppp tx 7e                                              ~
>     SIMCOM tx f9 09 ff 23 7e ff 03 c0 21 08 02 00 09 00 03 01 ...#~...!.......
>     SIMCOM tx 00 04 c2 80 7e 1f f9                            ....~..
>     SIMCOM rx f9 09 ff 15 7e 80 21 01 00 00 04 67 c3 7e df f9 ....~.!....g.~..
>     I (75973) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=df, LEN=16)
>     I (75973) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=13, IFP=3)
>     SIMCOM ppp rx 7e 80 21 01 00 00 04 67 c3 7e                   ~.!....g.~
>     SIMCOM ppp tx 7e ff 03 80 21 03 00 00 0a 03 06 00 00 00 00 a0 ~...!...........
>     SIMCOM ppp tx 3d 7e                                           =~
>     SIMCOM tx f9 09 ff 25 7e ff 03 80 21 03 00 00 0a 03 06 00 ...%~...!.......
>     SIMCOM tx 00 00 00 a0 3d 7e fb f9                         ....=~..
>     SIMCOM rx f9 09 ff 21 7e 80 21 04 01 00 0a 02 06 00 2d 0f ...!~.!.......-.
>     SIMCOM rx 01 f8 30 7e fc f9 f9 09 ff 15 7e 80 21 01 01 00 ..0~......~.!...
>     I (75983) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=fc, LEN=22)
>     I (75983) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=19, IFP=3)
>     SIMCOM ppp rx 7e 80 21 04 01 00 0a 02 06 00 2d 0f 01 f8 30 7e ~.!.......-...0~
>     SIMCOM ppp tx 7e ff 03 80 21 01 02 00 16 03 06 00 00 00 00 81 ~...!...........
>     SIMCOM ppp tx 06 00 00 00 00 83 06 00 00 00 00 da 82 7e       .............~
>     SIMCOM tx f9 09 ff 3d 7e ff 03 80 21 01 02 00 16 03 06 00 ...=~...!.......
>     SIMCOM tx 00 00 00 81 06 00 00 00 00 83 06 00 00 00 00 da ................
>     SIMCOM tx 82 7e e9 f9                                     .~..
>     SIMCOM rx 04 bb 99 7e df f9                               ...~..
>     I (75993) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=df, LEN=16)
>     I (75993) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=13, IFP=3)
>     SIMCOM ppp rx 7e 80 21 01 01 00 04 bb 99 7e                   ~.!......~
>     SIMCOM ppp tx 7e ff 03 80 21 02 01 00 04 cd 92 7e             ~...!......~
>     SIMCOM tx f9 09 ff 19 7e ff 03 80 21 02 01 00 04 cd 92 7e ....~...!......~
>     SIMCOM tx d6 f9                                           ..
>     SIMCOM rx f9 09 ff 39 7e 80 21 03 02 00 16 03 06 0a 34 df ...9~.!.......4.
>     SIMCOM rx 08 81 06 d4 09 00 87 83 06 d4 09 00 88 31 96 7e .............1.~
>     SIMCOM rx ee f9                                           ..
>     I (76003) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=ee, LEN=34)
>     I (76003) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=31, IFP=3)
>     SIMCOM ppp rx 7e 80 21 03 02 00 16 03 06 0a 34 df 08 81 06 d4 ~.!.......4.....
>     SIMCOM ppp rx 09 00 87 83 06 d4 09 00 88 31 96 7e             .........1.~
>     SIMCOM ppp tx 7e ff 03 80 21 01 03 00 16 03 06 0a 34 df 08 81 ~...!.......4...
>     SIMCOM ppp tx 06 d4 09 00 87 83 06 d4 09 00 88 96 6b 7e       ............k~
>     SIMCOM tx f9 09 ff 3d 7e ff 03 80 21 01 03 00 16 03 06 0a ...=~...!.......
>     SIMCOM tx 34 df 08 81 06 d4 09 00 87 83 06 d4 09 00 88 96 4...............
>     SIMCOM tx 6b 7e e9 f9                                     k~..
>     SIMCOM rx f9 09 ff 39 7e 80 21 02 03 00 16 03 06 0a 34 df ...9~.!.......4.
>     SIMCOM rx 08 81 06 d4 09 00 87 83 06 d4 09 00 88 00 08 7e ...............~
>     SIMCOM rx ee f9                                           ..
>     I (76023) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=ee, LEN=34)
>     I (76023) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=31, IFP=3)
>     SIMCOM ppp rx 7e 80 21 02 03 00 16 03 06 0a 34 df 08 81 06 d4 ~.!.......4.....
>     SIMCOM ppp rx 09 00 87 83 06 d4 09 00 88 00 08 7e             ...........~
>     I (76053) simcom: status_cb: Connected
>     I (76053) simcom:    our_ipaddr  = 10.52.223.8
>     I (76063) simcom:    his_ipaddr  = 10.64.64.64
>     I (76073) simcom:    netmask     = 255.255.255.255
>     I (76073) simcom:    our6_ipaddr = ::
>
>
> That is:
>
>   * A power control layer to be able to reliable power on/off the simcom modem and track it’s power status.
>   * A uart layer to talk to the modem.
>   * An initialisation of the SIMCOM modem, getting things like ICCID and sim card status.
>   * A GSM 07.10 mux, run on top of the uart, to give us four virtual channels (1 for a NMEA GPS stream, 1 for a GSM PPP data connection, 1 for AT polling of
>     status (sms, signal quality, etc), and 1 for generic AT commands).
>   * An initialisation of the network layer, to get the GSM data connection channel into PPP mode.
>   * A software PPPOS (PPP over serial) implementation, to make a PPP VPN to the GSM provider and authenticate with PAP username and password.
>
>
> All that to get an IP address. No error recovery at the moment, but at least I have an IP address. A network interface. Something that works the same as a
> Wifi link to the rest of the software.
>
> Once the ppp link is up, we can do this over it:
>
>     OVMS > server v2 start
>     Launching OVMS Server V2 connection (oscv2)
>     I (486733) ovms-server-v2: OVMS Server V2 registered metric modifier is #1
>     I (486733) ovms-server: Launching OVMS Server V2 connection task (oscv2)
>     I (486743) ovms-server-v2: OVMS Server v2 task running
>     I (486743) ovms-server-v2: Connection is api.openvehicles.com:6867 <http://api.openvehicles.com:6867> TESTCAR/NETPASS
>     SIMCOM ppp tx 7e 21 45 00 00 42 00 00 00 00 ff 11 fd dd 0a 34 ~!E..B.........4
>     SIMCOM ppp tx df 08 d4 09 00 87 b7 ff 00 35 00 2e d6 93 d4 3f .........5.....?
>     SIMCOM ppp tx 01 00 00 01 00 00 00 00 00 00 03 61 70 69 0c 6f ...........api.o
>     SIMCOM ppp tx 70 65 6e 76 65 68 69 63 6c 65 73 03 63 6f 6d 00 penvehicles.com <http://penvehicles.com>.
>     SIMCOM ppp tx 00 01 00 01 e8 c5 7e                            ......~
>     SIMCOM tx f9 09 ff 8f 7e 21 45 00 00 42 00 00 00 00 ff 11 ....~!E..B......
>     SIMCOM tx fd dd 0a 34 df 08 d4 09 00 87 b7 ff 00 35 00 2e ...4.........5..
>     SIMCOM tx d6 93 d4 3f 01 00 00 01 00 00 00 00 00 00 03 61 ...?...........a
>     SIMCOM tx 70 69 0c 6f 70 65 6e 76 65 68 69 63 6c 65 73 03 pi.openvehicles.
>     SIMCOM tx 63 6f 6d 00 00 01 00 01 e8 c5 7e ce f9          com.......~..
>     SIMCOM ppp tx 7e 21 45 00 00 42 00 01 00 00 ff 11 fd dc 0a 34 ~!E..B.........4
>     SIMCOM ppp tx df 08 d4 09 00 87 b7 ff 00 35 00 2e d6 93 d4 3f .........5.....?
>     SIMCOM ppp tx 01 00 00 01 00 00 00 00 00 00 03 61 70 69 0c 6f ...........api.o
>     SIMCOM ppp tx 70 65 6e 76 65 68 69 63 6c 65 73 03 63 6f 6d 00 penvehicles.com <http://penvehicles.com>.
>     SIMCOM ppp tx 00 01 00 01 41 7d 5d 7e                         ....A}]~
>     SIMCOM tx f9 09 ff 91 7e 21 45 00 00 42 00 01 00 00 ff 11 ....~!E..B......
>     SIMCOM tx fd dc 0a 34 df 08 d4 09 00 87 b7 ff 00 35 00 2e ...4.........5..
>     SIMCOM tx d6 93 d4 3f 01 00 00 01 00 00 00 00 00 00 03 61 ...?...........a
>     SIMCOM tx 70 69 0c 6f 70 65 6e 76 65 68 69 63 6c 65 73 03 pi.openvehicles.
>     SIMCOM tx 63 6f 6d 00 00 01 00 01 41 7d 5d 7e 38 f9       com.....A}]~8.
>     SIMCOM ppp tx 7e 21 45 00 00 42 00 02 00 00 ff 11 fd db 0a 34 ~!E..B.........4
>     SIMCOM ppp tx df 08 d4 09 00 87 b7 ff 00 35 00 2e d6 93 d4 3f .........5.....?
>     SIMCOM ppp tx 01 00 00 01 00 00 00 00 00 00 03 61 70 69 0c 6f ...........api.o
>     SIMCOM ppp tx 70 65 6e 76 65 68 69 63 6c 65 73 03 63 6f 6d 00 penvehicles.com <http://penvehicles.com>.
>     SIMCOM ppp tx 00 01 00 01 cc 98 7e                            ......~
>     SIMCOM tx f9 09 ff 8f 7e 21 45 00 00 42 00 02 00 00 ff 11 ....~!E..B......
>     SIMCOM tx fd db 0a 34 df 08 d4 09 00 87 b7 ff 00 35 00 2e ...4.........5..
>     SIMCOM tx d6 93 d4 3f 01 00 00 01 00 00 00 00 00 00 03 61 ...?...........a
>     SIMCOM tx 70 69 0c 6f 70 65 6e 76 65 68 69 63 6c 65 73 03 pi.openvehicles.
>     SIMCOM tx 63 6f 6d 00 00 01 00 01 cc 98 7e ce f9          com.......~..
>     SIMCOM rx f9 09 ff 00 01 7e 21 45 00 00 f7 43 30 00 00 39 .....~!E...C0..9
>     SIMCOM rx 11 7f f9 d4 09 00 87 0a 34 df 08 00 35 b7 ff 00 ........4...5...
>     SIMCOM rx e3 14 ef d4 3f 81 80 00 01 00 01 00 04 00 04 03 ....?...........
>     SIMCOM rx 61 70 69 0c 6f 70 65 6e 76 65 68 69 63 6c 65 73 api.openvehicles
>     SIMCOM rx 03 63 6f 6d 00 00 01 00 01 c0 0c 00 01 00 01 00 .com............
>     SIMCOM rx 00 29 a7 00 04 ca 34 2b 50 c0 10 00 02 00 01 00 .)....4+P.......
>     SIMCOM rx 01 b2 28 00 14 06 64 6e 73 32 34 39 01 64 08 72 ..(...dns249.d.r
>     SIMCOM rx 65 67 69 73 74 65 72 c0                         egister.
>     SIMCOM rx 1d c0 10 00 02 00 01 00 01 b2 28 00 0b 5b f9 f9 ..........(..[..
>     I (488623) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=5b, LEN=135)
>     I (488623) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=132, IFP=4)
>     SIMCOM ppp rx 7e 21 45 00 00 f7 43 30 00 00 39 11 7f f9 d4 09 ~!E...C0..9.....
>     SIMCOM ppp rx 00 87 0a 34 df 08 00 35 b7 ff 00 e3 14 ef d4 3f ...4...5.......?
>     SIMCOM ppp rx 81 80 00 01 00 01 00 04 00 04 03 61 70 69 0c 6f ...........api.o
>     SIMCOM ppp rx 70 65 6e 76 65 68 69 63 6c 65 73 03 63 6f 6d 00 penvehicles.com <http://penvehicles.com>.
>     SIMCOM ppp rx 00 01 00 01 c0 0c 00 01 00 01 00 00 29 a7 00 04 ............)...
>     SIMCOM ppp rx ca 34 2b 50 c0 10 00 02 00 01 00 01 b2 28 00 14 .4+P.........(..
>     SIMCOM ppp rx 06 64 6e 73 32 34 39 01 64 08 72 65 67 69 73 74 .dns249.d.regist
>     SIMCOM ppp rx 65 72 c0 1d c0 10 00 02 00 01 00 01 b2 28 00 0b er...........(..
>     SIMCOM rx 09 ff e1 06 64 6e 73 31 38 32 01 63 c0 4b c0 10 ....dns182.c.K..
>     SIMCOM rx 00 02 00 01 00 01 b2 28 00 0b 06 64 6e 73 30 31 .......(...dns01
>     SIMCOM rx 33 01 62 c0 4b c0 10 00 02 00 01 00 01 b2 28 00 3.b.K.........(.
>     SIMCOM rx 0b 06 64 6e 73 30 39 33 01 61 c0 4b c0 90 00 01 ..dns093.a.K....
>     SIMCOM rx 00 01 00 01 b2 28 00 04 d8 15 e7 5d c0 79 00 01 .....(.....].y..
>     SIMCOM rx 00 01 00 01 b2 28 00 04 d8 15 e8 0d c0 62 00 01 .....(.......b..
>     SIMCOM rx 00 01 00 01 b2 28 00 04 d8 15 eb b6 c0 42 00 01 .....(.......B..
>     SIMCOM rx 00 01 00 6c f9 f9 09 ff 19 01 ea 79 00 04 d8 15 ...l.......y....
>     I (488663) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=6c, LEN=118)
>     I (488663) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=115, IFP=3)
>     SIMCOM ppp rx 06 64 6e 73 31 38 32 01 63 c0 4b c0 10 00 02 00 .dns182.c.K.....
>     SIMCOM ppp rx 01 00 01 b2 28 00 0b 06 64 6e 73 30 31 33 01 62 ....(...dns013.b
>     SIMCOM ppp rx c0 4b c0 10 00 02 00 01 00 01 b2 28 00 0b 06 64 .K.........(...d
>     SIMCOM ppp rx 6e 73 30 39 33 01 61 c0 4b c0 90 00 01 00 01 00 ns093.a.K.......
>     SIMCOM ppp rx 01 b2 28 00 04 d8 15 e7 5d c0 79 00 01 00 01 00 ..(.....].y.....
>     SIMCOM ppp rx 01 b2 28 00 04 d8 15 e8 0d c0 62 00 01 00 01 00 ..(.......b.....
>     SIMCOM ppp rx 01 b2 28 00 04 d8 15 eb b6 c0 42 00 01 00 01 00 ..(.......B.....
>     SIMCOM rx ec f9 cf 73 7e d6 f9 f9 09 ff 00 01 7e 21 45 00 ...s~.......~!E.
>     I (488703) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=d6, LEN=18)
>     I (488703) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=15, IFP=3)
>     SIMCOM ppp rx 01 ea 79 00 04 d8 15 ec f9 cf 73 7e             ..y.......s~
>     SIMCOM rx 00 f7 43 31 00 00 39 11 7f f8 d4 09 00 87 0a 34 ..C1..9........4
>     SIMCOM rx df 08 00 35 b7 ff 00 e3 14 ef d4 3f 81 80 00 01 ...5.......?....
>     SIMCOM rx 00 01 00 04 00 04 03 61 70 69 0c 6f 70 65 6e 76 .......api.openv
>     SIMCOM rx 65 68 69 63 6c 65 73 03 63 6f 6d 00 00 01 00 01 ehicles.com <http://ehicles.com>.....
>     SIMCOM rx c0 0c 00 01 00 01 00 00 29 a7 00 04 ca 34 2b 50 ........)....4+P
>     SIMCOM rx c0 10 00 02 00 01 00 01 b2 28 00 14 06 64 6e 73 .........(...dns
>     SIMCOM rx 32 34 39 01 64 08 72 65 67 69 73 74 65 72 c0 1d 249.d.register..
>     SIMCOM ppp tx 7e 21 45 00 00 2c 00 03 00 00 ff 06 dd 07 0a 34 ~!E..,.........4
>     SIMCOM ppp tx df 08 ca 34 2b 50 d7 8b 1a d3 00 00 19 6d 00 00 ...4+P.......m..
>     SIMCOM ppp tx 00 00 60 02 16 d0 96 c9 00 00 02 04 05 b4 12 f5 ..`.............
>     SIMCOM ppp tx 7e                                              ~
>     SIMCOM tx f9 09 ff 63 7e 21 45 00 00 2c 00 03 00 00 ff 06 ...c~!E..,......
>     SIMCOM tx dd 07 0a 34 df 08 ca 34 2b 50 d7 8b 1a d3 00 00 ...4...4+P......
>     SIMCOM tx 19 6d 00 00 00 00 60 02 16 d0 96 c9 00 00 02 04 .m....`.........
>     SIMCOM tx 05 b4 12 f5 7e 6f f9                            ....~o.
>     SIMCOM rx c0 10 00 02 00 01 00 01 b2 28 00 0b 5b f9 f9 09 .........(..[...
>     I (488773) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=5b, LEN=135)
>     I (488783) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=132, IFP=4)
>     SIMCOM ppp rx 7e 21 45 00 00 f7 43 31 00 00 39 11 7f f8 d4 09 ~!E...C1..9.....
>     SIMCOM ppp rx 00 87 0a 34 df 08 00 35 b7 ff 00 e3 14 ef d4 3f ...4...5.......?
>     SIMCOM ppp rx 81 80 00 01 00 01 00 04 00 04 03 61 70 69 0c 6f ...........api.o
>     SIMCOM ppp rx 70 65 6e 76 65 68 69 63 6c 65 73 03 63 6f 6d 00 penvehicles.com <http://penvehicles.com>.
>     SIMCOM ppp rx 00 01 00 01 c0 0c 00 01 00 01 00 00 29 a7 00 04 ............)...
>     SIMCOM ppp rx ca 34 2b 50 c0 10 00 02 00 01 00 01 b2 28 00 14 .4+P.........(..
>     SIMCOM ppp rx 06 64 6e 73 32 34 39 01 64 08 72 65 67 69 73 74 .dns249.d.regist
>     SIMCOM ppp rx 65 72 c0 1d c0 10 00 02 00 01 00 01 b2 28 00 0b er...........(..
>     SIMCOM rx ff e1 06 64 6e 73 30 39 33 01 61 c0 4b c0 10 00 ...dns093.a.K...
>     SIMCOM rx 02 00 01 00 01 b2 28 00 0b 06 64 6e 73 30 31 33 ......(...dns013
>     SIMCOM rx 01 62 c0 4b c0 10 00 02 00 01 00 01 b2 28 00 0b .b.K.........(..
>     SIMCOM rx 06 64 6e 73 31 38 32 01 63 c0 4b c0 62 00 01 00 .dns182.c.K.b...
>     SIMCOM rx 01 00 01 b2 28 00 04 d8 15 e7 5d c0 79 00 01 00 ....(.....].y...
>     SIMCOM rx 01 00 01 b2 28 00 04 d8 15 e8 0d c0 90 00 01 00 ....(...........
>     SIMCOM rx 01 00 01 b2 28 00 04 d8 15 eb b6 c0 42 00 01 00 ....(.......B...
>     SIMCOM rx 01 00 6c f9 f9 09 ff 19 01 ea 79 00 04 d8 15 ec ..l.......y.....
>     I (488903) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=6c, LEN=118)
>     I (488903) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=115, IFP=3)
>     SIMCOM ppp rx 06 64 6e 73 30 39 33 01 61 c0 4b c0 10 00 02 00 .dns093.a.K.....
>     SIMCOM ppp rx 01 00 01 b2 28 00 0b 06 64 6e 73 30 31 33 01 62 ....(...dns013.b
>     SIMCOM ppp rx c0 4b c0 10 00 02 00 01 00 01 b2 28 00 0b 06 64 .K.........(...d
>     SIMCOM ppp rx 6e 73 31 38 32 01 63 c0 4b c0 62 00 01 00 01 00 ns182.c.K.b.....
>     SIMCOM ppp rx 01 b2 28 00 04 d8 15 e7 5d c0 79 00 01 00 01 00 ..(.....].y.....
>     SIMCOM ppp rx 01 b2 28 00 04 d8 15 e8 0d c0 90 00 01 00 01 00 ..(.............
>     SIMCOM ppp rx 01 b2 28 00 04 d8 15 eb b6 c0 42 00 01 00 01 00 ..(.......B.....
>     SIMCOM rx f9 7c 99 7e d6 f9 f9 09 ff 00 01 7e 21 45 00 00 .|.~.......~!E..
>     I (488963) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=d6, LEN=18)
>     I (488973) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=15, IFP=3)
>     SIMCOM ppp rx 01 ea 79 00 04 d8 15 ec f9 7c 99 7e             ..y......|.~
>     SIMCOM ppp tx 7e 21 45 00 00 38 00 04 00 00 ff 01 fd f3 0a 34 ~!E..8.........4
>     SIMCOM ppp tx df 08 d4 09 00 87 03 03 2e f6 00 00 00 00 45 00 ..............E.
>     SIMCOM ppp tx 00 f7 43 31 00 00 39 11 7f f8 d4 09 00 87 0a 34 ..C1..9........4
>     SIMCOM ppp tx df 08 00 35 b7 ff 00 e3 14 ef 14 b3 7e          ...5........~
>     SIMCOM tx f9 09 ff 7b 7e 21 45 00 00 38 00 04 00 00 ff 01 ...{~!E..8......
>     SIMCOM tx fd f3 0a 34 df 08 d4 09 00 87 03 03 2e f6 00 00 ...4............
>     SIMCOM tx 00 00 45 00 00 f7 43 31 00 00 39 11 7f f8 d4 09 ..E...C1..9.....
>     SIMCOM tx 00 87 0a 34 df 08 00 35 b7 ff 00 e3 14 ef 14 b3 ...4...5........
>     SIMCOM tx 7e 7d f9                                        ~}.
>     SIMCOM rx f7 43 47 00 00 39 11 7f e2 d4 09 00 87 0a 34 df .CG..9........4.
>     SIMCOM rx 08 00 35 b7 ff 00 e3 1b e8 d4 3f 81 80 00 01 00 ..5.......?.....
>     SIMCOM rx 01 00 04 00 04 03 61 70 69 0c 6f 70 65 6e 76 65 ......api.openve
>     SIMCOM rx 68 69 63 6c 65 73 03 63 6f 6d 00 00 01 00 01 c0 hicles.com <http://hicles.com>......
>     SIMCOM rx 0c 00 01 00 01 00 00 29 a7 00 04 ca 34 2b 50 c0 .......)....4+P.
>     SIMCOM rx 10 00 02 00 01 00 01 b2 28 00 14 06 64 6e 73 30 ........(...dns0
>     SIMCOM rx 31 33 01 62 08 72 65 67 69 73 74 65 72 c0 1d c0 13.b.register...
>     SIMCOM rx 10 00 02 00 01 00 01 b2 28 00 0b 5b f9 f9 09 ff ........(..[....
>     I (489103) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=5b, LEN=135)
>     I (489113) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=132, IFP=4)
>     SIMCOM ppp rx 7e 21 45 00 00 f7 43 47 00 00 39 11 7f e2 d4 09 ~!E...CG..9.....
>     SIMCOM ppp rx 00 87 0a 34 df 08 00 35 b7 ff 00 e3 1b e8 d4 3f ...4...5.......?
>     SIMCOM ppp rx 81 80 00 01 00 01 00 04 00 04 03 61 70 69 0c 6f ...........api.o
>     SIMCOM ppp rx 70 65 6e 76 65 68 69 63 6c 65 73 03 63 6f 6d 00 penvehicles.com <http://penvehicles.com>.
>     SIMCOM ppp rx 00 01 00 01 c0 0c 00 01 00 01 00 00 29 a7 00 04 ............)...
>     SIMCOM ppp rx ca 34 2b 50 c0 10 00 02 00 01 00 01 b2 28 00 14 .4+P.........(..
>     SIMCOM ppp rx 06 64 6e 73 30 31 33 01 62 08 72 65 67 69 73 74 .dns013.b.regist
>     SIMCOM ppp rx 65 72 c0 1d c0 10 00 02 00 01 00 01 b2 28 00 0b er...........(..
>     SIMCOM rx e1 06 64 6e 73 31 38 32 01 63 c0 4b c0 10 00 02 ..dns182.c.K....
>     SIMCOM rx 00 01 00 01 b2 28 00 0b 06 64 6e 73 32 34 39 01 .....(...dns249.
>     SIMCOM rx 64 c0 4b c0 10 00 02 00 01 00 01 b2 28 00 0b 06 d.K.........(...
>     SIMCOM rx 64 6e 73 30 39 33 01 61 c0 4b c0 90 00 01 00 01 dns093.a.K......
>     SIMCOM rx 00 01 b2 28 00 04 d8 15 e7 5d c0 42 00 01 00 01 ...(.....].B....
>     SIMCOM rx 00 01 b2 28 00 04 d8 15 e8 0d c0 62 00 01 00 01 ...(.......b....
>     SIMCOM rx 00 01 b2 28 00 04 d8 15 eb b6 c0 79 00 01 00 01 ...(.......y....
>     SIMCOM rx 00 6c f9 f9 09 ff 19 01 ea 79 00 04 d8 15 ec f9 .l.......y......
>     I (489233) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=6c, LEN=118)
>     I (489233) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=115, IFP=3)
>     SIMCOM ppp rx 06 64 6e 73 31 38 32 01 63 c0 4b c0 10 00 02 00 .dns182.c.K.....
>     SIMCOM ppp rx 01 00 01 b2 28 00 0b 06 64 6e 73 32 34 39 01 64 ....(...dns249.d
>     SIMCOM ppp rx c0 4b c0 10 00 02 00 01 00 01 b2 28 00 0b 06 64 .K.........(...d
>     SIMCOM ppp rx 6e 73 30 39 33 01 61 c0 4b c0 90 00 01 00 01 00 ns093.a.K.......
>     SIMCOM ppp rx 01 b2 28 00 04 d8 15 e7 5d c0 42 00 01 00 01 00 ..(.....].B.....
>     SIMCOM ppp rx 01 b2 28 00 04 d8 15 e8 0d c0 62 00 01 00 01 00 ..(.......b.....
>     SIMCOM ppp rx 01 b2 28 00 04 d8 15 eb b6 c0 79 00 01 00 01 00 ..(.......y.....
>     SIMCOM rx 93 50 7e d6 f9                                  .P~..
>     I (489303) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=d6, LEN=18)
>     I (489303) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=15, IFP=3)
>     SIMCOM ppp rx 01 ea 79 00 04 d8 15 ec f9 93 50 7e             ..y.......P~
>     SIMCOM ppp tx 7e 21 45 00 00 38 00 05 00 00 ff 01 fd f2 0a 34 ~!E..8.........4
>     SIMCOM ppp tx df 08 d4 09 00 87 03 03 27 fd 00 00 00 00 45 00 ........'.....E.
>     SIMCOM ppp tx 00 f7 43 47 00 00 39 11 7f e2 d4 09 00 87 0a 34 ..CG..9........4
>     SIMCOM ppp tx df 08 00 35 b7 ff 00 e3 1b e8 04 eb 7e          ...5........~
>     SIMCOM tx f9 09 ff 7b 7e 21 45 00 00 38 00 05 00 00 ff 01 ...{~!E..8......
>     SIMCOM tx fd f2 0a 34 df 08 d4 09 00 87 03 03 27 fd 00 00 ...4........'...
>     SIMCOM tx 00 00 45 00 00 f7 43 47 00 00 39 11 7f e2 d4 09 ..E...CG..9.....
>     SIMCOM tx 00 87 0a 34 df 08 00 35 b7 ff 00 e3 1b e8 04 eb ...4...5........
>     SIMCOM tx 7e 7d f9                                        ~}.
>     SIMCOM rx f9 09 ff 63 7e 21 45 00 00 2c 00 00 40 00 2d 06 ...c~!E..,.. at .-.
>     SIMCOM rx 6f 0b ca 34 2b 50 0a 34 df 08 1a d3 d7 8b 57 15 o..4+P.4......W.
>     SIMCOM rx 7c c8 00 00 19 6e 60 12 16 d0 c3 3e 00 00 02 04 |....n`....>....
>     SIMCOM rx 05 50 8a cc 7e 6f f9                            .P..~o.
>     I (489403) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=6f, LEN=55)
>     I (489413) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=52, IFP=3)
>     SIMCOM ppp rx 7e 21 45 00 00 2c 00 00 40 00 2d 06 6f 0b ca 34 ~!E..,.. at .-.o..4
>     SIMCOM ppp rx 2b 50 0a 34 df 08 1a d3 d7 8b 57 15 7c c8 00 00 +P.4......W.|...
>     SIMCOM ppp rx 19 6e 60 12 16 d0 c3 3e 00 00 02 04 05 50 8a cc .n`....>.....P..
>     SIMCOM ppp rx 7e                                              ~
>     SIMCOM ppp tx 7e 21 45 00 00 28 00 06 00 00 ff 06 dd 08 0a 34 ~!E..(.........4
>     SIMCOM ppp tx df 08 ca 34 2b 50 d7 8b 1a d3 00 00 19 6e 57 15 ...4+P.......nW.
>     SIMCOM ppp tx 7c c9 50 10 16 d0 da 97 00 00 34 9b 7e          |.P.......4.~
>     SIMCOM tx f9 09 ff 5b 7e 21 45 00 00 28 00 06 00 00 ff 06 ...[~!E..(......
>     SIMCOM tx dd 08 0a 34 df 08 ca 34 2b 50 d7 8b 1a d3 00 00 ...4...4+P......
>     SIMCOM tx 19 6e 57 15 7c c9 50 10 16 d0 da 97 00 00 34 9b .nW.|.P.......4.
>     SIMCOM tx 7e 45 f9                                        ~E.
>     I (489453) ovms-server-v2: Connected to OVMS Server V2 at api.openvehicles.com <http://api.openvehicles.com>
>     I (489503) ovms-server-v2: Sending server login: MP-C 0 SfOEAN1nHCviPFVNSUIHvt eadHgQ0XOb6wDFqEMNCYXQ== TESTCAR
>     SIMCOM ppp tx 7e 21 45 00 00 68 00 07 00 00 ff 06 dc c7 0a 34 ~!E..h.........4
>     SIMCOM ppp tx df 08 ca 34 2b 50 d7 8b 1a d3 00 00 19 6e 57 15 ...4+P.......nW.
>     SIMCOM ppp tx 7c c9 50 18 16 d0 98 a8 00 00 4d 50 2d 43 20 30 |.P.......MP-C 0
>     SIMCOM ppp tx 20 53 66 4f 45 41 4e 31 6e 48 43 76 69 50 46 56  SfOEAN1nHCviPFV
>     SIMCOM ppp tx 4e 53 55 49 48 76 74 20 65 61 64 48 67 51 30 58 NSUIHvt eadHgQ0X
>     SIMCOM ppp tx 4f 62 36 77 44 46 71 45 4d 4e 43 59 58 51 3d 3d Ob6wDFqEMNCYXQ==
>     SIMCOM ppp tx 20 54 45 53 54 43 41 52 0d 0a 84 c0 7e           TESTCAR....~
>     SIMCOM tx f9 09 ff db 7e 21 45 00 00 68 00 07 00 00 ff 06 ....~!E..h......
>     SIMCOM tx dc c7 0a 34 df 08 ca 34 2b 50 d7 8b 1a d3 00 00 ...4...4+P......
>     SIMCOM tx 19 6e 57 15 7c c9 50 18 16 d0 98 a8 00 00 4d 50 .nW.|.P.......MP
>     SIMCOM tx 2d 43 20 30 20 53 66 4f 45 41 4e 31 6e 48 43 76 -C 0 SfOEAN1nHCv
>     SIMCOM tx 69 50 46 56 4e 53 55 49 48 76 74 20 65 61 64 48 iPFVNSUIHvt eadH
>     SIMCOM tx 67 51 30 58 4f 62 36 77 44 46 71 45 4d 4e 43 59 gQ0XOb6wDFqEMNCY
>     SIMCOM tx 58 51 3d 3d 20 54 45 53 54 43 41 52 0d 0a 84 c0 XQ== TESTCAR....
>     SIMCOM tx 7e a5 f9                                        ~..
>     SIMCOM rx f9 09 ff 5b 7e 21 45 00 00 28 73 9f 40 00 2d 06 ...[~!E..(s. at .-.
>     SIMCOM rx fb 6f ca 34 2b 50 0a 34 df 08 1a d3 d7 8b 57 15 .o.4+P.4......W.
>     SIMCOM rx 7c c9 00 00 19 ae 50 10 16 d0 da 57 00 00 23 8a |.....P....W..#.
>     SIMCOM rx 7e 45 f9 f9 09 ff cb 7e 21 45 00 00 60 73 a0 40 ~E.....~!E..`s.@
>     I (490203) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=45, LEN=51)
>     I (490203) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=48, IFP=3)
>     SIMCOM ppp rx 7e 21 45 00 00 28 73 9f 40 00 2d 06 fb 6f ca 34 ~!E..(s. at .-..o.4
>     SIMCOM ppp rx 2b 50 0a 34 df 08 1a d3 d7 8b 57 15 7c c9 00 00 +P.4......W.|...
>     SIMCOM ppp rx 19 ae 50 10 16 d0 da 57 00 00 23 8a 7e          ..P....W..#.~
>     SIMCOM rx 00 2d 06 fb 36 ca 34 2b 50 0a 34 df 08 1a d3 d7 .-..6.4+P.4.....
>     SIMCOM rx 8b 57 15 7c c9 00 00 19 ae 50 18 16 d0 ee 08 00 .W.|.....P......
>     SIMCOM rx 00 4d 50 2d 53 20 30 20 7a 69 35 47 31 74 6d 73 .MP-S 0 zi5G1tms
>     SIMCOM rx 65 64 42 72 73 4b 68 65 74 41 67 57 7a 70 20 78 edBrsKhetAgWzp x
>     SIMCOM rx 4b 54 56 4d 51 4d 68 35 30 35 6d 73 35 4f 67 6f KTVMQMh505ms5Ogo
>     SIMCOM rx 53 44 71 75 51 3d 3d 0d 0a 3b fb 7e b9 f9 f9 09 SDquQ==..;.~....
>     I (490223) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=b9, LEN=107)
>     I (490223) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=104, IFP=3)
>     SIMCOM ppp rx 7e 21 45 00 00 60 73 a0 40 00 2d 06 fb 36 ca 34 ~!E..`s. at .-..6.4
>     SIMCOM ppp rx 2b 50 0a 34 df 08 1a d3 d7 8b 57 15 7c c9 00 00 +P.4......W.|...
>     SIMCOM ppp rx 19 ae 50 18 16 d0 ee 08 00 00 4d 50 2d 53 20 30 ..P.......MP-S 0
>     SIMCOM ppp rx 20 7a 69 35 47 31 74 6d 73 65 64 42 72 73 4b 68  zi5G1tmsedBrsKh
>     SIMCOM ppp rx 65 74 41 67 57 7a 70 20 78 4b 54 56 4d 51 4d 68 etAgWzp xKTVMQMh
>     SIMCOM ppp rx 35 30 35 6d 73 35 4f 67 6f 53 44 71 75 51 3d 3d 505ms5OgoSDquQ==
>     SIMCOM ppp rx 0d 0a 3b fb 7e                                  ..;.~
>     SIMCOM rx ff 79 7e 21 45 00 00 36 73 a1 40 00 2d 06 fb 5f .y~!E..6s. at .-.._
>     SIMCOM rx ca 34 2b 50 0a 34 df 08 1a d3 d7 8b 57 15 7d 5d .4+P.4......W.}]
>     SIMCOM rx 01 00 00 19 ae 50 18 16 d0 ac 32 00 00 74 36 61 .....P....2..t6a
>     SIMCOM rx 72 61 48 79 37 33 67 3d 3d 0d 0a 68 1d 7e 9e f9 raHy73g==..h.~..
>     I (490263) gsm-mux: ProcessFrame(CHAN=2, ADDR=09, CTRL=ff, FCS=9e, LEN=66)
>     I (490263) gsm-mux: ChanProcessFrame(CHAN=2, ADDR=09, CTRL=ff, LEN=63, IFP=3)
>     SIMCOM ppp rx 7e 21 45 00 00 36 73 a1 40 00 2d 06 fb 5f ca 34 ~!E..6s. at .-.._.4
>     SIMCOM ppp rx 2b 50 0a 34 df 08 1a d3 d7 8b 57 15 7d 5d 01 00 +P.4......W.}]..
>     I (490273) ovms-server-v2: Received welcome response MP-S 0 zi5G1tmsedBrsKhetAgWzp xKTVMQMh505ms5OgoSDquQ==
>     I (490273) ovms-server-v2: Got server response: MP-S 0 zi5G1tmsedBrsKhetAgWzp xKTVMQMh505ms5OgoSDquQ==
>     I (490273) ovms-server-v2: Server token is zi5G1tmsedBrsKhetAgWzp and digest is xKTVMQMh505ms5OgoSDquQ==
>     I (490273) ovms-server-v2: Server authentication is successful. Prime the crypto...
>     I (490273) ovms-server-v2: Shared secret key is zi5G1tmsedBrsKhetAgWzpSfOEAN1nHCviPFVNSUIHvt (44 bytes)
>     I (490273) ovms-server-v2: OVMS V2 login successful, and crypto channel established
>     I (490273) ovms-server-v2: Sending MP-0 S
>     I (490273) ovms-server-v2: Sending MP-0 D
>     SIMCOM ppp rx 00 19 ae 50 18 16 d0 ac 32 00 00 74 36 61 72 61 ...P....2..t6ara
>     SIMCOM ppp rx 48 79 37 33 67 3d 3d 0d 0a 68 1d 7e             Hy73g==..h.~
>     SIMCOM ppp tx 7e 21 45 00 00 28 00 08 00 00 ff 06 dd 06 0a 34 ~!E..(.........4
>     SIMCOM ppp tx df 08 ca 34 2b 50 d7 8b 1a d3 00 00 19 ae 57 15 ...4+P........W.
>     SIMCOM ppp tx 7d 5d 0f 50 10 16 8a da 57 00 00 3e 17 7e       }].P....W..>.~
>     SIMCOM tx f9 09 ff 5d 7e 21 45 00 00 28 00 08 00 00 ff 06 ...]~!E..(......
>     SIMCOM tx dd 06 0a 34 df 08 ca 34 2b 50 d7 8b 1a d3 00 00 ...4...4+P......
>     SIMCOM tx 19 ae 57 15 7d 5d 0f 50 10 16 8a da 57 00 00 3e ..W.}].P....W..>
>     SIMCOM tx 17 7e a1 f9                                     .~..
>     I (490313) ovms-server-v2: Incoming Msg: MP-0 Z0
>     SIMCOM tx f9 0d ff 3b 41 54 2b 43 52 45 47 3f 3b 2b 43 43 ...;AT+CREG?;+CC
>     SIMCOM tx 4c 4b 3f 3b 2b 43 53 51 3b 2b 43 4f 50 53 3f 0d LK?;+CSQ;+COPS?.
>     SIMCOM tx 0a cf f9                                        ...
>     SIMCOM rx f9 0d ff c7 0d 0a 2b 43 52 45 47 3a 20 31 2c 35 ......+CREG: 1,5
>     SIMCOM rx 0d 0a 0d 0a 2b 43 43 4c 4b 3a 20 22 31 37 2f 31 ....+CCLK: "17/1
>     SIMCOM rx 30 2f 32 34 2c 31 34 3a 34 31 3a 32 37 2b 33 32 0/24,14:41:27+32
>     SIMCOM rx 22 0d 0a 0d 0a 2b 43 53 51 3a 20 32 31 2c 39 39 "....+CSQ: 21,99
>     SIMCOM rx 0d 0a 0d 0a 2b 43 4f 50 53 3a 20 30 2c 30 2c 22 ....+COPS: 0,0,"
>     SIMCOM rx 43 4d 48 4b 20 4a 73 79 20 54 65 6c 22 2c 32 0d CMHK Jsy Tel",2.
>     SIMCOM rx 0a 0d 0a 4f 4b 0d 0a 72 f9                      ...OK..r.
>     I (492213) gsm-mux: ProcessFrame(CHAN=3, ADDR=0d, CTRL=ff, FCS=72, LEN=105)
>     I (492213) gsm-mux: ChanProcessFrame(CHAN=3, ADDR=0d, CTRL=ff, LEN=102, IFP=3)
>     SIMCOM line 2b 43 52 45 47 3a 20 31 2c 35                   +CREG: 1,5
>     I (492213) simcom: CREG Network Registration 5
>     SIMCOM line 2b 43 43 4c 4b 3a 20 22 31 37 2f 31 30 2f 32 34 +CCLK: "17/10/24
>     SIMCOM line 2c 31 34 3a 34 31 3a 32 37 2b 33 32 22          ,14:41:27+32"
>     SIMCOM line 2b 43 53 51 3a 20 32 31 2c 39 39                +CSQ: 21,99
>     SIMCOM line 2b 43 4f 50 53 3a 20 30 2c 30 2c 22 43 4d 48 4b +COPS: 0,0,"CMHK
>     SIMCOM line 20 4a 73 79 20 54 65 6c 22 2c 32                 Jsy Tel",2
>     SIMCOM line 4f 4b                                           OK
>
>
> That is a DNS lookup, followed by a TCP/IP connection, followed by the OVMS v2 protocol.
>
> The OVMS v2 server library is just talking TCP/IP sockets. It doesn’t care whether it is over a SIMCOM GSM connection or WIFI.
>
> Pretty much proof of concept stage only, but this is the last major piece of the puzzle. Code is far from elegant. Still a hell of a lot of work to do with
> error detection and recovery. Cellular networks are painfully flaky.
>
> I’ve committed what I have, should anybody else want to play with it. Very very verbose on logging at the moment. I’ll now tidy up the error correction, and
> command control for starting and stopping this. Then, integrate to the network manager for signalling the GSM network coming up/down, and general network
> availability.
>
> Regards, Mark.
>
>
>
> _______________________________________________
> OvmsDev mailing list
> OvmsDev at lists.teslaclub.hk
> http://lists.teslaclub.hk/mailman/listinfo/ovmsdev

-- 
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openvehicles.com/pipermail/ovmsdev/attachments/20171105/eaf96598/attachment.htm>


More information about the OvmsDev mailing list