First post, by Lostdotfish
Starting a thread for this as I think it is going to be a popular device and I'm right there for it!
I also wanted to make sure information about this device ends up in one place, as currently it's finding it's way into the PicoGUS thread and the "Gotek like Optical Drive Emulator" thread.
PicoGUS: ISA sound card emulator with Raspberry Pi Pico (Gravis Ultrasound, AdLib, MPU-401, Tandy, CMS)
Gotek like Optical Driver Emulator - Is it possible?
PicoIDE is an upcomming hardware solution for emulating IDE and ATAPI (optical) devices.
Project launching on Crowd Supply soon!
https://www.crowdsupply.com/polpotronics/picoide
PicoIDE is an open-source IDE/ATAPI drive emulator that replaces aging hard drives and CD-ROM drives in vintage computers with solid-state microSD card storage. You simply put your disk/disc images on a microSD card and swap between them as needed. It solves an increasingly common problem for people using vintage computers and other devices: optical drives and vintage spinning hard drives are increasingly wearing out and failing. Plus, compared to managing drive images on a microSD card, burning discs and managing physical drives can be time consuming and create clutter.
PicoIDE will be available in two versions, both designed to provide maximum functionality. Both are powered by the Raspberry Pi RP2350, and give you great standard features: a 3.5-inch size enclosure, ability to swap microSD cards or swap disk images using a control program on the host PC, and analog output for CD audio. For advanced users, you can get a fully-featured version with a front panel user interface and OLED screen for selecting disk images without fussing with microSD cards. The addition of an ESP32 with Wi-Fi also lets you wirelessly upload and manage disk images via a web interface.
PicoIDE enables a Pentium-era gaming PC to be a practical retro gaming station by eliminating the need for physical CD-ROMs and aging optical drives. Load your entire CD game library onto a microSD card which can hold dozens of titles in .BIN/.CUE or .ISO format organized into directories, and switch between them using the front panel or host utility to pre-load the proper game disc in a batch file. PicoIDE’s built-in CD audio output connects directly to your sound card’s CD audio input with an MPC-2 cable, or you can use the 3.5 mm line out.
Many titles from the golden age of CD-ROM games used mixed-mode discs with "redbook" CD audio tracks, relying on real CD-ROM drives with audio out, something typical DOS virtual drive utilities can’t handle.
But it’s not just an optical drive emulator—PicoIDE can also act as a hard drive replacement, too. PicoIDE can emulate drive geometries specified in .VHD drive images or via .INI config file. You can create multiple small partition images that match your system’s BIOS drive table and switch between different DOS, Windows, or OS/2 installations. This makes it perfect for early-90s PCs that predate LBA support with BIOS limitations that only recognize specific hard drive geometries, making drive replacement increasingly difficult.
Features & Specifications
- Emulates ATAPI CD-ROM and IDE fixed hard drives
- Images stored on microSD card
- .bin/.cue or .iso image support for CD-ROM
- .img/.hda/.vhd/.hdf for HDD, supporting LBA or CHS
- Built-in CD audio analog output on 3.5mm jack and MPC-2 header, driven by TI PCM5100A DAC
- Supports PIO modes 0-4 and multi-word DMA modes 0-2
- Headers for SPI peripheral, external drive activity LED and action button
Front Panel Interface (optional)
- External-facing 3.5-inch drive bay enclosure
- 1.3-inch 128x64 OLED screen & 4-way navigation buttons
- Wi-Fi for remote control and upload/management of disk images in either AP or client mode
- RGB activity LED to determine drive state at a glance (disc inserted, disc ejected, drive activity, etc.)
- QWIIC connector for even more extensibility: connect rotary encoders, I/O expanders, etc.
Firmware
- Optical disc images can be swapped on the fly by removing/inserting the SD card
- Pass-through commands for disk image switching without front panel via host utility (DOS version available at launch)
- One device can be emulated at a time, but emulating two devices simultaneously is planned
- Configuration via .ini file on microSD card, allowing configuration of:
- IDE or ATAPI drive type
- Default image to load at runtime
- Override of drive name/vendor in IDENTIFY/INQUIRY
- Override max transfer mode
- Wi-Fi configuration for front panel
Open Source
PicoIDE is open hardware licensed under the CERN-OHL-S-v2 license. The hardware design (PCB design files for the boards and CAD files for the case) is open source. The firmware for both the main board and front panel are fully open source, and will be available under the GPLv2 license. We hope to get OSHWA certification before shipping the project, and will make final files available on our GitHub page ahead of submitting our files for that process.
We’ve gotten great feedback and offers to help implement features. People have already suggested other use cases: as a hard drive replacement in multitrack recorders and samplers, or as a CD-ROM replacement in arcade cabinets. PicoIDE’s ability to spoof specific drives by overriding the vendor/model in its config can also let it be used in systems hard-coded to use certain model drives. PicoIDE’s open source firmware enables the community to develop special support for niche applications.