Radxa CM5
# │forum
d
I'm going to be looking at this over the next few weeks. Will post a follow up. I'll start with an official RPi CM4 I/O carrier board because Radxa officially supports it. Then, I'll use a Waveshare CM4-IO-BASE-B Rev3.1 carrier board. Finally, I'll look at the TPiv2 CM adapter. I don't know whether Turing Machines would consider creating an adapter board similar to the CM4 adapter for this and, possibly, the Orange Pi CM5. I guess it boils down to demand and product complexity. There are opportunity costs involved. I would prefer Turing Machines to be strategically focused on the successor to the TPiv2.5. https://cdn.discordapp.com/attachments/1266135021346099410/1266135021731971102/PXL_20240725_193223304.jpg?ex=66a605e0&is=66a4b460&hm=9522d6bd78b3a38fe20221dbfd383976721fe3a0f52d481ea2a601bd62f0f13a&
After doing a bit of searching, I've found that, intially, outside of tech marketing type specs, the documentation for the Radxa CM5 and the Radxa CM5 IO board seems to be quite sparse: https://docs.radxa.com/en/compute-module/cm5. What I eventually found was Radxa doesn't do a good job of page navigation within their documentation/support pages. (The stuff on GitHub is entirely in Chinese.) You have to navigate the doc pages linearly.
Initial results: The Radxa CM5 works fine on an RPi Compute Module 4 IO Board after flashing Radxa's latest SPI/bootloader and Radxa's Debian distribution using rkdevtool on Windows. Instructions are here: https://docs.radxa.com/en/compute-module/cm5/radxa-os/low-level-dev/cm5io-maskrom-mode The same CM5 does not work completely on the Waveshare carrier board: no USB. rkdevtool does not recognize this carrier board's USB ports, so it isn't possible to flash the SPI/bootloader or OS image files to the module. Flashed and did basic testing of @User's latest, v2.2.1 Ubuntu 22.04 Radxa CM5 w/CM4 device tree desktop and server images on the RPiCM4 IO Board. Both the desktop and server images seem to work perfectly. The Ubuntu 24.04 Radxa CM5 w/CM4 device tree server image has also been installed. The USB ports do not work out of the box, so a keyboard+mouse connection isn't possible. The HDMI0 port does work. Was able to ssh to the board and after applying the latest updates from the repo the USB ports now work. I'm uncertain whether the Ubuntu 24.04 desktop image will be usable until the v2.3.0 version becomes available. I'll test v2.2.1, but without a keyboard and mouse connection, Ubuntu setup cannot be completed. My understanding is that this step must be completed before it will be possible to ssh into the system, but I'll verify and update this post accordingly. The TTL-to-USB cables that I have are based on the PL2303x. Per Radxa's documentation, https://docs.radxa.com/en/compute-module/cm5/radxa-os/low-level-dev/serial, this chip doesn't support the RK3588/RK3588S2 default UART bit rate of 1500000 (1.5Mbps). This is probably why the only thing coming out of the TPiv2's UART ports with the PL2303x cable was gibberish. I've ordered TTL-to-USB cables that use the recommended CH340 chip from Amazon and will have them tomorrow (July 28).
s
USB should be working with the following commit, but it requires a kernel update: https://github.com/Joshua-Riek/linux-rockchip/commit/0d24ebdc6bbdfca79d7e3acaf7e7796c9aff883d Instead you can download a nightly build and it should work out of the box: https://github.com/Joshua-Riek/ubuntu-rockchip/actions/workflows/nightly.yml
d
Thanks @Spooky. That's what I deduced after updating the server version. I'll test that hash's artifacts after confirming that the USB ports don't work on the v2.2.1 desktop image. Just trying to be extremely rigorous in my testing process.
Initially, after installing the v2.2.1 Ubuntu 24.04 desktop image, connecting the HDMI cable and the Logitech USB nub, the keyboard and mouse didn't work. I stepped out for a few minutes to move a sprinkler. After coming back, I checked the mouse and it was working, so the Ubuntu system configuration was possible. Don't know what was going on. In any event, updates are in the process of being installed.
s
Huh that is very interesting 🤔
d
Yeah. Could have been "pilot error". I'll reflash the board and check it out. Before doing that, I'll try the CM5 on the Waveshare board again. At least that will tell me whether there are compatibility issues with the device tree. This might be question better directed to @CFSworks, but I'm wondering how to create a version of the SPI/bootloader/u-boot, not Debian or Ubuntu, that supports dropping into the u-boot command interpreter for debugging purposes. This might be necessary to fully test TPiv2 integrated peripheral and mPCIe support. I believe the SPI/bootloader/u-boot image is generated by the BSP build process.
@Spooky I reflashed the module with the 24.04 desktop image. No USB. Must have been user error on my part. The server version seems to be the path of least resistance for testing on the TPiv2 adapter. I'll flash the 24.04 server image to the CM5 on the RPi CM4 IO Board, update all packages and put the module on the TPiv2 adapter just to see whether it comes up and can be seen by the network.
@Spooky "Nightly Build" does not produce *-radxa-cm5-rpi-cm4-io artifacts, but "Build" does. I pulled down the four artifacts from Build #526 and will check them out.
Update: Flashing the latest server build of Ubuntu 24.04 for the Radxa CM5 w/RPi CM4 IO image on a Turing Pi v2.
I flashed the CM5 module on an official CM4 IO Board, then moved the module to a TPiv2 CM4 adapter to test whether it would start up and be available on the network. That worked fine, so I decided to try flashing the module's eMMC from the BMC. Color me happily surprised. The Radxa module's USB device info (Bus 001 Device 005: ID 2207:350b) is either the same as an RK1 or similar enough that bmcd isn't complaining about flashing it. Note that my TPiv2 is running a version of BMC firmware subsequent to v2.0.5. The node flashing process completed successfully and the Radxa CM5 boots and, at least at first look, runs okay. Headed off to bed.
s
Ah, i must have forgot to add it, I will make sure its added later tonight
d
Thanks @Spooky.
Update: With the exception that HDMI output doesn't work on node1, the Radxa CM5 running Ubuntu 24.04 server recognizes all Turing Pi v2 node-specific peripherals. These include the switchable USB-A port (all nodes); dual SATA ports on node3; and four USB 3.0 ports on node4. This isn't to say everything works properly under stress workloads, but basic functionality, other than video output works. The HDMI issue also exists with the Ubuntu 24.04 desktop and the Radxa CM5-specific Debian desktop images. The CM5's HDMI output does work on a RPi CM4 IO board's HDMI0 port with all available versions of Linux for the CM5. I'm uncertain where to look first for clues here.
s
Hmm I know the recent Rockchip Linux SDK has the entire VOP2 driver re-written, a few people have reported problems, but I do not think its related to the recent driver changes (so far i have seen that 5120x1440 displays and waking the display from sleep can be bugged).
r
@Dan D. do you have a CM5Lite also to test? This would be awesome if these work also
d
I do not have one. I chose the Radxa CM5 because @User has pre-built versions of Ubuntu 22.04 and 24.04 for it.
HDMI works when the CM5 is installed on an RPi CM4 IO board. This issue is either with the TPiv2 CM4 adapter or the TPiv2 itself. I'll try putting the CM5+TPiv2 CM4 adapter on a Nvidia Jetson Nano carrier board to see what happens. An NVIDIA Jetson Nano carrier board has even less functionality: no USB, and no HDMI.
Every mPCIe card I have that works with the RK1 also works with the Radxa CM5 on the TPiv2 CM4 adapter. These include: - Mini PCIe to 6Gbps four port SATA 3.0 adapter https://a.co/d/1pNWjBh - Mini PCIe to M.2 M-Key NVMe SSD adapter https://a.co/d/cmTzQm5 - Mini PCIe to USB 3.0 adapter https://a.co/d/dMY7ipp - Mini PCIe to single-port 2.5 GbE adapter https://a.co/d/8IwFfHz - Mini PCIe to dual-port 2.5GbE adapter https://a.co/d/ecgPNhy
With the addition of Ubuntu 22.04 and 24.04 builds for the Orange Pi CM5, I've changed this forum's topic from only the Radxa CM5 to both it and the Orange Pi CM5.
s
The Orange Pi CM5 needs a device tree for raspi carrier boards. it will boot but other functions such as usb, hdmi, etc wont work right
d
That's what I expected. I ordered an Orange Pi CM5 and the associated Orange Pi IO board yesterday through AliExpress. It will probably take two weeks to arrive. In preparation, I'll compare the Radxa CM5 schematic with the Orange Pi CM5 schematic. If the pin mux on the three, 100-pin connectors is the same, it should be possible to transplant and/or adapt the Radxa cm5-rpi-cm4-io's device tree.
s
Yeah i hope to look at that sometime today
d
The Orange Pi CM5 and IO board should arrive late this week. A first glance at the schematic suggests it might be RPi CM4-compatible out of the box, with the non-CM4 peripherals on the third connector. That would be a big differentiator and make the upgrade path clean. Surprised that Radxa didn't use this strategy, but designing a reliable board of this size is hard.
r
Any updates on this?
d
The Orange Pi CM5 hasn't arrived yet. AliExpress merchant shipping can be really janky. I can confirm there is some issue with the Radxa CM5's HDMI output when placed on a TPiv2 CM4 adapter. The monitor I have attached to the node1 HDMI port displays "Unsupported Output". An RK1 using the same setup works fine. HDMI output works when the Radxa CM5 is mounted on an RPi CM4 IO board. The Orange Pi CM5's pin mux seems to better approximate the RPi CM4's, but we'll see.
I received the Orange Pi CM5 core and CM5 IO board late yesterday. I'll test it as soon as I can, but I have a higher-priority beta test I'm trying to complete. I tested positive for COVID-19 (I think it was yesterday morning), am sick and am not thinking very well.
Welp ... the Orange Pi CM5 seems to be less functional than the Radxa CM5. No video and, apparently, no network. I was able to use RKDevTool to flash the MiniLoader and Ubuntu images.
r
well thats disappointing
s
To be honest I copied and pasted the device tree provided from Orange Pi. They have a long history of providing bad software and device trees. I hope to look at the scmatics soon and see what is up with the board, I've been very busy recently.
d
When I briefly looked at the schematics for the connectors, I was cautiously optimistic that Orange Pi had made the pinmux for the two, RPi CM4 100-pin connectors compatible. I need work on the comparison connector spreadsheets when I feel better. The sheets also contain the Radxa CM5 pinmux, which I found somewhere. Since the Radxa CM5 with RPi CM4 device tree works on an RPi CM4 IO board, I want to determine why the HDMI output isn't working properly on a TPiv2 CM4 adapter.
s
Yikes, the Orange Pi CM5 does not have an Ethernet phy on the board.
d
Yeah. Wish I'd known that before purchasing one. There are 3 PHYs on the underside of the Orange Pi CM5 IO board: 1GbE and 2x 2.5GbE.
s
I've had some brief internal discussions with orangepi and I must say, they are a terrible company. They only want to push out hardware and be the first to market
d
First to market doesn't guarantee success. Radxa seems to be doing a better job.
I removed the Orange Pi CM5 from the forum title because, with no onboard Ethernet PHY, it's useless in a Turing Pi v2. While relatively pointless, I did confirm the module can be successfully flashed via the Web UI, tpi and the rkdeveloptool over USB on the TPiv2.5.2 board. Now that the TPi v2.5.2 beta is winding down, I'll see whether I can determine why HDMI isn't working on the Radxa CM5 and I'll also confirm compatibility with mPCIe USB, SATA and 2.5GbE cards.
j
Sucks about the orange. Does it have the ability to use the nvme and/or m2 slots for Ethernet adapters?
d
The Orange Pi CM5 and the Radxa CM5 do not support the M.2 socket. They should support the mPCIe socket, but I want to confirm.
j
Ah. If they do they could have some utility in slots 1&2 then
d
Correct. The Radxa CM5, running the Ubuntu rpi-cm4-io image -- I don't know about the CM5 Lite -- should work in all node slots. I've just gotten back to investigating why the Radxa CM5's HDMI works on an official Raspberry Pi CM4 IO Board, but not on the TPi CM4 adapter. I suspect the TPi v2.4 doesn't understand it, but I'll confirm that the HDMI micro switch configuration is set to CM4 mode. Haven't had a chance to try the Radxa CM5 on a TPi v2.5.2 board yet. The HDMI configuration microswitch is now internal and automatic. Forget the Orange Pi CM5. Orange Pi makes no claims of it being RPi CM4-compatible. Some things might be fixable through device tree changes, but the lack of an on-board Ethernet PHY makes it pretty useless outside of the Orange Pi CM5 IO board.
d
Are you using a screen above 1080p? With TPi2 v2.4, you'll only get display up to 1080p
d
I have a pretty strange setup. Since my workspace is small and shared with a dual-socket x86 system, I use an HDMI to VGA adapter. The monitor is always some variant of 1K pixels. The setup works fine when I put the CM5 in an official RPi CM4 board, but not on the TPi v2. On the TPi v2 the monitor displays the message "INPUT NOT SUPPORTED". I have a older 4K@30Hz ASUS monitor that I used for the TPi 2.5.2 testing. It has native HDMI and supports most resolutions. I'm going to try it.
d
If you want to connect this monitor to TPi2 v2.4, then it won't work. just making sure (unless you try with TPi2 v2.5.2)
The adapter should work, though
I may try an adapter like this with some other module
Any chance you checked this adapter with RK1 or Orin?
If it does not work with other modules in TPi2 v2.4, these adapters use power from HDMI, so I would check if there is power on the HDMI
d
The HDMI to VGA adapter works fine with the RK1, Orin NX, Orin Nano and Xavier NX. Of course the microswitch needs to be set appropriately.
d
On TPi2 v2.4, right?
And yes, you'll likely have to flip the switches on SW1 for CM4
d
Confirmed the switches are set for CM4. Just tried it with the 4K monitor. It momentarily displays the message "HDMI-MHN1 NO SIGNAL", then blanks the screen. The implication is that the HDMI signals from the Radxa CM5 aren't being routed correctly either by the CM4 adapter (unlikely) or the TPi v2.4. Exactly what do the HDMI configuration microswitches do? I'll try the other two documented possibilities.
d
I'll try again - no display above 1080p will work with TPi2 v2.4
😄
> Exactly what do the HDMI configuration microswitches do? There is a difference between the HDMI signal that the Jetson modules output and CM4/RK1/others. Jetson carrier board contains some additional circuitry on the carrier board, but if we added it to TPi2, no other modules than Jetson would work. The switches on v2.4 control this. v2.5 has this part automated (no manual switches)
d
The RK1 HDMI micro switch settings (off,off,off,off) produce output to the 4K monitor. This setting doesn't work with the HDMI-to-VGA cable (INPUT NOT SUPPORTED). Unfortunately, with the RK1 settings, the USB-A port, in device mode, no longer seems to work. That's what the Logitech USB wireless keyboard/mouse nub is plugged into. The Jetson switch settings produce no HDMI output. There must be some very subtle differences between the RPi CM4 IO board and the combination of the TPi CM4 adapter and TPi v2. Joshua has two versions of Ubuntu for the CM5: one device tree for the Radxa CM5 IO board; and one for the RPi CM4 IO board.
d
> The RK1 HDMI micro switch settings (off,off,off,off) produce output to the 4K monitor. This is interesting. in some cases, setting them all to OFF will work and I wonder how this affects the signals. My answer above should be more like above 1080p will likely not work
> Unfortunately, with the RK1 settings, the USB-A port, in device mode, no longer seems to work. Which setting do you mean? The SW1? It has nothing to do with USB-A. Make sure you set the USB mode to node 1 and the host mode
> There must be some very subtle differences between the RPi CM4 IO board and the combination of the TPi CM4 adapter and TPi v2. TPi2 v2.4 has some signal integrity problems on the HDMI lanes. It'd be actually a good test to check the same on v2.5.2
> Joshua has two versions of Ubuntu for the CM5: one device tree for the Radxa CM5 IO board; and one for the RPi CM4 IO board. I believe both should provide the same HDMI output, and the difference is in the GPIO configuration and connected devices/available modules. None of this should affect HDMI on TPi2
d
Okay. I'll try the v2.5.2 board. I intentionally didn't do this during the feedback period because I was pretty sick with COVID-19 and it would have been a distraction.
d
Yeah, sure. I hope you are feeling better now
d
@DhanOS I normally leave the USB-A port set to device mode. The USB wireless nub has always worked, but not in this case. By the way, I have self-built BMC Firmware v2.1.0-RC7 (or is it RC8?) installed on both the TPi v2.4 and TPi v2.5.2. Once the final v2.1.0 firmware is available, I'll download, build and upgrade.
d
> I normally leave the USB-A port set to device mode. The USB wireless nub has always worked, but not in this case. With which modules? It does not matter for Jetsons since they are always in the host mode. CM4 and Rk1 can set both the device and host. Also make sure that the node the port is attached to is the one you expect it to be.
> By the way, I have self-built BMC Firmware v2.1.0-RC7 (or is it RC8?) installed on both the TPi v2.4 and TPi v2.5.2. Once the final v2.1.0 firmware is available, I'll download, build and upgrade. Any particular reason to build it yourself? Modifications?
d
Yeah. I make a couple of minor changes. Things like the local time zone and host name. I also overlay S94bmcd to add control of the the fp::status LED, so that I can glance at the system from across the room and know whether bmcd is active or not. This was a feature of the original TP v2 firmware that I found useful. The only time this LED is used in the current firmware is when the BMC is restarted with the BMC_RESET button. That tidbit about the Jetsons always being in host mode is new to me. Probably why I was confused. My RK1 nodes only run server images and I only connect to the nodes via ssh.
I tried the CM4 adapter-Radxa CM5 combo in the v2.5.2 board. There isn't a way to get the v2.5.2 board to put node1's USB-A port into host mode. The Compatibility Mode checkbox does nothing. The USB nub is not powered and
lsusb
on the node shows nothing. I'm open to suggestions here. On the v2.4 board, the USB nub isn't powered in device mode. It is powered and appears in
lsusb
output on node1 when the port is in host mode. It works regardless of whether the HDMI microswitch is set for CM4 or RK1, so maybe that was pilot error on my part or an HDMI cable issue. The TPi v2.4 metal I/O shield isn't an exact fit around the HDMI port.
d
Could I ask you to put this feature request on the firmware GH?
d
Sure. Just FYI, trying to set "Host" mode through the WebUI or tpi throws an error. "500" on the WebUI. "Not supported on this version of hardware" in tpi.
d
> I tried the CM4 adapter-Radxa CM5 combo in the v2.5.2 board. There isn't a way to get the v2.5.2 board to put node1's USB-A port into host mode. The Compatibility Mode checkbox does nothing. The USB nub is not powered and lsusb on the node shows nothing. I'm open to suggestions here. If you are on the newest firmware, this (the compatibility mode) should work - I was using it. Also it should be constantly powered.
It looks like you have the EEPROM set incorrectly then
I mean the content of EEPROM
Can you run:
Copy code
tpi eeprom get hw-version
And we are talking about v2.5.2, right?
d
Yeah. I was under the impression that the v2.5.2 ES boards we got for the beta test never had their EEPROMs fully programmed. Could be wrong here.
d
It did not, you got blank boards with no EEPROM of flash burned
d
Regardless, I'll check the v2.5.2 board again.
d
Please check the command above
d
[root@tpiv252-bmc-1 ~]$ tpi eeprom get hw-version v2.5.2
Oh, wait, host + this fails indeed
Ah, right
Sorry
In TPi2 v2.5.2 the only possible modes are device and flashing
This is because USB0 of all nodes are connected to a USB hub and then either to the USB-C or BMC
Device mode is the default, flashing mode is device + flashing pin
Also by default USB2 of Node 1 is routed to USB-A
But CM4 only has USB0
This is the compatibility mode
Only set the compatibility mode, and leave USB as the device. It should set ok, I guess
If not, I'll look closer on this
The compatibility mode should set the USB mode to host for compatibility mode only when it's turned on, the disconnected connection to the embedded USB hub stays as "device"
This is also part of what I mentioned as "the USB part of the UI must be improved" somewhere on this discord
Also, in case of Radxa CM5, I wonder if it can put it's USB into host mode anyway
d
I set the checkbox and clicked "Change". Then powered the node on.
lsusb
doesn't return anything, implying that the port isn't powered. https://cdn.discordapp.com/attachments/1266135021346099410/1283198552595632210/TPiv2.5.2-CompatMode.jpg?ex=66e21f47&is=66e0cdc7&hm=a4748229603723fa9b64691772e70367ea91a16ad4bdf66436c0131e9c327a1a&
d
Or USB0 is not being set into the host mode
This is with RPi CM4, right?
d
It's the Radxa CM5 on a TPi CM4 adapter that is plugged into the node 1 slot of the v2.5.2 board. If you want me to plug in an RPi CM4, give me a few minutes.
d
If you can - yes, please
I do not own Radxa CM5. I was trying to buy one but the availability is not there?
d
Try arace.tech. I ordered another one yesterday. This one is 32GB RAM/256GB eMMC. Otherwise, it flashes fine through the v2.1.0-RC7/8 WebUI and tpi command. Haven't tried rkdeveloptool over USB yet.
A RPi CM4108000 on TPi CM4 adapter shows the USB wireless nub when the "Node 1 USB-A compatibility mode" checkbox is active.
Copy code
root@cm4-1:~# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 046d:c52b Logitech, Inc. Unifying Receiver
d
So it seems that the issue is either in Radxa CM5, or it's software
I don't know if it can put its USB0 into the host mode. If it can, maybe it does not have USB 2.0 controller set in the device tree
Also, I just bought myself Radxa CM5, thank you
d
Probably not terribly relevant, but when host mode is enabled on the v2.4 board,
lsusb
on the Radxa CM5 shows three devices: the USB 2.0 root hub, the Logitech device on the USB 2.0 bus and a third, USB 3.0 root hub.
Copy code
root@radxacm5-1:~# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
d
It may be relevant. One logical answer to this that I can think of (unverified) is that maybe CM4 puts USB0 to host mode by default and the "flashing" mode puts it into device mode. This is why it works on both boards. Now, if the firmware on v2.4 properly controls the USB mode signal and v2.5.2 does not, and if the default mode for CM5 is the device mode, this would make a difference for CM5. Or, as an alternative, if CM4 does not react to this signal and only puts its USB0 into the device mode while "flashing" mode is engaged, v2.4 is properly controlling the device/host mode signal, and v2.5.2 has it always set to the device with compatibility mode, the effect would be the same. Those are just theories that I see as plausible, but the truth may be completely somewhere else. I will take a look at that when I get my CM5 (on the way). I would suggest also putting this on GH.
d
I'll enter an issue against the BMC firmware on GitHub today. Hope you ordered a heat sink with the CM5. Both active and passive heatsinks are available.
@DhanOS is there a simplified TPi v2 CM4 adapter schematic that can be shared? I'm working on a spreadsheet containing the mappings between the two, 100-pin CM4 connectors and the 260-pin Jetson Nano connector. It should probably also include the Jetson Nano connector to node1 GPIO header mapping, but I believe that info can mostly be extrapolated from the documentation.
Now that I've received my TPi v2.5.2 boards and worked out my BMC firmware customizations, I'll be focusing on figuring out a couple of issues with the Radxa CM5 that were discovered during the v2.5.2 board beta. Specifically: USB-A Compatibility Mode on node 1. It is needed to support a USB keyboard and mouse on the dedicated USB-A port. There is also an HDMI issue with the TPi v2.3/v2.4 board. The USB-A port/Compatibility Mode issue may be related to the device tree. The Radxa CM5 seems to work fine on the Turing Machines CM4 adapter with the Ubuntu 24.04 server image in node slots 2 through 4, but this needs further testing to confirm. Once I finish the spreadsheet that compares Radxa CM5 and RPi CM4 pinmux mapping, I need to determine how the signals are being routed by the TM CM4 adapter. Unfortunately, there is no documentation on it. I can't just assume the signal mappings are equivalent to an NVIDIA Jetson Nano.
@Spooky I'm sorry to bother you with a question. Where do the .dts/.dtsi files come from for the Radxa CM5 RPi CM4 IO image build? I suspect they're downloaded from somewhere during the build process, but I wanted to confirm. The remaining unresolved issue I have to get the Radxa CM5 working in a Turing Pi v2.5.2 node 1 slot is the dedicated USB-A port for the keyboard and mouse.
s
this is the source tree, i added info to the wiki: https://github.com/Joshua-Riek/linux-rockchip/wiki
d
@Spooky thanks for the pointer. Off to wander around in that repo.
So ... anyone thinking about purchasing a Radxa CM5 for use in a Turing Pi v2 should hold off. More, very basic debugging is required. I've found that a Radxa CM5+Turing Machines CM4 adapter "module" behaves differently depending on which Turing Pi v2 board variant and node socket is being used. Generally speaking, the module running a Ubuntu 24.04 server image behaves the same in node sockets 2 through 4. It seems to (mostly) work on a v2.4 board, but hangs during boot on a v2.5.2 board. If you run a desktop image with the module in node socket 1, behavior differs. On a TPi v2.4 board, there are HDMI display issues and lots of related I²C error messages related to HDMI. However, the USB-A port, when in host mode, sees and supports a Logitech wireless keyboard-mouse. On a TPi v2.5.2 board, in node socket 1, HDMI works okay, but the dedicated USB-A port, even in Compatibility Mode does not power the port. There is no way to enable host mode. The Logitech wireless dongle doesn't work. There are various issues with using picocom from the BMC.
Topic: Flashing the Radxa CM5 First point: The Radxa CM5 has it's own boot loader, which is different than the bootloader for the RK1. The Ubuntu operating system images are also different for a variety of reasons. After using Rockchip's/Radxa's RKDevTool multiple times to flash Radxa CM5s on a Raspberry Pi IO Board, I believe that the BMC firmware's RK1 flashing functionality (in bmcd and tpi) silently does exactly what RKDevTool/rkdeveloptool does, but very specifically for the RK1. This process doesn't work with a Radxa CM5. Nor does using
tpi advanced msd --node X
and dd'ing the OS image to the second partition on eMMC. Net: at least for now, if you want to flash a Radxa CM5 on a CM4 adapter in a Turing Pi v2, you must do it via the USB port on the Turing Pi v2 and RKDevTool/rkdeveloptool. RKDevTool is for Windows. rkdeveloptool is for Linux and MacOS. It's open source: https://github.com/rockchip-linux/rkdeveloptool. Radxa also has instructions and distributes their own version of RKDevTool: https://docs.radxa.com/en/compute-module/cm5/getting-started/install-os?target=eMMC. Radxa doesn't make finding the bootloader easy. As of this writing it's here: https://dl.radxa.com/rock5/sw/images/loader/rk3588_spl_loader_v1.15.113.bin. It apparently can also be built from the
rkbin
source. Note: the Radxa CM5 does not support an SD card when being used in CM4 mode. Radxa doesn't sell "lite" (non-eMMC equipped) CM5s. They're listed in the product announcement, but not available.
t
Thanks for doing all this testing Dan and posting the results here!
1310 Views