discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

BOSL2 dovetail and finger/tab joint questions

JD
John David
Wed, Mar 6, 2024 8:20 AM

Looking through BOSL2's library and functions, I see a "dovetail()" but
nothing for a finger joint.  I realize that I might be able to set angle=0,
etc., to effect the same or similar.  But as I am starting to learn some of
the more advanced features of OpenSCAD, I thought I would ask if there is
some trick(s) to generating finger joints, and possibly setting up a
generation function to make things like tabbed boxes.  I have some French
cleat toolholders that I have started to redesign as laser-cut tabbed
boxes, and I will redo a couple of those as a learning exercise, but
thought I would ask if I am missing something in BOSL2 which can do things
like:

  • mirror the tab spacing across an extrusion (with minimum and maximum
    tab widths, etc.)
  • specifying an edge to cut the mirror of a tabbed edge

I have a first pass using only cube, cylinder, and hull, but I think that
was totally naive approach.  Suggestions on where to start appreciated.

EBo --

Looking through BOSL2's library and functions, I see a "dovetail()" but nothing for a finger joint. I realize that I might be able to set angle=0, etc., to effect the same or similar. But as I am starting to learn some of the more advanced features of OpenSCAD, I thought I would ask if there is some trick(s) to generating finger joints, and possibly setting up a generation function to make things like tabbed boxes. I have some French cleat toolholders that I have started to redesign as laser-cut tabbed boxes, and I will redo a couple of those as a learning exercise, but thought I would ask if I am missing something in BOSL2 which can do things like: * mirror the tab spacing across an extrusion (with minimum and maximum tab widths, etc.) * specifying an edge to cut the mirror of a tabbed edge I have a first pass using only cube, cylinder, and hull, but I think that was totally naive approach. Suggestions on where to start appreciated. EBo --
JD
John David
Wed, Mar 6, 2024 8:43 AM

I think maybe what I was looking for is partitions, like: partition_mask(w=20,
cutpath="comb");

On Wed, Mar 6, 2024 at 3:20 AM John David ebo.2112@gmail.com wrote:

Looking through BOSL2's library and functions, I see a "dovetail()" but
nothing for a finger joint.  I realize that I might be able to set angle=0,
etc., to effect the same or similar.  But as I am starting to learn some of
the more advanced features of OpenSCAD, I thought I would ask if there is
some trick(s) to generating finger joints, and possibly setting up a
generation function to make things like tabbed boxes.  I have some French
cleat toolholders that I have started to redesign as laser-cut tabbed
boxes, and I will redo a couple of those as a learning exercise, but
thought I would ask if I am missing something in BOSL2 which can do things
like:

  • mirror the tab spacing across an extrusion (with minimum and maximum
    tab widths, etc.)
  • specifying an edge to cut the mirror of a tabbed edge

I have a first pass using only cube, cylinder, and hull, but I think that
was totally naive approach.  Suggestions on where to start appreciated.

EBo --

I think maybe what I was looking for is partitions, like: partition_mask(w=20, cutpath="comb"); On Wed, Mar 6, 2024 at 3:20 AM John David <ebo.2112@gmail.com> wrote: > Looking through BOSL2's library and functions, I see a "dovetail()" but > nothing for a finger joint. I realize that I might be able to set angle=0, > etc., to effect the same or similar. But as I am starting to learn some of > the more advanced features of OpenSCAD, I thought I would ask if there is > some trick(s) to generating finger joints, and possibly setting up a > generation function to make things like tabbed boxes. I have some French > cleat toolholders that I have started to redesign as laser-cut tabbed > boxes, and I will redo a couple of those as a learning exercise, but > thought I would ask if I am missing something in BOSL2 which can do things > like: > > * mirror the tab spacing across an extrusion (with minimum and maximum > tab widths, etc.) > * specifying an edge to cut the mirror of a tabbed edge > > I have a first pass using only cube, cylinder, and hull, but I think that > was totally naive approach. Suggestions on where to start appreciated. > > EBo -- >
WF
William F. Adams
Wed, Mar 6, 2024 11:37 AM

On Wednesday, March 6, 2024 at 03:21:19 AM EST, John David via Discuss discuss@lists.openscad.org wrote:

Looking through BOSL2's library and functions, I see a "dovetail()" but nothing for a finger joint.  >I realize that I might be able to set angle=0, etc., to effect the same or similar.  But as I am starting >to learn some of the more advanced features of OpenSCAD, I thought I would ask if there is some >trick(s) to generating finger joints, and possibly setting up a generation function to make things like >tabbed boxes.  I have some French cleat toolholders that I have started to redesign as laser-cut >tabbed boxes, and I will redo a couple of those as a learning exercise, but thought I would ask if >I am missing something in BOSL2 which can do things like:>>  * mirror the tab spacing across an extrusion (with minimum and maximum tab widths, etc.)>  * specifying an edge to cut the mirror of a tabbed edge>>I have a first pass using only cube, cylinder, and hull, but I think that was totally naive approach.  >Suggestions on where to start appreciated.

How will you be manufacturing these? 3D printing, Laser, or CNC router?
For the CNC router thing I've been looking at this for a while, and have made a few --- the traditional sort needs a vertical fixture of some sort:
https://cutrocket.com/p/5cb25f3380844/

which can work well:
https://cutrocket.com/p/5cb536396c281/

and sort of traditional dovetails are easily done w/ the right tool:
https://community.carbide3d.com/t/sharing-carbide-create-dovetail-files/9371

That said, I've been working on a various miter options and hiding the box joints:
https://cutrocket.com/p/622970cdb482a

https://community.carbide3d.com/t/looking-for-help-for-making-hidden-box-finger-joints/74363

which is awkward to do is OpenSCAD 'cause it wants open/unclosed geometry (the alternatives are to make the narrowest regions 10% wider than the tool so as to ensure that CAM can fit it, or to generate the G-code from w/in OpenSCAD --- if there's some other option, I'd be glad to hear of it).
That said, there are other joint designs, and I'm sure that there are designs as-yet undreamt of (I've got one such planned out, and finally have the tools to make it --- just need to improve my grasp of mathematics so as to program it in a way which will make cutting possible).
William

On Wednesday, March 6, 2024 at 03:21:19 AM EST, John David via Discuss <discuss@lists.openscad.org> wrote: >Looking through BOSL2's library and functions, I see a "dovetail()" but nothing for a finger joint.  >I realize that I might be able to set angle=0, etc., to effect the same or similar.  But as I am starting >to learn some of the more advanced features of OpenSCAD, I thought I would ask if there is some >trick(s) to generating finger joints, and possibly setting up a generation function to make things like >tabbed boxes.  I have some French cleat toolholders that I have started to redesign as laser-cut >tabbed boxes, and I will redo a couple of those as a learning exercise, but thought I would ask if >I am missing something in BOSL2 which can do things like:>>  * mirror the tab spacing across an extrusion (with minimum and maximum tab widths, etc.)>  * specifying an edge to cut the mirror of a tabbed edge>>I have a first pass using only cube, cylinder, and hull, but I think that was totally naive approach.  >Suggestions on where to start appreciated. How will you be manufacturing these? 3D printing, Laser, or CNC router? For the CNC router thing I've been looking at this for a while, and have made a few --- the traditional sort needs a vertical fixture of some sort: https://cutrocket.com/p/5cb25f3380844/ which can work well: https://cutrocket.com/p/5cb536396c281/ and sort of traditional dovetails are easily done w/ the right tool: https://community.carbide3d.com/t/sharing-carbide-create-dovetail-files/9371 That said, I've been working on a various miter options and hiding the box joints: https://cutrocket.com/p/622970cdb482a https://community.carbide3d.com/t/looking-for-help-for-making-hidden-box-finger-joints/74363 which is awkward to do is OpenSCAD 'cause it wants open/unclosed geometry (the alternatives are to make the narrowest regions 10% wider than the tool so as to ensure that CAM can fit it, or to generate the G-code from w/in OpenSCAD --- if there's some other option, I'd be glad to hear of it). That said, there are other joint designs, and I'm sure that there are designs as-yet undreamt of (I've got one such planned out, and finally have the tools to make it --- just need to improve my grasp of mathematics so as to program it in a way which will make cutting possible). William
JD
John David
Wed, Mar 6, 2024 5:26 PM

Originally I designed the toolholders all for laser cut, but not for tabs
-- I can cut a pilot hole for dowels, and then drill and pin.  As I was
working on that, I ran into a couple of interesting videos on laser cutting
thin sheets (say 0.25") toolholder cleats.  I wanted to see if I can come
up with something more elegant that I have already using more advanced
OpenSCAD.

BTW, I have a broken CNC router I need to rebuild the controller for --
that project got bumped by taking on a new job.  The OSC work is something
I use to unwind before bed.

EBo --

On Wed, Mar 6, 2024 at 6:38 AM William F. Adams via Discuss <
discuss@lists.openscad.org> wrote:

On Wednesday, March 6, 2024 at 03:21:19 AM EST, John David via Discuss <
discuss@lists.openscad.org> wrote:

Looking through BOSL2's library and functions, I see a "dovetail()" but

nothing for a finger joint.

I realize that I might be able to set angle=0, etc., to effect the same

or similar.  But as I am starting

to learn some of the more advanced features of OpenSCAD, I thought I

would ask if there is some

trick(s) to generating finger joints, and possibly setting up a

generation function to make things like

tabbed boxes.  I have some French cleat toolholders that I have started

to redesign as laser-cut

tabbed boxes, and I will redo a couple of those as a learning exercise,

but thought I would ask if

I am missing something in BOSL2 which can do things like:

  • mirror the tab spacing across an extrusion (with minimum and maximum

tab widths, etc.)

  • specifying an edge to cut the mirror of a tabbed edge

I have a first pass using only cube, cylinder, and hull, but I think that

was totally naive approach.

Suggestions on where to start appreciated.

How will you be manufacturing these? 3D printing, Laser, or CNC router?

For the CNC router thing I've been looking at this for a while, and have
made a few --- the traditional sort needs a vertical fixture of some sort:

https://cutrocket.com/p/5cb25f3380844/

which can work well:

https://cutrocket.com/p/5cb536396c281/

and sort of traditional dovetails are easily done w/ the right tool:

https://community.carbide3d.com/t/sharing-carbide-create-dovetail-files/9371

That said, I've been working on a various miter options and hiding the box
joints:

https://cutrocket.com/p/622970cdb482a

https://community.carbide3d.com/t/looking-for-help-for-making-hidden-box-finger-joints/74363

which is awkward to do is OpenSCAD 'cause it wants open/unclosed geometry
(the alternatives are to make the narrowest regions 10% wider than the tool
so as to ensure that CAM can fit it, or to generate the G-code from w/in
OpenSCAD --- if there's some other option, I'd be glad to hear of it).

That said, there are other joint designs, and I'm sure that there are
designs as-yet undreamt of (I've got one such planned out, and finally have
the tools to make it --- just need to improve my grasp of mathematics so as
to program it in a way which will make cutting possible).

William


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Originally I designed the toolholders all for laser cut, but not for tabs -- I can cut a pilot hole for dowels, and then drill and pin. As I was working on that, I ran into a couple of interesting videos on laser cutting thin sheets (say 0.25") toolholder cleats. I wanted to see if I can come up with something more elegant that I have already using more advanced OpenSCAD. BTW, I have a broken CNC router I need to rebuild the controller for -- that project got bumped by taking on a new job. The OSC work is something I use to unwind before bed. EBo -- On Wed, Mar 6, 2024 at 6:38 AM William F. Adams via Discuss < discuss@lists.openscad.org> wrote: > On Wednesday, March 6, 2024 at 03:21:19 AM EST, John David via Discuss < > discuss@lists.openscad.org> wrote: > > >Looking through BOSL2's library and functions, I see a "dovetail()" but > nothing for a finger joint. > >I realize that I might be able to set angle=0, etc., to effect the same > or similar. But as I am starting > >to learn some of the more advanced features of OpenSCAD, I thought I > would ask if there is some > >trick(s) to generating finger joints, and possibly setting up a > generation function to make things like > >tabbed boxes. I have some French cleat toolholders that I have started > to redesign as laser-cut > >tabbed boxes, and I will redo a couple of those as a learning exercise, > but thought I would ask if > >I am missing something in BOSL2 which can do things like: > > > > * mirror the tab spacing across an extrusion (with minimum and maximum > tab widths, etc.) > > * specifying an edge to cut the mirror of a tabbed edge > > > >I have a first pass using only cube, cylinder, and hull, but I think that > was totally naive approach. > >Suggestions on where to start appreciated. > > How will you be manufacturing these? 3D printing, Laser, or CNC router? > > For the CNC router thing I've been looking at this for a while, and have > made a few --- the traditional sort needs a vertical fixture of some sort: > > https://cutrocket.com/p/5cb25f3380844/ > > which can work well: > > https://cutrocket.com/p/5cb536396c281/ > > and sort of traditional dovetails are easily done w/ the right tool: > > > https://community.carbide3d.com/t/sharing-carbide-create-dovetail-files/9371 > > > That said, I've been working on a various miter options and hiding the box > joints: > > https://cutrocket.com/p/622970cdb482a > > > https://community.carbide3d.com/t/looking-for-help-for-making-hidden-box-finger-joints/74363 > > which is awkward to do is OpenSCAD 'cause it wants open/unclosed geometry > (the alternatives are to make the narrowest regions 10% wider than the tool > so as to ensure that CAM can fit it, or to generate the G-code from w/in > OpenSCAD --- if there's some other option, I'd be glad to hear of it). > > That said, there are other joint designs, and I'm sure that there are > designs as-yet undreamt of (I've got one such planned out, and finally have > the tools to make it --- just need to improve my grasp of mathematics so as > to program it in a way which will make cutting possible). > > William > > > > > > > > > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
GH
gene heskett
Wed, Mar 6, 2024 9:37 PM

On 3/6/24 12:27, John David via Discuss wrote:

Originally I designed the toolholders all for laser cut, but not for
tabs -- I can cut a pilot hole for dowels, and then drill and pin.  As I
was working on that, I ran into a couple of interesting videos on laser
cutting thin sheets (say 0.25") toolholder cleats.  I wanted to see if I
can come up with something more elegant that I have already using more
advanced OpenSCAD.

BTW, I have a broken CNC router I need to rebuild the controller for --
that project got bumped by taking on a new job.  The OSC work is
something I use to unwind before bed.

How is it broken? If you want to replace the proprietary controller sw
with something that already has 50 years of history behind it, was
originally a NIST project long ago and is in no danger of going away, I
would highly recommend linuxcnc. Totally free SW. I'm running it on 3
old dell wintel machines to run a small lathe, and 2, 4 axis milling
machines and the biggest, an 85 yo 11x54 Sheldon lathe is actually being
moved by an rpi4b. And its bed wear is being compensated for by
linuxcnc. All are doing new dances they were not capable of when turning
cranks by hand. Neither lathe has a compound as linuxcnc's ability to
move both motors simultaneously to micron accuracy by math is a far more
accurate compound than you can set a mechanical one to. It can even take
gcode using polar/rectangular syntax.  Tapers, curves, thread cutting to
any std including ones you invent including tapered threads for
compression fittings. All w/o a change gear, its all math. No gears.
Write the code once, make identical copies until out of materiel to make
another.

We have 2 mailing lists, both inhabited by the developers, emc-users and
emc-developers where you will also find me on either. I run the newest
github master versions updated several times a week, basically playing
the part of a canary in a coal mine. while running gcode I write. Not
bad for an old fart, my next b-day will be my 90th. I am also a rare
bird, a CET.

So tell me how its broken? Electrons made to do work are my specialty.

Cheers, Gene Heskett, CET.

"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author, 1940)
If we desire respect for the law, we must first make the law respectable.

  • Louis D. Brandeis
On 3/6/24 12:27, John David via Discuss wrote: > Originally I designed the toolholders all for laser cut, but not for > tabs -- I can cut a pilot hole for dowels, and then drill and pin.  As I > was working on that, I ran into a couple of interesting videos on laser > cutting thin sheets (say 0.25") toolholder cleats.  I wanted to see if I > can come up with something more elegant that I have already using more > advanced OpenSCAD. > > BTW, I have a broken CNC router I need to rebuild the controller for -- > that project got bumped by taking on a new job.  The OSC work is > something I use to unwind before bed. How is it broken? If you want to replace the proprietary controller sw with something that already has 50 years of history behind it, was originally a NIST project long ago and is in no danger of going away, I would highly recommend linuxcnc. Totally free SW. I'm running it on 3 old dell wintel machines to run a small lathe, and 2, 4 axis milling machines and the biggest, an 85 yo 11x54 Sheldon lathe is actually being moved by an rpi4b. And its bed wear is being compensated for by linuxcnc. All are doing new dances they were not capable of when turning cranks by hand. Neither lathe has a compound as linuxcnc's ability to move both motors simultaneously to micron accuracy by math is a far more accurate compound than you can set a mechanical one to. It can even take gcode using polar/rectangular syntax. Tapers, curves, thread cutting to any std including ones you invent including tapered threads for compression fittings. All w/o a change gear, its all math. No gears. Write the code once, make identical copies until out of materiel to make another. We have 2 mailing lists, both inhabited by the developers, emc-users and emc-developers where you will also find me on either. I run the newest github master versions updated several times a week, basically playing the part of a canary in a coal mine. while running gcode I write. Not bad for an old fart, my next b-day will be my 90th. I am also a rare bird, a CET. So tell me how its broken? Electrons made to do work are my specialty. Cheers, Gene Heskett, CET. -- "There are four boxes to be used in defense of liberty: soap, ballot, jury, and ammo. Please use in that order." -Ed Howdershelt (Author, 1940) If we desire respect for the law, we must first make the law respectable. - Louis D. Brandeis
JD
John David
Wed, Mar 6, 2024 11:46 PM

OT: LinuxCNC, FluidNC, and OpenSCAD...

Hiho Gene..

The Techno-Isel router came to me with a fried controller.  I originally
replaced it with an old PC running LinuxCNC and a Gecko540 circa 2014.
It so long in the tooth to be painful at this point, I am looking at a full
upgrade.

I had been one of the official developers for LinuxCNC since something like
2002.  Unfortunately, the last several times I went to poke at LCNC it was
so riddle with bit-rot that I could not effectively install it on modern
hardware, and actually spent 100+ hours trying to get it to run during the
pandemic.  I have finally given up and called it quits on LinuxCNC, Machine
Kit, and variants.  Recently I started looking at FluidNC, and before I
realized that the current master branch does not have backlash
compensation, I committed with the development team to implement an
automated test bench for it AND to install and test a pull request with
proper backlash compensation merged/verified - I have 3 machines that need
controller updates, and my previously-converted 4-axis South Bend Turret
Mill is all about screw slop!  There is no way I am going to turn a 3/4
ton milling machine with a 3HP spindle loose without backlash
compensation...  Just say'n...  Sorry for the rant on LinuxCNC, but No...
Just no...

I have a FluidNC test-bench mostly built on a DIN-rail stand, and USB
connected digital-caliper ready to measure a sloppy linear motion mechanism
to test/verify/demonstrate pre-post compensation...  Anyway, I got RSV and
was down for several months, changed positions at work soon afterward, and
had to play catchup on all the negative PTO hours being down with RSV (I
still have a job, but was down a full years PTO -- and quite thankful to
KBR for working with me on being that sick).  If I understand FluidNC's
history correctly, someone took a fork of Grbl and refactored it using
modern and clean C++.  It is well written and should be maintainable using
modern Agile CI/CD tool chains, including git triggered automated testing
on commits and pull-requests.  It is clean, elegant, works as expected, but
missing a number of necessary features (like backlash compensation), and
some serious wants (like NURBS), but the code is clean enough that I can
implement those things.

My house/garage/workshop is a complete mess, and part of the reorg is a
couple of French cleat walls both in the garage and in the house
den/office/workshop.  I still have a strong commitment to knocking out the
testing and backlash-compensation for FluidNC, but it will be greatly
helped with clearing the piles of stuff in the workshop and garage (I can
barely get to my workbench after the latest emergency house renovation
projects).  Hence, an interest in laser cutting some initial French cleat
toolholders, and using that to learn about OpenSCAD while I am winding down
at night.  Speaking of which, this has given me a post-nap push to pick a
square meter in the corner of the workshop and reorganize it tonight...
Thank you for that ;-)  And seriously, sorry about dissing LCNC, but at
this point I owe the FluidNC team a passel of automated tests and 3 of my
machine's backlash compensation.

EBo --

On Wed, Mar 6, 2024 at 4:38 PM gene heskett via Discuss <
discuss@lists.openscad.org> wrote:

On 3/6/24 12:27, John David via Discuss wrote:

Originally I designed the toolholders all for laser cut, but not for
tabs -- I can cut a pilot hole for dowels, and then drill and pin.  As I
was working on that, I ran into a couple of interesting videos on laser
cutting thin sheets (say 0.25") toolholder cleats.  I wanted to see if I
can come up with something more elegant that I have already using more
advanced OpenSCAD.

BTW, I have a broken CNC router I need to rebuild the controller for --
that project got bumped by taking on a new job.  The OSC work is
something I use to unwind before bed.

How is it broken? If you want to replace the proprietary controller sw
with something that already has 50 years of history behind it, was
originally a NIST project long ago and is in no danger of going away, I
would highly recommend linuxcnc. Totally free SW. I'm running it on 3
old dell wintel machines to run a small lathe, and 2, 4 axis milling
machines and the biggest, an 85 yo 11x54 Sheldon lathe is actually being
moved by an rpi4b. And its bed wear is being compensated for by
linuxcnc. All are doing new dances they were not capable of when turning
cranks by hand. Neither lathe has a compound as linuxcnc's ability to
move both motors simultaneously to micron accuracy by math is a far more
accurate compound than you can set a mechanical one to. It can even take
gcode using polar/rectangular syntax.  Tapers, curves, thread cutting to
any std including ones you invent including tapered threads for
compression fittings. All w/o a change gear, its all math. No gears.
Write the code once, make identical copies until out of materiel to make
another.

We have 2 mailing lists, both inhabited by the developers, emc-users and
emc-developers where you will also find me on either. I run the newest
github master versions updated several times a week, basically playing
the part of a canary in a coal mine. while running gcode I write. Not
bad for an old fart, my next b-day will be my 90th. I am also a rare
bird, a CET.

So tell me how its broken? Electrons made to do work are my specialty.

Cheers, Gene Heskett, CET.

"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author, 1940)
If we desire respect for the law, we must first make the law respectable.

  • Louis D. Brandeis

OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

OT: LinuxCNC, FluidNC, and OpenSCAD... Hiho Gene.. The Techno-Isel router came to me with a fried controller. I originally replaced it with an *old* PC running LinuxCNC and a Gecko540 circa 2014. It so long in the tooth to be painful at this point, I am looking at a full upgrade. I had been one of the official developers for LinuxCNC since something like 2002. Unfortunately, the last several times I went to poke at LCNC it was so riddle with bit-rot that I could not effectively install it on modern hardware, and actually spent 100+ hours trying to get it to run during the pandemic. I have finally given up and called it quits on LinuxCNC, Machine Kit, and variants. Recently I started looking at FluidNC, and before I realized that the current master branch does not have backlash compensation, I committed with the development team to implement an automated test bench for it AND to install and test a pull request with proper backlash compensation merged/verified - I have 3 machines that need controller updates, and my previously-converted 4-axis South Bend Turret Mill is *all* about screw slop! There is no way I am going to turn a 3/4 ton milling machine with a 3HP spindle loose without backlash compensation... Just say'n... Sorry for the rant on LinuxCNC, but No... Just no... I have a FluidNC test-bench mostly built on a DIN-rail stand, and USB connected digital-caliper ready to measure a sloppy linear motion mechanism to test/verify/demonstrate pre-post compensation... Anyway, I got RSV and was down for several months, changed positions at work soon afterward, and had to play catchup on all the negative PTO hours being down with RSV (I still have a job, but was down a full years PTO -- and quite thankful to KBR for working with me on being that sick). If I understand FluidNC's history correctly, someone took a fork of Grbl and refactored it using modern and clean C++. It is well written and should be maintainable using modern Agile CI/CD tool chains, including git triggered automated testing on commits and pull-requests. It is clean, elegant, works as expected, but missing a number of necessary features (like backlash compensation), and some *serious wants* (like NURBS), but the code is clean enough that I can implement those things. My house/garage/workshop is a complete mess, and part of the reorg is a couple of French cleat walls both in the garage and in the house den/office/workshop. I still have a strong commitment to knocking out the testing and backlash-compensation for FluidNC, but it will be greatly helped with clearing the piles of stuff in the workshop and garage (I can barely get to my workbench after the latest emergency house renovation projects). Hence, an interest in laser cutting some initial French cleat toolholders, and using that to learn about OpenSCAD while I am winding down at night. Speaking of which, this has given me a post-nap push to pick a square meter in the corner of the workshop and reorganize it tonight... Thank you for that ;-) And seriously, sorry about dissing LCNC, but at this point I owe the FluidNC team a passel of automated tests and 3 of my machine's backlash compensation. EBo -- On Wed, Mar 6, 2024 at 4:38 PM gene heskett via Discuss < discuss@lists.openscad.org> wrote: > On 3/6/24 12:27, John David via Discuss wrote: > > > Originally I designed the toolholders all for laser cut, but not for > > tabs -- I can cut a pilot hole for dowels, and then drill and pin. As I > > was working on that, I ran into a couple of interesting videos on laser > > cutting thin sheets (say 0.25") toolholder cleats. I wanted to see if I > > can come up with something more elegant that I have already using more > > advanced OpenSCAD. > > > > BTW, I have a broken CNC router I need to rebuild the controller for -- > > that project got bumped by taking on a new job. The OSC work is > > something I use to unwind before bed. > > How is it broken? If you want to replace the proprietary controller sw > with something that already has 50 years of history behind it, was > originally a NIST project long ago and is in no danger of going away, I > would highly recommend linuxcnc. Totally free SW. I'm running it on 3 > old dell wintel machines to run a small lathe, and 2, 4 axis milling > machines and the biggest, an 85 yo 11x54 Sheldon lathe is actually being > moved by an rpi4b. And its bed wear is being compensated for by > linuxcnc. All are doing new dances they were not capable of when turning > cranks by hand. Neither lathe has a compound as linuxcnc's ability to > move both motors simultaneously to micron accuracy by math is a far more > accurate compound than you can set a mechanical one to. It can even take > gcode using polar/rectangular syntax. Tapers, curves, thread cutting to > any std including ones you invent including tapered threads for > compression fittings. All w/o a change gear, its all math. No gears. > Write the code once, make identical copies until out of materiel to make > another. > > We have 2 mailing lists, both inhabited by the developers, emc-users and > emc-developers where you will also find me on either. I run the newest > github master versions updated several times a week, basically playing > the part of a canary in a coal mine. while running gcode I write. Not > bad for an old fart, my next b-day will be my 90th. I am also a rare > bird, a CET. > > So tell me how its broken? Electrons made to do work are my specialty. > > Cheers, Gene Heskett, CET. > -- > "There are four boxes to be used in defense of liberty: > soap, ballot, jury, and ammo. Please use in that order." > -Ed Howdershelt (Author, 1940) > If we desire respect for the law, we must first make the law respectable. > - Louis D. Brandeis > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
BC
Bob Carlson
Thu, Mar 7, 2024 6:28 PM

I used to use screws when I needed to print items in parts and assemble them. Then it occurred to me to use a dovetail joint. I wrote some simple code that did this and it worked well. But then I discovered BOSL2’s dovetail. It includes a taper adjustment that allow you slide together even fairly long dovetails and have them fit perfectly and be very tight.

On Mar 6, 2024, at 01:20, John David via Discuss discuss@lists.openscad.org wrote:

Looking through BOSL2's library and functions, I see a "dovetail()" but nothing for a finger joint.  I realize that I might be able to set angle=0, etc., to effect the same or similar.  But as I am starting to learn some of the more advanced features of OpenSCAD, I thought I would ask if there is some trick(s) to generating finger joints, and possibly setting up a generation function to make things like tabbed boxes.  I have some French cleat toolholders that I have started to redesign as laser-cut tabbed boxes, and I will redo a couple of those as a learning exercise, but thought I would ask if I am missing something in BOSL2 which can do things like:

  • mirror the tab spacing across an extrusion (with minimum and maximum tab widths, etc.)
  • specifying an edge to cut the mirror of a tabbed edge

I have a first pass using only cube, cylinder, and hull, but I think that was totally naive approach.  Suggestions on where to start appreciated.

EBo --


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

I used to use screws when I needed to print items in parts and assemble them. Then it occurred to me to use a dovetail joint. I wrote some simple code that did this and it worked well. But then I discovered BOSL2’s dovetail. It includes a taper adjustment that allow you slide together even fairly long dovetails and have them fit perfectly and be very tight. > On Mar 6, 2024, at 01:20, John David via Discuss <discuss@lists.openscad.org> wrote: > > Looking through BOSL2's library and functions, I see a "dovetail()" but nothing for a finger joint. I realize that I might be able to set angle=0, etc., to effect the same or similar. But as I am starting to learn some of the more advanced features of OpenSCAD, I thought I would ask if there is some trick(s) to generating finger joints, and possibly setting up a generation function to make things like tabbed boxes. I have some French cleat toolholders that I have started to redesign as laser-cut tabbed boxes, and I will redo a couple of those as a learning exercise, but thought I would ask if I am missing something in BOSL2 which can do things like: > > * mirror the tab spacing across an extrusion (with minimum and maximum tab widths, etc.) > * specifying an edge to cut the mirror of a tabbed edge > > I have a first pass using only cube, cylinder, and hull, but I think that was totally naive approach. Suggestions on where to start appreciated. > > EBo -- > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org
LM
Leonard Martin Struttmann
Thu, Mar 7, 2024 11:07 PM

Bob Carlson,  That sounds very interesting.  Could you post an example of
how you have used dovetail?  Lately I've been using captive nuts in my 3D
printed enclosures.

On Thu, Mar 7, 2024 at 12:29 PM Bob Carlson via Discuss <
discuss@lists.openscad.org> wrote:

I used to use screws when I needed to print items in parts and assemble
them. Then it occurred to me to use a dovetail joint. I wrote some simple
code that did this and it worked well. But then I discovered BOSL2’s
dovetail. It includes a taper adjustment that allow you slide together even
fairly long dovetails and have them fit perfectly and be very tight.

On Mar 6, 2024, at 01:20, John David via Discuss <

Looking through BOSL2's library and functions, I see a "dovetail()" but

nothing for a finger joint.  I realize that I might be able to set angle=0,
etc., to effect the same or similar.  But as I am starting to learn some of
the more advanced features of OpenSCAD, I thought I would ask if there is
some trick(s) to generating finger joints, and possibly setting up a
generation function to make things like tabbed boxes.  I have some French
cleat toolholders that I have started to redesign as laser-cut tabbed
boxes, and I will redo a couple of those as a learning exercise, but
thought I would ask if I am missing something in BOSL2 which can do things
like:

  • mirror the tab spacing across an extrusion (with minimum and maximum

tab widths, etc.)

  • specifying an edge to cut the mirror of a tabbed edge

I have a first pass using only cube, cylinder, and hull, but I think

that was totally naive approach.  Suggestions on where to start appreciated.

EBo --


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Bob Carlson, That sounds very interesting. Could you post an example of how you have used dovetail? Lately I've been using captive nuts in my 3D printed enclosures. On Thu, Mar 7, 2024 at 12:29 PM Bob Carlson via Discuss < discuss@lists.openscad.org> wrote: > I used to use screws when I needed to print items in parts and assemble > them. Then it occurred to me to use a dovetail joint. I wrote some simple > code that did this and it worked well. But then I discovered BOSL2’s > dovetail. It includes a taper adjustment that allow you slide together even > fairly long dovetails and have them fit perfectly and be very tight. > > > On Mar 6, 2024, at 01:20, John David via Discuss < > discuss@lists.openscad.org> wrote: > > > > Looking through BOSL2's library and functions, I see a "dovetail()" but > nothing for a finger joint. I realize that I might be able to set angle=0, > etc., to effect the same or similar. But as I am starting to learn some of > the more advanced features of OpenSCAD, I thought I would ask if there is > some trick(s) to generating finger joints, and possibly setting up a > generation function to make things like tabbed boxes. I have some French > cleat toolholders that I have started to redesign as laser-cut tabbed > boxes, and I will redo a couple of those as a learning exercise, but > thought I would ask if I am missing something in BOSL2 which can do things > like: > > > > * mirror the tab spacing across an extrusion (with minimum and maximum > tab widths, etc.) > > * specifying an edge to cut the mirror of a tabbed edge > > > > I have a first pass using only cube, cylinder, and hull, but I think > that was totally naive approach. Suggestions on where to start appreciated. > > > > EBo -- > > _______________________________________________ > > OpenSCAD mailing list > > To unsubscribe send an email to discuss-leave@lists.openscad.org > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
BC
Bob Carlson
Fri, Mar 8, 2024 6:33 PM

I don’t have a project that is small enough or self contained enough to send, but this screenshot shot convey it. This is one of 6 pieces that for a battery dispenser that takes 3 different size batteries. This shows half the bottom section which takes AAs. A similar looking box sits on top and takes AAAs. The 3rd layer takes CR123s.

Each layer is assembled by sliding the left and right sides together using the male dovetails that you see. Then the next layer up is slid into the female dovetails. You can’t tell but the dovetails are slightly tapered, but this difference in width over the length is only maybe .5 mm. Since the dovetails fit tightly but accurately and are at right angles, everything is locked into place pretty tightly. However, it can still be disassembled.

-Bob

On Mar 7, 2024, at 16:07, Leonard Martin Struttmann lenstruttmann@gmail.com wrote:

Bob Carlson,  That sounds very interesting.  Could you post an example of how you have used dovetail?  Lately I've been using captive nuts in my 3D printed enclosures.

On Thu, Mar 7, 2024 at 12:29 PM Bob Carlson via Discuss <discuss@lists.openscad.org mailto:discuss@lists.openscad.org> wrote:

I used to use screws when I needed to print items in parts and assemble them. Then it occurred to me to use a dovetail joint. I wrote some simple code that did this and it worked well. But then I discovered BOSL2’s dovetail. It includes a taper adjustment that allow you slide together even fairly long dovetails and have them fit perfectly and be very tight.

On Mar 6, 2024, at 01:20, John David via Discuss <discuss@lists.openscad.org mailto:discuss@lists.openscad.org> wrote:

Looking through BOSL2's library and functions, I see a "dovetail()" but nothing for a finger joint.  I realize that I might be able to set angle=0, etc., to effect the same or similar.  But as I am starting to learn some of the more advanced features of OpenSCAD, I thought I would ask if there is some trick(s) to generating finger joints, and possibly setting up a generation function to make things like tabbed boxes.  I have some French cleat toolholders that I have started to redesign as laser-cut tabbed boxes, and I will redo a couple of those as a learning exercise, but thought I would ask if I am missing something in BOSL2 which can do things like:

  • mirror the tab spacing across an extrusion (with minimum and maximum tab widths, etc.)
  • specifying an edge to cut the mirror of a tabbed edge

I have a first pass using only cube, cylinder, and hull, but I think that was totally naive approach.  Suggestions on where to start appreciated.

EBo --


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org mailto:discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org mailto:discuss-leave@lists.openscad.org

I don’t have a project that is small enough or self contained enough to send, but this screenshot shot convey it. This is one of 6 pieces that for a battery dispenser that takes 3 different size batteries. This shows half the bottom section which takes AAs. A similar looking box sits on top and takes AAAs. The 3rd layer takes CR123s. Each layer is assembled by sliding the left and right sides together using the male dovetails that you see. Then the next layer up is slid into the female dovetails. You can’t tell but the dovetails are slightly tapered, but this difference in width over the length is only maybe .5 mm. Since the dovetails fit tightly but accurately and are at right angles, everything is locked into place pretty tightly. However, it can still be disassembled. -Bob  > On Mar 7, 2024, at 16:07, Leonard Martin Struttmann <lenstruttmann@gmail.com> wrote: > > Bob Carlson, That sounds very interesting. Could you post an example of how you have used dovetail? Lately I've been using captive nuts in my 3D printed enclosures. > > On Thu, Mar 7, 2024 at 12:29 PM Bob Carlson via Discuss <discuss@lists.openscad.org <mailto:discuss@lists.openscad.org>> wrote: >> I used to use screws when I needed to print items in parts and assemble them. Then it occurred to me to use a dovetail joint. I wrote some simple code that did this and it worked well. But then I discovered BOSL2’s dovetail. It includes a taper adjustment that allow you slide together even fairly long dovetails and have them fit perfectly and be very tight. >> >> > On Mar 6, 2024, at 01:20, John David via Discuss <discuss@lists.openscad.org <mailto:discuss@lists.openscad.org>> wrote: >> > >> > Looking through BOSL2's library and functions, I see a "dovetail()" but nothing for a finger joint. I realize that I might be able to set angle=0, etc., to effect the same or similar. But as I am starting to learn some of the more advanced features of OpenSCAD, I thought I would ask if there is some trick(s) to generating finger joints, and possibly setting up a generation function to make things like tabbed boxes. I have some French cleat toolholders that I have started to redesign as laser-cut tabbed boxes, and I will redo a couple of those as a learning exercise, but thought I would ask if I am missing something in BOSL2 which can do things like: >> > >> > * mirror the tab spacing across an extrusion (with minimum and maximum tab widths, etc.) >> > * specifying an edge to cut the mirror of a tabbed edge >> > >> > I have a first pass using only cube, cylinder, and hull, but I think that was totally naive approach. Suggestions on where to start appreciated. >> > >> > EBo -- >> > _______________________________________________ >> > OpenSCAD mailing list >> > To unsubscribe send an email to discuss-leave@lists.openscad.org <mailto:discuss-leave@lists.openscad.org> >> _______________________________________________ >> OpenSCAD mailing list >> To unsubscribe send an email to discuss-leave@lists.openscad.org <mailto:discuss-leave@lists.openscad.org>
LM
Leonard Martin Struttmann
Fri, Mar 8, 2024 7:05 PM

Thanks, I'll check it out.

On Fri, Mar 8, 2024, 12:33 Bob Carlson bob@rjcarlson.com wrote:

I don’t have a project that is small enough or self contained enough to
send, but this screenshot shot convey it. This is one of 6 pieces that for
a battery dispenser that takes 3 different size batteries. This shows half
the bottom section which takes AAs. A similar looking box sits on top and
takes AAAs. The 3rd layer takes CR123s.

Each layer is assembled by sliding the left and right sides together using
the male dovetails that you see. Then the next layer up is slid into the
female dovetails. You can’t tell but the dovetails are slightly tapered,
but this difference in width over the length is only maybe .5 mm. Since the
dovetails fit tightly but accurately and are at right angles, everything is
locked into place pretty tightly. However, it can still be disassembled.

-Bob

[image: PastedGraphic-1.tiff]

On Mar 7, 2024, at 16:07, Leonard Martin Struttmann <
lenstruttmann@gmail.com> wrote:

Bob Carlson,  That sounds very interesting.  Could you post an example of
how you have used dovetail?  Lately I've been using captive nuts in my 3D
printed enclosures.

On Thu, Mar 7, 2024 at 12:29 PM Bob Carlson via Discuss <
discuss@lists.openscad.org> wrote:

I used to use screws when I needed to print items in parts and assemble
them. Then it occurred to me to use a dovetail joint. I wrote some simple
code that did this and it worked well. But then I discovered BOSL2’s
dovetail. It includes a taper adjustment that allow you slide together even
fairly long dovetails and have them fit perfectly and be very tight.

On Mar 6, 2024, at 01:20, John David via Discuss <

Looking through BOSL2's library and functions, I see a "dovetail()" but

nothing for a finger joint.  I realize that I might be able to set angle=0,
etc., to effect the same or similar.  But as I am starting to learn some of
the more advanced features of OpenSCAD, I thought I would ask if there is
some trick(s) to generating finger joints, and possibly setting up a
generation function to make things like tabbed boxes.  I have some French
cleat toolholders that I have started to redesign as laser-cut tabbed
boxes, and I will redo a couple of those as a learning exercise, but
thought I would ask if I am missing something in BOSL2 which can do things
like:

  • mirror the tab spacing across an extrusion (with minimum and

maximum tab widths, etc.)

  • specifying an edge to cut the mirror of a tabbed edge

I have a first pass using only cube, cylinder, and hull, but I think

that was totally naive approach.  Suggestions on where to start appreciated.

EBo --


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Thanks, I'll check it out. On Fri, Mar 8, 2024, 12:33 Bob Carlson <bob@rjcarlson.com> wrote: > I don’t have a project that is small enough or self contained enough to > send, but this screenshot shot convey it. This is one of 6 pieces that for > a battery dispenser that takes 3 different size batteries. This shows half > the bottom section which takes AAs. A similar looking box sits on top and > takes AAAs. The 3rd layer takes CR123s. > > Each layer is assembled by sliding the left and right sides together using > the male dovetails that you see. Then the next layer up is slid into the > female dovetails. You can’t tell but the dovetails are slightly tapered, > but this difference in width over the length is only maybe .5 mm. Since the > dovetails fit tightly but accurately and are at right angles, everything is > locked into place pretty tightly. However, it can still be disassembled. > > -Bob > > [image: PastedGraphic-1.tiff] > > On Mar 7, 2024, at 16:07, Leonard Martin Struttmann < > lenstruttmann@gmail.com> wrote: > > Bob Carlson, That sounds very interesting. Could you post an example of > how you have used dovetail? Lately I've been using captive nuts in my 3D > printed enclosures. > > On Thu, Mar 7, 2024 at 12:29 PM Bob Carlson via Discuss < > discuss@lists.openscad.org> wrote: > >> I used to use screws when I needed to print items in parts and assemble >> them. Then it occurred to me to use a dovetail joint. I wrote some simple >> code that did this and it worked well. But then I discovered BOSL2’s >> dovetail. It includes a taper adjustment that allow you slide together even >> fairly long dovetails and have them fit perfectly and be very tight. >> >> > On Mar 6, 2024, at 01:20, John David via Discuss < >> discuss@lists.openscad.org> wrote: >> > >> > Looking through BOSL2's library and functions, I see a "dovetail()" but >> nothing for a finger joint. I realize that I might be able to set angle=0, >> etc., to effect the same or similar. But as I am starting to learn some of >> the more advanced features of OpenSCAD, I thought I would ask if there is >> some trick(s) to generating finger joints, and possibly setting up a >> generation function to make things like tabbed boxes. I have some French >> cleat toolholders that I have started to redesign as laser-cut tabbed >> boxes, and I will redo a couple of those as a learning exercise, but >> thought I would ask if I am missing something in BOSL2 which can do things >> like: >> > >> > * mirror the tab spacing across an extrusion (with minimum and >> maximum tab widths, etc.) >> > * specifying an edge to cut the mirror of a tabbed edge >> > >> > I have a first pass using only cube, cylinder, and hull, but I think >> that was totally naive approach. Suggestions on where to start appreciated. >> > >> > EBo -- >> > _______________________________________________ >> > OpenSCAD mailing list >> > To unsubscribe send an email to discuss-leave@lists.openscad.org >> _______________________________________________ >> OpenSCAD mailing list >> To unsubscribe send an email to discuss-leave@lists.openscad.org >> > >