-
[T] 3x1 keys
08/10/2022 at 12:41 • 0 commentsI was scanning through my options for the #Tetent Turntable [gd0038] and came to the acceptance that 2 axis joystics were never really going to work that well anyway. It's much harder to move my fingers left/right than up/down, and a rotation axis would have to share a zoom axis. I started thinking about a 1 axis solution, and since the thumb keys are simpler now, it's plausible to press a button to switch between controlling translational and rotational axes. I'm thinking of setting the shift key to switch from translation -> free rotation -> 45 degree step rotation.
I started looking on the internet for "1 axis joysticks" and "spring loaded potentiometers" but it didn't bring up any favourable results. The bigger question was where these joysticks were even going to go. I'm still trying to mine a solution that merges Tetent and Turntable into a BetterTM Tetent, but the entire movement bounding area for the side fingers is used for the keyboard.
Hmm... the only solution is to integrate the joystick into the keys, but there's not enough space for that. Each key is under 6mm in the Y axis. What about a tracking surface like on blackberries? They're capacitive so won't work with even 1mm long fingernails, and again the available surface are is sub 6mm. Plus, if I could track that, I wouldn't even need 5 seperate keys per column anyway.
Assuming I can get an accurate finger position (with nails and skin), this opens up possibilities.
- I'd only need 1/5 the magnets and hall effect sensors.
- My fingers would be able to easily slide to the next chord without getting caught in the gap inbetween buttons.
- There would be enough space to put the adjustment screws under the keys instead of adding an additional 8mm to the length.
- Less magnet force and length means that I can remove the 2mm dowel from the design, potentially reducing the key height.
- Would likely look better and more minimalist.
- The #Tetent Tiny [gd0040] can get Turntable functionality.
- Tetent can be larger whilst fitting in the available space in #Teti since Turntable is no longer needed.
- The screen could tell me where my fingers are or the keyboard can send unique pulses to a haptic vibration motor for each of the 5 zones.
- The 5 zones would be software adjustable instead of fixed to a 6mm grid.
Now I'm looking for a way to detect distance from 0 - 30mm with milimetre accuracy.
-
[T] 3x5 Buttons, weight adjustment and joystick issues
08/10/2022 at 00:41 • 0 commentsI'm doing some higher accuracy mental simulations to validate a solution can actually exist IRL and not in a idealistic and abstracted reality.
This started with the layout for #Tetent Tiny [gd0040], as there were 2 main issues with my mental design. The first was the location of the buttons for the thumb. Thanks to #Tetent Timespy motivating a reduction from 5 to 2 keys, I think I have an ergonomic solution.
The second issue was the length of the keyboard due to the staggered layout between the centre and side finger columns. I did it because the centre finger seemed to naturally align 1 button-length higher than the side fingers, but trying to virtually chord something like AAA (bottom button on all 3 columns) required more mental compute than it should. Therefore, I'm removing the stagger and having a 3x5 column of keys. This should also mean that 2mm steel dowels should be usable in the design, and the key heights of the side finger columns should be closer to the centre finger column. Both of these optimisations should reduce the overall thickness of gd0040 by at least 2mm.
The next computation was for the column actuation weight adjustment. Similar to the tensioning system for the E3D Titan extruder (that uses a screw and not a knob), I plan to use M2 countersunk screws in the keyboard body and M2 nuts in the adjustment bars (the orange looking things in #TeTwin Switches [gd0041]). This should require an additional 4mm on the top and bottom of each column, which is good considering I was actually expecting over 5mm for a solution that required dissassembly of the keyboard. This solution lets users easily adjust the weight of the keys with a small allen screw. This calculator predicts that a 2mm adjustment window will allow betweeen 172 - 23g of adjustment for N35 magnets.
The computation I'm currently on is the joystics. The attempt from the last 2 paragraphs didn't shrink the keyboard for the Timespy like I hoped (36mm for staggered and no space for adjustment vs 38mm for grid and adjustment screws) and so I wanted to validate that the joystics could still fit. It turns out that one of the tabs with holes in them need to be cut off so that they can fit 19.5mm apart.
Anyway, it's reasons like these (joysticks being slightly less ideal than the mental twin* used in the inital mental simulation) that I need to compute more accurate simulations, because it doesn't seem to take much for a solution to fail.
*(like the digital twin that NVidia talks about these days, but in the mind)
-
[T] Memory LCD
08/09/2022 at 03:32 • 0 commentsI've been somewhat concerned about the cheap LCD's on the sides of Tetent due to their power consumption. I didn't want to use e-ink because of the low resolution. Whilst researching for the new #Tetent Timespy research project, I discovered "memory LCD" displays. For Tetent, there seems to be 3 options.
The bottom one is, as you can see, cheaper, but the viewing area is only something like 36x27mm. That might be fine, since the viewing area of the current screens is a 36mm circle. The design will likely use a slot instead of a circle. The top one has a 30.5mm circular area so might be a bit small.
The middle one has much higher availability. Unlike the bottom/top ones that is only sold at this single AliExpress store, the middle one is sold by a few, as well as thousands at Digikey. However, at 58mm in length, I don't think it's going to fit easily, if at all.
I'll just use the £10 one while it still exists.
-
[T] Test Driven Development?
06/20/2022 at 15:17 • 0 comments -
The Fusion 360 Grind
04/14/2022 at 11:11 • 0 comments -
[T] Feature Thoughts
04/10/2022 at 23:35 • 0 commentsI've been reading this hackaday post and it got me thinking aobut Tetent and its subprojects and what wired and wireless protocols to use.
- The Tetent Tiny doesn't have speakers, so even BT 4.2 would be fine.
- Wireless audio in Tetent requires betteries that could supply up to 3W for the speaker array for hours.
- Adding to the issue of audio cut outs and the no sound -> sound latency (not sure if this is still a thing in BT 5.2) and the additional implementation requirement of USB audio, I think it's better to just axe the BT audio feature and make is USB audio only.
- I've grown to like the size of the Tetent T's without the large battery pack concept attached to it.
- Adding to the issue of audio cut outs and the no sound -> sound latency (not sure if this is still a thing in BT 5.2) and the additional implementation requirement of USB audio, I think it's better to just axe the BT audio feature and make is USB audio only.
Oh, while I'm here, I also wanted to mention that I'm looking into
- being able to put two Tetent T's together into a Tetent Tiny like controller, for the times when I'm often angled to the side of a desk or away from a desk entirely.
- This could also affect the design of the clamps, so I'll do this while also increasing the distance between the rows
- some kind of USB C hub / bus system where one of the USBC ports can be used to add more to the chain
- This may mean that the Turntable also gets 2 USBC ports
- The main concern is audio latency
-
Finger distance and other changes needed
03/31/2022 at 14:33 • 0 commentsSo I printed out 2 Tetent T's and a Turntable and have been getting a feel for where the concept ergonomics are at.
What I've already done:
- Moved the thumb trackpad.
- I feel like I've almost got the right location which would be directly underneath the gap between the 3rd and 4th switches on the thumb row.
- I've experimented with curved faced switches (curve is an extrude cut along the X axis) but I think I'll keep a flat face.
- Moved the material around the switch faces down so that the switch face is 0.5mm above the surface.
- This does increase fingernails catching inbetween the switches, but it also feels like the switches are slightly more distinguishable and easier to press.
What I am planning to do:
- I'm wondering if I should add a 6th switch in the center column (3rd digit)
- This depends on if I could get a 2mm dowel long enough (but might be irrelevant due to the next point)
- If this implementation is successfull
- an aditional 242 chords could be performed.
- the keybinding could be such that something like 555 has all fingers physically in the same row. This might be more mentally processable to Future Me or some people than having 555 be where the fingers naturally land, with the 3rd digit 1 row higher than the 2nd and 4th digits.
- The spacing between fingers is too close
- I was wondering why digits 2 and 4 never really seemed to mesh all that well with the keys, especially 4.
- I was thinking of slanting the faces of the top-side columns so that they're better aligned with the fingertips, which I will still implement.
- This is going to have some downstream issues when I rectify the distancing, but it might also allow for a lower switch height or less dowels needed if I can put them in the free space I'd gain inbetween columns.
- This could also have implications with Tetent Tiny, but it might be fine as the hold is different and the 3 fingertips are closer together the smaller the arc created by the fingers.
- I was wondering why digits 2 and 4 never really seemed to mesh all that well with the keys, especially 4.
- The thumb column needs to move down slightly.
- [Turntable] The joystics need to be flush with the switches on the same row.
- Some kind of hinge clip mechanism is needed so that the Turntable can be held adjacent to a Tetent T
- The angle needs to be adjustable so that my elbow only needs to rotate to move from one to the other.
- This also reduces the amount of clamps I need to carry with Teti down to 2.
- Implement a quick removable battery
- Moved the thumb trackpad.
-
[T] Alternative Mouse Control
03/21/2022 at 14:56 • 0 commentsThe idea
I'm thinking of a course and fine method of keying in mouse positions for even faster and more accurate GUI control. The coarse method would be A00 - A99 and the fine would be 001 - 999. In both cases, the left thumb first covers the trackpad so that Tetent goes into mouse position entry mode instead of keyboard mode.
For the coarse method, I was thinking of either
- First Tetent selects from a 10 x 10 grid, second Tetent selects from a 10 x 10 grid inside
- First Tetent selects horizontal (or vertical) in a 100 x 100 grid, and the second Tetent selects the other axis.
and for the fine method, I was thinking of the second option from a 999 x 999 grid. (Tetent = 000 not included). So that clicking in the centre of the screen is possible, the method might use a 9x9 and 99x99 grid respectively instead.
On 1080p or lower (or UI's designed for touch input), I think the coarse method is good enough. For 1440p (or 4K @ 150% scaling), it seems that a 200 x 200 grid would be preferable. Teti has 3 4K panels stacked vertically, and a 999 x 999 grid without having to first select the target screen sounds like I'd be able to get a decent amount of precision. (333 x 999 per screen)
This idea could also be thought of as binding a keyboard shortcut to a (fullscreen) program where a specific UI element doesn't have it. (Fusion 360 feature settings window, I'm looking at you)
Obviously, the main question is "How do I know what location on-screen corresponds to the grid square?".
- Solution using installed software: An overlay that shows the colum/row selected
- Solution using Tetent only: Sending signals to pretend that the mouse is actually a hovering stylus
I also want a way of putting in 2 or 3 coordinates so that linear and spline motions of the cursor can be keyed in. (I was thinking of how this could be used in something like Inkscape)
Click methods
- 000 -> non 0 input -> quick return to 000 = A location in a column / row has been clicked
- This is so only one hand needs to lift off the buttons, making it faster to click subsequent UI elements on the same column / row
- A slow return to 000 implies that the user wants to correct a mistake
- If no modifiers are selected with the right thumb, it's a left click (or opposite if left handed)
- There will be a button for double click, right click, no click (just move mouse into position), click and hold on the right thumb
- For single handed use, the 9 x 9 grid is used. For this, the default would be no-click and intended to reduce the amount of thumb movement on the trackpad.
- Trackpad momentum may be difficult to control accurately.
- Another option is entering the column and row in sequence, as it may be faster than accurately positioning the mouse with the trackpad.
- A third option I just thought of is being able to lock the mouse into a specific row or column.
-
[P] Blackberry Trackpads
03/07/2022 at 20:35 • 0 comments[P] = Parts Received
Trackpads
I bought 3 packs of 3 (4 for Tetent, 2 for Tetent Tiny and 2 for Tetent Turntable) for £3.99 a bag. I didn't really want to be in a position where I got 1 pack and then my human eye could only see Out Of Stock if it worked out and I needed more.
-
[R] Blackberry Trackpads
03/06/2022 at 21:03 • 0 comments[R] = research
This post seems useful for being able to interface with the blackberry trackpads which I have on order:
https://forum.arduino.cc/t/blackberry-joystick-navigation-key-hack/61454/13