Shop OBEX P1 Docs P2 Docs Learn Events
Javelin Stamp IDE with Wine under linux — Parallax Forums

Javelin Stamp IDE with Wine under linux

alyndakeralyndaker Posts: 1
edited 2006-07-05 21:09 in General Discussion
Is anyone running the IDE for the Javelin Stamp under wine? I have read in a couple of places that it could be done. The program itself works up till communication with the controller then returns the error "[noparse][[/noparse] Error IDE-052] Incompatible firmware revision ($f). It works correctly under windows so the problem is clearly with wine/linux. I would appreciate any help.

Comments

  • Peter VerkaikPeter Verkaik Posts: 3,956
    edited 2006-03-17 12:45
    From within Javelin IDE program:
    Try Project->Identify and Project->Test connection
    several times. The firmware revision must be $50.
    Disable the·serial port buffer if still no success.
    Try the dos downloader located here
    http://groups.yahoo.com/group/JavelinCode/files/JavelinDirect/

    I
    don't know about wine, but I successfully programmed javelins
    from vmware (running win98) on a xp host system (PII 450 MHz)
    regards peter


    ·
  • Randy HootmanRandy Hootman Posts: 9
    edited 2006-04-10 07:59
    OK. Please note that I have NOT tried this out myself so if it doesn't work don't shoot me. However, the current Javelin IDE uses the Jikes compiler which I do have running under Linux. Get it off the web. I believe the version of Jikes under the Javeling IDE is 0.42 - just do a command line jikes -v under Windoz and it will tell you. Jikes has a command line option to emulate past versions - I forget what it is now but doing that should get Jikes to compile your code to what a Javelin would like, I understand the latest version of Jikes will not produce the correct byte codes for the Javelin. Then all that is needed is to use some terminal program to download the code over some serial line (e.g. tty0).

    At least that's my theory. Just hope it works. Then who needs wine anyways. LAW (linux ain't windoz).
  • aprunickiaprunicki Posts: 44
    edited 2006-06-23 10:58
    I am encountering the same - - firmware version $0f.

    Any help would be appreciated.
  • aprunickiaprunicki Posts: 44
    edited 2006-06-23 11:22
    Ok, I updated my wine version from 0.9.2 to 0.9.15 running on FC4.

    JIDE can now at least find the javelin with the correct firmware version. Identify works, but uploading programs to the javelin does not work. I get the following in the JIDE message bar:

    [noparse][[/noparse]Error IDE-0022] Error reading from the serial port (timeout).

    Also, wine kicks out the following messages:

    fixme[noparse]:comm:[/noparse]set_queue_size insize 2048 outsize 2048 unimplemented stub
  • Peter VerkaikPeter Verkaik Posts: 3,956
    edited 2006-06-23 11:42
    Are you using a usb2serial cable or do you have a 16550 compatible comport?

    regards peter
  • aprunickiaprunicki Posts: 44
    edited 2006-06-25 20:22
    I am using a 16550 compatible comport. I've tried all 3 com ports (1 is on the mainboard, and 2 are on a Lava card) - they work fine for other devices - palm, irc, etc.

    I am also running wine as "win98" for the version. Also, I have the following installed:

    DCOM95
    Windows Installer
    Internet Explorer 6 (for the help file support)
    Javelin IDE
  • Peter VerkaikPeter Verkaik Posts: 3,956
    edited 2006-06-26 06:24
    Have you tried using JavelinDirect for downloading?
    http://groups.yahoo.com/group/JavelinCode/files/JavelinDirect/
    Unfortunately I don't have a linux executable.
    You can try run my adapted version 1.2 from wine.

    regards peter
  • aprunickiaprunicki Posts: 44
    edited 2006-07-02 04:40
    Thanks for suggesting this, but it keeps complaining that it can't find my file (error code JVM-0017). I also pulled down your *.bpl files and placed them into the appropriate place.

    I also tried the original (1.0) version, but this did not work either.

    This is disappointing, really. Linux and Java are a natural fit for one another. Perhaps I'll try my hand at debugging the timeout problem wine is having.
  • Peter VerkaikPeter Verkaik Posts: 3,956
    edited 2006-07-02 09:21
    If it can't find your file then your commandline syntax is incorrect, probably
    the --path option.

    Where is your file located, what is the path to javelin lib folder?
    What does your commandline look like?

    regards peter
    ·
  • Peter VerkaikPeter Verkaik Posts: 3,956
    edited 2006-07-02 10:02
    This are the timing constants involved (in fileTsxComm.h)
    const int kResetWait = 10000; // Time taken for SX to reset.
    const int kAckWait = 10000; // (doubled 5000) The amount of time (in milliseconds) to wait for acknowledgement.
    const int kResetCharWait = 3; // The amount of time to wait before sending first char after a reset.
    const int kProgramWait = 4000; // (doubled 2000) The amount of time (in milliseconds) to wait for acknowledgement when programming.
    const int kStepWait = 40000; // (doubled 20000) The amount of time (in milliseconds) to wait for acknowledgement when stepping.
    I doubled some wait times in version 1.3 (attached) that may do the trick.

    regards peter


    Post Edited (Peter Verkaik) : 7/2/2006 10:22:34 AM GMT
  • aprunickiaprunicki Posts: 44
    edited 2006-07-02 15:14
    I'll double-check my paths and try it tonight with this version.

    Will this let you do debugging too (other than std out)? Or do you need JIDE for that?
  • Peter VerkaikPeter Verkaik Posts: 3,956
    edited 2006-07-02 15:29
    The option --listen allows you to see messages from the javelin
    on the screen. Debugging as in debugging with the IDE is not available.
    After all, javelindirect is merely for creating the jemfile and downloading
    it to the javelin.

    You can use JideWinTerminal that allows you to send and receive messages
    from the javelin. You can even send files and log the messages to a file.
    http://groups.yahoo.com/group/JavelinCode/files/JideTerm/

    regards peter

    ·
  • aprunickiaprunicki Posts: 44
    edited 2006-07-02 16:17
    I tried it again this morning after all. I was able to resolve the file not found errors, but ended up with the same problem with the timeout:

    [noparse][[/noparse]Error IDE-0022] Error reading from the serial port (timeout).

    That said, this is actually good progess. Since now I have the source for both sides (wine and JavelinDirect), I should be able to isolate the problem in wine. It looks to be potentially a timing issue, because if I crank up the debug features in wine, I get less far in communicating with the Javelin.

    Thanks for your help. I'll keep you posted on any progress I make.
  • aprunickiaprunicki Posts: 44
    edited 2006-07-03 13:02
    I've installed Borland C++ Builder, but when I attempt to compile JavelinDirect, the compiler complains that it can't find ComDrv32.hpp. I've looked through the include folder of Borland, but to no avail.

    Any ideas?
  • Peter VerkaikPeter Verkaik Posts: 3,956
    edited 2006-07-03 13:28
    Sorry about that. The hpp file is located in ..\ide\serial in respect to
    JavelinDirect_1_2 folder.
    I updated the zip here:
    http://groups.yahoo.com/group/JavelinCode/files/JavelinDirect/

    Extract in the projects folder of cbuilder.


    regards peter
    ·
  • aprunickiaprunicki Posts: 44
    edited 2006-07-03 15:50
    Thanks, I can compile it now. It couldn't seem to find the hpp file or the ComDrv32.obj in the CBuilder6/Projects folder, so I dropped it in with the source and modified the header files that referenced the hpp file to import "ComDrv32.hpp" instead of <ComDrv32.hpp>.

    That said, I should be able to isolate the problem now. Thanks so much for all your help.
  • aprunickiaprunicki Posts: 44
    edited 2006-07-05 21:09
    Just a quick update. I have isolated the problem to be that the initial call to send a simple command to the javelin never returns an ack. Looking through the wine buzilla, there is a similar bug out there already.

    Interestingly, the javelin seems to do a reset, and my simple HelloWorld example returns it's string back. I attempted to add so diagnostics to wine, to figure our where it is getting lost, but have not been able to pinpoint the problem yet.
Sign In or Register to comment.