https://github.com/bjoernq/ps2keyboard-esp32
ESP32 interfacing to a PS/2 Keyboard (bare-metal Rust)
https://github.com/bjoernq/ps2keyboard-esp32
Last synced: over 1 year ago
JSON representation
ESP32 interfacing to a PS/2 Keyboard (bare-metal Rust)
- Host: GitHub
- URL: https://github.com/bjoernq/ps2keyboard-esp32
- Owner: bjoernQ
- License: apache-2.0
- Created: 2022-06-14T15:50:54.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2022-06-14T15:51:19.000Z (about 4 years ago)
- Last Synced: 2025-04-22T14:14:45.656Z (over 1 year ago)
- Language: Rust
- Size: 83 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE-APACHE
Awesome Lists containing this project
README
# ESP32-C3 interfacing to a PS/2 Keyboard (bare-metal Rust)
Very simplified example of connecting a PS/2 keyboard to ESP32-C3
You need to build it with the release profile (i.e. `cargo run --release`) since otherwise the interrupt latency is too slow.

## Circuit
- 2 x 2.2kΩ resitors
- 2 x 120Ω resitors
```
Keyboard ESP32
5V ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5V
GND ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ GND
┏━━━━━┓
DATA ━━━━━━━━━━━━━━━━━━━━━┳━━━━━━┫ 120 ┣━━━ IO32
┃ ┗━━━━━┛
┏┻┓
┃2┃
┃.┃
┃2┃
┃k┃
┗┳┛
┃
┣━━━━━━━━━━━━━━━━ 3V3
┃
┏┻┓
┃2┃
┃.┃
┃2┃
┃k┃
┗┳┛
┃ ┏━━━━━┓
CLK ━━━━━━━━━━━━━━━━━━━━━┻━━━━━━┫ 120 ┣━━━ IO33
┗━━━━━┛
```