CH55x: Can I ask a question? Is there a community?

Colleagues, tell me, are there anyone here who is working on the Wch CH552 platform?

I assembled my own module very similar to the scheme with ch55xduino, but my Ubuntu does not see the ttyACM0 port.
I used a brand new CH552G processor purchased on Aliexpress, straight from the protective packaging. Obviously, I need to somehow write the bootloader there. How to do it?

If anyone can help, I'm willing to send more detailed information.

Thanks in advance,
Ogogon.

What does dmesg say when you plug it in?

That is not correct, that is the name Ubuntu gives the port. Are you a member of the dialout group, if not this is what I would expect. Try this:
Type 'groups', is 'dialout' there ?
sudo usermod -a -G tty yourUserName - sudo usermod -a -G tty gil
sudo usermod -a -G dialout yourUserName
Log off and log on again for the changes to take effect.
The last step is most important!

Very strange. I have two processors installed on expansion boards. Now I've tried both. To my surprise, they give out different dmesg.

First processor:

[280120.028274] usb 6-3: new full-speed USB device number 59 using ohci-pci
[280120.217308] usb 6-3: New USB device found, idVendor=4348, idProduct=55e0, bcdDevice= 2.50
[280120.217329] usb 6-3: New USB device strings: Mfr=0, Product=0, SerialNumber=0

Second processor:

[280416.756129] usb usb6-port3: unable to enumerate USB device
[280479.799119] usb 6-3: new full-speed USB device number 106 using ohci-pci
[280479.959128] usb 6-3: device descriptor read/64, error -62
[280480.227121] usb 6-3: device descriptor read/64, error -62
[280480.491117] usb 6-3: new full-speed USB device number 107 using ohci-pci
[280480.651113] usb 6-3: device descriptor read/64, error -62
[280480.919088] usb 6-3: device descriptor read/64, error -62
[280481.027115] usb usb6-port3: attempt power cycle
[280481.767075] usb 6-3: new full-speed USB device number 108 using ohci-pci

The processors are the same, although most likely purchased at different times. Both have the same inscription: WCH CH552G 405845C22.

Thank you. I checked. I am a member of the dialout group.

1 Like

IMO 1. processor is ok, second might have a bad solder or resistor or different (hardware) problem. Look at:

You most likely need WCH-Link to get things working for the first time.

There should be one ore more lines like

  690.750693] cdc_acm 3-2:1.0: ttyACM0: USB ACM device

following the lines you posted. Are there any? If not, most likely your VID:PID is not in the hardwaredatabase for ttyACM/ttyUSB and you'd need a udev rule to make that happen.

1 Like

In both cases, I have all the electronics in common.

Only the processor on the expansion board is changed. There isn't even a single resistor there.

Maybe this is a defect in the processor instance?

Might be defect, but more likely it's clean without preloaded firmware. IMO you need the WCH programmer for the first flashing.

Maybe. I looked at the link you kindly sent, but alas, I didn’t understand everything in it. It describes three programmators that are almost identical in appearance.
Which one is needed to work with CH55x processors? (I could not understand this even from the summary table given there.)
And where can I get a bootloader for writing into the processor?
(And by the way, are these programmers an open source solution? Is there a diagram and firmware for them somewhere?)

All programmers should work the same way. There is the Moonriver IDE that's supposed to do the black magic - but I have never tried it myself, my programmer is still on it's way. I ordered on of these: https://aliexpress.com/item/1005003693318567.html - should work on linux just fine (otherwise I'll be a bit sad)

Unfortunately, this page is no longer available.

Hm ... the link works for me. Maybe try again or search for
" Wchlink mini.daplink"

If I understood everything correctly, then this is such a device.

However, I have not found confirmation anywhere that this device works with CH55x processors. There are many microcircuits listed, but I did not find these.
Will it help me?

Should work, but you never know. But your chip in the picture is CH552g, not CH52... just to make sure. Have you seen this: https://www.youtube.com/watch?v=9g-lvh9AS-8

Thanks a lot for this tip. The first time I wrote without glasses, and then I pasted it with copy-paste. I think I've corrected everything...

How to install this IDE on Linux? (In my case - Ubuntu.)

When do you plan to receive this device? If it turns out that there are problems there, I will be upset along with you. In the city next to me, a certain company sells such programmators, but I will wait for good news from you.

end of june ... you know, EU s]:[heads try to make deliveries from china a PITA (which is a good reason to buy in china)

I'll try to use the linux version mounriver_studio_community_linux_x64_v170.tar.xz - let's see if it works. MounRiver Studio But first I'll try to get it working without :slight_smile:

I'm sorry, but what is PITA? I only know of hollow flatbreads that are used to serve hummus or falafel.

In my opinion, I saw some console utilities on Github that could work with this programmator. (I remember that one was written on Rust.)

PITA == pain in the arse :slight_smile:

Yes, and OpenODC has support for WCH, so I'm quite sure this will work just nice. I'm going to test the WCH Arduino Core, too, maybe this is easier than barebone.

I made an effort and purchased a programmer. He was the only one in the store.


When connecting it, Ubuntu writes this:

[85112.854956] usb 6-3: new full-speed USB device number 6 using ohci-pci
[85113.087974] usb 6-3: New USB device found, idVendor=1a86, idProduct=8011, bcdDevice= 2.01
[85113.087995] usb 6-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[85113.088004] usb 6-3: Product: WCH-Link
[85113.088011] usb 6-3: Manufacturer: wch.cn
[85113.088016] usb 6-3: SerialNumber: 0001A0000001
[85113.095119] cdc_acm 6-3:1.0: ttyACM0: USB ACM device
[85113.117951] hid-generic 0003:1A86:8011.0009: hiddev2,hidraw0: USB HID v1.00 Device [wch.cn WCH-Link] on usb-0000:00:13.1-3/input2

And here is dmesg from FreeBSD:

uhub_reattach_port: giving up port 4 reset - device vanished: change 0x1 status 0x500
ugen2.2: <wch.cn WCH-Link> at usbus2
umodem0 on uhub7
umodem0: on usbus2
umodem0: data interface 1, has no CM over data, has no break
uhid0 on uhub7
uhid0: on usbus2

How can I now, without leaving OpenSource if possible, flash my CH552G processors to work with ArduinoIDE?