All posts by admin

Tech heavyweights join Zigbee in launching open source smart home consortium

Amazon, Apple, Google, and the Zigbee Alliance have formed a “Connected Home over IP” group to develop an open source smart home connectivity standard. Meanwhile Silicon Labs plans to relaunch its Z-Wave spec as a “ratified, multi-source wireless standard” open to all silicon and stack vendors for development.

Source: Tech heavyweights join Zigbee in launching open source smart home consortium

Another try!

WebAssembly: JavaScript Done Right – EEJournal

“The most dangerous tool in the world is a dull knife.” — unknown Google Earth is pretty cool, right? You can zoom in on any arbitrary point on the planet or watch the scenery zip by as you skim the surface at 1000 feet and 1000 MPH. Check out your neighbor’s backyard pool or circle…

Source: WebAssembly: JavaScript Done Right – EEJournal

Fresh data for free

VSCP events are probably the most important part of VSCP. They make it possible for different type of hardware and different types of systems to talk to each other and they also makes it possible to write one application to solve many problems in one shot. A typical examples is a logger for measurement data or a presentation system for the same. They abstract things that happens in the world and they abstract how we can interact with the world.

Everyone that knows a bit about VSCP use the specification to search for events or to read more about them. But what everyone is not aware of is that they are also available here in a multiple of formats that are suited for a machines, always up to date. Just check the version.json file to see if the docs you have downloaded is the latest. Otherwise fetch the updated version.

In the docs folder you even find the full documentation for all VSCP events in markdown format. You can do your own documentation from it if you want.

And best of all. Maybe. Is that is all is free. Just as everything else is with VSCP & Friends.

And of course. If you are missing an event, tell us, and we will add it if it’s not there already.

Change of #VSCP package header definition

The VSCP package header is a 16-bit code that give some information about a VSCP event. A change has been made to this header that is not binary backward compatible. Software relying on it must therefore be recompiled to be compatible with other software for the upcoming version 14.0 of VSCP & Friends.

The first change is that the dumb-node bit has been moved from bit 14 to bit 15. This bit is used to indicate that an event originate from a node that does not have a MDF, no registers, noting else than that it can send VSCP events and maybe receive VSCP events. Ignorant of any other rules. Applications that used the VSCP_HEADER16_DUMB define will handle this perfectly if recompiled.

The second change is the bit that tells that the GUID is an IPv6 address. This bit was previously in bit 15 but is now in bit 12. Furthermore a field of three bits (14/13/12) has been allocated for GUID types. Applications that want to be compatible with the upcoming 14.0 release must take care of this.

Two new GUID types are also introduced. RFC-4122 V1 and RFC-4122 V4. You can read more about the difference between them here. This make sit easier to take advantage of UUID generating tools like this one.

So the complete header is now defined as

/*
            Bit 15 - This is a dumb node. No MDF, register, nothing.
            Bit 14 - GUID type 
            Bit 13 - GUID type
            Bit 12 - GUID type (GUID is IP v.6 address.)
            Bit 8-11 = Reserved
            Bit 765 =  priority, Priority 0-7 where 0 is highest.
            Bit 4 = hard coded, true for a hard coded device.
            Bit 3 = Don't calculate CRC, false for CRC usage.
                  Just checked when CRC is used.
                  If set the CRC should be set to 0xAA55 for
                  the event to be accepted without a CRC check.
            Bit 2 = Rolling index.
            Bit 1 = Rolling index.
            Bit 0 = Rolling index.
 */

New and old/changed defines are

#define VSCP_HEADER16_IPV6_GUID 0x1000 /* GUID is IPv6 address */
#define VSCP_HEADER16_DUMB 0x8000      /* This node is dumb */

/* Bits 14/13/12 for GUID type */
#define VSCP_HEADER16_GUID_TYPE_STANDARD  0x0000 /* VSCP standard GUID */
#define VSCP_HEADER16_GUID_TYPE_IPV6  0x1000     /* GUID is IPv6 address */
/* https://www.sohamkamani.com/blog/2016/10/05/uuid1-vs-uuid4/ */
#define VSCP_HEADER16_GUID_TYPE_RFC4122V1  0x2000 /* GUID is RFC 4122 Version 1 */
#define VSCP_HEADER16_GUID_TYPE_RFC4122V4  0x3000 /* GUID is RFC 4122 Version 4 */

New #VSCP documentation site

The VSCP project will move away from Gitbook (with all it’s problem and slow/no support) in favor of Docsify deployed on one of our own servers. This will make it easier to add versioned documentation, among many other things.

At the moment only the VSCP spec. is available but other documentation will follow.

The VSCP documentation site is located at http://docs.vscp.org