Categories
General

It’s all about HAL (or what #IoT people do wrong)

vscp_new_v2

I am old.  I was in this game as a programmer when 1K of EPROM and 128 bytes of RAM was fantastic.  Assembler of course. Half an hour to erase those EPROMS and five minutes to program them.  Five minutes to walk to the programmer and replace the erase with new once and back again. Yes that is how old I am.

I also did programs for the PC pre windows. We distributed things on diskettes. One diskette for the program we sold and fifteen, sometime thirty diskettes, with drivers for different keyboards, mice, graphical adapter, monitors etc etc. shipped along with that diskette to get things to work out at the customer. The PC era. A lot of diskettes.

Then Microsoft came a long with windows and it changed everything.  Software boomed and everyone made money. NO it was not the graphical interface. There where others that did that. It was HAL. The hardware abstraction layer. Suddenly we could ship our app.  without worrying about what was connected to the machine. Windows handled that.

Lesson learned: Abstractions are good.

Also at this time, but maybe a bit later, hypertext was sort of a hype. There where numerous applications that linked cards and pages together using hyperlinks. I think most of us saw this need. The amount of Information was increasing drastically. We needed ways to connect the dots. The docs for the windows SDK was well over a meter in my bookshelf alone.

All those applications, well, they where called “programs” at the time,  where proprietary and so was the format for the data. So if you bought a hypertext system from a supplier you where stuck with that supplier and that suppliers format.

So when html came along it’s use of hyperlinks was not a surprise.  Nor was they way pages was built using abstractions such as headers, pictures etc. And it was open. Everyone could use it, build it and improve it.

Lesson learned:  Abstractions are good.  Openness to. It makes people creative & productive.

So a few days ago this big company announces a new app.  An incredible IoT building application.  They demonstrated how incredible it was by  showing how one could turn on a LED on an Arduino board from a Samsung phone. The demonstrator was excited, like it was a hockey game and the lit LED was a goal, the quality of the video was high, this involved a production team, a few guys, sound, camera, crew, must have cost a few bucks. And yes they got +700 likes the first day. Hundreds of comments. WOW’s.  From me they just got a “vertical” sigh….

That deep sigh is not because I usually get three likes and no comments for something involving VSCP.   Nor is it because they where controlling a LED.  I have always appreciated the LED turn on/off as the “hello world” of embedded programming. It’s a start. It works.  The problem was the absence of abstraction. There was a LED controlled in the user interface also. The problem was also the vertical nature of  everything.  If you used this system you where stuck with this supplier from the LED up to the user interface. The problem was the prosperity of the steps involved between the LED and the user interface.  Sigh again. Double sigh. No like from this old guy. You know grumpy old men…

Me and some other guys started building VSCP around 2000.  “Open” was a keyword from the beginning. “Layered” was another.  Heavy use of abstractions a third. “Free” of course. Unbelievable it is fifteen years ago now. But it was built from lessons learnt.  So one additional thing was available from the beginning in VSCP.  The HAL for M2M/home automation/IoT will come some day and concur the world. We thought. Now fifteen years later. No. It has not come. I can’t even see it on the horizon.  Just hype. Everything made today is useless shit. More or less. IF taken out of its vertical context that is.  YES worthless.

But we built VSCP so it was possible to preserve investments in development when the god of IoT came.   And yes there is no five second way to appreciate that in VSCP just as there was no five second way to appreciate TCP/IP when it came. Sometime we must dig deeper and beyond lit LED’s and headlines from big companies to appreciate things.  Just as there are a difference between a comic strip and a novel. Yes it is a difference.

Lets face it. What does the different alliances of today have to come with? Well another way to transport “23.56” from point A to point Z. Sometimes directly, but often traversing “R” and “B” on the way. And “23.56” is received at Z in a secure and safe way.  Yes they all do. Often very good.

But…

No one specifies what “23.56” is. Is it my hourly wages in dollars? Is it a temperature.  And if so is it expressed in Fahrenheit, in Kelvin or in Celsius?  No problem you say. Each manufacturer decide what they send. The receive  just have to gain that information. Or magically know it.

Most of them even center around a transport type.  To many to mention.  Will a device world ever be conformant in transport mechanism.  Is there even one person in the world that believe that?  For god sake. MQTT is a way to transport information, it is NOT an IoT protocol. The same is true for the rest. Every one of them.

But what happens now if “23.56” was standardized to SI as in VSCP.  Well first the receiver know without question what he/she gets and therefore can use it and display it in a correct way. But suppose that it also is standardized in the data format. If “xx.yy” also is known and can be encoded and decoded even if it is a different entity.  Suddenly one data storage solution fits all measurements. One presentation solution fits all to. Etc etc. Must be good.  At least old men like me think so.

Not to mention device discovery. Or device configuration. Or device firmware update. What a wonderful world if they could be done in a common way.  Is it possible.  Well ask someone using VSCP. It has been for fifteen years now.  Using an IoT protocol that was there before IoT was.

We are still waiting for the one that can unite them all.  In the meantime VSCP can help preserved investments buy abstracting the thing to come. Well, or unite them all. Why not!?

If you want to know more

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.