“It’s like a woodpecker!”

August 9th, 2011

Several years ago, after reading a thoroughly entertaining piece on old IBM buckling-spring keyboards (seriously, go read it!), I set off to the local thrift store, and was lucky enough to score an IBM Model M2.  It’s smaller and lighter than the Model M, but has the same wonderfully tactile and noisy buckling springs under the keys.

I loved that keyboard, right up until it stopped working.  I considered creating an all-new PS/2 controller for it, but then in my many hours of unoccupied time at my old job I found that someone had done something similar on a Model M, but with a USB interface.  Thank you, Chris, for the excellent work!

So after reverse-engineering the keyboard matrix, I modified the keymap file, designed my own board (schematiclayout), compiled it, soldered the whole thing together, and….it worked.  Well, it wasn’t *quite* that simple–I had a few errors in my keymap, I realized belatedly that the keyboard is too slim for a regular USB-B connector, an errant shield wire in the USB cable shorted one of the data lines (no damage, thank goodness), a too-long leg on one of the components made for a poor connection with one of the membranes, I dropped the keyboard a couple times while inserting all the buckling springs, I *lost* a couple springs and had to order new ones, etc.  But with those wrinkles ironed out, the keyboard finally worked.  And works.  Source code.

My new controller board, next to its predecessor:

A close-up of my board:

The matrix:

The pile of buckling springs and key caps.  Yes, you have to remove all 101 of each. And then very delicately replace all the buckling springs when reassembling the board.  If you’re going to do this, take all the keycaps off before doing anything else.  It’ll make it much easier to undo all the plastic clips that hold the board together.

And lastly, the whole thing back together, hooked up to my modern-day Thinkpad:

The title quote comes from one of my bosses when I asked him if he wanted one, too.

New Breadboard Adapters available

August 9th, 2011

Way later than they should be.  But they’re here.  If you’re looking to use a 40-pin ATMega, you are finally in luck.

Now in (very limited for now!) stock: adapters for ATMega162 and ATMega8515 and for ATMega162/324/644/1284, ATMega16/32, and ATMega8535

Bare PCBs available

May 19th, 2011

Want an AVR breadboard adapter, but only need the PCB?  You’re in luck.  Buy a board, save a buck.  Or buy a set of four and save five bucks.  Available in the Microcontroller Adapter section of the store.

ATMega88/168/328/ATTiny48 (and so on) adapters back in stock

March 24th, 2011

At long last, my shipment finally came!  There are a few very minor changes in this batch, none of which affect the assembly or use:

  • Black PCB with white silk screen (I was surprised by this, but don’t mind)
  • Serial headers shifted further from the MCU (makes it easier to remove the MCU)
  • Fixed the bug which held RST low and required two legs of the button to be removed.  No more of that.

I haven’t uploaded a photo of the new kit (it’s hard to work a full-time job, two part-time jobs, get a house ready to move out, and chase 4 kids), but I’ve marked it as back in stock so you can get it.  An updated photo will be up tomorrow.  If you want it, you can find it here.

Store update

March 8th, 2011

I now have a limited number of AVR Dragon adapters available in the store.

Also, I’ve posted the leftover LED strips from my monitor project.  If there’s enough interest, I might make more.  Oh, and here are the schematic and board layout.

And, at the request of a few readers, I’ve also listed a few microcontrollers as well.  My prices on those aren’t great, but in case you need one and don’t want to pay shipping separately somewhere else, they’re available.

It’s alive!

March 4th, 2011

After a several-month hiatus, I finally got the rest of the hardware I needed to finish refitting an old 17″ LCD monitor with LED backlights.

So, without further ado, I give you the LED driver board.  It’s a simple mc34063 buck converter, with an extra input from the logic board to control the brightness.  It has a mounting hole (more on that folly later) to mount it on one of the existing standoffs.

Many of the components that I used were pulled off the existing driver board:  the inductor, freewheel diode, and capacitor.  You can look at the schematic and board layout if you like.

Next step, modify the existing driver board so that it cuts off power to the backlights exactly the same way it did before.  With a regular CCFL inverter, the logic board controls a PNP (or was it P-channel?) transistor to cut off power to the inverter controller.  I hijacked the same circuitry, replacing the existing transistor with a higher-current FU9024N, which not only matched the pinout, but was also scavenged from the original driver.

Now, on to testing.  This is why I included a pot–so I could get the perfect 12V maximum current to the LEDs.  (it’s hard to see the DMM display, I know)

To get the driver board in the case, I cut out a rectangular section of the old driver board.  For perspective, all that bare PCB used to be dedicated to the CCFL backlight inverter.  Methinks mine is slightly smaller.

And yes, that’s a bunch of fiberglass dust all over the other parts.  At least it’s not conductive, because I’m too lazy to clean it up.

From here, it’s a matter of assembling the whole package.

There were a few speed bumps on this final stretch.  I cut the wires for the backlights a bit snug, so it was a bit acrobatic to get it all together.  The first time I got it all together, I turned it on to realize that half of my bottom light wasn’t working.   With all the abuse it had gone through, one of the pads had lifted.  So I had to tear down the whole monitor.  And that mounting hole?  Well, it didn’t exactly hold the board flat.  A little electrical tape solved that problem.

But in the end, here it is.  Working at last.

AVR Dragon adapters

January 23rd, 2011

I use an AVR Dragon for most of my simulating/debugging/programming needs.  It’s a great tool, but it has a few shortcomings.  It comes with an unpopulated Target area where you can supposedly insert an AVR microcontroller and program it without actually being in its native circuit.

Doing so, however, requires that you buy and install a ZIF socket and some male pin headers or female receptacles, and then run a whole mess of jumper wires all over the place.

I hate ratsnests.  And I love designing PCBs, and love creating labor-saving tools.  So first, I installed the requisite ZIF socket in the target area, and female receptacles in the HVPP and target pin headers, like so:

The new headers don’t help much for ISP programming, but it allows the use of high-voltage programming, if you’re willing to run between 8 and 20 wires between the two receptacles. I thought to myself, “there’s gotta be a better way.”

And here’s what I came up with:

This one is a high-voltage programming adapter for an ATTiny2313. On the underside, it’s just a few pin headers and receptacles:

Given the various socket sizes and pinouts, I needed to create an ISP and a HVP adapter for each socket type and pinout. I have twelve in all. The ISP adapters I call DragonJumpers and the High-Voltage adapters I call DracoDapters. DragonJumpers are on top in the following photo, with DracoDapters below.

If you’d like one, they’ll start showing up in the store soon.

New product – ATTiny2313 breadboard adapter

January 20th, 2011

We finally got the parts in this week for the Tiny2313 breadboard adapter.

Pin headers

January 13th, 2011

I’m a cheapskate.  Most of our kits use single-row headers, and it’s cheaper to buy 40-pin headers and break them down to size than buy headers pre-cut.  This of course takes time, which is in short supply.  And breaking headers apart with a pair of pliers is unreliable and inefficient.

Time to build a machine.

I’ve got a bunch of mediocre tools and a wild mechanical imagination.  So I invented a guillotine-like machine with an adjustable stop to get faster, more repeatable results.

You can also watch it in action on youtube. (sorry, couldn’t get the embedding to work on this blog)

Ah, this’ll make it easier

October 5th, 2010

Up until now, whenever I’ve needed to power something up, I’ve had two options:  Either build it on a solderless breadboard with a breadboard power supply (shameless plug), or Frankenstein something together with a spare computer PSU.  With extra molex connectors and such sprawling all over the kitchen counter workbench.

This will make things a bit cleaner.

Take one suspiciously-cheap power supply, subtract some connectors, and add banana jacks and a little heatshrink, and I have myself a nice fixed-output bench power supply.  It’s not much of a hack, but it’ll make life much easier for me.

As for the insides…

The funny thing is this power supply is advertised as a 500W unit with two 12V rails, each rated for 13A.  In actuality, it only has a single 12V rail, and the rectifier on that rail is only rated for 12A.