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 and should probably be called a framework instead. 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 and work over cable or over the air.

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.

The wiki contains some getting started links 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 forum to get support and ask questions.



VSCP project i Belgium

David Steeman is building very nice stuff around VSCP in Belgium. Watch this video to see his setup. You can also read more about his projects at his website steeman.be

Maj 27, 2015

Freescale VSCP project

New Atmel sample project

Jean-Marc Beaune have made a new Atmel sample for a latching relay module. He have previous also done a popular Temperature & Humidity sample module.

Maj 5, 2015

Andreas VSCP Framework now at version 0.3.0

I released just some minutes ago the VSCP framework v0.3.0 and the corresponding arduino library v0.2.0 VSCP framework changes can be found in detail here. The Arduino library is only updated to the VSCP framework v0.3.0

Some highlights:

The framework supports now the silent node behaviour, which is used for non-multimaster protocols, like RS-485. The bad thing is, I only use the CAN-bus at home and implemented all in theory. If anyone has time and fun to check it, please try and give some feedback.

Also new, this is the first version which was checked by coverity coverity with 0 defects reported.

The pc example uses now the VSCP helper lib of the v1.0.1 Neon release ... thanks Ake for the great work again and the support!

And you can play via the websocket interface of the daemon with the pc example. Switching lights off, on or dim them.

Best regards

April 16, 2015

VSCP & Friends version 1.0.1 out

Version 1.0.1 of VSCP & Friends is out. Download and read release notes here here.

Mars 30, 2015

Low cost CAN4VSCP interface

A low cost CAN4VSCP interface, Frankfurt RS-232, has been released by Paradise of the Frog and is available for immediate delivery from there store.

Mars 30, 2015

First release of Arduino lib for VSCP

Andreas Merkle has released a first release of an Arduino library for CAN based VSCP. You can find the library and info here. The lib is built around his VSCP firmware framework that is available here.

Mars 29, 2015

Vote for VSCP & Friends

Please vote for VSCP & Friends in the Open Source category of Postscapes IoT Awards of 2014.

January 6, 2015

VSCP & Friends 1.0.0 Neon released

November 14, 2014

This version of VSCP & Friends has many new enhancements and new features. The communication engine has been rewritten from scratch and also other parts has been completely rewritten and reorganized. New from this version is that the full package is available on the Windows platform again. The package, as it always have, builds and works on Linux, including Raspberry Pi, Carambola, Beaglebone Black etc, etc.

A list of features follows that is far from complete

  • Local administrative web interface that makes it easy to maintain an m2m/IoT system.
  • A full internal web server with advanced functionality.
  • Websocket interface with many samples for easy UX design.
  • An advanced RESTful interface ready to take advantage of supporting text, csv, xml, json, jsonp
  • The VSCP helper library is now documented and loaded with all the functionality you need.
  • An easy to implement driver structure makes it possible to add drivers for any hardware/system.
  • Internal table engine that make it a snap to collect data and show it in nice (dynamic) diagrams.
  • Built in scheduler for control and/or database logging, and for fulfill every dram you have in control and logging.
  • and more and more and more…

VSCP friend is a complete solution from the low end sensor modules firmware up to the presentation and handling of the data it generates and it standardize many of the tasks that are currently in the wild. It provides a
The release can be downloaded [[https://sourceforge.net/projects/m2m/files/VSCP%20Software/1.0.0%20Neon/|here]].
  • 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.

Getting ready for the Neon release

If all goes well the Neon release will be out in October. A lot of changes has been done to this release and the big news is that the Windows platform is supported again. SSL will now be available on all interfaces (TCP/IP/webserver/websockets/REST) making the security for the system dead strong. You can already take a peak at the functionality for the VSCP daemon here.

September 25, 2014

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

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