How do I wake up the RM1xx from deep sleep?

Answer

Once the RM1xx is put into deep sleep, it can wake up by detecting an external GPIO signal. GpioSetFunc can be used to configure which pin to use in order to wake up from deep sleep.

From the definition of GPIOSETFUNC (nSigNum, nFunction, nSubFunc), when the GPIO pin is configured to DIGITAL_IN (nFunction = DIGITAL_IN), nSubFunc parameter's bit 4 and 5 control when it wakes up the radio.

Bits 4, 5

0x10 When in deep sleep mode, awake when this pin is LOW
0x20 When in deep sleep mode, awake when this pin is HIGH
Else No effect in deep sleep mode

For example, the following line of code sets GPIO pin# 28 to trigger waking up RM1xx from deep sleep when it goes from HIGH to LOW. rc = GpioSetFunc(28,0x01,0x23)

Refer to GpioSetFunc defined in RM1xx BLE Central smartBASIC Extensions Guide v1.1 for more details.