Mr. Green's POST Decoder Uses a Raspberry Pi Pico to Diagnose Boot Errors in x86 Hardware

If listening for beeps isn't your thing, this low-cost add-on taps into the LPC bus for a visual readout of POST error codes.

Gareth Halfacree
11 months ago β€’ Retro Tech / HW101 / Debugging

Semi-anonymous maker and YouTuber Mr. Green, of Mr. Green's Workshop, has turned a Raspberry Pi Pico into a handy device for quickly ascertaining boot-time problems on embedded x86 hardware β€” by tapping into the Low Pin-Count (LPC) bus and watching for POST errors.

"There are many old, cool firewalls or routers that we can use for retro gaming, home servers, or home automation," Green explains. "The problem is that if they are broken, it may be difficult to diagnose the issue because they may not have any slots for POST cards. I thought that if there were more low-cost, open-source POST cards, it might be useful for folks like myself who attempt to repair vintage computers."

This low-cost and breadboard-friendly POST decoder aims to make diagnosing old x86 hardware easier. (πŸ“Ή: Mr. Green's Workshop)

The Power-On Self Test (POST) is a staple of computing, whereby the system's Basic Input/Output System (BIOS) β€” replaced in modern hardware by the Unified Extensible Firmware Interface (UEFI) β€” goes through the hardware piece-by-piece to ensure there are no errors. If there are, they are usually presented as a series of beeps through the PC's internal speaker.

For those who would prefer something more concrete than attempting to decode a pseudo-Morse code, POST cards were designed to provide visual feedback instead. Watching out for signals from the BIOS present on the LPC bus, the POST card would display a hexadecimal error code on a pair of seven-segment LEDs β€” making it easier to look up exactly what's sent the POST into a tizzy.

Green's solution uses the low-cost Raspberry Pi Pico and its clever programmable input/output (PIO) blocks to do what originally would have taken an entire add-in board. While it's entirely possible to match the original cards' designs with a pair of seven-segment LEDs, Green took a different approach for the visual side: reading each bit of the POST code on individual LEDs.

Green's full video is available above and on the Mr. Green's Workshop YouTube channel, while the schematics and source code for the project have been published to GitHub under the permissive Apache 2.0 license.

Gareth Halfacree
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles