One Firmware, Many Logos: How the Dahua Firmware Finder Works

Say you own an Amcrest IP4M-1041, a little pan-and-tilt camera, and you want to know if there’s newer firmware for it. You go to Amcrest’s site and find a file. Then you go to Dahua’s site, and EmpireTech’s, and a Polish distributor’s FTP server, and you find more files with completely different names. Which ones will actually install on your camera?

That question is why I built the Dahua Firmware Finder. It tracks about 9,500 firmware files from 51 sources, works out which devices each one is built for, and keeps a permanent copy of every file on the Internet Archive. This post covers how it does that, and the thing I learned along the way: a huge number of “different” cameras are the same hardware with a different sticker on it.

Continue reading One Firmware, Many Logos: How the Dahua Firmware Finder Works

meta-az0x scarthgap-v1.0: Yocto Linux on Denon DJ hardware

Today I’m releasing meta-az0x, a Yocto Project board support layer for inMusic’s AZ0x platform: the Rockchip-based hardware underneath Denon DJ, Akai MPC, Numark and Rane gear.

With it, you can build your own Linux for a Denon DJ SC6000, Prime Go, or other Denon DJ devices with a mainline-based kernel built from source, flash it over fastboot, and the device’s own bootloader boots it. No EngineOS, no vendor application, and nothing outside the root filesystem partition changes, so going back to stock is a couple fastboot commands.

Continue reading meta-az0x scarthgap-v1.0: Yocto Linux on Denon DJ hardware

Two Computers, One Engine: The Part of the ECU I Didn’t Know I Was Deleting

There is a specific kind of bug that only shows up when you remove something. Not when you break it, not when you misconfigure it, but when you take it out entirely and discover that it had a second job nobody wrote down.

I spent a few months this year replacing the engine computer in a 2001 Dodge Stratus with a Speeduino DropBear v2, an open-source standalone ECU. I planned it carefully. I mapped every pin. I wrote a note titled “Confirmed so far.” Then I turned the key and got nothing at all.

The answer was three sentences further down in my own notes, in a warning I had written to myself and then argued my way out of.

Continue reading Two Computers, One Engine: The Part of the ECU I Didn’t Know I Was Deleting