Hello all!
Due to the recent statements by Google (as well as their track record the last few years) I’ve decided I do not want to use Android as a phone operating system anymore. But Apple is just as bad, if not worse. So I’ve decided to build my own custom device.
I am working on building a phone using a single board computer, right now I’m using the raspberry pi 5. This is still a proof of concept, but I want to share my ideas with others, so like minded individuals can start messing around with this idea in their own homes to further this goal.
You can view more images of the device here, as well as the step by step instructions here (these are still very rough and incomplete) https://github.com/muhammadmanwar/cheaphone OR https://codeberg.org/muhammadmanwar/cheaphone
Right now it just runs raspberry pi OS, with a different desktop look and feel. Everything that normally works in a pi 5 works on this device, additionally I am experimenting with a Mobile Broadband modem, to allow the device to text and call, as well as access internet, like a normal phone off wifi
The total cost is around 200 dollars, not including the 3d printer to make the custom case.
This project is barely off the ground, and I’ve got a lot to learn before I can stop relying strictly on the raspberry pi 5, my end goal is to custom design SBCs, and release those designs for free alongside the plans for the device, so that interested parties can select their own System on a Chip to use for the device. I need to get into designing boards, I’m interested in trying Stephen Hawes’ Lumen PnP (https://www.youtube.com/watch?v=JlkTcxh-9gA) for that phase.
But that’s for the future, for now, I’m hoping to get more people interested in the prototype so that I’m not the only one noodling around on this idea. I’d love some feedback, and if anyone was willing to put one together for testing, I would appreciate it greatly!
What I wouldn’t give (or pay) for a 1. sleek, modern smartphone 2. running a pure Linux distro 3. that’s feature complete enough to daily drive
All of the current options available fall down in one of the three areas. Usually 2. and 3… mostly 3.
that’s feature complete enough
So what features do you really, really need?
Considering their recent hardware reveals, I want a valve steamphone with a fully open system and modularity a la fair phone (or like their new VR headset) One model every 4/5 years would be perfectly ok for me.
omfg yes!
A valve / framework / fairphone teamup would be a dream. It’ll never happen but I’d pay unreasonable amounts of money to see it
i just want a linux phone with a slide out physical keyboard.
Like the Gemini PDA or the Nokia N900 ?
Fuck yes. Like a tiny little laptop or Gameboy Advance. I would replace my smartphone immediately.
I don’t care about this at all. This is a niche interest.
I just want a phone that isn’t backed by assholes that want to sell my data.
Bring back the Nokia N900!
Yes. So say we all.
So say we all
This is the way.
I mean, so say we all.
By your command.
deleted by creator
I’m sure you are already aware, but just in case, there’s a lot of prior work in getting a truly Linux mobile phone.
There are ready-made devices like PinePhone (the PinePhone Pro looks the most promising one of the bunch), Librem 5, and Liberux Nexx. I think at least some of those companies publish schematics for their boards, you should probably check those out if you want to design your own.
There is also another direction, taken by postmarketOS and the like, to install Linux on a phone that shipped with Android out of the box.
It should be easy enough to install postmarketOS on your device, since it seems to have support for raspberry pi. The benefit of postmarketOS here is that it makes it really easy to install mobile Linux UI shells, like phosh, gnome-mobile, plasma-mobile, or sxmo. This will let you try all of them out and maybe pick one as a starting point for your software stack.
the PinePhone Pro looks the most promising one of the bunch
I’ll have to advocate for the Librem 5 over the Pinephone Pro for the following reasons:
- The Pinephone Pro has officially been discontinued as of August 2025 [source].
- The Librem 5 and Liberty phones are still in production [source].
- Librem 5 PCB board design files are also available - not just schematics [source].
- Purism is already working on a Librem 5 version 2.
- Purism is pushing toward FSF RYF certification for the Librem 5 and future models.
I own a Librem5, and let me tell ya, it’s not a daily phone, hardware is just way too slow. Even with sxmo it lags a lot, opening a browser is a whole ordeal for it. Meanwhile when I tried my friend’s PinePhone Pro, it felt a lot better. Oh, and for context, I’m currently semi-dailying a OnePlus 6 with NixOS.
And the software side of it is the really annoying part. We’re missing so many components: Connected standby, an app lifecycle management, maybe sandboxing and a detailed, user-facing permission system. And then we need to go ahead and rewrite all the important Linux software to use these (not yet existing) interfaces.
I own a Pinephone, and I feel the Linux phone is within reach since the Nokia 900 (and its predecessors) and that was in 2009, so 16 years now. I believe any effort is very welcome, though. We badly need a good and free operating systems for this important device we all carry around and use hundreds of times each day.
- Connected standby is already somewhat possible (it’s actually done on the hardware/firmware side on most phones), it can work with something like ntfy with a fairly simple script IIRC
- We have sandboxing and permissions figured out pretty well with Flatpak (there are improvements to be had for sure, but all the basics are there)
The one main remaining barrier (apart from thousands of paper cuts everywhere and lack of apps), is indeed process lifecycle management. It’s the most complicated one to do, because in order to work well it requires apps to cooperate in some way, either by completely and honestly shutting down when not doing any work, or by providing ways to check if there’s any work to be done without running the rest of the app, or both ideally. None of the apps currently do that, so the only options are (1) just let apps do whatever they want, draining the battery, or (2) send SIGSTP to apps that are not in the foreground, losing background notifications and such.
Yes, good job at explaining the app lifecycle. I brushed over it because I had no idea how to phrase it in a concise way. And it’s really the million papercuts that stopped me from using the Pinephone. I tried.
Connected standby is already somewhat possible […]
Yes, it’s a very crude way, though. In practice I never got the messages from my wife to bring milk on my way home. I’d read them a few hours later in the evening after unlocking and tinkering with the device. What worked well is tell people to send SMS or call, because that reliably wakes up the device. But then people forgot they were supposed to communicate with me like in the 1990s.
[…] sandboxing and permissions figured out pretty well with Flatpak […]
We do. That’s how some modern distros like Fedora Silverblue work. But then it’s somewhat problematic with phones. These packages are supposed to come directly from the various upstream projects. And then the phone distros can’t patch them any more to deal with the peculiarities with the inconsistent ecosystem. So we’d either need to have a good platform first and all agree on it, or repackage everything in a way unalike how Flatpak is done today. And then it fills up storage fast with all the runtimes and dependencies and a phone has limited storage available.
I think hardware wise, that leads us to re-invent the laptop. Not a phone by any means. We need a large SSD for all the Flatpaks, lots of RAM to keep the software running in the background and a large battery stapled to it because none of it is energy-efficient enough.
It ain’t easy… I think we’re making (slow) progress, though.
Let’s not forget all the software that was done and kinda ready for the openmoko device. There were a few distros for that alone. Some were pretty stable but the biggest issue came down always to phone call quality and connectivity. I’m completely out of the loop but back then all the chips were so closed in themselves that they were basically black boxes. A huge effort was made to try and get them to work as well as possible, with varying degrees of success. I wonder if it continues being the same nowadays.
The N900 was such an amazing device, I still have it around and the UX was the best I’ve had in a phone, Maemo was truly great and way advanced to its time. That UX with the screen sizes we have today… I keep dreaming.
Phone quality on my Pinephone is nice except when it isn’t. We have a largely Free Software baseband running on the modem. You can tell it to run a high samplerate and it does VoIP and 4G. On the flipside it doesn’t always work and there were issues with additional stuff like echo cancellation, which then takes away from the experience. Openmoko was great as well. I think it was so very open, people could do silly things with the phone network. But then it’s old tech by now and the 2G (GSM) phone network is obsolete and they turned off the cell towers in most areas by now. And I think the software on it didn’t really translate to the phone generations after that. Afaik the entire software stack didn’t carry over and we’re using different dialers, messengers, calendars etc now.
We’re missing so many components:
PureOS disagrees.
This is a sexy device. But can I ask you to make a repo on codeberg ? Github has been taking down repos that might be a threat to Big-Tech monopoly
Thanks for the suggestion, I mirrored the repo here: https://codeberg.org/muhammadmanwar/cheaphone
I may end up switching entirely to code berg, but I’ll see how bothersome it is to push changes to both before I fully migrate. Thanks again!
I’m not sure if you can do it the other way around, but you can set up a push mirror on codeberg so you only have to push to one forge.
can’t see from the pic (more of them appreciated), but it looks like you can desolder the ports to save on space.
I’m not sure how to add more images to the post, sorry. But I uploaded images to a repo, in the pictures directory https://github.com/muhammadmanwar/cheaphone OR https://codeberg.org/muhammadmanwar/cheaphone
i love this kind of thing. yeah you can definitely desolder the ports and try to squeeze it closer to the screen, you can rewire them with smaller connectors if you need to. round the printed chassis down and you got something much more ergonomic.
others mentioned you can run postmarketos, but i’m sure you can also get android running too. with the low resolution it is at least running smooooth.
also aliexpress is your friend. a lot of stuff is already designed and made and can be a stepping stone into making it work better as an actual phone, and as “inspiration” if you really want to eventually design the circuits involved into a single board. things like the charging and control circuit for that battery, for starters. or better screens/batteries.
i wish you best of luck!
there’s a youtuber working on something similar, maybe yous can join forces: https://youtu.be/OgMdO0ckICg
Wow! That does seem really similar to what I’m doing. And they seem further along than I am. I’ll have to look into this project some more. Thank you!
you could try one of these guys and a cm5 saves you some space https://www.pi-shop.ch/nano-base-board-a-for-raspberry-pi-compute-module-5
This is a very helpful suggestion, thank you! I have been having some issues figuring out spacing, the battery sticks out like a sore thumb right now, so if this can save me some space I may end up moving in this direction for further prototyping. Thanks!
This seems like a very ambitious project and a great learning experience for someone working on their own. For a similarly ambitious project, check out the Liberux NEXX. The project didn’t reach its crowdfunding goal, but they did make some progress before rolling up the rugs.
I don’t know if they’re looking for contributors or if you’re in a place to contribute, but most of the project is open source. You could probably get in touch with them and ask for any advice, successes and failures, and even if they have parts (such as their dev-board) that they can give you access to.
Happy to see this out there, love the idea. Watching the repo may mess around with this at some point when I have more time.
I think everyone has once thought of the idea of taking an sbc and a touchscreen and making a linux phone, cool to actually see one!
I’m interested in this. Especially at that price point. I didn’t see any photos of device though.
I’m not sure how to add more images to the post, sorry. But I uploaded images to a repo, in the pictures directory. There are also step by step instructions to make one yourself! https://github.com/muhammadmanwar/cheaphone OR https://codeberg.org/muhammadmanwar/cheaphone
Not trying to dump on your efforts or anything here, but you’d be better off first defining a scope of what you’re trying to do, and then work off an existing hardware or software platform.
You can get phone dev kits for cheaper than $200 if you just want to build something that works without Android, but if you intend to take that further and design some of the software experience, you’d be better off just working or contributing to something that already exists.
A single person can’t even begin to touch on the fundamentals of what it takes to run a phone experience in that that we currently understand and use them. Touch UX, software<>hardware integration, peripherals like cameras…it’s A LOT. Doing it well as a single developer is just not going to happen.
If your goal is simply to not have to buy another shit Google-infested phone, you can get a cheap that runs other things right now.
From the sounds of it, it’s just a hobby project for fun for OP. I don’t think there’s anything wrong with doing something just for the sake of it.
Plus, if OP’s project catches steam, it provides more competition and cult followings which adds to the flair of hobby phones and its attraction thus helping to pave the way for more adoption and development.
This is definitely the angle I’m trying to work. The more people who know how to build these sorts of devices, the more software and hardware will be supported, and standard custom software/hardware pairings can be documented. But we won’t know what works till we try it
it’s cool that you’re making the phone, but for $200 it’s no cheaper than the more expensive version of the Pinephone.
the pinephone isn’t available at all in my continent.
Seems like the Pro is discontinued? https://www.howtogeek.com/pinephone-pro-is-discontinued/
Yes. I meant the more expensive model that is available, which for US customers at least is $200.
In Europe, The most expensive version of the Pinephone is €600 and the cheaper is €350: https://pine64eu.com/product-category/devices/smartphones/. Plus they are both out of stock.
Omg! What are you guys doing in Europe that makes it three times as much as the rest of the world? That’s insane.
Taxes














