[HN Gopher] Rotary Keyboard
       ___________________________________________________________________
        
       Rotary Keyboard
        
       Author : christoph-heiss
       Score  : 407 points
       Date   : 2022-12-24 10:56 UTC (12 hours ago)
        
 (HTM) web link (squidgeefish.com)
 (TXT) w3m dump (squidgeefish.com)
        
       | trinsic2 wrote:
       | LOL. That is a crazy project, but I smiled al the way through
       | reading about it. Its going to be slow going doing numeric key
       | input though. :-)
        
         | layer8 wrote:
         | It might motivate someone to implement an IME for Roman number
         | input.
        
       | ChewFarceSkunk wrote:
       | Nice, but not hardcore enough! Here's the real deal:
       | 
       | https://www.youtube.com/watch?v=9BnLbv6QYcA
        
         | Mister_Snuggles wrote:
         | The best part of that is that they actually made a bit of a
         | wheel-centric UI just for this gag.
        
         | PopAlongKid wrote:
         | "everything is just a few hundred clicks away" -
         | unintentionally hilarious!
        
       | college_physics wrote:
       | The slowness of the rotary dial might be actually a strength in
       | certain use cases, like when its critical to get the number right
       | the first time around. Consider attaching it to a Bloomberg
       | terminal to eliminate the "fat finger" problem.
        
         | euroderf wrote:
         | No more mistaken multi-billion-dollar bank transfers and stock
         | trades !
        
       | HALtheWise wrote:
       | Nice project!
       | 
       | > Due to debouncing troubles, it seems to be double-reading each
       | pulse. At some point I should throw a scope on it to confirm what
       | the problem is, but it works quite adequately as-is. (My first
       | try only had a 10ms delay, which empirically resulted in
       | septuple-reading each pulse...)
       | 
       | Needless to say, this is _not_ the canonical way to count pulses.
       | A more typical and accurate loop would look like
       | if digitalRead(pin):           count +=1 # register the pulse
       | sleep(0.01)  # debouncing delay            while
       | digitalRead(pin):  # wait for end of pulse               pass
       | sleep(0.01)  # debouncing delay
        
         | [deleted]
        
         | zamadatix wrote:
         | I'm more used to "while pin hot in the last devounceDelay
         | consider held" approach. This double sleep method has a larger
         | minimum for a given debounce delay and triggers multiple
         | presses if you get any contact drops at all during a long hold.
         | Not sure if there are other upsides I'm missing though.
        
       | blamazon wrote:
       | Had a chuckle at "the rotary dial is mightier than the number
       | keys"
        
       | JadoJodo wrote:
       | Part of me had hoped that this was some sort of insane mechanical
       | keyboard, where every single key was on the rotary.
        
         | axiolite wrote:
         | That's been done:
         | 
         | https://www.youtube.com/watch?v=9BnLbv6QYcA
        
           | leetrout wrote:
           | "Everything is just a few hundred clicks away"
           | 
           | I am glad you shared the video because it was exactly what I
           | thought of when I read the parent comment.
        
         | bqmjjx0kac wrote:
         | Let's see, for 104 keys 3/4" wide, the fully-rotary keyboard
         | would have a circumference of 78" and a diameter of ~25". At
         | that size, it should probably be oriented like a steering
         | wheel.
        
           | defanor wrote:
           | The holes on my rotary phone are about 1 cm. One can make
           | them nested, since it would have to be custom anyway:
           | starting with the diameter of, say, 3 cm, adding a bit more
           | than 1 cm on each side (3 cm, 4.5 cm, etc), and assuming that
           | at least floor (pi * (1.5 + 2.5 * n - 2) / 1.5) keys fit in
           | the nth such nested ring (1.5 + 2.5 * n is the outer
           | diameter, - 2 is there since the holes won't be on the outer
           | diameter, / 1.5 cm is to leave some space around them; that's
           | not meant to be optimal, just a quick estimate), that'd yield
           | 101 holes/keys with 6 rings, with the outer diameter of 1.5 +
           | 2.5 * 6 = 16.5 cm for the last one. That's a rather small
           | keyboard.
           | 
           | Edit: nested rings would also work for modifier keys.
           | 
           | Edit 2: fixed the formula.
        
         | tdeck wrote:
         | There were a bunch of cheap typewriters that worked this way,
         | collectively called index typewriters. Here's an example, the
         | simplex:
         | 
         | https://site.xavier.edu/polt/typewriters/simplex.html
        
         | layer8 wrote:
         | It doesn't make sense for the modifier keys to be on the rotary
         | dial, but the rest you code encode by a pair of dials (for
         | 10x10 keys). Labeling would be a challenge.
         | 
         | I wonder which of Emacs and Vim would have the advantage here.
        
           | benj111 wrote:
           | A modifier dial would be cool. You could have capslock for X
           | number of seconds.
           | 
           | Vim could have a mode dial. Which mode should be the default
           | is possibly the thing that flame wars are made of though.
        
       | 0xmarcin wrote:
       | Rotary phones where used with
       | https://en.wikipedia.org/wiki/Strowger_switch - so they have very
       | simple interface - just generate the number of pulses that is
       | either N or 10-N (I don't remember exactly which one is right).
       | There is also a nice back-story about how it was invented.
       | 
       | This is a nice DIY project, but its practicality is questionable.
       | Choosing a number on rotary phones is very slow, as you need to
       | wait til the wheel returns to its start position.
        
         | stavros wrote:
         | It's N, from what I recall from my rotary mobile:
         | 
         | https://www.stavros.io/posts/irotary-saga/
        
           | tdeck wrote:
           | In New Zealand it was 10-N!
        
         | ismokedoinks wrote:
         | Not sure practicality is the goal--Being inconvenient might
         | actually be the intent.
        
         | ComputerGuru wrote:
         | You could redesign the rotary dial to return to zero much, much
         | faster with shorter pulses and smaller intervals between them
         | given advances in high frequency signal counting.
        
       | veganjay wrote:
       | This is so cool, especially for those of us who've used rotary
       | phones.
       | 
       | I'd like to see a video of a google voice or other call made
       | using the rotary number pad :)
        
         | kmoser wrote:
         | Just use a rotary cell phone:
         | https://skysedge.com/unsmartphones/RUSP/index.html
        
           | no_time wrote:
           | Tangent, does anyone know where can I buy a small mechanical
           | ringer module like that? I'm probably feeding the wrong terms
           | into ebay but the best it can do vintage doorbells.
        
           | layer8 wrote:
           | It would be fun for it to support texting using T9 on the
           | dial.
        
         | melling wrote:
         | We had a rotary phone when I was young.
         | 
         | What would be really cool is to see some version of "Minority
         | Report" actually work in my lifetime.
         | 
         | https://youtu.be/PJqbivkm0Ms
         | 
         | Sort of like people who lived during the invention of the
         | airplane and got to see humans land on the moon
        
           | nordsieck wrote:
           | > What would be really cool is to see some version of
           | "Minority Report" actually work in my lifetime.
           | 
           | I suspect that that will come swiftly once VR headsets get
           | good[1] enough to be used as a replacement for a
           | laptop/monitor setup. I don't personally have a device, but
           | people who do have told me that the resolution and weight
           | just aren't there yet.
        
       | greenbit wrote:
       | An interesting twist on numeric entry, for sure.
        
       | rgoulter wrote:
       | What an impressive project.
       | 
       | One thing this design demonstrates about the standard keyboard
       | design:
       | 
       | - In order to disallow using the number row, a giant 10U keycap
       | is placed over the number keys. This deliberately restricts
       | usage. It's funny because it's unexpected.
       | 
       | - 3 rows down, you've got a giant 6U keycap. But, most keyboards
       | just look like this, even though it's as impractical as this joke
       | keycap above.
        
       | lencastre wrote:
       | Click wheel FTW
        
       | ChrisMarshallNY wrote:
       | That's a fun hack!
        
         | memling wrote:
         | The friction stir weld!
        
       | pedrovhb wrote:
       | That's awesome. Given the effort that went into it, it's kind of
       | a shame to use a cheap $10 board as a base. I think it'd be
       | worthwhile to spend a bit more and get a keyboard running QMK,
       | which also saves the headache of jerry-rigging an Arduino to
       | control the thing and the complications that come with it (USB,
       | custom logic in the firmware, etc).
        
       | paulkrush wrote:
       | Test it on kids: https://www.youtube.com/watch?v=1OADXNGnJok
        
         | TedDoesntTalk wrote:
         | This is insane. Fun to watch them.
        
         | fbdab103 wrote:
         | A gentle reminder that nothing is intuitive.
        
           | benj111 wrote:
           | No.
           | 
           | I recently noticed on my local canal the mile markers show
           | how many miles you are from the place youre traveling from.
           | 
           | This is the Leeds Liverpool canal. So as you travel to Leeds
           | it says Liverpool with increasing miles.
           | 
           | From the pov of the Liverpool side of the sign being the
           | Liverpool side this makes sense, and on a barge it's easy to
           | look back to see how many miles to Leeds. But to modern eyes
           | it's completely backwards.
           | 
           | Even traffic signs are 'intuitive'!
        
       | kevin_thibedeau wrote:
       | > While one could use a pin-change interrupt, the timescale is so
       | large that busy-waiting is acceptable.
       | 
       | You should never use interrupts for this sort of input with lots
       | of inherent switching noise. At best you could wait for one
       | interrupt then disable it while polling in a debounce routine.
       | Interrupts are a red flag that someone hasn't investigated what
       | the switching is doing to their micro.
        
       | bilekas wrote:
       | Definitely a fun project and great read! I only worry it may
       | catch on with the hipsters and we'll be hearing the rotary bells
       | in cafes soon.
        
       | darkhorn wrote:
       | Apple had wheel keyboard https://youtu.be/9BnLbv6QYcA
        
       | oritsnile wrote:
       | The most interesting for is the USB 3.0 connection, on the hub.
       | Didn't know the lanes are totally independent.
        
       | anyfactor wrote:
       | I NEED a rotary dial as a fidget toy.
        
         | _tom_ wrote:
         | eBay's got plenty of them. With or without the phone.
        
           | anyfactor wrote:
           | Checking them right now. Thanks.
        
       | user3939382 wrote:
       | Time to use it with a SIP client :D
        
       ___________________________________________________________________
       (page generated 2022-12-24 23:00 UTC)