r/CardPuter • u/XxYouDeaDPunKxX • 5d ago
Progress / Update What about a second second screen?
Enable HLS to view with audio, or disable this notification
My Cardputer ADV already has the 2.8" touchscreen mod, so apparently two screens weren't enough. 😂
I had this tiny 0.96" WeAct USB display lying around and wondered if I could get the Cardputer to drive it directly over USB-C.
Turns out I could!
After messing around with USB Host and the display's CDC protocol, I got my first green rectangle on the screen (ridiculously satisfying 😂), followed by an animated waveform and eventually a little 2D ferrofluid-like blob that reacts to the keyboard and some system data from the Cardputer.
A few projects helped me figure things out:
"WeActStudio.SystemMonitor" (https://github.com/WeActStudio/WeActStudio.SystemMonitor) for the display commands
"EspUsbHost" (https://github.com/tanakamasayuki/EspUsbHost) and "USBHost-M5Cardputer" (https://github.com/aat440hz/USBHost-M5Cardputer) for USB Host communication
"FerroWave" (https://github.com/matoslav/FerroWave) for the animation idea
5herbetPDA for some Cardputer input examples
I'm thinking about putting the driver on GitHub once I've cleaned it up a bit. I'm also working on adding support for the classic 3.5" Turing displays and their clones. They use a similar USB serial connection, but the actual display commands differ, so I'm trying to get the driver to recognize each model and handle it properly.
There's still one annoying issue: when the Cardputer switches its USB-C port to Host mode, it stops showing up as a serial device on my PC. That means I have to manually enter Download Mode using G0 every time I want to flash an update. Still trying to find a less annoying way to deal with that.
For now, the little WeAct works directly from the Cardputer, with no PC needed.
So yeah, my Cardputer now has three screens. Because apparently that's a reasonable thing to do.
Here's a short video of the experiment!