-
Notifications
You must be signed in to change notification settings - Fork 32
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
Feature Request: Upgrade WCH-Link firmware #42
Comments
hi |
It's already displayed in basic logging:
v31 is used by official tools. |
I connect wch-linkE only, wutout targer cpu and run wlink.exe -v wlink.exe -v if I run command wlink.exe status Caused by: i start wlink.exe on WIN10 OS |
A new "list" subcommand is added recently. |
I have the first WCH-Link, the one based on CH549. So I tried upgrading the WCH-Link firmware, using the file
Do you have any idea? Would I need to flash one of those EDIT: I flashed the |
[Info] temp firmware-upgrade solution without windows. Please refer to https://github.com/cjacker/opensource-toolchain-ch32v?tab=readme-ov-file#how-to-update-firmware-of-wch-linke for wch-link(ch549)1, Enter ISP mode by short DP pin(P5.1) and 3v3 VCC pin when power up.
for wch-linke(ch32v305fbp6)1, prepare another WCH-LinkE and wire up the target WCH-LinkE as:
2, hold IAP button of "target WCH-LinkE" down and plug WCH-LinkE to PC USB port. When power up, the "target WCH-LinkE" will enter IAP mode. Acctually below steps is not IAP update, but entering IAP mode will release the occupied DIO/CLK pins, otherwise the target WCH-LinkE can not be probed and programmed. Official WCH-LinkE has a plastic case, you can not press the IAP button unless break the case, you can use wlink-iap to toggle IAP mode of the target WCH-LinkE as:
3, update firmware:
|
Info: the process that WCH-LinkUtility update firmwares online After analysing McuCompilerDLL.dll:
|
Done. wlink-iap: A tool to upgrade / downgrade WCH-LinkE firmware online using IAP method. Test with:
please refer to: https://github.com/cjacker/wlink-iap Hope wlink can implement this feature soon and deprecate my project. |
@cjacker Thanks. That's helpful. Now I can rewrite the c code into Rust to impl this. 😆 |
Please consider to add two options to involk enter iap mode and quit iap mode standalone . It seems still useful under some special situations: 1, To erase the whole data flash or/and reprogram the whole firmware with another wch-linke, it requires to enter IAP mode first by a physical button or by “ 0x01010f81” cmd. For official wchlinke, it has a case and not convenient to hold the IAP button down when power up. Some thirdparty device such as YD-Link even have no buttons on board. 2, User may accidently enter iap mode when using thirdparty wchlink since they all have no case, maybe user just want to switch rv/dap mode but hold the wrong button, I made such mistake before. And it has no chance to leave IAP mode anymore even with wch linkutility except reprogramming the firmware. |
esp. for macOS users.
The text was updated successfully, but these errors were encountered: