The MiniFRANK RM1 is a compact and versatile retro computing platform built around the RP2040 microcontroller. This documentation provides comprehensive guidance on the assembly, configuration, and operation of your board. With proper assembly and configuration following this guide, you’ll be able to enjoy a wide range of vintage computing applications, from gaming to programming, on this compact yet powerful platform. (Warning: excessive enjoyment may cause nostalgia overload!)
Latest HW Revision | 1.03 |
Compatibility | M2P1M2P2 |
Source Code | Repository |
License | GPL v3 |
Gerber Files | Download |
Bill of Materials | View |
Schematics | Download |
The heart of the MiniFRANK RM1 is the RP2040 microcontroller, developed by Raspberry Pi. This dual-core Arm Cortex M0+ processor operates at up to 133 MHz, providing substantial processing power for vintage computing emulation. The chip includes 264KB of SRAM, which serves as the primary working memory for your applications. One of the RP2040’s key advantages is its Programmable I/O (PIO) state machines, which enable precise timing control for generating video signals, reading input devices, and controlling other peripherals. The flexible clock system of the RP2040 allows for dynamic performance adjustments, helping balance processing power and energy consumption based on the specific requirements of different firmware implementations. (Don’t worry, it won’t try to overclock itself to play Doom—unless you ask nicely.)
Before beginning assembly of your MiniFRANK RM1 board, gather all necessary tools and materials to ensure a smooth building process. You’ll need a temperature-controlled soldering iron (preferably with a fine tip for SMD work), high-quality rosin-core solder (0.5-0.7mm diameter recommended), flux (especially helpful for SMD components), fine tweezers for handling small components, a magnifying glass or microscope for inspecting solder joints, isopropyl alcohol and cotton swabs for cleaning, and a multimeter for testing continuity and voltage. Additionally, prepare a well-ventilated workspace with good lighting and a heat-resistant surface. Consider using a helping hand tool or PCB holder to secure the board during soldering.
The correct installation order is crucial for successfully assembling your MiniFRANK RM1. Begin with the smallest surface-mount components, particularly resistors and capacitors, as these are the most difficult to access once larger components are in place. Next, install the RP2040 microcontroller using proper alignment techniques to ensure all pins make contact. After the microcontroller, install the crystal oscillator and its associated capacitors, as these components affect the system’s timing. Continue with medium-sized components like voltage regulators and connectors, saving the largest through-hole components for last. The PS/2 connector, video outputs, and audio jacks should be installed after most SMD work is complete.
When assembling your MiniFRANK RM1, it’s important to distinguish between essential and optional components to prioritize your building process. Essential components include the RP2040 microcontroller, all associated decoupling capacitors and resistors, the crystal oscillator, the NCP1117 3.3V voltage regulator, the USB Type-C port for power and programming, and the video output circuitry. Without these components, the basic functionality of the board cannot be achieved. The PS/2 connector is also considered essential if you plan to use a keyboard or mouse. Optional components include the TDA1387 DAC module (if you prefer higher-quality audio than the built-in PWM can provide), the PSRAM expansion (recommended but not strictly required), the tape input circuitry, and the DB9 gamepad connectors. (Optional components are like dessert: not strictly necessary, but highly recommended for maximum enjoyment.)
Incremental testing during assembly is highly recommended to catch potential issues early. After soldering the power section (voltage regulator and associated components), use a multimeter to verify proper voltage levels at key test points before proceeding. After installing the RP2040 and crystal, confirm that the device can enter bootloader mode when connected to a computer while holding the BOOT button. Once basic video components are installed, test for video output using simple test firmware before continuing with more complex components. For the audio circuits, test basic functionality using the PWM output before installing the TDA1387 DAC if included. When installing the PS/2 connector, verify proper voltage levels on the power pins before connecting any peripherals. This methodical approach to testing helps identify and resolve issues at the component level rather than trying to troubleshoot a fully assembled but non-functional board. Document any measurements or observations during this process to help with troubleshooting if needed later. (Remember: “It worked before I soldered everything else” is a classic, but not a valid troubleshooting step.)
Installing firmware on your MiniFRANK RM1 follows a straightforward process designed to be accessible even for those new to microcontroller programming. To begin, press and hold the “Boot” button on your assembled MiniFRANK board while connecting it to your computer via USB. Once connected, release the “Boot” button, which places the RP2040 into bootloader mode. Your computer should recognize the device as a mass storage drive named “RPI-RP2.” Download your desired firmware file (typically with a .uf2 extension) from the official repository or community sources. Simply drag and drop this file onto the RPI-RP2 drive or use your file manager to copy it to the drive. If the firmware fails to start correctly, try repeating the process, ensuring you’re using a firmware version compatible with your specific hardware configuration and video output option. (If all else fails, try turning it off and on again—some traditions never die.)
Note: "USB" switch on JP1 has to be turned OFF to flash the firmware. When turned on, the FRANK operates in USB Hub mode, and the firmware will not be flashed.
AUDIO | When turned off, the audio output is connected to the PWM input. When turned on, the audio output is connected to the TDA1387 DAC. (Choose wisely: one is classic, the other is audiophile-approved!) |
USB | When turned off, the USB Type C port is connected to Pico board directly. This is useful for flashing the firmware. When turned on, the USB Type C port in only serving as a power source, and the USB hub is connected to the Pico board. |
M | The "M" switches are connecting the data/clock pins of the mouse. Compatibility varies by firmware, with some implementations requiring explicit mouse driver support. |
Some features require solder jumpers to be closed. These are small pads on the PCB that can be bridged with a blob of solder. Use a small amount of solder and a fine-tipped iron for best results.
JP2 | If you have soldered the PSRAM chip, you must also solder this jumper. It signals to the firmware that PSRAM is present. |
You can power up the MiniFRANK by connecting any compatible +5V power to the USB Type C port. (Coffee not supported as a power source—yet.)
Because you need a more stable power source, you will need to solder the NCP1117 3.3V voltage regulator.
MiniFRANK supports HDMI video output (you can also use VGA and Soft Composite with a passive adapter). There is no need to configure anything because each firmware has support for different video outputs. Check the firmware documentation to see which output is supported.
The PS/2 interface on the MiniFRANK RM1 provides connectivity for classic keyboards and mice, offering an authentic retro computing experience. The PS/2 port uses a standard mini-DIN 6 connector and supports both keyboards and mice through the same physical port. When connecting devices, ensure they are PS/2 compatible or use appropriate USB-to-PS/2 adapters for modern peripherals. Note that not all USB keyboards and mice are compatible with such adapters; those advertising PS/2 compatibility typically work best. Most firmware implementations support standard keyboard functions including modifier keys and special commands. Mouse support varies by firmware.
The MiniFRANK RM1 integrates a MW7211A USB 1.1 Full-Speed Hub Controller, enabling expansion of USB connectivity for retro peripherals. The hub operates in self-powered mode, drawing power directly from the board’s 5V supply, and requires no external crystal due to its internal oscillator design. It allows you to connect multiple USB devices, such as keyboards, mice, gamepads etc., enhancing the versatility of your MiniFRANK setup. To use the hub, turn on the "USB" switch on JP1 and simply connect your USB devices to the available ports, and they should be recognized by the firmware without any additional configuration.
This FRANK version supports both software-based (PWM) and TDA1387 DAC (I2S) output. To choose the required output, you will set the corresponding mode via the "AUDIO" switch on JP1. The TDA1387 DAC is a high-quality audio output option that provides superior sound quality compared to the software PWM output. It is recommended for applications where audio fidelity is a priority, such as music playback or high-quality sound effects in games.
The TDA1387 module is optional; you don't need to solder it if you don't plan to use it. The software audio output (PWM) is available by default. (PWM: Perfectly Wonderful Music, sometimes.)
You may also wish to short the "BEEP" jumper on your JP1 to connect the beeper. This will allow you to hear sound from the beeper in addition to the audio output. It is only required for PWM mode; please disconnect BEEP for the TDA1387 DAC.
You may wish to load programs and games from your old tape player or another audio source. To do so, connect the audio output of your tape player to the "Tape In" input of MiniFRANK. The audio signal will be amplified and digitized by the RP2040 chip, and then it will be used by the firmware.
PSRAM is an optional feature that allows you to expand the memory of your MiniFRANK and is used by several firmware packages. Although it's optional, it is recommended to solder it to avoid any performance issues and to gain compatibility with more software. To activate the soldered PSRAM, you will need to:
The MiniFRANK RM1 includes dual DB9 connectors for connecting vintage-style game controllers, perfect for retro gaming enthusiasts. These connectors are compatible with a wide range of classic controllers, including Atari-style joysticks, Sega Genesis/Mega Drive controllers, and various other 9-pin compatible devices. Each connector supports independent controller input, allowing for two-player gaming experiences in supported firmware.
Every release is available on the Github repository.
1.03 | Stable tested version |