This page is part of the Home Automation WebRing.This page provides direct access to my X-10 Java classes below. It also links to my home page and my software page.
Home Automation Web Ring Prev 5 Prev List Next Next 5 Licensing
The following software is freely available and distributable under the Open Source Artistic License. If you want to discuss other terms, or are interested in contracting me to customize these classes for you, then contact me to discuss your needs and my availability.System Requirements
The software provided here requires a Java implementation compliant with JDK-1.1 or later. Consult your platform vendor for information on obtaining such software.To control X-10 devices, you will need an implementation of the Java Communications API 2.0 for your target platform. Known implementations of Java-Comm are available from:
If you know of other Java-Comm implementations for other platforms, you can drop me a note and I'll list them here.
- Sun Microsystems for Windows and Solaris.
-- I have NOT INCLUDED any Java-comm class-library with the platform-neutral distribution, so you will have to acquire one appropriate to your platform.- Patrick Beard for Mac OS under MRJ 2.1 or higher.
-- With Patrick's permission, I've included his class-library with the Mac OS distribution of my software. Source for his classes is not included. You can keep an eye on Patrick's web-page for updates, which should just be drop-in replacements for the JAR I've included.Downloadable Software
These classes provide an architecture for working with connected devices called the Gadget-Kit, written entirely in Java (no native code). I designed this software as a simple extensible framework for working with readable and/or settable Gadgets, each one representing a single device or controllable quantity.
- Read the overview and revision-history on-line, (included in the downloadable bundles).
- Download the HTML API docs for any platform in ZIP form. (292K)
- Download Mac OS source, demo-apps, etc. in stuffed MacBinary form. (506K)
- Download platform-neutral source, classes, etc. in ZIP form. (352K)
1999-Sep-13 is the current Gadget-Kit release.
The Gadgets representing X-10 modules use a CP290 controller connected to a serial-port using the Java-Comm 2.0 API. They provide direct control over dimmable and on/off modules, customized module-lists contained in text-files, customized schedules and actions, and a multi-threaded command queue. (I don't have software for the CM11A controller yet, but when I do it will fit into the Gadget-Kit. And please don't ask me when the CM11A software will be ready. It will be ready when you see it here. If it's not here, you can safely conclude it's not ready.)
The distribution also provides Gadgets that represent a cyclic or circular clock with an alarm-time and arbitrary triggered actions -- that is, scheduled automated events. These alarms, triggers, and actions are general-purpose, and not just confined to X-10 control. You could easily extend them to make a cron-like facility in Java, or to define actions that execute an external program of your choice (neither feature is provided).
Several demo or example applications are included. The most sophisticated one is a locale-aware demo AWT program to manually control X-10 modules, or to define and execute scheduled actions for them in a daily or weekly cycle.
To Greg's Home Page
To Greg's Software Page