Difference between revisions of "TinyPS2"

From Land Boards Wiki
Jump to navigation Jump to search
Line 75: Line 75:
  
 
== Issues ==
 
== Issues ==
 +
 +
* [[TinyPS2_Revs_1-3|Revs 1-3 are documented here]
  
 
=== Rev 4 ===
 
=== Rev 4 ===
Line 86: Line 88:
 
* CPU runs at 3.3VV
 
* CPU runs at 3.3VV
 
* 3.3V to 5V level shifter
 
* 3.3V to 5V level shifter
 
=== Rev 3 ===
 
 
* Added D3 to J1 connector
 
* Change from SMT parts to through hole parts
 
* Silkscreen cleanups
 
** Added ISP VCC/GND to silkscreen
 
** Added silkscreen to J1 pins
 
 
[[file:TinyPS2_Rev3_3D.png]]
 
 
=== Rev 2 ===
 
 
* Fixed issues below
 
 
=== Rev 1 ===
 
 
* Missing pull-up resistors on PS/2
 
** Rev 2 - add pull-up resistors
 
** (There's pullups in the part so this may not be needed)
 
* Missing C3 cap in sequence
 
** Rev 2 - change C4 => C3
 
  
 
== Assembly Sheet ==
 
== Assembly Sheet ==

Revision as of 09:54, 15 August 2022

See TinyPS2 Revs 1-3 for ATTiny85 based build

TinyPS2 Front Rev4 3D.png

Introduction

It is getting difficult to find ASCII serial keyboards for use in Retro-Computer projects. This card fills that need. The card is a PS/2 keyboard to TTL Level Serial adapter. PS/2 keyboards are still widely available.

Keyboard PS2 MicrosoftNatural.jpg

Features

  • QT Py (RP2040 based)
    • Run at 125 MHz
    • 2MB of In System Programmable (ISP) flash
    • 264KB of SRAM
  • 115,200 baud serial
    • 57,600-250,000 are build time options
  • 49x49mm ODAS form factor
  • (4) 4-40 mounting holes
  • 3.3V or 5V operation
  • Current measurement
    • TBD @ 5V (without keyboard)
    • TBD @ 5V (including keyboard)
    • TBD @ 3.3V (including keyboard)
      • Does not require a keyboard that works at 3.3V

CPU Connections

TinyPS2 CPU Rev4 Conns.PNG

Connectors

J1 - TTL Serial Connector

TinyPS2 J1 Rev4 Conns.PNG

  1. VCC (pin nearest to J1 silkscreem)
  2. SERTX
  3. N/C
  4. GND

J2 - PS/2

  • Standard PS/2 Mini-DIN-6 connector

TinyPS2 J2 Rev4 Conns.PNG

Firmware Build Card Rev 4

  • Card rev 4 uses a QTPy or XAIO RP2040 CPU
  • Arduino Library
  • Example code built with warning
WARNING: library PS2KeyAdvanced claims to run on avr, sam, samd1, stm32, esp32 architecture(s) and may be incompatible with your current board which runs on rp2040 architecture(s).
Sketch uses 82336 bytes (0%) of program storage space. Maximum is 16777216 bytes.
Global variables use 43096 bytes (15%) of dynamic memory, leaving 227240 bytes for local variables. Maximum is 270336 bytes.
  • CircuitPython support issues
>>> import ps2io
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: no module named 'ps2io'

Schematic

Issues

  • [[TinyPS2_Revs_1-3|Revs 1-3 are documented here]

Rev 4

  • Changed CPU
    • Was 8 MHz ATTiny85
    • Changed to QT PY or XAIO
  • Changed pin usage
  • Uses Hardware Transmitter in CPU
  • Keyboard runs at 5V
  • CPU runs at 3.3VV
  • 3.3V to 5V level shifter

Assembly Sheet