I want my SIM800 module (I interfaced it with Arduino Uno) to enter sleepmode-2 (I used AT+CSCLK=2 command). My question is, how do I wake it up from sleep? I tried giving various AT commands but I cannot see anything on the Arduino Terminal.
4 Answers
Got it working with AT+CSCLK=2. Module wakes up with AT commands sent to the serial port of the module. No interaction with DTR pin except it needs to be high.
According to this page, to wake it up, you need to send any AT command, which will be ignored by the module (so no response), followed (within 5 seconds) by
AT+CSCLK=0
It took me all of one minute to find that by Googling "SIM800 sleep wake".
-
\$\begingroup\$ Yes, but it does not work, The module ignores both DTR and communication on serial line after entering sleep mode \$\endgroup\$– user167261Commented Oct 29, 2017 at 14:40
Old thread but actual topic...Sleep mode 1 is made to enter and leave the sleep mode using the DTR pin. You can use it in this way:
- DTR is LOW
- PREPARE the module with +CSCLK=1 ("AT+CSCLK=1\r")
- DTR goes HIGH -> SLEEP
- DTR goes LOW -> WAKE UP
To save more power +CFUN=0 before SLEEP and +CFUN=1 after WAKE UP.
Greetz Putzlicht
-
\$\begingroup\$ Adding an answer to an old question is frowned upon around here. It is a better practice to ask a new question with a link to the old question. \$\endgroup\$– Dan1138Commented May 19, 2020 at 17:36
-
2\$\begingroup\$ I appreciate this answer. Don't listen to Dan! \$\endgroup\$ Commented Jun 20, 2020 at 3:46
The second AT needs to follow the first within 50 ms. This could be AT+CSCLK=0 if you want the SIM800 to stay awake. You don't want it napping when you are waiting for it to confirm a connection. I think the DTR pin needs to be held high too and if you arrange that via a GPIO pin you can use AT+CSCLK=1.