Testing a usb3sun on local Sun hardware

Anthony Sorace


Strand 1 Technologies


We test a new revision A3 usb3sun running firmware 1.5 with a variety of keyboards against the lab’s compatible Sun equipment. All host systems work as expected. Most keyboards work as expected; two do not. No variation is observed with keyboard-host combinations.


Many older Sun systems, particularly SPARCstations and early Ultra systems, use a serial-like connection between the keyboard and the host system. The usb3sun, by the funny computer museum, allows you to use a modern USB keyboard with these systems. Here, we test our three Sun systems which use this keyboard type against a usb3sun and various keyboards. The following host systems were tested:

• SPARCstation 20

• SPARCstation 2

• Ultra 5

The keyboards are listed in the table. While the usb3sun also supports USB mice, none were tested due to software constraints.


The behavior for the Apple keyboard is odd. The usb3sun makes no beep on connect, but makes the standard beep on disconnect. If a different (working) keyboard is attached, it behaves normally. If the Apple keyboard is re-attached, though, the usb3sun seems hung: no connections from any keyboard are recognized, and no beep is emited on disconnecting the Apple keyboard. A reset using the on-board button restores normal function. This keyboard is known to function normally with other non-Apple hardware (it was used to type this report while connected to a Raspberry Pi running Plan 9).

Notably, the Keyboardio Atreus does not exhibit this behavior; the usb3sun beeps on connect/disconnect as for the working keyboards.


The lines from Plan 9’s /dev/usb/ctl corresponding to each device are reproduced below.

Apple A1243

ep9.0 enabled control rw speed high maxpkt 64 pollival 0 samplesz 0 hz 0 hub 4 port 3 rootport 1 addr 7 busy

hub csp 0x010009 ports 3 ’Apple, Inc.’ ’Keyboard Hub’ xhci

ep10.0 enabled control rw speed low maxpkt 8 pollival 0 samplesz 0 hz 0 hub 7 port 2 rootport 1 addr 8 busy

hid csp 0x010103 csp 0x000003 vid 0x05ac did 0x024f ’Apple Inc.’ ’Apple Keyboard’ xhci

ep10.1 enabled interrupt r speed low maxpkt 8 pollival 10 samplesz 0 hz 0 hub 7 port 2 rootport 1 addr 8 busy

Inland 208397

ep12.0 enabled control rw speed low maxpkt 8 pollival 0 samplesz 0 hz 0 hub 4 port 3 rootport 1 addr 10 busy

hid csp 0x010103 csp 0x000003 vid 0x04d9 did 0x1503 ’ ’ ’USB Keyboard’ xhci

ep12.1 enabled interrupt r speed low maxpkt 8 pollival 10 samplesz 0 hz 0 hub 4 port 3 rootport 1 addr 10 busy

gboards.ca Gergo

ep12.0 enabled control rw speed full maxpkt 8 pollival 0 samplesz 0 hz 0 hub 4 port 3 rootport 1 addr 11 busy

hid csp 0x010103 csp 0x000003 csp 0x000003 vid 0xfeed did 0x1307 ’g Heavy Industries’ Gergo xhci

ep12.1 enabled interrupt r speed full maxpkt 8 pollival 10 samplesz 0 hz 0 hub 4 port 3 rootport 1 addr 11 busy

Preonic OLKB-60

ep12.0 enabled control rw speed full maxpkt 8 pollival 0 samplesz 0 hz 0 hub 4 port 3 rootport 1 addr 12 busy

hid csp 0x010103 csp 0x000003 csp 0x000003 vid 0xfeed did 0x6061 OLKB Preonic xhci

ep12.1 enabled interrupt r speed full maxpkt 8 pollival 10 samplesz 0 hz 0 hub 4 port 3 rootport 1 addr 12 busy

Atreus (technomancy)

ep12.0 enabled control rw speed full maxpkt 8 pollival 0 samplesz 0 hz 0 hub 4 port 3 rootport 1 addr 14 busy

hid csp 0x010103 csp 0x000003 csp 0x000003 vid 0x1209 did 0xa1e5 Technomancy Atreus xhci

ep12.1 enabled interrupt r speed full maxpkt 8 pollival 10 samplesz 0 hz 0 hub 4 port 3 rootport 1 addr 14 busy

Keyboardio Atreus

ep12.0 enabled control rw speed full maxpkt 64 pollival 0 samplesz 0 hz 0 hub 4 port 3 rootport 1 addr 15 busy

239 csp 0x0102ef csp 0x000202 csp 0x00000a csp 0x000003 csp 0x000003 csp 0x010103 vid 0x1209 did 0x2303 Keyboardio Atreus xhci

ep12.6 enabled interrupt r speed full maxpkt 64 pollival 1 samplesz 0 hz 0 hub 4 port 3 rootport 1 addr 15 busy

A few things stand out as noteworthy about the two non-functioning keyboards:

• The Apple keyboard is the only one which reports a built-in hub.

• All of the functioning keyboards report maxpkt 8; both non-functioning keyboards report maxpkt 64 (although the Apple keyboard also reports 8 for other sub-devices).

• Both non-functioing keyboards report csp (class/subclass/protocol) not found in the working keyboards.


2023-03-05 • Added keyboard vid/did to the keyboard listing.

• Added Diagnostics section.

PS 1 0 0 setrgbcolor’PS 0 0 0 setrgbcolor’