SIM7000G (botletics) - Network status 2: Not registered (searching)

Hi, I purchased a botletics SIM7000G shield for Arduino. I did the following:

  1. Installed Arduino

  2. Downloaded the entire code from: https://github.com/botletics/SIM7000-LTE-Shield

  3. Opened LTE_Demo which was inside: \Documents\Arduino\SIM7000-LTE-Shield-master\Code\examples\LTE_Demo

  4. Inserted the hologram SIM card. SIM I bought was (Maker Edition Flexible Data, Global). State: Live.

  5. I connected the battery(3.7V, 1600mAh) to botletics shield.

  6. Connected USB to Arduino Uno

  7. Also connected a 9V,650mA adapter supply to Arduino

  8. I uploaded the sketch with no issues. DONE glows solid, PWR glows solid, NET blinks every second.

  9. Opened the COM port, and got the below:
    FONA basic test
    Initializing…(May take several seconds)
    Configuring to 9600 baud
    Attempting to open comm with ATs
    —> AT
    <— OK
    —> ATE0
    <— OK
    —> ATE0
    <— OK
    —> ATI
    <— SIM7000G R1529
    OK
    —> AT+CPMS=“SM”,“SM”,“SM”
    <— +CPMS: 0,10,0,10,0,10
    FONA is OK
    Found SIM7000G (Global)
    —> AT+GSN
    <— 869951030105XXX
    Module IMEI: 869951030105XXX
    —> AT+CFUN=1
    <— OK
    —> AT+CGDCONT=1,“IP”,“hologram”
    <— OK
    [?] Print this menu
    [a] Read the ADC; 2.8V max for SIM800/808, 0V-VBAT for SIM7000 shield
    [b] Read supply voltage
    [C] Read the SIM CCID
    [U] Unlock SIM with PIN code
    [i] Read signal strength (RSSI)
    [n] Get network status
    [1] Get network connection info
    [N] Number of SMS’s
    [r] Read SMS #
    [R] Read all SMS
    [d] Delete SMS #
    [s] Send SMS
    [u] Send USSD
    [y] Enable local time stamp (SIM800/808/7000)
    [Y] Enable NTP time sync (SIM800/808/7000)
    [t] Get network time
    [G] Enable cellular data
    [g] Disable cellular data
    [l] Query GSMLOC (2G)
    [w] Read webpage
    [W] Post to website
    [2] Post to dweetio via 2G / LTE CAT-M / NB-IoT
    [3] Post to dweetio via 3G / 4G LTE
    [O] Turn GPS on (SIM808/5320/7000)
    [o] Turn GPS off (SIM808/5320/7000)
    [L] Query GPS location (SIM808/5320/7000)
    [E] Raw NMEA out (SIM808)
    [S] Create serial passthru tunnel
    FONA> a
    —> AT+CADC?
    <— +CADC: 1,918
    ADC = 918 mV
    FONA> b
    —> AT+CBC
    <— +CBC: 0,78,4026
    VBat = 4026 mV
    —> AT+CBC
    <— +CBC: 0,78,4026
    VPct = 78%
    FONA> C
    —> AT+CCID
    <— 8944500609193418XXXf
    SIM CCID = 8944500609193418XXXf
    FONA> i
    —> AT+CSQ
    <— +CSQ: 99,99
    RSSI = 99: -115 dBm
    FONA> n
    —> AT+CGREG?
    <— +CGREG: 0,2
    Network status 2: Not registered (searching)
    FONA> l
    —> AT+CIPGSMLOC=1,1
    <— ERROR
    Failed!
    Fail code #2
    FONA> G
    —> AT+CIPSHUT
    <— SHUT OK
    —> AT+CGATT=1
    <—
    Failed to turn on
    FONA> g
    —> AT+CIPSHUT
    <—
    Failed to turn off
    FONA> S
    Creating SERIAL TUBE

  10. I tried to create a SERIAL TUBE, and it hangs here. I have to re-upload at this stage.

  11. Both the GPS and the LTE antenna is connected, and it is good.

  12. I bought another Arduino and tried and same results.

  13. I bought another botletics shield and same results.

  14. I am currently in USA and live in California.

  15. Once it starts working I am planning to use it in India, Chennai. Need to if the device along with the Hologram will work in India, Chennai?

I left the device ON for more than 2 hours and started to get connection. Should I wait this long everytime to get a connection. Is there a setting on the modem that I need to change to get a better connection time?

We are struggling with the G chips as well. If you purchase an A version, it will probably work just fine. We’ve had no issues in the past with G chips but within the past two + months, they all of a sudden have become an issue. Reached out to SIMCOM and they thought it was bad chips. So, bought brand new chips from a US distributor and replaced them. Same issue.

That basically leaves something up with Hologram and the chips. I have no idea what it might be but just know you aren’t the only one seeing the issue.

Thank you so much, buddy. Ah, this is bad, however, I read in another forum that if we are close to the tower it connects, so I took it for a ride and connects. However, still, the connection registration still takes more time. I bought SIM808, want to see if anything improves.

You probably know, SIM808 is 2G only and that they are shutting down 2G networks in the US (possibly other places).

I have a SIM7000A (not botletics) and initially it took a very long time to connect to Hologram. I was switching back and forth with a Hologram SIm and a Ting sim (Ting never did connect, got Registration Denied).

I think this switching back and forth made the problem worse, because I’m now thinking it might have something to do with the Preferred Operators list ( AT+CPOL). Or it may have to do with the fact that if a board can connect on many many Bands then it will have to go through the whole list to find one that is in service where you are. It would make sense that the chip would remember the “last known good” connection configuration.

It used to take many minutes to connect to Hologram, now every time I power it up it takes about 20 seconds. Slow but ok. That’s with 7000A, if my suspicion is the cause, 7000G would probably be even slower. Curious if after connecting a few times if you’ll have faster connection times, please let us know. I got my 7000A on ebay a couple weeks ago.

Hi jwallis, Thank you so much for your reply, and yes, I was aware of the 2G situation. However, since I didn’t have any luck with SIM7000G, I wanted to give a try with a different module, so used SIM808. Here are some information:

  1. It turns out that when a SIM first registers with the network, it requires better signal quality than subsequent registrations. When the SIM has successfully registered with the network the first time, some information is stored on the SIM that allows it to register easier the next time.

Mobile phones have highly integrated radios that allow them to dynamically adjust the antenna gain as needed. The reason my Android phone could do the first registration and the SIM808 could not, is likely because the Android phone was maxing out its antenna gain and therefore was receiving the network signal better than the more primitive antenna on the SIM808

To prove this to myself, I spent some time on cellmapper.net and found out where the T-Mobile 2G tower is in my town. After driving close to it, I was able to register a brand new SIM the first time with my SIM808

  1. However, when I move away from the tower, or, when I am at work or home. It loses connection again. So it needs better antenna performance.

Further, I am planning to use SIM7000G now, along with Hologram SIM in India. So not sure, how it is going to turn out to be, as the network situation is not great in India.

Very interesting. I was just going to reply again because even last night, my SIM7000A was consistently taking 20+ seconds to register, now after using it all day today, same location, etc. it is taking around 5s.

Cool that your experiment driving around was useful. My application is in a car, so I have a uFl to SMA converter from eBay with a little 2 inch SMA antenna from digikey. I’m not sure if this really provides a better signal, but I expect it shouldn’t hurt.

If you don’t mind me asking, what’s your project in India, a personal one or something of use to Indian people? I ask because in my ideal future I would put this IoT tech I’m learning to use helping people overseas.

Hi jwallis, No worries, I appreciate your interest. This is actually a proof of concept. I might not even use SIMCOM, most probably UBlox, as they are more reliable and their support is really good.

As far as the usecase, this modem is going to go into a LoRa base station, used as a gateway to cloud. Probably like a asset (can be anything) within a particular range, to track it and send data to cloud on its movement.

Ah, ok. One last question then - are you going to get a board fabricated with a uBlox chip on it or are you going to use a uBlox breakout board? The former seems like it requires a ton of knowledge, the latter seems like… well I haven’t seen any cheap uBlox breakout boards, and of course hand wiring is no fun. Here’s the breakout I’m using, they’re pretty cheap on aliExpress: http://www.and-global.com/index.php/product/SIM7000G%20breakout.html

Hi jwallis, If you are going to design a board, I would suggest get in touch with the modem FAE, as you will need a complete review from them. This is based on my previous experience. Also each modem is anywhere between $10-20, depending on what you want.

They also have EVK, like: https://www.u-blox.com/en/product/evk-r4.

Even better there are 3rd party vendors like sparkfun: https://www.sparkfun.com/categories/tags/u-blox. They completely provide you with the solution (FW+HW+Cloud), all we have to do is make it work.

It completely depends on what stage are you in, in your project life cycle.

Cool. All I’d be trying to accomplish is having a single board with an arduino nano + the sim7000A, (bonus would be a couple of transistors and resistors to handle some input signals to the Arduino). I hope to sell some units, but on the order of dozens, primarily for the learning and secondarily to be a cool guy who sold a few units : ). No way I’m going to learn how to design a board and not worth it financially, although I’m sure it’s really satisfying to design a board and then hold it in your hand one day : ).

Thanks again for the info, and good luck with your project. I’ve spent the last week refactoring from SIM808 + Ting + SMS ==> SIM7000A + Hologram + SMS over IP. Really wish I’d just started with the 7000 from the outset of the project 4 months ago…

I talked to SIMCOM and they explained what is happening and gave me a “fix.”

Basically, the problem is the G is scanning all the channels in the world. If you limit
it to specific bands, it will connect very quickly. It will then remember where it last
connected and try that first.

With the Botletics library, use the following commands in the US:
fona.setPreferredMode(38); // Use LTE only, not 2G
fona.setPreferredLTEMode(1); // Use LTE CAT-M only, not NB-IoT
fona.setOperatingBand(“CAT-M”, 12); // AT&T uses band 12
// fona.setOperatingBand(“CAT-M”, 13); // Verizon uses band 13

For those not using the library, here is what SIMCOM passed along:

This is why it can take up to 2 hours to connect.
At+cmnb=1 //cat-m only
At+cbandcfg=”cat-m”,2,4,12,13 //only turn on att and Verizon bands

Reset module
Check for network registration

At+creg?
At+cgreg?

Make sure they are 0,1 before executing any data connection commands (e.g. cgatt).

BTW, I do not recommend using at+cops=?. It usually takes and while. Once your code is set on a carrier, you should register with a carrier pretty fast.

Using Hologram, using At+creg?/At+cgreg? usually result in 0,5 here in Austin, Texas which means Connected, Roaming, which is fine. I read somewhere on Hologram that that’s not unusual.

But holy cow, you talked to SimCom? I may have found a bug in their hardware or more likely their firmware with the SIM7000A. I would be very curious what they’d have to say about it. Below is the link. If you can let me know how to bring this to their attention, I would appreciate it-
https://forum.arduino.cc/index.php?topic=660925.0

@StartupGuy Did you happen to see my post above? I’m really curious to talk to SimCom about this behavior I’m seeing. Maybe they can fix it in a firmware release

Have you upgraded the firmware on your chips to the latest available? Also, you can try the Dr. Robot SIM7000 library to see if you see the same issue: https://github.com/DFRobot/DFRobot_SIM7000

Do you have some code you can send along? I can try testing it on G and A chips with the latest firmware.

Hi @StartupGuy and @jwallis, Actually I was using the antenna that came along with the device. When I started using a better antenna, the performance started to be better. My connection is 100%. I would say, try to use a better antenna, that helps.

I have the B03 firmware on the SIM7000A, I think there is a B04, but haven’t had the inclination to try upgrading, and I think B03 is what’s mostly out in the wild right now. Doesn’t look like the DFRobot library is nearly as robust - doesn’t have anything for SMS that I can see.

I explain the whole issue to death on the arduino forum:
https://forum.arduino.cc/index.php?topic=660925.0

and to reproduce the bug you can just send a couple texts (such as “aaaa” for a baseline and “aa{a” to see the issue) to your SIM7000A module, then get a serial connection to it and send it these commands:
// text mode
AT+CMGF=1
// show all text mode parameters
AT+CSDH=1
// read first SMS
AT+CMGR=0

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.