GobiSerial and GobiNet kernel drivers reconnect

Why do my Gobi kernel drivers reconnect /dev/ttyUSB0-2 on a regular basis? I have a python thread that is trying to use /dev/ttyUSB2 to send AT commands to the EM7455 and then the Gobi driver disconnects and reconnects which causes problems with my thread because the thread has that port opened. This also causes the Gobi driver to crash and output:

GobiSerial driver ttyUSB2: usb_serial_generic_submit_read_urb - usb_submit_urb failed: -19

I could try to have my thread open the port, handles the AT commands, and then close the port but the Gobi driver might reconnect while I handle the AT command. What is the ideal protocol?

Hello,

I’ll need to find out a bit more on you platform:

  1. What kernel are you running?
  2. What Linux distro?
  3. Is you host ARM, x86, MIPS, PPC?
  4. What GobiNet and GobiSerial version are you using?
  5. Can you provide the syslog and driver diagnostic logs?
    ex: echo 1 > /sys/module/GobiSerial/parameters/debug
    echo 1 > /sys/module/GobiNet/parameters/debug

Jon

jon,

Thank you for helping. I have passed my delivery deadline by 6 weeks and I am trying to get the EM7455 working. Here are you answers from your email.

  1. my output from uname -a is: Linux imx6ul-var-dart 4.9.11-02316-g91a2d54-dirty #1 SMP PREEMPT Mon Feb 18 20:37:51 CST 2019 armv7l GNU/Linux

  2. Linux debian.

  3. I am using an ARM DART-6UL at:

https://www.variscite.com/products/system-on-module-som/?cpu_name=NXP%20iMX6UL%20/%206ULL%20/%206ULZ

  1. GobiSerial 2-1:1.3, GobiNet 2-1:1.8 (see my log below)

  2. OK. Here is the log information below after my the GobiSerial and GobiNet disconnected and reconnected. Can you tell me how to get the Gobi stdout into a file without highlighting it with my mouse and pasting it into a text filel?

I am giving the commands to activate after a reboot/reset or power cycle using AT!SCACT=1,1 but I have to wait several minutes until I get a Sprint Connection. I use AT!LTEINFO? until I get a marginal power level from the EM7455, then I type AT!SCACT=1,1.

Please call so we can expedite these issues at 256-653-2553.

Tim Curry

(Attachment Gobi_Mar23.log is missing)

Jon,

I have to rename my log file to log.txt so your server would process it. See attachment.

Tim Curry

Gobi_Mar23.txt (19.9 KB)

Jon,

Any ideas on what tests I can perform for you?

Is there a way to set my disconnect timeout to 24 hours like my co-worker’s setup? It seems like the timeout is 3 minutes.

Tim

You can set in your code or application to disconnect and this would be handled on your side. Jon

Are you working through a distributor in North America? If so, which one?
Sprint usually uses a class 3 APN requiring you to issue AT!SCACT=1,3. What does AT+CGDCONT? show?
I think you might be calling the wrong APN to start the data session. Let me also know the following:

  1. AT!GSTATUS?
  2. AT+COPS?
  3. AT+CGREG?
  4. AT!SELRAT?
  5. AT!band?

Jon

I am confused on your answer to my “disconnect timeout question”. What AT command can I use to set my activation from timing out after 3 minutes? I want the connection valid for as long as possible.

Tim

You cannot set an AT command to timeout. Why would you want to do this?

You are misunderstanding my issue. My connection times out after 3 minutes. I don’t like this and I want to tell the software not to do that. Why does my co-worker’s EM7455 timeout at 24 hours and mine is 3 minutes? I know that Sprint will timeout my connection eventually but I want to maximize my connection time. Maybe this is caused by some other issue but I wanted to run it by you.

I am waiting to get my EM7455 re-provisioned so I can get you those command’s output that you ask for.

Tim

We will need a DM log to determine the reason for the network disconnect/timeout issue. We have a DM logging tool for Windows and one of Linux. The Linux version is located in the QMI SDK. Do you have access to the SDK? Again, where did you purchase the EM7455 module? Are you currently being supported by a Sierra Wireless FAE or technical support team?

I have the SDK and I looked at the tools/DM directory. I can now log, thanks.
./dmcapture.sh -d /dev/ttyUSB2 -l -a arm -o Mar25_DM.log

Future Electronics does not have anyone there that can handle my issues. I spoke with about 3 guys. One was suppose to be the Sierra expert but he has only been there for 4 months. The other fellows are not capable of answering my questions.

I am 6 weeks behind on my delivery. I would appreciate you sticking with me to get me past my issue.

OK, good and Future Electronics has engineers that can create a ticket to support. We need to get you to their Future Connectivity Solutions team. I will call you to discuss as they need to create a support ticket asap. What is your full name and email? Jon

Hi Tim,

Good speaking with you today. As discussed, please try connecting to the ttyUSB0 for the DM log.

Logs need to be captured as in the following example:
./dmcapture.sh –l –f filter.sqf –d /dev/ttyUSB0 –o testlog.log

You will need to use a filter (.sqf) file provided. The .dmcapture app is in the /tools/logging/dm folder in the SDK as you likely know.
Place the DM COM port after the filter file and also put the log right in the same folder as the dmcapture.sh application.

  1. Set the module to low power mode AT+CFUN=0.
  2. Start the dmcapture logging with filter.
  3. Set AT+CFUN=1 Online mode.
  4. Check AT!GSTATUS? for attach and registration (RRC, EMM…).
  5. Reproduce the issue.
  6. Stop the logging.

filter:

I have you contact details now and so will email our team about the support.

FYI, on Verizon Open Developer Initiative: https://opendevelopment.verizonwireless.com/content/opendevelopment/English/home.html

Regards,

Jon

Tim Curry
tim.e.curry@gmail.com

Jon,

Here are the AT commands you asked me to perform. My IP address was not assigned correctly during this test for some reason. I am suppose to get the 10.x.x.x but I got 26.225.165.187 which is assigned DOD.

I tried to use the dm logger but nothing showed up in the output. Here is my script for the data logger:

./dmcapture.sh -d /dev/ttyUSB0 -l -a arm -o Mar28_DM.log

I suspect that nothing shows up because I have a bad IP.

Can you tell me how to resort back to a factory default on the EM7455. I want to start from scratch so I can tell the Sprint guys.

Tim

at!scact=1,1

OK

AT!GSTATUS?

!GSTATUS:

Current Time: 87896 Temperature: 25

Reset Counter: 1 Mode: ONLINE

System mode: LTE PS state: Attached

LTE band: B26 LTE bw: 5 MHz

LTE Rx chan: 8763 LTE Tx chan: 26763

LTE CA state: NOT ASSIGNED

EMM state: Registered Normal Service

RRC state: RRC Idle

IMS reg state: No Srv

PCC RxM RSSI: -82 RSRP (dBm): -108

PCC RxD RSSI: -103 RSRP (dBm): -140

Tx Power: – TAC: 1A0F (6671)

RSRQ (dB): -13.0 Cell ID: 0348EE19 (55111193)

SINR (dB): 1.0

OK

AT+COPS?

+COPS: 0,0,“Sprint”,7

OK

AT+CGREG?

+CGREG: 0,1

OK

AT!SELRAT?

!SELRAT: 00, Automatic

OK

AT!band?

Index, Name

00, All bands

OK

Tim, Sprint’s Jarrett mentioned to me this morning that you now have the correct IP address and can Tx/Rx data. Is this correct? Jon

I finally received 10.x.x.x. I’m not sure why. I tried driving around in my car on the previous day near the tower but that did not work. My code works when I get the correct IP address. I’ll let you guys know if I get the wrong IP address again.

Tim Curry

OK and keep us posted. Jon

jleiter,

I am having problems running AT!SCACT=1,1.I get ERROR on all of my EM7455’s.

Sprint says that my issue is with the EM7455 configuration. I need your help. Why would I get ERROR when I try to create my eth1 using the Gobi kernel drivers?

I tried to get you a log file using the following but I get:

Write Filter: filters/MC7xxx_GSM_GPRS_EDGE_WCDMA_LTE_DATA_EVDO_SMS.sqf -> /dev/ttyUSB0
./dmcapture.sh: line 83: ./bin/split-sqfi386: cannot execute binary file: Exec format error
Log messages: /dev/ttyUSB0 -> May6_DM.log

this binary was compiled for Debian Linux.

Can you please call? 256-653-2553.

Thanks

Tim Curry