HVSRV - HomeVision Network Server

HVSRV is a network enabled server for communicating with the HomeVision Home Automation controller. HVSRV allows many network clients to share access to a single HomeVision hardware controller.  The command language is simple and designed to be an easy to parse text.  Advanced event reporting and abstraction of lower level functions such as unification of dimming controls for X10 are provided as well.

HVSRV allows access to the following facets of the HomeVision hardware


In addition, a power attribute managment system provides persistant storage of identifiying information about every object.  These can be used simply for centralized definition and distribution (i.e. names of devices, locations, etc) and/or to control home HVSRV controls hardware (identifying device type, dimming support, persistant dim, etc)

HVSRV also provides a general purpose messaging system allowing clients of to exchange messages and event notification between them.

Typical HVSRV commands look like this

X10 OFF B1 B4
VAR SET 1 24
FLAG CLEAR 3
MACRO EXECUTE 33
IR SEND 129
DOUTPUT PULSE_LOW 1 100


Typical HVSRV events look like this

X10 UPDATE B1 ON 100
X10 UPDATE B4 ON 100
VAR UPDATE 1 24
FLAG UPDATE 3 CLEAR
IR RECEIVED 42
IR STANDARD 10 23
DINPUT UPDATE 12 HIGH


Commands and responses are entirely decoupled and asynchronous.

HVSRV can also automatically update the HomeVision hardware clock on a periodic basis.  If you have a computer that has a working HTP client, this can keep HomeVision accurate within 1 second of a standard time reference.

HVSRV has built in scripting to allow composite commands to be defined and executed remotely.  You can have an unlimited number of scripts and each script can have an unlimited number of commands.

HVSRV is currently supported on Linux and most Unix platforms.  It's beleived that it should compile OK on Windows systems too, but I've not had a chance to try it yet.  I have avoided using any Linux/Unix specific system calls.  HVSRV is written in C and is failry small when compiled and running (memory resident size is around 104KB).  It consumes very little system resources, even when under heavy load.

HVSRV works with Schelte Brons Linux HomeVision software, allowing you to update schedules and control HV while HVSRV is still running using a network based connection with the Linux HomeVision software.  You can read more about Linux HomeVision here

You can read more about the protocol in the supplied hvsrv.txt

HVSRV is hosted by SourceForge.  Both releases and the current CVS source repository are available to anyone.  Click here to go to the summary page for HVSRV on SourceForge.  From there, you can download the current release, report bugs, subscribe to email lists, etc.

HVSRV was written by Gerry Duprey (gerry@cdp1802.org) and is licensed under the GPL.

Page last updated January 3, 2003