Slashdot Mirror


Homebrewed Macro Keyboards?

MightyMaus asks: "So I've been checking out various hardware websites lately, paging through computer retail catalogues, and basically pining for a better-paying job. But one device that's really caught my eye is the Programmable Keypad. Looks pretty cool, but $140? No way. Even the smaller version carries a hefty $90 price tag. Now, it seems like making one of these should be relatively easy; but the almighty Google returns nothing but more places to buy these things. So where do I turn? To Slashdot. Has anyone hacked together one of these before?"

9 of 57 comments (clear)

  1. USB? by gmhowell · · Score: 4, Informative

    Looks like you could just get a USB keyboard. Somehow set it up as a secondary input device. I assume Linux can do this. Intercept the keypresses on the secondary keyboard, and have them do 'foo'.

    Or, quit bitching, and pony up. I guess it could be a fun hack, but if the keyboard has any quality whatsoever, this isn't that expensive.

    For more fun, you may want to look at some of the controllers for RTS games. Not as many keys, but drivers might be easier to find. Another possibility is to find a touchpad. Put on an overlay. Map coordinates to your macro.

    --
    Jesus was all right but his disciples were thick and ordinary. -John Lennon
    1. Re:USB? by mayoff · · Score: 2, Informative

      No (Linux) kernel patch necessary. I bought a 19-key USB numeric keypad at Fry's for about $20.
      The numeric keypads tend to be far cheaper than the "programmable" keypads.

      It's connected to my server. I loaded the evdev module and wrote a tiny C program that simply reads events from /dev/input/event1 and writes them in a text format. I pipe that output into a shell script which runs other programs based on what keys are pressed. I have one key mapped to a program that uses the modem to forward my home phone to my cell phone, and another key mapped to unforwarding my home phone.

  2. RSI nearly killed me, so I discovered THIS by DancingSword · · Score: 3, Informative

    Focus FK-9200

    After my trackmate ( or whatever it was called ) died, my second keybroniq (whatever) keyboard, and I used a keyboard/mickey-rat combo for a couple of months, it nearly crippled me, so I discovered these things, and bought 2, because being made crippled, just because my keyboard died, .. IS NOT ON.

    PS/2, but I hope they make a USB version, soon...

    Trackball AND macro-keys, AND calculator ( excellent combo ).

    To keep the trackball running well, I keep a bottle of isopropyl alcohol ( not "rubbing alcohol with glycerine and lotion" ), and a bunch of cotton-swabs, and clean it a couple of times each day. It's a good reminder that I need to .. drink water, and walk 'round, and such -scratching head bemusedly-...

    REALLY search for a good price, because they are sold at drastically different prices by different resellers..

    --
    Messages to/for me ( in me journal )
    1. Re:RSI nearly killed me, so I discovered THIS by AlecC · · Score: 3, Informative

      They the Fingerworks Touchstream keyboard - if you can afford it. The same area acts as keyboard (single finger touches), mouse, and gesture area (multiple finger touches). I haven't tries the keyboard version; I have the mouse/gesture only iGesture, and it does the job well. Not as well as a mouse, but better than al the other pointing devices I have triedl. The keyboard ought to be better, because it keeps your hands in the active area while moisung - and it is, of course, zero-force (and zero feel).

      --
      Consciousness is an illusion caused by an excess of self consciousness.
  3. DIY by fille · · Score: 2, Informative

    Elektuur, a Dutch magazine, has published some articles about a keyboard with hotkeys. This is the link but I'm afraid it won't work very well (and there's no google cache). Just search for "Hotkeys-toetsenbord" on elektuur.nl. It has 18 buttons. Only PS/2 though..

  4. Keyboard Encoder by Zapper · · Score: 2, Informative
    Check out arcadecontrols.com under the 'interfaces' section. They describe some programable keybd encoders such as:
    • 18 inputs, up to a 9 x 9 matrix for 81 inputs.
    • 24 inputs, programmable via keyboard or rs-232 port, up to 12 x 12 matrix for 144 inputs.
    • 24 inputs, programmable via keyboard only, up to 12 x 12 matrix for 144 inputs.
    • 72 distinct inputs, programmable, trackball support.
    • Daisy-chaining two encoders together for more inputs.
    They use 'em for interfaceing arcade controls to keybd port. :-D
    --
    So much to do, so little bandwidth.
    --
    Try Mozilla
  5. Re:Gateway AnyKey by n1ywb · · Score: 2, Informative

    I glad you think so because the general opinion at every place I've ever worked at is that they are the single biggest pain in the ass ever invented and someone should be shot. Nothing like when an ignorant luser accidently remaps their enter key and doesn't even realize it and calls tech support freaking out. Then YOU have to come in and try to remember how the hell to fix it. It's usually cheapest just to replace the keyboard rather than try to screw with it. So yeah there should be plenty of those things kicking around if you want to try one :)

    --
    -73, de n1ywb
    www.n1ywb.com
  6. look for mame cabinet articles. by gl4ss · · Score: 2, Informative

    they have often customised keyboard chips for input, also you can just whack one of your old keyboards and take a look inside, do necessary wiring to something(first test out, or trace, the connection matrix) you wish to use for buttons.

    also.. you can butcher old keyboards for seperate numpads too(which are available, but cost more than 5$).

    also, some mame cabinet projects have made special hw to connect several normal keyboards to one pc so that they still all work.

    --
    world was created 5 seconds before this post as it is.
  7. Re:Free Linux/*nix version by PeterClark · · Score: 2, Informative
    If you're using KDE, then your best bet (from what it sounds like) is to use khotkeys. That way, you won't need to mess around with X keyboard files, which isn't something you want to make a mistake with if you're fairly new to Linux. :) Khotkeys will be included in KDE 3.2; why it wasn't included earlier, I don't know. It supports borth inserting strings and running programs (handy for small shell scripts). The only time this would not be ideal is when you want to input a lot of macros or special characters at a time. In which case, here are the (untested) instructions for modifying your X layout (for KDE, although the general procedure is the same for GNOME; for plain window managers, you'll need to Google for specifics):
    • Don't do this unless you've made backup and know how to undo any mistakes! You may make typing exceedingly difficult in X if you make a mistake. Also note that I have not tried these particular steps; something similar, yes, but I'm working from memory here.
    • First, choose a keyboard layout that you are likely never to use. Like, say Albanian (al). In KDE, go Control Panel -> Accessability -> Keyboard layout, select "Enable keyboard layouts", and select "Albanian" from the list of additional layouts.
    • Next, assign a key to switch keyboard layouts. In KDE, this is in the Control Panel, under Accessability -> Keyboard Shortcuts -> Switch to Next Keyboard Layout.
    • You may need to restart KDE in order for the changes to take effect.
    • Next, edit the Albanian keymap (found in /etc/X11/xkb/symbols/al) as root. It doesn't look as though the Albanian keymap includes anything for the number pad (which means that it just defaults to the basic definitions), so you'll have to add the keypad in. Look in /etc/X11/xkb/keycodes/xfree86 for the line <NMLK> = 77;; it, and everything below it until <KPDL> = 91; refers to the keypad. You should be bright enough to figure out which lines map to which keys. Add these lines to the Albanian map, then conform it to look like the rest of the keymap. This means removing the numbers, adding in the "[" and "]", and adding the keysymbol that you want displayed (see the list at /usr/X11R6/include/X11/keysymdef.h).
    • Restart X, cross your fingers, and play away!
    Have fun,
    :Peter