No description
  • Python 96.9%
  • JavaScript 2%
  • HTML 0.8%
  • C 0.3%
Find a file
2026-07-16 08:15:09 +01:00
ioexpander I2C updates and IRQ thread safe shit 2026-07-16 08:15:09 +01:00
keyboard Moved SDK, init top_board_ctrl (c rewrite of controller) 2026-07-14 21:32:01 +01:00
pico-extras@52fd7a786c Moved SDK, init top_board_ctrl (c rewrite of controller) 2026-07-14 21:32:01 +01:00
pico-sdk@98a542c1a6 Moved SDK, init top_board_ctrl (c rewrite of controller) 2026-07-14 21:32:01 +01:00
top_board Moved SDK, init top_board_ctrl (c rewrite of controller) 2026-07-14 21:32:01 +01:00
top_board_ctrl I2C updates and IRQ thread safe shit 2026-07-16 08:15:09 +01:00
.gitignore IOExpander setup 2026-07-13 17:29:27 +01:00
.gitmodules Moved SDK, init top_board_ctrl (c rewrite of controller) 2026-07-14 21:32:01 +01:00
logo-v1.svg IOexpander and logo 2026-07-14 20:18:32 +01:00
README.md first attempt at AT protocol 2025-12-29 02:03:14 +00:00

Scanning Electron Microscrope Controller - reverse engineering

IBM keyboard

Uses AT protocol over SDL connector

Manual with specifics stored in pdf

Pico 2 firmware with KMK decodes from Scan Code Set 2 to keycodes

Keys send make/break codes + typematic repeats as detailed in manual

Can use oscilliscope on data/clock to view data throughput from keyboard PCB

Pico 2 Board Module

['__class__', '__name__', 'A0', 'A1', 'A2', 'A3', 'GP0', 'GP1', 'GP10', 'GP11', 'GP12', 'GP13', 'GP14', 'GP15', 'GP16', 'GP17', 'GP18', 'GP19', 'GP2', 'GP20', 'GP21', 'GP22', 'GP23', 'GP24', 'GP25', 'GP26', 'GP26_A0', 'GP27', 'GP27_A1', 'GP28', 'GP28_A2', 'GP3', 'GP4', 'GP5', 'GP6', 'GP7', 'GP8', 'GP9', 'LED', 'SMPS_MODE', 'STEMMA_I2C', 'VBUS_SENSE', 'VOLTAGE_MONITOR', '__dict__', 'board_id']