Skip to main content
Topic: Alternative Java client (Read 48856 times) previous topic - next topic

Re: Alternative Java client

Reply #105
@hardcore, rsdio & alm:
Writing images to PNG is by default supported in Java (as are other formats like GIF, BMP and JPEG), so it won't be that much of a problem to support it.

I understand there is much need for an export to PNG, so let's start with implementing that one first, and put focus on the remainder of the provided functionality...
when good software is not an alternative...

 

OLS v0.8.5 released

Reply #106
I just uploaded the 0.8.5 release of my client on usual location.

An overview of the most important changes (the full changelog can be found on GitHub):

  • Added user preferences for height of channels & signals, and initial color schemes; by default the "light" scheme is used, but you can also choose for a dark "rainbow" scheme. You can also change the way the colors are applied, for example to the channel background or to the label;
  • Restored the load/save project functionality; this allows you to save/restore settings used in dialogs;
  • Reworked most of the dialogs to have a "cleaner" look and reduced the height of some dialogs for lower resolution displays;
  • Several look and feel improvements:
    • Added support to use shortcut keys for accessing menu functions (under Windows and Linux);
       
    • Added support for mouse wheel zooming (CTRL + mouse wheel; under Windows and Linux);
       
    • Some visual improvements on the time line view (display notch every ten ticks);
  • [/li]
  • The OLS device does no longer scan all serial ports upon opening the configuration dialog; this is now only done when the port combobox is opened for the first time. Should avoid havoc on other serial devices on the USB bus.

This will be the last release in the 0.8 release, as I'm planning several big changes for the 0.9 release. Some highlights: export functionality for captured data (at least PNG and VCD), a 1-Wire decoder tool, custom color schemes (make your own rainbow!), and (ad hoc) timing measurements between two edges. Oh yeah, I'm also planning to write a short how-to-write-your-own-decoder-tool.

Have fun!
when good software is not an alternative...

Re: Alternative Java client

Reply #107
Thanks!  I/we have been waiting for this!

Re: Alternative Java client

Reply #108
Hi,

Whilst it does eventually start under OS x , I think it needs a better startup method there are some errors during startup:
(i never understand why people need a command line  Bash script to start a java app under OS X), thats what manifest files are for.



 sudo ./run.sh
Auto-deploy install: org.osgi.framework.BundleException: Unable to cache bundle: file:/Volumes/EXCHANGE/logic_sniffer/ols-0.8.5/./plugins/._api-1.0.0-SNAPSHOT.jar - java.util.zip.ZipException: error in opening zip file
Auto-deploy install: org.osgi.framework.BundleException: Unable to cache bundle: file:/Volumes/EXCHANGE/logic_sniffer/ols-0.8.5/./plugins/._base-1.0.0-SNAPSHOT.jar - java.util.zip.ZipException: error in opening zip file
Auto-deploy install: org.osgi.framework.BundleException: Unable to cache bundle: file:/Volumes/EXCHANGE/logic_sniffer/ols-0.8.5/./plugins/._client-1.0.0-SNAPSHOT.jar - java.util.zip.ZipException: error in opening zip file
Auto-deploy install: org.osgi.framework.BundleException: Unable to cache bundle: file:/Volumes/EXCHANGE/logic_sniffer/ols-0.8.5/./plugins/._i2c-1.0.0-SNAPSHOT.jar - java.util.zip.ZipException: error in opening zip file
Auto-deploy install: org.osgi.framework.BundleException: Unable to cache bundle: file:/Volumes/EXCHANGE/logic_sniffer/ols-0.8.5/./plugins/._logging-1.0.0-SNAPSHOT.jar - java.util.zip.ZipException: error in opening zip file
Auto-deploy install: org.osgi.framework.BundleException: Unable to cache bundle: file:/Volumes/EXCHANGE/logic_sniffer/ols-0.8.5/./plugins/._logicsniffer-1.0.0-SNAPSHOT.jar - java.util.zip.ZipException: error in opening zip file
Auto-deploy install: org.osgi.framework.BundleException: Unable to cache bundle: file:/Volumes/EXCHANGE/logic_sniffer/ols-0.8.5/./plugins/._measure-1.0.0-SNAPSHOT.jar - java.util.zip.ZipException: error in opening zip file
Auto-deploy install: org.osgi.framework.BundleException: Unable to cache bundle: file:/Volumes/EXCHANGE/logic_sniffer/ols-0.8.5/./plugins/._org.apache.felix.log-1.0.0.jar - java.util.zip.ZipException: error in opening zip file
Auto-deploy install: org.osgi.framework.BundleException: Unable to cache bundle: file:/Volumes/EXCHANGE/logic_sniffer/ols-0.8.5/./plugins/._org.apache.felix.prefs-1.0.4.jar - java.util.zip.ZipException: error in opening zip file
Auto-deploy install: org.osgi.framework.BundleException: Unable to cache bundle: file:/Volumes/EXCHANGE/logic_sniffer/ols-0.8.5/./plugins/._org.apache.felix.shell-1.4.2.jar - java.util.zip.ZipException: error in opening zip file
Auto-deploy install: org.osgi.framework.BundleException: Unable to cache bundle: file:/Volumes/EXCHANGE/logic_sniffer/ols-0.8.5/./plugins/._org.apache.felix.shell.remote-1.0.4.jar - java.util.zip.ZipException: error in opening zip file
Auto-deploy install: org.osgi.framework.BundleException: Unable to cache bundle: file:/Volumes/EXCHANGE/logic_sniffer/ols-0.8.5/./plugins/._org.rxtx-2.2.0-8.jar - java.util.zip.ZipException: error in opening zip file
Auto-deploy install: org.osgi.framework.BundleException: Unable to cache bundle: file:/Volumes/EXCHANGE/logic_sniffer/ols-0.8.5/./plugins/._spi-1.0.0-SNAPSHOT.jar - java.util.zip.ZipException: error in opening zip file
Auto-deploy install: org.osgi.framework.BundleException: Unable to cache bundle: file:/Volumes/EXCHANGE/logic_sniffer/ols-0.8.5/./plugins/._state-1.0.0-SNAPSHOT.jar - java.util.zip.ZipException: error in opening zip file
Auto-deploy install: org.osgi.framework.BundleException: Unable to cache bundle: file:/Volumes/EXCHANGE/logic_sniffer/ols-0.8.5/./plugins/._test-1.0.0-SNAPSHOT.jar - java.util.zip.ZipException: error in opening zip file
Auto-deploy install: org.osgi.framework.BundleException: Unable to cache bundle: file:/Volumes/EXCHANGE/logic_sniffer/ols-0.8.5/./plugins/._uart-1.0.0-SNAPSHOT.jar - java.util.zip.ZipException: error in opening zip file
Auto-deploy install: org.osgi.framework.BundleException: Unable to cache bundle: file:/Volumes/EXCHANGE/logic_sniffer/ols-0.8.5/./plugins/._util-1.0.4-SNAPSHOT.jar - java.util.zip.ZipException: error in opening zip file
[10/2/10 8:03:59 AM - INFO  -     nl.lxtreme.ols.client.Host]: LogicSniffer v0.8.5 started ...

Re: Alternative Java client

Reply #109
[quote author="hardcore"]
Hi,

Whilst it does eventually start under OS x , I think it needs a better startup method there are some errors during startup:
(i never understand why people need a command line  Bash script to start a java app under OS X), thats what manifest files are for.

 sudo ./run.sh
Auto-deploy install: org.osgi.framework.BundleException: Unable to cache bundle: file:/Volumes/EXCHANGE/logic_sniffer/ols-0.8.5/./plugins/._api-1.0.0-SNAPSHOT.jar - java.util.zip.ZipException: error in opening zip file
(snip)
[10/2/10 8:03:59 AM - INFO  -     nl.lxtreme.ols.client.Host]: LogicSniffer v0.8.5 started ...
[/quote]

Agreed; for OSX there should be a separate installer (I'm working on OSX myself as well), so let's make this a feature of the upcoming 0.9 release. :)

PS: just out of curiosity, why are you running the client as superuser?
when good software is not an alternative...

Re: Alternative Java client

Reply #110
Quote
PS: just out of curiosity, why are you running the client as superuser?

I just like to live dangerously and tend to get bored easily......
Actually because the  run.sh, does not have the correct privileges to execute and i'm too bloody lazy to change them.

As regards an 'installer' for OS X  you do not need it, just correctly  reference the libraries from within java's class loader, then dynamically load  based on the application  base folder. it is completely cross platform, I use a  "props" file that contains the file names of libraries i want loading.
On  main class startup there is zero reference to external libraries, so no library errors, then just "reflect" the libraries in, it allows for graceful/ controllable failure if a library is missing

Re: Alternative Java client

Reply #111
[quote author="hardcore"]Actually because the  run.sh, does not have the correct privileges to execute and i'm too bloody lazy to change them.[/quote]It's incredibly easy
Code: [Select]
chmod +x run.sh

Re: Alternative Java client

Reply #112
Quote
It's incredibly easy
Code: [Select]
chmod +x run.sh

still way longer than
su root

Re: Alternative Java client

Reply #113
@jawi

It keeps getting better and better! I've officially started using your client exclusively, I just spent the last couple days troubleshooting some SPI output from the AVR8 Soft Processor core project and your client didn't miss a beat.

I've been checking out InstallJammer for Windows and intend to make a installer for the latest version including your client soon.

One thing I noticed that is a minor issue is that when the OpenBench Logic Sniffer device is selected the banner that shows the Channel and time overwrites the signal display. It doesn't do so when the Test Device is selected though...

Keep up the great work!

Jack.

Re: Alternative Java client

Reply #114
So I downloaded the tarball from http://www.lxtreme.nl/ols/ols-0.8.5.tar.gz... extracted it all to my desired location, and what do I do with these class files???
And I don't see the run script that is frequently mentioned....
I am using windows XP 32bit.  Have Java 1.6.0_21.  The older, less function client that came with the 2.12 Test Release of the obls soft/firm ware is pretty easy to get going, but based on the comments I was really hoping to use this client.
Help would be appreciated.

Re: Alternative Java client

Reply #115
[quote author="shawn"]
So I downloaded the tarball from http://www.lxtreme.nl/ols/ols-0.8.5.tar.gz... extracted it all to my desired location, and what do I do with these class files???
And I don't see the run script that is frequently mentioned....
[/quote]

Hi Shawn,

After unpacking with 7-Zip (or whatever archiver you're using), you should get a structure like:
Code: [Select]
├── AUTHOR
├── LICENSE
├── README
├── bin
│   ├── looks-2.2.2.jar
│   ├── org.apache.felix.main-3.0.1.jar
│   ├── org.osgi.compendium-4.2.0.jar
│   └── runner-1.0.0-SNAPSHOT.jar
├── plugins
│   ├── api-1.0.0-SNAPSHOT.jar
│   ├── base-1.0.0-SNAPSHOT.jar
│   ├── client-1.0.0-SNAPSHOT.jar
│   ├── i2c-1.0.0-SNAPSHOT.jar
│   ├── logging-1.0.0-SNAPSHOT.jar
│   ├── logicsniffer-1.0.0-SNAPSHOT.jar
│   ├── measure-1.0.0-SNAPSHOT.jar
│   ├── org.apache.felix.log-1.0.0.jar
│   ├── org.apache.felix.prefs-1.0.4.jar
│   ├── org.apache.felix.shell-1.4.2.jar
│   ├── org.apache.felix.shell.remote-1.0.4.jar
│   ├── org.rxtx-2.2.0-8.jar
│   ├── spi-1.0.0-SNAPSHOT.jar
│   ├── state-1.0.0-SNAPSHOT.jar
│   ├── test-1.0.0-SNAPSHOT.jar
│   ├── uart-1.0.0-SNAPSHOT.jar
│   └── util-1.0.4-SNAPSHOT.jar
├── run.bat
└── run.sh

You should now be able to run the client by simply running the "run.bat" script (double clicking from an Explorer should work as well).

Let me know if you run into other issues...

HtH
when good software is not an alternative...

Re: Alternative Java client

Reply #116
@jawi:
so I actually have a directory structure like..

Code: [Select]
|- META-INF
|   |- MANIFEST.MF
| |- maven
|     |- nl.lxtreme.ols
|     |- util
| |- pom.properties
| |- pom.xml
|
|- nl
    |- lxtreme
    |- ols
    |- util
    |-"bunch of .class files"
                            |- swing
                                |- "bunch of .class files"
                                |- component

There is a little more under nllxtremeolsutil, but you get the idea.  I don't have anything like the structure you described. 

Re: Alternative Java client

Reply #117
So I started downloading older versions... and ols-0.8.4, ols-0.8.2, and ols-0.8.0 also extracted to that same directory structure.  ols-0.7.0 extracted to something more like the structure you showed, and that version executed but did not recognize the obls.

So I thought, well I have eclipse installed I'll just load up the project and build it myself.  That didn't go too well.

So I thought, well I will just setup maven by hand and build it from the command line.  This went smoothly.  So I am now running ols-0.8.5.  And it is much nicer than the default SUMP client.  So good job on the coding.

I don't know what is going on with those archives on the website, but they are really messed up.  It was very easy to see what files were required in ols.distribution and ols.distributiontarget after I built the project.  So I just made an ols-0.8.5 directory and copied the LICENSE, AUTHOR, README, run.bat, run.sh files and the targetbin and targetplugins folders from ols.distribution.  double click run.bat and everything runs fine.

Re: Alternative Java client

Reply #118
You have "extracted" too far...........

a *.jar file is actually a .zip file.   the structure you have currently is from the fact that somehow the  *.jar files have been extracted, into their composite classes

I would suspect that *.jar has been associated with the Zip program in the windows registry.

You need to extract so that the directory is filled with  *.jar files and don't go any further into the extraction process.

Re: Alternative Java client

Reply #119
@hardcore
I don't know man, I was using 7-Zip.  And in testing with other archives containing jars, it doesn't automatically descend.  Are you telling me that if you download the file I linked to in my first post, and extract it, you get the proper directory structure and not the structure I showed?

-Shawn