Comments (25)
I think I might fix this problem by using libusb instead of Winusb Driver
Winusb
first time plugged in
second time plugged in
libusb
first time plugged in
second time plugged in ( •̀ ω •́ )y
from ch55xduino.
If it's been flashed before, you need to put it into DFU mode. Typically, you'd do this by disconnecting the device, connecting USB Data+ to 3.3V with a 10k resistor, and then powering it up. (you can remove the resistor at this point). That should put it in DFU mode, and you can upload to it again.
from ch55xduino.
The previous image shows DFU mode.
It just looks like this when you turn it on
from ch55xduino.
I don't need to configure the COM port, do I?
It is not recognized as a COM port in DFU mode of CH552
from ch55xduino.
I've never used the com port/CDC option, so I can't help you with that.
I've also noticed that I have to start programming very soon after entering DFU. If I enter DFU and leave it for more than a few seconds before I start programming, then it doesn't detect. I don't know why. It still shows as connected in DFU mode, but, programming doesn't work. However, if I start programming within a few seconds of connecting the device, then it all works
from ch55xduino.
@ichirowo If you see "USB module". It is likely the DFU mode is correct. It is likely a driver issue and the uploader can not communicate with hardware.
Did you use the Zadig software to install the driver? You should see something like this.
from ch55xduino.
Thanks. It's resolved.
I didn't think it was important to install the driver in Zadig.
When I couldn't write, I had the following problem.
When I did the following, I was able to write with ArduinoIDE.
I could also confirm the symptom of not being able to write after about 10 seconds of entering DFU mode.
You should write as soon as you switch to it.
Thanks. I will introduce this great product and community to Japan.
from ch55xduino.
@ichirowo Great. If you use the default CDC setting, choose the correct COM port and the CDC code will enter DFU automatically when you upload the code.
from ch55xduino.
Thanks. It's working fine.
I also installed the CDC driver.
from ch55xduino.
Seems you get it solved?
from ch55xduino.
I've got the same problem when using CH551G. And once I upload a stretch, then I have to ①unplug the USB connector ②reconnect the connector with BL button pushed ③find the device which has a yellow alert sign in device manager and choose automatically update device driver ④reinstall WinUSB driver in Zadig; Everytime!
I f your board is never used with ch55xduino before, you need to make the ch55x chip enter bootloader mode. You need to disconnect USB and unpower ch55x, connect the pull-up resistor on D+ line (generally a 10K resistor between D+ and 5V, controlled by a push-button or adjacent pads). Then you connect USB. and hit Upload. Also, a blank new chip will enter the bootloader automatically.
If you have used ch55xduino once and your code doesn't crash the USB subsystem, you can simply press Upload. Arduino and the firmware will kick the chip into the bootloader automatically.
Quite not same/(ㄒoㄒ)/~~
from ch55xduino.
@hexesdesu what version of Windows are you using? Also would you mind sharing a screen shot of the yellow alert sign, and the details (error code, etc) in that device? That will help me to troubleshoot it.
from ch55xduino.
I have met the same issue as the one mentioned by @hexesdesu , however, I haven't solved it yet. My current Windows installation is 2004 (internal version 19041.804) but I have already encountered this issue for a long time, likely in version 190x.
The error reported is "Device USB\VID_4348&PID_55E0\5&92c31b4&0&9 had a problem starting" with error code 0xA. This only happens after I installed the WinUSB driver with Zadig. With the original driver provided by wch, the device can be recognized by the system.
On the other hand, the official flashing tool seems worked nicely with the original driver. I wonder whether there is an alternative way to download the bin generated by the arduino IDE, with the official flashing tool?
from ch55xduino.
@SdtElectronics I think there might be a conflict with the official driver, as the official driver is listed on Windows Hardware Compatibility List. I'll see if I can use the CH372 API (official one) in windows to solve this issue.
Before that, maybe you can try to remove the official driver completely and then use the Zadig, to see if it works.
The process should be similar to this one (remove the official driver, not your wireless card. This image is from internet).
from ch55xduino.
@SdtElectronics Maybe have a try?
from ch55xduino.
@hexesdesu Whoa! This worked for me! That cursed WinUSB has bothered me for several months. I am really grateful to your help.
from ch55xduino.
@hexesdesu Thanks for the help, I'll update the readme
from ch55xduino.
I used mac 11.2.3, arduino 1.8.13, board ch554 and I cannot get it upload to it. I tried holding the reset button, and plug in the usb, then release the button, but it cannot upload.
error messages
dyld: Library not loaded: /usr/local/opt/libusb/lib/libusb-1.0.0.dylib
Referenced from: /Users/user/Library/Arduino15/packages/CH55xDuino/tools/MCS51Tools/2020.12.01/macosx/vnproch55x
An error occurred while uploading the sketch
Reason: Incompatible library version: vnproch55x requires version 3.0.0 or later, but libusb-1.0.0.dylib provides version 2.0.0
from ch55xduino.
vnproch55x.zip
@HonghongLu Please try this file. It has libusb statically linked. Replace the original file in the Arduino package. On my computer, it was in ~/Library/Arduino15/packages/CH55xDuino/tools/MCS51Tools/2020.12.01/macosx
Note you may need to allow the app in the security setting.
from ch55xduino.
vnproch55x.zip
@HonghongLu Please try this file. It has libusb statically linked. Replace the original file in the Arduino package. On my computer, it was in ~/Library/Arduino15/packages/CH55xDuino/tools/MCS51Tools/2020.12.01/macosxNote you may need to allow the app in the security setting.
yes, I replaced and file and tried. here is another error.
CH55x Programmer by VNPro
Load file as hex
Loaded 4393 bytes between: 0000 to 1156
DeviceVersion of CH55x: 1.00
MCU ID: 00 00
Not support, family ID.
An error occurred while uploading the sketch
from ch55xduino.
@HonghongLu Unfortunately my tool does not support the old protocol. All chip I can get have a 2.3.1 or newer boot loader version. You can try with a new chip. Or you can use the upload tool from other people.
from ch55xduino.
@DeqingSun Just would like to chime in on this topic. I have been testing out the WebUSB uploading tool. As Chrome would only support WebUSB through WinUSB, so LibUSB option is out.
It works flawlessly with Windows 7 using Zadig's WinUSB driver.
But for Windows10, it work once after installing as observe by @hexesdesu , subsequent DFU mode would end up with a non operation device + driver.
Here is the funny part. If I forcibly use Zadig to use WinCDC with the DFU CH55x (Of course it will fail), then swap the driver back to WinUSB, it works again :)
from ch55xduino.
I find use WCHISPTool no this issue , not nedd using libusb instead of Winusb Driver,can we use "WCHISPTool way" to write hex with Arduino IDE
from ch55xduino.
Thanks. It's resolved.
I didn't think it was important to install the driver in Zadig.
When I couldn't write, I had the following problem.
When I did the following, I was able to write with ArduinoIDE.
I could also confirm the symptom of not being able to write after about 10 seconds of entering DFU mode. You should write as soon as you switch to it.
Thanks. I will introduce this great product and community to Japan.
i have the same problem. i know why have this problem
when install WCHISPTool we will install CH375_ usb driver , so we will look like this:
maybe we can use CH375 usb driver to Upgrade program by Arduino @DeqingSun
from ch55xduino.
@nulllaborg You can use the CH375 driver now
Line 56 in 80d298d
from ch55xduino.
Related Issues (20)
- CH554 support HOT 12
- About usb sample code
- Idea: add TinyRF capability to open the ch55x to 315/433MHz communication HOT 3
- Keyboard with boot protocol enabled HOT 8
- About absolute mouse HOT 2
- Drivers problem HOT 3
- TouchKey_begin disrupts functionality of pins not enabled for touch HOT 2
- CH55X ARDUINO CORE
- [Demo] Ch554 USB Audio Speaker HOT 5
- Feature request: InfraRed Encoder/Decoder.
- Support more than 85 LEDs (256 bytes RGB Data) for WS2812 HOT 2
- CH546L unresponsive after flash HOT 5
- Can you add an example about ch559 USB host? This is a very important feature thx HOT 3
- CH552 into sleep mode and wake it up or switch to low power HOT 1
- Softreset after download CH549 HOT 4
- CH558L unresponsive after first flash HOT 7
- WS2812 Brightness HOT 3
- Timer3 Interrupts on the CH558 not working (with suggested fix) HOT 1
- Keyboard Matrix Problem HOT 2
- keyboard_getLEDStatus() does not respond to a NUM LOCK, CAPS LOCK or SCROLL LOCK change HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ch55xduino.