Close

First forray for phonetic flapping

A project log for KeyBard

Super Solenoid Sound Clacking and Hacking the Universal Serial Bus Clickety Clackety Keyboard Kit

jonkangasJonKangas 09/02/2023 at 05:270 Comments

Blink loaded and the light blinks. Woot!

Adafruit KB remapper loaded and it successfully remaps all keys as if shift was stuck down! Success?

Poking around the source code, I was not super encouraged by the mapped keys, and the real deal killer was caps lock, num lock, and scroll lock lights didn't light up. I was severely disappointed. This is a deal killer for a project intended to become a novelty give for non-technical friends.

Poking around and I ran into https://github.com/jfedor2/hid-remapper

I was able to drag the ready-made image onto the feather and it worked as a remapper. Everything passes through reasonably well and not only does caps lock, num lock, and scroll lock work, and the LED light shows activity. This is very promising!

Also, a huge shout out to Jacek Fedoryński who has some great code in his repo, and great write-ups on his blog. Everything was intuitive and easy to follow.

Cloned to my github and started poking at the LED activity part of the script. Wasn't too long and I was able to choose an unused GPIO pin to drive a relay. I copied the activity light, tried to run without a time delay on turning back off, but the relay wouldn't trigger my next relay, so I copied his LED time delay structure and shortened the duration to make sure I could get as many clacks as possible. 

The activity LED fires on keydown and on keyup, so I threw a divider in to only clack on half of the keydown/keyup pairs

With all of the hard work of creating a board and a hid mapper done, I was able to get a proof of concept up and running in no time at all.

I think it would be totally great to skip the feather wing (I don't think it helps any) and make a practical effects board or box that can feed directly off the feather.

In theory output could be midi to a synthesizer, or i2c to a solenoid breakout?

Practical effects brainstorming

3v solenoid for normal keystrike events (like in the HAD article a bit back)

Clunking sound of a roller in detents for line feed

an actual carriage return for CR?

Ding after 40 characters without a line feed

Page down gets detent roller whiz?

Backspace on typewriters has a double hit I think, or a reverse and a hit? Not sure exactly if this is worth chasing.

I think I have enough GPIO to do this directly, but having an i2c interface would be lots more interesting. I have been meaning to learn it, though, I'm pretty sure there isn't that much to it. Include the lib and make some calls I would guess.

Anyway, that's enough success for today...

Discussions