Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

No ACK when connecting to MAX32625PICO via USB #1674

Open
kbetts15 opened this issue Feb 18, 2024 · 0 comments
Open

No ACK when connecting to MAX32625PICO via USB #1674

kbetts15 opened this issue Feb 18, 2024 · 0 comments

Comments

@kbetts15
Copy link

OS: Windows 11
Python: 3.10.0
pyOCD: 0.36.0
Target: MAX32625PICO development board

I have a MAX32625PICO development board connected to my PC via a USB cable. Listing available devices (pyOCD list) successfully finds it:

  #   Probe/Board        Unique ID                                          Target
----------------------------------------------------------------------------------------
  0   Arm CMSIS-DAP v1   04161701a0b903f800000000000000000000000097969906   ✔︎ max32625
      Analog Devices     MAX32625PICO

However, when I try to reset it (pyOCD reset -v -v) I get:

>pyOCD reset -v -v
0001099 D Project directory: C:\Windows\System32 [session]
0001162 D Project directory: C:\Windows\System32 [session]
0001177 D CMSIS-DAP v1 probe 04161701a0b903f800000000000000000000000097969906: firmware version 0259, protocol version 2.1.0 [dap_access_cmsis_dap]
0001177 D closing interface [hidapi_backend]
0001193 I Target type is max32625 [board]
0001193 D Board: Analog Devices MAX32625PICO [cmsis_dap_probe]
0001193 D Target: Maxim MAX32625 [cmsis_dap_probe]
0001208 D Running task load_svd [sequencer]
0001208 D Running task pre_connect [sequencer]
0001208 D Running task dp_init [sequencer]
0001208 D Running task lock_probe [sequencer]
0001208 D Running task get_probe_capabilities [sequencer]
0001222 D Running task connect [sequencer]
0001240 D Default wire protocol selected; using SWD [dap]
0001256 D Sending deprecated SWJ sequence to select SWD [swj]
0001381 D DP IDCODE read failed; resending SWJ sequence (use dormant=False) [dap]
0001381 D Sending deprecated SWJ sequence to select SWD [swj]
0001397 D DP IDCODE read failed; resending SWJ sequence (use dormant=False) [dap]
0001397 D Sending SWJ sequence to select SWD; using dormant state [swj]
0001412 D DP IDCODE read failed; resending SWJ sequence (use dormant=False) [dap]
0001412 D Sending SWJ sequence to select SWD; using dormant state [swj]
0001428 D DP IDCODE read failed; resending SWJ sequence (use dormant=False) [dap]
0001428 D uninit session <pyocd.core.session.Session object at 0x000002602A4315A0> [session]
0001428 D closing interface [hidapi_backend]
0001428 C No ACK received [__main__]
Traceback (most recent call last):
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\probe\cmsis_dap_probe.py", line 539, in read_dp
    result = self._link.read_reg(reg_id, now=now)
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 1086, in read_reg
    return read_reg_cb()
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 1080, in read_reg_cb
    res = transfer.get_result()
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 161, in get_result
    self.daplink.flush()
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\utility\concurrency.py", line 29, in _locking
    return func(self, *args, **kwargs)
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 885, in flush
    self._read_packet()
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\utility\concurrency.py", line 29, in _locking
    return func(self, *args, **kwargs)
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 1166, in _read_packet
    decoded_data = cmd.decode_data(raw_data)
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 482, in decode_data
    data = self._decode_transfer_block_data(data)
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 451, in _decode_transfer_block_data
    self._check_response(data[3])
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 372, in _check_response
    raise DAPAccessIntf.TransferError("No ACK received")
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 "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\__main__.py", line 161, in run
    status = cmd.invoke()
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\subcommands\reset_cmd.py", line 107, in invoke
    session.open(init_board=(not is_hw_reset))
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\core\session.py", line 553, in open
    self._board.init()
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\board\board.py", line 143, in init
    self.target.init()
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\coresight\coresight_target.py", line 123, in init
    super().init()
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\core\soc_target.py", line 174, in init
    seq.invoke()
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\utility\sequencer.py", line 213, in invoke
    resultSequence.invoke()
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\utility\sequencer.py", line 208, in invoke
    resultSequence = call()
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\coresight\dap.py", line 467, in _connect
    connector.connect()
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\coresight\dap.py", line 257, in connect
    self._idr = self.read_idr()
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\coresight\dap.py", line 286, in read_idr
    dpidr = self._probe.read_dp(DP_IDR, now=True)
  File "C:\Users\kieran\AppData\Local\Programs\Python\Python310\lib\site-packages\pyocd\probe\cmsis_dap_probe.py", line 542, in read_dp
    raise self._convert_exception(error) from error
pyocd.core.exceptions.TransferError: No ACK received
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant