Locked in sleep mode +WBHV=1,2


Hi guys

I am working on a dev board which utilizes the WMP100. I have recently been trying to incorporate SW deep sleep mode activated by AT+WBHV=1,2 into my app.

I seem to have locked myself out of two of my test devices. In my app I set AT+WBHV=1,2 and deactivate serial/USB ports using command AT+WMFM. Then I reset the device with AT+CFUN=1 as required for the module to take on the sleep mode. I have a software timer set and an accelerometer interrupt set which upon activation should reset to active mode AT+WBHV=1,0 and reboots the device. The code worked fine when I did not deactivate the serial port, and I could still communicate with the WMP (although in this case the sleep mode did not take effect) but has bugged up with the serial ports off… So now with the serial ports OFF and module state AT+WBHV=1,2 saved to flash I cannot communicate with the device to deactivate from sleep mode and none of my wake events are working! :cry:

It was easy with AT+W32K=1 sleep mode because it is not saved to flash so all you need to do is restart the device and it would default to normal idle. According to the Open AT tutorial documentation it implies you can exit sleep mode when “DTR line goes up”… does this mean setting the DTR line high will reset the stored values of WBHV=1,2 and WMFM=0,0,1 back to their defaults?

Any advice would be much appreciated!


If you have disabled all the serial ports and USB, and it can’t wake from sleep, then the only option is to reflash the module with DWLWin.


I have the same problem.

@tomridl: when you say “reflash” do you mean download the FW?

I managed to make DWLWin communicate with my module, but I don’t have the 7.47 firmware in the correct format to download it. Do I need it in this .e2p format? Does any body have 7.47 or any other firmware in order to flash my module to take it out of the sleep mode. After it gets active I will be able to redownload any version I want through Developer Studio (DS).

BTW, this is what happens which I find weird:

  1. I connect DWLWin to my module and I see that it comes out of the sleep mode (I see that by measuring the current).
  2. I restart and reset the module several times and it remains in active mode (again by measuring the current).
  3. I try to open the port on DS, but as soon as DS starts the process the current drops again which tells me that the module goes back to sleep mode. Needless to say that opening the port fails. I believe that the first think DS does is to reset the module, but I don’t understand why puts it back to sleep mode.


Yes, redownload the firmware. The latest version of the firmware is available on the Sierra Wireless website in the downloads section for the specific module, e.g. here is the WMP100 firmware version 7.51: http://www.sierrawireless.com/en/Support/Downloads/AirPrime/WMP_Series/~/media/Support_Downloads/AirPrime/Software/R7.51.0.201205311751-cus-wmp-01.ashx

If you want an older version, you may have to contact your distributor.


The problem is that the Developer Studio cannot communicate with the module through the serial because the module is locked in the sleep mode and the serial is not working.

Correct if I am wrong, but my only option is that I need to use DWLWin and follow the process by pressing the module’s boot key, reset, etc. However, DWLWin doesn’t accept *.wpk files. From what I see on DWLWin’s “General” tab it accepts files with extensions bin, wpb, e2p, and cus. I have no idea what these file types are. From reading some other threads I got the impression that Sierra has firmwares in different versions, and one of them is e2p. However, I cannot find any FW version for Q2687 in this or any other format that *.wpk.

If somebody from Sierra can clarify this it would be great.



DWLWin definitely uses .wpk files! As long as your working directory is set as the directory with the WPK file, it will appear in the list and you can download it.