lpc 2378 out of the box help please

I just got the ARM-USB-OCD and LPC-2378-STK-A. On the CD I found the file HOW_TO_INSTALL, and got stuck on item 7 where it tells me 7. Start OpenOCD program from Run → External Tools → OpenOCD or OpenOCDTiny . When I do this, I get this message in the console

Open On-Chip Debugger 1.0 (2008-10-04-10:00) 
svn:exported $URL: http://svn.berlios.de/svnroot/repos/openocd/trunk/src/openocd.c $ 
Info: options.c:50 configuration_output_handler(): jtag_speed: 3, 3 
Info: options.c:50 configuration_output_handler(): Open On-Chip Debugger 1.0 (2008-10-04-10:00) svn:exported 
Error: ft2232.c:1419 ft2232_init_ftd2xx(): unable to open ftdi device: 2 
Error: ft2232.c:1434 ft2232_init_ftd2xx(): ListDevices: 2 
Error: ft2232.c:1436 ft2232_init_ftd2xx(): 0: Olimex OpenOCD JTAG A 
Error: ft2232.c:1436 ft2232_init_ftd2xx(): 1: Olimex OpenOCD JTAG B

I tried to continue blazing a trail, but came into more problems when on step 8, where it gave me this

Error creating session
Cannot run program "gdb": Launching failed
  Cannot run program "gdb": Launching failed
  Cannot run program "gdb": Launching failed

The LPC2378 has two red LED lights, and the XP device manager shows two Olimex devices. The administrator had to put in the admin password three times, indicating it installed three devices. Also we logged in as the administrator and came to the same results as above. With USB snoop, I confirmed it’‘d PID is 3 not 4. I ran a test command for more log data, Here’'s the results.

C:\\gccfd\\projects\\lpc2378>c:\\gccfd\\openocd\\bin\\openocd-ftd2xx.exe -f c:\\gccfd\\projects\\lpc2378\\armusbocd_tiny.cfg -d 
Open On-Chip Debugger 1.0 (2008-10-04-10:00) svn:exported $URL: http://svn.berlios.de/svnroot/repos/openocd/trunk/src/openocd.c $ 
Debug: 5 0 command.c:432 command_run_line(): script c:\\gccfd\\projects\\lpc2378\\armusbocd_tiny.cfg 
Debug: 6 0 configuration.c:87 open_file_from_path(): opened c:\\gccfd\\projects\\lpc2378\\armusbocd_tiny.cfg 
Debug: 8 0 command.c:432 command_run_line(): telnet_port 4444 
Debug: 10 0 command.c:432 command_run_line(): gdb_port 3333 
Debug: 12 0 command.c:432 command_run_line(): interface ft2232 Debug: 14 0 command.c:432 command_run_line(): ft2232_device_desc \"Olimex OpenOCD JTAG TINY A\" 
Debug: 16 0 command.c:432 command_run_line(): ft2232_layout \"olimex-jtag\" 
Debug: 18 0 command.c:432 command_run_line(): ft2232_vid_pid 0x15BA 0x0003 
Debug: 20 0 command.c:432 command_run_line(): jtag_speed 3 
Debug: 21 0 jtag.c:1863 handle_jtag_speed_command(): handle jtag speed 
Info: 22 0 options.c:50 configuration_output_handler(): jtag_speed: 3, 3 
Debug: 24 0 command.c:432 command_run_line(): reset_config trst_and_srst separate 
Debug: 26 0 command.c:432 command_run_line(): jtag_device 4 0x1 0xf 0xe 
Debug: 28 0 command.c:432 command_run_line(): daemon_startup reset 
Info: 29 15 options.c:50 configuration_output_handler(): Open On-Chip Debugger 1.0 (2008-10-04-10:00) svn:exported 
Debug: 31 15 command.c:432 command_run_line(): target arm7tdmi little run_and_halt 0 arm7tdmi-s_r4 
Debug: 33 15 command.c:432 command_run_line(): run_and_halt_time 0 30 
Debug: 35 15 command.c:432 command_run_line(): working_area 0 0x40000000 0x40000 nobackup 
Debug: 37 15 command.c:432 command_run_line(): flash bank lpc2000 0x0 0x40000 0 0 0 lpc2000_v2 12000 calc_checksum 
Debug: 39 15 command.c:432 command_run_line(): init 
Debug: 40 15 openocd.c:102 handle_init_command(): target init complete 
Debug: 41 15 ft2232.c:1374 ft2232_init_ftd2xx(): ''ft2232'' interface using FTD2XX with ''olimex-jtag'' layout (15ba:0003) 
Error: 42 78 ft2232.c:1419 ft2232_init_ftd2xx(): unable to open ftdi device: 2 
Error: 43 140 ft2232.c:1434 ft2232_init_ftd2xx(): ListDevices: 2 
Error: 44 140 ft2232.c:1436 ft2232_init_ftd2xx(): 0: Olimex OpenOCD JTAG A 
Error: 45 140 ft2232.c:1436 ft2232_init_ftd2xx(): 1: Olimex OpenOCD JTAG B 
Debug: 46 140 command.c:387 find_and_run_command(): 
Command failed with error code -100

I’m using the config file that came with the software, should basically be the same thing as it was. I make a change, then change it back, ect. Should be the same now. Here’s the C:\gccfd\projects\lpc2378\config\armusbocd_tiny.cfg file I’m using.

#daemon configuration
telnet_port 4444
gdb_port 3333

#interface
interface ft2232
ft2232_device_desc "Olimex OpenOCD JTAG TINY A"
ft2232_layout "olimex-jtag"
ft2232_vid_pid 0x15BA 0x0003
jtag_speed 3

#use combined on interfaces or targets that can't set TRST/SRST separately
reset_config trst_and_srst separate

#jtag scan chain
#format L IRC IRCM IDCODE (Length, IR Capture, IR Capture Mask, IDCODE)
jtag_device 4 0x1 0xf 0xe

#target configuration
daemon_startup reset

#target <type> <startup mode>
#target arm7tdmi <reset mode> <chainpos> <endianness> <variant>
target arm7tdmi little run_and_halt 0 arm7tdmi-s_r4
run_and_halt_time 0 30

#target_script 0 reset oocd_flash2138.script
working_area 0 0x40000000 0x40000 nobackup

#flash configuration
flash bank lpc2000 0x0 0x40000 0 0 0 lpc2000_v2 12000 calc_checksum

# For more information about the configuration files, take a look at:
# http://openfacts.berlios.de/index-en.phtml?title=Open+On-Chip+Debugger

Any thoughts? Any suggestions will be much liked.

I just tried this again on my home PC, with full admin permissions, I’m having the same issue. Can’t open device 2.

Why are you launching the “OpenOCDTiny” external tool?

You appear to have ARM-USB-OCD (and not ARM-USB-TINY), so please use the “OpenOCD” tool and the armusbocd.cfg configuration file.

Regards,

Dimitar

I’m having some trouble with the forbidden words thing. Appears this time it’s something in my log postings. I think the moderator will post my last post shortly. Here is a supplement to that post.

[edit]I no longer feel like my eclipse install is buggy, I feel it was simply my getting used to the interface. I found that I had to click in certain areas to get certain items active before I can expect a specific result. For example, I have to click in the main.c debug tab before that activated the project. Once I did this the project_loc error goes away.[/edit]

I’m also finding this version of eclipse feels buggy. For example, I fire off the OCD debugger, then hit the red square button to stop it, so I can fire it off again. However, when I fire it off the second time, I get this message.

Variable references empty selection: ${project_loc}

That var is part of the launch sequence, and was valid just seconds ago. I haven’t made any changes. I wonder what’s going on to cause this. This seems to get resolved when I restart eclipse. My gut feel is that this is a config bug, not so much a real bug. Any how, I’m learning that just because you get a but or result on way, doesn’t mean you’ll get that result if you do it with a slight variation of the process.

Looks like it will let me post now. So here I go.

Great and thanks for the above notes. I’ve made some progress. I was using the TINY because that’s what folks had noted on the forums here. I didn’t notice the TINY version on Olimex site, so I didn’t understand the difference. I can now launch the daemon from a prompt, as shown in this snippet.

C:\>c:\gccfd\openocd\bin\openocd-ftd2xx.exe -f c:\gccfd\projects\lpc2378\armusbocd.cfg -d
Open On-Chip Debugger 1.0 (2008-10-04-10:00) svn:exported
$URL: http://svn.berlios.de/svnroot/repos/openocd/trunk/src/openocd.c $
Debug:   5 0 command.c:432 command_run_line(): script c:\gccfd\projects\lpc2378\armusbocd.cfg
Debug:   6 0 configuration.c:87 open_file_from_path(): opened c:\gccfd\projects\lpc2378\armusbocd.cfg
Debug:   8 0 command.c:432 command_run_line(): telnet_port 4444
Debug:   10 0 command.c:432 command_run_line(): gdb_port 3333
Debug:   12 0 command.c:432 command_run_line(): interface ft2232
Debug:   14 0 command.c:432 command_run_line(): ft2232_device_desc "Olimex OpenOCD JTAG A"
Debug:   16 0 command.c:432 command_run_line(): ft2232_layout "olimex-jtag"
Debug:   18 0 command.c:432 command_run_line(): ft2232_vid_pid 0x15BA 0x0003
Debug:   20 0 command.c:432 command_run_line(): jtag_speed 10
Debug:   21 0 jtag.c:1863 handle_jtag_speed_command(): handle jtag speed
Info:    22 0 options.c:50 configuration_output_handler(): jtag_speed: 10, 10
Debug:   24 0 command.c:432 command_run_line(): reset_config trst_and_srst separate
Debug:   26 0 command.c:432 command_run_line(): jtag_nsrst_delay 200
Debug:   28 0 command.c:432 command_run_line(): jtag_ntrst_delay 200
Debug:   30 0 command.c:432 command_run_line(): jtag_device 4 0x1 0xf 0xe
Debug:   32 0 command.c:432 command_run_line(): daemon_startup reset
Info:    33 0 options.c:50 configuration_output_handler(): Open On-Chip Debugger 1.0 (2008-10-04-10:00) svn:exported
Debug:   35 0 command.c:432 command_run_line(): target arm7tdmi little run_and_halt 0 arm7tdmi-s_r4
Debug:   37 0 command.c:432 command_run_line(): run_and_halt_time 0 30
Debug:   39 15 command.c:432 command_run_line(): working_area 0 0x40000000 0x40000 nobackup
Debug:   41 15 command.c:432 command_run_line(): flash bank lpc2000 0x0 0x40000 0 0 0 lpc2000_v2 12000 calc_checksum
Debug:   43 15 command.c:432 command_run_line(): init
Debug:   44 15 openocd.c:102 handle_init_command(): target init complete
Debug:   45 15 ft2232.c:1374 ft2232_init_ftd2xx(): 'ft2232' interface using FTD2XX with 'olimex-jtag' layout (15ba:0003)
Debug:   46 31 ft2232.c:1463 ft2232_init_ftd2xx(): current latency timer: 2
Debug:   47 31 ft2232.c:1810 olimex_jtag_init(): 80 08 1b
Debug:   48 31 ft2232.c:1853 olimex_jtag_init(): 82 09 0f
Debug:   49 31 ft2232.c:253 ft2232_speed(): 86 0a 00
Debug:   50 46 openocd.c:109 handle_init_command(): jtag interface init complete
Debug:   51 62 jtag.c:1537 jtag_init_inner(): Init JTAG chain
Debug:   52 62 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   53 62 jtag.c:1295 jtag_reset_callback(): -
Debug:   54 62 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   55 62 jtag.c:1295 jtag_reset_callback(): -
Error:   56 62 jtag.c:1351 jtag_examine_chain(): JTAG communication failure, check connection, JTAG interface, target power etc.
Error:   57 62 jtag.c:1556 jtag_init_inner(): trying to validate configured JTAG chain anyway...
Debug:   58 62 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   59 62 jtag.c:1295 jtag_reset_callback(): -
Error:   60 62 jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Debug:   61 78 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   62 78 jtag.c:1295 jtag_reset_callback(): -
Error:   63 78 jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Debug:   64 78 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   65 78 jtag.c:1295 jtag_reset_callback(): -
Error:   66 78 jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Debug:   67 93 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   68 93 jtag.c:1295 jtag_reset_callback(): -
Error:   69 93 jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Debug:   70 109 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   71 109 jtag.c:1295 jtag_reset_callback(): -
Error:   72 109 jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Debug:   73 125 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   74 125 jtag.c:1295 jtag_reset_callback(): -
Error:   75 125 jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   76 125 jtag.c:1565 jtag_init_inner(): Could not validate JTAG chain, exit
Debug:   77 125 jtag.c:1581 jtag_init_reset(): Trying to bring the JTAG controller to life by asserting TRST / TLR
Debug:   78 125 jtag.c:996 jtag_add_reset(): SRST line released
Debug:   79 125 jtag.c:1015 jtag_add_reset(): TRST line asserted
Debug:   80 125 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   81 125 jtag.c:1295 jtag_reset_callback(): -
Debug:   82 125 jtag.c:992 jtag_add_reset(): SRST line asserted
Debug:   83 125 jtag.c:1015 jtag_add_reset(): TRST line asserted
Debug:   84 125 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   85 125 jtag.c:1295 jtag_reset_callback(): -
Debug:   86 125 jtag.c:992 jtag_add_reset(): SRST line asserted
Debug:   87 125 jtag.c:996 jtag_add_reset(): SRST line released
Debug:   88 125 ft2232.c:1037 olimex_jtag_reset(): trst: 1, srst: 0, high_output: 0x00, high_direction: 0x0f
Debug:   89 328 ft2232.c:1037 olimex_jtag_reset(): trst: 1, srst: 1, high_output: 0x02, high_direction: 0x0f
Debug:   90 328 ft2232.c:1037 olimex_jtag_reset(): trst: 0, srst: 1, high_output: 0x03, high_direction: 0x0f
Debug:   91 531 ft2232.c:1037 olimex_jtag_reset(): trst: 0, srst: 0, high_output: 0x01, high_direction: 0x0f
Debug:   92 921 jtag.c:1537 jtag_init_inner(): Init JTAG chain
Debug:   93 921 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   94 921 jtag.c:1295 jtag_reset_callback(): -
Debug:   95 921 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   96 921 jtag.c:1295 jtag_reset_callback(): -
Error:   97 937 jtag.c:1351 jtag_examine_chain(): JTAG communication failure, check connection, JTAG interface, target power etc.
Error:   98 937 jtag.c:1556 jtag_init_inner(): trying to validate configured JTAG chain anyway...
Debug:   99 937 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   100 937 jtag.c:1295 jtag_reset_callback(): -
Error:   101 937 jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Debug:   102 937 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   103 937 jtag.c:1295 jtag_reset_callback(): -
Error:   104 937 jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Debug:   105 953 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   106 953 jtag.c:1295 jtag_reset_callback(): -
Error:   107 953 jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Debug:   108 968 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   109 968 jtag.c:1295 jtag_reset_callback(): -
Error:   110 968 jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Debug:   111 984 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   112 984 jtag.c:1295 jtag_reset_callback(): -
Error:   113 984 jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Debug:   114 1000 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   115 1000 jtag.c:1295 jtag_reset_callback(): -
Error:   116 1000 jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   117 1000 jtag.c:1565 jtag_init_inner(): Could not validate JTAG chain, exit
Debug:   118 1000 openocd.c:126 handle_init_command(): flash init complete
Debug:   119 1000 openocd.c:130 handle_init_command(): NAND init complete
Debug:   120 1000 openocd.c:134 handle_init_command(): pld init complete
Debug:   121 1015 gdb_server.c:2036 gdb_init(): gdb service for target arm7tdmi at port 3333
Debug:   123 1015 command.c:432 command_run_line(): reset
Debug:   124 1015 target.c:1851 handle_reset_command(): -
Debug:   125 1015 ft2232.c:253 ft2232_speed(): 86 0a 00
Debug:   126 1015 jtag.c:1581 jtag_init_reset(): Trying to bring the JTAG controller to life by asserting TRST / TLR
Debug:   127 1015 jtag.c:996 jtag_add_reset(): SRST line released
Debug:   128 1015 jtag.c:1015 jtag_add_reset(): TRST line asserted
Debug:   129 1015 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   130 1015 jtag.c:1295 jtag_reset_callback(): -
Debug:   131 1015 jtag.c:992 jtag_add_reset(): SRST line asserted
Debug:   132 1015 jtag.c:1015 jtag_add_reset(): TRST line asserted
Debug:   133 1015 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   134 1015 jtag.c:1295 jtag_reset_callback(): -
Debug:   135 1015 jtag.c:992 jtag_add_reset(): SRST line asserted
Debug:   136 1015 jtag.c:996 jtag_add_reset(): SRST line released
Debug:   137 1015 ft2232.c:1037 olimex_jtag_reset(): trst: 1, srst: 0, high_output: 0x08, high_direction: 0x0f
Debug:   138 1218 ft2232.c:1037 olimex_jtag_reset(): trst: 1, srst: 1, high_output: 0x0a, high_direction: 0x0f
Debug:   139 1218 ft2232.c:1037 olimex_jtag_reset(): trst: 0, srst: 1, high_output: 0x0b, high_direction: 0x0f
Debug:   140 1421 ft2232.c:1037 olimex_jtag_reset(): trst: 0, srst: 0, high_output: 0x09, high_direction: 0x0f
Debug:   141 1812 jtag.c:1537 jtag_init_inner(): Init JTAG chain
Debug:   142 1812 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   143 1812 jtag.c:1295 jtag_reset_callback(): -
Debug:   144 1812 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   145 1812 jtag.c:1295 jtag_reset_callback(): -
Error:   146 1828 jtag.c:1351 jtag_examine_chain(): JTAG communication failure, check connection, JTAG interface, target power etc
.
Error:   147 1828 jtag.c:1556 jtag_init_inner(): trying to validate configured JTAG chain anyway...
Debug:   148 1828 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   149 1828 jtag.c:1295 jtag_reset_callback(): -
Error:   150 1828 jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Debug:   151 1843 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   152 1843 jtag.c:1295 jtag_reset_callback(): -
Error:   153 1843 jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Debug:   154 1843 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   155 1843 jtag.c:1295 jtag_reset_callback(): -
Error:   156 1843 jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Debug:   157 1859 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   158 1859 jtag.c:1295 jtag_reset_callback(): -
Error:   159 1859 jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Debug:   160 1875 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   161 1875 jtag.c:1295 jtag_reset_callback(): -
Error:   162 1875 jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Debug:   163 1890 jtag.c:326 jtag_call_event_callbacks(): jtag event: JTAG controller reset (TLR or TRST)
Debug:   164 1890 jtag.c:1295 jtag_reset_callback(): -
Error:   165 1890 jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   166 1890 jtag.c:1565 jtag_init_inner(): Could not validate JTAG chain, exit

Appears I now have the daemon up and running. Would appear there are still problems. I don’t think Error notes are normal. Here’s the armusbocd.cfg config file that produced this.

#daemon configuration
telnet_port 4444
gdb_port 3333

#interface
interface ft2232
ft2232_device_desc "Olimex OpenOCD JTAG A"
ft2232_layout "olimex-jtag"
ft2232_vid_pid 0x15BA 0x0003
jtag_speed 10

#use combined on interfaces or targets that can't set TRST/SRST separately
reset_config trst_and_srst separate

#jtag scan chain
#format L IRC IRCM IDCODE (Length, IR Capture, IR Capture Mask, IDCODE)
jtag_device 4 0x1 0xf 0xe

#target configuration
daemon_startup reset

#target <type> <startup mode>
#target arm7tdmi <reset mode> <chainpos> <endianness> <variant>
target arm7tdmi little run_and_halt 0 arm7tdmi-s_r4
run_and_halt_time 0 30

#target_script 0 reset oocd_flash2138.script
working_area 0 0x40000000 0x40000 nobackup

#flash configuration
flash bank lpc2000 0x0 0x40000 0 0 0 lpc2000_v2 12000 calc_checksum

# For more information about the configuration files, take a look at:
# http://openfacts.berlios.de/index-en.phtml?title=Open+On-Chip+Debugger

Basically the only change is that the JTAG speed from 50 to 10. Now that it appears to be up and running, I open another cmd prompt and fire off this command.

c:\> telnet 127.0.0.1 4444

Which brings me to this prompt, where I request a scan.

Open On-Chip Debugger
> scan_chain
0: idcode: 0x00000000 ir length 4, ir capture 0x1, ir mask 0xf, current instruct
ion 0xf
> targets
0: arm7tdmi (little endian), state: unknown
>

I’m assuming the above is actually data from the scanned buss, not simply spit back from the config file. The above matches the config file, well mostly matches. What’s up with the IDCODE, should it be 0? I was starting to feel like this should be working. So I close both the cmd windows making sure it kills the daemon, then fire up eclipse, and launch the debugger per CD instructions, selecting the straight up OCD option. Here is what I get in the console window.

Open On-Chip Debugger 1.0 (2008-10-04-10:00) svn:exported
$URL: http://svn.berlios.de/svnroot/repos/openocd/trunk/src/openocd.c $
Info:    options.c:50 configuration_output_handler(): jtag_speed: 10, 10
Info:    options.c:50 configuration_output_handler(): Open On-Chip Debugger 1.0 (2008-10-04-10:00) svn:exported
Error:   jtag.c:1351 jtag_examine_chain(): JTAG communication failure, check connection, JTAG interface, target power etc.
Error:   jtag.c:1556 jtag_init_inner(): trying to validate configured JTAG chain anyway...
Error:   jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   jtag.c:1565 jtag_init_inner(): Could not validate JTAG chain, exit
Error:   jtag.c:1351 jtag_examine_chain(): JTAG communication failure, check connection, JTAG interface, target power etc.
Error:   jtag.c:1556 jtag_init_inner(): trying to validate configured JTAG chain anyway...
Error:   jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   jtag.c:1565 jtag_init_inner(): Could not validate JTAG chain, exit
Error:   jtag.c:1351 jtag_examine_chain(): JTAG communication failure, check connection, JTAG interface, target power etc.
Error:   jtag.c:1556 jtag_init_inner(): trying to validate configured JTAG chain anyway...
Error:   jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   jtag.c:1444 jtag_validate_chain(): Error validating JTAG scan chain, IR mismatch, scan returned 0x3f
Error:   jtag.c:1565 jtag_init_inner(): Could not validate JTAG chain, exit

Seems to be working about the same as I found on the cmd prompt and appears to still have issues. I’m also still getting the gdb issues, I believe the JTAG isn’t configured right, but don’t know what might be wrong.

I’m still baffled and learning the lower level details about OpenOCD and Eclipse. I’m sure there has to be some config problem, I just don’t know what it is. I also tried blazing a trail, still no blinking LED.

So I win the dumb award, but I still have a some more to go. Seems the USB dongle can’t provide enough power for the LCD, and was causing a power supply issue. Can’t run this board directly from the USB device. I just added a 9v battery and it seems to work just about right now. I’ve copied back the original config file, and proceeded with from there.

The LED’s were a bit misleading, they were nice and bright, would have been nice if they were dim when the supply was low voltage.

I see the ARM-USB-OCD has a multi colored LED. Right now it’s blinking red and green. I wonder what the means.

Here’s what I get in the console when I use the normal OCD file.

Open On-Chip Debugger 1.0 (2008-10-04-10:00) svn:exported
$URL: http://svn.berlios.de/svnroot/repos/openocd/trunk/src/openocd.c $
Info:    options.c:50 configuration_output_handler(): jtag_speed: 50, 50
Info:    options.c:50 configuration_output_handler(): Open On-Chip Debugger 1.0 (2008-10-04-10:00) svn:exported
Info:    jtag.c:1389 jtag_examine_chain(): JTAG device found: 0x4f1f0f0f (Manufacturer: 0x787, Part: 0xf1f0, Version: 0x4)
Warning: embeddedice.c:185 embeddedice_build_reg_cache(): EmbeddedICE version 7 detected, EmbeddedICE handling might be broken
Info:    jtag.c:1389 jtag_examine_chain(): JTAG device found: 0x4f1f0f0f (Manufacturer: 0x787, Part: 0xf1f0, Version: 0x4)

When I go for the step 8 debug, I get this message.

Error creating session
Cannot run program "gdb": Launching failed
  Cannot run program "gdb": Launching failed
  Cannot run program "gdb": Launching failed

Still no blinking LED. At least I’m making progress.

It’s a pity no one answered the question above because I am having similar (or even the same) problems (only with an LPC-P2378 board).

I also figured out that the board needs an external power supply but I still can’t program the board and I’m still having the error messages.

I went throe all the documents that came with the board and ARM-USB-OCD programmer but could not found anything conserning this problem.

I hope someone can help us with this case and get it up and running.

It looks like fashmagic is the “best” way to program. However, at this time I think it requires you to solder more wires the to board. Seems you want the serial DTR and RTS to connecto to pins on the 2378. That’s pg 46 from the flashmagic manual. The board I have doesn’t use the DTR or RTS pins on the 232 port, so you can solder a wire to it. However, I believe you need a level shifter, I don’t think it will handle the 12V, but I’m still learning.

Appears the arm chips come with an on-chip bootloader, some times called the primary boot loader. Also appears flashmagic is supported by NXP to use this bootloader, so it should be the most reliable approach.

I don’t think eclispe is compatable with flashmagic, so you have to run two programs. perhaps that’s wrong, I’m still learning. I also think the 232 from the USB JTAG will work for the 232.

Kind of fustrating that the JTAG programming method appears to be bogus. I bought this programmer because it was advertised as “for dummies” figured it would be a good jump off point for a newbie. Certainly feels like I have to be less dumb than I am.

Keep me posted if you figure out how to get the sample program into this puppy.

jharvey:
It looks like fashmagic is the “best” way to program. However, at this time I think it requires you to solder more wires the to board.

You might not have to. Although it is easier if the board can be put into bootloader mode by the RS232 link, many boards come with a jumper on P0.14. If your board has that you just need to insert the jumper when you press reset to activate the on-chip bootloader.

I don’t think eclispe is compatable with flashmagic, so you have to run two programs.

FlashMagic is compatible with any development tool that can produce a Hex file - we recommend it's use with Armaide for example. It is a separate program however but not too inconvenient in practice - at least it works ;-)

If you want to try to do everything inside Eclipse there is an alternative command line program available that uploads Hex files via the bootloader similarly to FlashMagic. You might be able to setup Eclipse to use that. If interested let me know and I’ll track down the name of the program for you.

jharvey:
It looks like fashmagic is the “best” way to program. However, at this time I think it requires you to solder more wires the to board.

I just read your original post. If you are referring to Olimex's LPC-2378-STK it already supports automatic uploading via UART0 with a program like FlashMagic without any modification. You don't even have to press the reset button!

Just tick the ‘Use DTR and RTS to control RST and ISP pin’ checkbox on the FlashMagic > Options > Advanced Options > Hardware Config screen then when you start the upload, FlashMagic automatically resets the LPC-2378-STK and puts the MCU into bootloader mode.

The PC I am using with the Olimex board doesn’t have an RS232 port but that was not a major problem. I just use a USB → RS232 DB9 adapter cable (about $20?) so the USB port looks like a COM port to FlashMagic.

Great install the ISP-E and RST-E jumpers, connect a straight through 232 cable, and I should be off to the races. I should be able to do that tonight.

Still don’t understand why I can’t program it via JTAG. However, flash magic is better, and I do appear to have JTAG diag capabilities, so I’m not that concerned.

Thanks for the note.

As luck has it, I found a couple minutes to try it out this morning. Here are some pics that I think will help other newbie folks.

http://i324.photobucket.com/albums/k352 … e_page.png

http://i324.photobucket.com/albums/k352 … rdware.jpg

Some key things to note, when I have the JTAG connector connected, the LCD goes blank. This indicated the 2378 isn’t running, and therefor doesn’t process 232 commands. I had an old RC servo wire, so I have 3 wires, you only need the one to jumper 5V past the 5V reg.

Is there a way to read the entire firmware that is in there now? I’d like to have a copy of the original firmware, that way I can put it back to where I had started from, if I’m in doubt I broke something, I know this firmware works. So far I’ve confirmed it worked by reading the security and info. I also saw the view memory page, however, I’d like a hex file I can re-upload in the event I break something and want working code to confirm I didn’t smoke the processor or what have you.

Is there a way to read the entire firmware that is in there now? I’d like to have a copy of the original firmware, that way I can put it back to where I had started from, if I’m in doubt I broke something, I know this firmware works.

I haven't used it myself but looking at Chapter 6 in the FileMagic User Manual it seems that is what the File > Save As function is designed to do.

By the way, your photo reminded me, I haven’t had any problem powering the LPC2378-STK board directly from a USB socket. Is that because I’m not using the JTAG feature? Or is it because I’ve plugged it directly into the PC not via a USB hub?

I seem to recall that the USB spec is 5VDC and will support something like 10mA and can support up to 500mA. Technically you are susposed to request the power before it’s allocated, however it’s common practice that vendors will ignore the spec, put in a fuse and let it run full power all the time.

My board draws 80mA, and the USB driver follows the spec. So I can only get the 10mA until I do the handshaking and such. Basically not enough power, but if I plugged it into a different PC I might get enough power. I tried the USB jumper, and it did not boot up. If yours does boot, no need for the jumper wire I have on mine.

Well, I’ve been doing well programming with FlashMagic. However I’m really wanting the JTAG debug option. I have the same setup as shown in the picture above, except I’ve taken off the ISP 232 jumpers, and I’ve connected the JTAG connector. I uploaded the demo project titled lpc2378. It’s a simple program that blinks an LED. I’ve uploaded that via ISP, and it work just fine that way. However, when try it via JTAG, things go sour and I can’t get the register data out for debug purposes. Here are the steps I take to get to my failure.

Per the jumper PDF, I removed the ISP jumpers, and I’ve ensured I have a good 5V with the above noted modification. Following instructions from the “How to install GCCFD.pdf” I open eclipse, and opened one project. Then I open main.c in the debug tab and ensure it’s active by putting my cursor in the window. Then I start the normal OCD, not tiny and not ST version, just the normal OCD. I get the “info” notes as noted in the PDF. All looks good. Then I select the debug config as noted, and it all seems to be OK, except it claims it can’t insert the break point.

I see one self generated breakpoint that seems a bit weird, or at least weird to me, so I disable the main.out. Then when I debug, I see the LED flash. So it’s able to upload and communicate, but I can’t see break points. And I can’t get register data from the board. Here’s my log up to this point.

Open On-Chip Debugger 1.0 (2008-10-04-10:00) svn:exported
$URL: http://svn.berlios.de/svnroot/repos/openocd/trunk/src/openocd.c $
Info:    options.c:50 configuration_output_handler(): jtag_speed: 50, 50
Info:    options.c:50 configuration_output_handler(): Open On-Chip Debugger 1.0 (2008-10-04-10:00) svn:exported
Info:    jtag.c:1389 jtag_examine_chain(): JTAG device found: 0x4f1f0f0f (Manufacturer: 0x787, Part: 0xf1f0, Version: 0x4)
Warning: embeddedice.c:185 embeddedice_build_reg_cache(): EmbeddedICE version 7 detected, EmbeddedICE handling might be broken
Info:    jtag.c:1389 jtag_examine_chain(): JTAG device found: 0x4f1f0f0f (Manufacturer: 0x787, Part: 0xf1f0, Version: 0x4)
Info:    server.c:78 add_connection(): accepting 'gdb' connection from 0
Warning: gdb_server.c:416 gdb_get_packet_inner(): acknowledgment received, but no packet pending
User:    target.c:957 target_arch_state(): target state: halted
User:    armv4_5.c:307 armv4_5_arch_state(): target halted in ARM state due to debug request, current mode: System
cpsr: 0x800000df pc: 0x00000420
User:    gdb_server.c:574 gdb_output(): flash 'lpc2000' found at 0x00000000
User:    gdb_server.c:574 gdb_output(): erased sectors 0 through 0 on flash bank 0 in 1.515625s
User:    gdb_server.c:574 gdb_output(): wrote 1272 byte from file main.bin in 0.906250s (1.370690 kb/s)
Info:    jtag.c:1389 jtag_examine_chain(): JTAG device found: 0x4f1f0f0f (Manufacturer: 0x787, Part: 0xf1f0, Version: 0x4)
User:    target.c:1838 handle_soft_reset_halt_command(): requesting target halt and executing a soft reset
Error:   arm7_9_common.c:897 arm7_9_soft_reset_halt(): Failed to halt CPU after 1 sec
User:    gdb_server.c:574 gdb_output(): force hardware breakpoints enabled
Warning: arm7_9_common.c:1829 arm7_9_read_memory(): target not halted
Warning: arm7_9_common.c:279 arm7_9_add_breakpoint(): target not halted
Info:    breakpoints.c:80 breakpoint_add(): can't add breakpoint while target is running
Warning: arm7_9_common.c:1829 arm7_9_read_memory(): target not halted
Warning: arm7_9_common.c:1829 arm7_9_read_memory(): target not halted
Warning: arm7_9_common.c:1829 arm7_9_read_memory(): target not halted
Warning: arm7_9_common.c:1829 arm7_9_read_memory(): target not halted
Info:    server.c:395 server_loop(): dropped 'gdb' connection

To me it would appear that something happened to the soft reset, but I don’t know what.

Any thoughts? I would like to read registers and such internal information via JTAG.

jharvey:
Any thoughts? I would like to read registers and such internal information via JTAG.

Just guessing - did you / do you have to enable the Trace port using the DBUG-E jumper?

http://www.olimex.com/dev/pdf/LPC2378-S … iption.pdf

I didn’t get the trace port option on this board. I have that jumper, but I don’t have the trace port header or trace port tools. In the PDF down where it notes the JTAG it doesn’t note the dbg_e as a special concern. I tried it with that jumper just in-case, but it still produced the same problem.

I suspect it’s a software problem, more than I suspect it’s a hardware problem.

Hi

Looking at the photo it does look as though the DBG_E jumper is missing (next to the JTAG connector). Without this the debugger will not be able to stop the processor.

If problems continue it may be useful to try a Rowley Crossworks evaluation since it supports just about all debuggers under the sun and so is a good reference.

Also check the LPC2XXX project (including Olimex board configuration and simulation) at [www.uTasker.com.

Regards

Mark](http://www.uTasker.com)

I just restarted eclipse, I seem to get a different problem now. I currently have the dbg_e jumper installed. Here’s what I get.

Warning: /cygdrive/C/gccfd/projects/lpc2378/.settings: No such file or directory.
Warning: /cygdrive/C/gccfd/projects/lpc2378: No such file or directory.
mi_cmd_break_watch: Missing <expression>
No registers.
target remote localhost:3333
0x00000000 in _vectors ()
monitor sleep 500
monitor poll
target state: running
monitor flash probe 0
flash 'lpc2000' found at 0x00000000
monitor flash erase_sector 0 0 0
failed erasing sectors 0 to 0 (-304)
monitor flash write_image main.bin 0x0
error writing to flash at address 0x00000000 at offset 0x00000000 (-304)
monitor reset run
JTAG device found: 0x4f1f0f0f (Manufacturer: 0x787, Part: 0xf1f0, Version: 0x4)
monitor sleep 500
monitor soft_reset_halt
requesting target halt and executing a soft reset
monitor arm7_9 force_hw_bkpts enable
force hardware breakpoints enabled
symbol-file main.out
thbreak main
Hardware assisted breakpoint 2 at 0x368: file main.c, line 96.
continue
Note: automatically using hardware breakpoints for read-only addresses.
main () at main.c:96
96		InitMAM();
mi_cmd_var_create: unable to create variable object
mi_cmd_var_create: unable to create variable object
mi_cmd_var_create: unable to create variable object
mi_cmd_var_create: unable to create variable object
mi_cmd_disassemble: Invalid filename.

I’m not sure why a restart seems to make it produce a different result. My guess is that I had a buggered debug session running.

I tried removing that auto-generated main.out breakpoint, and I simply stopped it on a break point of my choosing. That seems to have gotten it working. I can now stop the processor and see the registers ect. I’m curious what this auto-generated break point is for. Should I delete it or just leave it there. Does it have a purpose I’m not seeing? Should I be concerned about that “Invalid filename.”?

Thanks for the help. Now it’s time to see if I can migrate this jtag setup to my program.

Thanks for the utasker link. That modbus module has caught my eye.

I seem to still be running into problems. It again feels buggy, but I would also wager a guess that the issue is learning curve.

It appears that starting OCD is a fairly happy process. Here’s what I see and it’s consistent for each time I fire off OCD.

Open On-Chip Debugger 1.0 (2008-10-04-10:00) svn:exported
$URL: http://svn.berlios.de/svnroot/repos/openocd/trunk/src/openocd.c $
Info:    options.c:50 configuration_output_handler(): jtag_speed: 25, 25
Info:    options.c:50 configuration_output_handler(): Open On-Chip Debugger 1.0 (2008-10-04-10:00) svn:exported
Info:    jtag.c:1389 jtag_examine_chain(): JTAG device found: 0x4f1f0f0f (Manufacturer: 0x787, Part: 0xf1f0, Version: 0x4)
Warning: embeddedice.c:185 embeddedice_build_reg_cache(): EmbeddedICE version 7 detected, EmbeddedICE handling might be broken
Info:    jtag.c:1389 jtag_examine_chain(): JTAG device found: 0x4f1f0f0f (Manufacturer: 0x787, Part: 0xf1f0, Version: 0x4)

Then I start the debugger and it seems to fire off differently each time I start it. I just fired it off and it produced an error message this time. Here’s the message I got.

Execution is suspended because of error.
  Warning:
  Cannot insert hardware breakpoint 4.
  Could not insert hardware breakpoints:
  You may have requested too many hardware breakpoints/watchpoints.

And from the console window

Warning: /cygdrive/C/gccfd/projects/lpc2378/.settings: No such file or directory.
Warning: /cygdrive/C/gccfd/projects/lpc2378: No such file or directory.
mi_cmd_break_watch: Missing <expression>
No registers.
target remote localhost:3333
0x0000042c in main () at main.c:119
119			for (j = 0; j < 50000; j++ );		// wait 500 msec
monitor sleep 500
monitor poll
target state: halted
target halted in ARM state due to debug request, current mode: System
cpsr: 0x800000df pc: 0x0000042c
monitor flash probe 0
flash 'lpc2000' found at 0x00000000
monitor flash erase_sector 0 0 0
erased sectors 0 through 0 on flash bank 0 in 1.406250s
monitor flash write_image main.bin 0x0
wrote 1272 byte from file main.bin in 0.609375s (2.038462 kb/s)
monitor reset run
JTAG device found: 0x4f1f0f0f (Manufacturer: 0x787, Part: 0xf1f0, Version: 0x4)
monitor sleep 500
monitor soft_reset_halt
requesting target halt and executing a soft reset
Failed to halt CPU after 1 sec
monitor arm7_9 force_hw_bkpts enable
force hardware breakpoints enabled
symbol-file main.out
Hardware assisted breakpoint 5 at 0x368: file main.c, line 96.
Note: automatically using hardware breakpoints for read-only addresses.
thbreak main
continue
Warning:
Cannot insert hardware breakpoint 4.
Cannot insert hardware breakpoint 5.
Could not insert hardware breakpoints:
You may have requested too many hardware breakpoints/watchpoints.

Warning:
Cannot insert hardware breakpoint 4.
Could not insert hardware breakpoints:
You may have requested too many hardware breakpoints/watchpoints.

mi_cmd_var_create: unable to create variable object
mi_cmd_var_create: unable to create variable object
mi_cmd_var_create: unable to create variable object
mi_cmd_var_create: unable to create variable object
mi_cmd_disassemble: Invalid filename.
Cannot access memory at address 0x42c

So I click on the debugger, then I click the red stop box, then I relaunch the debugger. This time it fired off and stopped at the break point. Here’s what the console has to say.

Warning: /cygdrive/C/gccfd/projects/lpc2378/.settings: No such file or directory.
Warning: /cygdrive/C/gccfd/projects/lpc2378: No such file or directory.
mi_cmd_break_watch: Missing <expression>
No registers.
target remote localhost:3333
0x0000042c in main () at main.c:119
119			for (j = 0; j < 50000; j++ );		// wait 500 msec
monitor sleep 500
monitor poll
target state: running
monitor flash probe 0
flash 'lpc2000' found at 0x00000000
monitor flash erase_sector 0 0 0
failed erasing sectors 0 to 0 (-304)
monitor flash write_image main.bin 0x0
error writing to flash at address 0x00000000 at offset 0x00000000 (-304)
monitor reset run
JTAG device found: 0x4f1f0f0f (Manufacturer: 0x787, Part: 0xf1f0, Version: 0x4)
monitor sleep 500
monitor soft_reset_halt
requesting target halt and executing a soft reset
monitor arm7_9 force_hw_bkpts enable
force hardware breakpoints enabled
symbol-file main.out
thbreak main
Hardware assisted breakpoint 5 at 0x368: file main.c, line 96.
continue
Note: automatically using hardware breakpoints for read-only addresses.

Breakpoint 4, main () at main.c:118
118			FIO0SET |= 1<<21;
mi_cmd_var_create: unable to create variable object
mi_cmd_var_create: unable to create variable object
mi_cmd_var_create: unable to create variable object
mi_cmd_var_create: unable to create variable object
mi_cmd_disassemble: Invalid filename.

My first thought was that perhaps the JTAG is to fast, and I have failing bits. So in armusbocd.cfg I changed the jtag speed like this. jtag_speed 25 it was 50. However, I get the same results.

When it appears to work, it doesn’t seem to work reliably. For example, the first break point will include data from the registers and such. Then when I hit F8 to resume, and it hits that break point again, it fails to update the variable and notes it failed to communicate with the chip. However, I can’t get it to reproduce the issue right now.

I would wager a guess the issue is that I must be doing something not quite correctly. Any thoughts about why this appears to be acting buggy? Perhaps the same thing that is causing the failure to upload the break point, is the same issue that’s making it feel buggy. Seems like it has something to do with the soft reset process. Or at least that’s where it appears to go wonky on the bad run.

Here we go, I stopped the debugger, then fired it off again. Now I can stop at break points, but I keep getting these “can not access memory” messages, and the registers aren’t updating correctly in Eclipse. It also appears it again went wonky after the soft reset.

Warning: /cygdrive/C/gccfd/projects/lpc2378/.settings: No such file or directory.
Warning: /cygdrive/C/gccfd/projects/lpc2378: No such file or directory.
mi_cmd_break_watch: Missing <expression>
No registers.
target remote localhost:3333
main () at main.c:117
117				i=j;		// wait 500 msec
monitor sleep 500
target state: halted
target halted in ARM state due to breakpoint, current mode: System
cpsr: 0x800000df pc: 0x000003d8
monitor poll
monitor flash probe 0
flash 'lpc2000' found at 0x00000000
monitor flash erase_sector 0 0 0
erased sectors 0 through 0 on flash bank 0 in 1.406250s
monitor flash write_image main.bin 0x0
wrote 1280 byte from file main.bin in 0.562500s (2.222222 kb/s)
monitor reset run
JTAG device found: 0x4f1f0f0f (Manufacturer: 0x787, Part: 0xf1f0, Version: 0x4)
monitor sleep 500
monitor soft_reset_halt
requesting target halt and executing a soft reset
Failed to halt CPU after 1 sec
monitor arm7_9 force_hw_bkpts enable
force hardware breakpoints enabled
symbol-file main.out
thbreak main
Hardware assisted breakpoint 7 at 0x368: file main.c, line 96.
continue

Program received signal SIGINT, Interrupt.
main () at main.c:117
117				i=j;		// wait 500 msec
mi_cmd_var_create: unable to create variable object
mi_cmd_var_create: unable to create variable object
mi_cmd_var_create: unable to create variable object
mi_cmd_var_create: unable to create variable object
mi_cmd_disassemble: Invalid filename.
Cannot access memory at address 0x3d8
mi_cmd_disassemble: Invalid filename.
Cannot access memory at address 0x3d8
mi_cmd_disassemble: Invalid filename.
Cannot access memory at address 0x3d8
mi_cmd_disassemble: Invalid filename.
Cannot access memory at address 0x3d8
mi_cmd_disassemble: Invalid filename.
Cannot access memory at address 0x3d8

I wonder why it seems to fire off differently each time I fire it off. I also wonder what the commands under the debug config are actually doing. Are they programs that get fired off, are they JTAG commands that get sent down the buss, are they other? I don’t currently know. Once I know more I can start trying to figure out why the soft reset is unstable.

I have the jumper on dbd_e and they are removed from the two 232 ISP.