There are many spool holders out there. The problem is there are many spool sizes that makes it hard to build a universal one that works well. I decided to make a spool holder that mounts horizontally and uses the weight of the spool itself to keep the spool in place.
This is version 7 of my design, it’s still in progress and was a good motion study for the joints in CAD. How will it work in practice? We’ll soon find out.
This year my goal is to focus on designing more complex assemblies that rely on gears, joints, or parts that leverage the flexibility of the material itself to its advantage as in compliant mechanisms. https://en.wikipedia.org/wiki/Compliant_mechanism
This part is very specific to my sink, although I could probably rebuild this so the ring clips utilize the flexibility of the material to expand or contract allowing more generic fits.
It’s ugly, I know, but functional. The main exercise here for me was to design pieces that snap together, with the correct tolerances for my machine.
Not sure why, but I wanted to create my own street light. It features LEDs, an ESP8266 microcontroller with WiFi and notifications, resin-cast lenses from silicon molds, 3D printed parts, as well as some store bought piping.
3D printer (Creality CR-10)
dremel with saw attachment
hot glue gun
C/C++ (Python3 server)
black and clear PLA filament
2 part silicon mold compound
2 part epoxy resin compound
food coloring and epoxy tiny
M2 bolts and nuts
grey filling undercoat rattlecan
high temp matte black paint rattlecan
ESP8266 micro controller
I eye-balled the design after staring at pictures of street lights. I noticed that they are different everywhere. Some have fully round covers, others are cut out like I have. Some have small backs, some large. Some are black with yellow outlines, some don’t. The pro is that I just need to design something close, the con is that there’s no single classic design.
The above files were all designed in Solidworks. They are meant to be assembled using M2 bolts/nuts to give it the industrial look. I didn’t design the pole/stand yet because I wanted to get a feel for the size first before deciding on the pole height and thickness.
I was really unhappy with the “transparent” PLA that i used to print the lenses. There were 2 versions I printed in attempting to get it clear. They were a big fail, but I ended up using it to make a silicone mold which I use to cast resin which worked out much better!
Of course my existing silicone compound had expired. I didn’t even know they have expiration dates. You can see it’s nearly full, only used it once for a test. Had to buy compound as these have about a 1 year shelf life, or a few months if you open the bottle.
I used a glue gun and foam board to put together a tiny box for the mold. I also glued the lens the bottom to prevent it from shifting.
The mold takes about 12 hours to cure. There was absolutely no smell, and the compounds were easy to clean, unlike 2 part epoxy resin.
I normally color resin with a few drops of food coloring, but usually you can use acrylic paint. I bought some resin coloring just for kicks and the green came out perfect. The red however was way to opaque and I resorted back to food coloring to get a more translucent resin.
Green and yellow came out perfect the first time. Red took me 3 times to get right. I don’t have a degassing chamber so there are tiny bubbles, I think it will help with diffusing the LEDs under. We shall see!
ESP8266 is a 3.3v controller. 8212b is a 5v signal. Here I am doing a quick prototype test to see if the signalling works… spoiler alert, it didn’t. Adafruit’s NeoPixel library didn’t like it.
I used 5v neopixels (8212b) to form an array of lights, 10 LEDs for each street light. I mounted card stock under it to help with the color and adhesion.
Using 5v Arduino Nano I was able to get good signalling to the 8212b neopixels. However, this needs WiFi so I switched to a beloved ESP8266 3.3V microcontroller. I could not get the signal to work correctly using Adafruit’s NeoPixel library. Instead I had to switch over to FastLED.
I used my trusty Rigol to try to diagnose the difference between the signal libraries. At the end of the day, I don’t have time to debug the Adafruit library and running with FastLED. Also look how clean the signal is! those series resistors really help with bounce!
I bought a cheap PVC pipe to use as the metal light pole and just fabricated the base, cap, and mounts. I then painted everything with silver/metallic paint which came out much better than I expected. I had to sand the smooth PVC pipe a bit which gave the paint a grainy metal finish which was perfect.
The base fit the PVC pipe perfect, thanks to my trusty digital caliper. The base is slightly hollow to allow the ESP8266 controller to fit within the base flush. The only thing that is needed is a 5v micro USB cable which I left a cutout for.
Above is the C/C++ source code for the light itself. In order to keep code flexible, it acts as a thin client that connects to WiFi and listens to requests on the LAN via UDP packets to port 31337. I chose UDP just to keep it simple. I didn’t need any packet acknowledgement because I consider this low priority traffic (pun intended).
Basically light turns on, connects to wifi, then waits for a light pattern to be received. The pattern then plays continuously until the next pattern is given. The code is organized as a basic solid state machine with only 2 states for the time being.
The pattern string is 2 characters.. “XY” where X is the color (or brightness intensity) and Y is the time interval. R is red, Y is yellow, G is Green, C is clear. If the first character is a number 1-5, then that signals (pun intended) the light to change the brightness. Finally, the letter E specifies the end of the sequence.
For example, “11R5C1R355Y3C5E” – Sets brightness low, then long red light, quick clear, medium length red, set max brightness, medium length yellow, then clear for a long time, then repeat. Currently there is no way to turn on more than 1 light at a time.
The server side code is where all the heavy lifting gets done to monitor weather, stocks, pings, and other fancy events. I thought about building all that into the light to be standalone, but then realized how spoiled I am with high level coding and didn’t want to bother.
I’ll post the server-side code later after a bit more work. It’s running on Python 3 right now. I’m currently working on it to allow “plugins” so anybody can add a plugin for “weather”, set their own thresholds, and design their own light patterns for each event.
Ok, I got kind of lazy here. I used hot glue to mount the ESP8266 board to the bottom, and used an old broken USB cable to power it via the Vin pin. The board itself runs at 3.3v but the Vin pin accepts 5-20V dc. The broken USB cable red/black wire is a 5V/gnd and I cut off the extra data cables.
I’ve been running this and slowly iterating the code on the server-side. It works great, just writing new plugins when I get the time.
The big black panel was 3D printed.. what a waste of time. Next build I would opt to use the laser with a piece of acrylic or plexiglass instead just for durability and time savings.
My first 3D printer was the gateway machine into the world of design and fabrication. Many years ago, thought 3D printing was way out of my reach. Now, printers are pretty common and the technology is stable yet still growing rapidly.
I found an online deal on an ANET A8 DIY printer for $150 and cut my teeth on that machine. It was modded like crazy using parts printed from the machine itself, and in due time, everything on it broke and was replaced one way or another. The bed, nozzle, controller, power supply, it was a rough but wonderful learning experience.
This Creality CR-10 was my second FDM (fused deposition modeling) printer. Almost 3x the price, but 10x more reliable, simple, and sturdy. If you want to learn things the hard way (like me) then get a DIY kit and build it yourself. If you don’t find joy in things breaking and waiting for replacement parts, then get this.
No machine is perfect (or maybe that’s my excuse to mod things). Here are some tips that will make this machine amazing.
The bed is the flat heated area that the material is layed out onto. This printer comes with a thick square glass sheet usually made of borosilcate glass which is particularly able to handle fluctuating temperatures.
The piece of original glass that came with my printer was warped. I’m not sure if was always warped, or became warped with the tens of thousands of hours of use. The first layer of print was getting really difficult because some areas were too squished, other areas the plastic would not stick. Always check your glass with a metal straight edge to ensure flatness. There are some people that “fix” warped glass by padding areas with tape. I tried that, didn’t work, decided to spend $22 and now my printing area is perfect.
Now that your printing bed is perfectly flat, it’s time to get the material to properly stick to it. I’ve tried everything, Aquanet hairspray, blue painters tape, masking tape, even slurry. The solution people seem to like the most is Kapton tape or PEI. Currently, I am using a special adhesion surface that seems to be working very well.
These square plastic sheets seem to work very well. The caveat is that they definitely need to be cleaned with isopropyl between prints. Even though your parts may seem to come off perfectly, there is definitely a chemical residue that it leaves behind which makes prints eventually not stick to the surface.
Blue painters tape works very well. However, the blue color will stain and stick to your material and it is quite difficult to remove the piece from the glass bed. If you are having a hard time getting a piece to adhere, I would fall back on blue painters tape.
Remember that the object you’re printing also affects adhesion. If you’re printing a large object, plastic shrinks when it cools down, so the piece is likely to curl and pull away from the bed. In those instances, you need to think about printing with a “raft”.
The extra wasted material on the edge of the object helps give it more surface area to stick to the bed.
Machines that serve a single purpose are fun. But it’s even more fun to combine different materials and machines. I decided to make drink coasters that were laser cut out of foam place mats and print 3d coasters and a holder to test all my filaments for moisture.
cork placemats from IKEA
tons of different filaments (PLA and wood)
This build is pretty simple. I cut out 80mm circles from the cheap cork placements I got from IKEA.
The real reason to make these is to test my filament. All filament spools are subject to moisture which causes print quality to have issues. With PLA, you will hear cracks and pops (which is the water vaporizing at 200C) and the prints will become flakey and uneven.
Several of my PLA spools were damanged from long term exposure to humidity. If you want to test filament without printing, simply bend it and if it snaps easily, then there is moisture in it. Good dry filament should be able to be bent (permanently deformed) but not snap.
In order to fix filament, you can put it in the oven at about 140F-160F for a few hours.
I didn’t want to use the oven and preferred to do a longer slow moisture extraction, so I used my food dehydrator, removed the top, cut a circular hole in a cardboard box, and put the top of the blower in the hole. I also cut out air outlets at the bottom of the box to allow the air to flow out from top to bottom.
After drying out the filament, the prints started looking much better. No flaky surfaces or brittle filament. I then designed a holder for it that fits 6 coasters.
This special wood-infused filament can be stained like normal wood and even smells like charred wood when printing. Overall, happy with the coasters and it was a good exercise in understanding the affects of moisture and how to fix it and save my spools.
It’s not too late but I want to add engraved logos on the coasters to make them a little more interesting. Not sure what the logos should be yet, but it should be easy to throw under the laser and etch in.
I custom designed in OpenScad this front of the cannon with LEDs
The back was designed to have holes exactly the size to mount LEDs in. The pieces were printed with “translucent” PLA to diffuse the light.
I found a mini helmet online and printed a small scale version of it.
This is the assembled first print. There was so much sanding that I had to do. I learned a lot about how to fill holes and smooth out the lines in the print. The support material that was broken off left so much work to be done.
Especially around the yellow lightbar the print was really rough. The post prep on this part was intense.
Did about 5 sessions of filling and sanding with bondo before I got it to a point where it was nice and round. Here’s me holding the canon. It has a handle inside. Still need to build the electronics.