Troubleshooting CrossConnect

Comments

7 comments

  • Avatar
    Paul Curtis

    Hi,

    Make sure to (a) turn adaptive clocking off and (b) reduce the TCK frequency by increasing the divider.  The SAM7 is a hard core and the default will be to run the JTAG too quickly.  I tested the device before despatch on a SAM7S, and it was OK.

    0
    Comment actions Permalink
  • Avatar
    Jaime Alemany

    Hi Paul,

    thanks for replying. I am aware the unit is fine, as it works nicely with a fresh project. I am just trying to find out what should I change in my old project to make it work. Already tested what you suggest.

    Also, any clue why CW 1.7 does not even recognize it?

    Best regards,

     

    jaime

    0
    Comment actions Permalink
  • Avatar
    Paul Curtis

    I don't think 1.7 was endowed with the capability to connect to the Pro.

    > I am just trying to find out what should I change in my old project to make it work.

    A project that is for 2.x?

    I know most people think they are quite capable of constructing a question, but unfortunately, most of them cannot.  You need to be a bit more precise, e.g.

    1. A new project on 2.3.5 for the SAM7S works just fine with the CrossConnect.

    2. My existing 2.3.5 project for the SAM7S doesn't work properly because <insert reason or symptoms>.

    So, need a bit of help here...

    0
    Comment actions Permalink
  • Avatar
    Jaime Alemany

    I'm almost there. And yes, I'm sorry the question was not precise enough.

    The approach I'm doing is manually migrating all project options from my old (originally 1.7) project to a newly created 2.2 project.

    Yes, I meant a new project on 2.2 for the SAM7X256 works just fine with the CrossConnect.

    Forget this issue for a while, I'll report back.

    Thanks!

    0
    Comment actions Permalink
  • Avatar
    Jaime Alemany

    Hello again,

    after full time test and research, I'm experiencing what seems erratic behavior. If, for instance, I select:

    Target -> Erase all

    Sometimes it just erases it correctly:

    Preparing target for user application
    Loading target script file AT91SAM7_Target.js
    Executing reset script FLASHReset()
    Downloading “Loader_rpc.elf” to USB CrossConnect for ARM
    Programming completed in 51 ms — 91,137 bytes/sec
    Programming 4.5 KB of addresses 00200000 — 00201227
    Verifying “Loader_rpc.elf” on USB CrossConnect for ARM
    Verifying completed in 66 ms — 70,424 bytes/sec
    Verifying 4.5 KB of addresses 00200000 — 00201227
    Erasing all memory
    Erasing entire FLASH memory completed in 74 ms

     

    ... but most times it just fails:

     

    Preparing target for user application
    Loading target script file AT91SAM7_Target.js
    Executing reset script FLASHReset()
    Target connection has been lost

    (incidentally, CrossConnect led still on and if I try to connect to it again, I get "Cannot open target interface: device already in use".)

    Sometimes I can send an ELF file to flash:

    Preparing target for download
    Loading target script file AT91SAM7_Target.js
    Executing reset script FLASHReset()
    Downloading “Loader_rpc.elf” to USB CrossConnect for ARM
    Programming completed in 37 ms — 125,621 bytes/sec
    Programming 4.5 KB of addresses 00200000 — 00201227
    Verifying “Loader_rpc.elf” on USB CrossConnect for ARM
    Verifying completed in 24 ms — 193,666 bytes/sec
    Verifying 4.5 KB of addresses 00200000 — 00201227
    Erasing all memory
    Erasing entire FLASH memory completed in 67 ms
    Downloading “Platypus.elf” to USB CrossConnect for ARM
    Programming completed in 4.3 s — 36,894 bytes/sec
    Programming 155.1 KB of addresses 00100000 — 00126cab
    Programming 0.8 KB of addresses 00126cac — 0012702f
    Verifying “Platypus.elf” on USB CrossConnect for ARM
    Verifying completed in 360 ms — 443,866 bytes/sec
    Verifying 155.1 KB of addresses 00100000 — 00126cab
    Verifying 0.8 KB of addresses 00126cac — 0012702f
    Preparing target for user application
    Loading target script file AT91SAM7_Target.js
    Executing reset script FLASHReset()

    ... but most often it also fails:

    Preparing target for download
    Loading target script file AT91SAM7_Target.js
    Executing reset script FLASHReset() (I can see a "read operation timed out" here)
    Target connection has been lost

    (same as before, CrossConnect led still on and if I try to connect to it again, I get "Cannot open target interface: device already in use".)

    Weird as it is, it *seems to* work correctly more often if I open a template project than if I open my "real" project. Both have the exact same parameters regarding target loader etc. And in these tests I'm just sending the same elf file to the board, or erasing the whole flash.

    Some data:

    - target is AT91SAM7X256 at 18.432 MHz

    - Loader_rpc.elf, type "LIBMEM RPC Loader", Parameter 18432000

    - JTAG: NO adaptative clocking, Clock divider 8, Target interface type JTAG.

     

    These are the settings I've found to work better and the ones by default in an AT91SAM7 project (except the divider). I've tried every combination with no luck.

    I'm reaching a dead end, I've looked in every web page for advice to no effect.

    Could it be related to USB connection to the CrossConnect? (I've tried several ports and several cables)

    Same, to the JTAG cable? It's your supplied cable plus a 10cm converter to 10 pin.

     

    I've never had any problem with my old Olimex ARM-USB-OCD dongle, other than being desperately slow.

    I really need advice; I purchased this to speed up my development and have failed miserably for the moment.

     

    I can post any relevant details I may have missed.

    Thanks in advance,

     

    jaime

     

     

    0
    Comment actions Permalink
  • Avatar
    Paul Curtis

    I'll break out something and test again tomorrow.  It was tested before despatch on a SAM7X.  I might ask you for your project to look over settings.

    0
    Comment actions Permalink
  • Avatar
    Jaime Alemany

    Hi Paul,

    that was wise.

    Today with fresh eyes I just discovered the problem: the AT91SAM7_Target.js linked to my project was an older version. Updated it, and now my flash burn cycle is reduced from 7 minutes with Olimex' to 5 seconds with CrossConnect. Happy developer here!

    Thanks!

    0
    Comment actions Permalink

Please sign in to leave a comment.