How To Fix Difficulties Getting Your imp-enabled Device Online
If you are having trouble configuring your imp-enabled device with BlinkUp™, please follow the instructions in this guide.
Some devices signal issues on their LED at start-up. Please see Device-Specific Codes if you are seeing unexpected patterns before BlinkUp.
All imp-enabled devices — which includes your development hardware, factory BlinkUp fixtures and production devices — are configured using BlinkUp. However, not all of these devices are configured using the same BlinkUp implementation. The following table shows the different ways different devices are sent the BlinkUp configuration signal.
BlinkUp... | Use... | Appears in impCentral ‘My Devices’ List? | Device Type |
---|---|---|---|
...Your prototype hardware | ...The Electric Imp app | Yes | Developer |
...Factory BlinkUp fixture | ...The Electric Imp app | Yes | Developer |
...Your product in assembly | ...Factory BlinkUp fixture | No | Production |
...Your product in use | ...Your BlinkUp app | No | Production |
When configuring your device with BlinkUp, please ensure the following:
Got a Samsung Galaxy S20 or a OnePlus 8? Please see the Android section, below.
Please refer to the imp LED color codes, below.
The following table should help you identify the color patterns your device’s BlinkUp status LED may signal. The smallest marked time unit is one quarter of a second.
Note Certain LED pattens are not shown below. This is because they are not related to BlinkUp and will be shown only when the imp boots. Please see Device-specific Codes, below, and the linked, imp-specific pages if you encounter an LED pattern not included in the following table.
Note Connections can proceed rapidly, so you may not see all of the patterns your imp can generate. For example, once a WiFi-using imp has successfully connected to WiFi, you may see only a few red and/or orange flashes before the LED steadily flashes green to indicate it is online. What matters for debugging is the pattern being flashed at the point of failure, ie. the last pattern to flash before the LED is powered down.
Pre-BlinkUp and BlinkUp Patterns | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
No network settings or enrollment credentials |
500ms | 500ms | Repeat | |||||||||||
imp005 waiting for Ethernet | 500ms | 500ms | 250ms | 250ms | Repeat | |||||||||
BlinkUp Successful | For three seconds | |||||||||||||
WiFi-only Connection Patterns | ||||||||||||||
WPS in progress (press WPS button on router) |
500ms | 250ms | 250ms | 250ms | Repeat | |||||||||
Searching for WiFi network | 500ms | 500ms | 500ms | 250ms | 250ms | 250ms | Repeat | |||||||
Joining WiFi network | 500ms | 500ms | 500ms | 250ms | 250ms | 250ms | 250ms | 250ms | Repeat | |||||
WiFi and Ethernet Connection Patterns | ||||||||||||||
Proxy address or port incorrect | 500ms | 500ms | 250ms | 250ms | 250ms | 250ms | Repeat | |||||||
Proxy credentials rejected | 500ms | 500ms | 250ms | 250ms | 250ms | 250ms | 250ms | Repeat | ||||||
Cellular Connection Patterns | ||||||||||||||
Waiting for modem | 500ms | 500ms | 500ms | 250ms | Repeat | |||||||||
Waiting for SIM | 500ms | 500ms | 500ms | 250ms | 500ms | 250ms | 500ms | 250ms | Repeat | |||||
Registering with a cell | 500ms | 500ms | 500ms | 250ms | 250ms | 250ms | 500ms | Repeat | ||||||
Cell Registration Denied | 500ms | 500ms | 500ms | 500ms | 500ms | 500ms | Repeat | |||||||
Connecting via PPP | 500ms | 500ms | 500ms | 250ms | Repeat | |||||||||
Checking PPP connection | 500ms | 500ms | 500ms | 250ms | 250ms | 250ms | 250ms | 250ms | 500ms | Repeat | ||||
Generic Connection Patterns | ||||||||||||||
Getting IP address | 500ms | 250ms | 250ms | Repeat | ||||||||||
Resolving server name | 500ms | 250ms | 250ms | Repeat | ||||||||||
Connecting to server | 500ms | 500ms | 500ms | 250ms | Repeat | |||||||||
Connected to server | 500ms | 500ms | Repeat | |||||||||||
Device lost connection | 500ms | 500ms | Repeat | |||||||||||
Device deliberately offline | 500ms | 250ms | 250ms | 250ms | Repeat | |||||||||
Updating impOS™ | Continuous for duration of update | |||||||||||||
Normal operation | LED not illuminated |
A solid red or rapidly flashing red LED indicates a power supply issue.
The following codes are no longer used by modern versions of impOS. They are documented here for users working with imps that may have not been used (and therefore not upgraded) for some time.
No WiFi settings (to impOS™ 32) |
500ms | 500ms | Repeat | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
BlinkUp™ successful (to impOS 30) |
250ms | 250ms | Repeat for three seconds | |||||||||
BlinkUp unsuccessful (to impOS 30) |
250ms | 250ms | Repeat | |||||||||
Downloading impOS (to impOS 30) |
500ms | 250ms | 250ms | 250ms | Repeat | |||||||
Installing impOS (to impOS 30) |
Continuous for duration of installation |
The Electric Imp BlinkUp app and the BlinkUp SDK have been updated to support the 90Hz and 120Hz refresh rate offered by a number of Android devices, such as the Samsung Galaxy S20 and the OnePlus 8. However, we have had just a few reports of BlinkUp failing on these phones. If you experience this issue, please let us know and re-try BlinkUp after temporarily disabling 120Hz mode. You can do so by going to Settings > Display > Screen refresh rate. Select Standard for 60Hz, or High to re-enable 120Hz mode.
To apply the setting on a OnePlus phone, go to Settings > Display > Advanced > Refresh Rate.
Recent versions of impOS contain many major improvements to BlinkUp on Android devices. Older imps running earlier versions of impOS will not benefit from these improvements until they are updated, a process which can’t take place until your device’s imp has first connected to the Internet after being configured by BlinkUp. If you are having problems configuring a device with an Android phone or tablet, the following may help you get the device to the stage where it can update itself. Ensure:
These adjustments shouldn’t be necessary when the imp-based device has updated to the latest version of impOS, which will take place when the device first connects successfully. If you are still having problems connecting a device for the first time, try configuring it with an iOS device if you can. This will allow the device update, making future, Android-mediated BlinkUps successful.
For detailed information on imps’ wireless and wired networking requirements, and on issues which may arise during an imp’s attempt to connect to a network, see ‘Network Requirements for imp-enabled Devices’.
Note The imp005 does not support Wireless configuration using WiFi Protected Setup (WPS).
A device’s embedded imp is designed to be driven by a 3.3V DC power supply, commonly derived from a 5V USB feed or from connected batteries. The imp’s operational power range is 1.8-3.6V, but WiFi requires at least 2.5V. If the supply voltage drops below 2.5V, the imp will continue to process Squirrel code (provided the supply is 1.8V or greater) but WiFi will be disabled.
A common source of BlinkUp configuration and connection problems is insufficient power to maintain WiFi while the device makes its initial connection to the Electric Imp impCloud. It is during this process that the device is authorized to connect to the server now and in the future.
Insufficient power at this point can be caused by low batteries, a power supply with insufficient current capacity, or a supply with insufficient voltage. If the power supply can’t support the imp, the imp will attempt to connect, run out of power, reset itself and repeat. This can appear as a fast red blink pattern as the imp quickly reboots over and over again. This LED pattern is a sure message to check your device’s power feed.
The Electric Imp mobile app shows the device’s progress from configuration to connection is presented on the screen of the phone or tablet you are using to set up the device. When the process completes successfully, the app displays the device’s ID and the URL of its agent. The URL can be shared by SMS or email.
imp006s begin life as a version of the STM32F423ZHJ6I MCU that has an impOS loader, called fastROM, pre-installed. At first power up, the fastROM verifies and then copies the impOS firmware image, called impROM, from external SPI flash to the MCU’s internal flash. If the external flash is missing, cannot be read, doesn’t contain an image or contains an image which fails fastROM’s cryptographic checks, the MCU cannot become an imp006. This is indicated on on the host device’s BlinkUp status LED. The pattern it presents is two seconds of solid red. After this the MCU reboots, so the effect will be a slow red blink:
fastROM SPI flash not found | 2000ms | Reboot |
---|
If the ‘impification’ process succeeds, the imp006 is immediately rebooted into impOS, which will from this point show the standard BlinkUp patterns, as appropriate.
The imp003, imp004m and imp005 have a number of LED codes which signal problems with the SPI flash unit that must be connected to the module. These are displayed when these modules start up and do not relate to BlinkUp.
SPI Flash not found | 500ms | 250ms | Repeat | |||||||
---|---|---|---|---|---|---|---|---|---|---|
SPI Flash error | 500ms | 250ms | Repeat |
If you are encountering unexpected LED light sequences on a device based on one of these imps, please see the respective Hardware Design Guide:
Once it has been enrolled, an imp005-based device will show the ‘Waiting on Ethernet’ pattern while it is attempting to connect by Ethernet. This is identical to the ‘No WiFi Settings’ pattern indicated by other imps. The imp005 does not support WPS, so will never show the ‘WPS in Progress’ pattern.