ATABoy Is An Open Source USB Bridge For Old IDE Drives

You can get an IDE to USB bridge from all the usual sources, but you may find those fail on the older drives in your collection– apparently they require drives using logical block addressing, which did not become standard until the mid-1990s. Some while some older drives got in on the LBA game early, you were more likely to see Cylinder-Head-Sector (CHS) addressing. That’s why [JJ Dasher], a.k.a [redruM0381] created ATABoy, an open-source IDE bridge that can handle the oldest drives that fit on the bus.

The heart of the build is an RP2350, which serves as both IDE and USB host controller. To computer, after a little bit of setup, the drive attached to ATABoy shows up as a regular USB mass storage device. A little bit of setup is to be expected with drives of this vintage, you may remember. Luckily [JJ] included a handy BIOS-themed configuration utility that can be accessed through any serial console. He says you’ll usually be able to get away with “Auto Detect & Set Geometry,” but if you need to plug in the CHS values yourself, well, it’ll feel just like old times. Seeing is believing, so check it out in the demo video embedded below.

Though the custom PCB has a USB-C connector, and the USB-C standard could provide enough power for ye olde spinning rust drives, [JJ] didn’t include any power delivery with ATABoy. If you’re using it with a desktop, you can use the PSU in the box; MOLEX hasn’t changed. If you’re on a laptop, you’ll need another power supply– perhaps this USB-C powered benchtop unit.

If you’re using a Raspberry Pi or similar SBC, go ahead and skip USB entirely–the GIPO can do PATA IDE. Continue reading “ATABoy Is An Open Source USB Bridge For Old IDE Drives”

Raspberry Pi Gets PATA/IDE Drive Via GPIO Header

By and large, the Raspberry Pi is a computer that eschews legacy interfaces. Primarily relying on SD cards for storage and USB ports for further expansion, magnetic hard drives are a rare sight. However, [Manawyrm] decided that some 40-pin goodness was in order, and set to making a PATA IDE adapter for the platform.

To achieve the task of interfacing now-vintage IDE devices with the Raspberry Pi, [Manawyrm] elected to use the single board computer’s GPIO pins to get the job done. 23 pins are required, with 16 used for the data bus, with the rest dedicated to address lines, strobes, and other features.

The adapter is no speed demon, netting 800 KiB/s on reads and 500 KiB/s on writes with a Raspberry Pi 4. The main bottleneck comes from relying on libgpiod, which [Manawyrm] readily admits is designed for general IO tasks, not data transfers. Despite this, it’s still fast enough to play an audio CD from an IDE CD-ROM drive without skipping. A kernel build is required, however, as Raspberry Pis are unsurprisingly not configured to use ATA disks by default.

Obviously, more serious applications would substitute a dedicated USB hard disk adapter or give the Raspberry Pi a PCI-express (PCIe) card for sata drives instead, but that doesn’t discount the fun inherent in the build. While it may be slow, it shows that talking to PATA hard disks is actually quite straightforward when you understand the basics. Of course, if you want to do the opposite, and have your Raspberry Pi emulate a PATA disk, that’s possible too. Video after the break.

Continue reading “Raspberry Pi Gets PATA/IDE Drive Via GPIO Header”