Merge branch 'docs/win_jtag_debugging' into 'master'

docs(jtag_debugging): Rewrite of configure part for Windows to reflect changes

Closes IDF-8479

See merge request espressif/esp-idf!31838
This commit is contained in:
Jakub Kocka 2024-07-18 16:05:42 +08:00
commit dcb34c5ffa
2 changed files with 40 additions and 24 deletions

View File

@ -37,11 +37,21 @@ Windows
2. Wait until USB ports of |devkit-name| are recognized by Windows and drives are installed. If they do not install automatically, then download them from https://ftdichip.com/drivers/d2xx-drivers/ and install manually.
3. Download Zadig tool (Zadig_X.X.exe) from https://zadig.akeo.ie/ and run it.
3. Download |devkit-name| driver from https://github.com/espressif/esp-win-usb-drivers/releases. Extract the driver files and `install the driver <https://learn.microsoft.com/en-us/windows-hardware/drivers/ifs/using-an-inf-file-to-install-a-file-system-filter-driver#right-click-install>`_. This should change the driver for Dual RS232-HS (Interface 0).
4. In Zadig tool go to "Options" and check "List All Devices".
4. Now |devkit-name|'s JTAG interface should be available to the OpenOCD. To carry on with the debugging environment setup, proceed to section :ref:`jtag-debugging-run-openocd`.
5. Check the list of devices that should contain two |devkit-name| specific USB entries: "Dual RS232-HS (Interface 0)" and "Dual RS232-HS (Interface 1)". The driver name would be "FTDIBUS (vxxxx)" and USB ID: 0403 6010.
.. note::
If the driver installation fails or OpenOCD is not working try the following manual driver change. Otherwise, this can be skipped.
Windows - manual driver change
""""""""""""""""""""""""""""""
1. Download Zadig tool (Zadig_X.X.exe) from https://zadig.akeo.ie/ and run it.
2. In Zadig tool go to `Options` and check `List All Devices`.
3. Check the list of devices that should contain two |devkit-name| specific USB entries: `Dual RS232-HS (Interface 0)` and `Dual RS232-HS (Interface 1)`. The driver name would be `FTDIBUS (vxxxx)` and USB ID: 0403 6010.
.. figure:: ../../../_static/jtag-usb-configuration-zadig.jpg
:align: center
@ -50,13 +60,11 @@ Windows
Configuration of JTAG USB driver in Zadig tool
6. The first device (Dual RS232-HS (Interface 0)) is connected to the JTAG port of the {IDF_TARGET_NAME}. Original "FTDIBUS (vxxxx)" driver of this device should be replaced with "WinUSB (v6xxxxx)". To do so, select "Dual RS232-HS (Interface 0) and reinstall attached driver to the "WinUSB (v6xxxxx)", see picture above.
4. The first device (Dual RS232-HS (Interface 0)) is connected to the JTAG port of the {IDF_TARGET_NAME}. Original `FTDIBUS (vxxxx)` driver of this device should be replaced with `WinUSB (v6xxxxx)`. To do so, select "Dual RS232-HS (Interface 0) and reinstall attached driver to the "WinUSB (v6xxxxx)", see picture above.
.. note::
Do not change the second device "Dual RS232-HS (Interface 1)". It is routed to {IDF_TARGET_NAME}'s serial port (UART) used for upload of application to {IDF_TARGET_NAME}'s flash.
Now |devkit-name|'s JTAG interface should be available to the OpenOCD. To carry on with debugging environment setup, proceed to section :ref:`jtag-debugging-run-openocd`.
Do not change the second device `Dual RS232-HS (Interface 1)`. It is routed to {IDF_TARGET_NAME}'s serial port (UART) used for upload of application to {IDF_TARGET_NAME}'s flash.
Linux
@ -104,7 +112,7 @@ On macOS, using FT2232 for JTAG and serial port at the same time needs some addi
Manually unloading the driver
.............................
1. Install FTDI driver from https://ftdichip.com/drivers/vcp-drivers/
1. Install FTDI driver from `FTDI official website <https://ftdichip.com/drivers/vcp-drivers/>`_.
2. Connect USB cable to the |devkit-name|.

View File

@ -7,7 +7,7 @@
:link_to_translation:`en:[English]`
所有版本的 |devkit-name| 板都内置了 JTAG 调试功能,要使其正常工作,还需要设置相关跳帽来启用 JTAG 功能,设置 SPI 闪存电压和配置 USB 驱动程序。具体步骤请参考以下说明。
所有版本的 |devkit-name| 开发板都内置了 JTAG 调试功能,要使其正常工作,还需要设置相关跳帽或 DIP 开关来启用 JTAG 功能,并配置 USB 驱动程序。具体步骤请参考以下说明。
配置硬件
^^^^^^^^
@ -33,15 +33,25 @@
Windows
"""""""
1. 使用标准 USB A/micro USB B 线将 |devkit-name| 与计算机相连接,并打开板的电源。
1. 使用标准 USB A/micro USB B 线将 |devkit-name| 与计算机相连接,并打开开发板的电源。
2. 等待 Windows 识别出 |devkit-name| 并且为其安装驱动。如果驱动没有被自动安装,请前往 `官网 <https://ftdichip.com/drivers/d2xx-drivers/>`_ 下载并手动安装。
3. `Zadig 官网 <http://zadig.akeo.ie/>`_ 下载 Zadig 工具Zadig_X.X.exe并运行
3. 访问 https://github.com/espressif/esp-win-usb-drivers/releases 下载 |devkit-name| 驱动程序。解压驱动程序文件并 `安装驱动程序 <https://learn.microsoft.com/en-us/windows-hardware/drivers/ifs/using-an-inf-file-to-install-a-file-system-filter-driver#right-click-install>`_。这会更改 Dual RS232-HS (Interface 0) 的驱动程序
4. 在 Zadig 工具中,进入 “Options” 菜单中选中 “List All Devices”
4. 现在,|devkit-name| 的 JTAG 接口应该可以被 OpenOCD 使用了,想要进一步设置调试环境,请前往 :ref:`jtag-debugging-run-openocd` 章节
5. 检查设备列表,其中应该包含两条与 |devkit-name| 相关的条目“Dual RS232-HS (Interface 0)” 和 “Dual RS232-HS (Interface 1)”。驱动的名字应该是 “FTDIBUS (vxxxx)” 并且 USB ID 为0403 6010。
.. note::
如果驱动程序安装失败或 OpenOCD 无法运行,尝试以下步骤手动更改驱动程序。否则,可以跳过以下步骤。
Windows - 手动更改驱动程序
""""""""""""""""""""""""""""""""""""
1. 从 https://zadig.akeo.ie/ 下载 Zadig 工具 (Zadig_X.X.exe) 并运行。
2. 在 Zadig 工具中进入 `Options`,选中 `List All Devices`
3. 检查设备列表,其中应该包含两条与 |devkit-name| 相关的条目: `Dual RS232-HS (Interface 0)``Dual RS232-HS (Interface 1)`。驱动的名字应为 `FTDIBUS (vxxxx)` 并且 USB ID 为0403 6010。
.. figure:: ../../../_static/jtag-usb-configuration-zadig.jpg
:align: center
@ -50,23 +60,21 @@ Windows
在 Zadig 工具中配置 JTAG USB 驱动
6. 第一个设备 “Dual RS232-HS (Interface 0)” 连接到了 {IDF_TARGET_NAME} 的 JTAG 端口,此设备原来的 “FTDIBUS (vxxxx)” 驱动需要替换成 "WinUSB (v6xxxxx)"。为此,请选择 “Dual RS232-HS (Interface 0)” 并将驱动重新安装为 “WinUSB (v6xxxxx)”,具体可以参考上图。
4. 第一个设备 (Dual RS232-HS (Interface 0)) 连接到了 {IDF_TARGET_NAME} 的 JTAG 端口,此设备原来的 `FTDIBUS (vxxxx)` 驱动程序需替换为 `WinUSB (v6xxxxx)`。为此,请选择 `Dual RS232-HS(Interface 0)` 并将驱动程序重新安装为 `WinUSB (v6xxxxx)`,见上图。
.. note::
请勿更改第二个设备 “Dual RS232-HS (Interface 1)” 的驱动,它被连接到 {IDF_TARGET_NAME} 的串口 (UART),用于上传应用程序映像给 {IDF_TARGET_NAME} 进行烧写。
现在,|devkit-name| 的 JTAG 接口应该可以被 OpenOCD 使用了,想要进一步设置调试环境,请前往 :ref:`jtag-debugging-run-openocd` 章节。
请勿更改第二个设备 `Dual RS232-HS (Interface 1)` 的驱动,它被连接到 {IDF_TARGET_NAME} 的串口 (UART),用于上传应用程序映像给 {IDF_TARGET_NAME} 进行烧写。
Linux
"""""
1. 使用标准 USB A/micro USB B 线将 |devkit-name| 与计算机相连接,并打开板子的电源。
1. 使用标准 USB A/micro USB B 线将 |devkit-name| 与计算机相连接,并打开开发板电源。
.. highlight:: none
2. 打开终端,输入 ``ls -l /dev/ttyUSB*`` 命令检查操作系统是否能够识别板的 USB 端口。类似识别结果如下:
2. 打开终端,输入 ``ls -l /dev/ttyUSB*`` 命令检查操作系统是否能够识别开发板的 USB 端口。类似识别结果如下:
::
@ -77,7 +85,7 @@ Linux
3. 设置 OpenOCD 所支持 USB 设备的访问权限,请将 `udev 规则文件 <https://github.com/espressif/openocd-esp32/blob/master/contrib/60-openocd.rules>`_ 复制到 ``/etc/udev/rules.d`` 目录中。
4. 注销并重新登录 Linux 系统,然后重新插拔板子的电源使之前的改动生效。在终端再次输入 ``ls -l /dev/ttyUSB*`` 命令进行验证,查看这两个设备的组所有者是否已经从 ``dialout`` 更改为 ``plugdev``:
4. 注销并重新登录 Linux 系统,然后重新插拔开发板电源使之前的改动生效。在终端再次输入 ``ls -l /dev/ttyUSB*`` 命令进行验证,查看这两个设备的组所有者是否已经从 ``dialout`` 更改为 ``plugdev``:
::
@ -149,7 +157,7 @@ MacOS
.. note::
其他板可能将通道 A 用于 JTAG因此请谨慎使用此选项。
其他开发板可能将通道 A 用于 JTAG因此请谨慎使用此选项。
.. warning::
@ -182,7 +190,7 @@ MacOS
<integer>1027</integer>
</dict>
3. 保存并关闭文件
3. 保存并关闭文件
4. 禁用驱动的签名认证:
@ -196,8 +204,8 @@ MacOS
csrutil enable --without kext
5. 再一次重启系统
5. 再一次重启系统
完成这些步骤后,可以同时使用串口和 JTAG 接口了。
完成这些步骤后,可以同时使用串口和 JTAG 接口了。
想要进一步设置调试环境,请前往 :ref:`jtag-debugging-run-openocd` 章节。