Just got my uConsole and I’m having a lot more trouble than I assumed I would have.
I’m completely new to Linux. Been a windows user my whole life. I have no idea how any of this works and every video I can find on the subject confuses me with a slew of terms I’ve never even heard before. Every “beginner” video I can find seems to assume I know at least a little bit of what I’m doing, and on top of that, there’s different versions of linux and I have no idea how to tell which things apply to what.
I can’t get retroarch to load any cores or roms, I can’t get any of the linux games I downloaded from itch.io to work, the only thing I can seem to even run on here is Cave Story. And I did not spend 200 bucks and wait 10 months just to play Cave Story.
Sorry not used itch before and thought it would be a quick check.
itch app doesn’t install on my cm4 or pi5 but does install on my pc.
Are you using the itch app or game files directly?
Mm. I’m curious what made you decide to get a uConsole, when a Windows handheld can do the same job you want it to do.
Actually, that is a valid question, because a Linux computer can do anything you want it to, given courage and tenacity to get things to work the way you want it to. It seems, however, you intend to use it for retro and indie retro-style gaming.
What OS are you using? Did you buy the uConsole with a bundled microSD card? It’s also important to note that the cores you want to download have an aarch64 version. You can’t run x86_64 or amd64 cores because of this. You may have to depend on the OS’ package manager for the cores you need.
You may also consider running on a specialized OS like RetroPie. This is more recommended, as this comes with more recent software and updated under-the-hood stuff. You will have to install the OS to the microSD card. The link contains instructions on how to do so.
Again, make sure the games you want to play have an aarch64 version. That or use a hypervisor like Box64.
Thanks for the reply. So the bit about RetroArch has been handled. Figured it out and in the process learned a bit about the command terminal and setting permissions.
As far as what OS? Whatever comes with the console. I believe it is aarch64.
As for why I didn’t spring for a Windows handheld, there are a few reasons why. Not gonna get into it but the short version is I’m getting tired of windows’ shenanigans.
I think the issue is I don’t know where to start. Retro gaming was one reason the uconsole caught my eye but I was also looking into using it for music. Pure Data and Sunvox are programs I’m already familiar with that I was told run on raspi.
So we’ve established you bought the device with the Raspberry Pi CM4 bundled. As you may know, the CM4 is an aarch64 device, which means it can only run programs built for aarch64 or any.
The uConsole runs Debian by default. You might want to look up tutorials for new users on how to use Debian or play games on a Raspberry Pi 4.
Which uConsole did you get? If you’re on the uConsole CM4, Rex complied a version of Debian that’s newer and includes bug fixes for the screen and battery. Bookworm 6.6.y for the uConsole and DevTerm
If you are interested in playing games, Rex also complied a build of Retropie for the uConsole CM4. The advantage it has over Retroarch in a desktop environment is it draws directly to the frame buffer, significantly improving performance. RetroPie for uConsole and DevTerm CM4
ClockworkPi’s more of a hardware company than a software company, so I view the SD card bundled with the uConsole as more of a proof-of-concept than something you’d want to actually use.
Agreed. This is true of the DevTerm as well. This was even true of the Gameshell, though being a simpler device the official OS was mostly usable, if not taking advantage of all, or even most, of what it could do. But the community still provided much better/faster graphics drivers and better launcher options, not to mention some custom skins/themes, as well as lots of software ports of emulators and games to run on it.
Personally, I think the SD card the ships with these devices (or the official download from the company website) is mostly useful after building the device to check that the hardware works. Boot up, check the buttons/keyboard work, wireless works, charging works, etc. Since they’ve done testing against it and verified things work, your device should work with it too. After that, if you want to use the device to its full potential, that official SD card is best put away as a backup, and one of the many custom builds from the community should be used on a fresh SD card.
All these devices are meant to be tinkered with, not as much as an option, but as a necessity. Hardware mods are generally an optional thing (with an exception for the uConsole being the wifi antenna, which at the very least needs to be separated from the metal base with some tape/foam). But software mods, or rather, custom built OSes from the community, are kind of necessary if you want to actually get the most out of the device(s). The nice thing about the CM4 for both uConsole and Devterm is that all the existing Raspberry PI (4) software should “just work” on it. For the A06/A04, R01, and Gameshell devices, software has to be custom built, so unless someone is comfortable setting up their own build environment and building everything they need themselves, they are dependent on the kindness of others to provide these custom builds as downloads, and that’s the sort of thing that also doesn’t get updated or maintained forever.
I’d really like to help but this is an incredibly nebulous question. I’ve read this thread over a several times and am at a complete loss as how to help. “Linux” is a DEEP topic. It would help if you had some DOS and BASIC experience. After all DOS was a partial and broken clone of CP/M and UNIX. But from your statement I’m guessing you’ve missed out on those stages.
It seems like what you’re asking to do is: how to download some random piece of software and run it. Unfortunately due to the undisciplined nature of the Open Source world that’s a nearly impossible question and difficult at best. Your best bet is to stick with what’s in the supplied repositories until you build up some experience. Or find others running the software you want in a forum, like this one. But ask specific questions: how do I install X on my uConsole running {os}?
To have a chance to download and run software you need to pay attention to the requirements, which are not always published. The first thing you need to do is make sure its compiled for your architecture or uses an interpreted language for which you have the interpreter (Java, Python, C#/dot-NET/mono, Ruby, …)
Unfortunately CPU architecture names aren’t as straight forward as they ought to be. Here are some common variations starting with what people would usually call them, followed by the Debian architecture name and then others:
Intel x86 32bit: i386, i486, i586, i686
Intel x86 64bit: amd64, x86_64
ARM 32bit: armhf, armv7l
ARM 64bit: arm64, aarch64
MIPS something or other: mips
Because of the dominance of the IBM+Wintel platform, if a package doesn’t declare its architecture its likely Intel 64bit. The exception being if you find the software some place that caters to some other specific piece of hardware, like the Raspberry Pi.
In general you’ll also have to get familiar with
The “shell” (typically “BASH” on most Linux installs) and its concepts: environment variables, globbing (* ?), pipes and some helpful shell commands: for & while
File system layout (/bin, /dev, /etc, /usr/bin, /usr/share, /var, …)
User accounts, file system permissions and “rights” elevation (su, sudo).
Since your using Debian and the vast majority of OSes you might install on ARM devices are Debian based, an understanding of how to work with Debian packages is essential:
repositories
apt(-get)
dpkg
apt-cache
Higher level package managers like: aptitude (terminal), synaptic (gui), … depending on what gets installed with your environment.
“aptitude” is usually there ready to run from a terminal. But its prompts can be confusing when it comes to resolving dependencies and conflicts. Because of critical flaws in GUI tools I use apt-cache, apt-get and dpkg exclusively since Debian 6.
And then there is getting to know whatever additional tools came with your distribution or are installed by your preferred environment. I always think of Debian as the “OS construction kit”. This is likely why its the base of the majority of distributions. As such you can install pretty much any of the popular GUI environments (GNOME, KDE, LXDE, XFCE, …) if you know what you want and what the package(s) are called. Personally I run my own custom blend.
Compiling from source is difficult at best. But other things you’ll likely need to know:
configure
ldd (for trouble shooting)
basic gcc
git
make
other compilers depending on the package (Rust, GO, …)
dependencies and how they are managed.
development packages
More than likely some understanding of the languages being used by your package will be a benefit.
Linux is one of the few OSes that let you make it what you want. Commercial OSes are all about owning you (vendor lock in, upgrade sales, …) Linux is not. Unfortunately with choice comes complexity. There is a lot to learn to go from 'woes to Linux. As has been mentioned above starting with a distro more tailored to your endeavors will be of significant benefit.
When on a forum ask specific questions. From the answers you can request more detail to learn more and start to build your knowledge base.
Unfortunately I don’t know of any decent Linux tutorial books. Most of the authors are just giving brief overviews of things they think you might use. Finding and reading one might help. The best info I’ve found are UNIX texts from the '70s and '80s. But while these provide a good foundation they don’t address software that is normally considered part of “Linux” today, like GUIs.
I have just scratched the surface. There is much more to say. But I must carry on with my day…
NOTE: I tried downloading and running a package from your “itch.io” on my AMD64 desktop and it didn’t run either. Today’s software is sooooo broken!
I’d add that there are some (admittedly rare) github repositories with good, step by step, documentation for building and installation. These tend to be the most popular software to install, because large interest, and large usage means at some point someone usually steps up and writes decent documentation and guides. For the uConsole, the best options would probably be things made with Raspberry Pi specifically in mind (and explicitly mentioned). While things like Pi-Apps exist and make it easier to install stuff, I’d argue that they hide so much as to be counterproductive if you actually want to learn how things work. I think they’re better if you already do (mostly) know how things work and you just want to grab something and install it quick.
An example (maybe not the best) of a github project to install might be:
There’s a LOT of information there, but the section on building for Linux is usable on pretty much any platform. Something like box86 would also be a good thing to install from scratch, as a learning exercise, but that’s probably more of an “advanced” thing to try since there are a lot of steps and lots of potential ways to go wrong. It’s pretty much standard on Raspberry Pi now though, so as long as you use a guide with Pi4 in mind, it should be fine. It can be installed using other tools, but again, I’m thinking of this more as a learning exercise. My guess is that installing some well documented things might be a good way to learn. Part of the reason some are easy to install (at least for Linux) is that things are wrapped up nicely in makefiles, prerequisites are spelled out, etc. But with enough experience installing well packaged/documented software, patterns might emerge that make it easier to install future stuff, or at least know what to expect.
Unfortunately for uConsole/DevTerm and other ARM Linux users. If someone puts out binaries “for Linux” they mean PC/x86 and not ARM. A tiny percentage of games on itch.io release games that will work on ARM, they usually label the releases as for Raspberry Pi. Most (all?) of these will work on all the ARM modules available for the uConsole, but not on the RISC-V module.
Computers used to be really complicated until PCs and Windows took over and dominated the industry. Some of us are old enough to remember that home computers were not very compatible with each other.
I hope you find it useful. But in a way you did. There are open source and freeware games outside of itch.io that will work (for example Beneath A Steel Sky). And there are lots of tools and utilities that just work out of the box on any Linux architecture. Stuff like graphing calculators, synthesizers, MIDI sequencers, editors, compilers, publishing and writing tools, lots of miscellaneous stuff.
Welcome to Linux. It sounds like you’ve jumped in with both feet. I’m both sorry and excited for you!
A lot of things in Linux are hard to do through the GUI, so any guides or things you find will likely have you put some commands into the command line. It’s conceptually the same as it is on Windows/DOS but the syntax is slightly different.
If you get stuck. Search for stuff, use multiple search engines if you have to. Google tends to find Linux stuff a little better than Duckduckgo. Go for the search results that are on Reddit or Stackoverflow for somewhat reliable advice. Sometimes you can find some dedicated nerd who has a blog full of Linux tips, those are usually a gold mine for other information and good to bookmark.
Linux has lots of log files and most commands will print their errors to the terminal. If you launch a command from the GUI there is no terminal, so the error messages are just thrown away(!!!).
Running programs from the command-line will usually spit out lots of messages, so if something is failing that is a good first step. See what errors it prints out. Cut and paste those and search for them, or share those messages on forums when you seek help.
uConsole seems like an experiment. I’ve had fun with mine. But uConsole is more about making it into your own experience than being a fully polished product.
Great for you pal, the offer still stands for the next time you hit a wall and you start instantly *** AGAIN about what you pay for, when the user is a problem here.
I never said it wasn’t a user issue. But again, if I “hit another wall” I will use the forums as they are intended and ask for help from the other people who were -again- way more helpful than you’re being.
If I do decide to sell it there’s a line in front of you, “pal”.