I have been having issues with caller id.
The phone does not display the phone number of the caller.
It just displays AT modem commands.
Is the Cell module configuration wrong?
How can I fix this?
I have been having issues with caller id.
The phone does not display the phone number of the caller.
It just displays AT modem commands.
Is the Cell module configuration wrong?
How can I fix this?
In debug mode the the phone module seems to be functioning fine and I recieve the following output on the terminal:
ringing
23
SD inserted:1
Ringtone exists: /Ringtones/Funky & fresh.wav1
call id: 1
PLAYED
Interrupt: 1
ENDED
Direction of call: 0
+CLCC: 1,1,6,0,0,"12345678912",129,""
The Phone number is returned by the module. (I replaced my phone number with 12345678912
)
So the problem seems to be the phone isnât parsing it correctly.
I sent the ATI
command to get the modules information for your reference.
ATI
SIM800 R14.18
I did notice quite a few errors returned too though:
--------------
ME ERROR: operation not allowed
AT+CSPN?
-----------------------------------
.
.
.
ME ERROR: operation not allowed
AT+CSQN?
--------------
ME ERROR: operation not allowed
AT+CCQN?
--------------
ME ERROR: operation not allowed
AT+CCAN?
--------------
ME ERROR: operation not allowed
AT+CCAL?
--------------
ME ERROR: operation not allowed
AT+CCALR
--------------
ME ERROR: operation not allowed
AT+CCALR?
--------------
ME ERROR: operation not allowed
AT+CCALR?
I will look over the source to see if I can see anything too.
I donât know if this will help but here is the module configuration settings:
AT&V
DEFAULT PROFILE
S0: 0
S3: 13
S4: 10
S5: 8
S6: 2
S7: 60
S8: 2
S10: 15
+CRLP: 61,61,48,6
V: 1
E: 1
Q: 0
X: 4
&C: 1
&D: 1
+CLTS: 0
+CREG: 0
+CGREG: 0
+CMEE: 0
+CIURC: 1
+CFGRI: 2
+CMTE: 0
+CANT: 0,0,10
+STKPCIS: 0
+CMGF: 0
+CNMI: 2,1,0,0,0
+CSCS: "IRA"
+VTD: 1
+CALS: 1
+CHF: 0
+CAAS: 1
+CBUZZERRING: 0
+DDET: 0
+MORING: 0
+SVR: 16
+CCPD: 1
+CSNS: 0
+CSGS: 1
+CNETLIGHT: 1
+SLEDS: 64,64,64,800,3000,300
+CSDT: 0
+CSMINS: 0
+EXUNSOL: 0
+FSHEX: 0
+FSEXT: 0
+CCTURI: 0
+IPR: 0
+IFC: 0,0
+CSCLK: 0
USER PROFILE
S0: 0
S3: 13
S4: 10
S5: 8
S6: 2
S7: 60
S8: 2
S10: 15
+CRLP: 61,61,48,6
V: 1
E: 1
Q: 0
X: 4
&C: 1
&D: 1
+CLTS: 1
+CREG: 0
+CGREG: 0
+CMEE: 2
+CIURC: 1
+CFGRI: 2
+CMTE: 0
+CANT: 0,0,10
+STKPCIS: 0
+CMGF: 0
+CNMI: 1,2,0,0,0
+CSCS: "IRA"
+VTD: 1
+CALS: 1
+CHF: 0
+CAAS: 1
+CBUZZERRING: 0
+DDET: 0
+MORING: 0
+SVR: 16
+CCPD: 1
+CSNS: 0
+CSGS: 1
+CNETLIGHT: 1
+SLEDS: 64,64,64,800,3000,300
+CSDT: 0
+CSMINS: 0
+EXUNSOL: 0
+FSHEX: 0
+FSEXT: 0
+CCTURI: 0
+IPR: 9600
+IFC: 0,0
+CSCLK: 1
ACTIVE PROFILE
S0: 0
S3: 13
S4: 10
S5: 8
S6: 2
S7: 60
S8: 2
S10: 15
+CRLP: 61,61,48,6
V: 1
E: 1
Q: 0
X: 4
&C: 1
&D: 1
+CLTS: 1
+CREG: 0
+CGREG: 0
+CMEE: 2
+CIURC: 1
+CFGRI: 2
+CMTE: 0
+CANT: 0,0,10
+STKPCIS: 0
+CMGF: 0
+CNMI: 1,2,0,0,0
+CSCS: "IRA"
+VTD: 1
+CALS: 1
+CHF: 0
+CAAS: 1
+CBUZZERRING: 0
+DDET: 0
+MORING: 0
+SVR: 16
+CCPD: 1
+CSNS: 0
+CSGS: 1
+CNETLIGHT: 1
+SLEDS: 64,64,64,800,3000,300
+CSDT: 0
+CSMINS: 0
+EXUNSOL: 0
+FSHEX: 0
+FSEXT: 0
+CCTURI: 0
+IPR: 9600
+IFC: 0,0
+CSCLK: 1
OK
Another item I forgot to mention is that the time between when the phone starts signaling there is a call to the time the terminal displays the caller ID : +CCLCC: 1,1,6,0,0,"<Number here>",129,""
is 8 seconds.
So I wonder if the module is not responding in time for the phone to parse the number.
It looks like there is a issue with the way you are parsing the phone number from the CLCC
AT message. Around line 1975 in the file MAKERphone.cpp
uint16_t helper = _serialData.indexOf("+CLCC: ") + 7;
if(helper > 6)
callIdNumber = _serialData.substring(helper, helper + 1).toInt();
else
{
helper = _serialData.indexOf(",1,4,0,0");
callIdNumber = _serialData.substring(helper - 1, helper).toInt();
}
Greetings,
Thanks for all the info you supplied in the thread.
Firstly, could you confirm that you have the latest firmware installed?
If you were tinkering with the software, I would recommend reflashing the original firmware following this guide.
Then, could you send us the output in the serial monitor when the phone boots up?
This would help a lot to determine the issue since we couldnât replicate the error.
This should be the latest firmware, since I have re-flashed it multiple times using the arduino IDE as suggested by your Engineers. Although here is the terminal out from boot.
rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0018,len:4
load:0x3fff001c,len:928
ho 0 tail 12 room 4
load:0x40078000,len:8424
ho 0 tail 12 room 4
load:0x40080400,len:5868
entry 0x4008069c
Calibrated!
offset: 1838
[E][esp32-hal-i2c.c:1426] i2cCheckLineState(): Bus Invalid State, TwoWire() Can't init sda=0, scl=0
SD interrupt error: 0
Read sim value: 1
A
-------------
AT
-------------
AT
-------------
AT
-------------
AT
-------------
AT
O
-------------
AT
OK
-------------
ATI
SIM800 R14.18
OK
checking sim
AT+CPIN?
+CPIN: READY
OK
SD inserted
airplane_mode: 0
brightness: 5
sleep_time: 0
background_color: 0
notification: 3
ringtone: /Ringtones/Funky & fresh.wav
CFUN checking
AT+CFUN?
+CFUN: 1
OK
next alarm: 99
module inserted
SIM INSERTED
Serial1 up and running...
Setup: 0
--------------
Any ideas on this yet?
Well, yes and no.
We think that itâs a combination of software and hardware issues. Since it worked correctly at the beginning, it could be that the SIM module got messed up or you somehow messed with brain boardâs memory with the bootloading and things.
Please send it back to us and we will repair it for you for free, since we canât do it over the internet.
I will send you the details in DM.
This thread Strange notification on home screen
Looks very similar to my callerid issue here. I am pretty sure it is related to the parsing of the strings sent from the sim module.
So what did you do to did you fix it?
jâai le mĂȘme problĂ©me quand un appel arrive sur mon makerphone,le numero ne sâaffiche pas ,jâai des caracteres comme le collĂ©gue qui sâafficheâŠvoilaâŠlol
See the fix I posted here⊠Bug fix.
It may apply to you if your carrier does not identify the incoming calling number with a leading + character:
jâai copier les lignes de codes et cela nâa rien changer a mon problĂ©me dâidentifier lâappel entrant avec un caractere +.
Just to clarify, the original code assumed that every incoming call is identified with a number that begins with +. At least in the USA, Ting sometimes leaves off the leading + character. The modified code allows for the case where the + is absent. That may not be your problem at all if you are in France, but I just referenced this solution in case it is related. Unfortunately, given your experiment and result, it is probably not.
oui je suis en france,donc cela ne me concerne pas, mĂȘme si jâai ce problĂ©me sur mon makerphone,ça me derange pas trop pour le moment du moment que lâappel fonctionne câest dĂ©jĂ bien.
We might have to create a specific firmware for every country.
@deserteur28 What exactly are you getting on your screen? Can you take a photo?
Robert
jâattend que ma femme rentre pour mâapeller et prendre une photo ce soir de lâecran lors de lâappel sur le makerphone
Hey,
Can you please download the default Ringo software on your phone? The latest firmware version. And then format the SD card. The default files on the SD card can be found here.
Try to do those things so weâll see if that changes anything.
Thanks!
Robert