X-Authentication-Warning: delorie.com: mail set sender to geda-help-bounces using -f X-Recipient: geda-help AT delorie DOT com X-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=prochac.sk; s=default; t=1472041583; bh=AdKGp7JCwR8OKDzVm6NidwysTNGj4Ozoy26cRQi79xo=; h=Subject:To:References:From:Date:In-Reply-To; b=mWLcKgqd9HE0AywHntm1owYwOcRu00hWLsEPCvyR6linCRLEkv8DtsxolIleEo6i1 pdUjpUygMqGCN7dEQdfeZ2Wwx9i8HbhrPX5GNgBRvDS9rTv/KokTZdS+t6pP7z/fUy RCxMA8k2/1MydY6o1ON4WZLlnz1GZYaxEtwEfdcs= X-Clacks-Overhead: "GNU Terry Pratchett" Subject: Re: [geda-help] pcb: blind via To: geda-help AT delorie DOT com References: <20160728160657 DOT 7f68f787 AT debian> <20160728174027 DOT 453b2b41 AT debian DOT olsr> <20160728192015 DOT 4fc84ce8 AT debian DOT olsr> <201607282248 DOT u6SMmTxw006065 AT envy DOT delorie DOT com> From: "Milan Prochac (milan AT prochac DOT sk) [via geda-help AT delorie DOT com]" Message-ID: <39718d63-9fb1-3cd0-bcfd-32c60e0255ef@prochac.sk> Date: Wed, 24 Aug 2016 14:26:20 +0200 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="------------ms010503070609030105040504" X-Spam-Status: No, score=-101.0 required=5.0 tests=ALL_TRUSTED, 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-help AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: geda-help AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk This is a cryptographically signed message in MIME format. --------------ms010503070609030105040504 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: quoted-printable Status update, to keep the topic warm: * visual presentation: - blind/buried vias have 2 half-circles drawn on top; colors indicate = starting and ending layer of blind/buried via=20 (https://static.bastl.sk/pcb/bvias_01.png) - if all layers penetrated by blind/buried via are turned off the via = is thin-drawn (https://static.bastl.sk/pcb/bvias_02.png) * action to set blind/buried vias was modified to allow set only one end = and use currently active layer; such actions can be bound to menu items=20 and hot-keys (done for GTK HID) -=20 https://static.bastl.sk/pcb/bvias_03.png and=20 https://static.bastl.sk/pcb/bvias_04.png. These actions together with=20 visualisation and immediate on-screen changes seems to be sufficient=20 user interface, so no GUI dialog will be implemented. * Ratnest optimization and short detection was modified to take=20 blind/buried into account * Layer management is partially done - adding and removing layer works=20 fine, moving layer is not completely finished/tested. * When layer is changed during line draw, the automatically created vias = can be blind/buried; the same applies for line move from one layer to=20 another. This behavior is controlled by option=20 (https://static.bastl.sk/pcb/bvias_06.png). On following pictures the=20 identical operation was first performed with option switched off (upper=20 track) and with option switched on; line draw:=20 https://static.bastl.sk/pcb/bvias_04.png and line move:=20 https://static.bastl.sk/pcb/bvias_05.png. The via creation logic was not = changed, only via type is affected. * export hid was adjusted to create additional drill layers for layer=20 pairs connected by blind/buried vias. The default drill layer is used=20 for through-hole pins and vias - if no blind/buried vias are used, there = is no change in generated output. - no changes in exporter API; backward compatibility with external=20 exporters is retained - PS and Gerber exporters were modified to accept additional layers - = the only change was the filename creation (plus font size and line=20 spacing on TOC page of PS export); for gerber the alternate naming=20 schemes need to be adjusted. - remaining standard exporters need to be reviewed, but at first look = they do not need any change; the OpenSCAD exporter will be adjusted later= =2E There are still some minor issues - for example freedom in layer=20 grouping: if layer group does not contain contiguous layers, the=20 behavior is confusing (but correct) in some situations. I need to decide = the level of warnings about this situation or enforcing the contiguous=20 layer groups. Another one are degraded vias (single layer vias). Vias with both ends=20 on the same layer can be avoided (and automatically deleted after layer=20 removal for example), but vias with both ends on same layer group cannot = be avoided easily. Behavior is correct, just unnecessary copper ring=20 with no associated drill is created on respective layer group. Maybe=20 these degraded vias should be detected as part of DRC. The special topic is the output used for PCB fabrication. Currently the=20 drill pairs are automatically generated. Maybe some kind of drill pair=20 configuration and checks if design fits these pairs should be=20 implemented. I have very little experience with commercial packages (and = no time to learn them), so some feedback or ideas are welcome. Milan On 8/3/2016 3:31 AM, Milan Prochac (milan AT prochac DOT sk) [via=20 geda-help AT delorie DOT com] wrote: > > Update: > > Already implemented: > 1. internal representation. Single connection per via is=20 > implemented. Via stacking will be enabled later. > 2. file format with backward compatibility (if no blind/buried vias=20 > are used); bugs fixed > 3. new action SetViaLayers implemented. Select action extended by=20 > BuriedVias parameter. See generated pcb.pdf for more details > 3a. Undo was extended to cover new operations > 4. object report (Ctrl-R) contains information about blind/buried via= s > 5. Drawing code updated: > 5a. on GUI HID (screen) vias themselves are drawn unchanged. Any = > recommendation how to visually distinguish blind/buriad vias from=20 > through-hole vias are welcome. > 5b. on GUI HID (screen) clerarances and thermals are cut-out=20 > only on respective layers > 5c. on non-GUI HID exporters both vias and clearances/thermals=20 > are drawn on respective layers only > 6. exporters which use standard drawing interface displays correct=20 > data (tested on PostScript and gerber). Drill information will require = > serious reworking - single plated and unplated drill is not sufficient;= > > What will come next > 7. ERC check (optimize rats) to evaluate connections only on proper=20 > layers > 8. maintain layer information after layer operations: new layer,=20 > remove layer, move layer > 9. maintain layer information after line move to another layer > 10. automatically create blind/buried via when changed layer during=20 > line drawing; it will be controlled by option. > 11. update solder mask drawing > 12. GUI dialog to change via type > > Current code: https://static.bastl.sk/pcb/Burried-vias-step-2.tar.gz . = > Testers are welcome. > > Milan > > --------------ms010503070609030105040504 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 hvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0xNjA4MjQxMjI2MjBaMC8GCSqGSIb3DQEJBDEiBCAH ofmf+jA8hf377YxNnarmti7DzUoAE7KaFlt7l9M4YjBsBgkqhkiG9w0BCQ8xXzBdMAsGCWCG SAFlAwQBKjALBglghkgBZQMEAQIwCgYIKoZIhvcNAwcwDgYIKoZIhvcNAwICAgCAMA0GCCqG SIb3DQMCAgFAMAcGBSsOAwIHMA0GCCqGSIb3DQMCAgEoMIGaBgkrBgEEAYI3EAQxgYwwgYkw dTELMAkGA1UEBhMCSUwxFjAUBgNVBAoTDVN0YXJ0Q29tIEx0ZC4xKTAnBgNVBAsTIFN0YXJ0 Q29tIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MSMwIQYDVQQDExpTdGFydENvbSBDbGFzcyAx IENsaWVudCBDQQIQaqiwBn7pw+F2JXBLD+BJczCBnAYLKoZIhvcNAQkQAgsxgYyggYkwdTEL MAkGA1UEBhMCSUwxFjAUBgNVBAoTDVN0YXJ0Q29tIEx0ZC4xKTAnBgNVBAsTIFN0YXJ0Q29t IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MSMwIQYDVQQDExpTdGFydENvbSBDbGFzcyAxIENs aWVudCBDQQIQaqiwBn7pw+F2JXBLD+BJczANBgkqhkiG9w0BAQEFAASCAQAWYq+xFnTYyS3q 352xhBe1GpCcdT8pQ6bEwQlxDALHjWIEyxlnI087mO8UTxOKHAiN1j9EUJdbFbu3H4pfcmg5 ykrkLJ0EqufdAwm2xeQZqhLfaprJbBd1EetT+nXVAh+39gkNe0zhpXwnVnW1C4/1VEV/VkqJ kko430XBU8frtAhgmvrJX0KCIMOwm8GA/NK3p3FyLjL7eoKDlNQ99Gs/LS8bw9YStHtn3QRh AWealR0sZ4oQudiJNohcxvKY5n2t4/qjMZ4nix9XV/oVDH/Iqnay+DfP0UQh69ayVvZO32Ev /rX+d1LN80MNCLuDBURskPVzJk1zIlSDlgp5YYeSAAAAAAAA --------------ms010503070609030105040504--