Blog

Testing object detection (yolo, mobilenet, etc.) with picamera2 on Pi 5

Besides the Pi 5 being approximately 2.5x faster for general compute, the addition of other blocks of the Arm architecture in the Pi 5's upgrade to A76 cores promises to speed up other tasks, too.

Jeff Geerling person object detection on Pi 5

On the Pi 4, popular image processing models for object detection, pose detection, etc. would top out at 2-5 fps using the built-in CPU. Accessories like the Google Coral TPU speed things up considerably (and are eminently useful in builds like my Frigate NVR), but a Coral adds on $60 to the cost of your Pi project.

With the Pi 5, if I can double or triple inference speed—even at the expense of maxing out CPU usage—it could be worth it for some things.

LattePanda Mu crams x86 PC into SoM form factor

LattePanda Mu with Raspberry Pi 5 in background

LattePanda's been building Intel-based SBCs for almost a decade, but until now, they've never attempted to unite an Intel x86 chip with the popular SoM-style form factor Raspberry Pi's dominated with their Compute Module boards.

This year they've introduced the LattePanda Mu, a SoM that marries an Intel N100 SoC with a new edge connector standard they've designed, using a DDR4 SODIMM form factor.

Right now they offer two carrier boards: a lite version with basic interfaces and a couple 2230-size M.2 slots for SSDs and wireless, and a full evaluation carrier that breaks out every hardware interface in a Mini ITX-sized motherboard.

The Cicadas are Here

Cicada on hardware cloth with red eyes

There are annual cicadas. Then there are 13-year cicadas. And 17-year cicadas. Then there are days like today when 13 and 17 year cicadas emerge from the ground around the same time, creating a fairly odd event in our backyard.

Cicada holes in ground

My daughters are helpfully pointing out a few of the thousands of holes in the ground around our yard—sites where cicadas have been emerging for the past two weeks.

Almost every day there's a new batch that starts climbing up the garden, the trees, the house, the barbecue grill, the kids toy box, the toys the kids leave in the yard... pretty much everything.

And then for a day or two you see them shedding their old skin, emerging, walking around a bit drunkenly, then eventually flying up into the trees.

microSD cards' SBC days are numbered

Raspberry Pi M.2 HAT+

For years, SBCs that aren't Raspberry Pis experimented with eMMC and M.2 storage interfaces. While the Raspberry Pi went from full-size SD card in the first generation to microSD in every generation following (Compute Modules excluded), other vendors like Radxa, Orange Pi, Banana Pi, etc. have been all over the place.

Still, most of the time a fallback microSD card slot remains.

But microSD cards—even the fastest UHS-II/A2/V90/etc. ones that advertise hundreds of MB/sec—are laggards when it comes to any kind of SBC workflow.

The two main reasons they're used are cost and size. They're tiny, and they don't cost much, especially if you don't shell out for industrial-rated microSD cards.

microSD card slot on Raspberry Pi

Quick NVMe performance testing with fio

I've recently been debugging some NVMe / PCIe bus errors on a Raspberry Pi, and I wanted a quick way to test NVMe devices without needing to create a filesystem and use a tool like iozone. I don't care about benchmarks, I just want to quickly push the drive and read and write some data to it.

fio is the tool for the job, and after a quick install sudo apt install -y fio, I create a configuration file named nvme-read.fio:

[global]
name=nvme-seq-read
time_based
ramp_time=5
runtime=30
readwrite=read
bs=256k
ioengine=libaio
direct=1
numjobs=1
iodepth=32
group_reporting=1
[nvme0]
filename=/dev/nvme0n1

Then run it with:

sudo fio nvme-read.fio

Easy way to put some stress on the drive, and test your PCIe setup and the drive itself.

Import unsupported camera RAW files into Apple Photos

Many years ago, I decided to migrate my photo library from Apple's now-defunct Aperture to Photos, so I could take advantage of Apple's iCloud Photo Library (don't worry, I still have three full complete local backups, plus a separate cloud backup besides Apple's iCloud originals).

One pain point is RAW support. As camera manufacturers add new models, their proprietary RAW codecs are updated, and software vendors like Apple, Adobe, and Microsoft have to update photo editing tools to work with the new camera models.

I don't envy them this task, but as Photos was Apple's official successor to Aperture (a pale shadow to be sure, but it has its merits as a semi-decent library organizer), they've generally done well supporting new camera models. The compatibility list for macOS Sonoma, iPadOS 17, and iOS 17 is a testament to that effort.