Welcome to Laser Pointer Forums - discuss green laser pointers, blue laser pointers, and all types of lasers



Taking Peregrine out of Java and into C.

Seoul_lasers

Well-known member
Joined
Jul 4, 2008
Messages
2,496
Points
83
This is fairly urgent and requires all the attention of programmers on LPF,
we need to take Peregrine out of Java. The Windows version of Peregrine right now works fine but all other versions are totally broken and running into
pointererrors via a change in how the main .pde file is linked to their libraries.
It's a complete PIA to try and redo all the broken coding in Linux and MacOSX.
I have tried Wining (Wine Bottle) the .exe from windows. This has failed and inflates our program to over 250Mb. Doesn't run at all.

So... we have an option but it requires modify a DMM tool called QtDMM.


I have been experimenting with an open source DMM program called QtDMM.
it is intended to be used as a way of communicating between many different DMM models. Nice thing is that there are 2 versions available, one that is already built
and a few years old and another QtDMM 2 which is intended to be compiled on your own.

Seeing as it is open source we can modify this to filter out the different inputs from the Laserbee, ARGMeter, Rubicon and others..

I'll try and contact the creator of the software to see if he is willing to help us design a protocol for our LPMs.
Let me know what you think.

Have a look at what happened today on the program ( yeah I know the graph looks wacky... it's a start and it was actually running alright with a dummy input). Looks promising.
:whistle: :can:
 

Attachments

Last edited:



bobhaha

Well-known member
Joined
May 31, 2009
Messages
3,255
Points
63
Wait why is it still in pde format? Can't you just compile with an older version of processing into a Java applet? Then just use it as a stand alone applet? No more recompiling every time you want to use it.

If you can send me a copy I can

1. see if it can become a stand alone applet
2. see if it is easy to port over to C
3. see if i have the time to do it
 
Last edited:

Seoul_lasers

Well-known member
Joined
Jul 4, 2008
Messages
2,496
Points
83
Wait why is it still in pde format? Can't you just compile with an older version of processing into a Java applet? Then just use it as a stand alone applet? No more recompiling every time you want to use it.

If you can send me a copy I can

1. see if it can become a stand alone applet
2. see if it is easy to port over to C++
3. see if i have the time to do it
Sorry, my bad... I meant .jar

When .pde are complied into a stand alone app the libraries are .jar in the containment library file.
When using the older version of processing the language for linking to the libraries changes. The new version of Java has a major language
change which effects Processing libraries and how they're being called up. This results in the pointererrors (fatal) we are seeing under MacOSX and Linux.
We need a complete language fix. That's the only way that will allow Peregrine in Java to work in Java7 v51 under MacOSX 10.9.0-10.9.2

The alternative could be to use QtDMM. it's basically the same style of program, but is being used for DMM connectivity.
We can modify this as most of the programming is done for us. All we need is to write the filters.
The QtDMM is also complied under C which is faster and superior to Java...

If you want to use the attached file QtDMM source, please change the ending .zip to a .tar. The source files are all in C++

:beer: I think this can be our jumpstart on a non-Java version of Peregrine.
 

Attachments

Last edited:

bobhaha

Well-known member
Joined
May 31, 2009
Messages
3,255
Points
63
Forget about the qtdmm for now.

Can we get the source code for the Peregrine software? If so I can start working on porting it over.

Edit: Never mind... I found the source code. I'll start on it tonight
 
Last edited:

Seoul_lasers

Well-known member
Joined
Jul 4, 2008
Messages
2,496
Points
83
Forget about the qtdmm for now.

Can we get the source code for the Peregrine software? If so I can start working on porting it over.

Edit: Never mind... I found the source code. I'll start on it tonight
I'll assume you've got Java7 and Processing 2.1.1 installed on a Mac?

These two are causing the headache which breaks the links to the P5, RXTX and the serial lib.

Refer to my errors here:
http://laserpointerforums.com/f70/rubicon-peregrine-88369.html


:undecided: :beer:

hopefully my post with errors will help you?
 

Seoul_lasers

Well-known member
Joined
Jul 4, 2008
Messages
2,496
Points
83
Edit: Oops, posted it right after that previous post.
Happy to announce that we've got Peregrine back for MacOSX.

The problem it seems that our libraries are locked up.
to unlock them we need the following in terminal

sudo mkdir -p /var/lock
sudo chmod 777 /var/lock


after entering this hit return and enter your password.

Run peregrine 1.5.0.

should work.

You may need to re-install Java7 a processing 2.1.1. :whistle:

Update, not completely right.
having problems selecting meter protocols and no way to re-compile under Processing 2.1.1. Still running into the same errors with
broken libraries.
So... partial success at this point.
 
Last edited:







Top