← Back to context

Comment by scottapotamas

1 day ago

You might enjoy https://github.com/scottbez1/smartknob

The complexity of this approach (ignoring the display and flair) unfortunately means you won’t see this used too often due to cost.

That's so cool on so many levels, and I really enjoyed that indeed, now I have to fight the urge to try to build it myself, good thing it's weekend.

However, it does seem to miss the single most useful feature (for me) which is the resistance part. I understand there is a DC motor controlling the snap points and whatnot, but what I'd like is constant resistance I guess, to a configurable level, rather than snapping to specific points and such.

I don't think it would be possible to hack on top of the already made hardware, but didn't seem like it was already done in the software side of things, although I did skim through things so maybe I missed it.

  • Should be doable to add that. The BLDC needs to add a proportional (or any other function) force against the rotation direction until it reaches 0.

    • Sounds reasonable, wonder how that would actually feel in real life? As far as I understand, this would pass through digital parts, adding a little bit of (maybe noticeable) latency, but I wonder if the latency gets high enough for it to be a bit jarring that the resistance is dynamically changing as you apply torque.

      2 replies →

This is what cars need. Only make the entire dial depressable instead of the embedded screen. Use different haptics for each setting so you can feel which setting you’re changing.

My dream is a piano keyboard with entirely software controlled mechanical key response. Every key individually mounted on a servostepper. As a bonus it could be used as a fake player piano. Or for practice you could make the wrong keys hard to press. Endless possibilities.

  • Great idea and I’m shocked this doesn’t exist.

    • It would likely be very, very expensive.

      A compromise that is affordable and does exist is programmable response curves to key velocity and aftertouch pressure. It can make sense to have different curves for eg. piano vs harpsichord even if you can’t change the mechanical key impedance.

      I haven’t seen it in the wild, but using this you could make the wrong notes quieter/louder or even play a different sound. But I think we all know when we play a wrong note, so the utility might be small.

      2 replies →

  • > Or for practice you could make the wrong keys hard to press.

    This seems like a pretty cool idea

    • I'm not convinced it would work very well on making you a better player but who knows. Either way, it sounds like a good way to injure yourself. Piano is a very percussive instrument and if you're hitting the keys with any force and they don't give the way you expect them to I imagine that won't be very great for your joints.

A differently complex and smaller approach might be to combine the knob with with an axial flux PCB-BLDC, like what Carl Bugeja made [0, 1]. It might be suited to get haptics in something as small as the article's knob, although to get an in-built display you'd have to use one of those displays that fit in lego bricks [2, 3] with a slip-ring.

0. https://microbots.io/products/motorcell

1. https://www.youtube.com/watch?v=CVszJMlvZcA

2. https://github.com/AncientJames/uGrey

3. https://www.youtube.com/watch?v=0pUV_3qeHog

  • Many thanks for the links/references. I don't really care about the display itself (probably prefer without it actually), but never saw those other links before, interesting stuff.