FR version is available. Content is displayed in original English for accuracy.
Advertisement
Advertisement
⚡ Community Insights
Discussion Sentiment
76% Positive
Analyzed from 6968 words in the discussion.
Trending Topics
#android#ram#boot#linux#run#hardware#tablet#more#device#used

Discussion (231 Comments)Read Original on HackerNews
No BSP, no kernel source, no vendor documentation — just a DTB extracted from the stock Android firmware and rebuilt from there.
The tablet boots Linux directly from SD without modifying internal Android storage. Remove the card and Android still boots normally.
The process is intentionally simple: write the image to an SD card from any operating system, insert it, and boot. No flashing tools, no bootloader unlocking, no custom recovery, and no permanent modifications to the device. It can even be prepared directly from Android itself using an external SD card reader.
I used Claude, Gemini, and ChatGPT heavily during bring-up for driver debugging, DT syntax, and kernel configuration issues. They accelerated development significantly, but the actual reverse engineering still required hands-on embedded Linux work: boot-chain analysis, DT bindings, panel timings, register experimentation, and kernel panic debugging.
This project also convinced me that modern mobile hardware is massively underutilized once vendor support ends. Many phones and tablets already have hardware comparable to SBCs, but simple external boot support could extend their useful life for homelabs, edge computing, local AI inference, and embedded workloads.
Any feedback, ideas, or contributions are very welcome.
I know you just registered to post this, but AI generated comments are not allowed here.
The project looks very cool. Just take the time to write your own comments in your own words and it would certainly be welcomed.
I feel the frustration of reading "slop", but on the other hand the projects that surface do usually bring something useful to the table.
Should we simply judge the submission based on its technical merit? Why do I feel annoyed that an otherwise cool project uses typical LLM prose? For how long will we be able to recognize LLM-generated text, and what happens when we can't?
The people who don’t even take 30 seconds to write their own comments aren’t here to share their knowledge or discuss the project. It’s self-advertising. They might be following instructions from the LLM to post it here. There was a project a couple days ago that still had the AI-generated marketing plan in git which instructed the person to post it here and then on some subreddits, including marketing copy to include.
The projects often don’t work, too. Remember the guy who claimed to have uncovered a multi billion dollar Meta influence campaign? When I read the documents they had output from Claude saying that it failed to access the documents, but then it guessed what the document might include. The whole report was full of this, but it was posted here and upvoted as if someone had done deep research.
For Wi-Fi, I even contacted the chip factory. They didn’t answer at first, so I wrote again in Chinese with AI’s help and eventually got the drivers.
We are not yet at the point where you give AI a tablet and it magically returns a working image. AI helped a lot, but it also introduced bugs more than once. The real work was still testing, breaking things, fixing them, and repeating.
I posted it here because I think the project is useful and could attract people who want to build on it. All the devices should be more open, repairable, and reusable, so we can actually own the hardware we buy.
That's exactly how I'd write it, save for the em dash with spaces around it, which is not how em dashes are normally used in English language.
I think it's an overreaction.
How are you able to boot Debian from an SD card, and without unlocking the bootloader?
Does the bootloader look for an OS on SD card by default? SD and eMMC are basically the same thing, is it just the same lines but an SD card takes priority over the eMMC? And does it not enforce verified boot properly / at all? Maybe being a Rockchip and not MTK/QCOM has something to do with it, but it’s still an Android device and I would assume there’s something in CTS/VTS/GMS licensing that makes verified boot mandatory.
But the answer is fairly simple, on a lot of Rockchip devices I’ve used, if there is no SPI flash or custom boot order, the BootROM checks the SD card first and then falls back to eMMC.
That is what happens here. Take the tablet out of the box, write the image to an SD card, insert it, and it boots directly into Linux instead of Android.
So the eMMC Android bootloader can be locked, but it doesn’t matter much if the SoC boots from SD first. Verified boot applies to the Android boot chain on eMMC, not to an external boot path that is accepted earlier by the Rockchip boot flow.
And now you’ll never know if this was an AI answer or not :)
Judging from the build.sh, it looks like this is just using unmodified upstream u-boot and tools from the rockchip-linux repository, so "from scratch" is really just analyzing the DTB to see what drivers need to be loaded?
here the hardware is fixed and undocumented. I didnt modify the tablet, I had to figure out what was inside, what could be supported, where to find missing drivers and how to integrate and debug everything until it actually booted and worked.
I am not claiming to be a C or kernel developer. I am just someone hacking around until the device works. Maybe for others this is trivial, but for me it was a very exciting project.
https://www.fer.xyz/2025/03/xpi-s905x3
In the DTB, I also added eMMC support, so you have full access to it from Linux. This means you can dd everything to the eMMC if you want.
Is full 3D acceleration eventually possible and how's battery live?
What I'd like to know is what software runs adequately under it in 4 GB RAM. Web browsing should definitely be possible, but I suppose it's limited to very few tabs. Some very lightweight DE could likely make it more usable. Running something like WezTerm + tmux as the DE could be even more economical, leaving some room for e.g. development tools.
Firefox is actually pretty good in low-memory situations, silently discarding tabs when under memory pressure, but the main benefit comes from being able to run proper adblocking. Chromium-based browsers just can't compete these days.
Otherwise, a bog standard Gnome-based Debian Trixie desktop should be pretty doable. I'm currently using an 8 GB machine with 3.7 GB RAM free - Firefox, evolution, gnome-calendar, and gnome-software are the only apps that using more than 100 MB, and none of them are obligatory.
as in, I click "open in new tab", some time later I switch to them... only to get hit with "new tab", even though a moment ago it displayed tab name and I could right click -> bookmark to preemptively copy the address
I never have more than 4-6 tabs open so that would not be an issue.
Any familiarity with Safari and blocking performance? uBlock Origin Lite is a simple option, AdGuard can do more (injection?) though uBO feels more trustworthy still…
I find this question rather sad.
Hope this makes you feel better.
Some time ago I got myself a similarly priced x86-64 Windows tablet on Amazon (Celeron N4020 + 4 GB RAM). I installed Linux Mint on it with a slightly customized kernel (some extra quirks were needed).
I connected an old SSD to it with a SATA2USB adapter, and I use it as a home file server and HTPC. It has a micro HDMI output, and it is connected to my TV. During the day it is playing music non-stop, in the evening it is playing some movies. It has no problem with high bitrate full HD movies, the CPU doesn't even break a sweat. I think it could also play 4K content, if I had any.
(Previously I used a Mac Mini with VLC for this for a few years, but I'm happier with my current setup, it's more stable)
That sounds like an problem Windows could solve.
We can start by throwing all that Electron junk out of the window, pun intended.
If people have to buy new PCs, that’s more $$$ for Microsoft.
Since I have a desktop I do use rustdesk way more often to just boot into that.
main trouble to me has been caused by unity games - those are the big ram devourers, even most basic 2D ones (I still don't understand how that happens, why such regression since KSP days)
and plenty of 2D games work perfectly fine (devs really overestimate minimal requirements)
Generally it's probably just bad optimization. But that only gets you so far because Unity's asset streaming is designed to work with level-based games. It will only let you unload assets if you package them per-level and then swap them in and out at load screens between levels. Absolutely useless for games like KSP.
and yet KSP flies fine, while visual novels crash
> I suppose it's limited to very few tabs
Not really. Haven't used it super heavily, but I haven't felt limited by tabs. It can handle multiple YouTube tabs, too.
> Some very lightweight DE could likely make it more usable. Running something like WezTerm + tmux as the DE
I use sway on it. It's perfectly responsive. I expect i3 with Xorg would also be. Neither count as a DE, but neither does a terminal + tmux.
I daily driver Librem 5 phone running a Debian-based operating system with 3 GB of RAM. NoScript on Firefox allows me to browse quite well. Zram helps, too. By the way, unlike the discussed device, my phone runs a mainline Linux kernel.
If you favor them over a huge DE, a distro with a lightweight window mamager / wayland compositor will only use around a hundred of megabytes, so with 3.8-3.9GB you have plenty of memory to run apps running on regular OS toolkits.
And having a bit of hygiene like exiting apps you are not actively using goes a long way.
Most of the games I play run in 4 GB, but since my Chromebook only has 32 GB of storage, There are some I can't install and I generally only have four or five installed at any given time.
So the software does exist, plus for the TUI and CLI folks, that would be plenty of space.
When I bought my 386SX 20 Mhz with 2MB, 40 MB HDD, that came with DR-DOS 5 and Windows 3.1, I could have bought a PC with OS/2 2.0 instead, in today's money that would have bumped my credit request in an additional 1000 euros, for the additional hardware.
So DR-DOS + Win 3.1 it was.
Even if it is SSH to some cloud server it might be ok.
We lost quite a bit moving away from Internet protocols into everything is HTTP(S).
https://www.doogee.com/products/u10-vip-edition?variant=4431...
If that would be real RAM, and not only swap I'd feel tempted.
Edit: Never mind, already sold out...(meanwhile, 15 minutes, or so)
16GB RAM (4GB+Up to 12GB Extended RAM)
Worrying about only having 4GB of RAM.... that's how I know I'm getting old I guess. Kids these days don't know they're born.
BTW OP, have you ever tried a hybrid Chromebook tablet like Lenovo Duet 3? This is my favorite device for travel exactly because it is so good as a small Linux machine. Crostini fits the "I want to run a Linux VM". You can even use postmarketOS if you want an even more "traditional" Linux experience.
I wrote about it here :
- https://kokada.dev/blog/my-favorite-device-is-a-chromebook/
- https://kokada.dev/blog/my-favorite-device-is-a-chromebook-w...
"Another issue is that this device is working well enough in v25.12 release, but I tried edge once (the rolling release channel) and my touchpad started to work in absolute instead of relative mode."
I (foolishly) did an apk upgrade and ran into this one - an AI fixed it for me, its caused by keyd having a too broad device mask (0000:0000) so it grabs everything including the touchpad causing havok. From my noteslop: "The fix was to patch /usr/bin/pmos-generate-cros-keymap to match the exact cros_ec keyboard ID, k:0000:0000:af5c732c, then regenerate the config and restart keyd so it no longer grabs the touchpad. "
I usually prefer cheap devices for travel, because you never know when something gets lost, broken, or stolen. This tablet fits that well, Android for the kids or for testing an app, and Linux when I need something more specific.
Asahi developers have done amazing reverse engineering and driver development. But for the foreseeable short-term, there's no chance of it being installed on a current M-series iPad; it can't even be installed on a current Apple laptop.
I think the Macbook Neo might change that. It's not even an M-series, so there's a quite a lot of work to get Linux running on it. But because it's so much cheaper than the other laptops, and quite powerful, it makes a good "spare" laptop for people who can afford an M-series. And it probably has many internal functions similar to the M-series. I think it might get more attention by reverse engineering enthusiasts over the next couple of years.
Also, AI agents can help experts with reverse engineering labour in ways they couldn't a year ago. (I'd love to do this, if anyone out there wants to pay for it :-)
It discovered the tablet was running a unisoc t606, found a CVE from a couple years ago, and unlocked the bootloader for me. I was the meat puppet holding the "volume up" button and plugging in the usb cable a bunch of times. Like most of my experiences with this stuff, it was pretty eerie.
Next step for me is to attempt mainline linux, there seems to be some postmarketOS devs playing with it. We've probed most of the tablet's hardware except the exact display.
https://codeberg.org/ums9230-mainline/linux
It managed at first, but the bulb didn't light, it couldn't work out the GPIO/IC it was using.
So left it plugging away, and now it's bricked
Yay
What sort of token spend did this take?
The key is to have downstream sources and be very very conservative with the AI, slowly build step by step.
You also have to know C and have a spider sense of what's acceptable or not.
Another key is to ask for approval before editing any source with a patch of what it intends to do. This way you can judge what it wants to do and ask for a double check of the patch. Go quality over quantity.
This isn't web frontend with Tailwind, you have to be very strict and somewhat knowledgeable. Nobody can use AI to write kernel code without some good low level and engineering knowledge.
I completely agree, this is not the place to let AI blindly edit kernel code. The useful approach is to use it conservatively: understand the error, compare against downstream sources, propose a small patch, review it, test it, and then move one step further.
I’d be happy to work together on an article or guidance document, where to start, how to approach debugging, what to never let AI touch blindly, and how to build confidence step by step. That could help others avoid a lot of mistakes and maybe give a second chance to other devices.
As for PostmarketOS, I've built my own tooling scripts around it to make it easier to build patches, debug hex variables, switch between downstream/mainline and rebuilding everything with a single command. (Unrelased yet though).
I find their tooling okay for a release for end-users but a bit clunky for debugging.
And that's 90% of the problem, lots of these cheap devices are using undocumented hardware.
https://news.ycombinator.com/item?id=43474490
I prefer spending my time doings I actually want to do. Let the machine do the boring things.
Once the news gets out about epic breakthroughs on commodity hardware and devices, there's unfortunately a likely spike in the purchase cost, even if such devices can be found at all anymore on the usual online sources of new and used goods.
https://ebay.us/m/fYqBgc
They're trying to pawn off something with the resolution of the Steam Deck at 10.1 inches running Android with what I would consider the minimum RAM loadout for this device.
The supposed EU-compliant informational brochure I found on a local web store states that the device runs Android 13, so there's a good chance they're either lying about the Android version on eBay or they're faking out the Android version like many Temu phones do.
These devices are useful for two things: to keep kids quiet with a device that can be replaced for not too much money, and now as a means to run Debian on.
The tablet is from around 2023, with later revisions around 2024. My point was that this kind of older cheap hardware is already out there in people’s drawers.
If a device can boot from SD and the hardware can be documented enough, it becomes a good candidate for reuse instead of becoming e-waste.
- Bookworm rather than Trixie looks like a conscious choice. Does 13 (either via apt upgrade or direct installation) not work?
- What's the performance of this hardware like? I've got an old Samsung tablet that's not rootable and it's really creaking on recent android. I'd much rather something like this, but I don't want to swap one too-slow thing for another.
Performance is usable, especially compared to stock Android, because there is less background bloat. It’s fine for terminal work, light browsing, VS Code, and small experiments.
If you want you can check my video: https://youtu.be/DbX13_mahKc
This tickled my imagination and I wondered about a AI assisted reverse engineering platform with a complete build system in which the AI is connected to ports (serial console, gpio, i2c, spi, etc) normal physical switches (on/off, reset, etc) of the target board and a logical switch that can rotate among multiple SD cards either to the development PC and to the board so that the AI itself can download, build in parallel and test images and software freely offloading the most time consuming parts.
At least that's what happened when I created a Python sdk for my $500 video light.
Linux can be trimmed way down and with an efficient stack on top can make many devices extremely useable.
Here is a related comment on user software side I made recently.
https://news.ycombinator.com/threads?id=alchemist1e9#4800737...
You could probably have the bootloader just load the kernel from the SD and then everything from the local storage
You might wanna run something like pmOS on it though, with a UI focussed on touchscreen. Not sure which one is best these days.
Yet to set one up though so can't vouch 100% there.
I have a GPD Pocket 2, and was wondering if I could/should repurpose that to such, or if I should give them access to my Hackberry Pi 5 (it has a Blackberry keyboard, perfect for little hands). Both have a touchscreen, but it isn't really made for say multitouch AFAIK. Still, he could at least use touch on the device. On our laptops he sometimes swipes. His big sister has a tablet (iPad Pro), and I like the parental controls on iPadOS, but OS does not get any updates anymore. I'm going to have to replace the battery of it at some point, not looking forward to that. GPD Pocket 2 and Hackberry Pi 5 battery replacement are a piss.
We also still have two MBPs from 2015 lying around. One my wife still uses for work, other one is backup. They'll both get their battery replaced after nearly 8 years, and both have 16 GB RAM, so these are still nice machines. With third party tooling, they can still run macOS, but macOS on x86-64 is coming to an end, and when that happens, Linux awaits. They can even run a Linux desktop on my NAS with remote session, if preferred. But I am not sure how decent multitouch is these days remotely. If it is any good, I'd be interesting running 'Android' (some AOSP-based OS) in a VM instead. I've done that in 2021/2022, using Waydroid, but not extensively. Just a few specific apps.
Maybe it could boot NetBSD
https://wiki.netbsd.org/ports/evbarm/rockchip/
It would need a port of UEFI to the tablet, NetBSD doesn't use u-boot and FDT for RK356x SOCs.
I did mention this in the license section, last line of the README.
If you have decent soldering skills, there are guides online about how you can replace the battery in devices like these by soldering a resistor and a buck converter to the battery pins so it can run permanently without turning the battery into a lithium bomb. If you set up ADB access you can control the screen remotely using scrcpy, all you'd really need is a cheap second hand phone, 20 bucks worth of parts, and a steady hand.
Question:
Does the virtual keyboard provide all keys necessary to program bash shell scripts and edit Vim files— such as Ctrl+C and ESC, etc.
Thanks again, LRP
I think the best way to distinguish between a workstation and something else is by defining what its use for, not what it COULD be used for. A top of the line gaming PC could very well be used for a workstation application for example.
Perhaps Doogee could've ported Android better, but I don't think Android will ever run smoothly on this device.
Android contains a lot of tricks to cache as much as possible in RAM so things like sleep/wakeup and app launching can be very fast. You can see the device take a while to launch a terminal on Debian, that's exactly the kind of thing Android uses all of its RAM for to prevent.
I've run postmarketOS on an old Galaxy Tab II back in the day and that had similar (though much worse) issues. You can open minimal applications quite quickly, but the on-screen keyboard doesn't open and trying to things like scaling are likely broken.
It used a Java VM in the early days!