0

I'm quite new to working with Arduino/GSM and have had problems getting basic HTTP functionality working. I am currently facing multiple problems - one being that the 3G shield I am working with (SIMCOM SIM5216A) does not seem to want to connect to a carrier! :(

However, the problem I would like to focus on for this question is that Phone Functionality - designated through the AT+CFUN command - does not seem to be maintained through power cycles. Additionally, sometimes after modifying the CFUN, the modem will run a soft reset.

Here is the command I have been using to modify the phone functionality of the modem:

AT+CFUN=1,0

I am under the impression that the second parameter should stop it from running a soft reset.

I have attempted to save the AT configuration by following advice in this question's accepted answer - here is the output from power on:

START

+STIN: 25

+STIN: 25

+CPIN: READY

SMS DONE

PB DONE
AT+CFUN=1,0

OK
AT&W

OK

However, whenever I next reset, I will get the following:

AT+CFUN?

+CFUN: 4

OK

So, my question is how can I save the CFUN configuration to be consistent between power cycles? (If you happen to be able to offer advice on why I can see medium-strength signal but cannot connect to an operator network, any advice would be welcome there too, however that is not the focus of this question)

With thanks, BadDevH.

Community
  • 1
  • 1
badDevH
  • 23
  • 1
  • 6

1 Answers1

0

Exactly what that is saved with AT&W is a rather muddled, see this answer for details. However, regardless of that, the AT+CFUN command is controlling such a dynamic behaviour that I cannot imagine any manufacturer ever that has saved this with &W. Think more of CFUN more like setting a fixed cruise control speed while driving a car. There is no way the car will continue with the speed from last time when started.

For normal phones the default behaviour is value 1 - full functionality - because that is the very core functionality of what they do1, but for a GSM module shield, I am guessing that the default behaviour is set to no radio in order to save power, so it stays off until you need it at which point you need to explicitly turn it on.


1 And even in the case of no sim card present, it shall still be able to make emergency calls.

Community
  • 1
  • 1
hlovdal
  • 26,565
  • 10
  • 94
  • 165
  • Sure. So when I upload a program to the module basically I'd execute the command to switch it to full functionality. Do you have any idea what may be causing it to restart some times after I change this settings, especially given that I supply the second parameter in order to prevent a power cycle? – badDevH Aug 18 '16 at 00:40