Source Code

From MiOS
Revision as of 19:01, 7 June 2012 by Cj man (Talk | contribs)

Jump to: navigation, search

This page is WIP

Vera is based on OpenWRT. The full source tree for OpenWRT is available at

We're using the following revisions :

Vera1 : 11404 (

Vera2 : 21644 (svn://

Our modified OpenWRT bins are :
broadcom-diag :

Our modified apps are :
dnsmasq :

Our modified library are :
libjson : libupnp :

Source code for Vera's applications:
version 1.0.602, is available here:

This includes DCERouter and some other libraries. The source code for Vera's Z-Wave stack and the router plugins are not included as they include licensed code and were created under NDA's. However these are not needed to extend the functionality of Vera because it is a plugin architecture so the proper way to add new functionality is to create another plugin or DCE device, rather than to add it into one of our existing devices. The binaries with the .602 release match the code, so you should be able to build a new firmware with the OpenWRT source tree + this source code, and add back in the non-open source Vera binaries. Note that the Z-Wave device (/usr/bin/ZWave) is not free or open source; license fees are paid per unit sold.

version 1.5.346, is available here:

The exciting part is that our new LuaUPnP module will largely replace the need for developers to use the C/C++ code. This is a collaborative environment that makes it much easier to extend the functionality of Vera and will facilitate making more powerful applications than building DCE devices. You will be able to do virtually anything you want to extend Vera with the LuaUPnP module. And any devices created with LuaUPnP will be automatically UPnP devices. Plus you can specify if you want to make the devices available to the community for use, for development, or private.

Originally our plan to help facilitate developers wanting to add-on to Vera was to setup a build server with virtual machines. However we ran into some bugs and performance problems in the virtual machine emulators that made cross-compiling within a VM very difficult. So, we figured our developers' time is better spent on LuaUPnP since that will be a lot more useful tool for developers who want to make their own customizations and add-ons to Vera.

Personal tools