pyocd / pyocd/pyOCD

Regarding the problem with RT1052 errors

Open
#1,028 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
1.5k
Forks
560
Avg merge
1h 41m
Merged PRs (30d)
3

Description

I installed the PACK for RT1011 and then downloaded the HEX file using the Flash command, prompting me for the following information:
0000344:WARNING:cmsis_pack:Overlapping memory regions in file <zipfile.ZipFile filename='NXP.MIMXRT1011_DFP.12.1.0.pack' mode='r'>, deleting outer region. Further warnings will be suppressed for this file.
0000345:WARNING:cmsis_pack:CMSIS-Pack device MIMXRT1011xxxxx has no identifiable boot memory
0000725:WARNING:file_programmer:Failed to add data chunk: no memory region defined for address 0x60000400
0000726:INFO:loader:Erased 0 bytes (0 sectors), programmed 0 bytes (0 pages), skipped 0 bytes (0 pages) at 0.00 kB/s

When I added :memory id="IROM1" start="0x60000000" size="0x01000000" startup="1" default="1", I got the following information:
0000347:WARNING:cmsis_pack:Overlapping memory regions in file <zipfile.ZipFile filename='NXP.MIMXRT1011_DFP.12.1.0.pack' mode='r'>, deleting outer region. Further warnings will be suppressed for this file.
0000963:ERROR:board:link exception during target disconnect:
Traceback (most recent call last):
File "pyocd\probe\cmsis_dap_probe.py", line 285, in read_ap_result_callback
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 833, in read_reg_cb
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 143, in get_result
File "pyocd\utility\concurrency.py", line 28, in _locking
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 667, in flush
File "pyocd\utility\concurrency.py", line 28, in _locking
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 918, in _read_packet
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 451, in decode_data
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 358, in _decode_transfer_data
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 341, in _check_response
pyocd.probe.pydapaccess.dap_access_api.DAPAccessIntf.TransferError: No ACK received

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "pyocd_main_.py", line 524, in do_flash
File "pyocd\flash\file_programmer.py", line 158, in program
File "pyocd\flash\loader.py", line 164, in commit
File "pyocd\flash\builder.py", line 421, in program
File "pyocd\flash\builder.py", line 319, in _build_sectors_and_pages
File "pyocd\flash\builder.py", line 263, in fill_end_of_page_gap
File "pyocd\flash\builder.py", line 222, in _enable_read_access
File "pyocd\flash\flash.py", line 245, in init
File "pyocd\flash\flash.py", line 585, in _call_function_and_wait
File "pyocd\flash\flash.py", line 533, in wait_for_completion
File "pyocd\core\soc_target.py", line 222, in get_state
File "pyocd\coresight\cortex_m.py", line 828, in get_state
File "pyocd\coresight\cortex_m.py", line 436, in read_memory
File "pyocd\utility\concurrency.py", line 28, in _locking
File "pyocd\coresight\ap.py", line 883, in _read_memory
File "pyocd\coresight\ap.py", line 864, in read_mem_cb
File "pyocd\coresight\dap.py", line 603, in read_ap_cb
File "pyocd\probe\cmsis_dap_probe.py", line 287, in read_ap_result_callback
File "", line 3, in raise_from
pyocd.core.exceptions.TransferError: No ACK received

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "pyocd\probe\cmsis_dap_probe.py", line 285, in read_ap_result_callback
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 833, in read_reg_cb
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 143, in get_result
File "pyocd\utility\concurrency.py", line 28, in _locking
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 667, in flush
File "pyocd\utility\concurrency.py", line 28, in _locking
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 918, in _read_packet
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 451, in decode_data
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 358, in _decode_transfer_data
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 341, in _check_response
pyocd.probe.pydapaccess.dap_access_api.DAPAccessIntf.TransferError: No ACK received

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "pyocd\board\board.py", line 98, in uninit
File "pyocd\core\soc_target.py", line 134, in disconnect
File "pyocd\coresight\cortex_m.py", line 324, in disconnect
File "pyocd\coresight\cortex_m.py", line 867, in resume
File "pyocd\coresight\cortex_m.py", line 828, in get_state
File "pyocd\coresight\cortex_m.py", line 436, in read_memory
File "pyocd\utility\concurrency.py", line 28, in _locking
File "pyocd\coresight\ap.py", line 883, in _read_memory
File "pyocd\coresight\ap.py", line 864, in read_mem_cb
File "pyocd\coresight\dap.py", line 603, in read_ap_cb
File "pyocd\probe\cmsis_dap_probe.py", line 287, in read_ap_result_callback
File "", line 3, in raise_from
pyocd.core.exceptions.TransferError: No ACK received
0000973:CRITICAL:main:No ACK received
Traceback (most recent call last):
File "pyocd\probe\cmsis_dap_probe.py", line 285, in read_ap_result_callback
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 833, in read_reg_cb
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 143, in get_result
File "pyocd\utility\concurrency.py", line 28, in _locking
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 667, in flush
File "pyocd\utility\concurrency.py", line 28, in _locking
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 918, in _read_packet
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 451, in decode_data
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 358, in _decode_transfer_data
File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 341, in _check_response
pyocd.probe.pydapaccess.dap_access_api.DAPAccessIntf.TransferError: No ACK received

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "pyocd_main_.py", line 362, in run
File "pyocd_main_.py", line 524, in do_flash
File "pyocd\flash\file_programmer.py", line 158, in program
File "pyocd\flash\loader.py", line 164, in commit
File "pyocd\flash\builder.py", line 421, in program
File "pyocd\flash\builder.py", line 319, in _build_sectors_and_pages
File "pyocd\flash\builder.py", line 263, in fill_end_of_page_gap
File "pyocd\flash\builder.py", line 222, in _enable_read_access
File "pyocd\flash\flash.py", line 245, in init
File "pyocd\flash\flash.py", line 585, in _call_function_and_wait
File "pyocd\flash\flash.py", line 533, in wait_for_completion
File "pyocd\core\soc_target.py", line 222, in get_state
File "pyocd\coresight\cortex_m.py", line 828, in get_state
File "pyocd\coresight\cortex_m.py", line 436, in read_memory
File "pyocd\utility\concurrency.py", line 28, in _locking
File "pyocd\coresight\ap.py", line 883, in _read_memory
File "pyocd\coresight\ap.py", line 864, in read_mem_cb
File "pyocd\coresight\dap.py", line 603, in read_ap_cb
File "pyocd\probe\cmsis_dap_probe.py", line 287, in read_ap_result_callback
File "", line 3, in raise_from
pyocd.core.exceptions.TransferError: No ACK received

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at pyocd/main.py do_flash and follow the traceback through flash/file_programmer.py, flash/loader.py, flash/builder.py, and coresight/cortex_m.py. Reproduce the RT1011 HEX programming attempt with the NXP.MIMXRT1011_DFP.12.1.0.pack file and inspect the reported memory-region and transfer errors. Done means the documented target can be programmed without the no-memory-region or No ACK received failures.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
embedded-iot, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.