gEDA-user: gschem auto-uref.scm increment behavior

2010-09-05 Thread Mithat Konar
>> Noobie alert <<

I have just installed from source geda-gaf-1.6.1 on Ubuntu Karmic (using 
checkinstall). I am having a bit of difficulty getting auto-uref.scm to behave 
as expected:
* When placing parts, refdes values start at 2 and go up by even numbers.
* The refdes for copy/pasted parts also take on even values--whether the 
existing part being copied has an odd or even refdes.

My gschemrc is as follows:

(log-window "later")
;
;(define default-titleblock "cvstitleblock-1.sym")
(define default-titleblock "title-bordered-A3.sym")
;
(load (build-path geda-rc-path "gschem-colormap-lightbg"))
;
(sort-component-library "enabled")
;
(load (build-path geda-rc-path "/scheme/auto-uref.scm"))
(add-hook! add-component-hook auto-uref)
(add-hook! copy-component-hook auto-uref)

Am I doing something stupid or is this normal behavior for auto-uref.scm?

-M



  


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: PCB format wishlist

2010-09-05 Thread Steven Michalske

On Sep 5, 2010, at 6:29 PM, timecop wrote:

> On Mon, Sep 6, 2010 at 10:27 AM, Andrew Poelstra  wrote:
>> On Sun, Sep 05, 2010 at 09:18:01PM -0400, DJ Delorie wrote:
>>> 
 But when each parameter in the file has a name, than file size may
 become really large, e.g. for files generated with the topological
 router, with lot of arcs.
>>> 
>>> Compression.  Either gzip the text file, or use an alternate binary
>>> file (smaller *and* faster).
>>> 
>> 
>> Between the two of those, I think compression is the better option.
>> That way there's nothing to keep in sync, external tools and scripts
>> simply need to stick a gzip filter on each end, and it's fast.
>> 
>> But I think it should be optional, since if we zip the .pcb files,
>> we no longer have simple diffs, which to a lot of people would be
>> more important than small files.
> 
> Did you know?
> I can name a few modern formats that are .zip and have no problems.
> examples:
> Office 2010 .docx/xlsx/etc
> OpenOffice files
> Android apk
> Java .jar
> A number of closed-source windows games
> etc.
> 
> wahh wahh, i cant zip shit wa wahh,, make it a clickable options
> in preferences and those who "diff" their PCB designs are welcome to
> keep them uncompressed

First grow up, you are the one crying

And here is the solution for making the version control with git understand a 
zipped pcb file.

http://the-gay-bar.com/2010/06/23/managing-zip-based-file-formats-in-git/

In summary you tell git that to diff the file it needs to me unzipped first.

Steve

> 
>> 
>> 
>> Andrew
>> 
>> 
>> 
>> ___
>> geda-user mailing list
>> geda-user@moria.seul.org
>> http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
>> 
> 
> 
> ___
> geda-user mailing list
> geda-user@moria.seul.org
> http://www.seul.org/cgi-bin/mailman/listinfo/geda-user



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: PCB format wishlist

2010-09-05 Thread timecop
On Mon, Sep 6, 2010 at 10:27 AM, Andrew Poelstra  wrote:
> On Sun, Sep 05, 2010 at 09:18:01PM -0400, DJ Delorie wrote:
>>
>> > But when each parameter in the file has a name, than file size may
>> > become really large, e.g. for files generated with the topological
>> > router, with lot of arcs.
>>
>> Compression.  Either gzip the text file, or use an alternate binary
>> file (smaller *and* faster).
>>
>
> Between the two of those, I think compression is the better option.
> That way there's nothing to keep in sync, external tools and scripts
> simply need to stick a gzip filter on each end, and it's fast.
>
> But I think it should be optional, since if we zip the .pcb files,
> we no longer have simple diffs, which to a lot of people would be
> more important than small files.

Did you know?
I can name a few modern formats that are .zip and have no problems.
examples:
Office 2010 .docx/xlsx/etc
OpenOffice files
Android apk
Java .jar
A number of closed-source windows games
etc.

wahh wahh, i cant zip shit wa wahh,, make it a clickable options
in preferences and those who "diff" their PCB designs are welcome to
keep them uncompressed

>
>
> Andrew
>
>
>
> ___
> geda-user mailing list
> geda-user@moria.seul.org
> http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
>


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: PCB format wishlist

2010-09-05 Thread Andrew Poelstra
On Sun, Sep 05, 2010 at 09:18:01PM -0400, DJ Delorie wrote:
> 
> > But when each parameter in the file has a name, than file size may
> > become really large, e.g. for files generated with the topological
> > router, with lot of arcs.
> 
> Compression.  Either gzip the text file, or use an alternate binary
> file (smaller *and* faster).
>

Between the two of those, I think compression is the better option.
That way there's nothing to keep in sync, external tools and scripts
simply need to stick a gzip filter on each end, and it's fast.

But I think it should be optional, since if we zip the .pcb files,
we no longer have simple diffs, which to a lot of people would be
more important than small files.


Andrew
 


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: Color silk layers in pcb

2010-09-05 Thread joe tarantino
   On Sun, Sep 5, 2010 at 2:19 PM, Peter Clifton <[1]pc...@cam.ac.uk>
   wrote:

 On Sun, 2010-09-05 at 00:18 +0200, Levente Kovacs wrote:
 > On Sat, 4 Sep 2010 11:24:38 +
 > Ineiev <[2]ine...@gmail.com> wrote:
 >
 > > Probably this patch may be used as a workaround.
 >
 > Why don't we just push this patch to HEAD? This works just great.
 One minor nit..
 I'd keep the "non-copper" / "skip-drc" ideas separate. We might (at
 some
 point) have DRC rules for non-copper layers (not that I can think of
 them at the moment, perhaps apart from silk layer(s)).
 Otherwise, seems good.
 Best regards,
 --
 Peter Clifton
 Electrical Engineering Division,
 Engineering Department,
 University of Cambridge,
 9, JJ Thomson Avenue,
 Cambridge
 CB3 0FA
 Tel: +44 (0)7729 980173 - (No signal in the lab!)
 Tel: +44 (0)1223 748328 - (Shared lab phone, ask for me)
 ___
 geda-user mailing list
 [3]geda-u...@moria.seul.org
 [4]http://www.seul.org/cgi-bin/mailman/listinfo/geda-user

   If PCB had the concept of a part/element body outline layer (separate
   from the silk),  it could be used as a guide for part placement, not
   interfere with pads like
   the silk would, and could be checked with the DRC.  Another vote for
   general, non-copper layers I guess.
   Joe T.

References

   1. mailto:pc...@cam.ac.uk
   2. mailto:ine...@gmail.com
   3. mailto:geda-user@moria.seul.org
   4. http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: PCB format wishlist

2010-09-05 Thread DJ Delorie

> But when each parameter in the file has a name, than file size may
> become really large, e.g. for files generated with the topological
> router, with lot of arcs.

Compression.  Either gzip the text file, or use an alternate binary
file (smaller *and* faster).


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: PCB format wishlist

2010-09-05 Thread DJ Delorie

> > We are NOT going with another position-determines-meaning file format.
>
> Why?

Consider the parser for the PIN object:

Pin [rX rY Thickness Clearance Mask Drill "Name" "Number" SFlags]
Pin (rX rY Thickness Clearance Mask Drill "Name" "Number" NFlags)
Pin (aX aY Thickness Drill "Name" "Number" NFlags)
Pin (aX aY Thickness Drill "Name" NFlags)
Pin (aX aY Thickness "Name" NFlags)

The parser only sees the syntax, not the semantics:

pin_hi_format
: T_PIN '[' NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER STRING 
STRING flags ']'
pin_1.7_format
: T_PIN '(' NUMBER NUMBER NUMBER NUMBER STRING STRING NUMBER ')'
pin_1.6.3_format
: T_PIN '(' NUMBER NUMBER NUMBER NUMBER STRING NUMBER ')'
pin_newformat
: T_PIN '(' NUMBER NUMBER NUMBER STRING NUMBER ')'
pin_oldformat
: T_PIN '(' NUMBER NUMBER NUMBER NUMBER NUMBER NUMBER STRING 
STRING NUMBER ')'

What happens if I want to add another parameter?


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: Functional blocks and PCB format changes

2010-09-05 Thread Andrew Poelstra
On Sat, Sep 04, 2010 at 12:17:15PM -0400, DJ Delorie wrote:
> 
> > But suppose the user creates a rule like, "all traces on Layer 3 must
> > be at least 5mm apart", and then saves the file and reloads it. Now the
> > information about what traces are affected is lost, except that all the
> > traces on Layer 3 are coincedentally tagged with the rule.
> > 
> > What if the user then decides he wants the rule to apply to Layer 4
> > instead?
> 
> In that specific case, we could apply rules to layers as well as
> objects, but I see your point.
> 
> Unfortunately, the math behind DRC is expensive, so generalizing the
> rules needs to mesh well with doing the math only once.
>

I'm not sure that storing DRC rules as filters (rather than tagging
data) would slow things down significantly. Internally, we could still
maintain a tag structure. We would need to keep it in sync when adding
or removing components or rules, of course, and when loading .pcb files.

But when running the DRC, there would be no cost to storing the rules
this way.


Andrew
 


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: Color silk layers in pcb

2010-09-05 Thread kai-martin knaak
Peter Clifton wrote:

> What is useful is that the "outline" / "route" titled layers don't 
> get pads flashed on them when exporting gerbers. All other (copper)
> layers get the pads on them, which would be a problem for an
> outline plot.

Apparently not for my preferred fab. When asked, they told me that pads 
on the outline are no problem to them. They cut the pcb at places where 
the gerber asks for copper. For some projects I needed copper at the 
very edge of the PCB. So I had to ignore the corresponding DRC errors.

Conclusion: I'd like to have the outline layer ignored by DRC, too.

---<)kaimartin(>---
-- 
Kai-Martin Knaak
Öffentlicher PGP-Schlüssel:
http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x6C0B9F53



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: Color silk layers in pcb

2010-09-05 Thread Peter Clifton
On Sat, 2010-09-04 at 22:56 +0200, Pawel Kusmierski wrote:
> On Sat, Sep 4, 2010 at 1:11 PM, Peter Clifton  wrote:
> > As a kludge, call your layer by one of the magic names "outline" or
> > "route" and it will be ignored by the DRC, and treated as non-copper.
> >
> 
> Peter, thanks for the tip.
> I may be doing something wrong, but even following the tips at
> http://www.geda.seul.org/wiki/geda:pcb_tips#how_do_i_make_a_board_outline_to_go_with_my_gerbers_to_the_board_maker
> the outline layer still connects my vias together.


Hmm, so it does.. sorry, it appears the DRC check isn't disabled for the
"outline" layer.

What is useful is that the "outline" / "route" titled layers don't get
pads flashed on them when exporting gerbers. All other (copper) layers
get the pads on them, which would be a problem for an outline plot.

-- 
Peter Clifton

Electrical Engineering Division,
Engineering Department,
University of Cambridge,
9, JJ Thomson Avenue,
Cambridge
CB3 0FA

Tel: +44 (0)7729 980173 - (No signal in the lab!)
Tel: +44 (0)1223 748328 - (Shared lab phone, ask for me)



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: Color silk layers in pcb

2010-09-05 Thread Peter Clifton
On Sun, 2010-09-05 at 00:18 +0200, Levente Kovacs wrote:
> On Sat, 4 Sep 2010 11:24:38 +
> Ineiev  wrote:
> 
> > Probably this patch may be used as a workaround.
> 
> Why don't we just push this patch to HEAD? This works just great.

One minor nit..

I'd keep the "non-copper" / "skip-drc" ideas separate. We might (at some
point) have DRC rules for non-copper layers (not that I can think of
them at the moment, perhaps apart from silk layer(s)).

Otherwise, seems good.

Best regards,

-- 
Peter Clifton

Electrical Engineering Division,
Engineering Department,
University of Cambridge,
9, JJ Thomson Avenue,
Cambridge
CB3 0FA

Tel: +44 (0)7729 980173 - (No signal in the lab!)
Tel: +44 (0)1223 748328 - (Shared lab phone, ask for me)



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: PCB format wishlist

2010-09-05 Thread Andrew Poelstra
On Sun, Sep 05, 2010 at 10:01:47PM +0200, Stefan Salewski wrote:
> 
> But when each parameter in the file has a name, than file size may
> become really large, e.g. for files generated with the topological
> router, with lot of arcs.
>

If every parameter had a name like 'x', 'y', 'w', 'h', 'r', it will
be clear what they mean, but still not take up too much room. Certainly
compared to the space wasted storing every number to 8 decimal places
(or whatever we do), the bloat is worth it.


Andrew

 


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: PCB format wishlist

2010-09-05 Thread Stefan Salewski
On Sun, 2010-09-05 at 21:56 +0200, kai-martin knaak wrote:
> Stefan Salewski wrote:
> 
> > One disadvantage of that format may be:
> > We have lines starting with a letter followed by up to 16 decimal
> > numbers -- hand editing such lines may be difficult. Not a problem for
> > me, I do not intend hand editing.
> 
> More precisely: Positional parameters are bad.
> Mapping position to meaning makes it hard to add additional parameters 
> anywhere but at the end. Structured data does not easily fit easily. It is 
> next to impossible to throw meaningful errors if values are in the wrong 
> order. Instead, the error likely goes unnoticed on read and can produce 
> havoc at unsuspected places further down the flow.
> 
> This is not a matter of style, but a major flaw.
> It is the very reason why a completely new format for pcb might be worth the 
> effort.
> 

Yes, I agree.

But when each parameter in the file has a name, than file size may
become really large, e.g. for files generated with the topological
router, with lot of arcs.





___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: PCB format wishlist

2010-09-05 Thread kai-martin knaak
Stefan Salewski wrote:

> One disadvantage of that format may be:
> We have lines starting with a letter followed by up to 16 decimal
> numbers -- hand editing such lines may be difficult. Not a problem for
> me, I do not intend hand editing.

More precisely: Positional parameters are bad.
Mapping position to meaning makes it hard to add additional parameters 
anywhere but at the end. Structured data does not easily fit easily. It is 
next to impossible to throw meaningful errors if values are in the wrong 
order. Instead, the error likely goes unnoticed on read and can produce 
havoc at unsuspected places further down the flow.

This is not a matter of style, but a major flaw.
It is the very reason why a completely new format for pcb might be worth the 
effort.

---<)kaiamrtin(>---
-- 
Kai-Martin Knaak
Öffentlicher PGP-Schlüssel:
http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x6C0B9F53



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: PCB format wishlist

2010-09-05 Thread Andrew Poelstra
On Sun, Sep 05, 2010 at 07:22:14PM +0200, Stefan Salewski wrote:
> On Sun, 2010-09-05 at 12:48 -0400, DJ Delorie wrote:
> > > We have lines starting with a letter followed by up to 16 decimal
> > > numbers
> > 
> > We are NOT going with another position-determines-meaning file format.
> > 
> > 
> 
> Why?
> 
> Is manually editing the only reason?
> I guess data in most files on our computer hard disc is position
> dependent. Will PCB program still work fine if we insert or delete a few
> bytes in the executable?
>

It's because it's inflexible and unintuitive.

True, most data on the hard disk is position dependent, but between the
hard disk, the kernel and the filesystem driver, we never need to think
about it.


Andrew
 


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: Color silk layers in pcb

2010-09-05 Thread Pawel Kusmierski
On Sun, Sep 5, 2010 at 6:42 AM, Ineiev  wrote:
> On 9/4/10, DJ Delorie  wrote:
>>> Ineiev, thanks for the patch, it applied fine. However, I'm unable to find
>>> the
>>> (Edit->Edit attributes of->Current Layer). Is it placed somewhere else,
>>> or can I manually edit the .pcb file for the same result?
>>> I'm using pcb source tree from git, version 1.99z.
>>
>> Do you have a local ~/.pcb/gpcb-menu.res or something?

Nope, I even removed ~/.pcb to be sure it's not interfering.

>> The .pcb file format is documented in the doc/pcb.pdf generated file,
>> including the Attributes() syntax.

Thanks DJ, this proved helpful.

> In case your gpcb-menu.res lacks this item,
> you can issue the action through (Window->Command entry),
> the command is 'Attributes(Layer)'.
>
> Hope that helps

Ineiev, that's a real life saver! It does exactly what I wanted.
Thanks a million.

Any chance it will make it's way to "production" in some place
like File->Preferences->Layers?

Kind regards,
-- 
Paweł Kuśmierski


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: PCB format wishlist

2010-09-05 Thread Stefan Salewski
On Sun, 2010-09-05 at 12:48 -0400, DJ Delorie wrote:
> > We have lines starting with a letter followed by up to 16 decimal
> > numbers
> 
> We are NOT going with another position-determines-meaning file format.
> 
> 

Why?

Is manually editing the only reason?
I guess data in most files on our computer hard disc is position
dependent. Will PCB program still work fine if we insert or delete a few
bytes in the executable?





___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: PCB format wishlist

2010-09-05 Thread Richard Barlow
On Sun, 2010-09-05 at 12:48 -0400, DJ Delorie wrote:
> > We have lines starting with a letter followed by up to 16 decimal
> > numbers
> 
> We are NOT going with another position-determines-meaning file format.

May I suggest that while deciding on a file format and choosing how it
will work it would be good to consider the diffs that will be generated
when managing a projecting using an SCM. I have thought about this a
little bit and it does seem like it'll never be possible to make it
amazing but I'm sure improvements over the current format can be made.

It would be great to be able to look at a diff and instantly see that a
component was moved or that a few traces were moved from one layer to
another. At the moment even the smallest of changes creates large and
complicated diffs, sometimes with lots of unrelated changes. An example
of this can be seen at [1] where a single footprint was moved from one
side of the board to the other. The commit message is fine for saying
what has changed but it's important to be able to review changes made
before committing.

Thanks,
Richard

[1]
https://www.studentrobotics.org/cgit/boards/power-hw.git/commit/?id=70118c54cf0ffe6ec6a1e98ff2d8207675d95645



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: Functional blocks and PCB format changes

2010-09-05 Thread Andrew Poelstra
On Sat, Sep 04, 2010 at 07:49:06PM -0700, Steven Michalske wrote:
> 
> This is why I use yaml to store data.  It was designed to be human
> readable. It holds most high level data structures.  And is very
> low bloat.  You can tag the yam code to say that this is a particular
> data structure, like a footprint or via
> 
> It allows for references. So all vias of a type could point to the
> same data and then we only would have to change one data structure
> to change all of the vias with the same tag.
> 
> There is a c library libyaml.
> 
> And many other languages have libraries,  perl python ruby and many
> more.  Although I did not see an official lisp library.
> 

I've glanced through the YAML wikipedia page and it looks pretty good.
I'd vote for it, anyway.

> But before we pick a file format we need to decide what we want to
> store. And then choosing how we want to store it.
>

I'm not sure this is true. We know what we need to store in a vague
sense - traces and components, footprints and layers, DRC rules and
netlists. Any decently-extensible language should let us add things
as needed.


Andrew
 


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: PCB format wishlist

2010-09-05 Thread DJ Delorie

> We have lines starting with a letter followed by up to 16 decimal
> numbers

We are NOT going with another position-determines-meaning file format.


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: PCB format wishlist

2010-09-05 Thread Stephan Boettcher

Stefan Salewski  writes:

> On Sun, 2010-09-05 at 09:30 -0600, John Doty wrote:
>> All of this discussion of formats misses the shining example that's
>> already in gEDA: the schematic format.
>
> Yes. Recently I begun studying that format and started writing a parser
> in Ruby -- really easy.
>
> One disadvantage of that format may be:
> We have lines starting with a letter followed by up to 16 decimal
> numbers -- hand editing such lines may be difficult. Not a problem for
> me, I do not intend hand editing.

Yes, the gschem file format is much less accessible for
hand/awk/sed-editing than the pcb file format.  

I would not like that to change - on the pcb side.

-- 
Stephan


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: PCB format wishlist

2010-09-05 Thread Andrew Poelstra
On Sun, Sep 05, 2010 at 05:47:12PM +0200, Stefan Salewski wrote:
> 
> One disadvantage of that format may be:
> We have lines starting with a letter followed by up to 16 decimal
> numbers -- hand editing such lines may be difficult. Not a problem for
> me, I do not intend hand editing.
>

Sounds like a job for awk.


Andrew
 


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: Functional blocks and PCB format changes

2010-09-05 Thread Bert Timmerman
Hi Bob, 

> -Original Message-
> From: geda-user-boun...@moria.seul.org 
> [mailto:geda-user-boun...@moria.seul.org] On Behalf Of Bob Paddock
> Sent: Sunday, September 05, 2010 1:24 PM
> To: gEDA user mailing list
> Subject: Re: gEDA-user: Functional blocks and PCB format changes
> 
> IMHO, the "problem" with XML lies not in the bloat, even 
> a factor 10 larger
> would be acceptable, it's the <$TAGS> that have to be 
> identical across all
> applications to have a "truly" exchangeable XML file.
> 
> 
> http://www.ibm.com/developerworks/xml/ XML can be easy or 
> hard, big or small, depending on the task at hand.
> 
> Specifically related to this discussion is this:
> 
> "Create a maintainable extensible XML format Reduce change 
> when you design XML formats agile enough to incorporate new 
> requirements"
> 
> http://www.ibm.com/developerworks/library/x-extensxml.html
> 
> The problems described there are not specific to XML formats.
> 
> XML gives us the ability to interact with other tools.  JSON 
> gives smaller file format, with Lots of Irritating Silly 
> Parentheses.  YAML gives flexibility, with small file size.  
> SVG lets us layout boards in our browser (I've actually 
> wanted to do that due to restrictive IT policies on what 
> software can be installed and used).  The 'What' of a 
> requirement document is more important than the 'How'.  No 
> reason at all that there can not be multiple file formats, 
> *if* things are specified well.
> 
> We all have many wishes, with a fixed amount of time to 
> allocate to our lives, unless we make time to code things 
> we'll be spending time on wishes and still be where we 
> started in the end.  "The Devil's weapon of choice today, is 
> distraction from our goals in life."
> 

I think we are (hopefully) on the same page.

Let's keep what we already have: pcb's internal engine, maybe some day to be
metrified and an extended and improved file format to be fit for the future.

To me XML would be an intermediate file, used to exchange data, the same
purpose an IDF file would have.

Reinventing the XML wheel would take more effort for us and other parties,
someone would have to think-up a XSD schema.

The IDF format is well defined, version 4.0 so the big issues should be
solved, some mechanical 3D CAD vendors (mainstream) have picked up the
format as hae some big EDA players.

The "worst" thing that could happen is someone writing a plug-in or an
exporter for either XML or IDF ;-)

The same goes for a IPC-356 compliant test point data exporter, a DXF import
plug-in, a DXF exporter and the list goes on and on.

Too much ideas and sparse free time.

Just my EUR 0.02

Kind regards,

Bert Timmerman.




___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: PCB format wishlist

2010-09-05 Thread Stefan Salewski
On Sun, 2010-09-05 at 09:30 -0600, John Doty wrote:
> All of this discussion of formats misses the shining example that's
> already in gEDA: the schematic format.

Yes. Recently I begun studying that format and started writing a parser
in Ruby -- really easy.

One disadvantage of that format may be:
We have lines starting with a letter followed by up to 16 decimal
numbers -- hand editing such lines may be difficult. Not a problem for
me, I do not intend hand editing.

  



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: PCB format wishlist

2010-09-05 Thread John Doty
All of this discussion of formats misses the shining example that's already in 
gEDA: the schematic format. Now *there's* a work of genius.

1. The format is based on a small, well-chosen set of elementary objects.

2. Elementary objects are represented by one-line tagged records of fixed 
format (identified by the tag). Almost any tool you might want to use can 
easily process a file of this sort without the need of any special library.

3. A set of objects can be attached to any abject. This can be in principle 
extended to unlimited depth.

4. Multi-line text objects are supported. There are few restrictions on the 
content of a text object.

(1) and (2) make the format easy to process with simple tools. (3) and (4) 
constitute an infinitely flexible escape hatch, although we're not using it to 
its full capability (but a single level of attached attributes is pretty good).

A good file format for this sort of thing avoids definitions for high level 
concepts. It provides mechanisms to compose high level objects from low level 
primitives. So, the question here starts with "what are the primitives that one 
constructs printed circuit board descriptions from?"

John Doty  Noqsi Aerospace, Ltd.
http://www.noqsi.com/
j...@noqsi.com




___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: PCB format wishlist

2010-09-05 Thread Bert Timmerman
Hi,

> -Original Message-
> From: geda-user-boun...@moria.seul.org 
> [mailto:geda-user-boun...@moria.seul.org] On Behalf Of Ethan Swint
> Sent: Sunday, September 05, 2010 4:06 PM
> To: gEDA user mailing list
> Subject: Re: gEDA-user: PCB format wishlist
> 
> On 09/04/2010 10:19 PM, Andrew Poelstra wrote:
> > I have one more suggestion: the facility to create recursive PCBs.
> > What this will look like in the file format, I dunno. But we should 
> > keep it in mind.
> >
> Recursive PCBs could work the same way as the footprint 
> re-use: a node could contain a reference to a parent node; 
> the parent node could be a single element or itself a 
> reference to a collection of elements.
> 
> 

+1

I can  think of a "group" of {traces, vias, elements, silk text or lines} to
be linked in from an external file or to be embedded.

The analogy of embedded/unembedded symbols in gschem comes to mind.

I never have applied symbols recursively though (symbols within symbols
within symbols), other than in the form of hierarchical multisheet
schematics (symbols pointing to schematics containing symbols, pointing to
schematics containing symbols, etc.

Kind regards,

Bert Timmerman.



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: PCB format wishlist

2010-09-05 Thread Ethan Swint

On 09/04/2010 10:19 PM, Andrew Poelstra wrote:

I have one more suggestion: the facility to create recursive PCBs.
What this will look like in the file format, I dunno. But we should
keep it in mind.
   
Recursive PCBs could work the same way as the footprint re-use: a node 
could contain a reference to a parent node; the parent node could be a 
single element or itself a reference to a collection of elements.



___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: PCB format wishlist

2010-09-05 Thread Ethan Swint

On 09/04/2010 10:04 PM, Andrew Poelstra wrote:

3) Connectivity information: include the connection information
between line segments, similar to (but not necessarily exactly!) SVG
format, where multiple points and arcs can be included in one line.
 

I'm not sure what you're getting at here. I think the rule of least
surprise dictates that line segments be line segments, since that is
how they are manipulated.
   
If you are familiar with mechanical CAD packages, they would be called 
'polylines': connected line segments/arcs which otherwise have the same 
characteristics.  I often find myself editing the PCB file in a text 
editor and it's a real pain to find connected traces, as they are 
scattered over the entire file.

5) Ability to lock any portion of the location coordinate, either in
absolute or relative to another entity (line segment locked to
pin/pad, components locked to the same Y coordinate, etc) - rather
than just specifying an absolute coordinate.
 

More generally, we should support creating "groups" of components
that can be transformed and manipulated as a collection. However,
I'm not sure how much functionality this would give on top of the
functional-block proposal.
   
This idea encompasses a component group: the XYRS data of each of these 
components would be locked to a 'base' component.  When the base 
component is moved, all of the components are moved.




___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user


Re: gEDA-user: Functional blocks and PCB format changes

2010-09-05 Thread Bob Paddock
   IMHO, the "problem" with XML lies not in the bloat, even a factor
   10 larger
   would be acceptable, it's the <$TAGS> that have to be identical
   across all
   applications to have a "truly" exchangeable XML file.
   [1]http://www.ibm.com/developerworks/xml/ XML can be easy or hard, big
   or
   small, depending on the task at hand.
   Specifically related to this discussion is this:
   "Create a maintainable extensible XML format
   Reduce change when you design XML formats agile enough to incorporate
   new requirements"
   [2]http://www.ibm.com/developerworks/library/x-extensxml.html
   The problems described there are not specific to XML formats.
   XML gives us the ability to interact with other tools.  JSON gives
   smaller file format, with Lots of Irritating Silly Parentheses.  YAML
   gives flexibility, with small file size.  SVG lets us layout boards in
   our browser (I've actually wanted to do that due to restrictive IT
   policies on what software can be installed and used).  The 'What' of a
   requirement document is more important than the 'How'.  No reason at
   all that there can not be multiple file formats, *if* things are
   specified well.
   We all have many wishes, with a fixed amount of time to allocate to
   our lives, unless we make time to code things we'll be spending time
   on wishes and still be where we started in the end.  "The Devil's
   weapon of choice today, is distraction from our goals in life."
   Here is my Wish List of sorts:
   Anyone ever consider the heretical idea of tossing it all and start
   over fresh? Lets us get things like hard-metric options as the first
   thing that came to mind.
   There are many external libraries today, for examples many from the
   Boost and wxWdigets domains, that make that idea easier than in the
   past, see below for the easy stuff.
   The hard part is the domain specific stuff, that few of us understand
   berried in 20+ years of accumulated poorly commented cruft.
   DJ is there any hope of creating a library of the domain specific
   stuff?
   For the easy stuff, as long as we don't have a "Not Invented Here"
   complex or "external dependencies make it hard to build"
   [3]et.al. problems (reinventing the wheel just takes valuable
   development
   time to make a lot of incompatible wheels):
   Polygon library: Booleans/clipping, resizing/offsetting and more
   for planar polygons with integral coordinates.
   [4]http://www.boost.org/doc/libs/1_44_0/libs/polygon/doc/index.htm
   Interprocess: handling to Schematics for real time interaction.
   [5]http://www.boost.org/doc/libs/release/doc/html/interprocess.html
   Quaternion Math: Gets around accumulating errors when rotating objects
   in six-degrees-of-freedom (See Stewart Platforms), when we go 3D
   someday.
   [6]http://www.boost.org/doc/libs/release/libs/math/doc/quaternion/html/
   index.html
   MPI: Message Passing Interface library, for use in distributed-memory
   parallel application programming, for that 1000 layer board (that no
   one could ever build, lets be realistic in requirements).
   [7]http://www.boost.org/doc/libs/release/doc/html/mpi.html
   Parameter Library: Write functions that accept arguments by name.
   [8]http://www.boost.org/doc/libs/release/libs/parameter/doc/html/index.
   html
   Program Options: The program_options library allows program developers
   to obtain program options, that is (name, value) pairs from the user,
   via conventional methods such as command line and config file,
   environment variables.
   [9]http://www.boost.org/doc/libs/release/doc/html/program_options.html
   Property Tree: A tree data structure especially suited to storing
   configuration data.
   [10]http://www.boost.org/doc/libs/release/libs/property_tree/index.html
   Pyton (for scripting): The Boost Python Library is a framework for
   interfacing Python
   and C++. It allows you to quickly and seamlessly expose C++ classes
   functions and objects to Python, and vice-versa, using no special
   tools -- just your C++ compiler.
   I'd do something with Lua myself actually, see below.
   [11]http://www.boost.org/doc/libs/release/libs/python/doc/index.html
   Signals2: Managed signals and slots callback implementation
   (thread-safe version 2), for plug-in implementations.
   [12]http://www.boost.org/doc/libs/release/libs/signals2/
   System: Operating system support, including the diagnostics support
   that will be part of the C++0x standard library.
   [13]http://www.boost.org/doc/libs/release/libs/system/doc/index.html
   Boost also has several Smart Pointers, several Parsers, Exception
   handling, Threads and other techniques to make robust code.
   See the whole list here: [14]http://www.boost.org/doc/libs/
   For the GUI I'd use wxWidgets [15]http://www.wxwidgets.org/ which in
   time
   will run on your iWhatsit, and does run on PC, Mac, Unix [16]et.al,
   today.
   Use OpenGL for the machines with the power to use it where 'expen

Re: gEDA-user: Functional blocks and PCB format changes

2010-09-05 Thread Bert Timmerman
Hi,

There happens to be a newer version (1998) of the IDF specification:

http://www.simplifiedsolutionsinc.com/images/idf_v40_spec.pdf 

Kind regards,

Bert Timmerman

> -Original Message-
> From: geda-user-boun...@moria.seul.org 
> [mailto:geda-user-boun...@moria.seul.org] On Behalf Of Bert Timmerman
> Sent: Sunday, September 05, 2010 11:13 AM
> To: 'gEDA user mailing list'
> Subject: Re: gEDA-user: Functional blocks and PCB format changes
> 
> Hi Rick, 
> 
> > -Original Message-
> > From: geda-user-boun...@moria.seul.org 
> > [mailto:geda-user-boun...@moria.seul.org] On Behalf Of Rick Collins
> > Sent: Sunday, September 05, 2010 12:38 AM
> > To: gEDA user mailing list
> > Subject: Re: gEDA-user: Functional blocks and PCB format changes
> > 
> > At 11:49 AM 9/4/2010, you wrote:
> > >On Sat, Sep 04, 2010 at 01:16:01AM -0400, Rick Collins wrote:
> > > >
> > > > Don't hold back, tell us how you really feel!
> > > >
> > > > The spec is large because it addresses a wide range of design 
> > > > aspects, which is one of the great reasons for using 
> it, one file 
> > > > for the entire design, schematic, layout, mechanical, etc, even 
> > > > board lay up.  So the compatibility issue is moot 
> because any one 
> > > > app only needs to deal with the portion that applies to 
> it.  Just 
> > > > don't muck with the other parts.
> > > >
> > > > The "heavy" issue is a red herring (are you planning on
> > hosting this
> > > > on a cell phone maybe?)  No PCB file format is going to
> > be easy for
> > > > humans to read.  Bandwidth?  Back to the MCU in the 
> cell phone I 
> > > > guess.  "Ugly", now there is a great technical argument.
> > > >
> > > > But I suppose it is better to re-invent the wheel.  There is no 
> > > > reason to try to foster any sort of compatibility in 
> file formats 
> > > > between all the different CAD tools.  There are always 
> conversion 
> > > > programs to be written, no?
> > > >
> > >
> > >This is not an emotional argument, but a technical one, and
> > the choice
> > >is not between XML and reinventing the wheel. (Sadly, my Lisp 
> > >suggestion has been shot down - by better arguments than
> > popularity, I
> > >might add. ;) There are other formats to consider, and yes,
> > inventing
> > >one might be an option.
> > >
> > >How do you know PCB won't ever run on cell phones, or over a slow 
> > >network link, or on an embedded device or network PC or overtaxed 
> > >virtual machine? How do you know we won't one day need to 
> work with 
> > >1000-layer boards when suddenly it /does/ matter how heavy 
> the file 
> > >format is?
> > 
> > So are you suggesting that we should, at this time, plan 
> for running 
> > PCB on a cell phone?  Do you want to design PCB to work on 
> overtaxed 
> > virtual machines, if so, I expect there will be a lot more 
> important 
> > things to optimize than the file format which only impacts the 
> > performance when reading or saving the file.  If we need to 
> work with 
> > 1000 layer boards, I expect we would have computers which 
> would be not 
> > at all burdened by XML file formats.
> > 
> > I'm trying to be realistic about the requirements.  I think 
> that the 
> > 2x or 3x factor of file size of using something like XML 
> would be lost 
> > in the noise.  The advantages of working with an industry standard 
> > file format could be very large.
> > Of course as you or someone pointed out, IPC-2511B is not a well 
> > established format.  But to my knowledge it is the only one 
> that spans 
> > most if not all aspects of circuit board manufacturing.  It 
> seems like 
> > a great idea to work with something this useful and I am 
> pretty sure 
> > that concerns with using it can be ironed out.
> > 
> > 
> > >Unless you want feature-parity with other CAD programs, it is 
> > >impossible to have file-format-parity. So no matter what, 
> conversion 
> > >programs will have to be written. Creating similar file
> > formats won't
> > >help anything, other than to limit our own format, and potentially 
> > >cause problems if PCB and another CAD program are able to open (and
> > >corrupt) each other's files.
> > 
> > I don't agree that a common file format has to be 
> restrictive.  If the 
> > file format is flexible enough, the program won't be limited.  
> > Everything doesn't have to be included from the start.  I 
> don't know 
> > if IPC-2511B is flexible enough for PCB and future ideas 
> for PCB, but 
> > using XML I expect it can be expanded easily.  I don't think anyone 
> > here has really looked hard at it.  It may well be extensible.  I 
> > don't know.  But I would like to at least consider it and 
> not toss it 
> > away without giving it a chance.
> > 
> > Rick
> > 
> > 
> 
> IMHO, the "problem" with XML lies not in the bloat, even a 
> factor 10 larger would be acceptable, it's the <$TAGS> that 
> have to be identical across all applications to have a 
> "truly" exchangable XML file.
> 
> I think that for an excha

Re: gEDA-user: Functional blocks and PCB format changes

2010-09-05 Thread Bert Timmerman
Hi Rick, 

> -Original Message-
> From: geda-user-boun...@moria.seul.org 
> [mailto:geda-user-boun...@moria.seul.org] On Behalf Of Rick Collins
> Sent: Sunday, September 05, 2010 12:38 AM
> To: gEDA user mailing list
> Subject: Re: gEDA-user: Functional blocks and PCB format changes
> 
> At 11:49 AM 9/4/2010, you wrote:
> >On Sat, Sep 04, 2010 at 01:16:01AM -0400, Rick Collins wrote:
> > >
> > > Don't hold back, tell us how you really feel!
> > >
> > > The spec is large because it addresses a wide range of design 
> > > aspects, which is one of the great reasons for using it, one file 
> > > for the entire design, schematic, layout, mechanical, etc, even 
> > > board lay up.  So the compatibility issue is moot because any one 
> > > app only needs to deal with the portion that applies to it.  Just 
> > > don't muck with the other parts.
> > >
> > > The "heavy" issue is a red herring (are you planning on 
> hosting this 
> > > on a cell phone maybe?)  No PCB file format is going to 
> be easy for 
> > > humans to read.  Bandwidth?  Back to the MCU in the cell phone I 
> > > guess.  "Ugly", now there is a great technical argument.
> > >
> > > But I suppose it is better to re-invent the wheel.  There is no 
> > > reason to try to foster any sort of compatibility in file formats 
> > > between all the different CAD tools.  There are always conversion 
> > > programs to be written, no?
> > >
> >
> >This is not an emotional argument, but a technical one, and 
> the choice 
> >is not between XML and reinventing the wheel. (Sadly, my Lisp 
> >suggestion has been shot down - by better arguments than 
> popularity, I 
> >might add. ;) There are other formats to consider, and yes, 
> inventing 
> >one might be an option.
> >
> >How do you know PCB won't ever run on cell phones, or over a slow 
> >network link, or on an embedded device or network PC or overtaxed 
> >virtual machine? How do you know we won't one day need to work with 
> >1000-layer boards when suddenly it /does/ matter how heavy the file 
> >format is?
> 
> So are you suggesting that we should, at this time, plan for 
> running PCB on a cell phone?  Do you want to design PCB to 
> work on overtaxed virtual machines, if so, I expect there 
> will be a lot more important things to optimize than the file 
> format which only impacts the performance when reading or 
> saving the file.  If we need to work with 1000 layer boards, 
> I expect we would have computers which would be not at all 
> burdened by XML file formats.
> 
> I'm trying to be realistic about the requirements.  I think 
> that the 2x or 3x factor of file size of using something like 
> XML would be lost in the noise.  The advantages of working 
> with an industry standard file format could be very large.  
> Of course as you or someone pointed out, IPC-2511B is not a 
> well established format.  But to my knowledge it is the only 
> one that spans most if not all aspects of circuit board 
> manufacturing.  It seems like a great idea to work with 
> something this useful and I am pretty sure that concerns with 
> using it can be ironed out.
> 
> 
> >Unless you want feature-parity with other CAD programs, it is 
> >impossible to have file-format-parity. So no matter what, conversion 
> >programs will have to be written. Creating similar file 
> formats won't 
> >help anything, other than to limit our own format, and potentially 
> >cause problems if PCB and another CAD program are able to open (and 
> >corrupt) each other's files.
> 
> I don't agree that a common file format has to be 
> restrictive.  If the file format is flexible enough, the 
> program won't be limited.  Everything doesn't have to be 
> included from the start.  I don't know if IPC-2511B is 
> flexible enough for PCB and future ideas for PCB, but using 
> XML I expect it can be expanded easily.  I don't think anyone 
> here has really looked hard at it.  It may well be 
> extensible.  I don't know.  But I would like to at least 
> consider it and not toss it away without giving it a chance.
> 
> Rick 
> 
> 

IMHO, the "problem" with XML lies not in the bloat, even a factor 10 larger
would be acceptable, it's the <$TAGS> that have to be identical across all
applications to have a "truly" exchangable XML file.

I think that for an exchangable format for schematic capture, pcb layout
__and__ 3D mechanical CAD stuff the "problem" is waaay to big to grasp in a
forthnight and DIY.

And there happens to be a standard of sorts which does just that, named IDF,
some of the large commercial CAD vendors play this game already.

In this playfield design files with 1MB < size < 10MB is not that uncommon
these days.

Welcome in "Utopia" mate ;-)

Have a look at:

http://www.simplifiedsolutionsinc.com/images/idf_v40_overview.pdf 

http://www.protel.com/files/training/Module%2020%20-%203D%20Mechanical%20CAD
.pdf

http://www.simplifiedsolutionsinc.com/images/idf_v30_spec.pdf

Happy reading ;-)

Kind regards,

Bert Timmerman



__

Re: gEDA-user: PCB DRC arcs (was: Functional blocks...)

2010-09-05 Thread Ineiev
On 9/4/10, Windell H. Oskay  wrote:
>>
>> On Sep 4, 2010, at 4:30 AM, Ineiev wrote:
>>
>>> Hello, DJ;
>>>
>>> On 9/4/10, DJ Delorie  wrote:
 Our DRC engine could use a complete rewrite.  It doesn't get arcs
 right, for example.
>>>
>>> Could you elaborate on the arcs, please? what it doesn't do?
>>
>> I've been running into trouble with the DRC and arcs, myself.  I
>> discovered it when doing some simple tests of the toporouter-- certain
>> arcs produce DRC errors when there clearly is none-- says that there isn't
>> 10 mils of clearance when there obviously is much more than that.
>
> Doh!  Bad link.  Correct one is:
> http://evilmadscientist.com/source/temp/topo_puzzle.pcb

Thank you! arguably it is not the arc, it's the squared pin.

Cheers,
Ineiev
diff --git a/src/find.c b/src/find.c
index 593be70..f340962 100644
--- a/src/find.c
+++ b/src/find.c
@@ -149,8 +149,8 @@ RCSID ("$Id$");
 #define IS_PV_ON_ARC(PV, Arc)	\
 	(TEST_FLAG(SQUAREFLAG, (PV)) ? \
 		IsArcInRectangle( \
-			(PV)->X -MAX(((PV)->Thickness+1)/2 +Bloat,0), (PV)->Y -MAX(((PV)->Thickness+1)/2 +Bloat,0), \
-			(PV)->X +MAX(((PV)->Thickness+1)/2 +Bloat,0), (PV)->Y +MAX(((PV)->Thickness+1)/2 +Bloat,0), \
+			(PV)->X -MAX(((PV)->Thickness+1)/2,0), (PV)->Y -MAX(((PV)->Thickness+1)/2,0), \
+			(PV)->X +MAX(((PV)->Thickness+1)/2,0), (PV)->Y +MAX(((PV)->Thickness+1)/2,0), \
 			(Arc)) : \
 		IsPointOnArc((PV)->X,(PV)->Y,MAX((PV)->Thickness/2.0 + fBloat,0.0), (Arc)))
 


___
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user