smartknob icon indicating copy to clipboard operation
smartknob copied to clipboard

Idea: Use a capacitive touch screen display

Open rtbcoop opened this issue 2 years ago • 10 comments

If you use a touch screen display, you would no longer need the strain gauge. You would also open up a lot of new capabilities such as gesture controls.

rtbcoop avatar Apr 08 '22 02:04 rtbcoop

Yeah, that would definitely be cool! I considered it and intentionally omitted it from this first iteration for 2 reasons:

  • There are some really nice looking high dpi AMOLED displays based on the RM69330 driver IC from smartwatches that can be found for < US$20 with built in capacitive digitizers, but they have 4x the total pixel count (which may make them tricky to drive with an ESP32's limited memory) and there isn't yet open-source driver support in e.g. TFT_eSPI. Some discussion can be found here. I'm also not sure how readily available these are or if there's just excess stock that will disappear quickly.
  • mechanically things get more complex, since the screen now needs to sit above the knob/rotor, rather than the current approach where there's a watch crystal directly attached to the knob/rotor that rotates with it. This means there needs to be an external gap between the display and the rest of the knob/rotor, which I think would be tricky to make look good especially with 3d-printing and manual assembly tolerances

Edit: remembered a 3rd reason - it would require the LCD support/riser through the hollow shaft to be a lot more rigid. Pressing on a touch screen toward the outside is going mean a lot of torque applied to the joint between the riser and the LCD structure.

But it needs to avoid deflection so it it doesn't interfere with the knob (the allowable deflection is limited by the gap/tolerance between the LCD structure and the knob; more deflection means a bigger/uglier gap is necessary). Getting the necessary rigidity seems difficult with hollow 3d printed parts, so I also toyed with the idea of using hollow brass tubing and soldering it to a large PCB through-hole on each end. I think that could be rigid enough but would make assembly a lot more involved...

scottbez1 avatar Apr 08 '22 17:04 scottbez1

I am sure there are others that are better suited to solve the electrical issue, but I can definitely solve the mechanical issue. Instead of using a hollow shaft motor, I'd mount the knob to two captured bearings and then drive the knob with gears instead of directly off the motor. This would:

  1. Give you much better resolution (more steps per rotation of the knob thanks to gearing)
  2. Give you more motor options since you aren't limited to hollow shaft motors
  3. Provide more internal room for supports and wire runs.

These should all be commercial off the shelf parts that wouldn't add too much complexity or cost. I'm glad to do the mechanical design legwork if this is a road you'd be interested in going down. I'll post this up in Issue 16 as well to see if anyone has feedback.

rtbcoop avatar Apr 08 '22 21:04 rtbcoop

I would wonder about the sensory feel of the drive gears. If the ratios were too high, it might be hard or strange to drive them by turning (vs a brushless which offers essentially zero resistance when not energized). You might also have issues with backlash, but maybe not too big of a deal.

DavidClawson avatar Apr 08 '22 22:04 DavidClawson

  1. Give you much better resolution (more steps per rotation of the knob thanks to gearing)

Magnetic encoders will already get you <0.1 degree usable resolution so I'm not sure having more than that will be meaningfully useful.

hofstee avatar Apr 08 '22 23:04 hofstee

I would wonder about the sensory feel of the drive gears. If the ratios were too high, it might be hard or strange to drive them by turning (vs a brushless which offers essentially zero resistance when not energized). You might also have issues with backlash, but maybe not too big of a deal.

Valid concern. I don't think it would be terrible if you kept the gear ratio low. That would take some testing.

Magnetic encoders will already get you <0.1 degree usable resolution so I'm not sure having more than that will be meaningfully useful.

True, I don't think the added resolution would have any benefit on the sensing side, but I think it would make a difference on the feedback side. You could have much finer detents and a smoother knob resistance.

rtbcoop avatar Apr 09 '22 00:04 rtbcoop

This is what I had in mind. In the real design, I would mount the gears to the bottom of the knob; this design was just for a visual.

Knob transparent 2

Knob transparent 1

rtbcoop avatar Apr 09 '22 04:04 rtbcoop

Touch display is indeed a huge redesign work but this would allow you to avoid the strain gauge part also.

In term of memory space, maybe to have 2 MCU, one dedicated to the screen and other one dedicated to the motor and WiFi /BT would be nice? MCU are not that expensive

Taking into account the number of people interested, at one point you will have to see if its better to have gears and so on or a motor manufactured according to your specifications. Both solution are doable I guess

paulsvc avatar Apr 09 '22 07:04 paulsvc

@scottbez1 About your first point: the RM69330 touch screen display having higher pixel count and needing more memory, wouldn't this display work? It uses the same driver GC9A01A and seems to have the same dimensions and pixel count as the current one.

psyspy1 avatar Apr 10 '22 03:04 psyspy1

Actually, there is no need for a big redesign. If it was a resistive touchscreen, it would need to be physically interacted with to function, but capacitive touchscreens can work when hidden behind a protective glass (well, it may depend on electrical charasteristics of the glass, but most types should work). Sure, it MAY require a thinner protective glass, a thinner gap, or some sensitivity adjustment, but it's more probable to work than not. May even work without any mechanical redesign. I will try to test this approach with a raspberry pi 4 instead of a controller as soon as I can get my hands on a suitable motor (and other parts), which is gonna take a while. UPD: There IS one issue with the touchscreen, though. There is a high chance that the top surface will be touched with a finger by accident while turning the knob, with no intention of performing touchscreen interaction from the user. This should be considered when implementing touchscreen UI, and the presses should be ignored when the knob is being rotated.

k1-801 avatar May 10 '22 13:05 k1-801

Capacitive/Resistive touchscreen will also make AC/DC converter and flex gauge sensors obsolete. Make project easier and probably cheaper to build...

EUA avatar Jan 27 '23 02:01 EUA