Testing The Limits Of Home PCB Etching

[Quinn Dunki]’s Veronica, a homebrew computer based on the 6502 CPU, is coming along quite nicely. She’s just finished the input board that gives Veronica inputs for a keyboard and two old Nintendo gamepads. [Quinn] is building this computer all by her lonesome, including etching all the PCBs. She’s gotten very, very good at etching her own boards, but this input board did inspire a few facepalming moments.

In an earlier post, [Quinn] went over her PCB etching capabilities. As demonstrated by the pic above, she’s able to print 16 mil traces with 5 mil separation. This is just about as good as you can get with homebrew PCBs, but it’s not without its problems.

[Quinn] is using a photographic process for her boards where two copies of a mask is printed on an acetate sheet, doubled up, and laid down on a pre-sensitized copper board. The requirement for two layers of toner was found by experience – with only one layer of toner blocking UV light, [Quinn] got some terrible pitting on her traces and ground planes.

Two photographic masks means the masks must be precisely aligned. This example shows what happens when the acetate sheets are ever so slightly misaligned. With a 5 mil gap between traces, [Quinn] needs to align the masks to within ±2.5 mils; difficult to do by eye, and very hard once you factor in flexing and clamping them down to the copper board.

Even when this process goes perfectly, [Quinn] is pushing the limits of a laser printer. When printing at 600 dpi, the pixels of the print are about 1.5 mils. While GIMP, printer drivers, and the printer itself have some fancy software to help with the interpolation, [Quinn] is still seeing ‘bumps’ on the edges of perfectly aligned parts. This is one of those things that really makes you step back and realize how amazing fabbing PCBs at home actually is.

With most of the hardware for Veronica out of the way, it’s just about time for [Quinn] to start programming her baby. We’re not expecting a full-blown operating system and compiler, but those NES gamepads are probably crying out for some use.

Interfacing With The HTC Desire Display And Its Touch Panel

Part of [Linas]’ submission to last year’s Cypress Smarter Life Challenge involved using the HTC Desire display and its touch screen. This particular phone includes a full-color active-matrix OLED (AMOLED) display that has a 3.7″ diagonal and a 480×800 resolution, resulting in a 252ppi pixel density. Using a MSO2024B oscilloscope, [Linas] originally started his adventure with the touchscreen by sniffing the I2C signals. As some math was required to extract the data, he later found the HTC Desire source code and included it on his STM32F429 (so much for reverse engineering!).

After spending many hours searching for the AMOLED display and controller datasheets, [Linas] resorted to pay a company to get the resources he needed. He produced a custom-made PCB to provide the display with the required voltages, as well as offering a 0.1″ connector to interface with it. A RGB565 interface is used to communicate with the screen so only 65k out of the 16 million colors are used. You may download all the program files and datasheets in [Linas] write-up.

A Low Cost Dual Discriminator Module For The Easy-phi Project

A few months ago I presented you the Easy-phi project, which aims at building a simple, cheap but intelligent rack-based open hardware/software platform for hobbyists. With easy-phi, you simply have a rack to which you add cards (like the one shown above) that perform the functions you want.

Recently my team finished testing our FPGA-based discriminator or “universal input” if you prefer. As easy-phi cards use a well-defined electrical signal to communicate with each other, we needed to make a card that would translate the different kinds of electrical signals from the outside, as well as perform plenty of other functions. It was therefore designed to have a 100MHz input bandwidth with an AC/DC coupled 50 ohm/high impedance input stage (x2) and 4 easy-phi outputs. For this module, we picked the (old) spartan3-an FPGA to perform the different logic functions that may be needed by the final users (high speed counter, OR/XOR/AND, pulse creation,…). Using the cortex-m3 microcontroller present on the board, it may be easily reconfigured at will. All design resources may be found on our Github, and you can always have a look at our official website.

Easy Multi-Touch Table

Screen Shot 2013-12-31 at 1.53.13 PM

[2bigbros] put up an Instructable on his multi-touch table build. It’s a nice setup, using the typical frustrated total internal reflection method for touch sensing. Tinkerman’s Method was used for the screen itself, which involves rolling silicon onto vellum with a paint roller to improve the bond. [2bigbros] then built a nice aluminum and wooden frame for the whole thing. He’s light on some details, but most people with a basic understanding and Google will be able to figure it out.

This is a very accessible project for most builders. If you’re interested in getting into it, there are plenty of projects to reference. We previously covered the basics, as well as a more involved build. We’ve even seen an interactive tower defense game using multi-touch. If you decide to build one of your own, don’t forget the excellent resource at TUIO for finding frameworks and example implementations.

Continue reading “Easy Multi-Touch Table”

USBPass – A Mooltipass-like Project

In our Developed on Hackaday series some readers may recall a sentence we wrote: “if one’s idea is not yet in the market, it’s either completely stupid or people are already working on it”. Well, [Josh] casually mentioned that he was also working on an offline password keeper after having recently subscribed to our google group. Similarly to the Hackaday-developed platform, the USBPass is connected to a computer via USB and is detected as an HID keyboard. As you can see in the picture shown above, it uses very few components: an ATMega32U2, a USB connector, three buttons and a few passives chips.

A total of 20 passwords can be stored in the microcontroller’s memory, which can be ‘typed’ by the platform using the push buttons. The USBPass firmware is based around the LUFA USB stack, to which [Josh] added HID report functionality to allow data transfer from his desktop application. The latter uses the Linux/Windows/OS X HID API library so bringing his software to other operating systems can be done in no time. All the project resources can be found on GitHub, while [Josh] is currently working on a B revision which will include an OLED screen.

Hacking SD Card & Flash Memory Controllers

We hope that some of our readers are currently at this year’s Chaos Communication Congress (schedule can be found here and live streams here), as many interesting talks are happening. One of them addressed hacking the memory controllers embedded in all memory cards that you may have. As memory storage density increases, it’s more likely that some sectors inside the embedded flash are defective. Therefore, all manufacturers add a small microcontroller to their cards (along with extra memory) to invisibly ‘replace’ the defective sectors to the operating system.

[Bunnie] and [xobs] went around buying many different microSD cards in order to find a hackable one. In their talk at 30C3 (slides here), they reported their findings on a particular microcontroller brand, Appotech, and its AX211/AX215. By reverse engineering the firmware code they found online, they discovered a simple “knock” sequence transmitted over manufacturer-reserved commands that dropped the controller into a firmware loading mode. From there, they were able to reverse engineer most of the 8051 microcontroller function-specific registers, allowing them to develop novel applications for it. Some of the initial work was done using a FPGA/i.MX6-based platform that the team developed named Novena, which we hope may be available for purchase some day. It was, among others, used to simulate the FLASH memory chip that the team had previously removed. A video of the talk is embedded below.

Continue reading “Hacking SD Card & Flash Memory Controllers”

Developed On Hackaday: First Version Of The Hardware

mooltipass-schematic-featured

The Hackaday writers and readers are currently working hand-in-hand on an offline password keeper, the mooltipass (click to see the project description). 

Next in our Developed on Hackaday series, we present the first version of our schematics. There’s already been a lot of discussions going on in our dedicated Google group, mainly about the project’s basic functionality. Because our firmware developers wanted to get to work, we decided to send the first version of our hardware into production a few days ago. Before going through the schematics, let’s review the required list of the mooltipass’s core components:

  • an easily-readable screen
  • a read-protected smart-card
  • large flash memory to store the encrypted passwords
  • an Arduino-compatible microcontroller with USB connectivity

We’ve been drowning in component suggestions from motivated hobbyists, so we figured we’d make the mooltipass v1 as simple as possible and then move from there. Given this device is developed on Hackaday, we also wanted future users to modify it, building completely new projects based around these main components. Keep reading for our schematics…

Continue reading “Developed On Hackaday: First Version Of The Hardware”