Posted by tech4bot 14 hours ago
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
Bookmarks do not store click history, the trajectory you took to arrive at the page. With tabs, the contexts is a backbutton away.
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.
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…
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.
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.
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.
But you’re doing much better than me.
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.
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.
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.
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.
My address is my username @ism.rocks
Alternatively, if you released the article on your blog, I could just follow the RSS feed.
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.
I prefer spending my time doings I actually want to do. Let the machine do the boring things.
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?
Maybe it could boot NetBSD
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.
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.
- 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.
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 = <®_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 secondsClaude was definitely helpful the second time around to help with the DTS.
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
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...
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)
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: