Welcome to the VSCP Website!

 

 

VSCP Logo This site is dedicated to the Very Simple Control Protocol (VSCP), an open and free framework/protocol for IoT/m2m automation tasks. The word "Protocol" may be misleading. VSCP is much more. VSCP is a highly scalable, free and open solution for

  • Uniform device discovery and identification.
  • Uniform device configuration.
  • Autonomous/distributed device functionality.
  • Uniform way to update/maintain device firmware.
VSCP is an application level protocol. It uses CAN, RS-232, Ethernet, TCP/IP, MQTT, 6LowPan or whatever as it's transport mechanism.

VSCP & Friends is a package with software and firmware tools and examples for different platforms.

The VSCP protocol is free to use and implement just as all code and examples of VSCP & Friends is free to use.

Getting started: Read the intro to get some general info about VSCP (also here). The specification document is a mouthful and may not be the document to start with. Use it as a reference. Download VSCP & Friends and try it out. Join the mailing lists to get support.
  • There is one way to Discover them all.
  • There is one way to Configure them all.
  • There is one way to Update firmware of them all.
  • There is MANY ways to communicate with them all.


 

 

 

Commercial VSCP modules now available

Commercial VSCP modules starting with a series of CAN4VSCP based devices is now available here and can be bought here together with some useful accessories.

Mars 17, 2014


Fluorine 0.4.0 is out

It been quite some time now since the last official release of VSCP & Friends but here its is, the brand new 0.4.0 Fluorine version, the free and open source framework for M2M and IoT setups. As of 28 of August VSCP & Friends has become thirteen and is now a teenager. Who could ever think we would still be on it today back in 2000. But we are.

We have now reached all the goals

  • We have uniform device discovery and identification.
  • We have uniform device configuration.
  • We have autonomous/distributed device functionality.
  • We have a uniform way to present data.
  • We have a uniform way to update/maintain device firmware.

The software package has always worked well on Raspberry Pi boards and on BeagleBone Black boards and on all other small boards out there, as well as on bigger systems. Regrettably we have to drop native windows support for the vscpd daemon from this version, as we just does not have the time to support it at the moment. All software around it will however still work also on the windows platform and will do so also in the future. That's a promise. If you absolutely need it, it should be possible to build with MinGW or similar.

So what is new in VSCP & Friends in this release.

First of all there is a new driver model which we call Level II drivers. This type of drivers can use the variables of the daemon for it's configuration and therefore becomes very flexible as the variables of the daemon can be edited and changed remotely. This is a development that aims at drivers that can be installed and configured on a remote machine just as apps. are installed on cellular phone today.

A built in webserver is available in the system. This web-server can, as any other web-server, let a browser fetch pages you put on the servers file system. But it's also a built in user interface for the vscpd daemon where you can edit, delete and create variables. Investigate interfaces on the machine. Add, delete and create decision matrix elements so that you can create automation tasks such as running a series of programmes when a button is pressed or something else happens. The possibilities with the built in scheduler is endless. The user interface for the daemon will be extended in the future with many new features.

We have wanted to create a flexible way to make user interfaces for VSCP & Friends for many years now and it's not until HTML5 websockets came around that it has been possible to realize. But now we have a HTML5 websocket interface on the VSCP daemon. This means you can build rich live web interfaces with widgets for such things as temperature display or buttons for control. Each widget becomes its own light client. If you can build a web-page you can build a simple or an advanced control user interface. A JavaScript library helps in creating controls and displaying and getting a widget working on a page is usually one line of JavaScript code.

The VSCP protocol by itself is an abstraction for other real world protocols and even if a real world component can hook on to the VSCP & Friends on any of the well defined interfaces, a driver is the most common way to add support for other real world systems. VSCP & Friends is not built to be the only solution, it is designed to take advantage of all other solutions/protocols by make intelligent abstractions of there functionality.

A level II TCP/IP link driver has been added. With this driver it is possible to connect to other daemons on other remote machines and/or on smaller boards with a simple TCP/IP interface. The connection will be held up by the daemon even if it falls.

A level II socketcan driver and a Level I socketcan driver has been added. So now all CAN devices that have socketcan support (most) is supported by VSCP.

A level II logger is added to the level I logger which can help in debugging you system. This logger also can log events for later user friendly inspection in VSCP works.

A level II MQTT subscribe/publish driver has been added to make it possible to use this popular IBM protocol to send VSCP events over a topic-channel. As MQTT is available on many, many platforms this extends the reach for VSCP & Friends to.

A level II raw Ethernet driver has been added. This driver makes it possible to send raw ethernet VSCP frames instead of IP frames and therefore build clients that does not have to implement a full TCP/IP stack on them and also has no need for being setup with an IP-address etc and thus works when started up. A temperature sensor or a switch hooked up to a local Ethernet just don't need the space taken up by the TCP/IP stack.

A level II LM-sensors driver has been added which makes it possible to monitor the health (temperature/voltage/rpm of fans) of a mainboard and CPU's and the disks on a remote machine.

And then there are the old Level I drivers. can232, xap and others.

The helper-dll is now pretty complete and makes it easy to interface the different interfaces of VSCP & Friends and decode/code data.

VSCP-Works now can update firmware using the generic algorithm as well. Sample firmware for AVR processors is available. It also have support for Level II and can read and write multi page and decision matrix of remote devices. It can also handle abstractions from the MDF specification from the device and therefore configure devices on the highest user level. This is still tool for developers and we expect many of it's user friendly parts to be moved or be doubled in the web-interface.

And then it is lot, and lot and lot and lot of small things fixed and added everywhere.

How to get started. Check the wiki

Enjoy!
Ake Hedman

January 19, 2014


VSCP & Friends becomes thirteen today

Thirteen years, teenager, he/she/it VSCP & Friends becomes thirteen today. Thirteen man years. No remarkable development time for IBM/Google/Microsoft and others. They can do this in a month. They just insert the right amount of people into the project. However, as a sole developer as me, it is a difficult and a crazy long time, 600 000 lines of code is 130 lines per day, every day of the year, for thirteen years, xmas, holidays and any other days included. Post install scripts, firmware examples, support, manuals and thinking added to that. There is a lot of time and energy put into this project. All just to prove a vision that I had in the early 80s. To build small devices that can communicate with each other without a server and which can be installed, detected and configured in an easy way and used by ordinary people. IoT and M2M buzzwords of today, the technology has become popular in the world, hyped, but not here in the woods in the middle of Sweden, where I'm sitting, of course not.

Had I known then, in August 28 of 2000, that it would take this long to realize my vision, I had never started this, NEVER! But there are and has been people around the world who have been a huge support and made it worth continuing, people on all continents that have become close friends over the years. But even more people have not believed in the project, of course, its always that way. How many rejection of the project have I received over the years? They can not be counted. How much money have I myself put into this project? How many last places in the competitions has the project received? How many angel investors have moved past my booth without even looking at the logo?

A long time I really thought I would get to say to those who say no and rejected the project, that "there you see, I was right," but after a while you realize that happy endings only exist in movies. You have to find the energy to continue anyway. One must throw them all out, the people that just takes energy without giving back - the open source projects energy thief's, always there - and then wander on by yourself as you always did towards a goal that no one other than you yourself believes in. That's when it helps to be crazy. It is not possible otherwise.

Right now I'm working on a release again of VSCP & Friends. This will probably not be the last either. With this release, the user interface, which I have been asking and begging over the years for other people to help me with (because I'm poor at HTML5 and Javascript), is in place. My vision is realized at last. The project has reached all the way after thirteen years. Not finished by far. It will never be. But the pieces are in place and can be used completely free of charge and free and open for those who want.

When you become thirteen you also become a bit tougher. A teenager with attitude as well. More rock and roll. Prices and investment capital is likely to go to others also in the future. As someone said "it's laughable when it is called Very Simple Control Protocol when the specification is in the hundreds of pages." But every word that's in that specification is there to make sure that things built around VSCP can be small, nice and easy for the **end user** to use. The designer and constructor may well need to chew specifications, it's there job, this is built for the end user experience alone. I am so tired of self-righteous engineers' systems that only gets trickier and trickier and trickier to use for every day and for eternity in stupidity for us all. VSCP is a way to make things more user-friendly and self-configuring. Things that can themselves tell the user how to configure them and also help the user step by step with the configuration. They can tell that they are available. They can present information and can be controlled in the same way for all devices. They can talk to each other. They contain the user manual within themselves and phone numbers/ email/web address of manufacturer/support and all other information you sometimes need but can not find when it is needed. Just as it should be. Easy. Simple to understand. Beautiful.

So congratulations VSCP & Friends today at your thirteenth anniversary. May the world see your teenage beauty.

2013-08-28, Los, Sweden
Ake Hedman
Maintainer of VSCP & Friends

August 13, 2013


IoT event in 2nd edition, High Tech Campus Eindhoven

We will attend the Internet Of Things event at High Tech Campus Eindhoven at the 4/6 2013 where VSCP also is nominated for the IoT Challange price. Come and meet us. Discuss VSCP with Åke Hedman and Henk Hofstra. Order tickets here iot event.


Specification is now available on-line again

After it has been available only as a pdf-document the VSCP specification is available on-line again. You can find it here.


Vote for the VSCP project

The VSCP project participate in the IoT Challange over at the Internet of things event please vote for the VSCP Project in the challange. This is a bit of a David vs. Goliat as most IoT/m2m project ar goverment/university financed projects.


Arduino CAN shield sample

Many people have aske for a sample VSCP over CAN sample using one of the available CAN shileds for Arduino. Now there is a fully working sample available.

Link to Arduino sample

Future of VSCP

I have been convinced by one for me long term VSCP user to continue, to some extent at least , my VSCP development. Mainly this is about controlling the specification. This is thus only about the specification and don't reflect the software. If I will do some releases of the software is written in the stars yet. If I need it myself I will do it. What I will add/extend/do I will do for my own fun only from now on.

The specification will still be open and the software will be open source. However and this will affect all of you. The main VSCP project will as of today no longer have any external developers. This may change in the future but for now I will be the only developer. This is because I want to get rid of all discussions about directory structures etc etc etc etc etc etc etc etc that just tires me and don't contribute a single bit to development. So if you have any software in the software three this will affect you as you can't update it any more. This should affect two people besides me. You have two choices here

- Ask me to remove your source.
- Let it be in the source tree and send me patches on future changes.

What if you want to contribute a driver?
Send it to me and I will include it or put it on github, sourceforge or something else and I will add a pointer to it in the release docs.

If I want to contribute source/changes/fixes?
Send me a patch.

Firmware
Firmware will no longer be in the source tree. But I will make the entire source tree available on the sourceforge download section from time to time. It will also be available on github. My first thought here was to make the entire tree available on github but I guess we soon are into the same tiring directory structure discussions so I will not do that. If you do VSCP modules my recommendation is that you make your own project for it on github/sourceforge and send me a link to it and I will add a pointer to it in the firmware tree. If you don't want your current module in the tree anymore please let me know and I will remove it.

So what to do if you don't like this?
If you don't like this it's for you time to fork this project. Take the source/the specification etc and call the project something else.

Thanks
/Ake

Drupal Home Automation with VSCP

Peter Bosmans Speach in Gent 25/26 may 2012

Link to speach

Commercial VSCP modules now available

Grodans Paradis AB now sell VSCP modules.


Grodans Paradis AB develop and sell VSCP based modules and other (home) automation equipment. First out is the
Kelvin NTC10KA a temperature times six CAN4VSCP module with many features. This modules will be followed by some other CAN4VSCP based modules. The Paris module for relay control. Accra module, a general counter, Bejing a general I/O interface and Vilnus a general A/D module. Next in-line is some raw Ethernet and some 802.15.4 modules.
Visit the shop.

VSCP & Friends 0.3.1 Nitrogen is out

Our latest release VSCP & Friends 0.3.1 Nitrogen is out.

  • bug 3235535 fixed. Minimized session windows on start up in vscpworks.
  • bug 2870025 fixed. Reedit of txlines in vscpworks.
  • Added DM action escape substitutions for differenet standard system paths. See 15.7.6 for complete list.
  • Helper interface now have full variable handling.
  • All Level I drivers moved to drivers/level1. Windows build files changed accordingly.
  • Timestamp was missing on internal events. Added for all.
  • Fixed bug in %hour substitution in DM action strings.

VSCP & Friends 0.3.0 Carbon is out

Our latest release VSCP & Friends 0.3.0 Carbon is out.

  • A new TCP/IP based VSCP Driver model in place. A very good diagnostic tool with many features.
  • A Level II logger driver in place.
  • A Level II bluetooth proximity driver in place. Detect bluetooth devices coming in and going out of a zone.
  • A Level II raw ethernet driver in place. Very low cost ethernet devices can be used that does not need a TCP/IP stack. The nodes can be fully plug and play and use PoE. Just insert a tempdevice into an ethernet socket and it will work right away without any configuration.
  • The internal decision matrix of the daemon is now fully functional. Complex control scenarios can be set up.

Famous Software Award

"Very Simple Control Protocol Daemon" has been granted the "Famous Software Award" by Download.FamousWhy.com.
January 09, 2011

VSCP 0.2.10 Boron is out

Our latest release VSCP 0.2.10 Boron is out.

This i VSCP Boron 0.2.10. Many changes and bugfixes has been added to this release. The most exciting is that the internal decision matrix of the daemon is now fully functional. This means that the VSCP daemon/server now can be use as a fully fledged sceduler on it's on. It is possible to control when things happen down to the smallest detail. If you want a a light to be on only X-mas day between 9:30 and 10:30 that is OK. If it's just a special year this should happen that is OK to. If you want a random patterns thats easy.

Actions are the workers of the decision matrix. External events such as buttons pressed and internal events such as second, minute, hour events are feed into the matrix. If the conditions for the row is fulfilled the action is performed. Actions can send new events execute exteral scripts/programs, access web servers (GET/POST), send events to remote VSCP daemons, write to file, and much more.

The decion matrix can be controled remotly through the TCP/IP interface to add/remove/edit rows.

Variable handling are fully functional. Write measurements to a variable and read it from a web server scripts.

Enyoy!

December 19, 2010

New website

It took some time to get a new web site up an running for VSCP. Now it's finally here. There will probably be some initial problems. Please report problems to info@vscp.org

December 14, 2010

VSCP 0.2.9 Beryllium is out

Our latest release VSCP 0.2.9 Beryllium is out. Among many things it includes support for bootloading nodes locally or remotly over the Internet.

April 11, 2009