SL6087 and Unreliable Connections

I’ve been wrestling with my SL6087 for some time now in terms of getting reliable connections. Regardless of what interface I use (USB->Serial or straight USB) I get sporadic disconnects while trying to program it in Target Management as well as periods when I can’t seem to speak to the module at all. I’m using the dev studio 2.3 and I’m applying the timeout workaround (which involves just unchecking a single box in preferences). Nothing seems to work. It is gotten to the point where I need to do nearly constant hardware resets just to get it to communicate with target management at all. Most of the time I just get a timeout error in developer studio when trying to connect to the module. I’m using the 2.51 version of the firmware and bootloader, but that doesn’t seem to help at all. Is anyone else having these problems? I thought it maybe just a windows connectivity issue so I tried linux and found that I was unable to setup openAT in eclipse there (separate issue and a separate thread). The USB connection used to work better than the serial connection (ie more reliable and consistent connections to download programs and send naked AT commands to), but now the USB connection doesn’t work at all and the serial port barely works.

I can send more information to anyone who thinks they might be able to help me out here - thanks.

Sounds strange that the USB is definitely broken…
Maybe a driver issue after some troubles within the target?
Can you try some basic steps?

  • Give a try to start from a fresh boot (can help if you really have a driver issue), with everything unpluged on the device (power supply, USB cable)
  • plug power & USB on the device
  • Check in Windows Device Manager that the port is live
  • start DS and check the port is available here
  • try to connect
  • As you played a bit with several ports on the target, the Development Mode may be locked to another port (preventing DS to switch the USB port to Development Mode); To fix this, try to send AT+WMD=0;+CFUN=1, wait for device reset is complete, and try to refresh target status.
  • Another try may be to disable your Open AT app, in order to check if it causing troubles to the connection (can happen). --> AT+WOPEN=0

From there, we could go forward on the diagnostic…

The situation with the USB was exactly how you described it. The interface was locked. I was able to turn it back on using the UART1 connection. Thanks a lot for that. The other unreliability issues seemed to have subsided after wiping my program from the module, so I have to imagine that it was indeed causing the issues. Thanks a lot for your help.

A tangential question relates to what my application was intending to do and why it is so deadly: I am working on something that requires low power consumption so I am utilizing sleep mode in my SL6087. Unfortunately sleep mode doesn’t seem to play well with the connection to my PC (it also requires restarts of the module to bring it in and out of the mode). Is there a good fail-safe you’d recommend to stop and wipe the program if I get in a bad loop again and can’t connect to it (preferably pin-driven or otherwise hardware based since I may have trouble connecting)?

Hi,

One way is to enter low power mode with “AT+W32K=1,1”
You can then exit lo power mode with DTR pin.

The drawback is that you have to control the DTR pin to get in to lo power mode as well.

Cheers:

/Björn

Fair enough. The other drawback is that that command can only be used to put the module in sleep mode with the GSM stack in idle. That consumes a lot of current because of the GSM paging - I was more interesting in sleep mode without the paging. I appreciate the help though - thanks.

Note that with DS 2.3.0, you can control the state of the DTR pin (cf. Serial Port Monitoring section of the devices view + this post: Serial Port Monitoring)