A knob is a knob, a switch is a switch, and that’s that, right? And what about those knobs that have detents, set in stone at the time of manufacturing? Oh, and those knobs that let you jog left to right and then snap back to center — that can’t be modified…right? Well, you likely know where this is going, and in the video below the break, [scottbez1] shows off a new open source haptic input knob that can be all of these things with just some configuration changes!
The list of possibilities is long: virtual snap points, virtual spring loading, virtual detents, virtual end points. It’s a virtual smörgåsbord of configuration options that make this haptic smart knob a one stop shop for all of your knob needs. This is all possible because the knob contains a high resolution magnetic encoder chip that has a single degree resolution. The sensor is coupled, through software, to a brushless DC motor. The round LCD gives visual feedback as well.
As [Myself] on the Hackaday Discord channel noted, having configurable spacing and strength for detents, springs, and stops, is nothing short of incredible. Being able to reconfigure the knob at-will means that it can become context sensitive. It’s wonderfully unique and it’s open source, so you can make your own with the information available at GitHub.
And according to its creator, the only thing the Haptic Smart Knob can’t do is do your taxes or blend your margarita. Well, it’s open source, so perhaps some of our more enterprising readers can submit just the right pull request.
This isn’t Hackaday’s first Motorized Volume Knob feature, but it might be one of the neatest we have seen so far. Thanks to [mattvenn] on the Hackaday Discord server for the great tip!
This is dope as hell, I’m going to have to work this into some of my projects
We won’t see this level of technology for an appliance knob anytime soon because of the price of the components, but maybe as a standalone IoT device ? I hope so, it seems really fancy and well polished.
It’s probably cheap enough in volume, but it’s also a UI/UX nightmare like any other multi-function input device that obscures functionality behind a single input that changes meaning.
Consider for example a typical car stereo. It has one knob, which you use to set the tone controls, volume, input source, radio channel… except you can’t navigate it while driving the car because you have to know which state the device is in by looking at it, so it’s frankly useless. Neat, but useless.
That’s a strawman fallacy – nobody said anything about car stereos.
BMW begs to differ
>That’s a strawman fallacy
No it isn’t.
yes, it actually is, see: https://examples.yourdictionary.com/straw-man-fallacy-examples.html
You give an example where the information about the state of the knob through the display would not be optimal to the situation, and then call is useless, while in many other use cases this would be a very good solution.
Even in the car scenario, you could add audio feedback and it still would work. For instance, default usage is volume control (no need to look at the display) and on long press you go into the menu and the parameter that you’re going to change is called back to you (for instance balance) short press (fader), etc. long press or timeout gets you back to the default volume control.
Just use an extra knob for each function.
Then you don’t need a re-configurable knob.
My Nest thermostat begs to differ.
It exists, it’s pretty good (used it in context) and currently implemented in the automotive branch
https://youtu.be/lAjxy3uSUoc
>>>> touch screens in a car.
this is the underlying difference between designing things that function, vs things that are operable. Both have their merits and usefulness. People who reject UI/UX nightmares are only aware of the former, while people who want to create a device that needs little training, little user guidance, are aware of both. Come over to our side; we have cookies!
This method is used (or something similar) in a scale small scale on Apple Watches: https://developer.apple.com/design/human-interface-guidelines/watchos/interaction/digital-crown/
The vibration click feedback is also used on Apple touchpads, at least on the MacBook Pro. It’s the freakiest thing to turn it off and realize you weren’t actually moving anything on the touchpad, it was all in your head. When I first powered off my Mac and clicked the mouse I thought it was some sort of locking mechanism to protect the trackpad from falling in, like I’ve seen some other PCs do, only to find out the click is entirely simulation. Even the convincing “deep” click is entirely motors and software. Pain if it actually breaks though since it would mean replacing the entire top shell and I believe the keyboard too.
I don’t know about other model years, but I recently did a repair on my 2017 Macbook Pro. The trackpad is pretty easy to take out — you pretty much just take the bottom case off, unplug the trackpad cable (carefully peeling it away from the adhesive), remove the screws, and then open the laptop to pull it out the top.
It’s one of the first things you do when replacing the battery: https://www.ifixit.com/Guide/MacBook+Pro+13-Inch+Touch+Bar+2017+Battery+Replacement/125636
That’s just a haptic vibrator no? This thing uses a BLDC to provide anti-force. It can physically stop the knob from turning.
Yeah. This is actually providing “real” torque feedback, so it’s a little different (although the click when you push down on the knob is “fake” by comparison).
What’s interesting is that as you make the detents more fine-grained, a purely proportional function from angular error (between the desired detent point and the current point) to restorative torque stops working well. The errors are much smaller, but if you turn up the proportional gain (or normalize it to percent error rather than angle error) you can get strange or even unstable behavior due to sensor noise/error or miscalibration between the encoder and the motor’s electrical angle.
So what I’ve done is increase derivative gain for fine detents, which acts more like vibrator motor “fake” haptics at that point: since the error changes direction when you pass the halfway point, you get a short but large spike in the derivative, so you get a corresponding quick pulse of torque. With fine-grained virtual detents there’s not much restorative torque or spring action, but you at least still get a haptic click as you pass each detent.
Thanks for making this even cooler by sharing more insights!
I’m going to assume anyone trying to use this for a commercial product is therefore going to be sued back into the stone age by Apple’s patent department then.
Why can’t we have nice things?
Doubt it. Other companies use this – MS makes a mouse with it, though when I tried it it didn’t feel like clicking, it felt like an electric shock. Clearly the devil is in setting the haptic level correctly!
We could do if we felt the needs of the people out weighed the needs of the trillion dollar company.
Capitalism: It’s just different dictators.
If you think about it on another level, Capitalism is well aligned with democracy. Every time you make a purchase, you’re casting votes with your dollars by giving that company a little bit more power because you enjoy their products. If millions of people repeatedly enjoy the products of a company, that company gains power in proportion. And shareholders do cast real votes about the future direction of the company.
“Capitalism is well aligned with democracy.”
I guess you mean the kind of democracy where everybody gets a different number of votes, and the more votes one has, the more one can get. Yes, I can see that.
Would we need it in an appliance. I have and notice that modern washers are equipped with a menu of operations, but instead of a few buttons there is a glory knob which gets you into the first level of the menu. It doesn’t matter which way you turn the knob, now you are on “normal” now you can select parameters to do the laundry the way you want. Does it remember those settings or give you a wide range of options every time? Lets turn the “dial” again.
Volume knob yes! 2 thirds of a turn up and I still can’t hear the car radio. More, oh too much.
Any technology can be applied poorly. In consumer appliances, removing a knobbed control is a big deal, but you can totally ruin the user experience if you don’t do it well. Washing machines and ovens often have poorly designed user interfaces. It’s like they figure you’ll have a bit of a learning curve, but once you figure out how to make it do what YOU typically want, it becomes “easy”. But then just try operating the manufacturer-specific UI on someone else’s home appliances, and you get the learning curve without access to the manual. I ran into this in an Airbnb apartment where I never did figure out to do a simple “bake at 175°C”.
My Audi has a knob for the controls.
But it turns the wrong way for me.
The old invert joystick issue for flight sims
There is no way to swap clockwise with anticlockwise in the menus. An utterly stupid design fault.
So I’m going to have to rewire it.
I JUST ran into that today with a piece of pro audio equipment, that had a knob and an LCD, and the knob went the wrong wy through the menus. This will never be resolved!
Just recently getting in to SDR and was wondering about putting together a Rasp Pi based radio with a tuning knob. Anyone with more experience think this could fit the bill? Any references?
Neat! Now do this as a scroll wheel on a mouse or trackball.
Hmm, how about a haptic feedback trackball?
It’s not as fancy as this, but the Logitech MX Master Mouse scroll wheel has both a detent mode and a free scroll mode (I love it).
https://hackaday.com/2016/05/26/fixing-a-complicated-scrollwheel/
I think a track ball itself would not fit with this tech as is, but would be cool to try.
Now THAT would be fun, 2D detents in a spherical space! Of course, it wouldn’t really be spherical, but more like an X-Y planar control mapped onto a sphere, something not easily done with a purely mechanical approach. But if you use the standard mechanical arrangement for a trackball, where there are wheels at two positions on the equator of the sphere, then these could each have BLDC motors on them that would produce the desired effect.
Haptic feedback trackball is kind of like what the steam controller had. The “mouse” made it feel a little like a trackball with little clicks to make it feel like something was rolling.
So it’s a later BMW i-drive controller. They do the springy and variable stop and detent thing. They can also be clicked in and slid to the side on 8axes. Very intuitive to use, and due to feedback can be used my feel. Something touch screen cars are woefully lacking.
*earlier. The variable torque detent thing was removed (presumably cost reasons)
I’m most excited about the assistive-technology implications. Forget the LCD, just use the force-feedback to give non-visual cues about the state of the variable being adjusted. Even as a sighted person, I appreciate good tactile feedback that _allows_ me to do my work without looking.
This could also easily replicate a Bourns multi-turn pot and a turns-counting dial, a combo that’ll still set you back a pretty penny.
And the motorized volume knobs found on high-end stereos…
This is a beauty! Glad its in the open domain so cant be patented by the i-invented-a-rounded-corner outfits
The fact this is open source won’t affect parents. Nothing has been invented here, just built. There’s existing devices with these technologies.
I KNOW. Have you ever tried introducing new technologies to parents?
Stepper motors can work as generators, so how much of this is achievable with just a stepper motor (and perhaps some clever electronics to alter current or whatever)?
Stepper motors that use permanent magnets would be limited, in that while you can change the amount of resistance to rotation, you can’t turn off the detents completely. “Reluctance” type stepper motors could do this, but you still have fixed detent positions.
Actually you can turn off the detent completely, you just need to drive the stepper with FOC in closed loop, or sinusoidal signals, which can be done open loop!
Already available as a product you can buy and modify. Working on modifying one of these already for home automation.
https://m.alibaba.com/product/1600437617698/detail.html
That has no haptic feedback
And it’s expensive and frikkin’ huge.
It’s the transport knob from a professional video edit machine. These have been around in broadcast television for decades and likely to be out of patent by now.
These are REALLY expensive, because they use complicated mechanisms. Also bulky.
I worked in TV for a decade and this was exactly what I thought of when I saw and heard it. There are differences in this device compared to the systems I saw used by both Sony and Pannasonic in their gear.
The “fancy” versions would engage fixed magnetic end stop detents for the Shuttle mode. I used these on the Sony C Format machines (well older than me at the time). The detents would “magically” appear when engaging Shuttle mode (back-stop-forward with speed control). But the control lacked any friction for Shuttle and did not have a simple push control on the knob itself to change modes or use as a stop (tape would stop on mode change in both control versions). Interestingly, if you held the knob against the Shuttle detents, the magenets would occaionally release and engage allow the knob to roll on a fraction of a rotation. I think this was haptic feedback to say you can’t go any faster, Captain.
The “cheaper” controls were a physical press that would click on/off (like a pen) to engage a cam wheel for the Shuttle detents. This was how they changed from Shuttle mode (including some friction on the rotation) to Jog mode (single frame per sensing tick and no detents, completely free wheeling). The knob would physically raise or lower depending on mode, so you could tell what mode it was in by touch. These were common on the earlier Betacam and lower end edit controller ranges. Digital Betacam may have used these as well, but I don’t recall the height change.
Other brands had variations of these controls as they adjusted the tech. But none of them that I know of had the same mechanism as this control. There also wasn’t the need for that much customisation. I can see this making a great control surface for media applications. I can think of one product on the market now that would benefit from this level of customisation being added to their control surface.
Just saw the product introduction (on line not in person) a few weeks ago for ETC’s new top of the line Eos Apex line of control consoles. It includes not just haptic encoders, it also has haptic touch screens. OK, it is does list for about $85K without a road case….
https://www.etcconnect.com/Products/Consoles/Eos-Consoles/Apex/Features.aspx
cool find. Thank you for posting this.
Great project!
I am working on a similar project with an integrated gimbal/servo motor (enclosure contains complete electronics including magnetic encoder, BLDC drivers, current sensing..) but without display, so this is a great reference.
One thing I hope to still get to is to calibrate, i.e. map the cogging torque of the motor over the full turn and ‘subtract’ that during torque control for anti-cogging smoothing.
I see a re-configurable input/output device for a hardware simulator of some sort.. Aircraft.. Submarine.. Spacecraft..
I was thinking it could also simulate the knob being heavier, i could require more force to turn but at the same time also could have momentum by continuing to spin the motor after it’s been turned, would be useful for things like dimming lights as you could flick the wheel and it’d keep going
This would be really interesting, actually. In addition to the obvious possible uses it would be a cool tech demo to have the “mass” of the knob changing on-the-fly. Obviously there are limits but it would be fun to click through knobs “made” of plastic, aluminum, tungsten, etc. and feel the differences.
You could even simulate a lower mass than the knob actually has by using positive feedback, although it might be a challenge to make such a thing stable.
Yes!
This reminds me of a technology I was half ways working on to try and bring to automotive as a license from the inventors.. It’s very impressive, ferrofluid/Magneto-Rheological Fluid based. It uses the ferrofluid to produce the detentes and stops. I left and as far as I know they never went anywhere with it. They weren’t the right company to do something with it. Looks like it’s been spun off from the company that originally created it to try and bring it to market.
https://www.xeeltech.com/home/
Hey, thanks ehisforadam for mentioning us here!
Very nice work scottbez1!
Especially the combination of the round display and the haptic feedback looks great.
As ehisforadam described, our encoders are working with a different technology.
We are using MRF, which allows us to create haptic modes like full lockout or barriers that feel like real mechanical devices. After some years of R&D, we are now providing our HAPTICORE encoders as serial products.
Along our journey from a concept to the final products, we have developed several technology demonstrators and are currently thinking about starting an “inventors’ program” where we would lend out our HAPTICORE technology for new concepts and projects.
Do you guys think this might be interesting? If you like the idea or maybe already have a project in mind where you could need a smart encoder, we look forward to getting in touch with you.
https://www.xeeltech.com/request-demonstrator/
Interesting technology – this seems like it could be a simpler approach than a BLDC motor for haptic feedback. For those interested, here’s a brief description of how it works: https://www.inventus.at/en/rotary-haptic-solutions/. TL/DR: a fluid with dispersed magnetic particles changes its viscosity in response to a magnetic field.
At one point I was working on a focus stacking microscope and thought something like this would be great. You could feel your previous stops as you adjusted the focal height. You could even feel the location of each frame position as the stack was configured.
It would be touchy and immensely difficult build, but with that level of accuracy and feedback control, what prevents someone from using a similar interface to handle joystick systems?
No springs, just the motors. Then you can implement game data based force feedback, stick shakers, return to center in a manner that prevents drift, and a host of other functions.
Really, neither touchy nor difficult. The mechanical part of most joysticks is just two pots at 90° angles, with a slotted sickle-shaped actuator attached to each, with the bottom end of the joystick going through the intersection of the slots. Adding a brushless DC motor to each of these is a pretty simple mod.
Could I just purchase one from someone who has built one? I think I am capable of doing this, just pressed for time… 30. Sept. Performance… Best, Barry from SnowKrash