X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com Message-ID: <559EFE69.1040601@zoot.drehmel.com> Date: Fri, 10 Jul 2015 01:06:17 +0200 From: Robert Drehmel User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 To: geda-user AT delorie DOT com Subject: Re: [geda-user] Back annotation References: <559E86A4 DOT 3040109 AT ecosensory DOT com> <201507091843 DOT t69IhGF6028321 AT envy DOT delorie DOT com> <6392CE1A-AFA0-4D62-979C-3F35786422BD AT noqsi DOT com> <201507092127 DOT t69LRHRC001744 AT envy DOT delorie DOT com> In-Reply-To: <201507092127.t69LRHRC001744@envy.delorie.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K0:LT/gD9eAwit8ZIuRx/RCXdcJRv/atNGxMfGLivGAO6q6ByuXZaf Q82Oj8063Z7Kdj5aGbRZ+pJMfyJZ/EobP2HOae6u5FqOaZF3V5uhh9gWZi6Byo/QYrSK8kg 5S/ZTAtpHKOlyzku7CL8bTMJzjP/vR0LTszWOPQSgYlHHps/LZ/lHV4ulaucjFYHKLJLl40 wNg5UWzIUu0AqcVrLg/0Q== X-UI-Out-Filterresults: notjunk:1;V01:K0:+OQBRJHOGlE=:3RNL3uNOaMks3dUzbkKbKd KyJHsmQAx8N8NvvgshRAbtpwNttuZMBuXr1s501HYiXU6mNAQp3/yzG40znAMZwd6aPYQQpWn se8/SCMKlApZUqajR9WAWYcp00HxTc1ScVlTw4a5Lt67F/nvcvNklD22c0qirJ9yG8faSftvr HzPAbbjgWfM5mN3ansue2cLzUM25QTFVCrkNqZ0bwSG53iOxoORZPy8lpvpCN7y6okRXoUe1p cj9386VEaAW9viYDjnYcxmLsDDRySKT3BrneVHkABGILr8woAxxBnl/ClaVCxOJoV1IgajB+3 DR5IPQR5rZmbDhuTF1V5vORF3yiro3kahB+ImpeM56n0At5iV6idjFO0na+gP5fdmY/mtwiND ftNzuyM8W3wJJDJvXmGLaXWPYwI/HC+rxAASqZEVrCVPExCaMH19V9gkViPnpKM29fikw4Qds uxv7dazdR00T5f/QqgBEaIMIRrFqRx9r+9SQWkJHvEfKnE8sBp8Ufjf1Ez/tbrlj5oCWWS9jI AQbNyYuLE7POolXbOaBFzV9F4u6UjWf+KDIP/CMXXI2Mv/qwbxPcOPmUGYVwri0jSffgvblzu hhMbvh3lo6UjFYplSAirPGce2+fRyQ1bvmn9N44Q0iBsPwJxyUAUc13kq88v66uaLbyk3HQNF Y+jRJ4PDi1683cDIKAgapPdKDVQksMeeqAMd7acu4f8j5Sg== Reply-To: geda-user AT delorie DOT com On 07/09/2015 11:27 PM, DJ Delorie wrote: >> #3 is certainly growing on me. I find myself dealing with multiple >> layout contractors, and one of them wants footprint names like >> "BGA484C100P22X22_2300X2300X260". I don't think those belong in the >> schematics, and the others are happy with "BGA484". So, it's a >> flow-dependent mapping. > > That idea was a side-effect of my "component database" blue-sky. We really > want *three* main tools: > > * schematic capture (gschem) > * mapping to a backend (netlister + component_db + project_ruleset) > * backend (pcb/sim/etc) > > The mapping would map symbolic information (pins A,B,Y, value, etc) to > physical information (package-specific pinouts, simulation models, > etc) based on whatever relevent local rules apply. Most of this info > is what's back-annotated anyway, but the backend can provide its > as-built data to the netlister on the fly, to merge with new schematic > info. A couple of years ago I wrote a parser for the pin mapping syntax you propose (http://www.delorie.com/pcb/pin-mapping.html) for my component database layer (handled in pcb). I used a gschem-compatible file format and one file each for a family of components, e.g. file omron-g6k.com: """ name=g6k manufacturer=Omron comment=DPDT relay series C G6K-2P { # THT # The PCB footprint file (.fp) used footprint=g6k-tht # A mapping from gschem generic relay symbol pins to the footprint's pins pinmap=P:1,N:8,11:3,12:2,14:4,21:6,22:7,24:5 } ... C G6K-2G { # SMT footprint=g6k-smt-il pinmap=P:1,N:8,11:3,12:2,14:4,21:6,22:7,24:5 } ... """ file panasonic-tq2-l2.com: """ name=TQ2-L2 manufacturer=Panasonic comment=2PDT, 2 coil latching C TQ2-L2 { # THT footprint=panasonic-tq2-tht pinmap=P:1,N:5,PR:10,NR:6,11:3,12:2,14:4,21:8,22:9,24:7 } ... """ This was used in combination with generic relay symbols which have symbolic names instead of pin numbers. In gschem, each symbol had either a footprint attribute or a component attribute attached, the latter caused pcb to search for the correct component and map the symbolic name to pin numbers. The parser could possibly serve as a starting point from a source code perspective for a freestanding "third tool". How do you think this mapping tool should get the data from the schematic - via a special scheme netlist script or by reading the schematic file itself? Best regards, Robert