Re: [Kicad-developers] isn't KiCad doing pretty bloody well?
On Sun, Feb 23, 2014 at 11:59:10PM +0100, Fabrizio Tappero wrote: I would like to share with you a very recent ohloh.net activity report that can give use an idea of how well KiCad is doing. Uh what are Y-O-Y commits? Some kind of metric? Anyway, other than code metrics is (IMHO) more important the number of boards done and the average number of f*cks thrown for board (- subjective index of software quality :D) With an average of one board every month I'd say I'm quite content. For mixed signal and power work; probably people doing cutting edge digital circuitry would be disappointed, especially if HDI boards were needed. Of course it's difficult to beat the price tag :D -- Lorenzo Marcantonio Logos Srl ___ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp
Re: [Kicad-developers] Text in opengl
On 02/24/2014 08:45 AM, Lorenzo Marcantonio wrote: - Handling a VBO for line strips (and probably a shader or some other way of controlling line width per line, not for the whole batch). I am not sure if degenerated vertices (i.e. two consecutives vertices with the same coordinates to indicate beginning of a new line) work in GL_LINE_STRIP mode, otherwise you have to use GL_LINE instead. Text should never generate identical vertices, otherwise font data is misoptimized :P anyway I don't remember seeing something forbidding them (but also nothing guaranteeing... so maybe they are implementation dependant - as usual!) It is not that text should generate identical vertices, the purpose is to separate lines stored in a single VBO. If you have a VBO drawn as GL_LINE_STRIP, then you will have *all* vertices drawn as a single continous line, so you need a way to tell GPU that there should be a break. It is better explained here (for triangles), chapter Use Triangle Strips to Batch Vertex Data: https://developer.apple.com/library/ios/DOCUMENTATION/3DDrawing/Conceptual/OpenGLES_ProgrammingGuide/TechniquesforWorkingwithVertexData/TechniquesforWorkingwithVertexData.html Using a shader to fix line width should work, but doesn't reduce vertex count. I hoped to do that. Also I have no idea on how shaders work :P - Drawing using direct mode, but in this case all lines should be drawn at the same time. Also I wonder how does it compete with current VBO batch in terms of performance. If I had to choose, I would go for bitmap fonts. It makes every character one quad or two triangles. Or maybe antialiasing could solve the problem? Texturing the font would need a) a huge amount of texture memory (and Intels are sharing the system memory) and b) losing crispness due to resampling; I'd prefer the current situation in that case :D a) Why do you think so? It is just one black white texture containing all characters (e.g. http://i.stack.imgur.com/VFKM2.gif) and then it is simply referred to when drawing characters. Textures can also be colorized, so the bitmap black white is perfectly fine. b) Maybe there are some ways to sharpen textures, but I am not very familiar with the topic. Antialiasing on lines is historically never been implemented on consumer cards (it was one of the 'differences' of the Quadros), but maybe now the situation is different. In fact the FireGL we used (still the IBM design, not the overpowered Radeon) had the 'line' primitives (evaluators included) completely done in HW, antialiasing and stuff. But only one texture stage :D But for lines made from triangles it works http://oi58.tinypic.com/21n2s1j.jpg (yup, it is buggy, there is something wrong and currently I do not know how to fix it). Regards, Orson ___ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp
Re: [Kicad-developers] Text in opengl
On Mon, Feb 24, 2014 at 11:13:27AM +0100, Maciej Sumiński wrote: line, so you need a way to tell GPU that there should be a break. It is better explained here (for triangles), chapter Use Triangle Strips to Batch Vertex Data: GL_LINES, then. However endpoints would be drawn twice; if fragment testing is done correctly (and IIRC it is) shouldn't be a problem. a) Why do you think so? It is just one black white texture containing all characters (e.g. http://i.stack.imgur.com/VFKM2.gif) and then it is simply referred to when drawing characters. Textures can also be colorized, so the bitmap black white is perfectly fine. How many characters? The full BMP, maybe (since we have unicode...); It's not *so* easy. Need thinking. b) Maybe there are some ways to sharpen textures, but I am not very familiar with the topic. Grid fitting after rasterization AFAIK can't be done... but maybe there is a fragment shader trick to pick the 'right' pixel. But for lines made from triangles it works http://oi58.tinypic.com/21n2s1j.jpg (yup, it is buggy, there is something wrong and currently I do not know how to fix it). Yes, but you pump triangles, not lines :P the current trend for GPUs seems to be that. -- Lorenzo Marcantonio Logos Srl ___ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp
Re: [Kicad-developers] PATCH: when clicking the thumbnail component, pre-select current value in component browser
Le 24/02/2014 05:03, Henner Zeller a écrit : ommit message: * Preselect the currently chosen component in the browser when pressing the thumbnail view. * Various smallish documentation updates in the component chooser area. Committed in rev 4719. Thanks. -- Jean-Pierre CHARRAS ___ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp
Re: [Kicad-developers] Text in opengl
On 02/24/2014 11:43 AM, Lorenzo Marcantonio wrote: a) Why do you think so? It is just one black white texture containing all characters (e.g. http://i.stack.imgur.com/VFKM2.gif) and then it is simply referred to when drawing characters. Textures can also be colorized, so the bitmap black white is perfectly fine. How many characters? The full BMP, maybe (since we have unicode...); It's not *so* easy. Need thinking. Here it comes: http://unifoundry.com/unifont.html It takes ~2MB of memory and has size of 4128x4160 px, so there is a chance that it could fit to 4096x4096 if the frame is cropped. The bad thing is that it may look really ugly if characters are too much stretched. On the other hand, I suppose that naming nets using non-ascii characters is a rare case (however it has to be supported if that is the policy). Regards, Orson ___ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp
[Kicad-developers] About UTF8 string length
I noticed that cvpcb table become unaligned using extended characters (specifically the µ one :D); of course this is because µ is 2 octects for one character... is this yet another wxString idiocy which doesn't correctly handle the encoding or is there a function to retrieve the length in character (not octets) and simply needs to be used? -- Lorenzo Marcantonio Logos Srl ___ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp
[Kicad-developers] Saving bandwidth in the install script (with patch)
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Heyho, in response to a question in the irc channel about the checkout size of the doc repo whilst using the install script, I've searched for a way to get a smaller checkout size. The bzr checkout command got: --lightweight Perform a lightweight checkout. Lightweight checkouts depend on access to the branch for every operation. Normal checkouts can perform common operations like diff and status without such access, and also support local commits. This takes away about 400mb (iirc) from the checkout from the doc repo. Maybe this option should be added to the rest of the checkouts in the script too (dunno if some of those depend on a complete repository while building / if it's desired to being able to build without an internet connection if calls to bzr are made). Building / installing the docs worked fine from the lightweight checkout. See attached patch for the script. Bye, imp -BEGIN PGP SIGNATURE- Version: GnuPG v2.0.22 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQIcBAEBAgAGBQJTC1lmAAoJEMrhIQwWBCkUvKQP/2c49YJEGLDMLhNrIOMaD7Lf VqD4Wt0UsSXZOxc45EwtV+c77/qhPUpPs5DF+mKaUKlsv/50saHMuhwn/qWiagXo P+eQJQ7EtBQZROhES077dC0/knGdEbx8/x9MvkcIeqp1pycfW3Al13SuMwWmLta+ KMbCmzTWzliXVAoQc/vsjsxU7NJGLgj4vqfv45YqW8j32QKDToHs30ZlT0fNG9V+ zMGf8i8cNLqUicRK3oQcJkyF1cCWNSREWCIc0U7lybETmsHFj/Y4zwlqStAZBa6G 03aCKi8QqVsXa8ZMceIJ7yVoUVon5zSIK5h6nzrsN86QNACeDWNkE5eE113/BSBX xu8sZHcKFDIrclKPBtE3rdPuHzqVl5YNg6XqpGVhZAe3K0Nq8pJXC/pcAqnZT1zi yig88w7/LntVBwM14gfwX4uLaKO6DNpxYC8xap76lJ4Twqt5tzNyQ8RLohyXp0Kd luaK+KmZFE+ePibiOs+ydGK21Xp0W39pt7I/CDL9pVNxNwx64NP0rQMviJjXWIDF xXHz6f3q8yMGXgmQRqDggLzGBMKzgz04fcnwLP1o/Pk+KKH8BUOxO0XYkvQU0ajO Yu/HuRKoRXjO2WSmggLlppTiFoW/qxeIaIqCv5IQJa57/36vWZUDRzyr3hjGpEz8 2PYRV67vRrfps05J18gz =eIzr -END PGP SIGNATURE- === modified file 'scripts/kicad-install.sh' --- scripts/kicad-install.sh 2014-01-20 19:10:45 + +++ scripts/kicad-install.sh 2014-02-24 14:18:05 + @@ -217,7 +217,7 @@ echo step 5) checking out the documentation from launchpad repo... if [ ! -d $WORKING_TREES/kicad-doc.bzr ]; then -bzr checkout lp:~kicad-developers/kicad/doc kicad-doc.bzr +bzr checkout --lightweight lp:~kicad-developers/kicad/doc kicad-doc.bzr echo docs checked out. else cd kicad-doc.bzr ___ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp
[Kicad-developers] What is pcbnew doing when selecting the plugin type?
Strange thing noticed today: in the pcb library table dialog, when I pull down the plugin type combo pcbnew runs at nearly 100% CPU for some (even a lot, sometimes) seconds, then open the listbox. Totally unresponsive in the meantime (for a time it even seems to grab the X server...) Any idea? -- Lorenzo Marcantonio Logos Srl ___ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp
Re: [Kicad-developers] Henner's component chooser for CvPcb...
On 2/24/2014 2:54 AM, Lorenzo Marcantonio wrote: On Sun, Feb 23, 2014 at 04:53:39PM -0800, Henner Zeller wrote: I don't think that the functionality of what cvpcb does now will/should go away entirely. Having a tabular view of the whole BOM essentially and quickly be able to review and change the one or other footprint is great and needed, in particular in the final passes of a project. Though it should not be an external program as it is now, essentially communicating back and forth with files, which makes the process tedious and error prone. I should have been more clear. The functionality will not go away. The stand alone application will go away. The CvPcb functionality will be pushed into one of (pcbnew most likely) the shared objects and will be usable from either the schematic editor or the board editor. I have always found running CvPcb as separate application to associate footprints to be cumbersome. I would rather assign them when I'm editing the schematic because I almost always know the footprint of the component when I'm designing the circuit. Never said to junk the tabular view. Something like the list views in orcad capture would actually very useful. ___ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp
Re: [Kicad-developers] Henner's component chooser for CvPcb...
24/02/14 09:52, Lorenzo Marcantonio kirjoitti: IIRC eagle (at least v5) had three entities: - Package - Symbol - Part (seen as a many-to-many between package and symbol) Maybe my knowledge was out of date or I was just referring to common usage model. The above is how it is supposed to be done properly. -Vesa ___ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp
Re: [Kicad-developers] Henner's component chooser for CvPcb...
Hi, Vesa Solonen wrote: 24/02/14 09:52, Lorenzo Marcantonio kirjoitti: IIRC eagle (at least v5) had three entities: - Package - Symbol - Part (seen as a many-to-many between package and symbol) Maybe my knowledge was out of date or I was just referring to common usage model. The above is how it is supposed to be done properly. This is not done this way in Eagle. Eagle has a part, than is a container with a single symbol, and multiple packages, with individual pin mapping for each symbol-package association. You have to duplicate the SOT23-5 package across all your parts, and can not change it globally, like the Kicad enables. (On the other hand, what's missing in Kicad is the indivual pin mapping and makes for TO-220-123, TO-220-BCE, TO-220-BEC, TO-220-GDS, TO-220-GSD and so on, but that's not the topic). ++ -- Charles ___ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp
Re: [Kicad-developers] Henner's component chooser for CvPcb...
24/02/14 22:03, Charles Goyard kirjoitti: Eagle has a part, than is a container with a single symbol, and multiple packages, with individual pin mapping for each symbol-package association. You have to duplicate the SOT23-5 package across all your parts, and can not change it globally, like the Kicad enables. Thanks for the info. There is a great opportunity for KiCad doing it right or at least well ;) (On the other hand, what's missing in Kicad is the indivual pin mapping and makes for TO-220-123, TO-220-BCE, TO-220-BEC, TO-220-GDS, TO-220-GSD and so on, but that's not the topic). I'd say this is the worst of the bad choices. Packages are standardised as are pin numbers so there is no question of mangling the footprints. Most of the time stuff breaks badly this way as one has to remember details twice if both symbol mapping and footprint mapping can change. One can not use alias functionality if pin to pad matrix changes, but otherwise it works. Rendering pin numbers and names should eventually made dynamic and hard coded symbols will disappear. Symbols have just the functionality - names and when they are instantiated as a specific part pin numbers get mapped to the names. This is also needed for pin/gate swapping from layout to schematic... The same name - pad mapping happens on the pcb side to show pin/pad function. -Vesa ___ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp
Re: [Kicad-developers] Henner's component chooser for CvPcb...
On Mon, Feb 24, 2014 at 10:35:57PM +0200, Vesa Solonen wrote: I'd say this is the worst of the bad choices. Packages are standardised as are pin numbers so there is no question of mangling the footprints. Not always... while for example (these days at least :D) mosfets always follow the GDSD mapping for SMD packages (there are technical reason: the drain is thermally bonded), and usually SOT-23 diodes are standard too (singles and doubles, like the BAT54 variants) other components don't always follow the same conventions, or there isn't a standard way of numbering pins. In the past all the 6 permutation of SOT-92 transistors were in use :D Even today there are discretes available in a 'reversed' pinout for layout purposes so you wouldn't bet on a mosfet being always GDSD :P Other example: relays always have A1/A2 as coil contacts but the same package has the contact pins named 11/12 for the B-form (NC) or 13/14 for the A-form (NO). Now look, for example, at set of safety relays, all with the same package and various contact configuration with 4/6 contacts :P the Schrack SR6 are four kind of relays with the same exact package but different pin numbers... Other components with numbering often quite evil are board-mounter transformers; the common one are usually 1-7 and 8-13 but when you have taps or multiple windings, good luck. These things have pin selectively populated and the pin positions gives polarization, too. On the converse often ICs have different pinout for different packages. Like SOIC 14 and SSOP 16. Signal and pin numbers don't match in this case :D in some case there are even signals omitted (like RS232 transceivers which omit the charge pump ready signal on the smaller packages). From a strict data modeling standpoint then you should have: - The part, in general, with pin names and 'part-pin's - The package with the real 'pin-number's - The variant (part many-to-many package) containing the pin mapping (part-pin zero-or-one-to-one pin-number) (sorry if it's not neither exactly E-R or collection based:P) This doesn't model the signal omitted case because it's too dangerous and it's often a slightly different part number anyway (the last relationship would be zero-or-one-to-zero-or-one; good luck with the DRC). Is this overkill? IMHO yes. I currently work without too many issues duplicating the few packages needing it (mostly SOTs and TOs), with the infamous SOT23-123/SOT23-GSD/... technique (about 6 for that particular package) and naming conventions on the eeschema side, like LTCxxx_SO14 and LTCxxx_SOP16. A good compromise would be having different sets of pin names for a package: the base is the SOT23 and the pins get named 123 or GSD or whatever depending on a variant code or something. For something which usually is generated *once* and never touched after that is a lot of implementation work to do. Of course volunteer work is always accepted:D -- Lorenzo Marcantonio Logos Srl ___ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp
Re: [Kicad-developers] Henner's component chooser for CvPcb...
I don't think that the functionality of what cvpcb does now will/should go away entirely. Having a tabular view of the whole BOM essentially and quickly be able to review and change the one or other footprint is great and needed, in particular in the final passes of a project. Though it should not be an external program as it is now, essentially communicating back and forth with files, which makes the process tedious and error prone. Being able to quickly choose the footprint while choosing a particular component is useful in many other cases; you typically want to choose an initial footprint for your component; often you already know, because you spent some time choosing that component because of different footprint choices. In that case, having it simple to select the footprint while choosing the component is another important thing. I like the what cvpcb does, in comparison to ther eda packages, the fact that schematic symbols and footprints is kind of seperate things is nice in kicad. I allows me to not worry about the footprint untill I have iterated my schematic. Indeed getting rid of that wierd netlist thing that has to be manually exported from eeschema to be read by cvpcb would be nice to get rid of. ___ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp