From bd682033e74e8c5500fd8cb3302705ad41538fda Mon Sep 17 00:00:00 2001
From: windowsair <msdn_02@sina.com>
Date: Wed, 12 Jun 2024 20:59:12 +0800
Subject: [PATCH] docs: Update for elaphure-dap.js

(cherry picked from commit 52e2d84acf8fb9e4cadd5252282d1031480df994)
---
 README.md    | 107 +++++++++++++++++++++++++++++++++------------------
 README_CN.md |  68 +++++++++++++++-----------------
 2 files changed, 101 insertions(+), 74 deletions(-)

diff --git a/README.md b/README.md
index 0798fe5..24fd651 100644
--- a/README.md
+++ b/README.md
@@ -20,7 +20,7 @@ For Keil users, we now also support [elaphureLink](https://github.com/windowsair
     - [x] ESP32
     - [x] ESP32C3
     - [x] ESP32S3
-    
+
 2. Debug Communication Mode
     - [x] SWD
     - [x] JTAG
@@ -35,6 +35,8 @@ For Keil users, we now also support [elaphureLink](https://github.com/windowsair
 5. More..
     - [x] SWD protocol based on SPI acceleration (Up to 40MHz)
     - [x] Support for [elaphureLink](https://github.com/windowsair/elaphureLink), fast Keil debug without drivers
+    - [x] Support for [elaphure-dap.js](https://github.com/windowsair/elaphure-dap.js), online ARM Cortex-M firmware flash
+    - [x] Support for OpenOCD/pyOCD
     - [x] ...
 
 
@@ -43,14 +45,53 @@ For Keil users, we now also support [elaphureLink](https://github.com/windowsair
 
 ### WIFI
 
+The default connected WIFI SSID is `无线DAP` , password `12345678`
+
+Support for specifying multiple possible WAP. It can be added here: [wifi_configuration.h](main/wifi_configuration.h)
+
+You can also specify your IP in the above file (We recommend using the static address binding feature of the router).
+
+![WIFI](https://user-images.githubusercontent.com/17078589/118365659-517e7880-b5d0-11eb-9a5b-afe43348c2ba.png)
+
 
 There is built-in ipv4 only mDNS server. You can access the device using `dap.local`.
 
 ![mDNS](https://user-images.githubusercontent.com/17078589/149659052-7b29533f-9660-4811-8125-f8f50490d762.png)
 
 
+
 ### Debugger
 
+
+
+<details>
+<summary>ESP32</summary>
+
+| SWD            |        |
+|----------------|--------|
+| SWCLK          | GPIO14 |
+| SWDIO          | GPIO13 |
+| TVCC           | 3V3    |
+| GND            | GND    |
+
+
+--------------
+
+
+| JTAG               |         |
+|--------------------|---------|
+| TCK                | GPIO14  |
+| TMS                | GPIO13  |
+| TDI                | GPIO18  |
+| TDO                | GPIO19  |
+| nTRST \(optional\) | GPIO25  |
+| nRESET             | GPIO26  |
+| TVCC               | 3V3     |
+| GND                | GND     |
+
+</details>
+
+
 <details>
 <summary>ESP32C3</summary>
 
@@ -80,32 +121,6 @@ There is built-in ipv4 only mDNS server. You can access the device using `dap.lo
 </details>
 
 
-
-<details>
-<summary>ESP32</summary>
-
-| SWD            |        |
-|----------------|--------|
-| SWCLK          | GPIO14 |
-| SWDIO          | GPIO13 |
-| TVCC           | 3V3    |
-| GND            | GND    |
-
---------------
-
-| JTAG               |         |
-|--------------------|---------|
-| TCK                | GPIO14  |
-| TMS                | GPIO13  |
-| TDI                | GPIO18  |
-| TDO                | GPIO19  |
-| nTRST \(optional\) | GPIO25  |
-| nRESET             | GPIO26  |
-| TVCC               | 3V3     |
-| GND                | GND     |
-
-</details>
-
 <details>
 <summary>ESP32S3</summary>
 
@@ -134,7 +149,6 @@ There is built-in ipv4 only mDNS server. You can access the device using `dap.lo
 
 </details>
 
-
 ----
 
 
@@ -247,18 +261,12 @@ When you select max clock, we will take the following actions:
 
 This project was originally designed to run on Keil, but now you can also perform firmware flash on OpenOCD.
 
-Note that if you want to use a 40MHz SPI acceleration, you need to specify the speed after the target device is connected, otherwise it will fail with the beginning.
-
 ```bash
-# Run before approaching the flash command
-> adapter speed 10000
-
 > halt
 > flash write_image [erase] [unlock] filename [offset] [type]
 ```
 
-> Keil's timing handling is somewhat different from OpenOCD's. For example, OpenOCD lacks the SWD line reset sequence before reading the `IDCODE` registers.
-
+> pyOCD is now supported.
 
 ### Uart TCP Bridge
 
@@ -267,8 +275,6 @@ TCP server on PORT 1234.
 UART default baud: 74880
 
 This feature provides a bridge between TCP and Uart:
-
-
 ```
 Send data   ->  TCP  ->  Uart TX -> external devices
 
@@ -313,6 +319,30 @@ For example, sending the ASCII text `115200` will switch the baud rate to 115200
 
 </details>
 
+2020.12.1
+
+TCP transmission speed needs to be further improved.
+
+2020.11.11
+
+Winusb is now available, but it is very slow.
+
+
+2020.2.4
+
+Due to the limitation of USB-HID (I'm not sure if this is a problem with USBIP or Windows), now each URB packet can only reach 255 bytes (About 1MBps bandwidth), which has not reached the upper limit of ESP8266 transmission bandwidth.
+
+I now have an idea to construct a Man-in-the-middle between the two to forward traffic, thereby increasing the bandwidth of each transmission.
+
+2020.1.31
+
+At present, the adaptation to WCID, WinUSB, etc. has all been completed. However, when transmitting data on the endpoint, we received an error message from USBIP. This is most likely a problem with the USBIP project itself.
+
+Due to the completeness of the USBIP protocol document, we have not yet understood its role in the Bulk transmission process, which may also lead to errors in subsequent processes.
+
+We will continue to try to make it work on USB HID. Once the USBIP problem is solved, we will immediately transfer it to work on WinUSB
+
+
 ------
 
 ## Credit
@@ -334,4 +364,5 @@ Credits to the following project, people and organizations:
 
 ## License
 
-[Apache2.0 LICENSE](LICENSE)
+[MIT LICENSE](LICENSE)
+
diff --git a/README_CN.md b/README_CN.md
index d00f78a..7bd5d2f 100644
--- a/README_CN.md
+++ b/README_CN.md
@@ -29,14 +29,16 @@
 
 5. 其它
     - [x] 通过SPI接口加速的SWD协议(最高可达40MHz)
-    - [x] 支持[elaphureLink](https://github.com/windowsair/elaphureLink),无需驱动的快速Keil调试
+    - [x] 支持 [elaphureLink](https://github.com/windowsair/elaphureLink),无需驱动的快速Keil 调试
+    - [x] 支持 [elaphure-dap.js](https://github.com/windowsair/elaphure-dap.js),网页端的 ARM Cortex-M 设备固件烧录调试
+    - [x] 支持 OpenOCD/pyOCD
     - [x] ...
 
 ## 连接你的开发板
 
 ### WIFI连接
 
-
+固件默认的WIFI SSID是`无线DAP`或者`OTA`,密码是`12345678`。
 
 固件中已经内置了一个mDNS服务。你可以通过`dap.local`的地址访问到设备。
 
@@ -45,6 +47,32 @@
 
 ### 调试接口连接
 
+
+<details>
+<summary>ESP32</summary>
+
+| SWD            |        |
+|----------------|--------|
+| SWCLK          | GPIO14 |
+| SWDIO          | GPIO13 |
+| TVCC           | 3V3    |
+| GND            | GND    |
+
+--------------
+
+| JTAG               |         |
+|--------------------|---------|
+| TCK                | GPIO14  |
+| TMS                | GPIO13  |
+| TDI                | GPIO18  |
+| TDO                | GPIO19  |
+| nTRST \(optional\) | GPIO25  |
+| nRESET             | GPIO26  |
+| TVCC               | 3V3     |
+| GND                | GND     |
+
+</details>
+
 <details>
 <summary>ESP32C3</summary>
 
@@ -69,31 +97,6 @@
 | GND                | GND     |
 
 
-</details>
-
-<details>
-<summary>ESP32</summary>
-
-| SWD            |        |
-|----------------|--------|
-| SWCLK          | GPIO14 |
-| SWDIO          | GPIO13 |
-| TVCC           | 3V3    |
-| GND            | GND    |
-
---------------
-
-| JTAG               |         |
-|--------------------|---------|
-| TCK                | GPIO14  |
-| TMS                | GPIO13  |
-| TDI                | GPIO18  |
-| TDO                | GPIO19  |
-| nTRST \(optional\) | GPIO25  |
-| nRESET             | GPIO26  |
-| TVCC               | 3V3     |
-| GND                | GND     |
-
 </details>
 
 <details>
@@ -158,9 +161,6 @@ idf.py -p /dev/ttyS5 flash
 
 > 位于项目根目录的`idf.py`脚本仅适用于较老的ESP8266设备,请不要在ESP32设备上使用。
 
-
-> 我们还提供了预编译固件用于快速评估。详见 [Releases](https://github.com/windowsair/wireless-esp8266-dap/releases)
-
 </details>
 
 ## 使用
@@ -228,17 +228,13 @@ idf.py -p /dev/ttyS5 flash
 ### 对于OpenOCD用户
 
 这个项目最初是为在Keil上运行而设计的,但现在你也可以在OpenOCD上通过它来烧录程序。
-注意,如果你想使用40MHz的SPI加速器,你需要在连接目标设备后指定速度,否则会在开始时失败。
 
 ```bash
-# 在使用flash指令前需要先运行:
-> adapter speed 10000
-
 > halt
 > flash write_image [erase] [unlock] filename [offset] [type]
 ```
 
-> Keil的操作时序与OpenOCD的有些不同。例如,OpenOCD在读取 "IDCODE "寄存器之前缺少SWD线复位序列。
+> 现已支持 pyOCD
 
 ### TCP转发的串口
 
@@ -278,4 +274,4 @@ TCP端口:1234
 
 
 ## 许可证
-[Apache 2.0 许可证](LICENSE)
+[MIT 许可证](LICENSE)