Belt Fed Potato Cannon Spits Spuds | Hackaday
I appreciate few things more than taking an absurd idea to perfection.
Belt Fed Potato Cannon Spits Spuds | Hackaday
I appreciate few things more than taking an absurd idea to perfection.
I have a ClockworkPi uConsole and although I’m having great fun with it, it comes with just 32GB of SD card storage. Even if it were bigger, SD cards are dog slow compared to almost anything else. I bought a HackerGadgets NVMe adapter and Crucial P310 1TB NVMe SSD to speed things up.
In these tests, /dev/mmcblk0 is the SD card, and /dev/nvme0n1 is the NVMe adapter.
root@uconsole /h/me# time dd if=/dev/mmcblk0 of=/dev/null bs=1M count=8192
8192+0 records in
8192+0 records out
8589934592 bytes (8.6 GB, 8.0 GiB) copied, 198.193 s, 43.3 MB/s
________________________________________________________
Executed in 198.20 secs fish external
usr time 0.06 secs 0.03 millis 0.06 secs
sys time 23.06 secs 2.00 millis 23.06 secs
root@uconsole /h/me# time dd if=/dev/nvme0n1 of=/dev/null bs=1M count=8192
8192+0 records in
8192+0 records out
8589934592 bytes (8.6 GB, 8.0 GiB) copied, 21.366 s, 402 MB/s
________________________________________________________
Executed in 21.37 secs fish external
usr time 0.03 secs 1.59 millis 0.03 secs
sys time 10.38 secs 0.86 millis 10.38 secs
Summary: The NVMe drive was 9.3x faster than the SD card and took 55% less CPU.
I couldn’t write to the raw SD card because all of it is allocated in the partition map and it’s what I boot off of as of this writing. Instead, I formatted the NVMe drive with the same options as the root filesystem and mounted it at /tmp/nvme so that at least it’s an apples-to-apples comparison
root@uconsole /h/me# time dd if=/dev/zero of=/sdfile bs=1M count=8192
8192+0 records in
8192+0 records out
8589934592 bytes (8.6 GB, 8.0 GiB) copied, 331.464 s, 25.9 MB/s
________________________________________________________
Executed in 331.47 secs fish external
usr time 0.05 secs 0.25 millis 0.05 secs
sys time 25.98 secs 2.16 millis 25.98 secs
root@uconsole /h/me# time dd if=/dev/zero of=/tmp/nvme/sdfile bs=1M count=8192
8192+0 records in
8192+0 records out
8589934592 bytes (8.6 GB, 8.0 GiB) copied, 21.0683 s, 408 MB/s
________________________________________________________
Executed in 21.10 secs fish external
usr time 0.03 secs 2.16 millis 0.03 secs
sys time 18.92 secs 1.13 millis 18.92 secs
Summary: The NVMe drive was 15.7x faster than the SD card, and took 27% less CPU.
These use the fio benchmark. First, the SD card:
root@uconsole /v/tmp# fio --profile=tiobench
seqwrite: (groupid=0, jobs=1): err= 0: pid=3128: Mon Jul 6 19:40:57 2026
write: IOPS=1045, BW=4181KiB/s (4281kB/s)(30.5MiB/7482msec); 0 zone resets
randwrite: (groupid=1, jobs=1): err= 0: pid=3161: Mon Jul 6 19:40:57 2026
write: IOPS=692, BW=2771KiB/s (2838kB/s)(30.5MiB/11287msec); 0 zone resets
seqread: (groupid=2, jobs=1): err= 0: pid=3206: Mon Jul 6 19:40:57 2026
read: IOPS=2917, BW=11.4MiB/s (12.0MB/s)(30.5MiB/2680msec)
randread: (groupid=3, jobs=1): err= 0: pid=3255: Mon Jul 6 19:40:57 2026
read: IOPS=3075, BW=12.0MiB/s (12.6MB/s)(30.5MiB/2543msec)
Run status group 0 (all jobs):
WRITE: bw=4181KiB/s (4281kB/s), 4181KiB/s-4181KiB/s (4281kB/s-4281kB/s), io=30.5MiB (32.0MB), run=7482-7482msec
Run status group 1 (all jobs):
WRITE: bw=2771KiB/s (2838kB/s), 2771KiB/s-2771KiB/s (2838kB/s-2838kB/s), io=30.5MiB (32.0MB), run=11287-11287msec
Run status group 2 (all jobs):
READ: bw=11.4MiB/s (12.0MB/s), 11.4MiB/s-11.4MiB/s (12.0MB/s-12.0MB/s), io=30.5MiB (32.0MB), run=2680-2680msec
Run status group 3 (all jobs):
READ: bw=12.0MiB/s (12.6MB/s), 12.0MiB/s-12.0MiB/s (12.6MB/s-12.6MB/s), io=30.5MiB (32.0MB), run=2543-2543msec
Disk stats (read/write):
mmcblk0: ios=15548/15656, sectors=124384/125480, merge=0/27, ticks=4870/18365, in_queue=23235, util=93.05%
And then the NVMe drive:
root@wizzle /t/nvme# fio --profile=tiobench
seqwrite: (groupid=0, jobs=1): err= 0: pid=4865: Mon Jul 6 19:47:10 2026
write: IOPS=21.6k, BW=84.4MiB/s (88.5MB/s)(30.5MiB/362msec); 0 zone resets
randwrite: (groupid=1, jobs=1): err= 0: pid=4870: Mon Jul 6 19:47:10 2026
write: IOPS=21.2k, BW=82.8MiB/s (86.8MB/s)(30.5MiB/369msec); 0 zone resets
seqread: (groupid=2, jobs=1): err= 0: pid=4871: Mon Jul 6 19:47:10 2026
read: IOPS=13.3k, BW=51.9MiB/s (54.4MB/s)(30.5MiB/589msec)
randread: (groupid=3, jobs=1): err= 0: pid=4876: Mon Jul 6 19:47:10 2026
read: IOPS=13.1k, BW=51.3MiB/s (53.7MB/s)(30.5MiB/596msec)
Run status group 0 (all jobs):
WRITE: bw=84.4MiB/s (88.5MB/s), 84.4MiB/s-84.4MiB/s (88.5MB/s-88.5MB/s), io=30.5MiB (32.0MB), run=362-362msec
Run status group 1 (all jobs):
WRITE: bw=82.8MiB/s (86.8MB/s), 82.8MiB/s-82.8MiB/s (86.8MB/s-86.8MB/s), io=30.5MiB (32.0MB), run=369-369msec
Run status group 2 (all jobs):
READ: bw=51.9MiB/s (54.4MB/s), 51.9MiB/s-51.9MiB/s (54.4MB/s-54.4MB/s), io=30.5MiB (32.0MB), run=589-589msec
Run status group 3 (all jobs):
READ: bw=51.3MiB/s (53.7MB/s), 51.3MiB/s-51.3MiB/s (53.7MB/s-53.7MB/s), io=30.5MiB (32.0MB), run=596-596msec
Disk stats (read/write):
nvme0n1: ios=13873/15650, sectors=110984/125184, merge=0/4, ticks=866/486, in_queue=1354, util=49.13%
BW measurements are in MB/s.
| Operation | SD | NVMe | Ratio |
|---|---|---|---|
| seqwrite IOPS | 1045 | 21600 | 20.7x |
| seqwrite BW | 4.2 | 84.4 | 20.1x |
| randwrite IOPS | 692 | 21200 | 30.6x |
| randwrite BW | 2.8 | 82.8 | 29.6x |
| seqread IOPS | 2917 | 13300 | 4.6x |
| seqread BW | 12.0 | 51.9 | 4.3x |
| randread IOPS | 3075 | 13100 | 4.3x |
| randread BW | 12.6 | 51.3 | 4.1x |
In the words of the great Ferris Bueller, “It is so choice. If you have the means, I highly recommend picking one up.”
Happy birthday, America! 🇺🇸
When I see someone waving a flag today, I regret that my first wary instinct is to suspect they may actually hate our country. They might claim to appreciate specific parts, so long as those parts precisely match their own corner of it, but otherwise not so much.
I love my country. That means I love the people in it, even if they don’t look like me, sound like me, think like me, worship like me, love like me, or simply exist like me. If your family was around before Europe found it, I’m glad you’re still here. Part of later waves of immigration? Hi, neighbor! Just got here last week, whether through official channels or not? Welcome aboard, friend! To me, that’s patriotism: honoring the actual ideals this wonderful country was founded on, not the twisted little corrupt version politicians push at us.
Opinion | Birthright citizenship overreach by the Supreme Court ends term - The Washington Post:
A more modest ruling, relying on those statutes, would have left the constitutional issue for a future court to consider if and when Congress deliberates on the issue and decides to change the rules.
I use to pay for a WaPo subscription, but their takeover by rightwing extremists ruined it. Imagine wringing hands because SCOTUS made a ruling based on a plain reading of the Constitution.
It’s Friday night and I’m registering a domain, as one does.
Scientists Made Tiny Diving Suits for Cyborg Cockroaches. They Can Breathe Underwater for 3 Hours:
Researchers […] have built a soft, wearable oxygen system that lets cyborg cockroaches survive and move through water and low-oxygen spaces. The attempt turns a land insect into something closer to an amphibious robot, one that could someday crawl through flooded rubble, drains or collapsed tunnels after disasters.
“Can we? Sure! Should we? Eh.”
Happy 28th birthday, honeypot.net! 🎉
My team at Factory’s growing (FTE, onsite in San Francisco). Come work with me to beef up 1) our security stance, and 2) our IT program. We’re growing rapidly and I want to get ahead of scaling issues. You’ll work directly with me, with agency to define and evolve your own role. Today we need hands-on-keyboard IC work. Want to grow that into a director-level role? This is the time to join.
Security Engineer: factory.ai/careers/s…
IT Operations Specialist: factory.ai/careers/i…
Meta is adding ridiculous ‘rate limits’ and a soft paywall to its smart glasses | The Verge:
This week, it quietly announced that your glasses’ Conversation Focus feature will soon be limited to three hours of use per month, unless you pay for a $19.99 Meta One Premium subscription.
Me: You know, these ugly creeper peepers could not possibly make me want them any less.
A PM deep in the heart of darkness: Hold my creatine.
I started today’s presentation with “I went into security engineering because I love public speaking and I’m really good at it”.
Sometimes you have to commit to the lie.