USB Steampunk Tube Display
This small project brings together electronics, programming, 3D printing, and artistic painting / airbrushing to make something kinda cool you can put on your desk.
The device will detect sound and turn on an LED which illuminates the vacuum tube temporarily. Colours will shift over time. Place next to a music speaker for a neat light effect as you get the tube to dance to music.
See it in action on YouTube:
Bill of Materials
- Qty 1 ($1 to $33) Vacuum Tube 8 Pin (does not need to be operational).
Mine was burned out while designing, testing and a tube amplifier. I made this project to make use of an otherwise useless tube.
This is the tube I used, though this should work with just about any 8 pin vacuum tube after removing the plastic centre pin to allow light into the tube. The JJ tubes are much less expensive if you are looking to buy a new one just for this project.
Note: I also saw lots of old/used tubes for sale on eBay.
- Qty 1 ($0.50 to $10) Sound detection breakout board (5V)
- Qty 1 ($0.25 to $1) Addressable LED (aka: NeoPixel)
- Qty 1 ($1 to $6) Arduino Nano (without headers)
- Qty 4 ($0.25) Brass Knurled Inserts
- Qty 12 ($2.50) M2x4mm Stainless Button Head Screw
- Qty 4 ($0.04) 8mm Silicone Pad Self Adhesive Feet (Optional).
This is not required, I had them in stock from a previous project.
Only supports touching build plate.
Note: There are covers on the knurled insert holes to prevent supports from being created inside provided you only allow supports touching the build plate.
The bottom plate doesn't use supports, though it doesn't matter if they are enabled.
Remove the supports from inside the display body.
I use a pin vice with a long M2 screw in it to tap the holes for the M2x5mm decorative screws
Tap M2 decorative screws
Install knurled fittings
Cut out the plastic cover on the holes for the knurled fittings with a hobby knife. These holes are covered to prevent difficult to remove supports from forming inside the hole.
Using the the pin vice and M2 screw, I hold an M2x4mm brass knurled fitting, heat it up with a soldering iron then press it into place. Once placed carefully align, unscrew, and leave the knurled fitting to cool.
Installing knurled fittings
Cleanup the plastic parts, drill out the the tiny holes
I used a pin vice and 0.40" drill bit.
9x holes on the side for the mic
4x holes on the bottom for the Arduino Nano indicator LEDs
Use the back side of a hobby knife to nock off the lip from where the part came in contact with the 3D printer build place.
Use a knife to cleanup the USB port hole
Test fit the electronics, and bottom cover before proceeding
Clean up small holes with .040" drill bit
Test fit the tube, screws, and bottom plate before proceeding. If small adjustments are needed, use sand paper, file or knife to make sure everything fits nicely.
Modify the vacuum tube
Most 8 Pin vacuum tubes are not setup in such a way as to allow light to enter from the bottom of the tube. To remedy this, break off the bottom plastic centre pin as shown in the image.
The left tube has the plastic centre removed, the right tube is unmodified.
I weakened the base of the plastic pin with a Dremel tool, then was able to break it off fairly easily. Maybe someone else has a better idea of how to do this.
Note: Once you have done this, it is possible to install the vacuum tube incorrectly into vacuum tube devices. Please be careful use the tube for display purposes only after this modification.
Note: Another alternate modification might be to drill a hole in the bottom of the plastic pin only deep enough to let light in, but not so deep as to drill through the glass. If done correctly the tube would remain serviceable.
Remove the large plastic centre alignment pin
Tip: I removed the 3pin header on the sound detector and wired directly to the holes in the PCB.
Connect Arduino Nano D6 (Digital Pin 6) to the Din (Digital In) pin on the LED (I routed this through the hole in the middle of the sound detector board so the wires route nicely when installed in the case)
Connect Arduino Nano A0 (Analog Pin 0) to the OUT (out pin) on the sound detector
Connect the Arduino Nano 5V to the VCC on the sound detector top side.
Connect the Sound Detector VCC bottom side tot he 5V on the LED
Connect Arduino GND (Ground) to the GND (Ground) on the Sound detector
Connect Sound Detector GND bottom side to the gnd on the LED
Connect your Arduino Nano to your computer and upload the code provided in this thing. (SteampunkVacuumTubeDisplay.zip)
note: you will need to download and install NeoPixel library into Arduino IDE.
Note the potentiometer (blues square part with the X in the middle) on the sound detector adjusts the amount of sound required to trigger a sound detection. Adjust this screw until the decide reacts to the sound level that suits you.
Push the LED into the centre hole
Press fit the sound detector in place
Press fit the Arduino Nano in place
Should you wish to plain your models, it is best to take the time to clean up the surface.
Sand by hand using ~ 150 grit
Apply glazing putty
Wet sand using ~ 320 grit
Wet sand using ~ 800 grit
Repeat this process (or portions) until you have a reasonably smooth finish.
Tip: If you can feel roughness with you finger, it is best to keep working on it before moving on
Tip: Pick out glazing putting from the holes while the putty is still soft to make things easier late
Glazing Putty after sanding 320 grit
Glazing putty after sanding 320 grit (base)
Prime and wet sand with 800 grit
While you can use all sorts of paints, I used Model Air Metallic for this thing.
Black, Copper, Bright Brass, Rust
I also used Aluminum (for letters), not shown in the picture
Applying layers of various mixtures increases the depth and age of the finish.
Copper base coat
Add layers, and apply a wash (very thin mixture a dark colour)
Added letters using a vinyl stencil, dry brushed dark and light colours to give extra texture
You can clear coat with whatever you want, I use acrylic floor finish - mainly because it is cheap and airbrushes right out of the bottle.
Many light coats, you can apply a cross coat every 10 minutes if you keep the coats thin.
II added optional rubber feet
The process of designing anything for me is iterative. I have yet to successfully design anything useful or successful without validating and learning from mistakes. There are much more skilled designers out there. They likely require less cycles than I do to create something, but that is likely because they are exceptionally good at learning from past mistakes.
The following image shows the first version of the display base. It was helpful to pickup the part, look at it, feel how stable it was on the table, and determine if I want to make any significant size changes to it. It is much easier to make those changes now before I add detail which would have to be modified or redone when making a significant change to the base size/shape.
First print on the right - solid base, no internal structure, or external detail.
The collection of prints which lead to the final Thing.