Troubleshooting CrossConnect
Hi,
I've just received my new CrossConnect Pro, and I cannot manage to get it to work.
With CrossWorks 1.7, I can't get it detected, when I try to connect to it I get the message "Cannot open target interface".
With CW 2.2, the situation is better; with a new project, from the "new project" option, I can get it to work, no problem except from some occasional "read timeout":
Checking “Executable_1” in configuration “ARM Flash Debug”
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 131 ms — 35,480 bytes/sec
Programming 4.5 KB of addresses 00200000 — 00201227
Verifying “Loader_rpc.elf” on USB CrossConnect for ARM
Verifying completed in 29 ms — 160,275 bytes/sec
Verifying 4.5 KB of addresses 00200000 — 00201227
Erasing all memory
Erasing entire FLASH memory completed in 71 ms
Downloading “Executable_1.elf” to USB CrossConnect for ARM
Programming completed in 378 ms — 28,380 bytes/sec
Programming 10.4 KB of addresses 00100000 — 001029db
Programming 0.0 KB of addresses 001029dc — 001029e7
Verifying “Executable_1.elf” on USB CrossConnect for ARM
Verifying completed in 83 ms — 129,253 bytes/sec
Verifying 10.4 KB of addresses 00100000 — 001029db
Verifying 0.0 KB of addresses 001029dc — 001029e7
Preparing target for user application
Loading target script file AT91SAM7_Target.js
Executing reset script FLASHReset()
However with my project (I've been using an Olimex JTAG before purchasing the CrossConnect), I'm stuck at this point:
Checking “seletek” in configuration “Evolution Debug”
Preparing target for download
Loading target script file AT91SAM7_Target.js
Executing reset script FLASHReset()
Target connection has been lost
... after this I have always to unplug / replug the USB.
I have copied the loader settings from the new, blank project to mine, with no luck. I'm surely missing something, but after a few hours trying I don't know what else to try.
Any advice most welcome, thanks,
jaime
-
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
-
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...
-
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!
-
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
-
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!
Please sign in to leave a comment.
Comments
7 comments