Categories
Uncategorized

8K Controller with Quicksilver

You may already know that I’ve been building (and selling) USB controllers for the last 8 years or so. Most of them have been for photobooths, tradeshows, exhibits, museums, etc. Typically these have been very durable devices meant for use and abuse by the general public. They tend to do one thing, and do it well. Well, 2020 came along and all events and public gathers sort of… stopped, and with it, people wanting specific use USB controllers. I still sold a few, but it became apparent that lower-cost more consumer oriented devices were desires. That’s sort of what the 8K Controller is. I’ve sold about a half dozen, and I’m considering another run if people are interested in it.

Yeah, so what is it? Well, it’s a USB controller. By default, it’s programmed for function keys F13 through F20 (which are not found on most keyboard) but it can be programmed for any keys, or key combos, or even as a MIDI controller. So yeah, what can it do? Well, with specific custom key commands it can serve as a controller for Zoom, Google Meet, or Microsoft Teams to mute your mic, disable your camera, and other things. As long as there’s a key command, it can do it.

If you just want the default F13-F20, you can use macro/automation software to do all sorts of other things, and I’ll write about these in the coming weeks. In fact, we’ll start right now!

Quick Disclaimer! By default the controller is recognized as a USB HID device, no drivers needed on modern versions of macOS, Windows, or Linux. In future posts I’ll jump into Windows and Linux, but I’ll start with macOS.

Today we’ll look at Quicksilver, which is open-source/free and can be found at qsapp.com Quicksilver can do a lot of neat things, and falls under the category of “productivity software” as many of these applications will.

Quicksilver allows you to create triggers that respond to key commands, which is perfect, because we’ve got 8 key commands just waiting to be put to use. I created a bunch of actions to open up specific web sites, and then for each one, clicked Edit for the Shortcut and pressed the button on the 8K Controller I wanted to assign it to. (I should note that I’m not a long-time user of Quicksilver. I downloaded it tonight and got this basic functionality figured out in less than an hour.)

I’ve now got seven buttons right behind my keyboard which will pull Firefox to the front (no matter what application is running) and load a specific web site. I can have Twitter or Facebook on my screen in a matter of seconds! (Those probably are not the best choices though!)

These are really just examples though. I’ll be changing them to things I actually need every day for work. Admin interface for the online shop, a few accounts I need to keep an eye on, etc. Sure, it’s not too difficult to command tab through the open applications, get to Firefox, click a button in the bookmark toolbar, but… this is one press of a dedicated button, so yeah, it’s quite a bit faster, and I dare say more satisfying.

The view from the Raspberry Pi that has a camera pointed at my 3D printer is now just a mere button press away! (Hmmm, looks like it’s ready for a new print to get started.)

Oh, and one more thing… You may notice I used F13 through F19, but not F20. It seems Quicksilver does not support F20. I did find an issue about the higher numbered function keys, but no mention of F20. Maybe I’ll file an issue about it, but for now 7 out of 8 with a piece of free software isn’t too bad!

Categories
Uncategorized

Soft Touch Controller & Joystick

neoprene-03

I recently built two custom controllers. The first was a joystick that sends key commands depending on the position. It was a simple electronic build, just incorporating a SparkFun Arcade Joystick into an enclosure.

joystick-02

The person I built it for ask for the enclosure to be as small as possible, so the joystick is in there tight. I also painted the ball white and the screws holding things together black.

joystick-01

The bottom piece of the enclosure does not use finger joints, as it’s head in place with screws. I ended up drilling holes for the screws later after I cut down some scrap wood into corner pieces that helped hold the enclosure together when gluing, and provided a place to screw the screws into.

neoprene-02

The other controller was create using Neoprene. I did not laser cut the Neoprene, but did cut a template from wood that I used to lay on top of the Neoprene and then carefully cut with an X-ACTO knife, which worked well enough.

There are two round laser cut pieces of plastic as well, that are covered with metallic tape, and then the two wires got taped down to the discs. The wires are attached to a Teensy LC on the other end, which has built-in capacitive touch capabilities.

neoprene-01

Some gaff tape holds together the sandwich of Neoprene to keep it all together. It’s pretty much impossible to pull it apart without destroying the Neoprene (I left that photo out) so hopefully it just works and no maintenance is ever needed.

This controller also sends keystrokes depending on which pad you touch. Oh, I also used a laser cut template to spray paint the two large white target areas. I wasn’t too pleased with the look of spray paint on Neoprene, but it’s the best I could do with a short timeline.