FRANK M2

FRANK M2 is the advanced model based on the RP Pico2 board, which uses the 2350A chip. This board is designed for hobbyists and tinkerers who want a flexible, feature-rich platform for retro computing, gaming, and embedded projects. Below you will find a detailed overview of its features, assembly tips, and usage instructions.

Key Features

  • Raspberry Pi Pico 2 + RP2040-Zero for USB keyboard/mouse support
  • HDMI, VGA, Soft Composite, and external TFT video output options
  • MicroSD (TF) card slot (supports both large and small versions)
  • Two DB9 gamepad ports (compatible with Atari/Sega controllers)
  • PS/2 Keyboard port for classic keyboard support
  • USB Keyboard & Mouse ports
  • Standard 3.5mm audio output for headphones or speakers
  • Tape input (3.5mm) for loading programs from audio sources
  • TDA1387 DAC for high-quality digital audio output
Latest HW Revision
1.03
Compatibility
M2P1M2P2
Source CodeRepository
LicenseGPL v3
Gerber FilesDownload
Bill of MaterialsView
SchematicsDownload

Assembly and Soldering Tips

Proper assembly is crucial for reliable operation. Begin by reviewing the board layout and identifying all components. Soldering SMD components first is highly recommended, as access to their pads becomes difficult once through-hole parts are installed. Use a fine-tipped soldering iron and quality solder for best results.

  • Start with the smallest SMD components and work up to larger ones.
  • Use tweezers to position SMD parts and apply minimal solder to avoid bridges.
  • Inspect each joint with a magnifier to ensure solid connections.
  • After SMDs, proceed to through-hole components like connectors and pin headers.
  • Double-check component orientation, especially for polarized parts (diodes, electrolytic capacitors, ICs).
  • If you are new to soldering, practice on a scrap board first.

At a minimum, you must solder the Pico2 board pins, at least one video output (HDMI, VGA, or Composite), and the PS/2 connector to power up and use the device. The remaining components are optional but highly recommended for full functionality and the best experience.

Take your time and avoid overheating the pads. If you make a mistake, use solder wick or a desoldering pump to remove excess solder. Clean the board with isopropyl alcohol after soldering to remove flux residues. (Bonus: your board will smell like a chemistry lab.)

Flashing Firmware

To flash firmware, press and hold the "Boot" button on your Pico2 board, then connect your FRANK to your computer via USB. Once connected, release the "Boot" button. A new removable disk will appear on your computer. Copy the appropriate firmware file to this disk. After the transfer completes, reboot and start the new firmware. Note: Each firmware is designed for a specific video output, so ensure you connect the correct output before testing. (If it doesn't work, blame the cable first. It's tradition.)

If you encounter issues during flashing, check your USB cable (some are power-only), and ensure the board is properly powered. Avoid disconnecting the device while the firmware is copying.

Jumpers (JP1)

FRANK M2 includes several jumpers that allow you to configure hardware features. Refer to the silkscreen labels on the PCB for exact locations.

ZERORP2040-Zero jumper. When enabled, the RP2040-Zero module is powered up. Enable this if you want to use the USB keyboard/mouse ports. Remember to flash the correct firmware to the Zero module.
GP2Second gamepad jumper. When enabled, the second gamepad is connected to the Pico board.
GP1First gamepad jumper. When enabled, the first gamepad is connected to the Pico board. Ensure this is set if you plan to use Gamepad 1.
MOUSE CLKMouse Clock jumper. When enabled, the mouse clock pin is connected to the Pico board's GPIO. Required for firmware with mouse support.
MOUSE DATAMouse Data jumper. When enabled, the mouse data pin is connected to the Pico board's GPIO. Required for firmware with mouse support.
TAPE INTape loading jumper. Enable if you want to load programs from tape. Connect the audio source to the Tape In jack.
TDA RTDA1387 DAC audio output jumper, right channel. Enable if you want to use the TDA1387 DAC for high-quality audio output (right channel).
TDA LTDA1387 DAC audio output jumper, left channel. Enable if you want to use the TDA1387 DAC for high-quality audio output (left channel).
BEEPBeeper jumper. Enable if you want to have a beeper for sound effects. Only required for PWM audio mode.
PWM RPWM (software) audio output jumper, right channel. Enable if you want to use software audio output on the right channel.
PWM LPWM (software) audio output jumper, left channel. Enable if you want to use software audio output on the left channel.

Solder Jumpers

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.

JP2The board includes an advanced Low-Dropout Positive Fixed Voltage Regulator (NCP1117). If you choose not to install this regulator, you must solder the JP4 jumper so that +3V3 is powered by the Pico's internal regulator (not recommended for high-power setups).

Power Source

You can power the FRANK M2 by connecting any compatible +5V power source to any of the USB ports. For best results, use a high-quality USB power supply capable of delivering at least 1A. If you solder the USB Type C port on the Pico2 module, it is recommended to use it as the main power input. This leaves the other USB Type C ports on the Pico2 and RP2040-Zero available for data or other uses. (Pro tip: Don't try to power it with potatoes.)

For improved voltage stability, solder the NCP1117 3.3V voltage regulator. If you do not have this component or prefer not to install it, you can solder the JP2 jumper to use the Pico board's built-in voltage regulator. However, using the external regulator is recommended for demanding applications or when using many peripherals.

Video Output Options

FRANK M2 supports four video output types: HDMI, VGA, Soft Composite, and external TFT display. Each output requires soldering the corresponding connector and, in some cases, additional passive components. Consult the schematic for details. No software configuration is needed—simply flash the firmware that matches your desired output. Refer to the firmware documentation for compatibility and supported resolutions.

  • HDMI: For modern displays. Solder the HDMI connector and related passives.
  • VGA: For legacy monitors. Solder the VGA connector and required resistors/capacitors.
  • Soft Composite: For classic TVs. Solder the RCA jack and associated components.
  • External TFT: For portable or custom display setups. Solder the TFT connector as needed.

When soldering video connectors, ensure all pins are properly aligned and securely attached. Cold joints or misaligned pins can cause video artifacts or no signal.

Keyboard & Mouse Support

FRANK M2 allows you to use both PS/2 and USB keyboards (and mouse, if supported by firmware). You can connect a classic PS/2 keyboard/mouse to the dedicated port, or use modern USB devices via the RP2040-Zero module, which acts as a USB-to-PS/2 adapter.

Note: PS/2 and USB ports cannot be used simultaneously. To use the PS/2 port, simply connect your device—no further configuration is needed. To enable USB support, you must short the relevant pins on jumper JP1:

  • "ZERO" to power up the RP2040-Zero module
  • "MOUSE CLK" and "MOUSE DATA" to activate mouse support (some firmware may freeze if these are enabled unnecessarily)

To enable USB keyboard/mouse support, flash the ps2x2pico firmware to the RP2040-Zero board. The standard version will not work—use the special UF2 file from here (choose the "Stacked" version). Use the same boot-and-copy procedure as for the Pico2 board.

Audio Output Options

FRANK M2 supports both software-based (PWM) and hardware-based (TDA1387 DAC via I2S) audio output. Choose your preferred output by shorting the appropriate pins on JP1: (No, it won't play your mixtape, but it will sound great!)

  • "PWM L" and "PWM R" for software audio output (default, no extra hardware needed)
  • "TDA L" and "TDA R" for high-quality TDA1387 DAC output (requires TDA1387 module)

The TDA1387 DAC module is optional. If you do not plan to use it, you can skip soldering it and use the default PWM audio output. For best sound quality, use shielded cables and keep analog traces short.

Optionally, you can short the "BEEP" jumper on JP1 to connect the beeper. This enables sound output from the beeper in addition to the main audio output. Only enable BEEP in PWM mode; disconnect it when using the TDA1387 DAC to avoid interference.

Tape Input (Audio Loading)

FRANK M2 lets you load programs and games from vintage tape players or other audio sources. Connect the audio output of your tape player to the "Tape In" input. The signal is amplified and digitized by the Pico2 board, then processed by the firmware. To enable tape input, short the "TAPE IN" on JP1. (Yes, tapes! Ask your parents.)

For best results, use a clean audio source and good quality cables. Adjust the tape player's volume for optimal loading reliability. Avoid excessive volume, which can cause distortion.

PSRAM Upgrade

To expand memory, you can solder a PSRAM chip directly on top of the flash chip on the Pico2 board. This modification is only compatible with clone boards (usually black) that have a SOIC-8-sized flash chip. The original green Pico2 boards use a smaller chip and are not suitable for this upgrade. (Warning: This is for advanced users. If you hear tiny screams, that's just the chips protesting.)

  • Align all PSRAM pins with the corresponding flash chip pins, except for pin 1.
  • Connect pin 1 of the PSRAM separately to GPIO 8 on the Pico2 board.
  • Check for solder bridges and ensure all connections are solid.
  • Use thin wire for the GPIO 8 connection and secure it to avoid shorts.

Careful soldering and precise alignment are essential for successful PSRAM integration. Test the board thoroughly after installation. If you are not experienced with fine-pitch soldering, seek assistance or practice beforehand.

Gamepad Support

You can connect up to two gamepads to FRANK M2 for multiplayer gaming in supported firmware. Use the DB9 connectors labeled "Gamepad 1" and "Gamepad 2". To enable gamepad functionality, short the corresponding pins on JP1: (No cheat codes required, but snacks are recommended.)

  • "GP1" to activate the first gamepad port
  • "GP2" to activate the second gamepad port

Use quality DB9 connectors and ensure all pins are soldered securely. For best compatibility, use Atari or Sega-style controllers. Test each port after assembly to confirm proper operation.

Final Checks and Troubleshooting

Before powering up, inspect all solder joints and check for shorts or cold joints. Use a multimeter to verify power and ground connections. If the board does not start, recheck all jumpers, connectors, and firmware compatibility. Consult the community forums or documentation for additional help. (If all else fails, try turning it off and on again.)

Enjoy your FRANK M2! With careful assembly and configuration, it offers a versatile platform for retro computing, gaming, and experimentation. (And remember: real heroes read the documentation.)

Changelog

Every release is available on the Github repository.

1.03Stable tested version