We are using W32K mode without using the DTR signal (AT+W32K=1,0). Obviously this means that while the unit is in sleep mode, it does not receive UART comms, thus AT commands via UART 1. The work-around is to send the AT command, which wakes the unit up, and then send the command again at which time the unit recieves it. This means that before a download takes place, I sent AT to the modem, which wakes it up, and then download the firmware.
The problem now is that in Developer studio 2.1.0, a check is done on the modem before the firmware download commences. From what I can tell, the check is to read the modem serial number. This is retried until a response is obtained from the modem which means that if the modem is in sleep mode, the first check fails but the second one passes. Developer Studio 2.1.0 then tries to put the modem into download mode, however the modem returns to sleep before reading the download command and the system hangs (the download command is not resent by Developer Studio 2.1.0 like the modem check is). This means that when ever I want to download a new application I must stop the current application, download the new one and start it again.
This is obviously not a big issue, just an annoyance, however if possible please could you add a resend to the download command after a period of no response?
Did you give a try with 2.1.1?
The way the checks are made were modified WRT 2.1.0 (especially in the fact that several tries are made if the first ping doesn’t answer…) --> we think this should help in this particular case.
I have recently upgraded to Developer Studio 2.2.0, and I now get the following errors while trying to connect to a modem or download a dwl file with W32K mode enabled:
In order to download the application or connect to the unit, it is necessary to stop the application using “AT+WOPEN=0” first.
We’ve made some (reliability + speed) improvements in DS 2.2.0 for target information loading, but apprently it broke something in your use case…
We’ll have a look on that; please can you just elaborate on the FW version you use?