Cheap Alternatives to BlinkUp

Hey Guys,

I was wondering if there were any fairly cheap alternatives out there to the BlinkUp method. I have been flirting with NFC and Bluetooth as possibilities, but wondered which was best/easiest to implement/ if there are other better options to eliminating the BlinkUp process.

Have you ever tried a Spark Core? It does the equivalent to get connected to your wifi by wifi, but that magic didn’t work on my wifi. At least you can (literally) see what is happening with Blinkup. Perhaps the new Spark Electron is the next stage of evolution? Does electric imp have any plans for direct cellular data connection?

Not so sure NFC / Bluetooth is cheaper. Another method which has worked (with payment systems) is using the phone’s audio jack… e.g.

Maybe audio signal could be used instead of LED’s to feed IMP the wifi details.

Perhaps if you share what your problem is with standard Blinkup, then we can give answers that are more likely to be useful to you. Are you trying to avoid Blinkup completely (including account details to link the imp to your account), or just looking for another way of changing wifi networks?

In my experience Blinkup does not always work first time every time. Often depends on type of phone used and where on the phone screen the imp is placed. Then when imp device is used out in the field it is not always easy to place phone in exactly the right place… due to space constraints within enclosure or where the device is actually placed on the ground (e.g. could be in an elevated position).

So maybe even something like an LED attached to the end of an 3.5mm jack with short cable and with some clever electronics would be cheap enough to make and will then remove the practical issues related to getting phone next to imp…

Maybe if priced at $5-$7 or thereabouts people would see this as a useful accessory to purchase. I am sure this would be far more reliable than phone screen against imp. Then all you then need to do is modify the imp Blinkup App to allow user to choose audio IO instead of a phone’s screen to do blinkup. With this option no changes would be needed for imp itself.

Anything that can produce a signal can theoretically be used to ‘BlinkUp’ - if you’re interested in using something different for BlinkUp (in a commercial product), you should contact our sales team.

@gerriko - There are three big things that impact (optical) BlinkUp:

  1. The OS version. We have improved BlinkUp a lot since we first started shipping imps - so imps on the most recent version of the OS (i.e. - imps that have previously connected) will have a much higher success rate. If you’re building a commercial product with the Electric Imp platform, part of the factory process is to connect, update, and bless imps in the factory. This helps tremendously

  2. The enclosure - BlinkUp often fails on imp001 (SD Cards) + an April breakout board because the April is not a proper enclosure, and allows light to leak in where it should not. In a commercial design (like the first version of the Bud Red Light), the entire card is enclosed except the tip with the light pipe. This also helps a lot.

  3. For imp002s/imp003s/etc - properly tuning the BlinkUp circuit to your enclosure makes a significant impact. You can learn more about tuning BlinkUp circuits here (and if you’re building a product, we can help you with questions, etc).

Hopefully that clarifies things a little bit? We’ve seen very good and consistent results when product designers take the time to properly tune their BlinkUp circuits, and update their imps.

I was thinking, since my device will have a USB port for charging, that I would also route that USB to the UART on the Imp and transfer string from a simple java app to the imp

@beardedinventor thanks for the helpful feedback. Yes in my case I have been very much influenced by the imp001 performance on the basis that I do not want to start messing around with hardware design / tuning just yet.

As with all development projects there’s a migration process from prototype through to commercial product, which generally involves many iterations. The challenge throughout is to minimise costs while maintaining control over level of effort to achieve required functionality. When one has to throw in both hardware (especially the tuning part and where to place the optical receiver on the printed circuit board) and software design / development into the mix it can quickly get messy and costly.

As such it would be helpful if parts of the blinkup App were made available to developers (e.g. SDK) to say allow an app developer to use phone audio channel or the camera led to generate signals. This then allows at least the correct signal patterns to be generated and then more importantly provide more freedom for the developer to control the form/function of the phone/imp interface, instead of being constrained by having to place a phone’s face in direct contact with the imp optical receiver for blinkup. Then as you’ve rightly noted once you have done all the tuning and eventual blessing, the levels of reliability and usability experienced by the end customer is greatly improved.

Otherwise as @zpsmith3 has noted, there are other alternatives using SPI/UART/I2C to upload WiFi SSID / Password details.

One method I plan to test, as I have a development board sitting on my desk is to combine a TI CC3200 Launchpad with an IMP using SPI/UART/I2C as interface. This way I can use CC3200 Launchpad to handle multiple IO’s and local WIFI access through local web-server html pages (you just type in http://simplelink as URL and it works), and then use the IMP for secure “outside world” cloud communications. This way you can manage WIFI set-up easier (you can use the TI simplelink app to get network details rather than blinkup) and can provide localised user / app control through cc3200 web server if the Imp device becomes disconnected from the server. So you get best of both worlds.Considering the price of the CC3200 Launchpad this does not appear too extravagant if you also need loads of IO’s for your particular project and you get plenty of MCU power to play with (almost a pseudo dual core processor if you use both IMP and CC3200 for processing logic).

This design is intended for factory usage, to configure devices on a production line, but it shows you can do BlinkUp with little more than a bog-standard red LED:

BlinkUp Fixture