I just picked up a breakout board (v3), and was running through all the PMTK commands during my testing. I found that command PMTK291 freezes the module. From the command reference:
Packet Type:291 PMTK_CMD_BACKUP_MODE
Support Chip Type:
Enter backup mode for power saving.
’7’ = Power saving mode with sensor and RTC timer functions
RTCWakeup (millisecond): Enable RTC wake up with timer setting
Maximal value is 518,400,000 millisecond (6 days)
’1’ = Backup mode
I was using:
#define PMTK_DEFAULT_RTC_WAKE "$PMTK291,7,0,60000,1*38" // sets RTC wake for 60secs
The module returns an ack, and then never wakes again AFAICT. I thought at first this was because I'd forgotten the RTC battery, but even after installing a battery, it does the same. I thought that perhaps the command messes with the serial connection to my Uno (just using it as a UART passthrough) so measured the current consumption of the module.When this command is issued to an active, locked module, the current drops from 20-25mA (active) to 16mA (??) and doesn't change.
I'm not actually planning on using this functionality, but I thought I'd post it here in case anyone runs into issues with it. Maybe I'm just misunderstanding the fractured english command description?
On the other hand, the standby/wake-up commands work perfectly, and I'm getting a hot-start lock <4 sec, and a warm-start lock in <7sec. I'm seeing 2mA standby power, which is pretty good, but I'll be testing using the ENABLE pin to reduce my power usage even further.
My module returns the following when queried for the firmware: