← Back to team overview

kicad-developers team mailing list archive

Re: [RFC] Dynamic text in schematic and board.

 

I think there are perhaps two different features here:

1) an easy way to create a text item that displays an object property (in
schematic or layout).  In the eventual properties editor, I'm imagining
some kind of "show/hide" checkbox that when checked creates the text.

2) a text substitution system a la Altium Designer, that lets you reference
various properties in the value of a text field (so escaped macros, not a
dropdown).  This one seems less critical if #1 is implemented, but it still
lets you do some cool stuff.

For #1, here's a screenshot of the Altium component properties dialog:
http://wiki.altium.com/download/attachments/3080263/Component+Properties+Dialog.png

(I'm not saying we should necessarily clone Altium, but it's an easy way to
refer to this feature)
You can see in the upper right there is a grid of parameters, which can
come in from the library and can also be added / edited by the user.
For each of them, there is a "visible" checkbox on the left, and if you
check it, that parameter value will show up on the schematic (and it works
in a similar way for layout)

Here's another example, from Mentor Graphics PADS:
https://mgc-images.imgix.net/pads_com/pads-c0d37eb2-36c2-44d8-b394-a7fd07861718.png

The item properties are accessed through a dockable window that in this
screenshot is on the right side.
The properties are a key/value system, and you can see that there are
checkboxes for both the keys and the values.
If you have a property named "TOLERANCE" with value "10%", you can check
the value box and get a label saying "10%",
or check both boxes to get a label saying "TOLERANCE=10%"

-Jon

On Sun, Mar 11, 2018 at 7:50 PM, Russell Oliver <roliver8143@xxxxxxxxx>
wrote:

> Jon,
>
> Any thoughts on how you envisage this working? Text substitution through
> using escaped macros or a direct reference that can be picked via say a
> dropdown box in the dialog?
>
>
>
> On Mon, Mar 12, 2018 at 5:34 AM Jon Evans <jon@xxxxxxxxxxxxx> wrote:
>
>> Display net name of pad automatically:  You can use this to auto-label
>> test points with the net name they are connected to, for example
>>
>> Other places where text substitution is useful to me:
>>
>> - Set project-level properties, like schematic title, part number,
>> revision, etc.  Have it automatically show up on every sheet title block
>> and stay in sync on the board silkscreen layer.
>>
>> - Add lots of properties to parts (i.e. resistors get voltage, tolerance,
>> tempco, etc) and automatically show these as labels on the schematic next
>> to refdes and value
>>
>> -Jon
>>
>> On Sun, Mar 11, 2018 at 11:56 AM, Nick Østergaard <oe.nick@xxxxxxxxx>
>> wrote:
>>
>>> Den 8. mar. 2018 22.39 skrev "Russell Oliver" <roliver8143@xxxxxxxxx>:
>>>
>>> As a follow up to the road map discussion I saw a forum post asking if
>>> it was possible to display the net name of a pad on the silkscreen or other
>>> layers much like the value or reference fields.
>>>
>>>
>>> Why is this useful? Could you explain the exact use case?
>>>
>>>
>>> While a simple implementation would be to create a text item directly
>>> linked to each pad that could be enabled, and shows the link to the
>>> relevant pad,  I think a more generic approach would be great to have.
>>>
>>> I propose that either or both of these options for version 7.
>>>
>>> a) standalone text items are processed as a template.  A domain specific
>>> language would be designed to allow for references to items as direct text
>>> substitutions. The implementation, scope and style of this DSL will need to
>>> be workshopped and would like your comments on.
>>>
>>> b) linked text (annotations) showing a graphical link (like the blue
>>> line of values and reference ) A text item is created as a link to another
>>> item, for which the text is derived from a list of properties of that item.
>>> This would include such things as values, references, custom symbol and
>>> footprint fields, sizes, positions, net names, net codes.
>>>
>>> I'm almost certain this would require the updated Schematic object in
>>> eeschema, but might already be achievable in pcbnew given its current
>>> architecture, but that's more of a guess than anything.
>>>
>>> Any thoughts, guidance or critiques would be appreciated.
>>>
>>> Kind Regards
>>> Russell
>>>
>>>
>>> _______________________________________________
>>> 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
>>>
>>>
>>>
>>> _______________________________________________
>>> 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
>>>
>>>
>>

Follow ups

References