> I'm trying to use an Olimex USB debugger ("msp430-jtag-tiny"), running on
> w2k, but have run into a few issues.
>
> If anyone else is trying to use one of these, remember that you have to
> download the drivers from Olimex's website and install them first.  Then
> copy the supplied SiUSBXp.dll, FTD2XX.dll and MSP430.dll into your
> mspgcc\bin directory (overwriting the original MSP430.dll).  Don't copy
the
> Olimex HIL.dll - if you do so, your USB FET will work but not old parallel
> port FETs.
>
> Running "msp430-gdbproxy.exe msp430 TIUSB" seems to work fine (using the
> latest mspgcc-win version from 20060502), although it appears to have the
> "debug" flag always on.
>
> However, I can't run the python programs (msp430-downloader.py and
> msp430-jtag.py) using the USB interface.  I can get some contact - for
> example, I can do a reset or an erase, but reading and writing memory
fails
> with "invalid parameter(s)" errors.
>
> Trying to get contact manually from with a python shell gives me much the
> same problems.  Calling "jtag.MSP430_Memory(0xc00, buffer, 100)" returns a
> status of 1, which is odd - according to the rest of the file, 0 is OK
> and -1 is an error.  The jtag.MSP430_Error_Number() function returns 0 for
> no error, and the buffer has not been read.
>
> Since downloading with gdb/gdbproxy works fine, I know the interface
itself
> is working properly.  But I'd like to get the python stuff working - it
> makes it a lot easier to write user-friendly updater programs.
>
>
> David Brown
> System Developer
> WestControl a.s
> Norway
>

I don't want to sound demanding, but has no one tried Olimex's USB debugger
with the python tools?  What is really frustrating is that gdbproxy appears
to work fine with the same hardware, but I can't see how it accesses
memory - as far as I can see, the relevant parts of the gdbproxy code are in
the secret NDA code.


I've made a couple of minor changes to msp430-downloader.py, which I think
could be worth putting in the official version.  They are so small that it
is probably as easy for a maintainer to cut-and-paste rather than using
patch:

In the list of file types (line 26), the box is a little more user-friendly
if we use:

        typeList=[('Binaries (*.hex, *.elf, *.a43)', '*.hex;*.elf;*.a43'),
'hex', 'elf', 'a43', '*']


I also replaced the confirmation box with a choice of interface, supporting
USB on windows:


answer = EasyDialogs.AskYesNoCancel("Use Parallel port JTAG or USB JTAG?",
    default=1, yes="Parallel port", no="USB")
if answer == 0: #NO -> USB
    lpt = 'TIUSB'
elif answer == 1: #YES -> Parallel port
    lpt = '1'
else:   #CANCEL
    sys.exit(1)


This might need to be optional when running on Linux (until there is support
for the USB tools on Linux).  Of course, I couldn't test that programming
works here - but erasing is working fine...

mvh.,

David



Reply via email to