discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

Memory limits?

HW
Harvey white
Sat, Jul 13, 2024 2:24 PM

Not sure that the original post made it through, apologies if this is a
duplicate:

I’m new to this list, but I’ve been using openSCAD for a number of
years. I think I’ve run into a few limits that I’d like confirmed. I
need to give you a background to put the questions in context.

I’ve been programming in C++ for quite a while.
I design PC boards using Eagle (7.7, the last one before Autocad
took it over, and have a hobbiest license (100 mm by 200 mm).
I also use OpenSCAD for model visualization, case design, and the like.
To do that, I have a program that reads Eagle PCB files, and
produces a description in SCAD of the PC board.
I’ve got the following working:

 1.

    rounded corners on the board

 2.

    parts placement where needed with proper rotation per part

 3.

    parts are modeled using either nopSCADlib or in some cases, my
    own models

     1.

        there are assumptions built into the nopSCADlib that don’t
        work for me

     2.

        nopSCADlib is wonderful, but somewhat limited in the parts
        choices

     3.

        no, I don’t completely understand how it all works, but
        that’s not the issue

 4.

    board reading and parsing, parts lookup, part generation for
    openSCAD, parts placement
Now, what doesn’t work:

 1.

    I think there’s a limit in OpenSCAD about number of parts, which
    seems to work into a “only this complex” limit.
What I do:

 1.

    run a board through the program.

 2.

    Look at the output

 3.

    parts are missing. (its a nopSCADlib file for an SO16 IC)

 4.

    Another such chip is on the board and properly placed.

 5.

    Commenting out lines eventually gets to the point where the
    “lost” part pops back in.

 6.

    This suggests a memory limit somewhere.
I’d love to give you the source files, but it’s an entire project
with subdirectories, referring to other libraries of parts I’ve
designed. Since I think it’s a memory limit, a partial file would
not help all that much.

So I have a board model that is not complete. Anyone have any ideas?

I have some ideas for nopSCADlib, but those should be another post.

Harvey

Not sure that the original post made it through, apologies if this is a duplicate: I’m new to this list, but I’ve been using openSCAD for a number of years. I think I’ve run into a few limits that I’d like confirmed. I need to give you a background to put the questions in context. 1. I’ve been programming in C++ for quite a while. 2. I design PC boards using Eagle (7.7, the last one before Autocad took it over, and have a hobbiest license (100 mm by 200 mm). 3. I also use OpenSCAD for model visualization, case design, and the like. 4. To do that, I have a program that reads Eagle PCB files, and produces a description in SCAD of the PC board. 5. I’ve got the following working: 1. rounded corners on the board 2. parts placement where needed with proper rotation per part 3. parts are modeled using either nopSCADlib or in some cases, my own models 1. there are assumptions built into the nopSCADlib that don’t work for me 2. nopSCADlib is wonderful, but somewhat limited in the parts choices 3. no, I don’t completely understand how it all works, but that’s not the issue 4. board reading and parsing, parts lookup, part generation for openSCAD, parts placement 6. Now, what doesn’t work: 1. I think there’s a limit in OpenSCAD about number of parts, which seems to work into a “only this complex” limit. 7. What I do: 1. run a board through the program. 2. Look at the output 3. parts are missing. (its a nopSCADlib file for an SO16 IC) 4. Another such chip is on the board and properly placed. 5. Commenting out lines eventually gets to the point where the “lost” part pops back in. 6. This suggests a memory limit somewhere. 8. I’d love to give you the source files, but it’s an entire project with subdirectories, referring to other libraries of parts I’ve designed. Since I think it’s a memory limit, a partial file would not help all that much. So I have a board model that is not complete. Anyone have any ideas? I have some ideas for nopSCADlib, but those should be another post. Harvey
RW
Rogier Wolff
Sun, Jul 14, 2024 7:02 AM

On Sat, Jul 13, 2024 at 10:24:22AM -0400, Harvey white via Discuss wrote:

I’d love to give you the source files, but it’s an entire project
with subdirectories, referring to other libraries of parts I’ve
designed. Since I think it’s a memory limit, a partial file would
not help all that much.

How many parts are there? Eagle has a board-stats ULP. Then we know
how many parts we need to "simulate" to try and reproduce this.

How about you put say a resistor, led, and an sot23 transistor in a
schematic, switch-to-board, place them compactly, in schematic view
load another design, but DO NOT load the board. Now back in board
save-as with a new name, and then copy-paste your three components.
select everything, repeat doubling the number of components until
you've filled your allowed design area. Now run it through your
rendering pipeline.  Now there are only three models that need to be
included.

OK. F*** it. I did that for you. Attached is a board with 192 instances
of a resistor-cap-sot23. Does this show the problem?

Roger. 

--
** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ ** +31-15-2049110 **
**    Delftechpark 11 2628 XJ  Delft, The Netherlands.  KVK: 27239233    **
f equals m times a. When your f is steady, and your m is going down
your a is going up.  -- Chris Hadfield about flying up the space shuttle.

On Sat, Jul 13, 2024 at 10:24:22AM -0400, Harvey white via Discuss wrote: > 8. > > I’d love to give you the source files, but it’s an entire project > with subdirectories, referring to other libraries of parts I’ve > designed. Since I think it’s a memory limit, a partial file would > not help all that much. How many parts are there? Eagle has a board-stats ULP. Then we know how many parts we need to "simulate" to try and reproduce this. How about you put say a resistor, led, and an sot23 transistor in a schematic, switch-to-board, place them compactly, in schematic view load another design, but DO NOT load the board. Now back in board save-as with a new name, and then copy-paste your three components. select everything, repeat doubling the number of components until you've filled your allowed design area. Now run it through your rendering pipeline. Now there are only three models that need to be included. OK. F*** it. I did that for you. Attached is a board with 192 instances of a resistor-cap-sot23. Does this show the problem? Roger. -- ** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ ** +31-15-2049110 ** ** Delftechpark 11 2628 XJ Delft, The Netherlands. KVK: 27239233 ** f equals m times a. When your f is steady, and your m is going down your a is going up. -- Chris Hadfield about flying up the space shuttle.
NH
nop head
Sun, Jul 14, 2024 8:16 AM

I have never hit any memory limits with NopSCADlib and many parts. One of
its tests has a single instance of all the parts in the library. My biggest
design has about 2500 parts, maily fasteners, rather than electronic
components but I don't see why they would be different.

Regarding the components available I only model what I need for my own
designs. Pull requests are welcome.

On Sun, 14 Jul 2024 at 08:02, Rogier Wolff via Discuss <
discuss@lists.openscad.org> wrote:

On Sat, Jul 13, 2024 at 10:24:22AM -0400, Harvey white via Discuss wrote:

I’d love to give you the source files, but it’s an entire project
with subdirectories, referring to other libraries of parts I’ve
designed. Since I think it’s a memory limit, a partial file would
not help all that much.

How many parts are there? Eagle has a board-stats ULP. Then we know
how many parts we need to "simulate" to try and reproduce this.

How about you put say a resistor, led, and an sot23 transistor in a
schematic, switch-to-board, place them compactly, in schematic view
load another design, but DO NOT load the board. Now back in board
save-as with a new name, and then copy-paste your three components.
select everything, repeat doubling the number of components until
you've filled your allowed design area. Now run it through your
rendering pipeline.  Now there are only three models that need to be
included.

OK. F*** it. I did that for you. Attached is a board with 192 instances
of a resistor-cap-sot23. Does this show the problem?

     Roger.

--
** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ ** +31-15-2049110
**
**    Delftechpark 11 2628 XJ  Delft, The Netherlands.  KVK: 27239233    **
f equals m times a. When your f is steady, and your m is going down
your a is going up.  -- Chris Hadfield about flying up the space shuttle.


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

I have never hit any memory limits with NopSCADlib and many parts. One of its tests has a single instance of all the parts in the library. My biggest design has about 2500 parts, maily fasteners, rather than electronic components but I don't see why they would be different. Regarding the components available I only model what I need for my own designs. Pull requests are welcome. On Sun, 14 Jul 2024 at 08:02, Rogier Wolff via Discuss < discuss@lists.openscad.org> wrote: > On Sat, Jul 13, 2024 at 10:24:22AM -0400, Harvey white via Discuss wrote: > > > 8. > > > > I’d love to give you the source files, but it’s an entire project > > with subdirectories, referring to other libraries of parts I’ve > > designed. Since I think it’s a memory limit, a partial file would > > not help all that much. > > How many parts are there? Eagle has a board-stats ULP. Then we know > how many parts we need to "simulate" to try and reproduce this. > > How about you put say a resistor, led, and an sot23 transistor in a > schematic, switch-to-board, place them compactly, in schematic view > load another design, but DO NOT load the board. Now back in board > save-as with a new name, and then copy-paste your three components. > select everything, repeat doubling the number of components until > you've filled your allowed design area. Now run it through your > rendering pipeline. Now there are only three models that need to be > included. > > OK. F*** it. I did that for you. Attached is a board with 192 instances > of a resistor-cap-sot23. Does this show the problem? > > Roger. > > -- > ** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ ** +31-15-2049110 > ** > ** Delftechpark 11 2628 XJ Delft, The Netherlands. KVK: 27239233 ** > f equals m times a. When your f is steady, and your m is going down > your a is going up. -- Chris Hadfield about flying up the space shuttle. > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
HW
Harvey white
Sun, Jul 14, 2024 3:28 PM

OK, I think that establishes that there isn't a memory limit, it's about
250 or so parts, but they are a bit complex.  So let's not think that
it's a memory limit since the demo of the openSCADlib uses much the same
parts, and more of them

I think I have something, not related to parts limits.

the following two lines:

        //translate([6.191,68.262,1.600]) rotate([0,0,270])
rotate([0,0,-90]) green_terminal(gt_5p08, 3)     //X2    0
        translate([40.640,70.802,1.600]) rotate([0,0,90])
smd_resistor(RES0603,"22");    //R2    22

when put in a module will demonstrate the problem.  The code shows one
part, the terminal block.  Comment out the terminal block and the
resistor pops in.

I've done the same thing with the original code that I made the board
with, and the next part past the green terminal doesn't get on the
board.  No error messages, thank you.

The way the code is formatted (as an explanation) is that the position
from the board is the first translate, the rotation is from the board. 
Another translation/rotation pair may happen to adjust each part
depending on how it was modeled.

I suspect that I'm not using the terminal block  correctly.

I do have some requests for nopSCADlib, but perhaps those may be better
taken off list.

I too do the parts that I need, but I'm doing more microprocessor stuff
on custom boards.  I'm also doing a PNP machine which got modeled in
OpenSCAD first, I have an algorithm that is particularly useful for
moving stepper stage.

Harvey

On 7/14/2024 4:16 AM, nop head via Discuss wrote:

I have never hit any memory limits with NopSCADlib and many parts. One
of its tests has a single instance of all the parts in the library. My
biggest design has about 2500 parts, maily fasteners, rather than
electronic components but I don't see why they would be different.

Regarding the components available I only model what I need for my own
designs. Pull requests are welcome.

On Sun, 14 Jul 2024 at 08:02, Rogier Wolff via Discuss
discuss@lists.openscad.org wrote:

 On Sat, Jul 13, 2024 at 10:24:22AM -0400, Harvey white via Discuss
 wrote:

    I’d love to give you the source files, but it’s an entire project
    with subdirectories, referring to other libraries of parts I’ve
    designed. Since I think it’s a memory limit, a partial file would
    not help all that much.

 How many parts are there? Eagle has a board-stats ULP. Then we know
 how many parts we need to "simulate" to try and reproduce this.

 How about you put say a resistor, led, and an sot23 transistor in a
 schematic, switch-to-board, place them compactly, in schematic view
 load another design, but DO NOT load the board. Now back in board
 save-as with a new name, and then copy-paste your three components.
 select everything, repeat doubling the number of components until
 you've filled your allowed design area. Now run it through your
 rendering pipeline.  Now there are only three models that need to be
 included.

 OK. F*** it. I did that for you. Attached is a board with 192
 instances
 of a resistor-cap-sot23. Does this show the problem?

         Roger.

 -- 
 ** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/
 <https://www.BitWizard.nl/> ** +31-15-2049110 **
 **    Delftechpark 11 2628 XJ  Delft, The Netherlands.  KVK:
 27239233    **
 f equals m times a. When your f is steady, and your m is going down
 your a is going up.  -- Chris Hadfield about flying up the space
 shuttle.
 _______________________________________________
 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

OK, I think that establishes that there isn't a memory limit, it's about 250 or so parts, but they are a bit complex.  So let's not think that it's a memory limit since the demo of the openSCADlib uses much the same parts, and more of them I think I have something, not related to parts limits. the following two lines:         //translate([6.191,68.262,1.600]) rotate([0,0,270]) rotate([0,0,-90]) green_terminal(gt_5p08, 3)     //X2    0         translate([40.640,70.802,1.600]) rotate([0,0,90]) smd_resistor(RES0603,"22");    //R2    22 when put in a module will demonstrate the problem.  The code shows one part, the terminal block.  Comment out the terminal block and the resistor pops in. I've done the same thing with the original code that I made the board with, and the next part past the green terminal doesn't get on the board.  No error messages, thank you. The way the code is formatted (as an explanation) is that the position from the board is the first translate, the rotation is from the board.  Another translation/rotation pair may happen to adjust each part depending on how it was modeled. I suspect that I'm not using the terminal block  correctly. I do have some requests for nopSCADlib, but perhaps those may be better taken off list. I too do the parts that I need, but I'm doing more microprocessor stuff on custom boards.  I'm also doing a PNP machine which got modeled in OpenSCAD first, I have an algorithm that is particularly useful for moving stepper stage. Harvey On 7/14/2024 4:16 AM, nop head via Discuss wrote: > I have never hit any memory limits with NopSCADlib and many parts. One > of its tests has a single instance of all the parts in the library. My > biggest design has about 2500 parts, maily fasteners, rather than > electronic components but I don't see why they would be different. > > Regarding the components available I only model what I need for my own > designs. Pull requests are welcome. > > > On Sun, 14 Jul 2024 at 08:02, Rogier Wolff via Discuss > <discuss@lists.openscad.org> wrote: > > On Sat, Jul 13, 2024 at 10:24:22AM -0400, Harvey white via Discuss > wrote: > > > 8. > > > >    I’d love to give you the source files, but it’s an entire project > >    with subdirectories, referring to other libraries of parts I’ve > >    designed. Since I think it’s a memory limit, a partial file would > >    not help all that much. > > How many parts are there? Eagle has a board-stats ULP. Then we know > how many parts we need to "simulate" to try and reproduce this. > > How about you put say a resistor, led, and an sot23 transistor in a > schematic, switch-to-board, place them compactly, in schematic view > load another design, but DO NOT load the board. Now back in board > save-as with a new name, and then copy-paste your three components. > select everything, repeat doubling the number of components until > you've filled your allowed design area. Now run it through your > rendering pipeline.  Now there are only three models that need to be > included. > > OK. F*** it. I did that for you. Attached is a board with 192 > instances > of a resistor-cap-sot23. Does this show the problem? > >         Roger. > > -- > ** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ > <https://www.BitWizard.nl/> ** +31-15-2049110 ** > **    Delftechpark 11 2628 XJ  Delft, The Netherlands.  KVK: > 27239233    ** > f equals m times a. When your f is steady, and your m is going down > your a is going up.  -- Chris Hadfield about flying up the space > shuttle. > _______________________________________________ > 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
NH
nop head
Sun, Jul 14, 2024 3:35 PM

You are missing a semicolon after the green_terminal module.

On Sun, 14 Jul 2024, 16:29 Harvey white via Discuss, <
discuss@lists.openscad.org> wrote:

OK, I think that establishes that there isn't a memory limit, it's about
250 or so parts, but they are a bit complex.  So let's not think that
it's a memory limit since the demo of the openSCADlib uses much the same
parts, and more of them

I think I have something, not related to parts limits.

the following two lines:

      //translate([6.191,68.262,1.600]) rotate([0,0,270])

rotate([0,0,-90]) green_terminal(gt_5p08, 3)    //X2    0
translate([40.640,70.802,1.600]) rotate([0,0,90])
smd_resistor(RES0603,"22");    //R2    22

when put in a module will demonstrate the problem.  The code shows one
part, the terminal block.  Comment out the terminal block and the
resistor pops in.

I've done the same thing with the original code that I made the board
with, and the next part past the green terminal doesn't get on the
board.  No error messages, thank you.

The way the code is formatted (as an explanation) is that the position
from the board is the first translate, the rotation is from the board.
Another translation/rotation pair may happen to adjust each part
depending on how it was modeled.

I suspect that I'm not using the terminal block  correctly.

I do have some requests for nopSCADlib, but perhaps those may be better
taken off list.

I too do the parts that I need, but I'm doing more microprocessor stuff
on custom boards.  I'm also doing a PNP machine which got modeled in
OpenSCAD first, I have an algorithm that is particularly useful for
moving stepper stage.

Harvey

On 7/14/2024 4:16 AM, nop head via Discuss wrote:

I have never hit any memory limits with NopSCADlib and many parts. One
of its tests has a single instance of all the parts in the library. My
biggest design has about 2500 parts, maily fasteners, rather than
electronic components but I don't see why they would be different.

Regarding the components available I only model what I need for my own
designs. Pull requests are welcome.

On Sun, 14 Jul 2024 at 08:02, Rogier Wolff via Discuss
discuss@lists.openscad.org wrote:

 On Sat, Jul 13, 2024 at 10:24:22AM -0400, Harvey white via Discuss
 wrote:
I’d love to give you the source files, but it’s an entire

project

with subdirectories, referring to other libraries of parts I’ve
designed. Since I think it’s a memory limit, a partial file

would

not help all that much.
 How many parts are there? Eagle has a board-stats ULP. Then we know
 how many parts we need to "simulate" to try and reproduce this.

 How about you put say a resistor, led, and an sot23 transistor in a
 schematic, switch-to-board, place them compactly, in schematic view
 load another design, but DO NOT load the board. Now back in board
 save-as with a new name, and then copy-paste your three components.
 select everything, repeat doubling the number of components until
 you've filled your allowed design area. Now run it through your
 rendering pipeline.  Now there are only three models that need to be
 included.

 OK. F*** it. I did that for you. Attached is a board with 192
 instances
 of a resistor-cap-sot23. Does this show the problem?

         Roger.

 --
 ** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/
 <https://www.BitWizard.nl/> ** +31-15-2049110 **
 **    Delftechpark 11 2628 XJ  Delft, The Netherlands.  KVK:
 27239233    **
 f equals m times a. When your f is steady, and your m is going down
 your a is going up.  -- Chris Hadfield about flying up the space
 shuttle.
 _______________________________________________
 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


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

You are missing a semicolon after the green_terminal module. On Sun, 14 Jul 2024, 16:29 Harvey white via Discuss, < discuss@lists.openscad.org> wrote: > OK, I think that establishes that there isn't a memory limit, it's about > 250 or so parts, but they are a bit complex. So let's not think that > it's a memory limit since the demo of the openSCADlib uses much the same > parts, and more of them > > I think I have something, not related to parts limits. > > the following two lines: > > //translate([6.191,68.262,1.600]) rotate([0,0,270]) > rotate([0,0,-90]) green_terminal(gt_5p08, 3) //X2 0 > translate([40.640,70.802,1.600]) rotate([0,0,90]) > smd_resistor(RES0603,"22"); //R2 22 > > when put in a module will demonstrate the problem. The code shows one > part, the terminal block. Comment out the terminal block and the > resistor pops in. > > I've done the same thing with the original code that I made the board > with, and the next part past the green terminal doesn't get on the > board. No error messages, thank you. > > The way the code is formatted (as an explanation) is that the position > from the board is the first translate, the rotation is from the board. > Another translation/rotation pair may happen to adjust each part > depending on how it was modeled. > > I suspect that I'm not using the terminal block correctly. > > I do have some requests for nopSCADlib, but perhaps those may be better > taken off list. > > I too do the parts that I need, but I'm doing more microprocessor stuff > on custom boards. I'm also doing a PNP machine which got modeled in > OpenSCAD first, I have an algorithm that is particularly useful for > moving stepper stage. > > Harvey > > > On 7/14/2024 4:16 AM, nop head via Discuss wrote: > > I have never hit any memory limits with NopSCADlib and many parts. One > > of its tests has a single instance of all the parts in the library. My > > biggest design has about 2500 parts, maily fasteners, rather than > > electronic components but I don't see why they would be different. > > > > Regarding the components available I only model what I need for my own > > designs. Pull requests are welcome. > > > > > > On Sun, 14 Jul 2024 at 08:02, Rogier Wolff via Discuss > > <discuss@lists.openscad.org> wrote: > > > > On Sat, Jul 13, 2024 at 10:24:22AM -0400, Harvey white via Discuss > > wrote: > > > > > 8. > > > > > > I’d love to give you the source files, but it’s an entire > project > > > with subdirectories, referring to other libraries of parts I’ve > > > designed. Since I think it’s a memory limit, a partial file > would > > > not help all that much. > > > > How many parts are there? Eagle has a board-stats ULP. Then we know > > how many parts we need to "simulate" to try and reproduce this. > > > > How about you put say a resistor, led, and an sot23 transistor in a > > schematic, switch-to-board, place them compactly, in schematic view > > load another design, but DO NOT load the board. Now back in board > > save-as with a new name, and then copy-paste your three components. > > select everything, repeat doubling the number of components until > > you've filled your allowed design area. Now run it through your > > rendering pipeline. Now there are only three models that need to be > > included. > > > > OK. F*** it. I did that for you. Attached is a board with 192 > > instances > > of a resistor-cap-sot23. Does this show the problem? > > > > Roger. > > > > -- > > ** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ > > <https://www.BitWizard.nl/> ** +31-15-2049110 ** > > ** Delftechpark 11 2628 XJ Delft, The Netherlands. KVK: > > 27239233 ** > > f equals m times a. When your f is steady, and your m is going down > > your a is going up. -- Chris Hadfield about flying up the space > > shuttle. > > _______________________________________________ > > 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 > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
NH
nop head
Sun, Jul 14, 2024 4:05 PM

Also components and their positions are normally part of a PCB definition,
so they get placed automatically.

On Sun, 14 Jul 2024 at 16:35, nop head nop.head@gmail.com wrote:

You are missing a semicolon after the green_terminal module.

On Sun, 14 Jul 2024, 16:29 Harvey white via Discuss, <
discuss@lists.openscad.org> wrote:

OK, I think that establishes that there isn't a memory limit, it's about
250 or so parts, but they are a bit complex.  So let's not think that
it's a memory limit since the demo of the openSCADlib uses much the same
parts, and more of them

I think I have something, not related to parts limits.

the following two lines:

      //translate([6.191,68.262,1.600]) rotate([0,0,270])

rotate([0,0,-90]) green_terminal(gt_5p08, 3)    //X2    0
translate([40.640,70.802,1.600]) rotate([0,0,90])
smd_resistor(RES0603,"22");    //R2    22

when put in a module will demonstrate the problem.  The code shows one
part, the terminal block.  Comment out the terminal block and the
resistor pops in.

I've done the same thing with the original code that I made the board
with, and the next part past the green terminal doesn't get on the
board.  No error messages, thank you.

The way the code is formatted (as an explanation) is that the position
from the board is the first translate, the rotation is from the board.
Another translation/rotation pair may happen to adjust each part
depending on how it was modeled.

I suspect that I'm not using the terminal block  correctly.

I do have some requests for nopSCADlib, but perhaps those may be better
taken off list.

I too do the parts that I need, but I'm doing more microprocessor stuff
on custom boards.  I'm also doing a PNP machine which got modeled in
OpenSCAD first, I have an algorithm that is particularly useful for
moving stepper stage.

Harvey

On 7/14/2024 4:16 AM, nop head via Discuss wrote:

I have never hit any memory limits with NopSCADlib and many parts. One
of its tests has a single instance of all the parts in the library. My
biggest design has about 2500 parts, maily fasteners, rather than
electronic components but I don't see why they would be different.

Regarding the components available I only model what I need for my own
designs. Pull requests are welcome.

On Sun, 14 Jul 2024 at 08:02, Rogier Wolff via Discuss
discuss@lists.openscad.org wrote:

 On Sat, Jul 13, 2024 at 10:24:22AM -0400, Harvey white via Discuss
 wrote:
I’d love to give you the source files, but it’s an entire

project

with subdirectories, referring to other libraries of parts I’ve
designed. Since I think it’s a memory limit, a partial file

would

not help all that much.
 How many parts are there? Eagle has a board-stats ULP. Then we know
 how many parts we need to "simulate" to try and reproduce this.

 How about you put say a resistor, led, and an sot23 transistor in a
 schematic, switch-to-board, place them compactly, in schematic view
 load another design, but DO NOT load the board. Now back in board
 save-as with a new name, and then copy-paste your three components.
 select everything, repeat doubling the number of components until
 you've filled your allowed design area. Now run it through your
 rendering pipeline.  Now there are only three models that need to be
 included.

 OK. F*** it. I did that for you. Attached is a board with 192
 instances
 of a resistor-cap-sot23. Does this show the problem?

         Roger.

 --
 ** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/
 <https://www.BitWizard.nl/> ** +31-15-2049110 **
 **    Delftechpark 11 2628 XJ  Delft, The Netherlands.  KVK:
 27239233    **
 f equals m times a. When your f is steady, and your m is going down
 your a is going up.  -- Chris Hadfield about flying up the space
 shuttle.
 _______________________________________________
 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


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

Also components and their positions are normally part of a PCB definition, so they get placed automatically. On Sun, 14 Jul 2024 at 16:35, nop head <nop.head@gmail.com> wrote: > You are missing a semicolon after the green_terminal module. > > On Sun, 14 Jul 2024, 16:29 Harvey white via Discuss, < > discuss@lists.openscad.org> wrote: > >> OK, I think that establishes that there isn't a memory limit, it's about >> 250 or so parts, but they are a bit complex. So let's not think that >> it's a memory limit since the demo of the openSCADlib uses much the same >> parts, and more of them >> >> I think I have something, not related to parts limits. >> >> the following two lines: >> >> //translate([6.191,68.262,1.600]) rotate([0,0,270]) >> rotate([0,0,-90]) green_terminal(gt_5p08, 3) //X2 0 >> translate([40.640,70.802,1.600]) rotate([0,0,90]) >> smd_resistor(RES0603,"22"); //R2 22 >> >> when put in a module will demonstrate the problem. The code shows one >> part, the terminal block. Comment out the terminal block and the >> resistor pops in. >> >> I've done the same thing with the original code that I made the board >> with, and the next part past the green terminal doesn't get on the >> board. No error messages, thank you. >> >> The way the code is formatted (as an explanation) is that the position >> from the board is the first translate, the rotation is from the board. >> Another translation/rotation pair may happen to adjust each part >> depending on how it was modeled. >> >> I suspect that I'm not using the terminal block correctly. >> >> I do have some requests for nopSCADlib, but perhaps those may be better >> taken off list. >> >> I too do the parts that I need, but I'm doing more microprocessor stuff >> on custom boards. I'm also doing a PNP machine which got modeled in >> OpenSCAD first, I have an algorithm that is particularly useful for >> moving stepper stage. >> >> Harvey >> >> >> On 7/14/2024 4:16 AM, nop head via Discuss wrote: >> > I have never hit any memory limits with NopSCADlib and many parts. One >> > of its tests has a single instance of all the parts in the library. My >> > biggest design has about 2500 parts, maily fasteners, rather than >> > electronic components but I don't see why they would be different. >> > >> > Regarding the components available I only model what I need for my own >> > designs. Pull requests are welcome. >> > >> > >> > On Sun, 14 Jul 2024 at 08:02, Rogier Wolff via Discuss >> > <discuss@lists.openscad.org> wrote: >> > >> > On Sat, Jul 13, 2024 at 10:24:22AM -0400, Harvey white via Discuss >> > wrote: >> > >> > > 8. >> > > >> > > I’d love to give you the source files, but it’s an entire >> project >> > > with subdirectories, referring to other libraries of parts I’ve >> > > designed. Since I think it’s a memory limit, a partial file >> would >> > > not help all that much. >> > >> > How many parts are there? Eagle has a board-stats ULP. Then we know >> > how many parts we need to "simulate" to try and reproduce this. >> > >> > How about you put say a resistor, led, and an sot23 transistor in a >> > schematic, switch-to-board, place them compactly, in schematic view >> > load another design, but DO NOT load the board. Now back in board >> > save-as with a new name, and then copy-paste your three components. >> > select everything, repeat doubling the number of components until >> > you've filled your allowed design area. Now run it through your >> > rendering pipeline. Now there are only three models that need to be >> > included. >> > >> > OK. F*** it. I did that for you. Attached is a board with 192 >> > instances >> > of a resistor-cap-sot23. Does this show the problem? >> > >> > Roger. >> > >> > -- >> > ** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ >> > <https://www.BitWizard.nl/> ** +31-15-2049110 ** >> > ** Delftechpark 11 2628 XJ Delft, The Netherlands. KVK: >> > 27239233 ** >> > f equals m times a. When your f is steady, and your m is going down >> > your a is going up. -- Chris Hadfield about flying up the space >> > shuttle. >> > _______________________________________________ >> > 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 >> _______________________________________________ >> OpenSCAD mailing list >> To unsubscribe send an email to discuss-leave@lists.openscad.org >> >
NH
nop head
Sun, Jul 14, 2024 4:10 PM

The reason there is no error message is because you are passing the
resistor as a child of the green terminal but the green terminal module
doesn't do anything with children.

On Sun, 14 Jul 2024 at 17:05, nop head nop.head@gmail.com wrote:

Also components and their positions are normally part of a PCB definition,
so they get placed automatically.

On Sun, 14 Jul 2024 at 16:35, nop head nop.head@gmail.com wrote:

You are missing a semicolon after the green_terminal module.

On Sun, 14 Jul 2024, 16:29 Harvey white via Discuss, <
discuss@lists.openscad.org> wrote:

OK, I think that establishes that there isn't a memory limit, it's about
250 or so parts, but they are a bit complex.  So let's not think that
it's a memory limit since the demo of the openSCADlib uses much the same
parts, and more of them

I think I have something, not related to parts limits.

the following two lines:

      //translate([6.191,68.262,1.600]) rotate([0,0,270])

rotate([0,0,-90]) green_terminal(gt_5p08, 3)    //X2    0
translate([40.640,70.802,1.600]) rotate([0,0,90])
smd_resistor(RES0603,"22");    //R2    22

when put in a module will demonstrate the problem.  The code shows one
part, the terminal block.  Comment out the terminal block and the
resistor pops in.

I've done the same thing with the original code that I made the board
with, and the next part past the green terminal doesn't get on the
board.  No error messages, thank you.

The way the code is formatted (as an explanation) is that the position
from the board is the first translate, the rotation is from the board.
Another translation/rotation pair may happen to adjust each part
depending on how it was modeled.

I suspect that I'm not using the terminal block  correctly.

I do have some requests for nopSCADlib, but perhaps those may be better
taken off list.

I too do the parts that I need, but I'm doing more microprocessor stuff
on custom boards.  I'm also doing a PNP machine which got modeled in
OpenSCAD first, I have an algorithm that is particularly useful for
moving stepper stage.

Harvey

On 7/14/2024 4:16 AM, nop head via Discuss wrote:

I have never hit any memory limits with NopSCADlib and many parts. One
of its tests has a single instance of all the parts in the library. My
biggest design has about 2500 parts, maily fasteners, rather than
electronic components but I don't see why they would be different.

Regarding the components available I only model what I need for my own
designs. Pull requests are welcome.

On Sun, 14 Jul 2024 at 08:02, Rogier Wolff via Discuss
discuss@lists.openscad.org wrote:

 On Sat, Jul 13, 2024 at 10:24:22AM -0400, Harvey white via Discuss
 wrote:
I’d love to give you the source files, but it’s an entire

project

with subdirectories, referring to other libraries of parts

I’ve

designed. Since I think it’s a memory limit, a partial file

would

not help all that much.
 How many parts are there? Eagle has a board-stats ULP. Then we know
 how many parts we need to "simulate" to try and reproduce this.

 How about you put say a resistor, led, and an sot23 transistor in a
 schematic, switch-to-board, place them compactly, in schematic view
 load another design, but DO NOT load the board. Now back in board
 save-as with a new name, and then copy-paste your three components.
 select everything, repeat doubling the number of components until
 you've filled your allowed design area. Now run it through your
 rendering pipeline.  Now there are only three models that need to

be

 included.

 OK. F*** it. I did that for you. Attached is a board with 192
 instances
 of a resistor-cap-sot23. Does this show the problem?

         Roger.

 --
 ** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/
 <https://www.BitWizard.nl/> ** +31-15-2049110 **
 **    Delftechpark 11 2628 XJ  Delft, The Netherlands.  KVK:
 27239233    **
 f equals m times a. When your f is steady, and your m is going down
 your a is going up.  -- Chris Hadfield about flying up the space
 shuttle.
 _______________________________________________
 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


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

The reason there is no error message is because you are passing the resistor as a child of the green terminal but the green terminal module doesn't do anything with children. On Sun, 14 Jul 2024 at 17:05, nop head <nop.head@gmail.com> wrote: > Also components and their positions are normally part of a PCB definition, > so they get placed automatically. > > > On Sun, 14 Jul 2024 at 16:35, nop head <nop.head@gmail.com> wrote: > >> You are missing a semicolon after the green_terminal module. >> >> On Sun, 14 Jul 2024, 16:29 Harvey white via Discuss, < >> discuss@lists.openscad.org> wrote: >> >>> OK, I think that establishes that there isn't a memory limit, it's about >>> 250 or so parts, but they are a bit complex. So let's not think that >>> it's a memory limit since the demo of the openSCADlib uses much the same >>> parts, and more of them >>> >>> I think I have something, not related to parts limits. >>> >>> the following two lines: >>> >>> //translate([6.191,68.262,1.600]) rotate([0,0,270]) >>> rotate([0,0,-90]) green_terminal(gt_5p08, 3) //X2 0 >>> translate([40.640,70.802,1.600]) rotate([0,0,90]) >>> smd_resistor(RES0603,"22"); //R2 22 >>> >>> when put in a module will demonstrate the problem. The code shows one >>> part, the terminal block. Comment out the terminal block and the >>> resistor pops in. >>> >>> I've done the same thing with the original code that I made the board >>> with, and the next part past the green terminal doesn't get on the >>> board. No error messages, thank you. >>> >>> The way the code is formatted (as an explanation) is that the position >>> from the board is the first translate, the rotation is from the board. >>> Another translation/rotation pair may happen to adjust each part >>> depending on how it was modeled. >>> >>> I suspect that I'm not using the terminal block correctly. >>> >>> I do have some requests for nopSCADlib, but perhaps those may be better >>> taken off list. >>> >>> I too do the parts that I need, but I'm doing more microprocessor stuff >>> on custom boards. I'm also doing a PNP machine which got modeled in >>> OpenSCAD first, I have an algorithm that is particularly useful for >>> moving stepper stage. >>> >>> Harvey >>> >>> >>> On 7/14/2024 4:16 AM, nop head via Discuss wrote: >>> > I have never hit any memory limits with NopSCADlib and many parts. One >>> > of its tests has a single instance of all the parts in the library. My >>> > biggest design has about 2500 parts, maily fasteners, rather than >>> > electronic components but I don't see why they would be different. >>> > >>> > Regarding the components available I only model what I need for my own >>> > designs. Pull requests are welcome. >>> > >>> > >>> > On Sun, 14 Jul 2024 at 08:02, Rogier Wolff via Discuss >>> > <discuss@lists.openscad.org> wrote: >>> > >>> > On Sat, Jul 13, 2024 at 10:24:22AM -0400, Harvey white via Discuss >>> > wrote: >>> > >>> > > 8. >>> > > >>> > > I’d love to give you the source files, but it’s an entire >>> project >>> > > with subdirectories, referring to other libraries of parts >>> I’ve >>> > > designed. Since I think it’s a memory limit, a partial file >>> would >>> > > not help all that much. >>> > >>> > How many parts are there? Eagle has a board-stats ULP. Then we know >>> > how many parts we need to "simulate" to try and reproduce this. >>> > >>> > How about you put say a resistor, led, and an sot23 transistor in a >>> > schematic, switch-to-board, place them compactly, in schematic view >>> > load another design, but DO NOT load the board. Now back in board >>> > save-as with a new name, and then copy-paste your three components. >>> > select everything, repeat doubling the number of components until >>> > you've filled your allowed design area. Now run it through your >>> > rendering pipeline. Now there are only three models that need to >>> be >>> > included. >>> > >>> > OK. F*** it. I did that for you. Attached is a board with 192 >>> > instances >>> > of a resistor-cap-sot23. Does this show the problem? >>> > >>> > Roger. >>> > >>> > -- >>> > ** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ >>> > <https://www.BitWizard.nl/> ** +31-15-2049110 ** >>> > ** Delftechpark 11 2628 XJ Delft, The Netherlands. KVK: >>> > 27239233 ** >>> > f equals m times a. When your f is steady, and your m is going down >>> > your a is going up. -- Chris Hadfield about flying up the space >>> > shuttle. >>> > _______________________________________________ >>> > 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 >>> _______________________________________________ >>> OpenSCAD mailing list >>> To unsubscribe send an email to discuss-leave@lists.openscad.org >>> >>
HW
Harvey white
Sun, Jul 14, 2024 4:48 PM

The board I have designed has rounded corners, but a different radius
(including none) on each corner.  I could not figure out how to generate
a board using your library.

This gives rise to the situation I used.

I could not figure out how to do all the parts using your library,
specifically, a 5 pin chip SOT23_5 (74LVC1G125DBG)  It's a single
section of a 74LS125.

Still work to be done, I need to put in the milling layer.

Harvey

On 7/14/2024 12:05 PM, nop head via Discuss wrote:

Also components and their positions are normally part of a PCB
definition, so they get placed automatically.

On Sun, 14 Jul 2024 at 16:35, nop head nop.head@gmail.com wrote:

 You are missing a semicolon after the green_terminal module.


 On Sun, 14 Jul 2024, 16:29 Harvey white via Discuss,
 <discuss@lists.openscad.org> wrote:

     OK, I think that establishes that there isn't a memory limit,
     it's about
     250 or so parts, but they are a bit complex.  So let's not
     think that
     it's a memory limit since the demo of the openSCADlib uses
     much the same
     parts, and more of them

     I think I have something, not related to parts limits.

     the following two lines:

              //translate([6.191,68.262,1.600]) rotate([0,0,270])
     rotate([0,0,-90]) green_terminal(gt_5p08, 3)     //X2    0
              translate([40.640,70.802,1.600]) rotate([0,0,90])
     smd_resistor(RES0603,"22");    //R2    22

     when put in a module will demonstrate the problem.  The code
     shows one
     part, the terminal block.  Comment out the terminal block and the
     resistor pops in.

     I've done the same thing with the original code that I made
     the board
     with, and the next part past the green terminal doesn't get on
     the
     board.  No error messages, thank you.

     The way the code is formatted (as an explanation) is that the
     position
     from the board is the first translate, the rotation is from
     the board.
     Another translation/rotation pair may happen to adjust each part
     depending on how it was modeled.

     I suspect that I'm not using the terminal block correctly.

     I do have some requests for nopSCADlib, but perhaps those may
     be better
     taken off list.

     I too do the parts that I need, but I'm doing more
     microprocessor stuff
     on custom boards.  I'm also doing a PNP machine which got
     modeled in
     OpenSCAD first, I have an algorithm that is particularly
     useful for
     moving stepper stage.

     Harvey


     On 7/14/2024 4:16 AM, nop head via Discuss wrote:

I have never hit any memory limits with NopSCADlib and many

     parts. One

of its tests has a single instance of all the parts in the

     library. My

biggest design has about 2500 parts, maily fasteners, rather

     than

electronic components but I don't see why they would be

     different.

Regarding the components available I only model what I need

     for my own

designs. Pull requests are welcome.

On Sun, 14 Jul 2024 at 08:02, Rogier Wolff via Discuss
discuss@lists.openscad.org wrote:

     On Sat, Jul 13, 2024 at 10:24:22AM -0400, Harvey white

     via Discuss

     wrote:

     > 8.
     >
     >    I’d love to give you the source files, but it’s an

     entire project

     >    with subdirectories, referring to other libraries

     of parts I’ve

     >    designed. Since I think it’s a memory limit, a

     partial file would

     >    not help all that much.

     How many parts are there? Eagle has a board-stats ULP.

     Then we know

     how many parts we need to "simulate" to try and

     reproduce this.

     How about you put say a resistor, led, and an sot23

     transistor in a

     schematic, switch-to-board, place them compactly, in

     schematic view

     load another design, but DO NOT load the board. Now back

     in board

     save-as with a new name, and then copy-paste your three

     components.

     select everything, repeat doubling the number of

     components until

     you've filled your allowed design area. Now run it

     through your

     rendering pipeline.  Now there are only three models

     that need to be

     included.

     OK. F*** it. I did that for you. Attached is a board

     with 192

     instances
     of a resistor-cap-sot23. Does this show the problem?

             Roger.

     --
     ** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/

     <https://www.BitWizard.nl/>

     <https://www.BitWizard.nl/ https://www.BitWizard.nl/>

     ** +31-15-2049110 **

     **    Delftechpark 11 2628 XJ  Delft, The Netherlands.  KVK:
     27239233    **
     f equals m times a. When your f is steady, and your m is

     going down

     your a is going up.  -- Chris Hadfield about flying up

     the space

     shuttle.
     _______________________________________________
     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

     _______________________________________________
     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

The board I have designed has rounded corners, but a different radius (including none) on each corner.  I could not figure out how to generate a board using your library. This gives rise to the situation I used. I could not figure out how to do all the parts using your library, specifically, a 5 pin chip SOT23_5 (74LVC1G125DBG)  It's a single section of a 74LS125. Still work to be done, I need to put in the milling layer. Harvey On 7/14/2024 12:05 PM, nop head via Discuss wrote: > Also components and their positions are normally part of a PCB > definition, so they get placed automatically. > > > On Sun, 14 Jul 2024 at 16:35, nop head <nop.head@gmail.com> wrote: > > You are missing a semicolon after the green_terminal module. > > > On Sun, 14 Jul 2024, 16:29 Harvey white via Discuss, > <discuss@lists.openscad.org> wrote: > > OK, I think that establishes that there isn't a memory limit, > it's about > 250 or so parts, but they are a bit complex.  So let's not > think that > it's a memory limit since the demo of the openSCADlib uses > much the same > parts, and more of them > > I think I have something, not related to parts limits. > > the following two lines: > >          //translate([6.191,68.262,1.600]) rotate([0,0,270]) > rotate([0,0,-90]) green_terminal(gt_5p08, 3)     //X2    0 >          translate([40.640,70.802,1.600]) rotate([0,0,90]) > smd_resistor(RES0603,"22");    //R2    22 > > when put in a module will demonstrate the problem.  The code > shows one > part, the terminal block.  Comment out the terminal block and the > resistor pops in. > > I've done the same thing with the original code that I made > the board > with, and the next part past the green terminal doesn't get on > the > board.  No error messages, thank you. > > The way the code is formatted (as an explanation) is that the > position > from the board is the first translate, the rotation is from > the board. > Another translation/rotation pair may happen to adjust each part > depending on how it was modeled. > > I suspect that I'm not using the terminal block correctly. > > I do have some requests for nopSCADlib, but perhaps those may > be better > taken off list. > > I too do the parts that I need, but I'm doing more > microprocessor stuff > on custom boards.  I'm also doing a PNP machine which got > modeled in > OpenSCAD first, I have an algorithm that is particularly > useful for > moving stepper stage. > > Harvey > > > On 7/14/2024 4:16 AM, nop head via Discuss wrote: > > I have never hit any memory limits with NopSCADlib and many > parts. One > > of its tests has a single instance of all the parts in the > library. My > > biggest design has about 2500 parts, maily fasteners, rather > than > > electronic components but I don't see why they would be > different. > > > > Regarding the components available I only model what I need > for my own > > designs. Pull requests are welcome. > > > > > > On Sun, 14 Jul 2024 at 08:02, Rogier Wolff via Discuss > > <discuss@lists.openscad.org> wrote: > > > >     On Sat, Jul 13, 2024 at 10:24:22AM -0400, Harvey white > via Discuss > >     wrote: > > > >     > 8. > >     > > >     >    I’d love to give you the source files, but it’s an > entire project > >     >    with subdirectories, referring to other libraries > of parts I’ve > >     >    designed. Since I think it’s a memory limit, a > partial file would > >     >    not help all that much. > > > >     How many parts are there? Eagle has a board-stats ULP. > Then we know > >     how many parts we need to "simulate" to try and > reproduce this. > > > >     How about you put say a resistor, led, and an sot23 > transistor in a > >     schematic, switch-to-board, place them compactly, in > schematic view > >     load another design, but DO NOT load the board. Now back > in board > >     save-as with a new name, and then copy-paste your three > components. > >     select everything, repeat doubling the number of > components until > >     you've filled your allowed design area. Now run it > through your > >     rendering pipeline.  Now there are only three models > that need to be > >     included. > > > >     OK. F*** it. I did that for you. Attached is a board > with 192 > >     instances > >     of a resistor-cap-sot23. Does this show the problem? > > > >             Roger. > > > >     -- > >     ** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ > <https://www.BitWizard.nl/> > >     <https://www.BitWizard.nl/ <https://www.BitWizard.nl/>> > ** +31-15-2049110 ** > >     **    Delftechpark 11 2628 XJ  Delft, The Netherlands.  KVK: > >     27239233    ** > >     f equals m times a. When your f is steady, and your m is > going down > >     your a is going up.  -- Chris Hadfield about flying up > the space > >     shuttle. > >     _______________________________________________ > >     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 > _______________________________________________ > 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
NH
nop head
Sun, Jul 14, 2024 5:04 PM

You can model any shape board by specifying a polygon.

[image: image.png]

This one was done like this:

Blinder = pcb("Blinder", "PCB Blinder", [42.0, 45.0, 1.6], colour =
grey(90), hole_d = 3.2, holes = [[28.00096, 8.001]],
parts_on_bom = true,
polygon = rounded_polygon([
[-21.0, -22.5, 0],
[ 11.0, -22.5, 0],
[ 13.0, -13.5,  2],
[ 21,  -11.5,  0],
[ 19,  20.5,  -2],
[-19,  20.5,  -2],
]),

components = [
    [21.5, 34.9625, 90, "smd_cap", CAP0805, 0.8, "100n"],
    [6.513, 14.6185, 90, "smd_cap", CAP0805, 0.8, "220n"],
    [23.15, 4.0775, -90, "smd_cap", CAP0805, 0.8, "100n"],
    [13.625, 14.47, 90, "smd_cap", CAP0805, 0.8, "15n"],
    [23.15, 9.1575, -90, "smd_cap", CAP0805, 0.8, "15n"],
    [40.0 - led_pitch(LED3mm) / 2, 40.0, 180, "led", LED3mm, "green",

2.0, 5],
[11.72, 1.35, 180, "multiwatt11", "L6203", 3],
[5.37, 19.55, 0, "molex_hdr", 02, undef],
[27.0, 15.02, 180, "jst_ph", 3, false],
[37.0, 15.0, 180, "jst_ph", 3, false],
[18.34, 15.74, 180, "jst_ph", 2, false],
[15.022, 30.583, 90, "smd_res", RES0805, "10K"],
[15.0, 34.79, 90, "smd_res", RES0805, "10K"],
[15.022, 25.757, -90, "smd_res", RES0805, "10K"],
[12.72, 20.82, 180, "smd_res", RES0805, "10K"],
[21.5, 20.0, 90, "smd_res", RES0805, "10K"],
[35.0, 41.0, 90, "smd_res", RES0805, "2K2"],
[11.339, 14.597, 90, "smd_res", RES0805, "1K"],
[8.545, 14.581, 90, "smd_res", RES0805, "1K"],
[28.6442, 40.9983, 0, "button", button_6mm_7, true],
[18.45, 41.0, 0, "button", button_6mm_7, true],
[7.91, 25.9 + pcb_length(tiny_buck) / 2 -
pcb_holes(tiny_buck)[0].x, 90, "pcb", 1.2, tiny_buck],
[36.668, 27.277, 0, "pcb", 0, ESP_12F],
],
grid = [18.0, 20.82, 1, 6, silver, inch(0.1), inch(0.1)
]);

To model an SOT23_5 I would copy the SOT23_6 and add an extra parameter to
allow missing legs to be listed.

On Sun, 14 Jul 2024 at 17:49, Harvey white via Discuss <
discuss@lists.openscad.org> wrote:

The board I have designed has rounded corners, but a different radius
(including none) on each corner.  I could not figure out how to generate
a board using your library.

This gives rise to the situation I used.

I could not figure out how to do all the parts using your library,
specifically, a 5 pin chip SOT23_5 (74LVC1G125DBG)  It's a single
section of a 74LS125.

Still work to be done, I need to put in the milling layer.

Harvey

On 7/14/2024 12:05 PM, nop head via Discuss wrote:

Also components and their positions are normally part of a PCB
definition, so they get placed automatically.

On Sun, 14 Jul 2024 at 16:35, nop head nop.head@gmail.com wrote:

 You are missing a semicolon after the green_terminal module.


 On Sun, 14 Jul 2024, 16:29 Harvey white via Discuss,
 <discuss@lists.openscad.org> wrote:

     OK, I think that establishes that there isn't a memory limit,
     it's about
     250 or so parts, but they are a bit complex.  So let's not
     think that
     it's a memory limit since the demo of the openSCADlib uses
     much the same
     parts, and more of them

     I think I have something, not related to parts limits.

     the following two lines:

              //translate([6.191,68.262,1.600]) rotate([0,0,270])
     rotate([0,0,-90]) green_terminal(gt_5p08, 3)     //X2    0
              translate([40.640,70.802,1.600]) rotate([0,0,90])
     smd_resistor(RES0603,"22");    //R2    22

     when put in a module will demonstrate the problem.  The code
     shows one
     part, the terminal block.  Comment out the terminal block and the
     resistor pops in.

     I've done the same thing with the original code that I made
     the board
     with, and the next part past the green terminal doesn't get on
     the
     board.  No error messages, thank you.

     The way the code is formatted (as an explanation) is that the
     position
     from the board is the first translate, the rotation is from
     the board.
     Another translation/rotation pair may happen to adjust each part
     depending on how it was modeled.

     I suspect that I'm not using the terminal block correctly.

     I do have some requests for nopSCADlib, but perhaps those may
     be better
     taken off list.

     I too do the parts that I need, but I'm doing more
     microprocessor stuff
     on custom boards.  I'm also doing a PNP machine which got
     modeled in
     OpenSCAD first, I have an algorithm that is particularly
     useful for
     moving stepper stage.

     Harvey


     On 7/14/2024 4:16 AM, nop head via Discuss wrote:

I have never hit any memory limits with NopSCADlib and many

     parts. One

of its tests has a single instance of all the parts in the

     library. My

biggest design has about 2500 parts, maily fasteners, rather

     than

electronic components but I don't see why they would be

     different.

Regarding the components available I only model what I need

     for my own

designs. Pull requests are welcome.

On Sun, 14 Jul 2024 at 08:02, Rogier Wolff via Discuss
discuss@lists.openscad.org wrote:

 On Sat, Jul 13, 2024 at 10:24:22AM -0400, Harvey white
     via Discuss
 wrote:
I’d love to give you the source files, but it’s an
     entire project
with subdirectories, referring to other libraries
     of parts I’ve
designed. Since I think it’s a memory limit, a
     partial file would
not help all that much.
 How many parts are there? Eagle has a board-stats ULP.
     Then we know
 how many parts we need to "simulate" to try and
     reproduce this.
 How about you put say a resistor, led, and an sot23
     transistor in a
 schematic, switch-to-board, place them compactly, in
     schematic view
 load another design, but DO NOT load the board. Now back
     in board
 save-as with a new name, and then copy-paste your three
     components.
 select everything, repeat doubling the number of
     components until
 you've filled your allowed design area. Now run it
     through your
 rendering pipeline.  Now there are only three models
     that need to be
 included.

 OK. F*** it. I did that for you. Attached is a board
     with 192
 instances
 of a resistor-cap-sot23. Does this show the problem?

         Roger.

 --
 ** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/
     <https://www.BitWizard.nl/>
 <https://www.BitWizard.nl/ <https://www.BitWizard.nl/>>
     ** +31-15-2049110 **
 **    Delftechpark 11 2628 XJ  Delft, The Netherlands.

KVK:

 27239233    **
 f equals m times a. When your f is steady, and your m is
     going down
 your a is going up.  -- Chris Hadfield about flying up
     the space
 shuttle.
 _______________________________________________
 OpenSCAD mailing list
 To unsubscribe send an email to
     discuss-leave@lists.openscad.org

OpenSCAD mailing list
To unsubscribe send an email to

     _______________________________________________
     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


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

You can model any shape board by specifying a polygon. [image: image.png] This one was done like this: Blinder = pcb("Blinder", "PCB Blinder", [42.0, 45.0, 1.6], colour = grey(90), hole_d = 3.2, holes = [[28.00096, 8.001]], parts_on_bom = true, polygon = rounded_polygon([ [-21.0, -22.5, 0], [ 11.0, -22.5, 0], [ 13.0, -13.5, 2], [ 21, -11.5, 0], [ 19, 20.5, -2], [-19, 20.5, -2], ]), components = [ [21.5, 34.9625, 90, "smd_cap", CAP0805, 0.8, "100n"], [6.513, 14.6185, 90, "smd_cap", CAP0805, 0.8, "220n"], [23.15, 4.0775, -90, "smd_cap", CAP0805, 0.8, "100n"], [13.625, 14.47, 90, "smd_cap", CAP0805, 0.8, "15n"], [23.15, 9.1575, -90, "smd_cap", CAP0805, 0.8, "15n"], [40.0 - led_pitch(LED3mm) / 2, 40.0, 180, "led", LED3mm, "green", 2.0, 5], [11.72, 1.35, 180, "multiwatt11", "L6203", 3], [5.37, 19.55, 0, "molex_hdr", 02, undef], [27.0, 15.02, 180, "jst_ph", 3, false], [37.0, 15.0, 180, "jst_ph", 3, false], [18.34, 15.74, 180, "jst_ph", 2, false], [15.022, 30.583, 90, "smd_res", RES0805, "10K"], [15.0, 34.79, 90, "smd_res", RES0805, "10K"], [15.022, 25.757, -90, "smd_res", RES0805, "10K"], [12.72, 20.82, 180, "smd_res", RES0805, "10K"], [21.5, 20.0, 90, "smd_res", RES0805, "10K"], [35.0, 41.0, 90, "smd_res", RES0805, "2K2"], [11.339, 14.597, 90, "smd_res", RES0805, "1K"], [8.545, 14.581, 90, "smd_res", RES0805, "1K"], [28.6442, 40.9983, 0, "button", button_6mm_7, true], [18.45, 41.0, 0, "button", button_6mm_7, true], [7.91, 25.9 + pcb_length(tiny_buck) / 2 - pcb_holes(tiny_buck)[0].x, 90, "pcb", 1.2, tiny_buck], [36.668, 27.277, 0, "pcb", 0, ESP_12F], ], grid = [18.0, 20.82, 1, 6, silver, inch(0.1), inch(0.1) ]); To model an SOT23_5 I would copy the SOT23_6 and add an extra parameter to allow missing legs to be listed. On Sun, 14 Jul 2024 at 17:49, Harvey white via Discuss < discuss@lists.openscad.org> wrote: > The board I have designed has rounded corners, but a different radius > (including none) on each corner. I could not figure out how to generate > a board using your library. > > This gives rise to the situation I used. > > I could not figure out how to do all the parts using your library, > specifically, a 5 pin chip SOT23_5 (74LVC1G125DBG) It's a single > section of a 74LS125. > > Still work to be done, I need to put in the milling layer. > > Harvey > > > On 7/14/2024 12:05 PM, nop head via Discuss wrote: > > Also components and their positions are normally part of a PCB > > definition, so they get placed automatically. > > > > > > On Sun, 14 Jul 2024 at 16:35, nop head <nop.head@gmail.com> wrote: > > > > You are missing a semicolon after the green_terminal module. > > > > > > On Sun, 14 Jul 2024, 16:29 Harvey white via Discuss, > > <discuss@lists.openscad.org> wrote: > > > > OK, I think that establishes that there isn't a memory limit, > > it's about > > 250 or so parts, but they are a bit complex. So let's not > > think that > > it's a memory limit since the demo of the openSCADlib uses > > much the same > > parts, and more of them > > > > I think I have something, not related to parts limits. > > > > the following two lines: > > > > //translate([6.191,68.262,1.600]) rotate([0,0,270]) > > rotate([0,0,-90]) green_terminal(gt_5p08, 3) //X2 0 > > translate([40.640,70.802,1.600]) rotate([0,0,90]) > > smd_resistor(RES0603,"22"); //R2 22 > > > > when put in a module will demonstrate the problem. The code > > shows one > > part, the terminal block. Comment out the terminal block and the > > resistor pops in. > > > > I've done the same thing with the original code that I made > > the board > > with, and the next part past the green terminal doesn't get on > > the > > board. No error messages, thank you. > > > > The way the code is formatted (as an explanation) is that the > > position > > from the board is the first translate, the rotation is from > > the board. > > Another translation/rotation pair may happen to adjust each part > > depending on how it was modeled. > > > > I suspect that I'm not using the terminal block correctly. > > > > I do have some requests for nopSCADlib, but perhaps those may > > be better > > taken off list. > > > > I too do the parts that I need, but I'm doing more > > microprocessor stuff > > on custom boards. I'm also doing a PNP machine which got > > modeled in > > OpenSCAD first, I have an algorithm that is particularly > > useful for > > moving stepper stage. > > > > Harvey > > > > > > On 7/14/2024 4:16 AM, nop head via Discuss wrote: > > > I have never hit any memory limits with NopSCADlib and many > > parts. One > > > of its tests has a single instance of all the parts in the > > library. My > > > biggest design has about 2500 parts, maily fasteners, rather > > than > > > electronic components but I don't see why they would be > > different. > > > > > > Regarding the components available I only model what I need > > for my own > > > designs. Pull requests are welcome. > > > > > > > > > On Sun, 14 Jul 2024 at 08:02, Rogier Wolff via Discuss > > > <discuss@lists.openscad.org> wrote: > > > > > > On Sat, Jul 13, 2024 at 10:24:22AM -0400, Harvey white > > via Discuss > > > wrote: > > > > > > > 8. > > > > > > > > I’d love to give you the source files, but it’s an > > entire project > > > > with subdirectories, referring to other libraries > > of parts I’ve > > > > designed. Since I think it’s a memory limit, a > > partial file would > > > > not help all that much. > > > > > > How many parts are there? Eagle has a board-stats ULP. > > Then we know > > > how many parts we need to "simulate" to try and > > reproduce this. > > > > > > How about you put say a resistor, led, and an sot23 > > transistor in a > > > schematic, switch-to-board, place them compactly, in > > schematic view > > > load another design, but DO NOT load the board. Now back > > in board > > > save-as with a new name, and then copy-paste your three > > components. > > > select everything, repeat doubling the number of > > components until > > > you've filled your allowed design area. Now run it > > through your > > > rendering pipeline. Now there are only three models > > that need to be > > > included. > > > > > > OK. F*** it. I did that for you. Attached is a board > > with 192 > > > instances > > > of a resistor-cap-sot23. Does this show the problem? > > > > > > Roger. > > > > > > -- > > > ** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ > > <https://www.BitWizard.nl/> > > > <https://www.BitWizard.nl/ <https://www.BitWizard.nl/>> > > ** +31-15-2049110 ** > > > ** Delftechpark 11 2628 XJ Delft, The Netherlands. > KVK: > > > 27239233 ** > > > f equals m times a. When your f is steady, and your m is > > going down > > > your a is going up. -- Chris Hadfield about flying up > > the space > > > shuttle. > > > _______________________________________________ > > > 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 > > _______________________________________________ > > 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 > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
HW
Harvey white
Sun, Jul 14, 2024 5:13 PM

Thanks, didn't know how that worked.

Yet another rewrite coming.  That'll handle milling layer stuff as soon
as I parse it out.

I will have to dig into your code and trap out the legs (for the missing
legs).

Harvey

On 7/14/2024 1:04 PM, nop head via Discuss wrote:

You can model any shape board by specifying a polygon.

image.png

This one was done like this:

Blinder = pcb("Blinder", "PCB Blinder", [42.0, 45.0, 1.6], colour =
grey(90), hole_d = 3.2, holes = [[28.00096, 8.001]],
    parts_on_bom = true,
    polygon = rounded_polygon([
        [-21.0, -22.5, 0],
        [ 11.0, -22.5, 0],
        [ 13.0, -13.5,  2],
        [ 21,  -11.5,  0],
        [ 19,   20.5,  -2],
        [-19,   20.5,  -2],
    ]),

    components = [
        [21.5, 34.9625, 90, "smd_cap", CAP0805, 0.8, "100n"],
        [6.513, 14.6185, 90, "smd_cap", CAP0805, 0.8, "220n"],
        [23.15, 4.0775, -90, "smd_cap", CAP0805, 0.8, "100n"],
        [13.625, 14.47, 90, "smd_cap", CAP0805, 0.8, "15n"],
        [23.15, 9.1575, -90, "smd_cap", CAP0805, 0.8, "15n"],
        [40.0 - led_pitch(LED3mm) / 2, 40.0, 180, "led", LED3mm,
"green", 2.0, 5],
        [11.72, 1.35, 180, "multiwatt11", "L6203", 3],
        [5.37, 19.55, 0, "molex_hdr", 02, undef],
        [27.0, 15.02, 180, "jst_ph", 3, false],
        [37.0, 15.0, 180, "jst_ph", 3, false],
        [18.34, 15.74, 180, "jst_ph", 2, false],
        [15.022, 30.583, 90, "smd_res", RES0805, "10K"],
        [15.0, 34.79, 90, "smd_res", RES0805, "10K"],
        [15.022, 25.757, -90, "smd_res", RES0805, "10K"],
        [12.72, 20.82, 180, "smd_res", RES0805, "10K"],
        [21.5, 20.0, 90, "smd_res", RES0805, "10K"],
        [35.0, 41.0, 90, "smd_res", RES0805, "2K2"],
        [11.339, 14.597, 90, "smd_res", RES0805, "1K"],
        [8.545, 14.581, 90, "smd_res", RES0805, "1K"],
        [28.6442, 40.9983, 0, "button", button_6mm_7, true],
        [18.45, 41.0, 0, "button", button_6mm_7, true],
        [7.91, 25.9 + pcb_length(tiny_buck) / 2 -
pcb_holes(tiny_buck)[0].x, 90, "pcb", 1.2, tiny_buck],
        [36.668, 27.277, 0, "pcb", 0, ESP_12F],
    ],
    grid = [18.0, 20.82, 1, 6, silver, inch(0.1), inch(0.1)
]);

To model an SOT23_5 I would copy the SOT23_6 and add an extra
parameter to allow missing legs to be listed.

On Sun, 14 Jul 2024 at 17:49, Harvey white via Discuss
discuss@lists.openscad.org wrote:

 The board I have designed has rounded corners, but a different radius
 (including none) on each corner.  I could not figure out how to
 generate
 a board using your library.

 This gives rise to the situation I used.

 I could not figure out how to do all the parts using your library,
 specifically, a 5 pin chip SOT23_5 (74LVC1G125DBG)  It's a single
 section of a 74LS125.

 Still work to be done, I need to put in the milling layer.

 Harvey


 On 7/14/2024 12:05 PM, nop head via Discuss wrote:

Also components and their positions are normally part of a PCB
definition, so they get placed automatically.

On Sun, 14 Jul 2024 at 16:35, nop head nop.head@gmail.com wrote:

     You are missing a semicolon after the green_terminal module.

     On Sun, 14 Jul 2024, 16:29 Harvey white via Discuss,
     discuss@lists.openscad.org wrote:

         OK, I think that establishes that there isn't a memory

 limit,

         it's about
         250 or so parts, but they are a bit complex.  So let's not
         think that
         it's a memory limit since the demo of the openSCADlib uses
         much the same
         parts, and more of them

         I think I have something, not related to parts limits.

         the following two lines:

                  //translate([6.191,68.262,1.600]) rotate([0,0,270])
         rotate([0,0,-90]) green_terminal(gt_5p08, 3) //X2    0
                  translate([40.640,70.802,1.600]) rotate([0,0,90])
         smd_resistor(RES0603,"22");    //R2    22

         when put in a module will demonstrate the problem.  The code
         shows one
         part, the terminal block.  Comment out the terminal

 block and the

         resistor pops in.

         I've done the same thing with the original code that I made
         the board
         with, and the next part past the green terminal doesn't

 get on

         the
         board.  No error messages, thank you.

         The way the code is formatted (as an explanation) is

 that the

         position
         from the board is the first translate, the rotation is from
         the board.
         Another translation/rotation pair may happen to adjust

 each part

         depending on how it was modeled.

         I suspect that I'm not using the terminal block correctly.

         I do have some requests for nopSCADlib, but perhaps

 those may

         be better
         taken off list.

         I too do the parts that I need, but I'm doing more
         microprocessor stuff
         on custom boards.  I'm also doing a PNP machine which got
         modeled in
         OpenSCAD first, I have an algorithm that is particularly
         useful for
         moving stepper stage.

         Harvey

         On 7/14/2024 4:16 AM, nop head via Discuss wrote:
         > I have never hit any memory limits with NopSCADlib and

 many

         parts. One
         > of its tests has a single instance of all the parts in the
         library. My
         > biggest design has about 2500 parts, maily fasteners,

 rather

         than
         > electronic components but I don't see why they would be
         different.
         >
         > Regarding the components available I only model what I

 need

         for my own
         > designs. Pull requests are welcome.
         >
         >
         > On Sun, 14 Jul 2024 at 08:02, Rogier Wolff via Discuss
         > discuss@lists.openscad.org wrote:
         >
         >     On Sat, Jul 13, 2024 at 10:24:22AM -0400, Harvey white
         via Discuss
         >     wrote:
         >
         >     > 8.
         >     >
         >     >    I’d love to give you the source files, but

 it’s an

         entire project
         >     >    with subdirectories, referring to other libraries
         of parts I’ve
         >     >    designed. Since I think it’s a memory limit, a
         partial file would
         >     >    not help all that much.
         >
         >     How many parts are there? Eagle has a board-stats ULP.
         Then we know
         >     how many parts we need to "simulate" to try and
         reproduce this.
         >
         >     How about you put say a resistor, led, and an sot23
         transistor in a
         >     schematic, switch-to-board, place them compactly, in
         schematic view
         >     load another design, but DO NOT load the board.

 Now back

         in board
         >     save-as with a new name, and then copy-paste your

 three

         components.
         >     select everything, repeat doubling the number of
         components until
         >     you've filled your allowed design area. Now run it
         through your
         >     rendering pipeline.  Now there are only three models
         that need to be
         >     included.
         >
         >     OK. F*** it. I did that for you. Attached is a board
         with 192
         >     instances
         >     of a resistor-cap-sot23. Does this show the problem?
         >
         >             Roger.
         >
         >     --
         >     ** R.E.Wolff@BitWizard.nl **

 https://www.BitWizard.nl/ <https://www.BitWizard.nl/>

         <https://www.BitWizard.nl/ https://www.BitWizard.nl/>
         >     <https://www.BitWizard.nl/

 <https://www.BitWizard.nl/> <https://www.BitWizard.nl/
 <https://www.BitWizard.nl/>>>

         ** +31-15-2049110 **
         >     **    Delftechpark 11 2628 XJ  Delft, The

 Netherlands.  KVK:

         >     27239233    **
         >     f equals m times a. When your f is steady, and

 your m is

         going down
         >     your a is going up.  -- Chris Hadfield about flying up
         the space
         >     shuttle.
         >  _______________________________________________
         >     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

         _______________________________________________
         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_______________________________________________
 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, didn't know how that worked. Yet another rewrite coming.  That'll handle milling layer stuff as soon as I parse it out. I will have to dig into your code and trap out the legs (for the missing legs). Harvey On 7/14/2024 1:04 PM, nop head via Discuss wrote: > You can model any shape board by specifying a polygon. > > image.png > > This one was done like this: > > Blinder = pcb("Blinder", "PCB Blinder", [42.0, 45.0, 1.6], colour = > grey(90), hole_d = 3.2, holes = [[28.00096, 8.001]], >     parts_on_bom = true, >     polygon = rounded_polygon([ >         [-21.0, -22.5, 0], >         [ 11.0, -22.5, 0], >         [ 13.0, -13.5,  2], >         [ 21,  -11.5,  0], >         [ 19,   20.5,  -2], >         [-19,   20.5,  -2], >     ]), > >     components = [ >         [21.5, 34.9625, 90, "smd_cap", CAP0805, 0.8, "100n"], >         [6.513, 14.6185, 90, "smd_cap", CAP0805, 0.8, "220n"], >         [23.15, 4.0775, -90, "smd_cap", CAP0805, 0.8, "100n"], >         [13.625, 14.47, 90, "smd_cap", CAP0805, 0.8, "15n"], >         [23.15, 9.1575, -90, "smd_cap", CAP0805, 0.8, "15n"], >         [40.0 - led_pitch(LED3mm) / 2, 40.0, 180, "led", LED3mm, > "green", 2.0, 5], >         [11.72, 1.35, 180, "multiwatt11", "L6203", 3], >         [5.37, 19.55, 0, "molex_hdr", 02, undef], >         [27.0, 15.02, 180, "jst_ph", 3, false], >         [37.0, 15.0, 180, "jst_ph", 3, false], >         [18.34, 15.74, 180, "jst_ph", 2, false], >         [15.022, 30.583, 90, "smd_res", RES0805, "10K"], >         [15.0, 34.79, 90, "smd_res", RES0805, "10K"], >         [15.022, 25.757, -90, "smd_res", RES0805, "10K"], >         [12.72, 20.82, 180, "smd_res", RES0805, "10K"], >         [21.5, 20.0, 90, "smd_res", RES0805, "10K"], >         [35.0, 41.0, 90, "smd_res", RES0805, "2K2"], >         [11.339, 14.597, 90, "smd_res", RES0805, "1K"], >         [8.545, 14.581, 90, "smd_res", RES0805, "1K"], >         [28.6442, 40.9983, 0, "button", button_6mm_7, true], >         [18.45, 41.0, 0, "button", button_6mm_7, true], >         [7.91, 25.9 + pcb_length(tiny_buck) / 2 - > pcb_holes(tiny_buck)[0].x, 90, "pcb", 1.2, tiny_buck], >         [36.668, 27.277, 0, "pcb", 0, ESP_12F], >     ], >     grid = [18.0, 20.82, 1, 6, silver, inch(0.1), inch(0.1) > ]); > > To model an SOT23_5 I would copy the SOT23_6 and add an extra > parameter to allow missing legs to be listed. > > On Sun, 14 Jul 2024 at 17:49, Harvey white via Discuss > <discuss@lists.openscad.org> wrote: > > The board I have designed has rounded corners, but a different radius > (including none) on each corner.  I could not figure out how to > generate > a board using your library. > > This gives rise to the situation I used. > > I could not figure out how to do all the parts using your library, > specifically, a 5 pin chip SOT23_5 (74LVC1G125DBG)  It's a single > section of a 74LS125. > > Still work to be done, I need to put in the milling layer. > > Harvey > > > On 7/14/2024 12:05 PM, nop head via Discuss wrote: > > Also components and their positions are normally part of a PCB > > definition, so they get placed automatically. > > > > > > On Sun, 14 Jul 2024 at 16:35, nop head <nop.head@gmail.com> wrote: > > > >     You are missing a semicolon after the green_terminal module. > > > > > >     On Sun, 14 Jul 2024, 16:29 Harvey white via Discuss, > >     <discuss@lists.openscad.org> wrote: > > > >         OK, I think that establishes that there isn't a memory > limit, > >         it's about > >         250 or so parts, but they are a bit complex.  So let's not > >         think that > >         it's a memory limit since the demo of the openSCADlib uses > >         much the same > >         parts, and more of them > > > >         I think I have something, not related to parts limits. > > > >         the following two lines: > > > >                  //translate([6.191,68.262,1.600]) rotate([0,0,270]) > >         rotate([0,0,-90]) green_terminal(gt_5p08, 3) //X2    0 > >                  translate([40.640,70.802,1.600]) rotate([0,0,90]) > >         smd_resistor(RES0603,"22");    //R2    22 > > > >         when put in a module will demonstrate the problem.  The code > >         shows one > >         part, the terminal block.  Comment out the terminal > block and the > >         resistor pops in. > > > >         I've done the same thing with the original code that I made > >         the board > >         with, and the next part past the green terminal doesn't > get on > >         the > >         board.  No error messages, thank you. > > > >         The way the code is formatted (as an explanation) is > that the > >         position > >         from the board is the first translate, the rotation is from > >         the board. > >         Another translation/rotation pair may happen to adjust > each part > >         depending on how it was modeled. > > > >         I suspect that I'm not using the terminal block correctly. > > > >         I do have some requests for nopSCADlib, but perhaps > those may > >         be better > >         taken off list. > > > >         I too do the parts that I need, but I'm doing more > >         microprocessor stuff > >         on custom boards.  I'm also doing a PNP machine which got > >         modeled in > >         OpenSCAD first, I have an algorithm that is particularly > >         useful for > >         moving stepper stage. > > > >         Harvey > > > > > >         On 7/14/2024 4:16 AM, nop head via Discuss wrote: > >         > I have never hit any memory limits with NopSCADlib and > many > >         parts. One > >         > of its tests has a single instance of all the parts in the > >         library. My > >         > biggest design has about 2500 parts, maily fasteners, > rather > >         than > >         > electronic components but I don't see why they would be > >         different. > >         > > >         > Regarding the components available I only model what I > need > >         for my own > >         > designs. Pull requests are welcome. > >         > > >         > > >         > On Sun, 14 Jul 2024 at 08:02, Rogier Wolff via Discuss > >         > <discuss@lists.openscad.org> wrote: > >         > > >         >     On Sat, Jul 13, 2024 at 10:24:22AM -0400, Harvey white > >         via Discuss > >         >     wrote: > >         > > >         >     > 8. > >         >     > > >         >     >    I’d love to give you the source files, but > it’s an > >         entire project > >         >     >    with subdirectories, referring to other libraries > >         of parts I’ve > >         >     >    designed. Since I think it’s a memory limit, a > >         partial file would > >         >     >    not help all that much. > >         > > >         >     How many parts are there? Eagle has a board-stats ULP. > >         Then we know > >         >     how many parts we need to "simulate" to try and > >         reproduce this. > >         > > >         >     How about you put say a resistor, led, and an sot23 > >         transistor in a > >         >     schematic, switch-to-board, place them compactly, in > >         schematic view > >         >     load another design, but DO NOT load the board. > Now back > >         in board > >         >     save-as with a new name, and then copy-paste your > three > >         components. > >         >     select everything, repeat doubling the number of > >         components until > >         >     you've filled your allowed design area. Now run it > >         through your > >         >     rendering pipeline.  Now there are only three models > >         that need to be > >         >     included. > >         > > >         >     OK. F*** it. I did that for you. Attached is a board > >         with 192 > >         >     instances > >         >     of a resistor-cap-sot23. Does this show the problem? > >         > > >         >             Roger. > >         > > >         >     -- > >         >     ** R.E.Wolff@BitWizard.nl ** > https://www.BitWizard.nl/ <https://www.BitWizard.nl/> > >         <https://www.BitWizard.nl/ <https://www.BitWizard.nl/>> > >         >     <https://www.BitWizard.nl/ > <https://www.BitWizard.nl/> <https://www.BitWizard.nl/ > <https://www.BitWizard.nl/>>> > >         ** +31-15-2049110 ** > >         >     **    Delftechpark 11 2628 XJ  Delft, The > Netherlands.  KVK: > >         >     27239233    ** > >         >     f equals m times a. When your f is steady, and > your m is > >         going down > >         >     your a is going up.  -- Chris Hadfield about flying up > >         the space > >         >     shuttle. > >         >  _______________________________________________ > >         >     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 > >         _______________________________________________ > >         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_______________________________________________ > 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