Friday, June 27, 2014


I built a copy of Justin Engler's Delta Bot R2B2.  Here's how I did it with a revised parts list.


Justin Engler and his iSEC Partners team presented his PIN punching robot at DEF CON 21.  Even though it was, by his own admission, a last resort in cracking phone PINs, it received coverage in Forbes and other outlets. 


The 3D prints from my brother's Replicator came out well.  The dimensions were correct overall, but I had to do some filing to get the mounting bracket to slot together.  The servos I used required me to file out the slots a bit as well.  The spokes from my servo mount were a little large, so I filed those down too.  Overall, it wasn't too tough to fit everything together.  When I build another one, I need to see if my problems were caused by the STL files, how the G-Code was generated or the calibration of the printer itself.

The local RC shop called Hobby People had most of the small and moving parts.  Servos, ball joints and such came in at under $30.  Lowe's had the right sized all-thread to finish the job.  One thing about the construction was that I originally bought 10mm hex cap screws to join the ball joints to the biceps.  The way the bicep is built, though, the joint tends to hit the side of the bicep and limit the range of the effector.  To solve this, I moved the ball joints outward with small washers.  This made the 10mm hex caps too short, so I went with 15's instead.  Redesigning the bicep to free up movement might resolve this problem.  I slipped a metal stylus pen through a rubber grommet and effector.  The stylus was grounded with an alligator clip onto the breadboard.

The rest of the robot (as you can see in the pic) are an Arduino Uno, a small breadboard and a four-legged stand I put together from a 1x2 and some angle braces.  The robot is held to the frame by a fender washer through the central hole of the mounting bracket.  The sketch had to be modified with the correct measurements on the actual robot.  Most everything matched, so that built my confidence.  Once I uploaded the sketch, I played around with the machine code and made it dance.  This is when I found out the ball joints were binding against the bicep.  I also dropped the robot, and the short hex caps made it go eveywhere.  D'oh!

I forked and cloned Justin's github to prep for writing some code and tidying up the notes.  Rather than cracking phone PINs, I plan to use this to punch card PINs on PIN Pads used in credit card processing.  I don't think I'll need the OpenCV code, so I'll have a blind version of R2B2 up in my own repository once I learn enough Python to be dangerous.

Finally, Marginally Clever has a new version of the delta bot that uses laser cut parts.  The R2B2 that Justin demoed at SXSW seems to have been made from this version out of acrylic.  Snazzy!  This comes with its own platen and looks mighty sturdy.  I might have to grab one and give it a spin.

New parts list

Count Cost Each Name Description
2 $1.94 Du-Bro 2123 3.0 mm x 10mm Socket Head Cap Screw (4-Pack) P/N 2123 Screws to connect effector to ball joints
2 $1.94 Du-Bro 2124 3.0 mm x 15mm Socket Head Cap Screw (4-Pack) P/N 2124 Screws to connect bicep to ball joints
2 $1.98 Traxxas 5347 Rod Ends with Hollow Balls Large Revo (12) Ball joints to form the arms from threaded rod
6 $1.04 The Hillman Group 44817 8-32 x 6-Inch Threaded Rod, 10-Pack Threaded rod for ball joints to connect bicep to effector.
3 $7.99 The Hillman Group 44817 8-32 x 6-Inch Threaded Rod, 10-Pack Servos that connect to bice. Most will work, but Hobby People has adequate ones for cheap
As needed Varies Washers,Flat,3mm DUB2109 and The Hillman Group 36-Count #6 x 3/8-in Zinc Plated Standard (SAE) Flat Washer Washers to separate arm from bicep and effector. Used to give arms maximum freedom.
1 $2.00 Like Hillman Rubber Grommet (5/16x5/8x5/8x7/16) Rubber grommet for effector to hold stylus
1 $4.00 Like Stylus pen Stylus for effector
1 $1.13 1 x 2 x 8 Spruce-Pine Furring Strip Body for robot
1 $1.13 1-in Zinc Corner Braces Braces to hold shape of robot
X $2 Bolt, fender washers and wingnut Bolt to hold robot to body

Friday, June 20, 2014

Obi-Wan Kenobi Light Saber Mod into an E-cig

Recently helped a friend modify an Obi Wan Kenobi .45 scale light saber into an e-cig.  The model is similar to the one in this Ebay listing, and is getting pretty rare.  They got the idea from a forum post that did a much less elegant job, but contains a slightly bigger battery.  Here are brutal steps for our build:
  1. Get the model disassembled.  You should end up with:
    • An end cap
    • Chromed plastic 6 spoke pommel cap
    • A die cast metal shroud
    • Plastic insert for metal shroud
    • Belt loop with screw
    • Red and brass buttons with screw
    • Die cast fore end
    • Plastic insert for metal fore end
    • 3x chromed plastic pins that hold the plastic insert inside the metal fore end
  2. Find a battery.  We were able to fit a 180mAh long cylindrical 3/8" diameter one into the case.  It had a button on one end that fit just right so the fitting just comes to the fore end and a hole can be opened in the plastic insert for the metal fore end to allow access.
  3. Vice the metal fore end by the wider cap (and not the base) into no-mar jaws and drill out the central hole with a 3/8" bit.  I would suggest a drill press for this operation, though a hand drill will do in a pinch.  A Dremel did not work for this due to hole size.  The metal is aluminium, so it shouldn't be too rough to do on most metal bits if you go slow and break your chips.  NOTE: we busted the spindly base off the wider fore end and snapped the 3  connecting bars by holding the fore end in the vice by the body of the fore end and not the cap.  They went back on with superglue after we matched up the shear patterns, but avoid this if at all possible.
  4. Gently vice the plastic insert to the fore end and drill it out to 3/8" as well.  While you have it disassembled, drill the hole for your the button on your battery as well.  NOTE: be careful not to deform the plastic insert in the vice.
  5. To reduce rattle inside the case, wrap some electrical tape around the parts of the battery that don't precisely fit (and are hidden in plastic).
  6. Attach a wooden or metal extension on the battery cap and drill it so the belt loop screw can be reinserted.  We used wooden dowel screwed onto the plastic cap at the end of the battery, then epoxied in place. The belt loop screw holds the metal shroud and plastic fitting to the battery in the same manner as the fitting and battery button hold the fore end tight to the battery.
  7. Attach your fitting and vape!
Fully Assembled

Coil Removed

Side View with all Vape connectors removed

Friday, May 23, 2014

Outlook 2013 Forms are Blank when Sent

I tried my hand at designing an Outlook Form.  The most frustrating thing for noobs seems to be that when they send the form, it appears blank.  For me, the fix wasn't in the first page of Google results.  Here's where I got my fix:

The problem was the Page setting.  By default, the layout for Compose (when entering data into the form) and Reading it (after being sent) are separate.  To fix this, uncheck "Separate Read Layout".  This will cause the form to be displayed even after it is sent.

Behat Error: PHP Warning: array_combine():

When I attempted to run a Behat Feature with multiline arguments, I kept getting an error.  In the console, the Feature Description lines would print, but the following error would print 3 times thereafter.

PHP Warning: array_combine(): Both parameters should have an equal number of elements in /home/testadm/LbX/vendor/behat/gherkin/src/Behat/Gherkin/Node/TableNode.php on line 133

After hours of searching, I found that it was caused by my arguments and the PHP function array_combine().  This function requires all arrays to be combined to have the same number of elements.  I can't reproduce it now, but these are possible solutions:

  • The simple solution: make sure all your cells have values.
        | Good  | Data | Data |
        | Bad   |      |      | 
  • Don't put comments after a line in a multiline argument.
        | key   | value    |  # No comments after a cell 
  • Make sure your scenarios containing multiline arguments have a semicolon after them.
    Given you have a multiline argument:
        | Data | Value |
        | Data | Value |
    Then make sure you have a semicolon at the end of the line

I'll update this post when I figure out the true cause.

Wednesday, May 21, 2014

My Github

And my first project:

The work in progress shots from the Misc Electronics post are for this repository.  Need to restore some changes lost after a kernel panic on my raspberry pi dev station and then it is a hop, skip and jump to release.

Wednesday, May 7, 2014

Arduino and Other Electronics Projects

Miscellaneous electronics and microcontroller projects:

Make and RadioShack's Drawdio:
Initial test of this 20x4 character screen.  Notice the Haiku
Small Screen Blues
Screens 20 by 4
Focus encoded messag
As haiku does

 First fully custom project.  Writing a 'guessing' game that uses a RadioShack RGB LED Strip, the screen, LEDs, and 6 buttons.  Already maxed out the memory of the little chip on the Uno R3.
 Moving my dev environment to Raspberry Pi.  The borrowed laptop I was using is going to be repurposed and will live in an inaccessible place.  Here is the Pi running the Arduino IDE.
 Used Google, and knowledge from a class at SYN Shop, the local Hackerspace, to remove and troubleshoot this module.  It is a Blower Motor Speed Controller from my car's AC.  I found out the transistor in it is bad, but replacing it would take more effort than it is worth.

Table Saw Rehab Results

Executed the checklist from a previous post.  Here are before and after picks of the absolutely filthy top.  Ended up going at it with Krud Kutter, then a palm sander with WD-40, then razor blades.  It is sealed using Minwax Paste Wax and is as smooth as glass.

These stains were caused by paint and primer used for preparing Warhammer miniatures:
 I may have abused the garage lights to maximize shininess:
I still need to fabricate something to choke off the cabinet and force more dust through the vacuum hose.  Also, the router table needs some work to make sure the melamine has all residue removed.