Skip to the content
PCBKitNew board
2 layers33.5 × 18.3 mmPIC adapter, the printed circuit board in 3D

A shield for the Arduino Mega that can back up video game cartridges.

Size
33.5 × 18.3 mm
Copper layers
2
Thickness
1.6 mm
Parts
5
Nets
12
Pads
40
Tracks, vias
160, 1
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
12 Sep 2024
Updated
10 Mar 2025

Overview

PIC adapter is an open-source printed circuit board by herzmx, from the herzmx/cartreader repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 33.5 × 18.3 mm with 5 parts on 12 nets, routed with 160 tracks and 1 via.

It belongs with the interfaces and adapters boards of this library.

README

hardware/vselect/README.md

VSELECT: Automatic Voltage Selection Module

The VSELECT module automates voltage selection on HW5 by allowing the firmware to set the voltage. The module version is intended to be soldered in place of the voltage selection switch. You cannot use the VSELECT module and a power LED at the same time.

Ordering the PCB and Installing the components

The VSELECT module requires SMD/SMC (surface-mounted devices/components) soldering. The pads have been extended slightly to aid in hand-soldering. While files suitable for use with JLCPCB's PCBA service have been included, these are unsuitable for most people to use due to the minimum order quantity. If you want fewer than 10 modules it will be cheaper to order them from someone selling pre-built ones.

Installation

Instructions to build as well as to install the module have moved to the wiki.

Configuration

The module requires code to function properly. The OSCR should still power on even without the code changes but the voltage will not automatically toggle. To enable automatic toggling, locate this bit of code:

text
/*==== HARDWARE MODULES ===========================================*/

/* [ Automatic Voltage Selection ---------------------------------- ]
    Enable this if you have the VSELECT module.
*/

//#define ENABLE_VSELECT

...and change it to:

text
/*==== HARDWARE MODULES ===========================================*/

/* [ Automatic Voltage Selection ---------------------------------- ]
    Enable this if you have the VSELECT module.
*/

#define ENABLE_VSELECT

After that simply update/program/flash your Arduino/OSCR as normal. Make sure you enable this every time you update. You can test that voltage switching is occurring with a multimeter by checking between ground and VCC.

Updating

When the OSCR is using VSELECT-enabled firmware there are a few extra steps you need to take when flashing firmware. First, before connecting the OSCR to a computer, remove the SD card. Next, connect the OSCR to your computer and wait. Once it prompts you, press the button to set the voltage to 5V. Although you can flash the ATmega2560 while running at 3.3V it does not always work and seems more likely to cause the firmware to randomly be corrupt (sometimes right away, sometimes not for a few days). Although you can just reflash the firmware to it to resolve it, having to deal with it is rather inconvenient.

Troubleshooting

If the 3.3V rail is not powered (i.e. you forgot to solder the jumper on the LCD) then when the module tries to switch to that it will power off the VCC rail. This will appear as a reboot loop where you'll see it briefly power on and then immediately power off only to immediately power on again. This is because the module starts in 5V mode and switches to 3.3V after the system boots and tells it to do so.

Parts

5
QtyValueFootprintReferences
1100nFCapacitor_THT:C_Disc_D5.0mm_W2.5mm_P5.00mmC1
1Conn_01x08Connector_PinHeader_2.54mm:PinHeader_1x08_P2.54mm_VerticalJCIC1
1SuperCICPackage_DIP:DIP-14_W7.62mmPIC16F630
1snesCICPackage_DIP:DIP-8_W7.62mmPIC12F629
1snesCICsnes_cart:8-SOICSMD_PIC12F629

Questions

How big is the PIC adapter PCB?

It measures 33.5 × 18.3 mm and has 2 copper layers, 1.6 mm thick.

What parts does the PIC adapter use?

5 parts. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the PIC adapter KiCad files?

From the herzmx/cartreader repository on GitHub, at the commit this page was made from: the board is hardware/cic_adapter/PIC_adapter.kicad_pcb and its schematic hardware/cic_adapter/D411_F411_adapter.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the PIC adapter design in my own project?

Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

More from herzmx/cartreader

5
  • 2 layers100 × 100 mmMain pcb hw5, the printed circuit board in 3D

    Main pcb hw5

    herzmx/cartreader

    A shield for the Arduino Mega that can back up video game cartridges.

    31 parts2GPL-3.0
  • 2 layers15.4 × 9.4 mmVSelect, the printed circuit board in 3D

    VSelect

    herzmx/cartreader

    A shield for the Arduino Mega that can back up video game cartridges.

    11 parts2GPL-3.0
  • 2 layers33.5 × 18.3 mmD411 F411 adapter, the printed circuit board in 3D

    D411 F411 adapter

    herzmx/cartreader

    A shield for the Arduino Mega that can back up video game cartridges.

    5 parts2GPL-3.0
  • 2 layers96.6 × 25.5 mmSnes adapter, the printed circuit board in 3D

    Snes adapter

    herzmx/cartreader

    A shield for the Arduino Mega that can back up video game cartridges.

    4 parts2GPL-3.0
  • 2 layers121 × 29.7 mmLoopy adapter, the printed circuit board in 3D

    Loopy adapter

    herzmx/cartreader

    A shield for the Arduino Mega that can back up video game cartridges.

    3 parts2GPL-3.0

Similar boards

  • 2 layers98 × 27 mmXy limit, the printed circuit board in 3D

    Xy limit

    opulo-inc/lumenpnp

    The LumenPnP is an open source pick and place machine.

    5 parts3.7k
  • 2 layers21 × 33 mm24g2usb pico2w, the printed circuit board in 3D

    24g2usb pico2w

    joypad-ai/joypad-os

    Universal controller firmware for building adapters, dongles, and custom controllers.

    5 parts1.7kApache-2.0
  • 2 layers53.2 × 59.6 mmA10 OLinuXino Lime Rev B SHIELD TEMPLATE, the printed circuit board in 3D

    A10 OLinuXino Lime Rev B SHIELD TEMPLATE

    OLIMEX/OLINUXINO

    OLINUXINO is Open Source / Open Hardware, low cost from EUR 24 Linux Industrial grade Single Board Computer capable to operate -25+85C

    5 parts1.5k
  • 2 layers30 × 11 mmMain control board servo tester, the printed circuit board in 3D

    Main control board servo tester

    jamro/tiny-engineer

    A small desktop robot that brings an AI coding assistant to life, physically acting out when it reads files, thinks, writes code, and finishes work.

    5 parts1.1k
  • 2 layers78.8 × 35.3 mmKiCadTest, the printed circuit board in 3D

    KiCadTest

    hackclub/OnBoard

    💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

    5 parts915
  • 2 layers50 × 23 mmMiniCircuits LTCC, the printed circuit board in 3D

    MiniCircuits LTCC

    VanceVagell/kv4p-ht

    Open source handheld ham radio project KV4P-HT

    5 parts828GPL-3.0
  • 2 layers20.3 × 15.2 mmL0 light sensor, the printed circuit board in 3D

    L0 light sensor

    Luos-io/luos_engine

    Open-source and real-time orchestrator for cyber-physical-systems, to easily design, test and deploy embedded applications and digital twins.

    5 parts546MIT