No 4G/LTE with keepgo SIM but it works on fipy (pycom product)

AutoPi.io 4G/LTE edition is not recognizing SIM card

i’ve correctly inserted the sim in the tray. Rechecked several times. But when i execute:

cmd.run “qmi-manager down”

|-

  Loading profile at /etc/qmi-network.conf...

      APN: internet.keepgo.com

      APN user: unset

      APN password: unset

      IP type: 4

      qmi-proxy: no

  Network already stopped

  Clearing state at /tmp/qmi-network-state-cdc-wdm0...

  Connection down

cmd.run “qmi-manager up”":

it returns:

-
  [WARN] Command failed with exit code 1: qmicli --device-open-qmi --device
  /dev/cdc-wdm0 --uim-get-card-status | grep -q "Card state: 'present'"
  [WARN] Command failed with exit code 1: qmicli --device-open-qmi --device
  /dev/cdc-wdm0 --uim-get-card-status | grep -q "Card state: 'present'"
  [WARN] Command failed with exit code 1: qmicli --device-open-qmi --device
  /dev/cdc-wdm0 --uim-get-card-status | grep -q "Card state: 'present'"
  [WARN] Command failed with exit code 1: qmicli --device-open-qmi --device
  /dev/cdc-wdm0 --uim-get-card-status | grep -q "Card state: 'present'"
  [ERROR] No SIM card present

minionutil.last_errors:


>-
  Binary file (standard input) matches
  2018-10-11 13:06:08,495 [salt.utils       :831 ][ERROR   ][329] DNS lookup or
  connection check of 'hub01.autopi.io' failed.
  2018-10-11 13:06:11,478 [messaging        :169 ][ERROR   ][545] Exception in
  worker thread 'sync_time' while running workflow for message: {'handler':
  'sync_time', 'kwargs': {'force': False}}
  2018-10-11 13:06:48,794 [salt.minion      :901 ][ERROR   ][329] Error while
  bringing up minion for multi-master. Is master at hub01.autopi.io responding?
  2018-10-11 13:06:58,831 [salt.utils       :831 ][ERROR   ][329] DNS lookup or
  connection check of 'hub01.autopi.io' failed.
  2018-10-11 13:07:16,555 [messaging        :169 ][ERROR   ][545] Exception in
  worker thread 'sync_time' while running workflow for message: {'handler':
  'sync_time', 'kwargs': {'force': False}}
  2018-10-11 13:07:39,088 [salt.minion      :901 ][ERROR   ][329] Error while
  bringing up minion for multi-master. Is master at hub01.autopi.io responding?
  2018-10-11 13:07:49,115 [salt.utils       :831 ][ERROR   ][329] DNS lookup or
  connection check of 'hub01.autopi.io' failed.
  2018-10-11 13:08:21,658 [messaging        :169 ][ERROR   ][545] Exception in
  worker thread 'sync_time' while running workflow for message: {'handler':
  'sync_time', 'kwargs': {'force': False}}
  2018-10-11 13:08:29,279 [salt.minion      :901 ][ERROR   ][329] Error while
  bringing up minion for multi-master. Is master at hub01.autopi.io responding?
  2018-10-11 13:08:39,303 [salt.utils       :831 ][ERROR   ][329] DNS lookup or
  connection check of 'hub01.autopi.io' failed.
  2018-10-11 13:09:19,480 [salt.minion      :901 ][ERROR   ][329] Error while
  bringing up minion for multi-master. Is master at hub01.autopi.io responding?
  2018-10-11 13:09:27,247 [messaging        :169 ][ERROR   ][545] Exception in
  worker thread 'sync_time' while running workflow for message: {'handler':
  'sync_time', 'kwargs': {'force': False}}
  2018-10-11 13:09:29,514 [salt.utils       :831 ][ERROR   ][329] DNS lookup or
  connection check of 'hub01.autopi.io' failed.
  2018-10-11 13:10:09,788 [salt.minion      :901 ][ERROR   ][329] Error while
  bringing up minion for multi-master. Is master at hub01.autopi.io responding?
  2018-10-11 13:10:19,817 [salt.utils       :831 ][ERROR   ][329] DNS lookup or
  connection check of 'hub01.autopi.io' failed.
  2018-10-11 13:10:32,588 [messaging        :169 ][ERROR   ][545] Exception in
  worker thread 'sync_time' while running workflow for message: {'handler':
  'sync_time', 'kwargs': {'force': False}}
  2018-10-11 13:11:00,024 [salt.minion      :901 ][ERROR   ][329] Error while
  bringing up minion for multi-master. Is master at hub01.autopi.io responding?
  2018-10-11 13:11:10,048 [salt.utils       :831 ][ERROR   ][329] DNS lookup or
  connection check of 'hub01.autopi.io' failed.
  2018-10-11 13:11:37,823 [messaging        :169 ][ERROR   ][545] Exception in
  worker thread 'sync_time' while running workflow for message: {'handler':
  'sync_time', 'kwargs': {'force': False}}
  2018-10-11 13:11:50,217 [salt.minion      :901 ][ERROR   ][329] Error while
  bringing up minion for multi-master. Is master at hub01.autopi.io responding?
  2018-10-11 13:12:00,244 [salt.utils       :831 ][ERROR   ][329] DNS lookup or
  connection check of 'hub01.autopi.io' failed.
  2018-10-11 13:36:57,240 [messaging        :169 ][ERROR   ][545] Exception in
  worker thread 'sync_time' while running workflow for message: {'handler':
  'sync_time', 'kwargs': {'force': False}}
  2018-10-11 13:37:16,472 [salt.state       :292 ][ERROR   ][1775] Failed to get
  current configuration: {'reason': None, 'type': None}
  2018-10-11 13:40:18,694 [salt.loaded.int.module.cmdmod:693 ][ERROR   ][623]
  Command '['qmi-manager', 'status']' failed with return code: 1
  2018-10-11 13:40:18,706 [salt.loaded.int.module.cmdmod:695 ][ERROR   ][623]
  stdout: [ERROR] QMI network not connected
  2018-10-11 13:40:18,715 [salt.loaded.int.module.cmdmod:699 ][ERROR   ][623]
  retcode: 1
  2018-10-11 13:40:46,371 [salt.loaded.int.module.cmdmod:693 ][ERROR   ][623]
  Command '['qmi-manager', 'up']' failed with return code: 1
  2018-10-11 13:40:46,383 [salt.loaded.int.module.cmdmod:695 ][ERROR   ][623]
  stdout: [WARN] Command failed with exit code 1: qmicli --device-open-qmi
  --device /dev/cdc-wdm0 --uim-get-card-status | grep -q "Card state: 'present'"
  2018-10-11 13:40:46,399 [salt.loaded.int.module.cmdmod:699 ][ERROR   ][623]
  retcode: 1
  2018-10-11 13:42:06,374 [salt.loaded.int.module.cmdmod:693 ][ERROR   ][623]
  Command '['qmi-manager', 'up']' failed with return code: 1
  2018-10-11 13:42:06,389 [salt.loaded.int.module.cmdmod:695 ][ERROR   ][623]
  stdout: [WARN] Command failed with exit code 1: qmicli --device-open-qmi
  --device /dev/cdc-wdm0 --uim-get-card-status | grep -q "Card state: 'present'"
  2018-10-11 13:42:06,413 [salt.loaded.int.module.cmdmod:699 ][ERROR   ][623]
  retcode: 1
  2018-10-11 13:42:23,788 [salt.loaded.int.module.cmdmod:693 ][ERROR   ][623]
  Command '['qmi-manager', 'up']' failed with return code: 1
  2018-10-11 13:42:23,819 [salt.loaded.int.module.cmdmod:695 ][ERROR   ][623]
  stdout: [WARN] Command failed with exit code 1: qmicli --device-open-qmi
  --device /dev/cdc-wdm0 --uim-get-card-status | grep -q "Card state: 'present'"
  2018-10-11 13:42:23,824 [salt.loaded.int.module.cmdmod:699 ][ERROR   ][623]
  retcode: 1
  2018-10-11 13:42:43,233 [salt.loaded.int.module.cmdmod:693 ][ERROR   ][623]
  Command '['qmi-manager', 'status']' failed with return code: 1
  2018-10-11 13:42:43,245 [salt.loaded.int.module.cmdmod:695 ][ERROR   ][623]
  stdout: [ERROR] QMI network not connected
  2018-10-11 13:42:43,255 [salt.loaded.int.module.cmdmod:699 ][ERROR   ][623]
  retcode: 1
  2018-10-11 13:43:38,044 [salt.loaded.int.module.cmdmod:693 ][ERROR   ][623]
  Command '['qmi-manager', 'up']' failed with return code: 1
  2018-10-11 13:43:38,056 [salt.loaded.int.module.cmdmod:695 ][ERROR   ][623]
  stdout: [WARN] Command failed with exit code 1: qmicli --device-open-qmi
  --device /dev/cdc-wdm0 --uim-get-card-status | grep -q "Card state: 'present'"
  2018-10-11 13:43:38,085 [salt.loaded.int.module.cmdmod:699 ][ERROR   ][623]
  retcode: 1
  2018-10-11 13:45:16,287 [salt.loaded.int.module.cmdmod:693 ][ERROR   ][623]
  Command '['qmi-manager', 'up']' failed with return code: 1
  2018-10-11 13:45:16,307 [salt.loaded.int.module.cmdmod:695 ][ERROR   ][623]
  stdout: error: operation failed: Transaction timed out
  2018-10-11 13:45:16,374 [salt.loaded.int.module.cmdmod:699 ][ERROR   ][623]
  retcode: 1
  2018-10-11 13:50:01,493 [salt.loaded.int.module.cmdmod:693 ][ERROR   ][623]
  Command '['qmi-manager', 'status']' failed with return code: 1
  2018-10-11 13:50:01,507 [salt.loaded.int.module.cmdmod:695 ][ERROR   ][623]
  stdout: [ERROR] QMI network not connected
  2018-10-11 13:50:01,535 [salt.loaded.int.module.cmdmod:699 ][ERROR   ][623]
  retcode: 1
  2018-10-11 13:51:06,362 [salt.loaded.ext.engines.api_service:28  ][ERROR  
  ][623] exception occurred: u'lsusb'
  2018-10-11 13:52:35,889 [salt.loaded.ext.engines.api_service:28  ][ERROR  
  ][623] exception occurred: {'reason': None, 'type': None}
  2018-10-11 13:52:42,145 [salt.loaded.ext.engines.api_service:28  ][ERROR  
  ][623] exception occurred: {'reason': None, 'type': None}
  2018-10-11 13:53:05,349 [salt.loaded.ext.engines.api_service:28  ][ERROR  
  ][623] exception occurred: {'reason': None, 'type': None}
  2018-10-11 13:53:21,307 [salt.loaded.ext.engines.api_service:28  ][ERROR  
  ][623] exception occurred: {'reason': None, 'type': None}
  2018-10-11 13:53:32,950 [salt.loaded.ext.engines.api_service:28  ][ERROR  
  ][623] exception occurred: {'reason': None, 'type': None}
  2018-10-11 13:54:11,190 [salt.loaded.ext.engines.api_service:28  ][ERROR  
  ][623] exception occurred: query() takes at least 1 argument (0 given)
  2018-10-11 13:54:14,748 [salt.loaded.ext.engines.api_service:28  ][ERROR  
  ][623] exception occurred: u'ec2x.query.help'
  2018-10-11 13:54:17,804 [salt.loaded.ext.engines.api_service:28  ][ERROR  
  ][623] exception occurred: u'ec2x'
  2018-10-11 13:54:47,064 [salt.loaded.ext.engines.api_service:28  ][ERROR  
  ][623] exception occurred: u'ec2x.status'
  2018-10-11 13:54:58,205 [salt.loaded.ext.engines.api_service:28  ][ERROR  
  ][623] exception occurred: {'reason': None, 'type': None}
  2018-10-11 13:57:10,779 [salt.loaded.int.module.cmdmod:693 ][ERROR   ][623]
  Command '['qmi-manager', 'up']' failed with return code: 1
  2018-10-11 13:57:10,790 [salt.loaded.int.module.cmdmod:695 ][ERROR   ][623]
  stdout: error: couldn't create client for the 'uim' service: CID allocation
  failed in the CTL client: Service mismatch (requested 'uim', got 'wds')
  2018-10-11 13:57:10,802 [salt.loaded.int.module.cmdmod:699 ][ERROR   ][623]
  retcode: 1
  2018-10-11 14:00:26,169 [salt.loaded.int.module.cmdmod:693 ][ERROR   ][623]
  Command '['qmi-manager', 'up']' failed with return code: 1
  2018-10-11 14:00:26,180 [salt.loaded.int.module.cmdmod:695 ][ERROR   ][623]
  stdout: [WARN] Command failed with exit code 1: qmicli --device-open-qmi
  --device /dev/cdc-wdm0 --uim-get-card-status | grep -q "Card state: 'present'"
  2018-10-11 14:00:26,198 [salt.loaded.int.module.cmdmod:699 ][ERROR   ][623]
  retcode: 1
  2018-10-11 14:03:14,092 [salt.loaded.int.module.cmdmod:693 ][ERROR   ][623]
  Command '['qmicli', '--silent', '-d', '/dev/cdc-wdm0',
  '--nas-get-system-info']' failed with return code: 1
  2018-10-11 14:03:14,104 [salt.loaded.int.module.cmdmod:695 ][ERROR   ][623]
  stdout: error: couldn't create client for the 'nas' service: CID allocation
  failed in the CTL client: Service mismatch (requested 'nas', got 'uim')
  2018-10-11 14:03:14,115 [salt.loaded.int.module.cmdmod:699 ][ERROR   ][623]
  retcode: 1

qmi.system_info:

qmi.system_info
"[/dev/cdc-wdm0] Successfully got system info:\n\tGSM service:\n\t\tStatus: 'none'\n\t\tTrue Status: 'none'\n\t\tPreferred data path: 'no'\n\tWCDMA service:\n\
t\tStatus: 'none'\n\t\tTrue Status: 'none'\n\t\tPreferred data path: 'no'\n\tLTE service:\n\t\tStatus: 'none'\n\t\tTrue Status: 'none'\n\t\tPreferred data pa
th: 'no'\n\tSIM reject info: 'unavailable'"

Now perhaps the modem settings are not correct for KeepGo SIM.
I will post my pycom fipy python code which does work for my fipy device.

example: fipy python code connecting keepgo LTE:

import socket
import ssl
import time
from network import LTE


lte = LTE()

lte.send_at_cmd('AT+CFUN=0')
lte.send_at_cmd('AT!="clearscanconfig"')
lte.send_at_cmd('AT!="addscanband band=20"')
#lte.send_at_cmd('AT!="disablelog 0"')
lte.send_at_cmd('AT+CGDCONT=1,"IP","internet.keepgo.com"')
lte.send_at_cmd('AT+CFUN=1')

lte.attach()        # attach the cellular modem to a base station
while not lte.isattached():
    time.sleep(0.25)
lte.connect()       # start a data session and obtain an IP address
while not lte.isconnected():
    time.sleep(0.25)
​
s = socket.socket()
s = ssl.wrap_socket(s)
s.connect(socket.getaddrinfo('www.google.com', 443)[0][-1])
s.send(b"GET / HTTP/1.0\r\n\r\n")
print(s.recv(4096))
s.close()
​
lte.disconnect()
lte.dettach()

How can i add the “addscanband band=20”?? for example…

i’v managed to fix the problem…

i removed my configured wifi AP list from local.autopi.io when connected to the AutoPi-xxxxxx wifi point.

then i selected “vodafone NL” from the 4G list.
then i removed the APN address, username and password. and changed the APN address to: internet.keepgo.com
username and password where empty.

Perhaps after a reboot the command "ec2x.query ‘AT+QCFG=“roamservice”,2’ " was also neccesary.

let it reboot with the new settings. and then i got a connection!

One more question: is it not possible to connect to a WiFi accesspoint and also a 4G connection on the same time right now?

With the latest image it should be possible to work the WiFi in both Client and Hotspot mode at the same time.

I’m not sure if the changes you made could have effected this.

best
Peter

Hi Eelco

Good that you got it working!
It should not be a problem to have both WiFi configured alongside the LTE connection.
It should use the configured WiFi access point when possible, and then fall back to LTE when it can’t connect to the WiFi ap.

Best regards
/Malte

Thank you for the explanation Peter and Malte. I will add my WiFi accesspoints back.