home..

Week 06 - efab

group page // repo source files // objectives

Contents

hero >

projects >

COB LED workflow - Altium >

Altium -> mods -> ugs -> Lunyee

I ran through the entire efab workflow last week during ecad. Here is the rest of that documentation:

gerbers - files for fabrication >

After designing your pattern in Altium and running DRC checks, I exported gerbers, which is necessary whether you’re sending the design off to a fab or machining it on a desktop mill.

Altium -> generate gerbers -> export bitmap -> convert to png + post-processing -> mods

mods - generating cam tool paths >

With .pngs generated and post-processed, I opened the mods workflow for the Lunyee. Mods is a useful data-flow oriented tool that enables the user to mix and match a variety of functional blocks to do a variety of things. Here, we use it for machine interfacing. I created some .nc files using this workflow.

mods -> machines -> g-code -> mill 2d pcb -> export .nc files (gcode) -> ugs

ugs - communicating with the machine >

Finally, we open the .nc files in UGS and prepped the machine to run them.

ugs -> open .nc -> find new zero -> z-probe -> send job to Lunyee

soldering >

for the passives and ICs, I used my Pinecil soldering iron (USB-C powered and awesome).

for the COB… normally, you’re not supposed to solder FR1 boards using hotplates or reflow ovens; they’re not as flame retardant as their FR4 cousins. However, the COB LED I was working with has a nice metal heatsinking surface on the otherside; I tried applying solderpaste to the board and soldering through that heatsinking surface and it worked!

comBadge LED workflow - leadframe-crafting >

I fabricated some leadframes a few weeks ago for my final project/research; I applied similar principles for this week. For this pattern, I played around with long features and observing how they affected rigidity; long thin features severly compromise rigidity, which is why I switched from 0.2mm copper stock to ~1.0mm copper stock.

cad >

the following flow results in some weird scale conversions that were hard to explain(problem has since been solved, TL;DR I missed the units setting. Original documentation below preserved for history). I initially encountered these conversions due to how solidworks handles exporting splines and arcs as dxf’s (hint: it doesn’t). in an attempt to simplify geometry, I ran artwork through cadquery and inkscape to get to something usable.

solidworks -> altium -> solidworks -> cadquery -> inkscape -> fabcreator -> fablight

the solidworks through cadquery loop is fairly consistent dimensionally; mm translates to mm. after cadquery, I think the artwork shrunk from 69.522mm to 37.883mm (possibly due to how I configured the svg export settings; projectionDir: (0,0,0.5) could be a half scale factor but 69.522/2 dne 37.883…

anyways, in inkscape I resize from 37.883mm back to 69.522mm and lock aspect ratio so everything else scales correctly.

export as dxf (R14, later tried R12 as well but the geometry comes out very rough).

open in fabcreator (in mm, for some reason inch hangs indefinitely)*.

in fabcreator, the width of the leadframe went from 69.522mm in inkscape to 194.518mm, which appears to also be the case on the fablight afterwards.

from prior work, exporting in inch is ok, and shouldn’t affect dimensions (in fact, necessary if you want to work with copper, as mm doesn’t have a copper preset).


attempted fixing this by trying R12 (as mentioned); terrible rough artwork.

viewed in edrawing to confirm that dimensions were off.

attempted reverting to previous value (37.883mm); no success.

next try will be applying a scale factor (knowing input is 69.522mm and output is 194.518mm) new value = 69.522 / 194.518 * 69.522 = 24.847615562570044931574455834421 = ~24.848 ended up getting 70.417


oh my god, I’m really dumb…


I just noticed that R14 has a “base unit” setting, and it was set to “pt” by default… just set it to “mm” and everything appears to be correct now…

a lesson in reading all of the dialog boxes before assuming bug ***

simplifying paths - reducing nodes and avoiding crashing programs >

*I initially had to go back to inkscape and manually simplify some of the paths due to the extraneous number of nodes generated from solidworks exporting; only possible to use simplify command in a useful manner (not destroy the artwork) if I pass it through cadquery for svg export first, by doing so I can selectively simplify rather than everything at once. wondering if this is due to how the paths are joined; if everything is part of one long path, simplify may attempt to “drift” the corners, resulting in more curves but destroying the art in the process. if paths are disjoint, then simplify optimization can run on everything (but disjointly), resulting in sharp corners still and retaining the artwork.

this whole workflow reinforces the need for more robust vectorized operations for optimized path planning to enable more complex CAM work, especially for machines like the fablight that have limited “hackability” and too many annoying quirks.

fablight >

lessons >

a lot of progress is hacks sometimes; this was one such week.

© 2023 Alan Han   •  Powered by Soopr   •  Theme  Moonwalk