Category Archives: Electronics

LED Bridge Lamp Base

As I worked out the details of my version of the LED Bridge Lamp by my friend Janis (Opossums) Jakaitis, one of the things I wanted to tweak was the base.

The modifications I focused on were:

  1. Lower the risk — the original base was a very large piece that would take about 25 hours to print and if something failed that would be a lot of time and material to lose so I broke my version of the model into pieces
  2. The slots/vents were slightly asymmetrical so I made my own variant of that so I could print on the side and keep the lines clean compared to printing them vertically
  3. I needed a way to handle height differences in the surface where I’d install the light * *

** The location in my cubicle at work where I wanted to to install this light has two different heights — the metal wall is about 1.5 inches higher than the top of bookcase so I needed a way to compensate for that. My solution will allow you to handle any reasonable height difference you want to tackle.

Here is a finished and an exploded view of the bases: 

Figure 1: All the parts that make up an Enhanced LED Bridge Lamp base
Figure 1: All the parts that make up an Enhanced LED Bridge Lamp base

While my bases look very similar to Janis’ models they were created from scratch but designed to emulate the originals and add a few new features you’ll see as we walk through this post. I also eliminated a few design details like the screw holes (replaced by my magnet solution) and the transition to the cap piece.

Print Details

What did you wind up printing? (Quantities are for what I built, you may need to change them to meet your needs) 

  • Qty 2: Side (side.stl)
  • Qty 2: Side with Power Outlet (SideWithPowerOutlet.stl)
  • Qty 2: Electronics Tray (Electronics_Tray.stl)
  • Qty 1: Base Height Spacer (Base_Height_SpacerV2.stl)
  • Qty 1: Base Height Spacer Tall  (Base_Height_Spacer_TallV2.stl)
  • Qty 2: Magnet Space Filler Block (Magnet_Space_Filler_Block.stl)
  • Qty 2: Center — the core of the base (Center.stl)
  • Qty 2: Cap (cap.stl)
  • Qty 2: Baseplates (BasePlateMamaWithCableHoleV2.stl)
  • Qty 3: Clips (ClipV2Loose.stl)
  • Qty 2: Foot Height Extensions (This STL can be found in Janis’ lamp here)

Material Used: Polymaker Polylite PLA in ‘True Grey’ 

Print Settings:

  • I printed all the side parts with a brim to decrease the likelihood of warping
  • 20% infill, 0.25mm layer height
  • 210C Nozzle Temp

Additional Supplies: 

  • Qty 4: 90lb Neodymium Cup Magnets
  • Qty 4: M4 Flathead Machine Screws
  • Qty 8: M4 Machine Screws (double up the nuts so they don’t back off — or add a lock nut)
  • Qty 8: Hex Button Head Machine Screws to secure base sections to each other
  • Loctite 401 Glue

Build Details / Notes: 

Printing a side of the base
Printing a side of the base

When printing the pieces called out in the print details section above I printed all my pieces with a brim to help reduce or eliminate warping.

Printing the electronics tray with a brim
Printing the electronics tray with a brim

The elements of an assembled base (1 regular side, 1 side with power outlet hole, center, cap, riser and base plate) are designed to fit inside/on top of this electronics tray. The tray is designed to also secure an Adafruit 1/2 size Perma-Proto board which is what I used to house the electronics that control this project. (More details on that in an upcoming post) The tray also provides supports for the height spacer which keeps the magnets in the proper location.

NOTE: You may want to print the tray 1-2% larger in the X and Y dimensions. Otherwise you may find yourself using a fixed belt sander to thin things out a bit. Guess how I know that? 😉 And my machine is really pretty well dialed in.

Electronics Tray Rendering
Electronics Tray Rendering

The height spacers below were designed to align themselves under the electronics tray via the little standoffs you can see in the image below. The height spacer also keeps the magnets secured as the base gets moved around.

Height Spacer
Height Spacer

The height spacer can be extruded to make it as tall or short as you want.  The spacer above is the minimum height as it is the same thickness as the 90lb strength magnets.

Height Spacer (Tall)
Height Spacer (Tall)

As you can see above, extruding this model to make it taller is straightforward. (You can do it by editing the model or in a pinch you can scale the z axis as needed and trim the alignment tabs if they get too tall as a result of the Z scaling)

Magnet Spacer
Magnet Spacer

For taller spacers I also designed a filler block to make up the space between the magnet and the bottom of the electronics tray. The model can also be scaled in the Z axis to adjust the height.

Assembling the base
Assembling the base

The electronics tray also makes a helpful aligner as you glue up the base pieces. I used some small clamps to hold the sides and center together as the glue dries — only takes about 1 minute to dry enough.

NOTE: Be careful that you don’t glue your base into the electronics tray.

In the lower half of the picture above you’ll see the baseplate sitting upside down in the height riser so that I could glue the blue clips in place. Once the clips are secure I flipped the plate over and glued it on top of the height riser block.

Base plate with clips glued in place and glued to the height riser block
Base plate with clips glued in place and glued to the height riser block

NOTE: The base plate on one side does NOT require the clips.

Be sure to test fit your bridge section and the two plates and file as needed to make sure you have a good snug fit. Filing usually meant squaring up the underside of the clip to make sure it squarely engages with the bridge superstructure section.

Testing out the base
Testing out the base

The base plate is glued to the top of the height riser. That assembly is glued to the cap piece (it has a nice indent in there to make alignment easy) and that second assembly is glued to the top of the base (center, side and side with power outlet hole)

Completed base pieces (angle)
Completed base pieces (angle)

You can insert M3 button head screws into the holes shown below to secure the top section of the base to the electronics tray. The screws tap themselves into the plastic and hold well.

Completed base pieces (side)
Completed base pieces (side)

Examining the underside of an assembled base section you can see how well the magnets fit.

NOTE: Use two nuts on top of the screw securing each magnet so they don’t get loose.

I installed the electronics into the taller of the bases and drilled a small hole to allow the USB cable to pass through so I could flash new firmware onto the micro controller after the lamp was installed.

Assembled base with button head screws installed and testing the wiring
Assembled base with button head screws installed and testing the wiring

If you have any questions about building the base, please let me know in the comments section  below.

You can navigate back to the Enhanced LED Bridge Lamp Summary here. 

Take care,
-Bill Rainford
@TinWhiskerzBlog
@TheRainford

 

Adafruit Feather BLE + NeoPixel Lamp

Like any red blooded engineer I like nice designs, shiny objects and blinking lights. One of the projects that burrowed its way into my subconscious and helped push me over the edge into buying a 3D printer earlier this year was the Adafruit Feather BLE + NeoPixel lamp with 3D printed Voronoi Shade that plays some animations by the Ruiz Brothers over at Adafruit. It’s a great addition to any office desk or maker workbench. After playing with the sample code which simply played a short animation when you pressed a button in the app I decided to augment the code to continuously play animations and add a few more to the mix.

Feather BLE light paired with iOS app
Feather BLE light paired with iOS app

You can view detailed step/by step instructions on printing this lamp  here on the Adafruit Learning System.  What follows in this post is a description of what changes/modifications I made to the build and additional functionality I added into the software running on the Bluefruit Feather.

Check out this video showing what I did with the software for this project here:

Software Revision Highlights:

  • Currently selected animation will loop continuously without interruption (Original sample plays 1 animation and stops until another button is pressed)
  • Cleaned up animation library/methods, fixed some issues with Adafruit sample code and finished off some incomplete methods
  • Added additional animations to the up, down, left and right buttons in the Adafruit Bluetooth application

You can find the source code for the demo used in the video here on GitHub.

3D Print complete, not gather up the required electronics
3D Print complete, now gather up the required electronics

Notes on Building This Project: 
I printed the base out of ABS filament and the Voronoi shade from light blue translucent PLA filament. I chose not to glue the shade onto the top ring of the base as I like to be able to show off the electronics. I friction fit the clear disk into the bottom of the lampshade so it stays securely as one piece. I also omitted the battery as I only plan to run the lamp in an office setting wherein I have access to plenty of USB ports.

Solder and assemble the light
Solder and assemble the light

BIG NOTE: As this caused me some headaches and wasted time. In the Adafruit Learning System write-up for this lamp, make sure to follow the Fritzing circuit diagram here and NOT from the step by step photograph here. The photograph shows one of the blue wires going into ‘BAT’ and not the expected ‘3V’. You should be powering the NeoPixels off the 3V pin.  

Flash the firmware and test the rig before final assembly of the case.
Flash the firmware and test the rig before final assembly of the case.

Once I finished all the soldering I fit the board, wires and ring into the bottom half of the base and flashed the firmware onto the device and made sure it lit up and worked as expected.

Lid screwed in place to help secure the NeoPixel ring
Lid screwed in place to help secure the NeoPixel ring

Next up I screwed on the top half of the base and started working on the animations I wanted to use and assigned them to various buttons in the Adafruit ‘Bluefruit’ application.

Running animations
Running animations

Last up was testing the completed lamp. It lights up a dark room more that I expected which is nice and is clearly visible in a well lit room. Some of the animations in the above video are far better in person as the DSLR tends to blend a lot of the mixed colors into shades of white — you’ll have to see it in person by building your own.

Red alert, incoming message
Red alert, incoming message

With the above lamp completed you can also tie it into the IfThisThenThat (IFTTT.com) ecosystem via Adafruit IO.  IFTTT allows Internet of Things (IoT) devices to react to a surprisingly large amount of interesting stimuli — if you get a certain type of email, if your phone shows up on your home wifi network, if an IoT sensor gets a certain reading your device and react to that message and carry out your desired task — its an incredible system and will be the focus of my next post, stay tuned.

-Bill
@TinWhiskerzBlog

P.S. If you build your own variant of this project, please leave a comment and share your thoughts and modifications.