Bonanza of Keyswitch Datasheets Fills Our Decks with Clack

Mechanical keyboards use switches of a few different types. But even those types include myriad variations. How’s a hacker to know just exactly what equipment is out there?

For example, if you grab a fellow cube-farmer’s mechanical keyboard (possibly because they clacked on their Cherry Blue’s just one too many times) and angrily rip off a few keycaps to show you’re serious, what do you see? In most cases you expect to see the familiar color and stem shape of a Cherry MX switch or one of its various clones. But you may find a square box around it like a Kailh Box switch. Or the entire stem is a box (with no +) like a Matias switch. Or sometimes it looks like a little pig snout, making it a Kailh Choc.

There is a fairly wide variety of companies which make key switches suitable for use in a keyboard. Many hew to the electrical and mechanical standards implicitly created by the dominant Cherry GmbH’s common switches but not all. So if you’re designing a PCB for such a keyboard and want to use odd switches, you need to check out the Keyboardio keyswitch_documentation repo!

The keyswitch_documentation repo is an absolute treasure trove of hard to find keyswitch datasheets. Finding official information on Cherry MX switches isn’t too hard (keyswitch_documentation has 22 data sheets for MX series switches, and four for ML). But those Kailh Choc’s? Good luck (here it is in keyswitch_documentation). Did you know Tai-Hao made Matias-esque switches as well as weird rubber keycaps? Well they do, and here’s the datasheet.

We’re keeping this one handy until the next time we need data sheets for weird switches. Make sure to send a note if you find something interesting in here that’s worth noting!

Kinect Visualizer Demo Gives Winamp a Run for Its Money

Winamp eat your heart out, because thanks to the Microsoft Kinect in the hands of [Samarth] there’s a new way to make your screen dance along with you. He created a music visualizer demo that takes advantage of the 3D depth camera on Kinect by outputting a fun pixelated silhouette and color changing strobe. When there are big high-hat hits or bass thumps the camera feed reacts accordingly (as any good visualizer would). He even uploaded his code for the project just in case anyone would like to take a look at it.

The visualizer utilizes the OpenKinect-Processing library which has provided the backbone to many other similar Kinect art projects. It was specifically created to provide a quicker way for coders to access the raw color and depth data output by Kinect. It’s creator, Daniel Shiffman, has posted a number of tutorials to aid anyone looking to create their own real-time animations as well.

The visualizer demo (see video below) was created as part of Maker Faire Hyderabad which is happening over the weekend. The expo is the city’s first Maker Faire and is set to feature over 200 maker exhibits across multiple disciplines. It’s always great to see maker communities outside of the ones that are closest to you geographically speaking, so hopefully we’ll see many more like [Samarth] taking part in more maker events in the future.

Continue reading “Kinect Visualizer Demo Gives Winamp a Run for Its Money”

Hands on with the Arduino FPGA

All of the tools you need to work with the FPGA Arduino — the Vidor — are now in the wild!

We reported earlier that a series of French blog posts finally showed how all the pieces fit together to program the FPGA on the Arduino MKR4000 Vidor board. Of course, I wasn’t content to just read the Google translation, I had to break out the board and try myself.

I created a very simple starter template, a tool in C to do the bitstream conversion, required, and bundled it all together in one place. Here’s how you can use my starter kit to do your own FPGA designs using the Vidor. I’m going to assume you know about FPGA basics and Verilog. If you don’t, why not check out the FPGA boot camps first?

The first thing you’ll want to do is grab my GitHub repo. You’ll also need the Arduino IDE (a recent copy) and Intel’s Quartus software. Inside, you’ll find three directories, two of which contain slightly modified copies of original Arduino files. But before you start digging in, let’s get the high-level overview of the process.

Continue reading “Hands on with the Arduino FPGA”

Microsoft Releases Crown Jewels — From 1982!

If you look back 30 or so years ago, it wasn’t clear what was going to happen with personal computers. One thing most people would have bet on, though, was that CP/M — the operating system from Digital Research — would keep growing and power whatever new machines were available. Except it didn’t. MS-DOS took over the word and led — eventually — to the huge number of Windows computers we know today. Microsoft has released the source code to MS-DOS 1.25 and 2.0 on GitHub.

Microsoft — then another fledgling computer company — had written some BASIC interpreters and wanted in on the operating system space. They paid the princely sum of $75,000 to Seattle Computer Products for something called QDOS written by [Tim Paterson]. Rebranded as MS-DOS, the first version appeared in late 1981 and version 1.25 was out about a year later.

While you might not think having MS-DOS source code is a big deal, there’s still a lot of life left in DOS and it is also interesting from an educational and historical perspective. If you don’t want to read x86 assembly language, there’s also the BASIC source for the samples (paradoxically, in the bin subdirectory) along with compiled COM files for old friends like EDLIN and DEBUG.

Continue reading “Microsoft Releases Crown Jewels — From 1982!”

Microsoft Confirms GitHub Acquisition

After recent talks, Microsoft has now officially confirmed that it will be merging GitHub to master. The acquisition will cost $7.5 billion, and has received mixed reactions so far. A staple of the open source community, GitHub is well known to Hackaday readers, and has played a key role in developing an incredible amount of the software we use on a daily basis.

Microsoft has embarked on a community crusade of late, seemingly trying to win some respect from developers and makers. Under the encouragement of Satya Nadella, we’ve had Visual Studio Code, Typescript, the Ubuntu-on-Windows saga, and many more. It’s hard to tell whether these endeavours have succeeded in winning the hearts of the community or not, but those who distrust Microsoft may be looking to make a move away from GitHub. In fact, since murmurs started about the possibility of the acquisition, GitLab, one of GitHub’s major competitors, has reported 10x the number of normal repositories moving to GitLab.

How does GitHub make money? Mainly through paid private repositories plans, and GitHub Enterprise for businesses. This provides GitHub with enough cash to allow free public repositories for the community. It will be interesting to see what changes in business and culture are made (if any) by Microsoft’s Nat Friedman (founder of Ximian) who will be taking the role of GitHub CEO.

To keep a close eye on your GitHub activity, you can monitor your repositories with an LED matrix.

Alexa Controls This Projector Thanks to ESP8266

[jfessard] doesn’t have extra-sensory perception, but does have an ESP8266. The little board seems to pop up in every hack these days. Inspired by not wanting to get up from the bean-bag chair or leave the electronics-housing cabinet wide open to use an HDMI switcher, [jfessard] hacked together an Alexa-compatible projector control via the ESP8266!

The core functionality here is the ability to turn the projector on and off, and to switch the HDMI source. [jfessard] connected the Panasonic PT-AE3000U projector to a Monoprice HDX-401TA 4×1 HDMI switcher. Tucked away in the cabinet below the projector, it is controlled using a IR LED transmitter breakout board sitting at the end of a fairly long set of jumper wire. The projector control itself is through a RS232 interface.

To make this easy to use with Amazon’s Alexa, [jfessard] turned to some libraries for the ESP8266 D1 Mini. The fauxmoesp library makes it look like a WeMo device, and the IRemoteESP8266 library made remote control code cloning a snap. One really frustrating part of this hack was the MAX232-style breakout board; getting a board to work when it’s labelled backwards takes a bit of head-scratching to figure out.

If the the projector ever gets too noisy, we suggest this hack that shushes the machine. For the moment, we’d rather take another look at this laser projector that mimics a cool ‘laser sky’ effect.

Meltdown Code Proves Concept

If you’ve read about Meltdown, you might have thought, “how likely is that to actually happen?” You can more easily judge for yourself by looking at the code available on GitHub. The Linux software is just proof of concept, but it both shows what could happen and — in a way — illustrates some of the difficulties in making this work. There are also two videos in the repository that show spying on password input and dumping physical memory.

The interesting thing is that there are a lot of things that will stop the demos from working. For example a slow CPU, a CPU without out-of-order execution, or an imprecise high-resolution timer. This is apparently especially problematic in virtual machines.

Continue reading “Meltdown Code Proves Concept”