[Coco] Drivewire & Linux

Aaron Wolfe aawolfe at gmail.com
Wed Apr 18 21:58:03 EDT 2012


On Wed, Apr 18, 2012 at 9:00 PM, gene heskett <gheskett at wdtv.com> wrote:
> On Wednesday, April 18, 2012 08:58:30 PM Bill did opine:
>
>>  I saw that DriveWire was compatible with Linux, but I don't see the
>> software for Linux anywhere. Did I miss it?
>>
> One of the advantages of a .jar file.  It runs on ANY* java-1.5 or newer
> JRE.  IOW, no special linux version, and it works fine here on a PCLOS-2012
> box.

* Well.. almost :)  Before somebody throws it on their old
SPARCstation, OS/2 machine or S/390..

While the server certainly can run on all of those platforms, I used a
jni based serial library called RXTX in DW.
This means we use a shim of native code to communicate with the serial
hardware, defeating a bit of Java's run anywhere style but giving us
nice serial capabilities.

RXTX has builds for about 30 architectures and you can build it from
source pretty easy on most anything *nixish,
however only a select set of native drivers are included in the jar.

If you are using one of:  Win 32 or 64, Linux 32 or 64, OSX 32 or 64,
or FreeBSD 32 or 64 then it will (should at least) detect this, pick
the corresponding native serial driver from the built in set and all
is well.

If you are using anything else, you will have to acquire RXTX on your
own, which may be easy or not easy.

Even if you get the server running on an "exotic" platform, the GUI
has its own set of challenges due to my use of the SWT graphics
library.  I could have used swing and made it work everywhere, but
swing is ugly and I just don't like it.   So.. for the GUI to work you
must be using one Win/Lin/OSX * 32 or 64 (sorry no freebsd for the
UI).

Adding a new GUI platform requires building DW4 from the java source.
Each platform I pack into the default jar adds 2-4MB to the total jar
size so I only put in the above set.  Honestly I would probably just
stick to them when you need a GUI, as the GUI doesn't need to run on
the same machine as the server at all.

The craziest platforms I've made work so far are a little Nokia N800
tablet and a linksys router/nas box running the server.  In both cases
I just ran the GUI on my windoze box.   I think these new raspberry pi
and other very cheap very tiny linux sbcs are prime candidates for
packing the DW server into a rompak, just haven't got my hands on one
yet.



More information about the Coco mailing list