CM3 + CM4-IO-BASE-B(Waveshare)

I think that USB is not working because input 101 (USB_OTG0_ID) is not connected anywhere. Is it possible to programmatically connect it to the GND?

It turned out to solder this pin to the GND. Now everything works.

How you boot the board? by sdcard or eMMC?
I can’t boot the board with almost the same like you.

The only thing that didn’t work for me was the usb port. Everything is ok.

Hi @balaton

Try the following command

sudo su
echo host > /sys/devices/platform/fe8a0000.usb2-phy/otg_mode

@setq
that appears to work on the Waveshare CM4-10-Wireless-Base

Hello everybody.

I’m also trying to run CM3 on Waveshare CM4-IO-BASE-B. I managed to write OS image (radxa-cm3-io-debian-bullseye-xfce4-arm64-20221101-0302-gpt.img) to eMMC and boot it. But encountered the same problem - USB host ports (A type) are not working. They are powered up so I can power (from USB) my 7’’ HDMI screen and see the login screen but no keyboard nor mouse is working. So…

  1. Waveshare wiki:
    “The USB port is disabled by default on the CM4 to save power. If you need to start, you need to add the following to the config.txt file:
    dtoverlay=dwc2,dr_mode=host”

So I have written the .img on the SD card, used SD reader on PC to get to config.txt, added the line, created new .img out of this SD and rewrite in on eMMC. Booting works, USB still not.

  1. Radxa wiki: https://wiki.radxa.com/Rock3/downloads
    "User of Radxa CM3 RASPCM4IO will need to manually update /boot/uEnv.txt to use rk3566-radxa-cm3-rpi-cm4-io.dtb. "

So I have, using the method above, created “/boot/uEnv.txt” file with one line:
fdtfile=/dtbs/4.19.193-58-rockchip-gbac1feba87f0/rockchip/rk3566-radxa-cm3-rpi-cm4-io.dtb
Nothing changed.

Then I was also trying to mess with /boot/extlinux/extlinux.conf adding:
fdt /dtbs/4.19.193-58-rockchip-gbac1feba87f0/rockchip/rk3566-radxa-cm3-rpi-cm4-io.dtb
Nothing changed.

  1. I have been also trying ubuntu-server and android images - same effect: booting but no input devices available.

I have other things to try but need some help with that:
a) Is there any other .dtb or dtoverlay I can use to make USBs work?
b) @balaton - you suggested to “solder this pin to the GND” - I only managed to find “input 101 (USB_OTG0_ID)” on schematics (https://www.waveshare.com/w/upload/5/5b/CM4-IO-BASE_SchDoc.pdf) on the H4B CM_Interface. No way I can solder it there. Is it anywhere on the board too?
c) @setq - in a comment above you say to try “echo host > /sys/devices/platform/fe8a0000.usb2-phy/otg_mode”. But I guess I should do it on the running system and the problem is I can’t do anything there without any input device. Can you add some details how to do it?
d) Maybe somebody came up with any other idea?

Thanks in advance.

Only physical soldering solves the problem. See photo.

Hi @balaton,
thanks for the answer.

Looks like a tricky job. But if it’s a hardware problem how does original RPi CM4 work with this base?

Nevertheless, I will try other options before trying this one ;).

Via serial console or ssh @hellmut

@setq I have finally found some time to try that. I did changed otg_mode to host, as you described, but nothing changed. I also noticed that otg_mode backs to otg after restart.

@radxa You brag that your CM3 is working with Waveshare CM4 IO Base (https://wiki.radxa.com/Rock3/CM/CM3) but apparently it’s not the whole truth. Please be honest with customers or put some more effort to really make it worth bragging ;).

We have the same issue with the Waveshare Dual Ethernet 4G/5G IO Board. The CM is not recognized at all and we are unable to boot anything.

We are not sure about soldering on the board. I think we have to wait for Raspberry Pi CMs.

Can you run cat /sys/firmware/devicetree/base/compatible and post the output here?

It is really necessary to solder this pin USB for normal use.

Greetings… I am working on a theory that the CM3 without emmc wont work with the Waveshare CM4-IO-BASE-B board.

I successfully loaded the Radxa image to an SD card, but the CM3 in the CM4-IO-BASE-B board doesn’t appear to read the SD card slot or boot?

Could I please trouble those of you in this thread to provide the steps you took to get the CM3 to work in the CM4-IO-BASE-B board, and which model of the CM3 you were using i.e. with emmc or without.

I want to gather more data before I am sure my theory is correct.

Much appreciated.

I have a CM3 with 2GB RAM and 16GM eMMC.
Tried to boot it with various images on both the Waveshare C base and the full Raspberry Pi IO base. Nothing happens on either one. Power light comes on, nothing else.

Any guidance? People mention that they’ve got the CM3 to boot on the raspberry Pi IO base - but how?

H

Hello, I do have the Waveshare CM4 dual ETH board, but the soldering the USB_OTG0_ID to GND didnt work for me. Do you know if I messed up, or if it do not work with this board. Or is there something else i do need to do.
Thank you, Vikvoch

Hello,

First time writing here…

Also having problems with the USB on CM3 trying to run in host mode. Tried the hardware fix (pin 101 to gnd), the config.txt fix (add “dtoverlay=dwc2,dr_mode=host”), and the change of “/sys/devices/platform/fe8a0000.usb2-phy/otg_mode” content to “host” (it changed back to “otg” after reboot).
Does anyone know where a change can be made to make the “otg_mode” file contents remain at “host”?

By the way… I do have a CM3 board installed in an RPi CM4 IO carrier and successfully booting from the uSD card. There are two hardware changes that need to be made for this to happen:

  1. The “reserved” pin (pin 76) needs to be tied to Ground (I did it through a 10K resistor).
  2. The SD_PWR_ON line (pin 75) is of the opposite polarity as that same line on the RPi CM4 board, so you need to make provisions for getting the power turned on to the uSD card when pin 75 is LOW. I my case, I just changed the circuit so the power to the uSD is always on.

I don’t know if this is the best place for this info, but wanted to share it as I have seen this question (without answer) on several forums. (If there is a better location to post this, please let me know and I will re-post.)

Thanks in advance!

hello guys,
I am facing with SD card issue,
I have loaded the firmware with through RKDevtool,
After loading the firmware i want to access external sd card.

So when I connect with radxa CM3 IO board, its detecting the TF card.

but when I connected to waveshare board.
i am using this board
https://www.waveshare.com/cm4-to-pi4-adapter.htm

and its not able to detect the TF card.
As it seems like we have to enable SDMMC0_PWREN.

any ideas how to enable this, so that i can able to mount my sd card