Monday, July 21, 2014

OFBC: Design and First Prototype

Note: This is part of the Project Write-up for OFBC: One Fluorescent Beer Coaster

Circuit Design

I began the search for parts to fit the Instructable, and I realized I had a lot to learn about each part.  To match the circuit, we searched Frys, Radio Shack, ebay, Mouser and many others online. For an unproven design, going with an unknown module and supplier wasn't an option. Instead, we found all the components we needed on Adafruit.

  • Lithium Ion batteries must be matched to their charger to avoid dangerous heat and combustion incidents.  Capacity is determined by the Amp-hours rating.  The LEDs I was targeting were a max of 350mAh, so I looked for batteries had to be over 1000mAh to get the targeted 3 hour run time.
  • The charger choice was mostly driven by battery choice.  We didn't feel like we could provide a mounted Micro-B port in the time available, but a charging circuit mounted to a full sized USB plug was a good substitute.  With the shell, we would provide an easily removable bottom and 'mouse hole' to allow the charger to live outside the case.
  • Most LED projects online mention heat at one point or another.  To get ahead of this concern, we opted for a heat sink-mounted super bright LED.  This same LED bead was seen on ebay without a heat sink, but we didn't want to screw anything up due to inexperience and opted for the more expensive package for the first run.
  • The Driving Circuit was a simple buy, and the choice also dictated our resistor purchase.  The key value from the MOSFET we purchased was Gate Threshold Voltage.  The voltage drop across R2 with the battery we bought had to match this value.  Using V = IR, R = V/I = 1.5V / 350mAh ~ 4 ohms.

Materials List

Name Description PID
Battery Lithium Ion Polymer Battery - 3.7v 1200mAh 258
Charger Adafruit Micro Lipo - USB LiIon/LiPoly charger - v1 1304
LED 1 Watt Cool White LED - Heatsink Mounted 518
Driving Circuit N-channel power MOSFET - 30V / 60A and NPN Bipolar Transistors (PN2222) - 10 pack 355 and 756
Resistors 100K and 3.5 Ohm Resistors Already Owned

Components, Breadboards and Protoboards, Oh My!

Once the materials were in hand, the breadboard went well.  It worked the first time!  While we waited for batteries to charge, we used a simple brick of 4xAA batteries.  The beauty of the driver we chose is that it can drive LEDs using any voltage source over the target voltage.



Using the breadboard and schematic, we attempted a protoboard version of the circuit.  This was a complete mess, and it took us a lot longer than it should have.  However, by the end of a single prototyping session, we turned a jumble of components into a working light.  One high/low note happened when we wanted to minimize the number of connections but didn't have the right resistor for R2.  We twisted two resistors together to get close to R2's 3.5 Ohms and put them through the same hole on the protoboard.  Instant parallel resistor!



Conveniently, the whole project fit under a Ziploc Container lid.  A little bit of hot glue, another section of protoboard with a hole in the middle, and charged batteries got us our first complete prototype!  It was brighter than the equivalent cell phone flash and had excellent diffusion through some purpose-bought Smirnoff Ice.

Touchscreen on Raspberry Pi

A friend has a few Elo Touchscreens from a past venture, and I have racked my brain trying to figure out a use for them. After giving up on Android PCs, I took a stab with a Raspberry Pi Model B running the Raspbian image from Noobs.  Two obstacles presented themselves:

  1. The Raspberry Pi only outputs HDMI.  For now, I'm going to try an HDMI to VGA converter. Better to get this thing off the ground than hem and haw about a 'better' solution.
  2. The touchscreen is inverted.  For this, I installed the xinput-calibrator tool per the instructions on the Raspberry Pi forums given by msmithy12 and a helpful config guide:
sudo apt-get install libx11-dev
sudo apt-get install libxext-dev
sudo apt-get install libxi-dev
sudo apt-get install x11proto-input-dev
download http://github.com/downloads/tias/xinput_calibrator/xinput_calibrator-0.7.5.tar.gz 
tar xvzf (downloaded file)
cd (downloaded file)
./configure
make
sudo make install
Then, from the menu: Preferences/Calibrate Touchscreen
  1.  Do not immediately follow the instructions given when you run calibration (place the calibration in a /etc/Xll/...).  Doing so borked my Raspbian install.  Instead, create the file specified in /usr/share/X11/xorg.conf.d/.  I ran "sudo leafpad 99-calibration.conf" to create and edit the file.  After dropping in the calibration indicated, I restarted and found out it stuck.  Woo hoo!
 I will update this space with my progress.  Currently, the setup is:
  • Raspberry Pi Model B ($35)
  • Elo Touchscreen ET1939L (Pre-owned)
  • BYTECC HM-VGA005 HDMI-A to VGA Female Adapter/Converter ($20)
  • 1 x WiFi Dongle (Ralink RT5370 chipset) ($10)

Lessons Learned


  • Single User Mode could have beenused to save my Raspbian install.  It can be entered by adding init=/bin/sh to cmdline.txt.  I was using Noobs, so holding Shift while the PI boots got me into the editor.
  • I like Linux more and more each project.

Friday, July 18, 2014

OFBC: Inspiration and Research

Note: This is part of the Project Write-up for OFBC: One Fluorescent Beer Coaster

The Idea

As night descended at Toxic Barbecue at DEF CON 21, everyone was working through the meat and alcohol they'd consumed much too fast and in much too large a quantity.  Rather than move the party somewhere else (Las Vegas' Sunset Park is safe at night, right?), we began to experiment with cell phone screens, then their flashes.  The lights were bright, but they were also extremely narrow in focus.  

The Liter of Light project gave us an idea to use a liquid to diffuse the light.  As there was still copious amounts of alcohol left behind, we started experimenting.  This 'research' lead us to decide that Smirnoff Ice was the best diffuser.  Filtered beers were awful due to both the dark bottles absorbing light as well as the liquid having no solids to scatter any that was left. Smirnoff had the clear bottle and label as well as a ton of solids from the included fruit juice.  As this was a hacker party and not for frat boys, we had plenty left. The misogynists among us named them 'Bitch Lights' after the colloquial term for Smirnoff Ice: Bitch Drinks.  We had our product; now we needed to separate it from the phones.


Research

DEF CON 22 planning made us realize that we needed to make good on our promises made while too intoxicated to realize we knew nothing about how LEDs actually work.  First stop?  The local Hackerspace, of course.  SYN Shop is in downtown Las Vegas.  Multiple forum members are lighting and electronics techs on The Strip.  They pointed me towards specific packages, drivers and batteries.  I took this foundation and boiled it down to specifics.  I wanted the light to be composed of the following elements:
  1. Super Bright LED (1W, 100 lumens)
  2. LED driving circuit
  3. Battery (3-4 hours of time)
  4. Charging circuit (USB)
  5. Switch to turn it on
  6. 3D Printed Body
Armed with search terms from the forum, I found a wealth of helpful links.  I found LED packages that fit the "Super Bright" definition all over the web.  I learned a ton about batteries and chargers (did you know Sears still exists and has an online store?).  The most helpful site was Instructables.  There, I found several LED driver circuits that I actually understood.  After a trip to Frys left me bewildered with options, I learned to better read datasheets.  Finally, I had a working circuit design.

Monday, July 14, 2014

Flames of War - SS Army Pics

This weekend, I returned briefly to the world of miniature war gaming.  My father is putting up his Flames of War army for sale locally.  He's a history buff, and I learned a lot about the German WWII army composition by helping him catalog these.  I built some of these pieces, but mostly I just took the pics.  No detail shots, unfortunately.
Artillery
I love the frozen ground effect on these bases

Misc Infantry
Misc Command 

Heavy Machine Guns 

 Mortar Half Tracks

Tanks
 Panthers

Reconnaissance Car/Tanks 

PIVHs with Skirts 

Tigers

Mechanized Infantry
 Platoon 1

Platoon 2 

Platoon Command 


Friday, June 27, 2014

R2B2

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


Inspiration

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. 


Build

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: http://www.slipstick.com/developer/designing-custom-forms/

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.