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

Re: Alternative Java client

Reply #45
[quote author="rsdio"]
Thanks for the reply, but it has never been necessary to remove the .sh extension from a shell script under Unix.  In fact, many parts of the operating system run from shell scripts that have an extension.  Here is what I did:
Code: [Select]
banshee: ~ rsdio$ cd ~/Documents/Circuits/Dangerous Prototypes/OpenBench Logic Sniffer/ols-0.8.3
banshee: .../ols-0.8.3 rsdio$ chmod +x run.sh
banshee: .../ols-0.8.3 rsdio$ ./run.sh

... by the way, I copied run.sh to run and executed it again, but got the exact same error message.
[/quote]

That is strange. There are two possibilities I can think of:
  • You don't have Java6 installed, but Java5 (or even lower). The run scripts use a new feature of Java6 that allows you to use wildcards in its classpath. Can you verify which Java version you're running? Issue a java -version should be enough to get a clear answer on that;
  • Somehow the shell script isn't correctly expanding the current directory and its derived properties. For this, you can edit the run.sh script and echo the contents of these three variables: BASEDIR, PLUGINDIR and CLASSPATH.

Let me know what your results are, so we can hopefully get you(r client) up and running!
when good software is not an alternative...

Re: Alternative Java client

Reply #46
Code: [Select]
java version "1.5.0_19"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_19-b02-306)
Java HotSpot(TM) Client VM (build 1.5.0_19-138, mixed mode, sharing)
I'll try echoing the variables...

Re: Alternative Java client

Reply #47
[quote author="rsdio"]
Code: [Select]
java version "1.5.0_19"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_19-b02-306)
Java HotSpot(TM) Client VM (build 1.5.0_19-138, mixed mode, sharing)
I'll try echoing the variables...
[/quote]

Ah, this is the culprit. The current codebase of the client has quite some dependencies with Java6 (even more than I initially thought), so even if the run scripts would be fixed the code would crash out with ClassNotFoundExceptions on various occasions.

Would it be possible for you to upgrade your JVM to Java6?
when good software is not an alternative...

Re: Alternative Java client

Reply #48
Hi wartos,

[quote author="wartos"]
  • After I've done an I2C analysis, two channels are labeled SCL and SDA. These labels remain there as long as the program continues to run, even after a UART or SPI analysis. The prettiest thing to do is to make these labels user editable, if possible.
  • This is a minor OSX issue: the program doesn't respond to CMD+W
  • Another small (OSX-only?) issue: sometimes when I open a dropdown list, the options don't come on the right places. (ie somewhere else then beneath the dropdown menu)
  • Maybe there's a bit to much info in the labels on top of the data: now it's Read/Write data: Hex (ASCII). Maybe a sober color-scheme to point out the nature of a label (read/write ack/nack) and the raw data inside the label in one format; either hex, ASCII, binary, octal, whatever, ... (but easy to change trough a menu behind a right click on the labels) would be clearer? This would would also allow to zoom further out and still see relevant data.
  • Another nice thing, is that the user would be able to drag and drop the channels in a more convenient order. I know you could physically change the probes, but sometimes its convenient to place them as the user for whatever reason did, or the user saw afterwards that a channel isn't where it belongs, or he/she is just plain lazy ;)
  • I find protocol analysis a pretty handy feature, don't these analyzers deserve their own button? Their settings can remain in a settings-window.
  • Your graphical implementation of the i2c analyzer is way cooler/better then the html-report. I'd rather didn't see that report until after I've specifically asked for it. However I can imagine cases where it is handy, I find myself using only the new annotation in the main screen. I hope you soon implement it for the other analyzers too.
  • Maybe a short synopsis of the "chattering" on the bus somewhere in the main screen? Without all the small details, like this (like a msn-window):
...
These are just suggestions, no criticism, so let me know what you think;)
[/quote]

Thanks for the (very good) suggestions, I'll cover them one by one:

  • Channel labels can be changed already. Maybe this is one of the "hidden" features in the client. Simply go to Diagram -> Diagram Labels and you can edit them to your likings. I want all tools to provide the correct labels after they're done with their analysis, but this is currently only implemented in the I2C tool;
  • Support for CMD+W on OSX is on my TODO list;
  • Saw this strange behavior as well, but couldn't reproduce it always. I'll try to take a deeper look into this;
  • Good idea! Making the "annotations" configurable already crossed my mind, and the color scheme + data representation is really something I'll put on my TODO list;
  • Drag 'n drop of channels... That would be an interesting feature. I'll put it on my TODO list;
  • The protocol analysis tools definitely deserve a more prominent place in the client. I was thinking about somehow integrating them in the capture process so you can run it directly after a capture... Would this come in handy?
  • Currently the reports and annotations are two separate things, while in fact they are one and the same (only differently represented). I agree that it should be configurable on what you want to see;
  • Hmm, a protocol-analysis synopsis. That might come in handy indeed. I've put this on my TODO list as well (which is growing exponentially ;))

[quote author="wartos"]
BTW: I think you're doing great! I hope you continue to develop your client this way, kudo's to you!
[/quote]

As long as I get such great responses with good suggestions I'll do my best...!
when good software is not an alternative...

Re: Alternative Java client

Reply #49
May I add some of your screenshots to the wiki page for the alternative client (CC-BY-SA)?

http://dangerousprototypes.com/docs/SUM ... lient_fork
Got a question? Please ask in the forum for the fastest answers.

Re: Alternative Java client

Reply #50
[quote author="ian"]
May I add some of your screenshots to the wiki page for the alternative client (CC-BY-SA)?

http://dangerousprototypes.com/docs/SUM ... lient_fork
[/quote]

Sure, no problem.
when good software is not an alternative...

Plug-ins, and other dreams...

Reply #51
Perhaps this is obvious to most, but being a neyophite...
I'm trying to debug a board that uses a TDM (time domain multiplexed) bus. There a 2MHz clock, a frame signal, and a data line. There are 32 8-bit slots.
I need to pull the byte out of one slot of every frame. Seems like a good, and relatively straight forward project to let me understand how the software actually works.

Now, any pointers on where to start, vis-a-vis adding a new mode/plug-in?


BTW - awesome job on the existing software. The easiest LA I've used in a long time!

Re: Plug-ins, and other dreams...

Reply #52
[quote author="toddkrein"]
Perhaps this is obvious to most, but being a neyophite...
I'm trying to debug a board that uses a TDM (time domain multiplexed) bus. There a 2MHz clock, a frame signal, and a data line. There are 32 8-bit slots.
I need to pull the byte out of one slot of every frame. Seems like a good, and relatively straight forward project to let me understand how the software actually works.

Now, any pointers on where to start, vis-a-vis adding a new mode/plug-in?

BTW - awesome job on the existing software. The easiest LA I've used in a long time!
[/quote]

What you could do is (very naive approach; assuming the frame-signal indicates the start of each frame, and frames are sent consecutively, that is, no intermediary delays between frames):
  • collect all data-samples between two frames;
  • divide those data-samples in 256 equal buckets;
  • check each bucket what its bit-value should be.

Another approach (slightly less naive, using the clock signal as well):
  • upon a start-of-frame, reset a bit-counter to zero;
  • upon each rise (or fall) of the clock signal, take a sample of the data, and increase the bit-counter;
  • after 256 bits are read, you can split them out into the individual channel-bytes.

For the latter approach, you could use a Java BitSet to keep all 256 bits together, or use an array of 32 bytes (involves more administration)...

You're welcome to develop your own analysis tool, take a look at the i2c and/or SPI tools for examples on how to write them...
when good software is not an alternative...

OLS v0.8.4 released

Reply #53
I just released & uploaded version 0.8.4 to my homepage. A summary of what's changed (see full changelog here):

  • Updated zoom behaviour to zoom "dead center"; keeping the current center as-is;
  • Added additional toolbar button cancel a capture of the OLS; also provide you with a visual clue about whether or not the OLS is armed and awaiting a trigger;
  • All decoder tools now annotate the capture data with their decoding results;
  • All user settings are now retained upon stopping and starting of the client, including the last chosen directories for loading/saving data captures;
  • The UART/I2C/SPI tools now can decode parts of the captured data. If cursors 1 & 2 are set, only this region will be decoded;
  • Fixed close window behaviour on all platforms; now it is possible to close every dialog with CMD/CTRL + W and through the "X" on Windows;
  • Many little UI-related bugfixes.

Thanks to all of you who reported bugs and posted their findings.

While I'm at it: I'm already thinking quite some time about altering the color scheme; I think the current white/blue scheme is somewhat straining for the eyes, so I tried to make a scheme which is darker and provides different colors for each channel so its easier to distinguish which data is what channel. Would this be a good improvement or not? I've attached a screenie of how this would look like.
when good software is not an alternative...

Re: Alternative Java client

Reply #54
@jawi

This is looking really awesome! I just tested it out and I really like the look and feel etc. I will package this up with the next major release.

I like the proposed color scheme, can't wait to see a version with the new color scheme.

Keep up the great work, its much appreciated.

Jack.


Re: OLS v0.8.4 released

Reply #56
[quote author="jawi"]I think the current white/blue scheme is somewhat straining for the eyes, so I tried to make a scheme which is darker and provides different colors for each channel so its easier to distinguish which data is what channel. Would this be a good improvement or not? I've attached a screenie of how this would look like.[/quote]The rainbow is a nice effect, but I wonder if you could improve the contrast.  Blue is very dark against the black background, and purple is almost as bad.  If you could somehow improve the contrast ratio for those, that would probably help.  The yellow / yellow-green colors are a bit bright, and it would probably be easy to subdue that a bit - far easier than making blue "brighter."

Re: OLS v0.8.4 released

Reply #57
[quote author="jawi"]
While I'm at it: I'm already thinking quite some time about altering the color scheme; I think the current white/blue scheme is somewhat straining for the eyes, so I tried to make a scheme which is darker and provides different colors for each channel so its easier to distinguish which data is what channel. Would this be a good improvement or not? I've attached a screenie of how this would look like.
[/quote]

The best solution to the problem I have seen so far is the Salea software.
http://www.saleae.com/logic/gallery/
The signal traces are white on some darkish background, which provides for a lot of contrast.
The probe colors are  shown along with the label which makes it easy to identify the probe that recorded the signal.
With this simple solution you are also free to use any other color for markup like Triggers or I2C analysis markers.

It is probably not nice to steal the idea from Saleae, but I bought one of their LA's so I feel less guilty.

Eberhard

Re: Alternative Java client

Reply #58
Sorry for my ignorance but is this can run on windows?

If yes can you please point to a tutorial or something else?

Thank you.

Re: Alternative Java client

Reply #59
Hi Toley - There's some tutorials and quick-start videos for the general SUMP client in the manual:
http://dangerousprototypes.com/docs/Ope ... troduction
Got a question? Please ask in the forum for the fastest answers.