hudson

I like to take things apart. Sometimes they work when I'm done.

Mar 112012
 

4x5 to 35mm adapter

I recently acquired an early 1900′s Gundlach 4×5 view camera with a few lenses and designed an adapter to mount a modern DSLR body where the film plane would go. There is no lens connected to the SLR — the 4×5 lens images directly onto the CMOS sensor. The bracket design is thing:18989 and can likely be adapted for other field or monorail cameras. There are some limitations with the design, but it works acceptably well in practice.

Continue reading »

 Posted by at 11:09 pm

Laser slicing

 Uncategorized  9 Responses »
Feb 272012
 

Acrylic cute Cthulhu
While uploading a model to thingiverse, I noticed an ultra cute Cthulhu and had to print it immediately on the Makerbot at NYC Resistor. Then I had an idea that the same process that generates the gcode shells for the makerbot could be used to generate slices to be cut on the laser cutter.
Continue reading »

 Posted by at 11:40 pm
Jan 192012
 

New in NYCR
New in the NYCR vending machines are Teensy 2.0 boards. They have ATMega32U4 chips, which have the built in USB drivers and, via LUFA, can appear as any USB device, not just a serial communications device. Want to make a MIDI device show up as a USB keyboard? Or a core memory as a mass storage device? You can do that! The USB doesn’t consume a UART, so there is still a serial port available for interfacing with GPS or other external RS232 devices.

PJRC makes the Teensyduino plugin for the Arduino IDE and a set of compatible libraries so that you can use it with your Arduino sketches. Or you can drop into straight C and take full advantage of all of the AVR pins.

Update: They are very popular! Three were bought during Craftnight tonight.

 Posted by at 7:09 pm
Jan 152012
 

IBM 129 Card Data Recorder
This weekend PMF and I cleaned an IBM 129 Card Data Recorder and were able to fairly reliably punch cards once we were done. When we started it would frequently jam during feeding, mis-feed during the punch, and not cleanly stack the cards in the output bin.
Card Release
Most of the problem was thirty years of dust, card fiber and grime built up in the mechanisms. The output hopper was full of it and needed a good cleaning to reliably pick up cards into the output stack:
Output handler gunkOutput handler clean
Click for more inside

 Posted by at 9:19 pm
Nov 252011
 

Hexascrolled + LEDs
Adam and I upgraded Hexascroller to control 5 m of Adafruit RGB LED strip through a spare serial port connected to a Teensy 2.0 that drives the strip via SPI. Now when a new message is displayed, the accent lights switch to a bright flashing mode to attract attention, then they will return to soothing, slow color changing mode.

Click the “Read more” to see additional photos of the installation and setup. Continue reading »

 Posted by at 10:58 pm
Nov 122011
 

ATTiny10 programming
Using Darrel Tan’s Programming the ATTiny10 instructions and a SOT-23 breakout board by Raphael, I was able to flash one of these very small MCU chips. Given the small package, these programmable devices can be dropped just about anywhere on a circuit that a transistor would be used.

Unlike Tan, my FTDI breakout cable does not have DTR, so the reset pin on the chip needs to be pulled low manually to put it into programming mode, and the pinout adjusted. Full instructions after the break…
Continue reading »

 Posted by at 11:54 pm

Hex-curious?

 Uncategorized  No Responses »
Nov 032011
 

Have you ever wondered how to make sense of hexdumps?

e1a02000e5d00000 e3500000012fff1e
e3a00000e2800001 e7d23000e3530000
1afffffbe12fff1e

Or been curious to know what exactly does a bxeq lr instruction mean in assembly?
<br />
   0:   e1a02000        mov     r2, r0<br />
   4:   e5d00000        ldrb    r0, [r0]<br />
   8:   e3500000        cmp     r0, #0<br />
   c:   012fff1e        bxeq    lr<br />
  10:   e3a00000        mov     r0, #0<br />
  14:   e2800001        add     r0, r0, #1<br />
  18:   e7d23000        ldrb    r3, [r2, r0]<br />
  1c:   e3530000        cmp     r3, #0<br />
  20:   1afffffb        bne     0x14<br />
  24:   e12fff1e        bx      lr<br />

If so, then you should sign up for the introduction to assembly programming and reverse engineering class. You can learn assembly programming and machine architecture using reverse engineering techniques on your own code. In this class we will write code, compile it into an executable and then disassemble it to learn about registers, stacks, branches, function calls and argument passing, structs and other common idioms.

Experience with any programming language is required; the examples in the class with be in C, with dissassembly into ARM assembly. Bring your own laptop with arm-elf-gcc and associated binutils installed to follow along.

 Posted by at 8:22 pm