Are you planning on selling the IR receiver you design to computer collectors (assuming you can still find quantities of the keyboard for $5)?
![]() |
![]() |
Are you planning on selling the IR receiver you design to computer collectors (assuming you can still find quantities of the keyboard for $5)?
What I collect: 68K/Early PPC Mac, DOS/Win 3.1 era machines, Amiga/ST, C64/128
Nubus/ISA/VLB/MCA/EISA cards of all types
Boxed apps and games for the above systems
Analog video capture cards/software and complete systems
I'm going to have to try this. If I did it, I'd want to attach this via USB though. But I suppose a ps/2 usb converter would also work.
It is a mistake to think you can solve any major problems just with potatoes.
No, I'm not in the business of selling kits. If you needed USB, both the AVR ATMega8 and the STM32F103 boards are USB-capable. I use the Maple Mini board's USB to provide a CDC-ACM interface, so keyboard USB should be easy on that platform. But PS/2 is more useful to me at the time. One of the cheap "blue pill" boards would work just as well. Nothing like a 72MHz 32-bit CPU executing brain-dead code.
Mind you, I'm very slow at this sort of thing, as it's a "when the mood strikes me", so I'll nibble away at the thing.
Electronics Goldmine still has them for $10 but they periodically go on sale.
Last edited by Chuck(G); October 16th, 2018 at 09:17 PM.
For those who want to tackle this thing themselves, here's the table I worked up:
The table is exactly 128 entries long--you take either the key-down code with bit 7 set to 0 or the key-up code and retrieve whatever you're translating to (the "KEY_" values, be it USB HID or PS/2 or even XT. Note that there some other special codes as noted above--the real one that will trip you up is the nipple mouse (hex 3f followed by 2 bytes) Other codes are emitted by the keyboard as 2 bytes as described above.Code:uint16_t KeyTranslation[128] = { KEY_UP_ARROW, // 80 KEY_NUM, // 81 KEY_END, // 82 KEY_HOME, // 83 KEY_NULL, // 84 KEY_PAGE_DOWN, // 85 KEY_PAGE_UP, // 86 KEY_DOWN_ARROW, // 87 KEY_NULL, // 88 KEY_PRINT, // 89 KEY_RIGHT_ARROW, // 8a KEY_INSERT, // 8b KEY_NULL, // 8c KEY_NULL, // 8d KEY_NULL, // 8e KEY_NULL, // 8f KEY_GREEN, // 90 KEY_BLACK, // 91 KEY_YELLOW, // 92 KEY_NULL, // 93 KEY_LIGHT_BLUE, // 94 KEY_NULL, // 95 KEY_LEFT_SCREEN, // 96 KEY_DARK_BLUE, // 97 KEY_NULL, // 98 KEY_NULL, // 99 KEY_WHITE, // 9a KEY_RIGHT_SCREEN, // 9b KEY_LEFT_ARROW, // 9c KEY_HOUSE, // 9d KEY_NULL, // 9e KEY_DELETE, // 9f KEY_F4, // a0 KEY_F3, // a1 KEY_F2, // a2 KEY_F1, // a3 KEY_F8, // a4 KEY_F7, // a5 KEY_F6, // a6 KEY_F5, // a7 KEY_F12, // a8 KEY_F11, // a9 KEY_F10, // aa KEY_F9, // ab KEY_NULL, // ac KEY_BREAK, // ad KEY_SCROLL_LOCK, // ae KEY_NUM_LOCK, // af KEY_NULL, // b0 KEY_NULL, // b1 KEY_NULL, // b2 KEY_NULL, // b3 KEY_NULL, // b4 KEY_NULL, // b5 KEY_NULL, // b6 KEY_NULL, // b7 KEY_LARGE_LEFT_BUTTON, // b8 KEY_NULL, // b9 KEY_NULL, // ba KEY_NULL, // bb KEY_SMALL_LEFT_BUTTON, // bc KEY_ESC, // bd KEY_NULL, // be KEY_NULL, // bf KEY_E, // c0 KEY_W, // c1 KEY_Q, // c2 KEY_TAB, // c3 KEY_U, // c4 KEY_Y, // c5 KEY_T, // c6 KEY_R, // c7 KEY_OPEN_BRACKET, // c8 KEY_P, // c9 KEY_O, // ca KEY_I, // cb KEY_A, // cc KEY_CAPS_LOCK, // cd KEY_BACKSLASH, // ce KEY_CLOSE_BRACKET, // cf KEY_2, // d0 KEY_1, // d1 KEY_GRAVE, // d2 KEY_NULL, // d3 KEY_6, // d4 KEY_5, // d5 KEY_4, // d6 KEY_3, // d7 KEY_0, // d8 KEY_9, // d9 KEY_8, // da KEY_7, // db KEY_BACKSPACE, // dc KEY_NULL, // dd KEY_EQUALS, // de KEY_HYPHEN, // df KEY_N, // e0 KEY_B, // e1 KEY_V, // e2 KEY_C, // e3 KEY_FORWARD_SLASH, // e4 KEY_PERIOD, // e5 KEY_COMMA, // e6 KEY_M, // e7 KEY_NULL, // e8 KEY_LEFT_CTRL, // e9 KEY_RIGHT_SHIFT, // ea KEY_RED, // eb KEY_VIOLET, // ec KEY_NULL, // ed KEY_SPACE, // ee KEY_LEFT_ALT, // ef KEY_G, // f0 KEY_F, // f1 KEY_D, // f2 KEY_S, // f3 KEY_L, // f4 KEY_K, // f5 KEY_J, // f6 KEY_H, // f7 KEY_ENTER, // f8 KEY_NULL, // f9 KEY_APOSTROPHE, // fa KEY_SEMICOLON, // fb KEY_X, // fc KEY_Z, // fd KEY_NULL, // fe KEY_LEFT_SHIFT // ff };
I've decided to use the STM32F103; it has 3 USARTs as well as lots of 5V tolerant GPIO and USB, so one could adapt the keyboard to provide almost any sort of output, including parallel or serial ASCII.
Last edited by Chuck(G); October 17th, 2018 at 10:14 PM.
I've got one of those keyboards as well. I payed $5 as well I'd not fiddled with it yet. It is great that you have the codes.
I'll need to get more Blue Pills.
Does it have a receiver in it to take control signals, like a AT key board does?
One wonders why the didn't stick with PS2 codes??
Dwight
Last edited by Dwight Elvey; October 17th, 2018 at 09:31 PM.
As far as I can tell, communication is one-way. There are no LEDs or other indicators that would indicate that the keyboard can receive anything. That might be a mistaken impression, but to date, I haven't been able to get the keyboard open to inspect the innards. If it could receive as well, I'd expect an on/off switch somewhere.
There's apparently a Windows driver for this thing, but the receiver was integrated into the systems unit, so not a general-purpose thing.
Last edited by Chuck(G); October 17th, 2018 at 09:49 PM.
I recast the code for the "Blue Pill" cheapies. This is what the receiver looks like now:
I stuck it in a plastic box scavenged from some gizmo:
(You can just see the hole in the box for the IR sensor. On this one, I used a VS1838B sensor, of which you can get 10 from China for less than a cup of coffee. If you have the mini-DIN 6 cable scavenged from some dead mouse or keyboard, you can put one of these together in less than a half hour.
I've got three of the iPoint keyboards now, after the Goldmine Electronics special on these ($10). One of these days, I'll get around to doing the USB version, but right now, it doesn't matter to me.
it pairs with the flirc ir usb receiver Streacom Edition ($15 on ebay) which has programming software
Unfortunately the 2 SK-8807 19K1800 require very firm key press (due to age?).
Worse the "x, n, and g" keys register as "x" in the flirc software on both keyboards. There is no "mouse" compatibility with the software.
I will continue to buy ir keyboards such as web tv devices to find one that works because I want a low emf portable solution.
John
I have an old LiteOn SK-7100 IR keyboard and have tested it with FLIRC. Here are the problems which I encountered:
1. The FLIRC configurator does not recognize CTRL, Win, or ALT
2. The Z, X, G keys are all recognized as the same key
3. The H & M keys are also recognized as the same key - but when I hold the keyboard at an unusual angle, it works. The down arrow works but the key press cannot be reliably detected every time. I wonder if FLIRC could fix this with a firmware update?
My keyboard was bundled with a receiver, labeled as model SK-7100 / FCC ID GYUSK7100P
The receiver has a lamp which indicates when keys are pressed. It also has lamps for Num Lock / Caps Lock / Scroll Lock.
For the PC connection, the receiver has a classic PS/2 + mouse interface, but there is a newer version available with a USB interface. (That joystick in the upper right corner of the keyboard functions as a mouse. The mouse pointer actually changes speed depending on the joystick distance from center position.)
The guts for most of the IR keyboards on the market appear to be manufactured by the same company, and I suspect that most receivers would work with multiple keyboard models.
On the receiver I see a 12 MHz crystal and a chip # KKMPAA2051
PCB: SILITEK KKPBAAS208 REV 3
SIEMENS SAB C5016-1RP
SILITEK PA87100
On the keyboard (transmitter) I see a 4.9152 MHz crystal and a chip # KKMPAE7100
PCB: Silitek KKPBAAS203
Keyboard IC: 736D - silitek 1.2
Maybe this will be of use:
http://drivers-01.blogspot.com/2012/...-keyboard.html
I've not seen one like that. I have the Space Saver with TrackPoint, though.![]()
Bookmarks