[CNLohr] Reverses Vive, Valve Engineers Play Along

[CNLohr] needs no introduction around these parts. He’s pulled off a few really epic hacks. Recently, he’s set his sights on writing a simple, easy to extend library to work with the HTC Vive VR controller equipment, and in particular the Watchman controller.

There’s been a lot of previous work on the device, so [Charles] wasn’t starting from scratch, and he live-streamed his work, allowing others to play along. In the process, two engineers who actually worked on the hardware in question, [Alan Yates] and [Ben Jackson], stopped by and gave some oblique hints and “warmer-cooler” guidance. A much-condensed version is up on YouTube (and embedded below). In the links, you’ll find code and the live streams in their original glory, if you want to see what went down blow by blow. Code and more docs are in this Gist.

Continue reading “[CNLohr] Reverses Vive, Valve Engineers Play Along”

Fail More: The Story of [CNLohr]’s Clear Keytar

[CNLohr] is kinda famous round these parts; due to some very impressive and successful hacks. However, for his 20k subscriber video, he had a bit to say about failure.

Of course glass circuit boards are cool. Linux Minecraft things are also cool. Hacks on the ESP8266 that are impressive enough people thought they were an April Fool’s joke are, admittedly, very cool. (Though, we have to confess, posting on April 1 may have added to the confusion.)  For a guy who puts out so many successes you’d think he’d talk about the next ones planned; hyping up his growing subscriber base in order to reel in those sweet sweet Internet dollars.

Instead he shows us a spectacular failure. We do mean spectacular. It’s got beautiful intricate copper on glass key pads. He came up with clever ways to do the lighting. The circuit is nicely soldered and the acrylic case looks like a glowing crystal. It just never went anywhere and never worked. He got lots of people involved and completely failed to deliver.

However, in the end it was the failure that taught him what he needed to know. He’s since perfected the techniques and skills he lacked when he started this project a time ago. We’ve all had experiences like this, and enjoyed hearing about his. What failure taught you the most?

Continue reading “Fail More: The Story of [CNLohr]’s Clear Keytar”

[CNLohr], ESP8266, USB…

“Round up the usual suspects…”

[CNLohr] just can’t get enough of the ESP8266 these days — now he’s working on getting a version of V-USB software low-speed USB device emulation working on the thing. (GitHub link here, video also embedded below.) That’s not likely to be an afternoon project, and we should warn you that it’s still a project in progress, but he’s made some in-progress material available, and if you’re interested either in USB or the way the mind of [CNLohr] works, it’s worth a watch.

In this video, he leans heavily on the logic analyzer. He’s not a USB expert, and couldn’t find the right resources online to implement a USB driver, so he taught himself by looking at the signals coming across as he wiggled a mouse on his desk. Using the ever-popular Wireshark helped him out a lot with this task as well. Then it was time to dig into Xtensa assembly language, because timing was critical.

Speaking of timing, one of the first things that he did was write some profiling routines so that he could figure out how long everything was taking. And did we mention that [CNLohr] didn’t know Xtensa assembly? So he wrote routines in C, compiled them using the Xtensa GCC compiler, and backed out the assembly. The end result is a mix of the two: assembly when speed counts, and C when it’s more comfortable.

Continue reading “[CNLohr], ESP8266, USB…”

[CNLohr]’s Glass PCB Fabrication Process

One of [CNLohr]’s bigger claims to fame is his process for making glass PCBs. They’re pretty much identical to regular, fiberglass-based PCBs, but [CNLohr] is building circuits on microscope slides. We’ve seen him build a glass PCB LED clock and a Linux Minecraft Ethernet thing, but until now, [CNLohr]’s process of building these glass PCBs hasn’t been covered in the depth required to duplicate these projects.

This last weekend, [CNLohr] put together a series of videos on how he turns tiny pieces of glass into functional circuits.

At the highest level of understanding, [CNLohr]’s glass PCBs really aren’t any different from traditional homebrew PCBs made on copper clad board. There’s a substrate, and a film of copper that is etched away to produce traces and circuits. The devil is in the details, and there are a lot of details for this build. Let’s dig deeper.

Continue reading “[CNLohr]’s Glass PCB Fabrication Process”

[CNLohr] Demos His Photoetch PCB Process

etch

If you’re going to learn something, it only makes sense to learn from a master. [CNLohr] is known around these parts for his fablous PCBs, and he’s finally started to document his entire fabrication process.

[CNLohr] is using a photoetch process, where a mask is created with a laser printer on overhead transparencies. He covers the copper clad boards with a Riston photosensitive mask—available here, and they accept Bitcoin—sent through a laminator, and exposed with the laser printed mask and a UV grow bulb. After the mask has developed, [CNLohr] drops his boards into a ferric chloride bath that eats away the unexposed copper. He then removes the photomask with acetone and cuts the boards with a pair of aircraft snips, and they’re ready to be soldered up with components.

Yes, home PCB etching tutorials are pretty much a solved problem, but [CNLohr]’s work speaks for itself. He’s also the guy who made a microcontroller/Linux/Minecraft thing on a glass microscope slide. Learning from a guy with these skills means you’re learning from one of the best.

Video below, and there’s also a video going over the design of a PCB using KiCAD (!) and TopoR (!!!) available here.

Continue reading “[CNLohr] Demos His Photoetch PCB Process”

[CNLohr]’s Microscope Slide Linux AVR Minecraft… thing

We’ve been following [CNLohr]’s process of creating an AVR-powered microscope slide running Linux and interfacing redstone circuits in Minecraft to real world electronic for a while now, but we’re really at a loss for words on how it works. Well, now there’s a video explaining everything you want to know about this amazingly complicated and overwrought thing.

The device is powered by an AVR microcontroller and Ethernet controller running [Fabrice Bellard]’s JSLinux in a browser. [CNLohr] added a few bits to JSLinux allowing him map the x86 IO ports emulated inside JSLinux to the AVR’s IO ports. This allows him to query the status – both analog and digital – using just a browser. Very cool, but [CNLohr] can also run his Minecraft server optimized for 8-bit devices on this microscope slide server to create a bridge between real electronics and redstone circuits.

To sum up what’s going on here, [Bellard] created an x86 emulator in JavaScript, and put Linux on it. [CNLohr] is serving this from a microcontroller attached to a circuit built on a microscope slide so he can blink an LED from within Minecraft. It’s the most beautifully over engineered and useless thing we’ve ever seen, basically.

In the video after the break, you can see [CNLohr]’s overly convoluted walk through of what’s going on with this microscope slide server. As a little bonus, you can also catch a glimpse of Hackaday at 00:20 in [CNLohr]’s most visited / new tab thingy in Firefox. We’re honored, really.

Continue reading “[CNLohr]’s Microscope Slide Linux AVR Minecraft… thing”

Spite, Thrift, and the Virtues of an Affordable Logic Analyzer

[Larry Wall], the father of Perl, lists the three great virtues of all programmers: Laziness, Impatience, and Hubris. After seeing that Saleae jacked up the prices on their popular logic analyzers to ludicrous levels, [CNLohr] added a fourth virtue: Spite. And since his tests with a Cypress FX3 over the last few days may lead to a dirt-cheap DIY logic analyzer, we may soon be able to add another virtue: Thrift.

The story begins a year or two ago when [CNLohr] got a Cypress FX3 development board for $45. The board sat unused for want of a Windows machine, but after seeing our recent article on a minimalist logic analyzer based on an FX2, he started playing with the board to see if it could fan the flames of his Saleae hatred. The FX3 is a neat little chip that has a 100-MHz General Programmable Interface (GPIF) bus that basically lets it act like an easy to use FPGA.

Prepared to spend months on the project, he was surprised to make significant progress on his mission of spiteful thrift within a few days, reading 16 bits off the GPIF at over 200 megabytes per second and dumping it over the USB 3.0 port. [Charles]’ libraries for the FX3 lay the foundation for a lot of cool stuff, from logic analyzers to SDRs and beyond — now someone just has to build them.

The search for a cheap but capable logic analyzer is nothing new, of course. Last year, both [Jenny List] and [Bil Herd] looked at the $22 iCEstick as a potential Saleae beater.

Continue reading “Spite, Thrift, and the Virtues of an Affordable Logic Analyzer”