Wednesday, August 27, 2014

Chuck Norris-ing a .pkg installer into submission (Updated 28-11-2014)

Or: How to install Legacy Mac OS X SDKs for Xcode

As you explore open-source Mac software, you will eventually have to build for older versions of OS X.

But you will need older OS X SDKs.

The solution? Roundhouse-kick an old, defenseless Xcode installer into a bloody mess, of course! Then you can find all its subinstallers—including the legacy SDKs!

Thursday, February 13, 2014

Fixing a broken medium-current power brick


Some time ago, I bought a 7-port USB hub from Plugable, and it came with a pretty decent power supply. Most cheap hubs provide a correspondingly cheap wall-wart which will only give half an amp of current. But this one from Plugable was a proper beast that gave me 4 whole amps of current! Wow! Until it broke after 6 months of use.

Plugable was really on the ball, and immediately sent me a new power supply. So props to them. But I was curious about what went wrong in the faulty supply, so I popped it open. Here are the pics:

On the operating table.

Friday, July 12, 2013

Reading the Microsoft Word docx file format

After having done some programming to read Microsoft Word files, I thought I'd write about how the Word 2007 or Office Open XML file format is put together. This isn't complete, but this will get you started.

Cracking the door open

When investigating a mystery file, the first thing a Unix junkie does is run file on it. file is a nifty program that will try to identify what sort of data it's looking at, without paying any attention to the file extension. Let's do that now:
$ ls
Lecture 1.docx
$ file Lecture\ 1.docx 
Lecture 1.docx: Zip archive data, at least v2.0 to extract

Tuesday, May 14, 2013

Getting started with FPGAs


FPGAs are pretty awesome. But what are they, and how do you use one? Search no further than here!
A Cyclone III FPGA chip on an Altera DE0 dev
board, up close.

An FPGA is kind of like a CPU, but more awesome. Just like you can reprogram a CPU to do different things, you can reprogram an FPGA to be different things. In other words, you are given a whole bunch of logic gates and the complete freedom to hook them up however you want. Think about that for a moment.

That's the awesomeness of FPGAs.

You can make audio processors, password crackers, Bitcoin miners, and even parallelizable GPUs and CPUs - all on an FPGA.

The question is, how?

Tuesday, May 7, 2013

Building a home workshop

My work table. The pill bottles at top left
are for storing SMD components. The adhesive
labels Digikey sends with these components
are the perfect size! 
This post is for all the serious hackers and EE majors out there who want to build cool stuff at home. Some of my friends have seen the mess that is my apartment/workshop, and began wanting to build up their own home workshop. So they ask, "What should I get first?"


To begin, you can check out a list of things I think a serious hobbyist should have on SparkFun. I am assuming that you have maybe a few basic tools, but you want to do some more advanced stuff. Of course, I'm not giving a Divine command ("Thou shalt buy a temperature-controlled soldering iron with a brass sponge and a chisel tip!"); this is just a strong recommendation.
https://www.sparkfun.com/wish_lists/62754

Friday, July 20, 2012

Taking apart the 2006 Honda Odyssey dashboard, part 1 of ?

I got it into my head that a true hacker must know how to hack his car. Especially the dash. You've got the connection to the car's diagnostic computer, DC power (without occupying a cigarette lighter port), auxiliary audio, and the ability to use any blank switchplates you might find there.

I found that the average hacker can probably figure it out, but with a caveat: you have to use much more force than when building a computer (for example). The car's retaining snaps and bolts were designed to stay in place in a vibrating environment, extreme temperatures, and in the event of an accident. HOWEVER! The force you apply must be at the correct time and place. The same force you use to disengage a connector or snap could end up tearing a tab somewhere if you force it too much. If you feel inordinate resistance, check for screws. Basically, it's the same as disassembling your garden variety coffee pot, but with more prying force and snap tabs. Be careful!

Monday, May 24, 2010

Cryptap: rhythmic combo lock



A while ago in December, I posted something at hackaday.com: a rhythmic door lock. I had in mind to use a keypad at the beginning, but I didn't have enough buttons and wanted to keep this a very low-budget project. For instance, the buttons were free samples and the filter capacitor was pulled from a TV or CRT monitor, I can't remember which.