[Arm-netbook] Schematic and PCB layout CAD files

Arun Isaac arunisaac at systemreboot.net
Sat May 18 16:04:48 BST 2019


> KiCAD and gEDA simply aren't up to the job of dealing with this type
> of project.  i dedicated several months making a huge effort to design
> a Card in KiCAD, it was... well, it wasn't time wasted: it was "time
> discovering that KiCAD is so inadequate that its use would *ACTIVELY*
> prevent and prohibit the completion of the entire goal"

That's very disappointing. I was hoping to fabricate the PCBs for at
least the housings. Now, it looks like I have to redo the PCBs in
KiCAD. :-( Will you be providing KiCAD files in the future?  Being able
to use only free software is a highly desirable feature. And, just out
of curiosity, in what way, did you find KiCAD inadequate?

>  you'd be the second person - in the entire world - to be using
> pyopenscad.  yes, really.

No, I don't use pyopenscad per se. But, I am comfortable using text and
programming interfaces. I'm not a big fan of using the mouse. So, I have
no issue with the CAD designs being available only in pyopenscad.

> solidpython was abandoned by its author: fortunately i recognised its
> potential and rescued it before he went ahead with a radically
> different (unsuitable) direction, which i don't believe he ever
> completed.  i kept the name "pyopenscad"
>
> the actual code is quite ingenious and very simple: it creates
> mirror-objects of openscad objects (which as you know, SCAD is just a
> thin wrapper around libCGAL anyway).  when you create a python-based
> pyopenscad object by calling the function "cube(5,6,3)", that stores
> in-memory sufficient information to, duh, create a cube of dimensions
> x=5, y=6, z=3.
>
> however what *actually* happens is, when you call the function that
> requests generation of openscad output, the *python object tree* is
> recursively walked, and each python object simply outputs *EQUIVALENT
> OPENSCAD TEXT* that matches precisely and exactly what the python code
> asked for.
>
> i have the following in ~/.vimrc so that i can hit the "comma" key:
> map , ^[:w^M:!python %:t^M^M
>
> by setting up 2 xterms on the left side (one for editing, one to view
> library routines used *by* that file), and opening openscad on the
> laptop_model.scad file mostly full-screen to the right, the above
> macro will *automatically* do a file-save followed by *execution* of
> that file.
>
> this will get that file (the python program) to execute, generating a
> new version of laptop_model.scad....
>
> ... openscad will *AUTOMATICALLY* notice that and re-render the model.
>
> now, the only thing is: the laptop model is so absolutely massive that
> even a high-end GPU has severe difficulty rendering it.  don't for
> god's sake try to view the laptop models without OpenGL having been
> set up.  an Intel GPU (950 etc. etc.) is perfectly sufficient.
>
> at the top of the laptop_model file you will see there's a
> "part-selection" enum that is used further down to select which parts
> to render.
>
> in the riki200 3D printer i made this much more sophisticated, going
> with an object-orientated approach, and adding in options to
> auto-generate the STL files.
>
> however, laptop_model.py is the earlier precursor and i stuck with a
> function-based approach that made a lot of sense due to the reduced
> simplicity of the program (the riki200 includes BOM-generation and
> much more).
>
> let me know how you get on.

Thank you for the detailed explanation. But, for now, my interest is
primarily in the PCB designs. I'll be trying out the CAD designs only if
I can fabricate the PCB. So, for now, that is a blocker. :-(


More information about the arm-netbook mailing list