Last updated: 05 July 2017
7 years ago, Internet of Things did not even appear in the Gartner hype cycle. Still it popped in my timeline. At that time, when you googled for “Internet of Things”, you vaguely understood that it consisted in sticking RFID tags to objects. Also, this Nabaztag thing buzzed gently.
I started connecting dots. I imagined DOM:GLES, a javacard powered USB dongle that linked USB devices to internet.
Eventually, we created an incubation cell. Here are 5 things my first IoT project taught me.
Doing an IoT prototype is easy
Getting a green light from my hierarchy took me 1 year. Actually, I couldn’t convince them until I got a first working prototype. Thanks to Alex and Aurélien, 2 gifted interns, we managed to build it in less than 6 months.
It was able to connect together:
- A basic digital photo frame,
- A USB controlled plug,
- Any Canon digital camera,
- A power meter
- And also some services like twitter, picasa or flickr.
We also created a clean web interface, very similar to what Node-RED propose nowadays.
- If the user drew a link between the camera and Picasa, taken photos were automatically uploaded.
- Connecting the camera to the photo frame, they were instantly displayed on it.
- You could tweet your instant power consumption by linking the power meter to twitter.
After 6 months, on the last day of the internship, we demonstrated the prototype to our CITO, who immediately created the incubation cell.
IoT value = things interconnection
This was the beginning of a 2 year long adventure. First thing we realized: we could not provide the full solution at once. Thus we had to select our MVP (Minimum Viable Product). This is where we made our first error.
Our criteria was time to market.
It was called Wimbi and was a dongle that you insert into your digital photo frame in order to connect it to internet services.
Other candidates were :
- the dongle that connects your hard drive to internet
- the one that connects your camera
- or the one that connects your printer
I now realize that none of them was our MVP. Our product, and IoT in general is about interconnecting the things altogether. Connecting one thing just result in yet another gadget.
Our MVP should have been able to connect several different things altogether. Even if few things in a first time. Even with limited functionalities.
IoT should make life easier
The problem with IoT is that it tends to make simple things complex. Let’s take the case of our digital photo frames. They are very simple things. You remove the SD-card from your camera insert it in the photo frame and… It works.
Now that you connect it to internet, you first have to enter you Wi-Fi key whilst it does not have any keyboard. Then you have to select and log to your picture source. You will also have to select who will be able to administrate or post on your frame.
We had a hard work streamlining the bootstrap. But at the end it was never as simple as your usual basic photo frame.
Any connected device will be more complex than its basic counterpart.
And there I don’t even talk about bugs and security issues.
Where do you put system intelligence?
When you start designing your IoT system, the first question you face is “Where do I put the intelligence of the system?”
Usually there are 3 solutions:
- On the device
- On the gateway
- On the server
.. Or a little bit everywhere
In the case of Wimbi, in a first time, the server was downloading images from external services, and putting them in the play list. Then, on demand, it sent them to the frame. The advantage was it allowed easy integration of new services to the demo. On the other hand we had 2 problems:
- We experienced high bandwidth costs because all photos were downloaded through our server.
- We were connecting to external services through 1 unique IP, so we reached rapidly the authorized quotas.
Our solution was not viable. We had to refactor and move part of the intelligence to the device. It augmented the bill of materials. It made mandatory remote firmware update.
Updatability don’t prevent things from being obsolete
Tesla did an impressive move when they fixed their self-driving cars remotely. We had such capabilities with Wimbi but it didn’t prevent us from being submerged by competition. Indeed we decided to go B2B with our solution. Mainly because this was the preferred channel for Gemalto.
We specialized in digital signage providing a cheap low-end solution. Unfortunately at the same time Roku and Google started distributing their small HDMI dongles which made our product totally obsolete. The incubation cell was stopped after 2 years of an exhilarating experience.
Even if it wasn’t considered a success, it allowed me to put a foot in IoT domain and learn some lessons I never forgot ever since.