add CMake config (#20)
[usb-relay-hid.git] / README.md
index 66127e44b879342e838761ab3cdfb1c02df8b438..9bb888f6200cbbb04343936d80fee85343fab8f0 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,41 +1,50 @@
 usb-relay-hid
 =============
 
-The goal of this project is to provide open-source API for Chinese low-cost USB HID relays
-(search on eBay for "5V USB Relay Programmable Computer Control For Smart Home").
-
 ![](http://vusb.wdfiles.com/local--files/project:driver-less-usb-relays-hid-interface/relay2.jpg)
 
+This project provides open-source API for low-cost USB HID relays 
+(search on eBay for "5V USB Relay Programmable Computer Control For Smart Home").
+
 The big advantage of HID-based interface is that no kernel drivers and no simulated COM-ports are needed. It is easy to detect and address the connected devices.
+Ebay vendors currently offer only an API library for Windows, and only in binary form.
 
-Unfortunatey, the vendors currently offer only API library for Windows, and only in binary form.
+We are not associated with the manufacturer(s) of these devices or author(s) of the original software offered by ebay sellers.
+
+The project home page is on the [V-USB wiki](http://vusb.wikidot.com/project:driver-less-usb-relays-hid-interface "driver-less-usb-relays-hid-interface") - because the firmware of the device is based on [V-USB](http://www.obdev.at/products/vusb/index.html). V-USB enables amazingly simple and low-cost USB hardware solutions.  
+This repository contains only the host side software.
 
-The main project web page is on the [V-USB wiki](http://vusb.wikidot.com/project:driver-less-usb-relays-hid-interface "driver-less-usb-relays-hid-interface"). This is because the firmware of the device is based on [V-USB](http://www.obdev.at/products/vusb/index.html). V-USB enables amazingly simple and low-cost USB hardware solutions. This repository, however,  contains only the host side software.
 
-License
--------
 
-We are not associated with the manufacturer(s) of these devices or author(s) of the original software offered by eBay sellers.
+Binary downloads, documentation, bugs, TO-DOs and more
+----------------------
+
+All this is in the [Github project](http://git.io/bGcxrQ) : releases, wiki pages and Issues. 
 
-Our intent is to make this software free; free even from restrictions associated with the GPL. Currently we reuse some code from other V-USB projects, which is dual-licensed: GPL + commercial. Until we remove this code, we cannot set any other license. 
 
-We could not find any copyright information in the software package offered by the eBay sellers. No source code was reused from this package, besides of the C API declaration (the .h file).
 
 Current state
 -------------
 
-A simple command-line utility for Linux (x86 or x64) and Windows.
-This is enough for our own usage.
+* A simple command-line utility for Linux (x86 or x64), Apple OS X and Windows (XP and newer, 32 and 64-bit).
+
+* Shared library for Linux (x86 or x64), Apple OS X and Windows.
+
+* Python (CPython) - supported thru the shared library 
 
-- Windows version builds with VC++ and WDK 7.1
-- Linux version builds with gcc and libusb v. 0.9. Tested on RH and Ubuntu.
+The Windows version of the shared lib, `USB_RELAY_DEVICE.DLL`, is backward compatible with the binary from the device vendor.
+Windows GUI demo app is similar to the device vendor's but written in C++/CLI.
 
+Required to build:
 
+- Windows version: builds with VC++ and WDK 7.1, or VC++ 2013 "community edition" with its matching SDK (Win8.1).
+- Linux version builds with gcc and libusb v. 0.1. Tested on RH, Ubuntu, Mint.
+- OS-X 10.9+ version builds with Xcode and plain IOKit libraries. 
 
-To do:
+
+License
 -------
 
- * Reconstruct the API library, which will be binary compatible with the original software package.
- * Move the Linux variant to modern libusb (1.x)
- * Make bindings for Python and Java
- * Maybe, reconstruct the GUI utility
+Currently we reuse some code from other V-USB projects, which is dual-licensed: GPL + commercial. Until we remove this code, we cannot set any other license. 
+
+We could not locate any copyright information in the software package offered by the eBay sellers. No source code was reused from that package, besides of the C API header (the .h file).