The Blink-Up process could be improved by clocking in data (Like I^C) rather than relying on timing of the data stream (Like RS-232).
I propose improving the Blink-Up process by using 2 colors (red and green) to send data and clock signals. The timing of the data stream would no longer be critical, only the sequence of colors.
This change would require 1 more light detector in the IMP, and these lights detectors would need to be selective to red, green (or blue) light.
Changing the Blink-Up process would allow browser based Blink-Up programs to work. I would also allow a grater variety of Android devices to successfully configure IMPs.
I don’t want a customer to have to barrow a friends smart phone to make there IMPee work.
We have an improved blinkup which is less timing sensitive. This works on many more android devices in our experience. If you want to test it, send me a PM.
There’s no need to go to colors; this requires color filters etc, which means a hardware change and the hardware is finished (and FCC, CE, IC and C-tick approved). You can do clocking via different light levels too, but slowing down the blinkup so we can pick up dropped frames works just as well (that’s what the newer android version does); we’ve not tried this in a browser yet but it may well work.
In reality, the problem will go away for android as more android devices get to version 4.1 or later, which has much better frame rate control.
Given that even Google says only about 2% of the current user base has (or at least actively using) JellyBean (4.1) it would seem to me that it will be a very long time.
For factories, yes, but not for users. If you want things to leave the factory with a specific pre-configured SSID/password/user token then that will be possible.
…and as I said, the improved blinkup is being tested now. If you want to try it, let me know. At some point, when we’ve tweaked the UI a bit, we’ll push it to the Play store.
I understand the reluctance to change hardware. That is defiantly a down side to my suggestion.
For me the end goal would be a web browser based Blink-Up utility. The 2 color (clock + data) approach may just be a way to get there. If you can get to the same end goal with the existing hardware that’s even better.
Blink-Up needs to be something anyone can do with minimal hardware requirements.
There are several products that use browser based ambient light data transfer. So doing blink up without smartphone is for sure possible. Another options is sound to light adapter, by connecting a LED to the headphone jack it is possible to modulate the light. (a cap, and diode and LED connection is usually needed).
The improved blinkup that Hugo mentioned worked even with my cheep Android tablet (thanks Hugo). They are defiantly making progress in the right direction.
However I still would really like to see a browser based blinkup. I would just as soon not ask a customer to install an app that they will only use once.
Just wanted to comment and say that after I updated my Nexus S 4G to Jelly Bean, Blink Up works great. Previously, it would work 10% of the time on ICS.
Fact > I “LOVE” the light trick to configure the device. It’s a smart idea. +100000
Blinkup Problem - Very Simple Solution
Config : IOS + Blinkup // IMP.
Problem : Nothing appens after flashing, still orange blink.
The Simple Solution : (in my case)
Push the light at 100% on your iDevice.
Disable the Auto-AmbiantLight adjustement on the iDevice.
… That’s all, (in my case, this changed the situation, now I have Red Blinking
then im ready for the next step…
cya
… about the post
I thing it’s a good idea to have 2 lights stream, (clocking is the way)
I have another idea to do it.
With 2x white stream = 2x same light detector located on each side of the IMP card.
Divide the screen of the “Blinkup App” by 2, then you have 2x half screen that can blink separatly.
Center the imp card in the middle of the screen.
= 2 stream light, left screen+left detector for clock, right screen+right detector for data.
This solution use same hardware, no need of color filters.
We will be pushing a version of the iOS app with proper iPad and iPhone 5 support out in the next couple of weeks. Hope it’ll get through approvals quickly.
In other news I revisited doing blinkup from javascript in the browser (which I could never get reliable enough in the past), and it now works for me… possibly Chrome improved? Anyway, we’re looking at putting this into the planner/IDE for people to try.
A Javascript Blinkup library would be very useful. This could make things a lot easier for those of us trying to avoid dedicated Android/iOS apps (and Windows Phone I guess :-c ) by creating hml5/javascript apps. Blinkup would still be from the phone, but through an html app masquerading as a native app.
If you have code to share @Hugo - I would like to see it as well.
The last imp I purchased recently blinks-up just fine with my Windows version of blink-up, on my old LCD monitor sitting in my kitchen. I would say it’s really “forgiving”. I’m running Windows Vista, by the way, on an old Compaq Presario PC. It worked on my new laptop also.
The imp was designed to go inside a product housing, so when you’re using it on a devboard, covering the side with a finger or tape (or moving somewhere with less ambient light) helps a lot.