13. Machine Week

This week is dedicated entirely to a group assignment. We need to design and make a machine. Fun! I’ll be documenting my contributions to the group assignment here on my personal site.

Make sure to check out the Full Documentation on the Reykjavik Site.

The Machine

We’ve decided to recreate the Hackclub Blot. My job for this week is to redesign the 3D-Printed/Mechanical parts of the design. I’ll mostly be basing this off the pre-existing .STLs from the Github Repository but as an additional goal I want to reduce the number of 3D-Printed parts by making as much of this as possible in the laser cutter.

Time management

I wrote down a rough personal schedule for this week.

Thursday the 10th

  • Go over the parts.
  • Import them into Fusion
  • Do a rough mock-up for each part
  • If feasible, do a test-print/cut

Friday the 11th

  • Finish mockups if necessary.
  • Make improved parametric versions.
  • Start manufacture.

Saturday the 12th

  • Finish manufacture and assemble mechanical parts.
  • Integrate PCBs if possible.

Andri suggested documenting what I’ve done every two hours. I’m gonna play around with that idea by setting a literal two hour timer and writing things down at those fixed intervals. I ended up missing quite a few of those two hour timers. But the following are at roughly regular intervals:

Status Reports

  1. I accidentally missed the timer and forgot to write anything down. It is now 21:24(9PM) and I’m still working on the first part. I had to leave the lab and go home to use my desktop machine since even looking at the original mesh made Fusion crash. On the home machine I’m at least able to use it as a reference in Fusion.

  2. Messing around with meshes in Fusion is always a pain. I realized I can use PrusaSlicer’s measurement tool to get quick measurements off the .STL. It’s way faster than doing it inside Fusion.

  3. I finished the Belt Clip and Carriage Assembly. Made two separate versions of the carriage assembly. One that’s all laser-cut plexyglass and another that’s fully 3d printed. The laser-cut version requires four 6mm standoff pins that I designed as a separate component. The designs are all semi-parametric. Enough to the point where the design should be adjustable on the fly.

  4. Woke up, Did some more CAD. Mostly just double-triple checking whether the screws we’re using fit and if the carriage assembly thickness matched the original Blot’s thickness.

  5. Started off by printing the complete carriage assembly with the 6mm conical standoffs. Mounted the Rubber V-Wheels and it fit snugly onto the Aluminum extrusion. This version is completely 3d printed. I’ll need to either print extra 6mm standoffs and slot/glue them into the other side to account for the other wheels or print a version with standoffs on both sides. Probably doable if I print I print it turned by 90°.

  6. I cut out the plexy version in 5mm acrylic. Using the vinyl transfer tape on the underside of the plexy to reduce the burn-marks. The settings I used were Speed 2, Power 100%, and Frequency 100%. This was on the Epilog Fusion. Pieces fit together correctly. I’m now waiting for the pins to finish printing. I’ll do a test fit and see how it compares to the 3d printed version.

  7. After lasercutting and partially screwing the carrier assembly together I realized the spacing for one side was off by quite a bit. I checked my original sketch and it was way off. Luckily everything was parametric enough to the point where I was able to re-position it by changing the initial measurement. Almost the entire design is a driven dimension relative to the screw hole positions so changing this in the original sketch adjusted all of the rest with no errors.

  8. Adjusted the file and cut the new version. Fits perfectly. Can move the gantry around smoothly and with little to no play. Now printing the remaining pieces. Need to check if any of the servo motors we have here match the one they used for the original machine.

  9. In my impatience to rush the print I increased the speed to 150%. The Prusa MK4 usually handles that just fine but it threw a “stuck filament” error. I’m guessing the filament slipped and the machine detected that. In my effort to save 30 minutes I ended up wasting 20. Oh well. Resumed the print at 100% speed.

  10. With the prints finished I semi-assembled the machine. But the mix of 3d printed and transparent plexy parts didn’t look cool enough. So I’m going to redesign the legs to use the same 5mm Plexy as the carriage assembly.

  11. Cancelled the leg idea. Didn’t seem worth the effort. Managed to run the machine and get it drawing using Evert’s board. The tool head was way too tight at first but I modified it to have a .5 mm offset between the wheels. That version had a lot of play so I’m redesigning it from the ground up with new custom-defined tolerances so it can work without the eccentric nuts.

  12. After a lot of measuring and calculations I discovered the original blot tool head places the wheels at a .2 mm in-set, That explains the original head being way too tight. I designed a new parametric version defined relative to the original. So I reduced the spacing by .2 mm. Printing that version now, Let’s hope it works. Also modified the pulley by adding a nut and increasing the number of teeth from 20 to 25. The increased tooth-count is mostly to increase the diameter to make room for the nut.

  13. The .2mm adjustment was still too tight. I’ll do a test print shifting it by another .2mm. Here’s to hoping it works.

  14. The .2mm adjustment turned out to be just right after all. It’s not a reliable tightness but for the time being it’s good enough. The lack of eccentric nuts and the diameter of the holes means the bolt can wander off-axis changing the tolerance. Luckily the .2mm version has the bolts wandering into just the right tolerance after a while. So installing it while it’s “too tight” and sliding it up and down a few times loosens it up to just about the correct tightness. I was also able to push on the wheels to adjust the tolerance. If I wanted to make a “perfect” version I’d adjust the hole diameter 5 or 5.1mm (When using M5 screws) instead of 5.4mm. This would get the printed part to hug the bolt tighter keeping it in-line with the axis.

  15. With the new tool-head installed the machine works like a charm. Straight lines are straight, It can lift and lower all day without any issue. I’m satisfied with the accuracy on display here.

  16. Dis-assembled the machine intending to record a timelapse and finalize the BOM. Here’s the completed labelled teardown made from several stitched together images (Adobe Photoshop): Parts

  17. While disassembling it I also designed and added the PCB mount. It’s a flat surface using Velcro adhesive on the backside of the PCB.

  18. Timelapse recording failed, The camera I was using stopped recording after the first few minutes. That covered the bearing/wheel prep but nothing else. Dis/Re-assembly would take two hours and I just don’t have the time for that. But at least the BOM is finalized.

Bill of Materials

Part Name Quantity Description
USB-A Cable 1x USB-A Extension Cable for power
USB-C Cable 1x USB-A to USB-C or USB-C to USB-C for RP2040 power and data
PCB 1x The board with RP2040 and Stepper drivers. See Reykjavik Site
5mm Plexyglass Pieces 10x Bottom Plate with Hex holes, Second bottom plate with circular holes, 4x top pieces with hex holes and 4x top pieces with circular holes. See production/design files below
3D Printed PCB Mount 1x See production/design files below
3D Printed Tool-Head 1x See production/design files below
3D Printed Belt-Clip 1x See production/design files below
3D Printed Legs 2x See production/design files below
3D Printed Carriage Rail 1x See production/design files below
3D Printed GT2 Pulley 2x See production/design files below
130 cm GT2 Belt 1x Single long belt, We initially purchased two shorter ones by accident.
Stepper Motor 2x Nema 17, 42 x 42mm, 38mm tall. Cables needed if not included, 20mm
M3x10mm Bolts 10x Button Head, 4 for each stepper face and 1 for each pulley
M3 Nuts 2x 1 for each Pulley
M5 T-Nut 5x The original blot used 12 pieces but the 3D printed parts hug the extrusions well enough that I only used 8 as they can be a pain to install
M5x12mm Bolt 8x Go into the T-Nuts.
5x16x5mm Bearing 6x Used instead of the flanged bearings. 4 for the main carriage and 2 for the carriage rail
M5x30mm Bolt 4x For the main carriage assembly
M5x25mm Bolt 1x For the Carriage Rail
M5 Nut 17x 16 for the carriage, 1x for the rail
250x20x20mm V-Slot Extrusion 2x Make sure to check for dents/scratches from shipping. One of ours was a bit beat up
3D-Printed “Flanges” 10x See production/design files below
SG-90 Servo 1x We used a “TowerPro Micro servo 9g SG90”
M5x40mm Bolt 12x These were for the wheels and the tool head, Knurled knob ends and the last 10mm are smooth with no threads. Probably not necessary but nice quality of life for adjusting the wheel tension and making sure the bearings don’t catch on the threads.
3D Printed 6mm Standoff 8x See production/design files below
625zz V-Wheel 11x 8 of these on the central carriage, 3 on the tool head

Debrief

The final blot-recreation was using two of the original hackclub blot designs. Here is the folder containing the originals on their Github page.

Here’s a list with each part and the modifications made, if any:

Belt Clip:

  • Re-Drawn from measurements in Fusion
  • Tightened gap between faces.
  • Sharpened teeth

Carriage:

  • Re-Drawn from measurements in Fusion
  • Made from four plates of 5mm Plexyglass instead of the 3D print and 1/8” aluminum plate.
  • Wheel tolerances adjusted to account for lack of eccentric screws
  • 3D-Printed 6mm standoff pins slot into plexy to lift wheels from surface

Printed Rail:

  • No modifications made

PCB Mount:

  • Not added yet. PCB not finalized

Toolhead:

  • Re-Drawn from measurements in Fusion.
  • Distance between wheels adjusted and bolt hole diameter shrunk to reduce play.

Legs:

  • Started re-designing but ultimately used original design.

GT2 Pulley (Credit to @bequ3 on Printables.com)

  • Added slot for nut, “Sharpened” Teeth and increased number to 25

Having to re-design/parametrize STL files is surprisingly tricky. The quickest method turned out to be using PrusaSlicer’s measurement tool. Here I measure a feature in PrusaSlicer before converting it to a rough parameter in Fusion.

PrusaMeasure FusionParameter

This isn’t perfect as changing the screwholediameter would move the location of the hole. But for this it’s good enough. I could set the parameter differently to account for this but I’d have to define the location of the screws relative to eachother rather than to the edge.

Design Files

Here are the design files for parts that were changed around. If not listed here, Refer to the original HackClub Blot

Filename Type Description Link
CarriagePlateAssembly .f3d The Lasercut 5mm Plexyglass version of the Carriage Plate Assembly, This is the one we ended up using. Link
CarriagePlateAssembly3D .f3d The 3D-Printable version of the Carriage Plate Assembly, Requires 4 6mm standoff pins Link
GT2Pulley .f3d 3D Printed GT2 Belt Pulley, Original Design Credit goes to @bequ3 on Printables.com Link
ToolHead .f3d This one was surprisingly tricky due to the wheel spacing. Link
BeltClip .f3d I tightened the teeth and “Sharpened” them by decreasing the diameter of the circle Link
PCBMount .f3d The center gap for the extrusion is 21mm. If you’re confident in your printer you can set it closer to 20mm. This part is hard to print and I definitely want to make a support-free version but I ran out of time. Link
6mmStandoffPin .f3d These fit into “ScrewHoleDia” in the other files. Link

Production Files

Here are the production files for everything. If not listed here, Refer to the original HackClub Blot

Filename Type Description Link
5mmPlexyPiece .pdf Cut on Epilog Fusion, Speed 2%, Power 100%, Frequency 100% Link
6mmStandoffPin .3mf Print as oriented. I added a brim for better adhesion. Link
BeltClip .3mf Should print without supports, Make sure the teeth are printing cleanly Link
CarriageAssembly3D .3mf Might require supports for the underside Hex slots, If using this version, Print 4 of the 6mm Standoff pins Link
GT2Pulley .3mf Worked fine on a .4 nozzle with no support. Make sure the layer heights aren’t too course. Link
PCBMount .3mf Requires some tricky support usage. I used PrusaSlicer’s paint-on supports inside on the outside overhangs and inside the hex slot. Link
ToolHead .3mf Printable with no supports. Link

That’s all folks!