This document introduces VSCP, an open framework for IoT and M2M devices that aims to provide: 1) A universal way to discover devices using globally unique IDs. 2) A common way to configure devices using a standardized register model. 3) A method for devices to interact and automatically react to information from each other. 4) A standardized way to remotely update firmware on all devices. The framework also allows devices to communicate using many different protocols and aims to solve problems of inconsistent data formats, limited interoperability between devices, and dependence on single suppliers or protocols.