Worklog Retro Lite CM4 - A StonedEdge and Dmcke5 collaboration

StonedEdge

a.k.a. ClonedEdge
.
.
Joined
Nov 16, 2018
Messages
380
Likes
1,545
Location
Japan, Tokyo
Portables
2
Retro Lite Rev 2.0!
Inspired by another fellow modder, I have decided to try to integrate USB-C DRP and HDMI over the single Type-C port. The TPS65987D and TUSB546A from TI seem to be the easiest combination of ICs to use for this, unless you sign some sort of NDA to get an AIO chip that does it all...

I'm not 100% confident just yet, but making my way through the datasheets... watch this space

1645111201995.png
 

StonedEdge

a.k.a. ClonedEdge
.
.
Joined
Nov 16, 2018
Messages
380
Likes
1,545
Location
Japan, Tokyo
Portables
2
Any updates on this? :)
Hi, we don't have any updates really. Until parts become readily available, we wouldn't consider making this available for public sale. When the chip shortage will get better, no one really knows, but hopefully it will be before the end of the year.

Sorry to not bring better news!
 
Joined
Apr 13, 2021
Messages
4
Likes
4
Location
Germany
Such a shame that so many promising projects struggle with the chip shortage :(
But I am happy to hear that the project isn't dead.
I have ordered an odin lite in the meantime, but I think I will build this anyway once you are ready to release.
Keep it up, you are doing great :)
 

Retcoc

.
Joined
Aug 29, 2022
Messages
1
Likes
0
One of the best projects I've ever seen. What do you think of CM4 with Android? I saw that we already have developers working even Android 13 with it. I'm thinking about this possibility, to determine your project with Android. I'm Brazilian and I'm creating a blog to talk about portables, mainly about independent projects like yours, as a fan very grateful to your initiative. I made a post on my blog about your Brazilian and certainly when possible to buy I will show the community to test.
 

StonedEdge

a.k.a. ClonedEdge
.
.
Joined
Nov 16, 2018
Messages
380
Likes
1,545
Location
Japan, Tokyo
Portables
2
I thought I'd share some progress on the final touches to the Retro Lite CM4 - a small little accessory, if you will!

I always thought it would be pretty cool to integrate an OLED display into a docking station that gave you relevant information about the game/consoles you could potentially play that game on (because we all know emulation is for chumps). And so, we're creating a very small docking station that allows you to connect up to 4 USB peripherals via a USB hub (I'm using the CY7C65642 from Cypress - a very low powered hub that splits the single CM4 USB bus into 4 channels). The end goal is to allow you to dock the CM4 and use it in a regular linux desktop environment, connect up a keyboard, mouse, whatever (i.e with Raspbian, browsing the web, watching YouTube, using VS code... etc).

The dock also supports 1080p HDMI out (unfortunately no hot docking with FKMS drivers, but the Pi automatically reboots upon hotplug detect) as well as USB-C charging and has a pretty cool OLED 128x128 display that accepts 16-bit raster images over USB from the CM4, communicates to the Pico over SPI, piping the relevant information to the display based on the game you've just launched.

YveltalGriffin is helping me with the OLED code on the RP2040 side, since he is a lot more experienced than I am when it comes to using the Raspberry Pi Pico based on his previous project work. Thanks to him we already had a great starting point to go off - I can't thank him enough for the help and his work effort + time to help me make it happen! I've been trying to piece together small bits for the python script to extract the relevant information we want to be displayed too but my coding skills are to put it bluntly, pretty crap.

1664372050922.png


Booty shot:

1664372348444.png



The PCB design. Currently the Pico is not integrated onto the board for the first prototype, however I would like to have it all on a single PCB for the final product eventually, of course.

1664374259199.png


The OLED is going to have a few cool "modes", which will be togglable with a push button by the user on the side of the dock. Some of them we had in mind include:

a) A Retro Lite CM4 splashscreen on power detect
b) Raspberry Pi CM4 stat menu (CPU temperature, RAM usage, CPU usage, disk space) - automatically runs when no game is playing/you're using the Pico in desktop mode as a regular PC
c) Game marquee/box art view (automatically loads depending on the game launched) - selectable in code
d) Game metadata menu (shows the game description, copies sold, year released, number of players - basically a lot of information about the game you're playing. Text will hopefully scroll vertically across the panel).
e) Automatic screen timeout after 30 seconds of inactivity to prevent OLED burn-in (wakeable with a push button)
f) All possible variants of the console released (including limited editions) in raster form (scaled down to a 5:6:5 RGB @ 128x128 resolution). For example, if you launch a GBA title, one of the following images could be displayed at random from the given system directory. It's taking a while to make all these images, but I think it'll be worth it in the end! I'd like to thank Ampersand for kindly providing me with the awesome vector images to use in my project.

Gameboy Micro - Famicom - red w gold faceplate (Japan, 2005).png
GBA -Spice - orange (Japan, 2001).png


Or if you launch an NDS title... for example:

Nintendo DS Lite - Coral Pink.png
Nintendo DS Lite - White.png
Nintendo DS Lite - Mario Edition.png


Or a Game Boy Color title:

Game Boy Color - Special Pikachu Edition.png
Game Boy Color - Green.png
Game Boy Color - Pokemon Orange and Blue.png


And so on...!

1664373360716.png


Here's a few pictures of it working inside the dock. The python script does all of the image conversion before it's piped over USB serial to the Pico to send over the raw bitstream:

1664372586654.png

1664372464462.png
 
Last edited:

StonedEdge

a.k.a. ClonedEdge
.
.
Joined
Nov 16, 2018
Messages
380
Likes
1,545
Location
Japan, Tokyo
Portables
2
Do you know if your pe card is compatible with the Radxa CM5?
To be honest I’m not entirely sure yet. The Radxa CM5 will probably have a lot more power draw than the CM4 so a new boost regulator which can handle the current would be required I would think. Otherwise most of the other things would work, except for the second HDMI channel attached to HDMI out, as Radxa CM5 only has one channel (the RK3588 has two channels, but the S variant only has one). I would probably need to redesign a new board, on second thought.
 
Last edited:

StonedEdge

a.k.a. ClonedEdge
.
.
Joined
Nov 16, 2018
Messages
380
Likes
1,545
Location
Japan, Tokyo
Portables
2
The Retro Lite CM4 is open source now for anyone who wants to build one - CM4 availability is supposed to improve in a few months, so thought it would be good timing to release it: https://github.com/StonedEdge/Retro-Lite-CM4

A written build guide/part sourcing guide will come in the coming months for those who want to have a crack. The GitHub contains all CAD files, all PCB files/gerbers + BOM. Recommended to order parts from Digikey if hand assembling yourself or I recommend Makerfabs, who can do turnkey assembly.

Feel free to make improvements to it and let me know if you make any progress! Some I would like to implement at some point would be:

a) HDMI over USB-C, using the TPS65987D and the TUSB546A-DCI high speed mux.
b) OTG integration (power perihperals through the onboard USB-C port).
c) DSI 5.5" display (to mimic the original switch lite)
d) Slightly larger battery for better battery life
e) Touchscreen/gyro implementation
 
Joined
Oct 28, 2022
Messages
16
Likes
9
Location
Planet Zebes
Portables
No portables (Yet)
This looks great, and I may make it my first steps int portable building, however, how would you scale this difficulty wise? I just want to know before I decide to dedicate time and money into it. Still, really cool and I love it
 

StonedEdge

a.k.a. ClonedEdge
.
.
Joined
Nov 16, 2018
Messages
380
Likes
1,545
Location
Japan, Tokyo
Portables
2
This looks great, and I may make it my first steps int portable building, however, how would you scale this difficulty wise? I just want to know before I decide to dedicate time and money into it. Still, really cool and I love it
Difficulty wise in terms of assembly it’s very easy, mostly drop in with only soldering of the speakers required.

It becomes a lot more complicated if you’re doing the assembly of the PCBs but that’s no different to assembling any other bare board - you just need a stencil, a steady hand and a fair amount of time to debug shorts/dodgy joints. If you want to avoid all that, I’d recommend just speaking with Helen at Makerfabs via email and requesting a turnkey assembly. That way you’ll receive the PCBs fully assembled with all the parts and you’ll only have to program the controller and ATtiny yourself. Keep in mind you’ll pay around $900 for a full set of 5x PCBs (includes the main board, controller boards and power/volume boards). For individual boards I imagine it would probably be pretty expensive but you can ask them for a quote.

 
Last edited:

StonedEdge

a.k.a. ClonedEdge
.
.
Joined
Nov 16, 2018
Messages
380
Likes
1,545
Location
Japan, Tokyo
Portables
2
1676274617077.png


Dock is now partially working - for those who want to try it themselves, code base available here, written in C and Python. Still a work in progress but should be done in the next couple of weeks. Right now it only displays Pi stats and a basic combined image + a splashscreen, but I have plans to integrate more features into it, toggleable with a basic button. Thanks to YveltalGriffin for helping me along the way with my code which is probably still horrible, but for a first C project for me I think it's alright. The RP2040 is super versatile (and available to purchase, wow, unbelievable!)

Full planned features list can be found at the below link:
 
Joined
Mar 2, 2023
Messages
8
Likes
1
I have a few questions,
1. Is there a easy way to order/find all the parts on the BOM? I had trouble finding parts and wanted to know if there is a easier way
2. any tips on getting the heat sink made?
3. Has anyone wondered what a 8gb cm4 would do in terms of power?
Edit: And which screen did you use exactly/ are there other compatible ones?
 
Last edited:

StonedEdge

a.k.a. ClonedEdge
.
.
Joined
Nov 16, 2018
Messages
380
Likes
1,545
Location
Japan, Tokyo
Portables
2
I have a few questions,
1. Is there a easy way to order/find all the parts on the BOM? I had trouble finding parts and wanted to know if there is a easier way.
2. any tips on getting the heat sink made?
3. Has anyone wondered what a 8gb cm4 would do in terms of power?
Edit: And which screen did you use exactly/ are there other compatible ones?
Hi there,

1. There is no real easy way to do this unfortunately. The BOM is on the GitHub and some parts you may have to hand solder like the USB2422 and TPS82085 which are both out of stock. You can get the board working without them but it requires some hand wiring. Reach out to makerfabs as they have done turnkey in the past which makes your life easier for sourcing parts and getting assembled boards. Digikey/Mouser allow you to upload an excel BoM file which helps.

2. Without access to a CNC machine this going to be near impossible to make unfortunately. You could go with something off the shelf but it will need to be pretty low profile. PCBway can do CNC manufacturing or if you don’t have your own machine, you could ask around in a machinist forum.

3. Nothing for gaming. RAM doesn’t provide any performance gains for emulation for something as low powered as a board as this.
 
Joined
Mar 2, 2023
Messages
8
Likes
1
Hi there,

1. There is no real easy way to do this unfortunately. The BOM is on the GitHub and some parts you may have to hand solder like the USB2422 and TPS82085 which are both out of stock. You can get the board working without them but it requires some hand wiring. Reach out to makerfabs as they have done turnkey in the past which makes your life easier for sourcing parts and getting assembled boards. Digikey/Mouser allow you to upload an excel BoM file which helps.

2. Without access to a CNC machine this going to be near impossible to make unfortunately. You could go with something off the shelf but it will need to be pretty low profile. PCBway can do CNC manufacturing or if you don’t have your own machine, you could ask around in a machinist forum.

3. Nothing for gaming. RAM doesn’t provide any performance gains for emulation for something as low powered as a board as this.
Is there a way to 3d print the case? And I've noticed on the GitHub you said a Build guide is coming, is there a timeframe for that?

I'm sorry I should have posted all these questions in one post
 

Dmcke5

.
2020 1st Place Winner
Joined
Feb 16, 2020
Messages
216
Likes
885
Location
Queensland, Australia
Portables
3
Is there a way to 3d print the case? And I've noticed on the GitHub you said a Build guide is coming, is there a timeframe for that?

I'm sorry I should have posted all these questions in one post
I can answer the case one. In short, I wouldn't print it. This is mostly due to tight tolerances and thin walls on the larger flat areas. That's not to say you can't do it, but you will end up spending hours trying to get buttons and things to fit nicely and it will be very flimsy if you do manage it. Stoned and I have both printed prototypes to test and it really isn't easy to get it right. Plus all of the standoffs are designed to have fine threaded tapped holes in them, which won't really work on a 3D print and I don't think you will have enough depth in most of them to use a self tapping screw instead.

I think Stoned said he's going to be working on the build guide again soon, but I'll let him give you his estimated time frame.
 
Joined
Mar 2, 2023
Messages
8
Likes
1
I can answer the case one. In short, I wouldn't print it. This is mostly due to tight tolerances and thin walls on the larger flat areas. That's not to say you can't do it, but you will end up spending hours trying to get buttons and things to fit nicely and it will be very flimsy if you do manage it. Stoned and I have both printed prototypes to test and it really isn't easy to get it right. Plus all of the standoffs are designed to have fine threaded tapped holes in them, which won't really work on a 3D print and I don't think you will have enough depth in most of them to use a self tapping screw instead.

I think Stoned said he's going to be working on the build guide again soon, but I'll let him give you his estimated time frame.
Last question (hopefully) when I go to print the pcb what are the settings I need from a online seller?
 
Last edited:
Top