Imp looks connected, but it's not

Hey there,

My imp was working just fine for several days, but now it’s not responding to requests to its HTTP In node and the planner reports: “impee offline.” It’s blinking green somewhat slowly, but maybe not as slowly as it used to? It’s definitely not blinking quickly and it’s definitely not steady, so it’s unclear to me what the problem might be.

UPDATE: I’ve removed and reinserted the imp into its board, and it’s giving the same green pulse that it was before, but now it connected in a way that works. What was the problem? What should I do next time that happens? How can I prevent this from happening in the future? Is there any way to debug this or notify me if it happens?

Right now there are still some cases where a silent imp can drop offline without the server noticing (the only NAT preserving pings come from the server). The way around this is to do a server.log or server.show every few minutes to convince your router that the device is active.

Hey Hugo – thanks for your response!

I’ve implemented a sort of phone-home feature for the imp, so now it sends a quick PUT to my gateway every 4 minutes to let it know it’s still listening.

Is that overkill? Is there a slower rate you’d recommend?

I’m using this imp in a situation where it needs to listen to its HTTP In port at all times. Is there a way the HTTP In port could wake the imp from sleep? So far I’ve assumed there isn’t since sleep disconnects the imp from wifi.

Whether it’s overkill depends on your application; you may find a server.log is enough. The rate required depends on the local network configuration, which varies from router to router.

Nothing remote can wake a sleeping imp. Release-9 brings imp.setpowersave() which gives a significant reduction in wifi power (over 90%) whilst remaining online. Power savings will increase further in the future, but this might be enough for your application.