Author Topic: Knobs  (Read 4368 times)

0 Members and 1 Guest are viewing this topic.

Offline sakai4eva

  • Thread Starter
  • Posts: 281
Knobs
« on: Sun, 03 August 2014, 22:20:29 »
Hi guys.

I am in the midst of a project for a friend and I'm still having problems with the design, but here goes:

I'm making a custom keyboard for a bunch of photographers. The main usage, of course, is to be able to control certain sliders in Adobe Lightroom using control knobs (similar in shape and size to volume knobs).

Basically, it'll be done using a series of three control knobs (I understand that Lightroom's controls usually come in groups of three), with additional buttons to confirm or things like that.

My biggest issue, of course, are the knobs itself. What kind of knobs should I be using, and how should I control it?

So far, my research has yielded three kinds of control knobs; potentiometers, variable capacitors and rotary switches, and I understand that Teensy++ is capable of translating analogue input.

Any thoughts?

Offline adventurepoop

  • Posts: 109
  • Location: IL
  • I make keyboards, I guess.
Re: Knobs
« Reply #1 on: Sun, 03 August 2014, 22:30:38 »
Linear potentiometers would be the easiest by far to use, but they only have a certain range which they can turn within, like a volume knob or an EQ knob. If it has to turn infinitely like a scroll wheel then you're going to have to use a rotary encoder, but that will be much harder to program. I'm using both in my midi controller, and the pots are far easier to use, especially if you're using multiple.

Offline sakai4eva

  • Thread Starter
  • Posts: 281
Re: Knobs
« Reply #2 on: Sun, 03 August 2014, 22:33:50 »
They'll definitely have to turn infinitely. Since he's probably gonna use it for multiple groups of threes in his program, the position of the knobs will have to change each time.

Programming shouldn't be an issue since he has a programmer that he hires from time to time to deal with backend stuff for his pages.

Thanks for the suggestions. At least now I have another lead/angle I can think upon.

Offline cpt.charisma

  • Posts: 16
Re: Knobs
« Reply #3 on: Sun, 03 August 2014, 22:39:42 »
How will you interact with the sliders?  I've never used Lightroom before.  Does each one have a separate keyboard shortcut or do you have to change them with the mouse?  If there's no keyboard shortcut, it seems like it wouldn't be possible to control them.  Is there some kind of API?
-===CC=-

Offline sakai4eva

  • Thread Starter
  • Posts: 281
Re: Knobs
« Reply #4 on: Sun, 03 August 2014, 22:50:32 »
How will you interact with the sliders?  I've never used Lightroom before.  Does each one have a separate keyboard shortcut or do you have to change them with the mouse?  If there's no keyboard shortcut, it seems like it wouldn't be possible to control them.  Is there some kind of API?
I'm in charge of the hardware. Potentially, the keyboard will have custom keys with pre-recorded macros (or just an API, really) to select certain knobs, and the knobs turning will move the sliders.

Since you seem to have experience with lightroom, I suppose I should also mention that my friend's wrists are aching from clicking and dragging sliders through 1,000 pictures.

Of course, programming wouldn't be an issue, but I need to know what kind of knobs to use.

Offline jacobolus

  • Posts: 3661
  • Location: San Francisco, CA
Re: Knobs
« Reply #5 on: Sun, 03 August 2014, 23:09:36 »
I think it would be awesome to have several mouse scroll-wheel type wheels in a row, instead of knobs.

Personally I want to test making a keyboard like this, with a columnar layout (along the lines of Maltron or Ergodox) and on one hand, instead of the number row, put a row of scroll wheels, one above each finger column (probably about 3 of these is plenty sufficient) so that they’re extremely easy to reach without moving the hand. A combination of holding a modifier key (or chord) using the other hand – or perhaps pressing a shortcut first with the same hand if the other hand is on the mouse – plus spinning these knobs, would adjust some parameter in an audio/graphics/video/whatever app (or adjust the volume or brightness, rotate through tabs/windows/apps, scroll or zoom a document, etc.).

[By the way, I think Adobe Lightroom (or to be more precise Adobe Camera RAW) has the laziest user interface designers of any app outside of Microsoft. A giant list of sliders is literally the most trivial and thoughtless UI you could make for anything, and basically shows no consideration of what the user actually wants to do or what relationships are involved in the mental/mathematical models the software is built on. This is what you get when the users, the academic scientists coming up with the models, the engineers implementing the software, and the user interface designers don’t actually understand all the parts of the problem at once, don’t really talk to each-other, and take everything else outside their own narrow roles for granted.]
« Last Edit: Sun, 03 August 2014, 23:27:22 by jacobolus »

Offline cpt.charisma

  • Posts: 16
Re: Knobs
« Reply #6 on: Sun, 03 August 2014, 23:35:30 »
I'm in charge of the hardware. Potentially, the keyboard will have custom keys with pre-recorded macros (or just an API, really) to select certain knobs, and the knobs turning will move the sliders.

Since you seem to have experience with lightroom, I suppose I should also mention that my friend's wrists are aching from clicking and dragging sliders through 1,000 pictures.

Of course, programming wouldn't be an issue, but I need to know what kind of knobs to use.

Never used Lightroom, but I am a programmer.  The programming part of this sounds interesting - that's why I was asking.  It seems like it would be a difficult problem to solve.

For the knobs, adventurepoop is right.  You want to use rotary encoders.

Another possibility is using batch processing in Lightroom.  For that to work, your friend would have to be making the exact same adjustments to large batches of photos.  I know Photoshop has support for it, but again, I've never used Lightroom.  This also has the downside of not involving custom keyboards :)
-===CC=-

Offline sakai4eva

  • Thread Starter
  • Posts: 281
Re: Knobs
« Reply #7 on: Sun, 03 August 2014, 23:45:30 »
I think it would be awesome to have several mouse scroll-wheel type wheels in a row, instead of knobs.

Personally I want to test making a keyboard like this, with a columnar layout (along the lines of Maltron or Ergodox) and on one hand, instead of the number row, put a row of scroll wheels, one above each finger column (probably about 3 of these is plenty sufficient) so that they’re extremely easy to reach without moving the hand. A combination of holding a modifier key (or chord) using the other hand – or perhaps pressing a shortcut first with the same hand if the other hand is on the mouse – plus spinning these knobs, would adjust some parameter in an audio/graphics/video/whatever app (or adjust the volume or brightness, rotate through tabs/windows/apps, scroll or zoom a document, etc.).

[By the way, I think Adobe Lightroom (or to be more precise Adobe Camera RAW) has the laziest user interface designers of any app outside of Microsoft. A giant list of sliders is literally the most trivial and thoughtless UI you could make for anything, and basically shows no consideration of what the user actually wants to do or what relationships are involved in the mental/mathematical models the software is built on. This is what you get when the users, the academic scientists coming up with the models, the engineers implementing the software, and the user interface designers don’t actually understand all the parts of the problem at once, don’t really talk to each-other, and take everything else outside their own narrow roles for granted.]

He wants knobs. He gets knobs.

I did envision that mousewheel-like sliders would work more intuitively though. I'll re-pitch that idea to him instead. :D

I'm in charge of the hardware. Potentially, the keyboard will have custom keys with pre-recorded macros (or just an API, really) to select certain knobs, and the knobs turning will move the sliders.

Since you seem to have experience with lightroom, I suppose I should also mention that my friend's wrists are aching from clicking and dragging sliders through 1,000 pictures.

Of course, programming wouldn't be an issue, but I need to know what kind of knobs to use.

Never used Lightroom, but I am a programmer.  The programming part of this sounds interesting - that's why I was asking.  It seems like it would be a difficult problem to solve.

For the knobs, adventurepoop is right.  You want to use rotary encoders.

Another possibility is using batch processing in Lightroom.  For that to work, your friend would have to be making the exact same adjustments to large batches of photos.  I know Photoshop has support for it, but again, I've never used Lightroom.  This also has the downside of not involving custom keyboards :)
I guess our programmer is kinda skilled? He seems to know what he's doing when we discussed the whole project.

Can't really do batch processing I guess. Each photo is unique and would require unique adjustments? I'm not a photographer, so I don't know.



Offline jacobolus

  • Posts: 3661
  • Location: San Francisco, CA
Re: Knobs
« Reply #8 on: Mon, 04 August 2014, 00:52:19 »
By the way, if you decide you do want knobs, these are pretty sweet:
http://www.ebay.com/itm/200894395930
http://imgur.com/a/G4e1P

Offline pasph

  • Posts: 1059
  • Location: Italy
Re: Knobs
« Reply #9 on: Mon, 04 August 2014, 01:12:48 »
It's up to the kind photo work, for ex. a wedding photog workflow tipically split hundreds of photos in batches and process them applying basic post processing presets and then choose those that needs a further work, fashion/glamour is more work on a limited numbers of shots.
For video work you can use tools like ShuttlePRO but sliders in Lightroom are a pain.
Is this of some help?
"There is more stupidity than hydrogen in the universe, and it has a longer shelf life"

Offline dorkvader

  • Posts: 6288
  • Location: Boston area
  • all about the "hack" in "geekhack"
Re: Knobs
« Reply #10 on: Mon, 04 August 2014, 01:16:00 »
Linear potentiometers would be the easiest by far to use, but they only have a certain range which they can turn within, like a volume knob or an EQ knob. If it has to turn infinitely like a scroll wheel then you're going to have to use a rotary encoder, but that will be much harder to program. I'm using both in my midi controller, and the pots are far easier to use, especially if you're using multiple.
Incorrect.

You can get potentiometers that don't have a "stop". You can see eight of them in this picture.

Those are linear potentiometers with a high precision and degree of linearity (and are also likely oil-filled) made by Japan Servo in the early 1980's. The device they are on is a dial for an IBM 5083 / 5085 CAD workstation. Those pots are the main reason said IBM dials cost $900 back in the day. (note the model F "unsaver" for that system was under $250.)

@OP: you have a few options. Sadly, none are both good and cheap.

0. buy a worksation for colour correction / colour grading. These usually run a few thousand dollars up to tens of thousands of dollars.

1. Run a very expensive linear potentiometer into a decent DAC and use that
2. Use rotary encoders. They won't feel as nice to turn but might be a bit cheaper than a pot. Modern rotary encoders aren't *too* bad.

You can also get a vintage device. The IBM dial is very nice (and outputs serial directly! It should be easy to program). SGI also had similar dials, and HP has some as well. Note that these IBM ones can have nicer "japan servo" pots inside or cheaper Mexican ones. The Mexico ones seem to be more common. Fortunately converting these to speak to a modern computer, even if your ignore the interface already in place would be pretty easy with a microcontroller with a decent DAC. You can get them on eBay for ~$20 not too long ago. Note that the pots are front-mounted to the case, so you could just desolder the PCB, and hand-wire them to a DAC / controller directly, and run a USB cable with a cable gland out the end and call it good.

Another option is to build your own with high linearity vintage pots available on ebay Things like this:
http://www.ebay.com/itm/231298327531 (check out that bearing!)
http://www.ebay.com/itm/121134498589

Sadly getting enough identical ones will likely be expensive. And they're kinda huge. And since they're usually so old they often aren't too great. but sometimes they are.

Watch out for multi-turn ones: they might not be what you're after (they usually have a stop or a "dent" at the changeover point that your friend will not like)
http://www.ebay.com/itm/131236782843
« Last Edit: Mon, 04 August 2014, 01:19:24 by dorkvader »

Offline sakai4eva

  • Thread Starter
  • Posts: 281
Re: Knobs
« Reply #11 on: Mon, 04 August 2014, 01:24:47 »
Was reading up on rotary encoders and it seems like I can simply use an incremental rotary encoder that would vastly simplify things (not to mention that it is what my friend wanted in the first place).

Of course, extreme precision is not needed, and a digital output of +1 or -1 (or a quick series of such outputs when the knob is turned quickly) would probably be all that is needed.

@dork; I'm trying to keep this triple knob addon below USD100, so those things... while seemingly delicious, will overshoot the budget.

@pasph; big money is in portraits, glamour shots for big clients, magazines, and weddings. I'm just trying to do exactly as what he needed at the moment. And I'm at my dayjob, so no videos for me!

Offline lkong

  • Posts: 78
  • Location: United States
Re: Knobs
« Reply #12 on: Mon, 04 August 2014, 14:48:20 »
Using rotary encoder maybe?
Good examples from arduino website:
http://playground.arduino.cc/Main/RotaryEncoders

Offline Findecanor

  • Posts: 5039
  • Location: Koriko
Re: Knobs
« Reply #13 on: Mon, 04 August 2014, 16:14:03 »
My biggest issue, of course, are the knobs itself. What kind of knobs should I be using, and how should I control it?
I would go with rotary encoders. Like rotary switches but smooth feel. Digital input. The programmer may have to convert using a lookup-table though, because rotary encoders usually have a pattern where only one bit changes between each step.

Scroll wheels sensors are like 2-bit rotary encoders, actually the same as the roller sensors in ball mice. Each line is actually a pulse train, the lines being out of phase. The order in which the lines change determines the direction. You may need some hardware for counting them directly or the microcontroller will have to poll them fast enough.
🍉

Offline Koren

  • Posts: 133
  • Location: France
Re: Knobs
« Reply #14 on: Mon, 04 August 2014, 20:19:57 »
I'd go with any kind of rotary encoder, although not the "clicky" ones you often can buy as parts.

Either you scavenge them from an old ball mouse (there's two dented wheels and a dual light-sensor for each of them in a mouse), a servomotor, or you get a cheap encoder designed for a motor. Any robotic shop will sell those... I'd say that it could be the best solution (just put a button on a motor encoder and you'll get a knob with high precision (degree or below) and virtually no resistance to rotation... you can always add resistance afterwards) but it's also the most expensive one.

They're easy to use, especially since you won't need a high-precision for a knob. It can be done in discrete logic, with an FPGA, a dedicated attiny/PIC or directly on the microcontroller but the charge will be high (especially since you'll probably want to use interrupts to avoid missing steps)

Offline dorkvader

  • Posts: 6288
  • Location: Boston area
  • all about the "hack" in "geekhack"
Re: Knobs
« Reply #15 on: Tue, 05 August 2014, 16:40:38 »
It's quite simple to get decent DPI (200+ counts per revolution) optical and opto-mechanical rotary encoders with ball bearings pre-mounted from old trackballs.

Offline sakai4eva

  • Thread Starter
  • Posts: 281
Re: Knobs
« Reply #16 on: Tue, 05 August 2014, 21:50:23 »
This is the datasheet for a knob I found that might work:

http://www.farnell.com/datasheets/1730028.pdf

Offline dorkvader

  • Posts: 6288
  • Location: Boston area
  • all about the "hack" in "geekhack"
Re: Knobs
« Reply #17 on: Tue, 05 August 2014, 22:29:12 »
This is the datasheet for a knob I found that might work:

http://www.farnell.com/datasheets/1730028.pdf

Note the mechanical portion of the datasheet. It lists detent torque, so it'll feel like a mouse scrollwheel. The resistance is 50 gm*cm, which isnt too great, but it'll work for sure, and it outputs quadrature which should be easy to adapt to whatever microcontroller you are using.

You also only get 24 "counts" or pulses per 360 degree travel. I dont think this will be enough for your purposes, but it;s up to you. I would recommend at least 100 counts / revolution. I strongly prefer detent-less and I suspect your friend will too. These are things you must consider for component selection. Sadly it always raises the price, but I hope it won't be by that much.

I mean it's not like you're going for a ridiculously sealed / hall effect version or something.

Offline sakai4eva

  • Thread Starter
  • Posts: 281
Re: Knobs
« Reply #18 on: Tue, 05 August 2014, 22:35:55 »
Ah... thanks! That's even more design considerations :)