kicad-developers team mailing list archive
Mailing list archive
Re: SWEET: multisheet schematic concerns
Dick Hollenbeck <dick@xxxxxxxxxxx>
Thu, 21 Feb 2013 14:27:22 -0600
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130106 Thunderbird/17.0.2
On 02/20/2013 10:25 PM, Felipe Jorge wrote:
> I'm not totally agree with one schematic holds all sheets, because it
> will make more difficult modularize and reuse pieces of circuits
> across in different projects. On the other hand makes the project less
> But someone can come up with a way that make both possible, like an
> sheet importer sort of thing, what's concerns me is that makes the
> whole process less intuitive for new users, especially if its not well
> i'm not yet fluent in english, and i think that i'm really far from
> that, and i'm a newbie so be gentle with me ok.
> By the way i will be glad if someone redirect me to the main SWEET
> discussion page,
There is none. SWEET only refers to the s-expression grammar used in
This name does not extend up into the new evolving schematic format.
I don't know that that format has its own name yet.
The SWEET parser and formatter are already written, whereas the the
new schematic format is still evolving, and therefore the time for
that software development is nearing readiness for coding.
> i'm have a little bit of trouble in find my way through the mailing list.
> I frist post this on the launch pad KiCad EDA Software Suite Answers
> but then realized what hell i'm doing, by the time to found my way i
> have this idea but frist Let me see if i got this straight if the
> s-expressions are used to describe the schematic sheets as well as the
> part, it will be pretty neat having pieces of circuits as a single
> boxed look part that will automatically add an sheet to the schematic.
> this will give us an like snippets like feature.
> That maybe we can get embedded some code just to dynamically change
> the components values, i.e. if i had an active second order filter
> 'part' i will need only to set its value to the cut-off frequency and
> the sheet will generate the proper components value for each of
> instantiated part in my 'top level sheet' (this sheet level concept
> can be abstracted).
Exactly, I like the verilog conceptual model. If you know verilog,
you know what I am talking about conceptually, the verilog "module".
This is not an endorsement of verilog as the actual syntax of the new
design, just the conceptual model, embodied in s-expressions since
that is our building block.
Then, put the s-expression files, one for each schematic sheet
*optionally* into a zip file along with other sheets, like Java's
*.jar files, where an entire subsystem can be held ready for multiple
uses, multiple concurrent uses without edits, with each instantiation
utilizing different parameters, netnames, and reference designators.
(Currently the bindings are in the schematic files, making them
useless for more than one project concurrently.)
Then you'd have something:
*exactly* like the email conversation I had with Jean-Pierre and Wayne
3 days ago.
> Of course this feature will be part of the script module, that i
> really looking forward to it because script is essential at least in
> my work (by the way we use Altium Designer there).
Well what Element 14 is doing with Eagle, is to use the scripting
language as a public description of footprints and schematic parts,
utilizing the concept that if the script is executed, it generates the
The boundary between data files and executable files is getting blurry
in that discussion.
It is food for thought, and is a possibility.
It was this trail that fooled Microsoft into offering executable email
(Of course email messages should be data files, not executable files,
regardless of what programming language you are talking about.
Because the main differentiator there is you receive them from unknown
> Mailing list: https://launchpad.net/~kicad-developers
> Post to : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help : https://help.launchpad.net/ListHelp