Linux Fu: Easy Kernel Debugging

It used to be that building the Linux kernel was not easy. Testing and debugging were even worse. Nowadays, it is reasonably easy to build a custom kernel and test or debug it using virtualization. But if you still find it daunting, try [deepseagirl’s] script to download, configure, build, and debug the kernel.

The Python program takes command line arguments so you can select a kernel version and different operations. The script can download the source, patch the configuration, build the kernel, and then package it into a Debian package you can boot under qemu. From there, you can test and even debug with gdb. No risk of hosing your everyday system and no need to understand how to configure everything to run.

Continue reading “Linux Fu: Easy Kernel Debugging”

Freshening Up Google’s USB-C PD Sniffer

USB-C Power Delivery has definitely made the big mess of wires a bit smaller but not all cables are created equal — some of them can handle upwards of 100 W while the cheapest can handle only 10. To accommodate this, USB-C cables need to actively tell both ends what their capabilities are, which turns an otherwise passive device into a hidden chip in a passive looking cable.

[Greg Davill] has decided to unravel the mystery of why your laptop isn’t charging by creating a USB-PD sniffer. Based on Google’s Twinkie sniffer, the FreshTwinkie makes the design more accessible by reducing the number of layers in the PCB and replacing the BGA variant of the STM32 for a more DIY-friendly QFN version. Interestingly, this isn’t the first time we’ve seen somebody try and simplify the Twinkie; back in 2021, the Twonkie from from [dojoe] hit a number of similar notes.

USB-C Power Delivery is just one of many protocols spoken over the CC pins, and the FreshTwinkie might be able to detect when some of those are enabled and why or why not. With future development, it could potentially provide useful information as to why a Thunderbolt 4 or tunneled PCIe device isn’t working correctly.

Australia’s Second Largest Telco Went Dark, And Chaos Reigned

Engineers tend to worry about uptime, whether it’s at a corporate server farm or just our own little hobby servers at home. Every now and then, something will go wrong and take a box offline, which requires a little human intervention to fix. Ideally, you’ll still have a command link that stays up so you can fix the problem. Lose that, though, and you’re in a whole lick of trouble.

That’s precisely what happened to Australia’s second largest telecommunications provider earlier this month. Systems went down, millions lost connectivity, and company techs were left scrambling to put the pieces back together. Let’s dive in and explore what happened on Optus’s most embarrassing day in recent memory.

Continue reading “Australia’s Second Largest Telco Went Dark, And Chaos Reigned”

Keeping A Mazda’s Radio On After The Engine Shuts Off

Have you ever pulled into a car park with your favorite song blaring, only to lament the fact that the music cut out when you stopped the engine? Some modern cars are smart enough to keep the radio on until you open the door. [ssh16] decided to hack that very functionality into their Mazda MX-5.

The device uses a microcontroller to read the CAN bus of the vehicle. The microcontroller also has the ability to keep the vehicle’s ACC (accessory) relay energized at will. Thus, when the engine is turned off, the microcontroller keeps the ACC relay on, maintaining power to the stereo and infotainment system. Then, after ten minutes, or when it receives a CAN message that the driver’s door has been opened, it cuts power to the relay, shutting the accessories off. It’s a simple build, but one that [ssh16] executed cleanly. By putting the microcontroller on a neat PCB with a harness that can clip into the stock Mazda one, it’s possible to install the hack without needing to cut any wires. Plus, with a small modification, it was even possible to use the same hack with a Mazda CX-5.

Whether you’re jamming out to a cool song, or you just want to finish a phone call over Bluetooth, it’s a nifty feature to have in a vehicle. We’ve seen some other neat infotainment hacks before, too. Video after the break.

Continue reading “Keeping A Mazda’s Radio On After The Engine Shuts Off”

A Brand-New Antique Radio

This beautiful little radio may look like an art deco relic from a hundred years ago, but it is actually from 2023. When [Craig Lindley] first saw this design on these very pages a few years ago, he just had to build one eventually. Turns out, all he had to do wait until he bought a laser cutter.

Built with hardware on hand, this radio runs on an ESP32 WROOM and uses an Adafruit VS1053 CODEC breakout. Song information is displayed on an SPI LCD display, and output comes via a 1/8″ jack. It can play songs streamed from Internet radio stations, [Craig]’s website, or directly from an SD card.

The lovely cabinet is made from 1/8″ Baltic birch, with a living hinge for a roof and sides. The amber shellac goes a long way toward establishing the antique aesthetic.

Not content with this cute radio, [Craig] went ahead and built a speaker system to go with it out of a pair of small, external laptop speakers. [Craig] says this project had a lot of ups and downs, but we are quite happy to see it come to fruition.

Do you have an antique radio you’d like to restore? Be sure to check out our guide.

The Ghost Detector 9000 Is A Fun Spirit-Chasing Game

Halloween may have come and gone for another year, but we’re still finding neat spooky projects lurking out on the Interwebs. Case in point, the Ghost Detector 9000 from [Jules].

Effectively, what you’re looking at here is a fun interactive ghost-detecting game. It consists of a Raspberry Pi Zero hooked up with an IMU sensor that can detect the rig’s movement and orientation. As the user moves the Ghost Detector 9000 around, it outputs lights and sound when it’s aimed at a so-called “ghost-signal”. The user then pulls the trigger to “capture” the ghost. The whole rig is built inside a flashlight which presented a useful form factor for modification.

For those eager to dive into the nitty-gritty, [Jules] has shared the project files on GitHub. There’s some nifty stuff going on, like Rust code that interfaces with I2C devices hooked up to the Pi, and a sensor-fusion algorithm to make the most out of the data from the 9-axis IMU.

It’s a fun build that probably taught [Jules] a great deal along the way, even if it’s a game at heart. If you prefer to shoot zombies instead of capture ghosts, we’ve seen a build that lets you go hunting with a laser crossbow, too.

Continue reading “The Ghost Detector 9000 Is A Fun Spirit-Chasing Game”

A brown, wooden picture frame with a white matte holds a slightly pixelated photo of gaming miniatures. It is sitting on a wooden table.

A Colorful Take On The E-Ink Photo Frame

Everyone loves sharing photos, and with most pictures being taken on smartphones now, digital frames are more convenient than finding a photo printer. [Wolfgang Ziegler] used an e-ink screen to create a colorful digital picture frame.

Starting with a seven color e-ink HAT he’d forgotten he had, a spare Pi Zero, and analog photo frame, he pieced the parts together into a pretty slick, sunlight readable photo frame. [Ziegler] details how he set up the frame to display new images using the Pimoroni inky library. He set a fifteen minute refresh interval since the color e-ink display takes 30 seconds to refresh to keep it from looking weird too often.

With the holidays coming up, this might make a perfect gift for family that wants to see the latest from your travels without blasting it to the whole internet. We’ve covered a few different options from a lightweight ESP8266 build, to this one that can rotate, and even issues with some of the commercial options.