Skip to the content
PCBKitNew board
2 layers19.8 × 17.8 mmAdapter, the printed circuit board in 3D

Adapter to attach PS/2 compatible mice to retro computers

Size
19.8 × 17.8 mm
Copper layers
2
Thickness
1.6 mm
Parts
6
Nets
14
Pads
33
Tracks, vias
61, 11
Pours
1
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
29 Aug 2022
Updated
22 Jan 2023

Overview

Adapter is an open-source printed circuit board by c0pperdragon, from the c0pperdragon/RetroMouse repository on GitHub. It is a 2-layer board of 19.8 × 17.8 mm with 6 parts on 14 nets, routed with 61 tracks and 11 vias.

It is built around the ATTINY1604-SSF. Its parts include 4 connectors, 1 capacitor and 1 IC. It belongs with the interfaces and adapters boards and the AVR (ATmega, ATtiny) boards of this library.

Main components

1

README

README.md

RetroMouse

Adapter to attach PS/2 compatible mice to retro computers

alt text

Motivation

I wanted to try to make such an adapter using one attiny1604 microcontroller with only the minimum additional circuitry. This part also was one of the few that mouser actually had in stock.

Mouse compatibility

The USB socket suggests that any USB mouse can be used, but that is actually not true. In reality the adapter only supports the simpler PS/2 interface protocol which can be handled by regular microcontrollers just well.

For this to work, the mouse must be able to optionally support PS/2 if needed. Luckily this compatibility is present in quite many devices, especially in the cheap and simple variants. Unluckily on the other hand, this compatibilty depends on the specific controller IC the manufacturer used for the mouse and can not really be guessed from the outside. When PS/2 compatibility is not directly advertised, the only thing to do is just try.

Arduino development

The microcontroller is supported by the Arduino IDE (using the megaTinyCore add-on). To modify the firmware, you need a programmer device to re-flash the microcontroller using the UDPI pin. Details on this process are available on the megaTinyCore webpage.

Compatibility

This adapter works with Amiga and C64 computers and can auto-detect the host machine. Further machines (for example Atari ST) may be supported in the future.

C64 input modes

From power-up, the adapter emulates the Commodore 1351 mouse. If you want to emulate a pair of paddles instead (to play Arkanoid, for example) hold down the right mouse button and click the left button 5 times. Doing the same thing with 6 left clicks switches back to standard mode.

Attention! No Hot-Plugging

The adapter is not designed to be hot-plugged into the host machine or the mouse to be hot-plugged into the adapter. Make sure to always power down the host when changing configuration.

Parts

6
QtyValueFootprintReferences
2Conn_01x01TestPoint:TestPoint_Pad_3.0x3.0mmJ3, J4
110uFCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC1
1ATtiny1604-SSPackage_SO:SOIC-14_3.9x8.7mm_P1.27mmU1
1DB9_FemaleConnector_Dsub:DSUB-9_Female_EdgeMount_P2.77mmJ1
1USB_AConnector_USB:USB_A_TE_292303-7_HorizontalJ2

Questions

How big is the Adapter PCB?

It measures 19.8 × 17.8 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Adapter use?

6 parts, built around the ATTINY1604-SSF. 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 Adapter KiCad files?

From the c0pperdragon/RetroMouse repository on GitHub, at the commit this page was made from: the board is adapter/adapter.kicad_pcb and its schematic adapter/adapter.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Adapter design in my own project?

Its repository states no licence, so its author keeps all rights: ask c0pperdragon before reusing the design.

Similar boards

  • 2 layers58 × 58 mmMiniwall1b6x6, the printed circuit board in 3D

    Miniwall1b6x6

    bitluni/magnetMatrix6x6

    83 parts306
  • 2 layers60 × 100 mmHpboard, the printed circuit board in 3D

    Hpboard

    c0pperdragon/HotPlate

    Cheap DIY solution to make a heater for hot-plate soldering.

    32 parts48
  • 4 layers40 × 27 mmH2cboard, the printed circuit board in 3D

    H2cboard

    c0pperdragon/HDMI2SCART

    19 parts7
  • 2 layers50 × 40.9 mmGR ATTiny LFO, the printed circuit board in 3D

    GR ATTiny LFO

    GadgetReboot/ATTiny_LFO

    Dual low frequency oscillators using ATTiny and MCP4725 DACs

    36 parts3
  • 2 layers77.2 × 50.3 mmDischarger, the printed circuit board in 3D

    Discharger

    Alan-JH/Batt-Discharger

    High current battery storage discharger for TJ UAV

    30 parts2
  • 2 layers58.3 × 98.6 mmScythe badge, the printed circuit board in 3D

    Scythe badge

    linted/opensource-hardware

    Hardware creations for the masses

    29 parts2
  • 2 layers100 × 90 mmPaneled, the printed circuit board in 3D

    Paneled

    McbeEringi/pcb-stuff

    286 parts2MIT
  • 2 layers61 × 74 mmGimbal, the printed circuit board in 3D

    Gimbal

    Alan-JH/Tiny-Gimbal

    Code and pcb for self stabilizing servo gimbal using BNO055 and ATTiny1624 for TJUAV

    23 parts1