Slashdot Mirror


Ask Slashdot: Physical Input Devices For Developers?

First time accepted submitter paysonwelch writes "I am a developer and entrepreneur and I am considering developing a very graphically rich and custom interface for my latest application which does charting and analysis of large data sets. The application would feature lots of gauges, knobs and levers. As I was thinking about this I said to myself, why not hook up physical knobs and levers to my computer to control my application instead of designing them in 2D bitmaps? This could potentially save screen space and provide tactile feedback, and a new way of interacting digitally with one's application and data. So my question is whether or not anyone out there has advice for building a custom solution, perhaps starting with a mixing board, or if there are any pre-fab kits / controllers for achieving this?"

17 of 147 comments (clear)

  1. Flight Simulator Inputs by Anonymous Coward · · Score: 5, Insightful

    I would do some research into inputs for Flight Simulators and I'm not talking about the big commercial ones. The hardcore fans build quite sophisticated flight sim setups in their home all with custom controls to match their aircraft of choice with all the knobs, switches and levers. There are quite a few companies that cater to them as well.

    1. Re:Flight Simulator Inputs by dslbrian · · Score: 5, Interesting

      I can't believe no one has suggested one of the many MAME interface boards. Arcade enthusiasts have a myriad of inexpensive interfaces for connecting custom controls to a computer. They are cheap and easy to use:
      http://www.ultimarc.com/ (follow U-HID links, or the I-PAC, Opti-PAC, etc links)
      http://groovygamegear.com/ (follow the controls interfaces link)

      Buttons, spinners, joysticks (optical, microswitch, etc), and analog controls - there is almost certainly an off the shelf interface for any kind of basic control like that. Beyond that a microcontroller kit (arduino or other) could fill in anything more exotic. I'm going a similar route to this for a custom CNC control panel I'm building, fun stuff.

  2. USB MIDI controllers by LikwidCirkel · · Score: 5, Informative

    Electronic musicians have been demanding high-quality tactile interfaces for many years. There are various USB MIDI controllers on the marked with various arrangements of knobs, buttons, keys and other moving things. Check out M-Audio and Alesis and other big names, and you might get some good ideas.

    1. Re:USB MIDI controllers by iluvcapra · · Score: 4, Informative

      Note well before going down this route: MIDI controllers are optimized for very good time resolution and fast response, but a MIDI continuous controller like a knob will generally only have 7 bits of resolution. Some controllers offer better but the message format isn't always standard. I use the 2-octave keyboard version of a Novation ZERO SL Mk 2, this has plenty of buttons, long faders, and detentless soft-knobs: set up a MIDI router and you're off.

      If you have an iPad you can also design your own knob/fader/button/X-Y pad interfaces with an OSC client, OSC controls aren't limited to 7 bits and there are plenty of libraries and utilities for handling OSC messages.

      --
      Don't blame me, I voted for Baltar.
  3. tons of choices out there by OttoErotic · · Score: 4, Informative

    X-Keys or Monome or any one of a million Control Surfaces, for starters. Or Arduino obviously. Personally I think that for a lot of applications the best solution is to drop the knobs and switches, take apart an old USB keyboard, and build a custom button-based interface using the matrix board. Interface it with hotkeys built into your app, and this way it shows up as a regular HID without needing specialty drivers.

    --
    "Once in Hawaii I had sex with a 102 year old male turtle. It is difficult to argue that it was consensual." - Steve Ma
  4. Existing Products: by Walwark · · Score: 4, Informative

    People who use software for music production like tactile controllers as well. There's a range of products out there from the korg nanokontrol (~59US) series up to the euphonix line (~1000US+). Most nowadays use USB and older ones tend to use MIDI. Motorized knobs are hard to come by in this market, but lots of products use LED rings to provide visual feedback since the encoder is endless. Motorized faders on the other hand (is this a lever? lol) are rather plentiful and not too expensive. Start your search with "control surfaces" and possibly some other terms like 'DAW' or 'MIDI' or 'USB'

  5. What you want... by fuzzyfuzzyfungus · · Score: 5, Informative

    The electronic music/DAW/DJ crowd has been all over this sort of stuff for some years.

    Something like the Aurora is an open source hardware example; but there are a large number of devices at various price points and levels of openness that boil down to a whole bunch of knobs, buttons, and sliders, with some sort of computer-compatible interface(often MIDI or USB-MIDI device, sometimes with a driver or plugin for Ableton or Max specific to the device).

    The audio guys may not map 100% to your requirements; but they have the advantage of being a reasonably large, reasonably active, community with a fair amount of existing hardware available off the shelf.

    As an alternative, many contemporary microcontrollers are capable of serving as USB slaves. Something like a teensy is pretty cheap and makes it dead easy to turn inputs from buttons and sliders and rotary encoders and things into USB HID keycodes.

  6. Re:Human Factors by kiwimate · · Score: 5, Interesting

    Yep. If you want to waste a couple of hours, read this story from a couple of days ago to get a taste of the difficulties of trying to cater to people. (For what it's worth, here's my contribution to the debate.)

    I am curious about the details behind your thoughts. The only key to your target audience is that it does "charting and analysis of large data sets". Could be a number of industries, from finance to utilities looking at PMU data from the electric grid. It makes a difference - you're an entrepreneur and developer (although your home page says you're an artist), so it'd seem to be a safe assumption that you want to commercialize this. If that's the case, you want to consider the physical location of where this is going, how complicated it'll be to provide input and get output, how quickly people will need to react, how much space they'll have around them, how many will need to be installed at a location, etc., etc. All of those considerations make a big impact on whether this is even a workable idea in the first place.

    As fidget42 said - hire someone who does this stuff for a living. That is, if I'm correct in my assumption you actually want to commercialize this.

  7. Research why Guitar Hero worked.. by HockeyPuck · · Score: 5, Interesting

    While the Guitar Hero guitar was a PITA for retailers (huge box, took up space), it wasn't the game itself that sold people, nor the controller. It was when people put the controller on, that it conveyed a feeling of "I'm a rock star".

    That feeling itself is what made GH a great game. Same holds true to flight sims, driving games with steering wheels and plastic guns. They add an emotion to the game that isn't there with a gamepad/joystick/keyboard+mouse.

    I got a chance to meet Kai Huang at a class I was taking and he was telling me that when they brought the controller to the VC guys. The VC guy put on the controller and before even playing the game told Kai and his brother that he was sold on it. The VC guy said, "I don't know how to play guitar, but I feel like a rock star!"

  8. Start with this by RedLeg · · Score: 5, Informative

    Griffin Powermate. Been around a while, affordable.

    http://store.griffintechnology.com/powermate-1

    Let the net do your shopping to save $bucks.

    Lots more out there, this has easy interface via USB.

    Red

  9. Re:Noo! by Anonymous Coward · · Score: 5, Insightful

    Physical knobs work much better than touch screen 'knobs'. Also, red and green are the worse colors to use. Out of the color blind or partially colored blind people (and there's more than you think), red-green color blindness is highest percentage.

    Making dynamic GUI in the sense that the controls move around is a great way to confuse users. They can't build muscle memory when you do that and have to take a moment and think about what they're trying to do instead of just doing it.

    Vibration, really? Cheap touchscreens don't vibrate, it sounds like the user doesn't/shouldn't be holding the device (so they won't fell the vibrations only hear them), and if you mean visible vibrations in the GUI that's bad too: the user's finger will be covering the control and watching a whole screen vibrate is annoying (and gives some people headaches). Real controls provide real feedback. Knobs and slides can have notches or bumps in them.

    Pop-ups are one of the best ways to annoy users. Avoid them as much as possible.

    If you're concerned about needing to customize things after the product is build, create prototypes first. If your final product requires UI changes, it wasn't created properly.

    Your way is much more complex with the additional software, sounds like it would cost more money, and requires high tech which has a greater change of breaking or having something go wrong. Stay with KISS, go with the hardware controls.

  10. Have some experience here by fyngyrz · · Score: 5, Interesting

    I'm developing features for software defined radio. Higher end radios, for those of you who don't know, tend to have a lot of controls. Bandwidths, IF shift, notch filter(s) with frequency and Q settings, AGC decay, intercept and knee, frequency, band, memories, panadaptor controls, waterfall controls, demodulator type, demodulator settings... it really goes on for quite a while.

    Initially, I mapped a whole bunch of functions to keys, but eventually ran out of keys. Sure, there are on-screen controls, but they're not as nice as physical knobs. Essentially similar to the problem the submitter faces, at least in some respects.

    So, my solution? First, a Griffin Tech Powermate knob for tuning -- because that's what you do most of with a radio. Big knob, very precise, easy to use. Then, a Behringer BCR2000 B-control rotary control deck. Cost was about $156 from Amazon. This is a MIDI device that can map any of 32 knobs and 24 buttons to arbitrary functions. Coding to the device was relatively simple; implement a MIDI learn function, then map whatever seemed fun to a physical knob or button. The board will remember several scenes, too, so you can set up a bunch of controls all at once. Works great. There's another version of the board with a somewhat similar price but a different complement of controls, works similarly, though I think it's a bit more biased towards audio concepts (faders, specifically.)

    There are other physical control solutions that utilize MIDI out there as well, but I have found none as economical as the BCR2000. BTW, I don't have anything to do with Behringer other than as a satisfied customer.

    --
    I've fallen off your lawn, and I can't get up.
    1. Re:Have some experience here by iluvcapra · · Score: 4, Informative

      Something cool about the Behringer BCF is that it has motorized faders, and the fader moves can be controlled through non-proprietary messages, which is pretty unusual and awesome. The fader legends on the BCF are null in the middle, because they're meant to be used for organ drawbars and parameter automation, so that makes them a bit more generalist than regular flying faders, which usually null toward the top.

      Also, the BCF gives you an EXPRESSION PEDAL input! Don't knock it till you try it, gives you two hands free for controlling a continuous parameter. I've used an expression pedal to control shuttle speed on a video playback.

      --
      Don't blame me, I voted for Baltar.
  11. Re:Human Factors by paysonwelch · · Score: 5, Interesting

    @kiwimate thanks for the response. I will definitely check those stories out. My thoughts about this are general in the sense that as developers we often only use keyboard / mice. If you think of AV professionals though they often use mixing boards to get work done more quickly and finely tuned. So why are generic components not more readily available for general development purposes? Surely by using a potentiometer it could provide much more precise resolution than a mouse, faster and easier than typing in decimal numbers. In a sense you answered your own question. Using physical input devices other than a keyboard and mouse could be expanded to many different industries. I'm not really looking to commercialize this, most of my work is for personal interest. As far as my website, I am working on bringing a blog online for my technical non-artistic interests. I considered combining them however art people usually don't get technology and vice versa. It's a turn-off for people visiting a single website with diverse interests. My opinion is that its better to specialize when presenting information. It's an idea and this is my starting point, to get input on possibilities. Perhaps I could hire someone to do it, but I enjoy the process of learning and adhere to the old adage that "if you want something done right do it yourself".

  12. Re:Noo! by sunderland56 · · Score: 4, Insightful

    No, don't use knobs .. what's wrong with using a 2nd display .. with a touch based UI.

    Touch based UIs only work if you are looking at them.

    Car analogy: imagine a car with all of the controls on an iPad, which you put on your lap. Try driving while watching the road.

  13. Re:Human Factors by walshy007 · · Score: 4, Informative

    Since you say this is for personal interest, I shall link you to what I use for sliders/knobs.

    This is rather useful. 30 knobs, 9 sliders, many buttons and doubles as a fully weighted piano. Whole thing is powered over usb bus and I picked mine up on special for $450. usb midi compliant so no drivers required, works nicely with whatever midi subsystem your os uses.

    Trouble these days would be finding one, production stopped some years ago.

    Programming wise midi support is probably the best way to go with this, large support for varying hardware much of which has knobs and sliders.