CC3000 stability issues?

Posted on
  • Hi all,

    I am currently exploring the "best" prototyping platform for a little project, I've used the Spark Core already for example and know that the CC3000 seems to have real issues in "chatty" WiFi environments. Nevertheless, I am wondering if there is somethign I could do from an Espruino point of view.

    The error I am getting is this:

    ERROR: Timeout in CC3000 driver (4103)
    ERROR: Connect failed
    at line 22 col 13
        req.end();
                 ^
    in function called from system
    Looks like CC3000 has died again. Power cycling...
    

    My code is doing a HTTP post request, then once data has been received, it will schedule the same request again after 5 seconds. Ideally I would like to get a constant server-client connection, WebSockets or so, but I think if simple HTTP requests are a stability issue, I won't go in this area.

    Is there a way to

    • make it more stable?
    • or could I at least reset the CC3000 somehow, catch the exception it did throw and start again?

    Thx!
    Sven

  • Hi Sven,

    At the moment it's all a bit difficult. The CC3000 driver is horrible and will just randomly stop working if there's any issue with SPI comms. I'm hoping as time goes on we'll find a way to make it more reliable, but what's happening right now is IMO what you want:

    • You make a request
    • CC3000 driver (or CC3000) just hangs - however this could just be because of a slow DNS server
    • Espruino detects the hang, backs out, reboots the CC3000 and reconnects it.

    So what you could do is set a timeout before you execute the HTTP request - then if the HTTP request hasn't succeeded by the time the timeout is called, you can just issue it again.

    Hope that helps,

  • Post a reply
    • Bold
    • Italics
    • Link
    • Image
    • List
    • Quote
    • code
    • Preview
About

CC3000 stability issues?

Posted by Avatar for hansamann @hansamann

Actions