vllogic / vllink_lite

低成本CMSIS-DAP V2调试器,IO时序SPI优化,速度级别200KB/S至450KB/S
GNU General Public License v3.0
291 stars 81 forks source link

pyocd support -- No ACK received #6

Closed gerryqd closed 2 years ago

gerryqd commented 2 years ago

I tried to use the probe with latest pyocd, For "pyocd list" command, the probe can be recognized,

$ pyocd list
  #   Probe/Board             Unique ID                  Target
-----------------------------------------------------------------
  0   ARM DAPLink CMSIS-DAP   Vllink.Basic.BB7041D1766   n/a

While if I tried to connect the chip via below command, pyocd cmd -t stm32f103c8

It reports something as below, pyocd.core.exceptions.TransferError: No ACK received

Only in very seldom case, the connection can be established, while also not stable enough.

Could you help to have a check?

talpachen commented 2 years ago

试下OpenOCD,如果问题依然存在,说明更可能是硬件接触不良。 如果问题消失,需要排查pyOCD。

gerryqd commented 2 years ago

嗯, 这个实验过了。基本排除硬件连接问题。 Openocd 没问题。 应该要从固件和 pyocd 上找原因。 这不就找您来了。 :)


Openocd 好是好,但是, 添加新的 CPU支持麻烦, 特别是 flash 的烧写。 pyocd 就好很多。 直接加载已有的算法固件,直接烧写。 老大麻烦看看?

talpachen commented 2 years ago

最新pyocd对CMSIS-DAP V2免驱了,不需要用zadig换驱动,但出现了你指出的问题。换成老版本,用zadig打驱动后测试,恢复正常。


Desktop> pip install pyocd==0.27.0

Desktop> pyocd list
  #   Probe              Unique ID
---------------------------------------------------
  0   ARM CMSIS-DAP v2   GD32F350.745B343935380B0

Desktop> pyocd-gdbserver
0000413:WARNING:gdb_server:pyocd-gdbserver is deprecated; please use the new combined pyocd tool.
0000563:WARNING:board:Generic 'cortex_m' target type is selected by default; is this intentional? You will be able to debug most devices, but not program  flash. To set the target type use the '--target' argument or 'target_override' option. Use 'pyocd list --targets' to see available targets types.
0000563:INFO:board:Target type is cortex_m
0000615:INFO:dap:DP IDR = 0x2ba01477 (v1 rev2)
0000620:INFO:ap:AHB-AP#0 IDR = 0x24770011 (AHB-AP var1 rev2)
0000628:INFO:rom_table:AHB-AP#0 Class 0x1 ROM table #0 @ 0xe00ff000 (designer=43b part=4c4)
0000628:INFO:rom_table:[0]<e000e000:SCS-M4 class=14 designer=43b part=00c>
0000628:INFO:rom_table:[1]<e0001000:DWT class=14 designer=43b part=002>
0000628:INFO:rom_table:[2]<e0002000:FPB class=14 designer=43b part=003>
0000628:INFO:cortex_m:CPU core #0 is Cortex-M4 r0p1
0000628:INFO:cortex_m:FPU present: FPv4-SP
0000644:INFO:dwt:1 hardware watchpoints
0000644:INFO:fpb:2 hardware breakpoints, 0 literal comparators
0000644:INFO:server:Semihost server started on port 4444 (core 0)
0000644:INFO:gdbserver:GDB server started on port 3333 (core 0)