dawnmist: My homebuilt gaming keyboard - version 1 (Default)

I've not added any buttons yet though. So I can move the mouse cursor around my screen at a reasonable rate using just a fingernail, but I cannot click on anything without my real mouse.

Using the touch screens I already had made it easy - I knew what library to use to read touch co-ordinates from it. The entire sketch so far is only 33 lines long...including comments and blank lines! All the real magic is happening in the UTouch and Teensy libraries...all I have to do is get the read (x,y) values back from the UTouch library, compare them to the previous set of values, then send the difference to the PC using Teensy's Mouse.move(x,y) function. :)

Project thoughts

Wednesday, August 12th, 2015 09:07 pm
dawnmist: My homebuilt gaming keyboard - version 1 (Default)

I think I've worked out what my next build-it-yourself project will be...a replacement to a mouse that can be used with fingernails instead of having to hold it. I have an auto-immune condition (Sjogren's Syndrome) that is causing the skin of my hands and feet/legs to burn/sting fairly badly (the Sjogren's is causing Small Fibre Neuropathy). My hands were hurting enough by the end of the day today at work that I couldn't really hold my mouse anymore. Pressure on the skin - particularly against ridged objects like the scroll wheel - aggravates the Neuropathy issues...and between the palm holding the mouse to move it and the scroll wheel and buttons on the mouse poking my fingers it becomes very hard to use the mouse when my skin is feeling like I've skidded on my hands across asphalt. My hands are not like that all the time...yet...but I can see a future when they will be, so I've decided to design/build an alternative device for me to use instead. I've found that typing on my fingernails doesn't trigger/aggravate the pain in the skin of my hands, so I'll design a replacement device for a mouse around being able to use my nails as the primary input device instead.

A thumb-ball trackball wouldn't really work either - you still use the fleshy pads of your fingers/thumb to move the ball, press buttons, etc, and to move the scroll wheel if it has one. It likely wouldn't aggravate my palms as much, but that's about all I could say would be positive about it. A palm-ball variant would be even worse.

So I'm thinking I'll build a box with 5 keys in a cross-shape. Left/middle/right click across the horizontal, with scroll-up above the cross and scroll-down below it. Behind those on a 90-120 degree angle I'll mount a resistive touch sensor - resistive so that it reacts to fingernails - to use to replace the "ball"/movement part of a mouse. About the only thing it wouldn't do easily would be click-and-drag...but that would be more a case of learning alternative finger use/positions than anything else. Or I could use another key as a "toggle left-click"...i.e. it stays "clicked" until pressed a second time. I'll have to think a bit about that...it's an easy solution to the issue.

I know where I can get the keys and keycaps easily, and the controller to use to turn those into a device that any PC will recognise as a USB mouse. I think I could probably use an instrument case (the kind with the angled end for a LCD to be mounted in it) as the box. I just need to find the resistive touch sensor to put on the angled back (there's a lot of cheap ones pre-mounted on TFT screens, but I don't need a screen for a mouse).

dawnmist: My homebuilt gaming keyboard - version 1 (Default)

Woohoo! The keyboard is now assembled in the box, and most of the back panel connectors/switches are in place (it's just the foot switch connections that are currently missing). This means I now have a portable, customised-for-me gaming keypad *cheers*.

Pics and discussion behind the cut )
dawnmist: My homebuilt gaming keyboard - version 1 (Default)

I spent most of the weekend (when I wasn't blinded by a migraine) laying out a (potential) circuit board for my home-made keyboard. At the moment, it's still wired up via breadboard taking up a ton of space on my desk - I'd like to finally get it inside the keyboard box. :-)

First attempt was a daughter board for the shift-register part to connect to the existing keys...but wasn't going to fit the teensy & 40-pin screen connector in the space at the end as well, which would still leave some of the keyboard parts sitting outside the box.

Second attempt was a complete replacement of the existing key mount for the 24-key section of the keyboard, integrating them onto a single circuit board so that the teensy & screen could go on the other side of the keys, and the keys could be directly wired to their shift registers instead of needing connectors for them - that looks a *lot* better in terms of wiring, and has all laid out nicely so far. I've still got a few adjustments to make - the joystick needs wiring in, and there's a couple of resistors we need to add as short-circuit protections for the footswitch & spare button connectors, but it's looking like it'll work nicely.

I discovered that circuit board layout is a really interesting and fun puzzle to do...and one that will actually be useful at the end, which traditional jigsaws generally are not! *lol*

Keyboard updates

Wednesday, September 18th, 2013 11:15 am
dawnmist: My homebuilt gaming keyboard - version 1 (Default)

I've been spending a lot of time simply using the keyboard over the last few months - enough that the 8-way thumbswitch became quite unreliable (forward was intermittent, and it kept "hesitating" in the middle of jumps causing me to miss the next platform and die in jumping puzzles).

I decided to switch to using an analogue joystick instead (much easier to replace when it gets worn out - there's a lot more of them around), and resolve the X/Y measurements into the 8-way digital locations. After a week or so of use, I'm finding it more accurate than the old digital switch was (though I had to glue the joystick cap on first, otherwise I kept flipping it off the joystick in dungeons/tougher fights).

This pulled the directional keys out of the shift-register key matrix, effectively freeing up 8 button locations. One of those locations has now been reused as a second foot switch (because I had two), leaving me with 7 pins for future expansion. I haven't really established what keypress I'll set the second footswitch to send yet - the first one is used for push-to-talk in mumble (our guild's voice chat).

I've also done some work optimizing the data writes to the LCD using sets of consecutive pins on the C&D or B&D ports, and reordered the wiring to my teensy 3 to match the B&D option. The patches to enable that are available in the Teensy Forum thread where the UTFT library was being discussed here: http://forum.pjrc.com/threads/18002-Teensy-3-0-driving-an-SSD1289-with-utft?p=34719#post34719. I set it up so that there were options to use ports C&D (fastest as it's only 2 write cycles to set all pins in the 16-bit data bus, but interferes with SPI), B&D (uses 3 write cycles, compatible with SPI), and the old "set the pins you want to use" which uses 16 write cycles.

dawnmist: My homebuilt gaming keyboard - version 1 (Default)

I've been doing a lot of work again the last month on my upgrade from using a Teensy 2++ with monochrome screen to a Teensy 3 with Colour TFT + SD Card + Touch, and it's now coming together nicely.

Read more... )

So there's still lots to keep me busy, but in the mean time - the basics are now all there and working together well enough to ditch the Teensy 2++ controller for the keyboard and move across to using the Teensy 3 controller full-time!

dawnmist: My homebuilt gaming keyboard - version 1 (Default)

I made a lot of progress on the Teensy 3.0 upgrade/rewrite of my right-handed programmable game keypad over the weekend. It's still not ready to replace the Teensy 2++ control board yet - and has a *long* way to go - but the new hardware is mainly connected and functioning.

Read more... )
dawnmist: My homebuilt gaming keyboard - version 1 (Default)

I received my Teensy 3.0 controllers in the mail last week, so I could finally start on version 2 of my programmable right-hand gaming keypad (designed to sit under my right hand because my mouse is on the left - my right shoulder doesn't tolerate mouse movements). I got the real time clock working, then the sd card...but for the life of me I simply couldn't get the Tft screen to work.

Read more... )

All that frustration/hair tearing out was due to an incorrect specification of the controller on the tft. Just in case someone else comes across it, if you bought a 3.2" tft from ebay claiming to use the HX8347-A controller and it just won't work, try treating it as the SSD1289 controller instead - it seems that some ebay sellers have been listing their tfts as having the wrong controller chip!

Page generated Wednesday, September 20th, 2017 03:35 am
Powered by Dreamwidth Studios