LilyGo T-Call SIM800L board location issues
-
Hello Everyone,
I really need some help troubleshooting location issues for the SIM800L. I am using the LiliyGO T-Call Sim800L and the
R14.18
firmware. This is the response from theATI
command:SIM800 R14.18
. My sim provider is Lebara (Netherlands)multimedia.lebara.nl
is their APN.It seems most other functions than location are working fine. I can communicate with the modem by sending AT commands. I connect to the GPRS network and can send HTTP requests and SMS messages.
At first i tried using the GSM location feature trough the Arduino TinyGSM library. That never worked, so i tried doing it myself with AT commands. The following code blocks shows my steps.
/* make bearer profile correct, activate it */ // make sure bearer profile one is correct AT+SAPBR=3,1,Contype,GPRS OK // specify APN name AT+SAPBR=3,1,APN,multimedia.lebara.nl OK // activate bearer profile AT+SAPBR=1,1 OK
In many examples on the internet and in the datasheets from simcom's webpage they use double quotes for the string parameters like this:
AT+SAPBR=3,1,"Contype","GPRS"
This gives me an
ERROR
response instead ofOK
. So as you saw i do them without the double quotes which evidently seems to work fine.After completing these commands, the indicator light on the LilyGO
board starts blinking faster (~3 per sec) indicating a gprs connection. After that i try getting the location./* Now for fetching the actual location */ // set lbs server AT+CLBSCFG=1,3,lbs-simcom.com:3002 OK // try getting location + time AT+CLBS=4,1 +CLBS: 1 OK // try getting only location AT+CLBS=1,1 +CLBS: 1 OK
Both these commands gives me a locationcode 1 error, which indicates no location. Specified in the GSM location datasheet. Earlier i would commonly get locationcode 3 which would indicate NET error, but i think that maybe was due to incorrect bearer profile settings.
One problem might be that the LBS server from simcom is not working correctly, so i also tried another server address
www.c4a.com.cn:3002
. This one is from china./*Trying chinese LBS server */ // change lbs server setting AT+CLBSCFG=1,3,www.c4a.com.cn:3002 OK // trying to get location again AT+CLBS=1,1 +CLBS: 1 OK // and the other one AT+CLBS=4,1 +CLBS: 1 OK
There is also this redundant location command, using
AT+CIPGSMLOC
, which does not work anymore. As expected not for me either./* trying redundant command */ AT+CIPGSMLOC=1,1 +CIPGSMLOC: 0,0.000000,0.000000,2021/10/23,16:38:47 OK
One last thing is that it might take some time for the network to calibrate before being able get location properly. I have tried this many times. Letting it sit connected for up to 2 hours, and trying every five minutes.
Some people have problems with power delivery to the board, but i do not think this is the case for me since i never have expected dropouts or restarts when using the board. My signal quality is also very good.
/* testing signal quality */ AT+CSQ +CSQ: 31,0 OK
I have already reached out multiple places for help this github issue seems really similar to mine, but he is actually able to get a location. I left a comment at the bottom. I also posted in TinyGSM's gitter chat, and in the Arduino stack exchange
So yeah that is my problem. I feel like i have exhausted every option, I even tried a sim from another country. If anyone are able to help, that would be greatly appreciated.
-