Hi Paul, Unfortunately flash programming doesn’t work. It might have seemed that it was working because the flash was already programmed.
This is the output of flash info 0: G: Flash protection check is not implemented. G: #0 : lpc55xx at 0x00000000, size 0x0009de00, buswidth 0, chipwidth 0 G: # 0: 0x00000000 (0x8000 32kB) protection state unknown G: # 1: 0x00008000 (0x8000 32kB) protection state unknown G: # 2: 0x00010000 (0x8000 32kB) protection state unknown G: # 3: 0x00018000 (0x8000 32kB) protection state unknown G: # 4: 0x00020000 (0x8000 32kB) protection state unknown G: # 5: 0x00028000 (0x8000 32kB) protection state unknown G: # 6: 0x00030000 (0x8000 32kB) protection state unknown G: # 7: 0x00038000 (0x8000 32kB) protection state unknown G: # 8: 0x00040000 (0x8000 32kB) protection state unknown G: # 9: 0x00048000 (0x8000 32kB) protection state unknown G: # 10: 0x00050000 (0x8000 32kB) protection state unknown G: # 11: 0x00058000 (0x8000 32kB) protection state unknown G: # 12: 0x00060000 (0x8000 32kB) protection state unknown G: # 13: 0x00068000 (0x8000 32kB) protection state unknown G: # 14: 0x00070000 (0x8000 32kB) protection state unknown G: # 15: 0x00078000 (0x8000 32kB) protection state unknown G: # 16: 0x00080000 (0x8000 32kB) protection state unknown G: # 17: 0x00088000 (0x8000 32kB) protection state unknown G: # 18: 0x00090000 (0x8000 32kB) protection state unknown G: # 19: 0x00098000 (0x5e00 23kB) protection state unknown G: Protocol error with Rcmd And here the output of programming: Info : CMSIS-DAP: Interface ready S: Info : clock speed 1000 kHz S: Info : SWD DPIDR 0x6ba02477 S: Info : [lpc55xx.cpu] Cortex-M33 r0p3 processor detected S: Info : [lpc55xx.cpu] target has 8 breakpoints, 4 watchpoints S: Info : [lpc55xx.cpu] Examination succeed S: Info : starting gdb server for lpc55xx.cpu on 50000 S: Info : Listening on port 50000 for gdb connections S: Info : accepting 'gdb' connection on tcp/50000 S: Error: [lpc55xx.cpu] DP initialisation failed S: Info : SWD DPIDR 0x6ba02477 S: [lpc55xx.cpu] halted due to debug-request, current mode: Thread S: xPSR: 0x09000000 pc: 0x130085ec msp: 0x30005f30 S: ** Programming Started ** S: Warn : Adding extra erase range, 0x0003fc00 .. 0x0003ffff S: Warn : keep_alive() was not invoked in the 1000 ms timelimit. GDB alive packet not sent! (9791 ms). Workaround: increase "set remotetimeout" in GDB S: ** Programming Finished ** S: Warn : negative acknowledgment, but no packet pending G: [Inferior 1 (Remote target) detached] I: GDB session ended. exit-code: 0 Op 6 mei 2025, om 17:06 heeft Paul Fertser <fercer...@gmail.com> het volgende geschreven: Hi Rolf, On Tue, May 06, 2025 at 11:39:39AM +0000, Rolf | Onethinx wrote: Autodetection works. } else if (device_id == 0x501000c5) { /* LPC55S6x/LPC55S2x/LPC552x */ rom_api_table = 0x130010f0; I am not sure what mask to use for the lookup of the rom API table, this is what I found: [1]GeplakteAfbeelding-1.png Thank you! Based on this table and your feedback I pushed a new version to https://review.openocd.org/c/openocd/+/8189 . Can you please confirm you're getting expected results ("flash info 0" shows what matches the datasheet, programming works (you should be able to flash both by -c "program ..." and with "load" command in GDB) etc? -- Be free, use free (http://www.gnu.org/philosophy/free-sw.html) software! mailto:fercer...@gmail.com