X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com X-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=prochac.sk; s=default; t=1487406828; bh=TZ5UDUVx1wv7XgMt/eutx0bVCAdlTefh3iU3gMvxkSE=; h=To:From:Subject:Date; b=f2yl/wC5toA+L/dJ95001eLSmEGlGJNAvrNlrrG0CbDEb3gCAUzoOXkQAqWZ1KzCA aID4lAvwsmh7yVL+hlVqqu8md3YAP2zmAFGO1QuKbRlmqD34iuCOB7gr0IN0qi08S5 EHNJblvtZNwlVr/qxunI9G15ozGihXGkuiDZBnS0= X-Clacks-Overhead: "GNU Terry Pratchett" To: geda-user AT delorie DOT com From: "Milan Prochac (milan AT prochac DOT sk) [via geda-user AT delorie DOT com]" Subject: [geda-user] PCB: TinyCAD import Message-ID: Date: Sat, 18 Feb 2017 09:33:43 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="------------ms080500060206010702010608" X-Spam-Status: No, score=-101.0 required=5.0 tests=ALL_TRUSTED,HTML_MESSAGE, USER_IN_WHITELIST autolearn=ham autolearn_force=no version=3.4.0 X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on angua.bastl.sk Reply-To: geda-user AT delorie DOT com This is a cryptographically signed message in MIME format. --------------ms080500060206010702010608 Content-Type: multipart/alternative; boundary="------------3DD7F8A52C387B4B231139D8" This is a multi-part message in MIME format. --------------3DD7F8A52C387B4B231139D8 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable Being disgusted by latest events and by hostile mood around=20 gschem/gnetlist I started to think about gschem replacement for smaller=20 projects. Latest round of xorners aggressive anti-john attacks forced me = to act immediately. I am going to try TinyCAD. For this purpose the TinyCAD import was=20 implemented in PCB. It can be found at https://bugs.launchpad.net/pcb/+bug/1665862 Patch implements new actions to import netlist and parts from TinyCAD: ImportTinyCAD() ImportTinyCAD(netlistfile) Both actions take the netlist (first one displays dialog), import the=20 netlist and CSV partlist. Name of partlist is derived from netlist name: = =2Ecsv extension is used instead of .net First action is bound to menu (Import Schematics -> TinyCAD) In TinyCAD: - specify footprint name in Package parameter (exist on most symbols) or = in Footprint parameter - export gEDA compatible netlist - export CSV partlist (same basename as netlist, with .csv extension) In PCB: - use the above actions or select menu item to import netlist and=20 partlist in one step. * netlist is loaded * existing parts are updated or left untouched * new parts are added * removed parts are selected, so it is easy to delete them TinyCAD import is wrapper around existing actions: Load(netlist),=20 LoadFrom(netlist, ...) and ElementList(Start|Need|Done,...) and it is as = good as implementation of these actions. For those who do not want to patch/build the PCB the equivalent offline=20 method of TinyCAD import is available: python script which converts=20 TinyCAD CSV partlist to list of PCB commands (sequence of ElementList=20 commands). In PCB: - manually import netlist - run commands from file Milan --------------3DD7F8A52C387B4B231139D8 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable


Being disgusted by latest events and by hostile mood around gschem/gnetlist I started to think about gschem replacement for smaller projects. Latest round of xorners aggressive anti-john attacks forced me to act immediately.

I am going to try TinyCAD. For this purpose the TinyCAD import=C2=A0= was implemented in PCB.

It can be found at https://bugs.launchpad.net/pcb/+= bug/1665862

Patch implements new actions to import netlist and parts from TinyCAD:

ImportTinyCAD()
ImportTinyCAD(netlistfile)

Both actions take the netlist (first one displays dialog), import the netlist and CSV partlist. Name of partlist is derived from netlist name: .csv extension is used instead of .net

First action is bound to menu (Import Schematics -> TinyCAD)

In TinyCAD:
- specify footprint name in Package parameter (exist on most symbols) or in Footprint parameter
- export gEDA compatible netlist
- export CSV partlist (same basename as netlist, with .csv extension)

In PCB:
- use the above actions or select menu item to import netlist and partlist in one step.
=C2=A0=C2=A0* netlist is loaded
=C2=A0=C2=A0* existing parts are updated or left untouched
=C2=A0=C2=A0* new parts are added
=C2=A0=C2=A0* removed parts are selected, so it is easy to delete t= hem

TinyCAD import is wrapper around existing actions: Load(netlist), LoadFrom(netlist, ...) and ElementList(Start|Need|Done,..= .) and it is as good as implementation of these actions.

For those who do not want to patch/build the PCB the equivalent offline method of TinyCAD import is available: python script which converts TinyCAD CSV partlist to list of PCB commands (sequence of ElementList commands).

In PCB:
- manually import netlist
- run commands from file


Milan


--------------3DD7F8A52C387B4B231139D8-- --------------ms080500060206010702010608 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCC CtowggTwMIID2KADAgECAhBqqLAGfunD4XYlcEsP4ElzMA0GCSqGSIb3DQEBCwUAMHUxCzAJ BgNVBAYTAklMMRYwFAYDVQQKEw1TdGFydENvbSBMdGQuMSkwJwYDVQQLEyBTdGFydENvbSBD ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEjMCEGA1UEAxMaU3RhcnRDb20gQ2xhc3MgMSBDbGll bnQgQ0EwHhcNMTYwMzA3MDEwODU2WhcNMTcwMzA3MDEwODU2WjA8MRkwFwYDVQQDDBBtaWxh bkBwcm9jaGFjLnNrMR8wHQYJKoZIhvcNAQkBFhBtaWxhbkBwcm9jaGFjLnNrMIIBIjANBgkq hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0mKGFeH4hukzo8EbR08H7ZFZ1uAI3mTA51yN6C/Q R++4fhe2R6U1yGR2bQeWal47aLFt4bhUEED1cvU4GDT+tzJUeQMSghB1qwrPQfzJueT3ReYA 5uaym6q2tFR9qm5lhSWqac//+mPFThodIz7rMT4a5R2ZnQjBSiEOVP73Sf0jiD7ylNBqvkCd hKFTSt7IkoRCkVE8o7KYEjzEhsSu1JAuCh8rYpz1vajpvO+H3FJyDXbHqCxH4MTmA1PMkObc BPHnsA4NE9xJpghiqJWUyEmcrNSRikLgJY2o0bO2y7AZ8AfXGt1lCkcg2f879JxuswDYaQFH rfPERgaIJ2OCLQIDAQABo4IBszCCAa8wDgYDVR0PAQH/BAQDAgSwMB0GA1UdJQQWMBQGCCsG AQUFBwMCBggrBgEFBQcDBDAJBgNVHRMEAjAAMB0GA1UdDgQWBBQBZgVnt+lqmMtzm6Wfvlmr aFGERzAfBgNVHSMEGDAWgBQkgWw5Yb5JD4+3G0YrySi1J0htaDBvBggrBgEFBQcBAQRjMGEw JAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLnN0YXJ0c3NsLmNvbTA5BggrBgEFBQcwAoYtaHR0 cDovL2FpYS5zdGFydHNzbC5jb20vY2VydHMvc2NhLmNsaWVudDEuY3J0MDgGA1UdHwQxMC8w LaAroCmGJ2h0dHA6Ly9jcmwuc3RhcnRzc2wuY29tL3NjYS1jbGllbnQxLmNybDAbBgNVHREE FDASgRBtaWxhbkBwcm9jaGFjLnNrMCMGA1UdEgQcMBqGGGh0dHA6Ly93d3cuc3RhcnRzc2wu Y29tLzBGBgNVHSAEPzA9MDsGCysGAQQBgbU3AQIEMCwwKgYIKwYBBQUHAgEWHmh0dHA6Ly93 d3cuc3RhcnRzc2wuY29tL3BvbGljeTANBgkqhkiG9w0BAQsFAAOCAQEAcdXDR99mAwWbAilc x4iAlxzxTpAFBwXjDbFUFuLXHtXUQjfQb6isV/A6HGhFfEeloJ/dl0hZNfn6ROken+Pv8UzA sgbpjVQHVx334qK38Fbsoy/L991YYRyJGGl7OJYRs7SY8gJ+kVeC4pN6tdeACvmxdRYyA7r0 AjwhzCOpc449UQO2YQRZ6uzXvo3auQhkFQDCN6Gzn82fr5KRQ26fzUYOphHjkNTUHmYJRbjA QPIJlYSoc9/Gayl3tHscOt8pSXsfJ2alDnD5Ww94E7corjF7kkPdHQvkvZY5Ux72B7eEbSm8 w+FnngjA2Jc7o25oU+weiVOeBGxjo+HlwjaqPzCCBeIwggPKoAMCAQICEGunin0K14jWUQr5 WeTntOEwDQYJKoZIhvcNAQELBQAwfTELMAkGA1UEBhMCSUwxFjAUBgNVBAoTDVN0YXJ0Q29t IEx0ZC4xKzApBgNVBAsTIlNlY3VyZSBEaWdpdGFsIENlcnRpZmljYXRlIFNpZ25pbmcxKTAn BgNVBAMTIFN0YXJ0Q29tIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTE1MTIxNjAxMDAw NVoXDTMwMTIxNjAxMDAwNVowdTELMAkGA1UEBhMCSUwxFjAUBgNVBAoTDVN0YXJ0Q29tIEx0 ZC4xKTAnBgNVBAsTIFN0YXJ0Q29tIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MSMwIQYDVQQD ExpTdGFydENvbSBDbGFzcyAxIENsaWVudCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC AQoCggEBAL192vfDon2D9luC/dtbX64eG3XAtRmvmCSsu1d52DXsCR58zJQbCtB2/A5uFqNx WacpXGGtTCRk9dEDBlmixEd8QiLkUfvHpJX/xKnmVkS6Iye8wUbYzMsDzgnpazlPg19dnSqf hM+Cevdfa89VLnUztRr2cgmCfyO9Otrh7LJDPG+4D8ZnAqDtVB8MKYJL6QgKyVhhaBc4y3bG WxKyXEtx7QIZZGxPwSkzK3WIN+VKNdkiwTubW5PIdopmykwvIjLPqbJK7yPwFZYekKE015Os W6FV+s4DIM8UlVS8pkIsoGGJtMuWjLL4tq2hYQuuN0jhrxK1ljz50hH23gA9cbMCAwEAAaOC AWQwggFgMA4GA1UdDwEB/wQEAwIBBjAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwQw EgYDVR0TAQH/BAgwBgEB/wIBADAyBgNVHR8EKzApMCegJaAjhiFodHRwOi8vY3JsLnN0YXJ0 c3NsLmNvbS9zZnNjYS5jcmwwZgYIKwYBBQUHAQEEWjBYMCQGCCsGAQUFBzABhhhodHRwOi8v b2NzcC5zdGFydHNzbC5jb20wMAYIKwYBBQUHMAKGJGh0dHA6Ly9haWEuc3RhcnRzc2wuY29t L2NlcnRzL2NhLmNydDAdBgNVHQ4EFgQUJIFsOWG+SQ+PtxtGK8kotSdIbWgwHwYDVR0jBBgw FoAUTgvvGqRAW6UXaYcwyjRoQ9BBrvIwPwYDVR0gBDgwNjA0BgRVHSAAMCwwKgYIKwYBBQUH AgEWHmh0dHA6Ly93d3cuc3RhcnRzc2wuY29tL3BvbGljeTANBgkqhkiG9w0BAQsFAAOCAgEA i+P3h+wBi4StDwECW5zhIycjBL008HACblIf26HY0JdOruKbrWDsXUsiI0j/7Crft9S5oxvP iDtVqspBOB/y5uzSns1lZwh7sG96bYBZpcGzGxpFNjDmQbcM3yl3WFIRS4WhNrsOY14V7y2I rUGsvetsD+bjyOngCIVeC/GmsmtbuLOzJ606tEc9uRbhjTu/b0x2Fo+/e7UkQvKzNeo7OMhi jixaULyINBfCBJb+e29bLafgu6JqjOUJ9eXXj20p6q/CW+uVrZiSW57+q5an2P2i7hP85jQJ cy5j4HzA0rSiF3YPhKGAWUxKPMAVGgcYoXzWydOvZ3UDsTDTagXpRDIKQLZo02wrlxY6iMFq vlzsemVf1odhQJmi7Eh5TbxI40kDGcBOBHhwnaOumZhLP+SWJQnjpLpSlUOj95uf1zo9oz9e 0NgIJoz/tdfrBzez76xtDsK0KfUDHt1/q59BvDI7RX6gVr0fQoCyMczNzCTcRXYHY0tq2J0o T+bsb6sH2b4WVWAiJKnSYaWDjdA70qHX4mq9MIjO/ZskmSY8wtAk24orAc0vwXgYanqNsBX5 Yv4sN4Z9VyrwMdLcusP7HJgRdAGKpkR2I9U4zEsNJQJewM7S4Jalo1DyPrLpL2nTET8ZrSl5 Utp1UeGp/2deoprGevfnxWB+vHNQiu85o6MxggPMMIIDyAIBATCBiTB1MQswCQYDVQQGEwJJ TDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjEpMCcGA1UECxMgU3RhcnRDb20gQ2VydGlmaWNh dGlvbiBBdXRob3JpdHkxIzAhBgNVBAMTGlN0YXJ0Q29tIENsYXNzIDEgQ2xpZW50IENBAhBq qLAGfunD4XYlcEsP4ElzMA0GCWCGSAFlAwQCAQUAoIICEzAYBgkqhkiG9w0BCQMxCwYJKoZI hvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0xNzAyMTgwODMzNDNaMC8GCSqGSIb3DQEJBDEiBCBJ k7axDcPjguWdcC30iYhcbYUM+TvHm+0fl8M8PHIWhjBsBgkqhkiG9w0BCQ8xXzBdMAsGCWCG SAFlAwQBKjALBglghkgBZQMEAQIwCgYIKoZIhvcNAwcwDgYIKoZIhvcNAwICAgCAMA0GCCqG SIb3DQMCAgFAMAcGBSsOAwIHMA0GCCqGSIb3DQMCAgEoMIGaBgkrBgEEAYI3EAQxgYwwgYkw dTELMAkGA1UEBhMCSUwxFjAUBgNVBAoTDVN0YXJ0Q29tIEx0ZC4xKTAnBgNVBAsTIFN0YXJ0 Q29tIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MSMwIQYDVQQDExpTdGFydENvbSBDbGFzcyAx IENsaWVudCBDQQIQaqiwBn7pw+F2JXBLD+BJczCBnAYLKoZIhvcNAQkQAgsxgYyggYkwdTEL MAkGA1UEBhMCSUwxFjAUBgNVBAoTDVN0YXJ0Q29tIEx0ZC4xKTAnBgNVBAsTIFN0YXJ0Q29t IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MSMwIQYDVQQDExpTdGFydENvbSBDbGFzcyAxIENs aWVudCBDQQIQaqiwBn7pw+F2JXBLD+BJczANBgkqhkiG9w0BAQEFAASCAQCmQU1BRVR+0KVi sRkgpRaTf2yQYAz1HXisKkU3QfwrV9apUwgKfgtHnRpOH/j0BUOS8TS2yNiHaSmxJZBPKeEc mNZAS4ooRKit47wLjSb7VJ4Ldmq5KWdo5MJMlgs9KC4OgnxltLv91S9LlgPfBhGxPa9Ae71u Mm3A1n/6obl8Bo7enNtkeY7nIGBwIU5lu3vLj4+Vt8Y5yMHHYXqtj+nwSEZa4afnKyNIbH4F xDMS87QbIInbWpr5L77QUo/xRKhquS9w5CaRwiy6+2iK/bVR1jj3KkppRPiOJnGiMA2j+aT4 hrnIizDqnsOCcAvICpfXB8h7Gb0Hwwt36vRDY/m6AAAAAAAA --------------ms080500060206010702010608--