delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2012/07/20/03:12:55

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
X-Envelope-From: paubert AT iram DOT es
Date: Fri, 20 Jul 2012 09:12:09 +0200
From: Gabriel Paubert <paubert AT iram DOT es>
To: geda-user AT delorie DOT com
Subject: Re: [geda-user] Symbol attributes
Message-ID: <20120720071209.GA5091@visitor2.iram.es>
References: <50084839 DOT 9080804 AT sbcglobal DOT net>
<201207191830 DOT q6JIUH0o028413 AT envy DOT delorie DOT com>
MIME-Version: 1.0
In-Reply-To: <201207191830.q6JIUH0o028413@envy.delorie.com>
User-Agent: Mutt/1.5.20 (2009-06-14)
X-SPF-Received: 2
X-Spamina-Bogosity: Unsure
X-Spam-Score: -4.4 (----)
X-Spam-Report: Content analysis details: (-4.4 points)
pts rule name description
---- ---------------------- --------------------------------------------------
-1.8 ALL_TRUSTED Passed through trusted hosts only via SMTP
-2.6 BAYES_00 BODY: Bayesian spam probability is 0 to 1%
[score: 0.0000]
Reply-To: geda-user AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: geda-user AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

On Thu, Jul 19, 2012 at 02:30:17PM -0400, DJ Delorie wrote:
> 
> Do what you think makes sense for your symbols; the device= attribute
> is not used rigourously by any of the scripts.


Huh? It is heavily used by the netlisters. 

Actually, since I'm going to have the layout a board subcontracted
and the person doing it uses CadStar. She does not know anything 
else so I had to write a Cadstar netlister and found it a bit painful. 

Here is a summary of the few things I had to do:
- set he output encoding to ISO8859-1 so that CadStar
would see my gEDA's "µ" as Windows "µ". I believe
it only works with guile-2.0 or later so it's not
compatible (yet) with gEDA's minimal requirements.
(IMHO a good reason to not submit the netlister yet).

- I set the device attribute to match her library
(typically this includes a package name, like XC3S200AFT256).

- For many devices which have too many variants, the text
I put on the schematics is only a subset of the device part.
Personnaly I hate the standard symbol like 7400, since
I have to modify it to, say 74HC00 or 74LVC00 (not that 
I use standard 14/16 pins TTL like part any more, but quite 
a few single gate parts). For voltage regulators and references
I have, say, device=LP2985-? in the symbol, a visible 
attribute that I call variant=LP2985-?. When the symbol
is instantiated, I put for example device=LP2985AIM5-3.3
but variant (which is only for display) is "LP2985-3.3"
or "LP2985A-3.3" if I want a A grade. I've found that
with  question mark in these attributes I can automate 
producing warnings in the netlister. The problem is that,
if I change my mind, both attributes have to be modified
to be kept in sync, but it seems to be a hard problem.

- I don't use the value attribute in the above because
the value attribute is reserved for passive components
for which is makes more sense. The cadStar layout library
of the subcontractor literally has thousands of parts like
R0603_1k, C1206_3µ3 and so on. So for the parts that have
a value attribute the part name becomes footprint_value,
(or even footprint_value_suffix) when there is a (hidden)
suffix attribute on the schematics for things like 1% for
resistors or 25V for capacitors.

- She wanted to have attributes like routing_code and
bus_name to transmit information about controlled impedance
and differential pairs. I found that it was impossble
to get net attributes in the netlister except for net=
which gives the net name. I ended up defining graphical
symbols and using the concisely named 

gnetlist:graphical-objs-in-net-with-attrib-get-attrib

function. I'm not sure that this is the best solution but
it works, provided the graphical symbol is attached to the 
topmost sheet on which the net appears. Otherwise it is never
found, which could be construed as a netlister bug.
(I tried briefly to debug it but got lost, I must miss
something since I can't understand why the netlister 
is so complex).

- There are probably other points I forget, the project
was interrupted in April by more urgent things. However
it will restart in September so I may find time to dive
into the code a bit more and come up with followups on 
this rant^Wsubject.

	Regards,
	Gabriel

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019