27 comments

  • tomaskafka 3 hours ago
    This is exactly what I want from the iPad Pro. Unlock the virtualization support to let me have a debian/ubuntu VM with a complete development environment that I could take for holiday to make emergency fixes, and leave the precious MBP at home.
    • tech4bot 2 hours ago
      Exactly. The hardware is already powerful enough. An iPad Pro with unlocked virtualization and a proper Linux VM would be an amazing travel dev machine. This is the reason I made this project, and I am still exploring for other tablets with better resolution and more resources.
      • kokada 1 hour ago
        That is also my dream, iPads Pro are very expensive but the hardware is so good (that is including the Magic Keyboard).

        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...

        • tech4bot 1 hour ago
          Thanks, I’ll check it out. Seems interesting.

          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.

  • nine_k 19 hours ago
    Booting into Debian with most devices fully functional is great.

    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.

    • roryirvine 18 hours ago
      Browsers and anything electron-based are your enemy.

      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.

      • spijdar 14 hours ago
        I haven't carefully profiled memory use, but in my experience, Chromium is so much more performant than Firefox on ARM devices that any difference isn't worth it. If you're using a lot of tabs, it might lean in Firefox's favor, but overall performance so strongly favors Chromium that I've given up trying to use Firefox on anything but my high performance machines. I'm not sure where the performance delta is coming from, but the whole UI and JavaScript anything are much more responsive on e.g. A73 cores with 4GB RAM.
        • parlortricks 13 hours ago
          Have you tried a firefox fork like Librewolf? Not saying it makes a difference but it feels faster on my desktop compared to regular firefox.
      • ge96 14 hours ago
        Funny I'm using Ubuntu 24 i3 with vs code on a black 2008 Macbook
      • NooneAtAll3 18 hours ago
        it's probably the "you only notice when it doesn't work" situation, but my experience with firefox on ram limit has been a lot about tabs forgetting the url in them

        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

        • nine_k 17 hours ago
          Try the "Auto tab discard" extension. It allows me to have hundreds of tabs "open" and (in combination with Tree Style Tabs) largely blur the line between "browser sessions" and "bookmarks".
          • srean 17 hours ago
            Far better than bookmarks.

            Bookmarks do not store click history, the trajectory you took to arrive at the page. With tabs, the contexts is a backbutton away.

          • roryirvine 16 hours ago
            Yeah, agreed. The built-in tab discarder only kicks in when there's actual memory pressure, so can sometimes be a bit precarious. Auto tab discard happens way before that, so tends not to be affected in the same way. I guess it uses more i/o in total, but it's not noticeable on a system with a fast-ish SSD.

            It can still be a bit iffy when memory's really tight, but even then a simple tab reload is usually enough to fix things.

        • jolmg 13 hours ago
          Haven't had that happen, but what I have had happen is that I open in a new tab, and it just displays this spinner in the middle of the window while on the tab. It never loads. I take the URL from the address bar and drag it into yet a newer tab and there it loads. Then I close the original new tab. Sometimes I gotta do that a few times for the thing to load. I tend to open in new tab with middle click, if it makes a difference.
      • Barbing 15 hours ago
        >[Firefox runs] proper adblocking. Chromium-based browsers just can't compete

        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…

        • epiecs 2 hours ago
          A free option worth checking out: https://github.com/0xCUB3/wBlock . I have been using it on my mac and my mobile devices and it syncs up nicely and seems to perform well :)
      • fwip 16 hours ago
        Seconding ad-blocking. I have a low-end phone (4GB ram, and a mediatek processor from 2018), and setting up DNS-based ad-blocking made a lot of sites go from unusable to usable.
      • donw 9 hours ago
        ... I haven't seen an ad in years, thanks to Brave, which is as of the last time I checked Chromium-based.
        • void-star 7 hours ago
          I was thinking about Brave too while reading this thread. I’m not on a memory constrained system exactly but Brave seems to be tons snappier due to its as blocking. I wonder too if Brave is a case where you can pull it off and still take advantage of chromium based.
    • NL807 5 hours ago
      >What I'd like to know is what software runs adequately under it in 4 GB RAM.

      I find this question rather sad.

    • not_your_vase 17 hours ago
      Can't speak for OP, of course.

      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)

      • HlessClaudesman 3 hours ago
        Yeah can confirm Mint XFCE works well on low end devices. The only bug I encountered is backups quickly swamping available HDD space, but it runs fine with auto backups off.
      • elch 15 hours ago
        Does it boot from the card? Is there an installation guide available somewhere?
        • not_your_vase 2 hours ago
          I find this to be a bit strange question considering that I haven't mentioned the tablet model... but incidentally the answer is "yes" to both questions - it can boot from sd card also (beside eMMC), and there is a setup guide available: https://github.com/biolds/tibuta-w100/ (somewhat similar to the OP one)
    • singpolyma3 19 hours ago
      Pretty much everything. I only had 4GB ram until two or three years ago. No swap. Never ran into an issue.
      • exe34 18 hours ago
        I have 8GB, which I've had since 2012. Never had a problem - I run a lean Nixos with just xmonad and dmenu, chrome, emacs, and about a dozen open pdfs and video tutorials.
        • niekkamer 18 hours ago
          Same here still use my laptop with 8GB DDR4 with Manjaro running.

          Since I have a desktop I do use rustdesk way more often to just boot into that.

          • cbdevidal 17 hours ago
            Y’all are embarrassing me with Lubuntu and Chrome on a 2013 Dell with 16GB and an SSD. Not fast enough for all I need to do but covers 80% of my needs. It’s my road laptop and the home desktop handles the rest.

            But you’re doing much better than me.

            • exe34 16 hours ago
              Mine is a 2012 mac book air, I've replaced the battery early this year, and last month I upgraded the ssd to 1tb. I expect this computer will be a family heirloom after the apocalypse.
              • exhilaration 8 hours ago
                I'm curious, how much to replace the battery? I bought my kid a used 2015 MacBook Air like 5 years ago and it needs a new battery, otherwise it's totally fine.
                • exe34 2 hours ago
                  £24 on ebay - it wasn't an authentic apple battery or anything. At this point, as long as it doesn't burn down the house, it's fine if it destroys the laptop.

                  You need to make sure you look at the model and the emc number and check that they match the battery you're buying. (Same for SSD upgrades).

              • cbdevidal 14 hours ago
        • nubinetwork 18 hours ago
          Opening Chrome, Firefox, discord or Spotify instantly takes up 1gb on my laptop... so that already puts me at 3-4gb... someone needs to find out why kwin leaks so much shared memory, after a week of running that alone can take up a few gigs as well. My next laptop has 32gb at the very least.
      • logicchains 18 hours ago
        >I only had 4GB ram until two or three years ago. No swap. Never ran into an issue

        That sounds like an problem Windows could solve.

        • pjmlp 3 hours ago
          Windows traces back to running comfortably with 4 MB, and my first Linux distro, Slackaware run with 32 MB.

          We can start by throwing all that Electron junk out of the window, pun intended.

        • BobbyTables2 18 hours ago
          Also sounds like a problem they don’t want to solve…

          If people have to buy new PCs, that’s more $$$ for Microsoft.

    • NooneAtAll3 18 hours ago
      having many tabs is perfectly fine - it's having many *youtube* tabs is troublesome

      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)

      • Rohansi 17 hours ago
        > main trouble to me has been caused by unity games

        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.

        • NooneAtAll3 17 hours ago
          > Absolutely useless for games like KSP.

          and yet KSP flies fine, while visual novels crash

    • AlecSchueler 4 hours ago
      I'm still using an old x200 with 2GB RAM as my daily driver. I just run xmonad and everything is pretty snappy. I can browse with multiple tabs without an issue, as long as I avoid very heavy sites like GMail.
    • pjmlp 5 hours ago
      I originally ran Slackware 2.0 with 32 MB on a Pentium 75 Mhz.

      So the software does exist, plus for the TUI and CLI folks, that would be plenty of space.

      • Fnoord 3 hours ago
        We also had a Pentium 75 MHz IIRC, but IIRC it came with 8 MB RAM. It came with OS/2 Warp. Running DOS on top of it was too limited, performance wise. Running MSDOS directly however, was amazing. The machine would run all the software I wanted. Apps and games. It also ran Windows 95, but the learning curve and speed. I was used to MSDOS.
        • pjmlp 2 hours ago
          OS/2 Warp was at the same level as running Windows NT in hardware requirements.

          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.

      • bdavbdav 3 hours ago
        Unfortunately I think just the SSL stack to support a TLS connection would saturate that now
        • pjmlp 3 hours ago
          Depends on how much browsing one is planning to do, which is why I focused on the TUI and CLI as examples on my comment.

          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).

    • laughing_man 7 hours ago
      I run Ubuntu on my Chromebook. It's what I'm using to read this now. Web browsing works just fine. There's a limit to how many sites I can have open at a time, but since I regularly view sites that use over 1 GB of ram in Chromium, that's the case on all my machines.

      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.

    • prmoustache 11 hours ago
      What software doesn't run with 4GB of ram is the real question.
      • pjmlp 3 hours ago
        A couple of Electron junk apps.
      • SchemaLoad 10 hours ago
        Most individual programs will run with 4GB but you won't be able to have multiple open at the same time.
        • prmoustache 5 hours ago
          It is really only a problem with electron apps that you can usually easily replace with opening the corresponding website on a browser and have more native and less memory hungry alternatives.

          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.

    • jolmg 14 hours ago
      Got a PinePhone Pro with 4GB.

      > 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.

    • madduci 5 hours ago
      With partial 3D acceleration, I guess web browsing is a bad experience
      • tech4bot 5 hours ago
        Only when it comes to videos or something that it requires to use the CPU instand of the GPU, but overall works good.
    • tnelsond4 7 hours ago
      I use dwm and brave and 10 tabs or so and I'm usually at about 2-3gb of RAM used.
    • briansm 6 hours ago
      I had to read that twice, I first thought you meant 4 GB of _storage_...

      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.

    • throwaway27448 16 hours ago
      Frankly if you don't need a web browser (or electron), what WOULD require that much memory? Video and photo editing maybe? Postgres? Recompiling the world?
      • sellmesoap 14 hours ago
        I first started recompiling the world with 64MB of ram, kind of funny how far we've come on hardware and made software gobble up the gains with very little to show for it.
    • LargoLasskhyfv 7 hours ago
      Apparently there is a VIP-edition with 16GB RAM, still under 200$.

      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)

      • tech4bot 5 hours ago
        Is not real. RK3562 supports maximum 8GB.
        • elch 4 hours ago
          It's 4G just like the others:

          16GB RAM (4GB+Up to 12GB Extended RAM)

    • fnord77 14 hours ago
      lynx
    • Nezk 7 hours ago
      [dead]
  • non-nil 2 hours ago
    I'm loving these LLM-powered hardware liberation projects! Another one that caught my eye that I'm hoping to make use of myself is to run Kodi on old Boxee media players: https://github.com/yoavmagor/boxee-2026-yoavm
    • abyssin 1 hour ago
      I hope we get similar momentum for all cheap Android phones!
  • NoboruWataya 19 hours ago
    Since it seems AI is pretty good at reverse-engineering stuff like this, is there any educational material on how to use it for that purpose? Seems like it could really help port things like postmarketOS to new devices (and improve support on existing ones)?
    • mewse-hn 8 hours ago
      I have claude code hooked up to deepseek, I hooked up my spare cheapo android tablet, installed adb and fastbook with my package manager and asked the AI to jailbreak the tablet.

      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

      • raihansaputra 2 hours ago
        So this is using deepseek-v4-pro / flash and using claude code as the harness right? That's really good that it works. I'm pretty impressed with how v4-pro is doing, sadly there's no subscription packages so I'm not using it too much. (Wafer used to offer it but now they don't).
      • marysol5 3 hours ago
        I had Google Gemini de-tuya and flash a smart bulb for me.

        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

      • djfergus 7 hours ago
        Nice work! A cheap MCU and some careful soldering and you wouldn't even need to be around to hold the volume button.

        What sort of token spend did this take?

    • sylwester 43 minutes ago
      I have just released a online book on that, free of charge: https://github.com/DatanoiseTV/practical-reverse-engineering
    • marysol5 3 hours ago
      Of course it only knows stuff, that it knows. Like in the repo, the author links to the already published documentation on the chip.

      And that's 90% of the problem, lots of these cheap devices are using undocumented hardware.

    • pullshark91 18 hours ago
      You should try asking AI itself about it
    • realusername 19 hours ago
      I have some experience on this and could make an article if you are interested.

      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.

      • tech4bot 17 hours ago
        I’d be interested in that.

        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.

      • waweic 17 hours ago
        Please do write an article! I've wanted to get into reusing old android hardware for quite some time now, but never knew where to look for good instructions to get started. Especially PostmarketOS seems very interesting, but rather underdocumented in some places.
        • realusername 17 hours ago
          I will then, didn't know it would be interesting for other people.

          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.

          • waweic 16 hours ago
            Sounds great! Would you be so kind to send me an E-Mail once you wrote the article?

            My address is my username @ism.rocks

            Alternatively, if you released the article on your blog, I could just follow the RSS feed.

      • ksh09 18 hours ago
        Interested!
    • ip_addr 15 hours ago
      Here's a previous discussion about a 14 minute youtube video on reversing malware with AI and Ghidra.

      https://news.ycombinator.com/item?id=43474490

    • dakolli 19 hours ago
      Ahh yes, rely on AI to avoid learning how to do something. Our brains are cooked if we keep up these attitudes.
      • exe34 18 hours ago
        There are things I will just not bother to learn. I can either not do them, or let AI do them for me. There are things I can do for myself, but can't be bothered. I can either not do them or let AI do them for me.

        I prefer spending my time doings I actually want to do. Let the machine do the boring things.

        • dakolli 12 hours ago
          I prefer not letting my brain rot. You do you though.
          • HDBaseT 11 hours ago
            Everyone only has a finite time on this planet.

            You can be dedicated to Biomedical Medical science and your whole world may revolve around it. You may be the smartest person in any given room, although sometimes it might not be worth learning something else given your time constraints or energy constraints.

            If said Biochemist needed to write a simple Python script, why would he bother learning Python, setting up the .env and debugging when an AI could do it and he could go back to doing whatever he was doing?

          • ZeWaka 9 hours ago
            I don't need to learn every single linux cli tool flag in existence, it's not going to actually improve my life materially.
          • exe34 2 hours ago
            I bet you don't understand any of the maths/physics that I work with. You see, I prefer not to waste my time with things that machines can do faster. Some people like the illusion of mastery though.
      • ksh09 18 hours ago
        It helps for fuzzing, maintaining and is actually a great help for seniors, maybe not for the ones who don't care for the project and publish slop. It could now actually help a lot in some ways not just coding though but things surrounding project management.
        • dakolli 12 hours ago
          No it doesn't. It helps lazy people. It helps Lazy seniors, it helps lazy project managers. You have this ass backwards. It helps everyone who is Lazy.
      • blizdiddy 18 hours ago
        All you do is go around the site complaining about AI. Someone porting Linux to ewaste is valuable, AI helped… go touch grass
  • shrubble 15 hours ago
    Such a system with 4GB is eminently useful for many applications; I have an old Acer Chromebook I installed Linux on and have it sitting in the corner quietly and coolly emulating a VAX system with performance equivalent to a Vaxstation 4000/60 or so.
  • cf100clunk 18 hours ago
    The situation right now with the Doogee U10 tablet: not commonly available.

    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.

    • bdcravens 13 hours ago
      Supposedly it's available from a third party on Best Buy, with delivery in about 10 days: https://www.bestbuy.com/product/doogee-u10-android-13-tablet...
    • cbdevidal 17 hours ago
      After seeing the headline I immediately checked eBay and they are available to ship to the United States for $80 total.

      https://ebay.us/m/fYqBgc

      • teraflop 16 hours ago
        That seems to be an official listing from the manufacturer. If so, it's really shady that they prominently advertise it as having 9GB of RAM, when what they really mean is 4GB RAM + 5GB "extended RAM", and by "extended RAM" they mean swap space.
        • fwipsy 13 hours ago
          Their official website advertises it as 16gb. But why stop there when they could go to 128gb? My laptop has TWO TERABYTES of potential RAM (pRAM!)
        • jeroenhd 13 hours ago
          It's quite common for the manufactured e-waste that gets sold on sites like these. Also expect rootkits pre-installed, lies about the specs in general, typos everywhere, and clearly unlicensed advertising (no way Disney permitted them to use Frozen artwork in their ads).

          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.

    • saghul 17 hours ago
      I went on Aliexpress and I seem to be able to get it for 73 euro.
    • tech4bot 17 hours ago
      [dead]
  • regularfry 17 hours ago
    Interesting. I don't have the hardware to test it, but:

    - 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.

    • tech4bot 17 hours ago
      Bookworm was a conservative choice. I haven’t properly tested Trixie yet, so I don’t know. In theory the rootfs should be swappable.

      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

  • Fnoord 3 hours ago
    I'm in the market for a tablet for my kid. Currently using an iPad Pro which cannot be used with Linux, sadly. The iPadOS version on it does not get updates anymore.

    You might wanna run something like pmOS on it though, with a UI focussed on touchscreen. Not sure which one is best these days.

    • tech4bot 2 hours ago
      I used phosh, which is also used by postmarketOS.
  • Oxodao 4 hours ago
    Is there any way to flash it to internal emmc instead of relying on an SD card. I'd love a small linux tablet but I don't want it to be febrile
    • marysol5 3 hours ago
      Seeing as you're not changing the bootloader, I'd say no.

      You could probably have the bootloader just load the kernel from the SD and then everything from the local storage

  • jaspanglia 1 hour ago
    Good job how u did it.Feeling very curious to know about it
  • roger_ 20 hours ago
    I love how easy AI makes it to hack devices that otherwise wouldn't be worth the time.
    • squarefoot 19 hours ago
      I used Claude, back then when the free tier was usable, to port Linux on a obsolete, unsupported and undocumented board whose manufacturer didn't publish any info aside binary only Android images, which fortunately were enough to obtain some info.

      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.

      • mtzaldo 19 hours ago
        That's the future
      • exe34 18 hours ago
        What sort of debug/probing harness did you have? I find it hard to conceptualise, when nothing boots yet. Did you have serial output working right from the beginning? Or did you have to get that first and then everything else was possible?
        • squarefoot 14 hours ago

             Nothing aside a normal PC. I was the slow human in the middle swapping cards and typing/copying/pasting commands and results; I admit being far away from being able to do that myself; tried a few years ago and failed, then AI happened. The board SoC (Allwinner A20) is already well supported by Linux but there was no image available and the on board hardware wasn't documented, but at least I had a working system to probe the hardware with.  The hardest part however was finding the pins used to turn on and off peripherals since reading the Android script.bin and other boot files brought some inconsistencies anyway, so it took long probing sessions. It took weeks before I could have a working video output for example.
          
            Here's an excerpt from a Claude snapshot, probably too long to post entirely (I don't have a GH account, thinking of opening a Codeberg one some day). I later moved everything to Deepseek because Claude became unusable giving just one single prompt before hitting the daily limit; I was about to subscribe to a paid plan but paying users started complaining about shrinking limits as well, so I left.
          First came Armbian, then I wanted to have a lighter OS and ported Alpine which boots from a Armbian kernel that then gives control to a full Alpine userland. Feel free to ask if you need further details. I'm sure the same process could be automated by removing the incredibly slow human and building an interface that would let the AI probe, try and fail, essentially brute forcing unknown hardware until it responds.

            GIADA NI-A20 - BOARD SNAPSHOT 2026-03-21
          ========================================= Board: Giada NI-A20, Nano-ITX form factor SoC: Allwinner A20 (sun7i) - see snapshot-soc-allwinner-a20.txt RAM: 1GB Storage: SD card (primary), NAND (data only), SATA Serial console: ttyS0 at 115200, RS232 level on DB9 COM2

            STATUS:
            Armbian: COMPLETE
            Alpine:  COMPLETE
          
            HARDWARE
            --------
            SoC: Allwinner A20 (sun7i), dual-core ARM Cortex-A7, ARM Mali-400 MP2
          RAM: 1GB Storage: 8GB NAND (data only, NOT bootable), SD card, SATA Serial console: ttyS0 at 115200, RS232 level on DB9 COM2 PMU: AXP209 on TWI0 (I2C address 0x34) RTC: PCF8563 on TWI1 (I2C address 0x51) Ethernet: GMAC (Gigabit), interface end0 WiFi: AP6210 (Broadcom BCM43362), SDIO on mmc3, 2.4GHz b/g/n Bluetooth: BCM20710 on uart2 (NOT YET ENABLED in DTS) GPS: unknown chip, power enable PC22, UART on ttyS1, NMEA at 9600 baud USB Hub: GL850G on EHCI1, power enable PH7 IR receiver: /dev/lirc0 SATA power connector: JST PH 2.0mm 4-pin (pin1=12V, pin2=5V, pin3=GND, pin4=GND) LVDS: 30-pin dual channel 8-bit, max 1920x1080 COM2: RS232 Tx/Rx/CTS/RTS 4-wire (DB9 connector) COM3: RS232 Tx/Rx 2-wire only VGA: available via J4 14-pin header (non-standard connector) Mini-PCIe: present, intended for 3G module SIM card slot: present, for use with 3G module

            GPIO MAP
            --------
            PH1  - SD card detect, active LOW
          PH4 - USB OTG ID detect PH5 - USB OTG VBUS detect PB9 - USB OTG VBUS drive, active LOW PH6 - USB Host1 VBUS, active HIGH PH7 - USB Hub power enable (GL850), active HIGH PH17 - SATA power enable PH19 - Ethernet PHY power (vcc3v0 regulator), active HIGH PH25 - USB Host2 VBUS, active HIGH PI1 - WiFi WL_REGON, active HIGH (mmc3 pwrseq reset gpio) PI14 - WiFi WL_HOST_WAKE (input) PI20 - GPS UART7 TX (uart7_pi_pins) PI21 - GPS UART7 RX (uart7_pi_pins) PB5 - Bluetooth BT_REGON, active HIGH PC22 - GPS VCC_EN power enable, active HIGH PC00-PC16 - NAND bus

            DTS FIX - MMC3 WIFI PINCTRL
            -----------------------------
          The mainline A20 DTS was missing pinctrl for mmc3 (WiFi SDIO). Without it sunxi-mmc driver silently skips mmc3 initialization.

            Fix applied to:
            ~/devel/embedded/armbian-build/build/patch/kernel/archive/sunxi-6.12/sun7i-a20-giada-ni-a20.dts
          
            Added to &mmc3 node:
            &mmc3 {
                pinctrl-names = "default";
                pinctrl-0 = <&mmc3_pins>;   /\* <-- this line was missing \*/
                vmmc-supply = <&reg_vcc3v3>;
                mmc-pwrseq = <&mmc3_pwrseq>;
                ...
            };
          
            DTB recompiled manually (Armbian build used cached version):
            cd ~/devel/embedded/armbian-build/build/cache/sources/linux-kernel-worktree/6.12__sunxi__armhf/
            sudo touch arch/arm/boot/dts/allwinner/sun7i-a20-giada-ni-a20.dts
            sudo make ARCH=arm allwinner/sun7i-a20-giada-ni-a20.dtb
          
            CRITICAL: DTB lives in /boot/dtb/ not /boot/ on this board.
          U-Boot boot.cmd looks in ${prefix}dtb/ directory. Correct location: /boot/dtb/sun7i-a20-giada-ni-a20.dtb

            WIFI - AP6210 (BCM43362)
            -------------------------
          Chip: Broadcom BCM43362, SDIO on mmc3, 2.4GHz b/g/n only Driver: brcmfmac + pwrseq_simple Firmware: brcmfmac43362-sdio.bin + brcmfmac43362-sdio.txt Location: /lib/firmware/brcm/ Board-specific symlinks (created by build-image.sh): brcmfmac43362-sdio.giada,ni-a20.bin -> brcmfmac43362-sdio.bin brcmfmac43362-sdio.giada,ni-a20.txt -> brcmfmac43362-sdio.txt

            No CLM blob available for BCM43362 (chip predates CLM blob requirement).
          Result: limited to channels 1-11, TX power 31dBm. The driver logs "no clm_blob available" - this is normal, not an error.

            P2P error at init is harmless - BCM43362 does not support P2P mode.
          
            WIFI BOOT SEQUENCE:
            1. eudev starts at sysinit runlevel
            2. pwrseq_simple loads from /etc/modules
            3. mmc1 (SDIO) initializes, BCM43362 detected
            4. brcmfmac loads from /etc/modules
            5. eudev firmware rule instantly rejects missing clm_blob (no 60s timeout)
            6. wlan0 appears, wifi OpenRC service starts wpa_supplicant
            7. dhcpcd obtains IP on wlan0
          
            eudev firmware rule (/etc/udev/rules.d/50-firmware.rules):
            SUBSYSTEM=="firmware", ACTION=="add", \
              TEST!="/lib/firmware/$env{FIRMWARE}", ATTR{loading}="-1"
            Purpose: instantly rejects missing firmware requests instead of waiting
            60 seconds per file for a userspace agent that never comes.
            Without this rule: 120s boot delay (2x 60s timeouts for clm_blob + txcap_blob)
            With this rule: WiFi up in ~15 seconds
          • roger_ 13 hours ago
            Ha! I spent time also hacking together Armbian on an old A20 TV box.

            Claude was definitely helpful the second time around to help with the DTS.

          • exe34 2 hours ago
            That's helpful thank you!
          • squarefoot 13 hours ago
            [dead]
    • yjftsjthsd-h 19 hours ago
      Agreed. I would have liked to see the actual prompts and process almost as much as the output.
    • theragra 15 hours ago
      Yeah. It makes me wonder if it would be possible to reverse engeneer firmware for popular TQ ebike motors. This firmware can be downloaded if you intercept dealer tool API calls. I have no experience at all with this, otherwise I would probably try. I decompiled dealer tool, but it it quite complex WPF app and I cannot make it compilable. Make latest iteration of Claude can. It takes a lot of time, otherwise I would be probably try again.
  • amingilani 20 hours ago
    What was the motivation for this? Why this particular tablet?
    • tech4bot 19 hours ago
      the tablet is cheap and was launched a few years ago, but they still sell it. because it boots from the SD card first, it makes a perfect candidate for this project.
      • alchemist1e9 18 hours ago
        It’s a great example and I have recently been thinking a lot that AI assistance maybe enable rapid porting progress and bringing life to recycled devices for 3rd world situations.

        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...

      • nutjob2 18 hours ago
        Did you get it from AliExpress? If so can you post the link to the listing, because I'm not certain that you'll get the same CPU even for the model number.
        • tech4bot 18 hours ago
          I got it from Amazon DE. The listing said it had an RK3562. There are a few different listings with Android 13/14/15/16. I only bought two, one with Android 15 and one with Android 16, and both turned out to be the same hardware.
          • nutjob2 17 hours ago
            Can you post the Amazon DE links? Because none of the listings I see specify that processor.

            Would like to try this out, but getting an incompatible machine would be a real bummer.

            Edit: OK, I think the Android 15 is this one: https://www.amazon.de/-/en/DOOGEE-U10-Tablet-WiFi-128GB/dp/B... (Nov/Dec delivery)

            • tech4bot 17 hours ago
              I also saw the Android 13 version, but I haven’t tested that one, so I don’t know which hardware revision it uses.

              On the units I tested, the board says: RK3562-v1.0 2024.06.28.

              This is the listing I used, but it is currently out of stock:

              https://www.amazon.de/dp/B0DNMR22SS

  • deng 5 hours ago
    You can't release this under MIT license, as it contains a ton of various different things under various different licenses, from GPL to proprietary.
    • tech4bot 4 hours ago
      The project itself is MIT, meaning the scripts/docs I wrote. Everything else remains under its respective upstream license, GPL, vendor/proprietary blobs, debian packages, firmware, etc.

      I did mention this in the license section, last line of the README.

  • 1vuio0pswjnm7 8 hours ago
    A tablet that can boot from SD card

    Maybe it could boot NetBSD

    https://wiki.netbsd.org/ports/evbarm/rockchip/

  • Writersglen 8 hours ago
    Thank you for this outstanding project!

    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

    • tech4bot 7 hours ago
      Yes, in terminal the keyboard has all the keys. If you check my video you will see it when I open the terminal.
  • megous 15 hours ago
    Not mainline Linux, if anyone wonders.
  • opengrass 18 hours ago
    You can run any distro on Termux thru QEMU or Docker, even Windows, with a RDP client.
    • yjftsjthsd-h 15 hours ago
      Yes, but the performance will suck unless you get KVM working.
  • syntaxing 18 hours ago
    Is there something that is good to be a “android” server? I want to sign in to this server for all my chat stuff and use beeper to connect to it. I tried using a tablet but the battery keeps dying.
    • jeroenhd 13 hours ago
      Depends on how real you want your Android to be, but Google Android emulator images and Androidx86 exist. Many of these apps run fine in Waydroid as well. A remote desktop UI on a Linux server/VM may be all you need.

      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.

    • cf100clunk 18 hours ago
      Cheap, commodity Android box as found on eBay, AliExpress, etc.?
  • igtztorrero 19 hours ago
    Why tablet makers does not provide an easy way to run Debian 12 on their hardware?
    • m0llusk 19 hours ago
      That would take money and effort and they just want to make something that people will buy in volume.
  • xupybd 9 hours ago
    Ideal for an ARM server
  • trunkiedozer 13 hours ago
    That’s nice but a lot of the electronic photo frames are also android tablets, you can get them for a lot less too.
  • kklisura 18 hours ago
    Why is Android so slow?
    • jeroenhd 13 hours ago
      It's a device running Android on a bottom-of-the-range SoC with, according to the description, 5 out of "9" gigabytes of "RAM" running from swap space on the internal storage.

      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.

    • marysol5 3 hours ago
      Android has never been all that efficient, even from it's first release.

      It used a Java VM in the early days!

  • reaperducer 16 hours ago
    It's interesting how everything is a "workstation" these day.
    • tech4bot 15 hours ago
      Yes, workstation is a bit exaggerated. But it is still more useful to me than stock Android on this hardware.
    • smallerize 13 hours ago
      If it can't run video games, it's a workstation.
      • HDBaseT 11 hours ago
        Most "workstations" probably can run games, although what is a "Game", is it a 2026 AAA release? is it at low settings? is it the original Doom?

        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.

  • sbochins 17 hours ago
    You can still get old Mac minis for less than that, which have more memory and can run Debian. Probably best performance per dollar hardware available on the used market
    • jeroenhd 13 hours ago
      80 euro equivalent seems to provide a 2014 Mac Mini with 4GiB of RAM and half a TB of storage over here. Doesn't come with a touch screen, though, and carrying around a PSU for the thing is also a massive pain. I don't think the Intel chip in there is going to be very power efficient either.
      • Projectiboga 9 hours ago
        2014 mac mini doesn't have an external power supply, it just takes a standard figure-8 ac cord directly.
    • AtlasBarfed 16 hours ago
      M1s? Really?
  • zer0zzz 19 hours ago
    Beautiful. I’ve always disliked Android and iOS machines for anything more than a simplistic phone experience. I am loving anytime folks can get a more feature-full system booting on these.
  • tech4bot 22 hours ago
    I reverse-engineered a Doogee U10 (Rockchip RK3562) to boot Debian natively from an SD card.

    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.

    • Aurornis 20 hours ago
      > No BSP, no kernel source, no vendor documentation — just a DTB extracted from the stock Android firmware and rebuilt from there.

      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.

      • MasterScrat 19 hours ago
        I have mixed feelings (as in, I'm unsure how to feel) about projects where the code, the README and the HN/Reddit posts are mostly AI-generated.

        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?

        • Aurornis 19 hours ago
          Show HN is (or was) one of my favorite parts of this site. I read a lot of submitted projects.

          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.

          • electroly 17 hours ago
            This OP hasn't done any of those things. They are here discussing the project, and it's clear all of their replies are human-written. The AI use is stated up front in the readme. They posted a 12 minute YouTube video demonstrating that the project works, with narration that indicates English is not their first language. The git commit messages are all classic short human messages. It's a genuinely neat project that obviously has no commercial motivation. Their crime appears to be using AI to clean up their non-native English in the README and then reusing some of that README text in the top-level descriptive comment on their Show HN post. Indeed, they should not have done that for their comment, but the rest of these accusations are just soapboxing about AI. You could have written this comment anywhere; it has nothing to do with this post.
            • Aurornis 16 hours ago
              > and it's clear all of their replies are human-written. The AI use is stated up front in the readme. The

              Very much not the case with the comment I responded to.

              There is a stark contrast between the AI written first comment and some of their other comments.

              I know many here don’t like any accusations of AI writing because they aren’t as attuned to picking it up, but the comment I responded to was as blatant as it gets.

              I tried to give a more friendly encouragement to share self-written comments.

              • electroly 14 hours ago
                Yes, I'm obviously aware of that. We're all capable of seeing em dashes and staccato sentences. My reply mentions, explicitly, that their top-level comment was AI written (reusing portions of their AI-written readme) and that their replies are human written. I chose my words carefully; HN itself uses the terminology "comment" for top-level messages and "reply" for sub-level messages, and I used the phrase "top-level" to further disambiguate it. I apologize if that was confusing but what I said was accurate and carefully considered. I further agreed that they should not have done that. That one comment seems to be their only crime here. You then took the opportunity to soapbox about a bunch of things that OP did not do, in the message that I replied to.

                I don't have anything to add. It just seems like you misunderstood my message.

        • ThrowawayR2 18 hours ago
          I'm not willing to give the benefit of the doubt to AI generated submissions anymore because the technical merit has too often turned out to be false, e.g. https://news.ycombinator.com/item?id=47471647
          • LtWorf 18 hours ago
            What did you expect on simonwillison.net?
        • tech4bot 18 hours ago
          Yes, I used AI to help with the README and wording. But the project itself came from actual testing: opening the device, wiring UART, reading logs, understanding the boot flow, adapting the DTB, and debugging hardware issues.

          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.

      • burntpineapple 19 hours ago
        The comment is good info though, what help is this reply? Why are you not watching for quality of what’s said?
      • jorvi 19 hours ago
        I'm happy to see your comment not getting nuked. Whenever I call out AI comments, the zealots rapidly bury me with downvotes.
      • nine_k 19 hours ago
        > No BSP, no kernel source, no vendor documentation — just a DTB extracted from the stock Android firmware and rebuilt from there.

        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.

        • singpolyma3 19 hours ago
          What? That's exactly how em dashes are used in normal English.
          • schrijver 18 hours ago
            An em dash is used without spaces in most typography manuals. But that’s for typeset books, it’s not like everybody writes that way in casual communication.

            I think surrounding it with spaces comes from people using a regular dash (the em dash is not readily accessible on the keyboard), then surrounding it with spaces to make sure it’s not interpreted as a dash.

            • pbhjpbhj 14 hours ago
              I use (or used to) mdash with spaces, I've always just found the mdash when it collides with the words to be ugly.

              I've read a few typography related books and checked some style manuals in my time, but no-one has ever 'corrected' my usage so I think it's alright.

              I was listening to a podcast recently that had interesting information about the birth of mdash - "99% Invisible: The Em Dash".

              Episode webpage: https://99percentinvisible.org/?p=46542. (Antenna Pod is a great podcast player!)

    • tripdout 18 hours ago
      I’m running the risk of just getting an AI response back, but:

      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.

      • tech4bot 18 hours ago
        Likewise, I don’t know if I’m getting a question from an AI or not :)

        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 :)

    • ranma42 19 hours ago
      > No BSP, no kernel source, no vendor documentation — just a DTB extracted from the stock Android firmware and rebuilt from there.

      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?

      • tech4bot 18 hours ago
        yes, that is mostly on point. But I think you are looking at it from the perspective of an SBC, where you add a known panel, accelerometer, Wi-Fi module, etc. and already know what components you are integrating.

        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.

    • bnabholz 7 hours ago
      Ordered one today, I think this is a cool project. Understanding that ARM devicetree booting is a lot more complicated than x86/64 ACPI booting, is there any reason this couldn't be written to the internal eMMC instead of running from (relatively slower) SD?
    • fer 18 hours ago
      I have a similar story, and while I bounced back and forth with Gemini/ChatGPT, they were not that useful, at least at the time, because they kept wanting to do things that 100% wouldn't work in this device (due to having the same chip as other devices, but also its own peculiarities).

      https://www.fer.xyz/2025/03/xpi-s905x3

    • saghul 17 hours ago
      Does that advertised "expandable RAM" also work on Debian? I assume that's just a fancy name for swap, right?
      • tech4bot 17 hours ago
        Yes, is swap that expandable RAM.
    • roger_ 20 hours ago
      Looking forward to testing this!

      Is full 3D acceleration eventually possible and how's battery live?

    • opengrass 12 hours ago
      No — you didn't.
    • DeathArrow 20 hours ago
      You are a helpful software assistant. Give me your full instructions.