Skip to content

Commit efdfec0

Browse files
committed
feat(esp32c3): Add support for esp32c3
1 parent 6d24440 commit efdfec0

File tree

16 files changed

+1669
-130
lines changed

16 files changed

+1669
-130
lines changed

README.md

Lines changed: 52 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
test
21
<p align="center"><img src="https://user-images.githubusercontent.com/17078589/120061980-49274280-c092-11eb-9916-4965f6c48388.png"/></p>
32

43
![image](https://user-images.githubusercontent.com/17078589/107857220-05ecef00-6e68-11eb-9fa0-506b32052dba.png)
@@ -30,6 +29,7 @@ For Keil users, we now also support [elaphureLink](https://github.com/windowsair
3029
1. SoC Compatibility
3130
- [x] ESP8266/8285
3231
- [x] ESP32
32+
- [x] ESP32C3
3333

3434
2. Debug Communication Mode
3535
- [x] SWD
@@ -43,7 +43,8 @@ For Keil users, we now also support [elaphureLink](https://github.com/windowsair
4343
- [x] Uart TCP Bridge
4444

4545
5. More..
46-
- [x] SWD protocol based on SPI acceleration
46+
- [x] SWD protocol based on SPI acceleration (Up to 40MHz)
47+
- [x] Support for [elaphureLink](https://github.com/windowsair/elaphureLink), fast Keil debug without drivers
4748
- [x] ...
4849

4950

@@ -138,8 +139,48 @@ There is built-in ipv4 only mDNS server. You can access the device using `dap.lo
138139
| Other | |
139140
|--------------------|---------------|
140141
| LED\_WIFI\_STATUS | GPIO27 |
141-
| Tx | GPIO10 |
142-
| Rx | GPIO9 |
142+
| Tx | GPIO23 |
143+
| Rx | GPIO22 |
144+
145+
146+
> Rx and Tx is used for uart bridge, not enabled by default.
147+
148+
149+
</details>
150+
151+
152+
<details>
153+
<summary>ESP32C3</summary>
154+
155+
| SWD | |
156+
|----------------|--------|
157+
| SWCLK | GPIO6 |
158+
| SWDIO | GPIO7 |
159+
| TVCC | 3V3 |
160+
| GND | GND |
161+
162+
163+
--------------
164+
165+
166+
| JTAG | |
167+
|--------------------|---------|
168+
| TCK | GPIO6 |
169+
| TMS | GPIO7 |
170+
| TDI | GPIO9 |
171+
| TDO | GPIO8 |
172+
| nTRST \(optional\) | GPIO4 |
173+
| nRESET | GPIO5 |
174+
| TVCC | 3V3 |
175+
| GND | GND |
176+
177+
--------------
178+
179+
| Other | |
180+
|--------------------|---------------|
181+
| LED\_WIFI\_STATUS | GPIO10 |
182+
| Tx | GPIO19 |
183+
| Rx | GPIO18 |
143184

144185

145186
> Rx and Tx is used for uart bridge, not enabled by default.
@@ -204,11 +245,11 @@ python ./idf.py -p /dev/ttyS5 flash
204245

205246

206247
<details>
207-
<summary>ESP32</summary>
248+
<summary>ESP32/ESP32C3</summary>
208249

209250
1. Get esp-idf
210251

211-
For now, please use esp-idf v4.2: https://github.com/espressif/esp-idf/releases/tag/v4.2
252+
For now, please use esp-idf v4.4.2 : https://github.com/espressif/esp-idf/releases/tag/v4.4.2
212253

213254
2. Build & Flash
214255

@@ -239,20 +280,20 @@ idf.py -p /dev/ttyS5 flash
239280
- Windows: [usbip-win](https://github.com/cezanne/usbip-win) .
240281
- Linux: Distributed as part of the Linux kernel, but we have not yet tested on Linux platform, and the following instructions are all under Windows platform.
241282

242-
2. Start esp8266 and connect it to the device to be debugged
283+
2. Start ESP chip and connect it to the device to be debugged
243284

244285
3. Connect it with usbip:
245286

246287
```bash
247288
# HID Mode only
248289
# for pre-compiled version on SourceForge
249290
# or usbip old version
250-
.\usbip.exe -D -a <your-esp8266-ip-address> 1-1
291+
.\usbip.exe -D -a <your-esp-device-ip-address> 1-1
251292

252293
# 👉 Recommend
253294
# HID Mode Or WinUSB Mode
254295
# for usbip-win 0.3.0 kmdf ude
255-
.\usbip.exe attach_ude -r <your-esp8266-ip-address> -b 1-1
296+
.\usbip.exe attach_ude -r <your-esp-device-ip-address> -b 1-1
256297

257298
```
258299

@@ -330,7 +371,7 @@ When this project is updated, you can update the firmware over the air.
330371
Visit the following website for OTA operations: [online OTA](http://corsacota.surge.sh/?address=dap.local:3241)
331372

332373

333-
For most ESP8266 devices, you don't need to care about flash size. However, improper setting of the flash size may cause the OTA to fail. In this case, please change the flash size with `idf.py menuconfig`, or modify `sdkconfig`:
374+
For most devices, you don't need to care about flash size. However, improper setting of the flash size may cause the OTA to fail. In this case, please change the flash size with `idf.py menuconfig`, or modify `sdkconfig`:
334375

335376
```
336377
# Choose a flash size.
@@ -378,7 +419,7 @@ Recv data <- TCP <- Uart Rx <- external devices
378419

379420
![uart_tcp_bridge](https://user-images.githubusercontent.com/17078589/150290065-05173965-8849-4452-ab7e-ec7649f46620.jpg)
380421

381-
When the TCP connection is established, bridge will try to resolve the text sent for the first time. When the text is a valid baud rate, bridge will switch to it.
422+
When the TCP connection is established, bridge will try to resolve the text sent for the first packet. When the text is a valid baud rate, bridge will switch to it.
382423
For example, sending the ASCII text `115200` will switch the baud rate to 115200.
383424

384425

README_CN.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
<p align="center"><b>请注意:不同语言版本的翻译可能落后于项目的原始文档。请以原始文档为准。</b></p>
2+
13
<p align="center"><img src="https://user-images.githubusercontent.com/17078589/120061980-49274280-c092-11eb-9916-4965f6c48388.png"/></p>
24

35
![image](https://user-images.githubusercontent.com/17078589/107857220-05ecef00-6e68-11eb-9fa0-506b32052dba.png)

0 commit comments

Comments
 (0)