Re: [Kicad-developers] Schematic Symbol Philosophy?

2015-06-08 Thread Eldar Khayrullin

I agree with you. Too loudly that this is a problem.
I only suggested own idea as a new feature.

P.s.In my work we use a narrow specific range of parts and make cvpcb 
looks excessive.
For me, it'snot difficult. But for simple users that use pcad it is 
difficult.

They say: whatto dorethe same thing(you can make mistakes).

It was an offer, do not judge strictly.

08.06.2015 19:42, Andy Peters пишет:

On Jun 7, 2015, at 1:33 AM, Eldar Khayrullin eldar.khayrul...@mail.ru wrote:


What problem is this trying to solve?

No copy sch symbols, no copy pcb footprints,
more ready parts with same sch symbol and footprint, but different
pins assignment.

I still don’t understand why you think there are problems.

Let’s talk op-amps for the moment.

Does your schematic library have a generic op-amp which you place on every 
design? Do you then go into the schematic and modify the symbol you placed so 
that it calls out TL072 and the correct unit, and then do you go in and also 
add the desired footprint?

If so, for the love of G-d, WHY? That is a recipe for disaster.

Why not just have in your library a few of your favorite op-amps: TL072ACD, 
OPA2134UA, OP275GSZ. Note the symbol names, which are the vendor part numbers 
and as such have the footprint encoded into them. And, each symbol has the 
correct footprint embedded in it.

Do you consider this “unnecessary duplication” in that each of these dual 
op-amps has the same symbol and uses the same footprint (SOIC-8)?

It is MUCH harder to make an expensive mistake if the symbol — the “component” 
— is “complete,” in that it has the correct pin-out which matches the footprint.

Your suggestion of a components library” solves a problem which doesn’t 
actually exist.

-a
___
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


 * Английский - определен
 * Английский
 * Русский

 * Английский
 * Русский

javascript:void(0);#
___
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] on incorrect polygon behavior

2015-06-08 Thread Torsten Hüter
Hi Tom,

just for reference, you can find a benchmark of various polygon libraries here:

http://rogue-modron.blogspot.de/2011/04/polygon-clipping-wrapper-benchmark.html

It shows as well that Clipper performs better than Boost.Polygon and thus is a 
good selection. And CGAL is well known but slow compared to the alternatives. 
However it makes maybe sense to have a look at Boost.Geometry (not 
Boost.Polygon) - because this library has almost the same performance compared 
to Clipper but is more general; because they use metaprogramming (header-only 
template library). There you can find many useful algorithms and also spatial 
indexes like R-Trees. One advantage that I'd see is that you can adapt directly 
the VECTOR2 class.

http://www.boost.org/doc/libs/1_58_0/libs/geometry/doc/html/index.html

Greetings,
Torsten

 Hi,

 It took me a bit longer than initially anticipated to write the
 fracturing (polygon with holes - single outline conversion) algorithm
 that was missing in Clipper. I managed to generate correct zones and the
 algorithm does not crash on the test cases that were crashing
 Boost.Polygon. My plan is now to:
 - clean SHAPE_POLY_SET code and send the patch asap (perhaps Monday, I'm
 out for the weekend),
 - optimize fracturing, which is taking most of the calculation time. To
 my surprise, Clipper performs calculations faster than BPL,
 - look into possibility of having a single polygon set class, merging
 the functionality of CPolyLine, CPOLYGONS_LIST and all BPL-derived classes,
 - keep fallback BPL zone code which could be switched on in the
 preferences.
 - add an option to dump zone geometry (outline, holes, thermals, full
 poly) to a text file while refilling zones.

 The last two options are temporary - to gather confidence in Clipper,
 compare the performance of BPL/Clipper and, in case of trouble, obtain
 test cases for both backends.

 Cheers,
 Tom


___
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] CvPcb change.

2015-06-08 Thread Wayne Stambaugh
On 6/8/2015 6:10 AM, LordBlick wrote:
 In response to a message written on 07.06.2015, 20:20, from Wayne
 Stambaugh:
 I just committed a patch (r5718) from Dick that should greatly simplify
 the process of footprint assignment using cvpcb.  This patch does away
 with using the intermediate *.cmp file and directly updates the s-expr
 netlist via kiway express messaging.  This means there is no more stand
 alone executable of cvpcb.  This also means that you will have to use
 the s-expr netlist when importing in pcbnew.  If you do not normally
 back import the footprint assignments from the *.cmp file into eeschema,
 you will have to do this before your run cvpcb because the s-expr
 netlist will not contain the footprint assignments until you do this.
 This patch will eliminate one more unnecessary step when assigning
 footprints and streamline the process.  I still need to fix the save
 tooltip in the cvpcb toolbar since the *.cmp file does not get saved.  I
 also need to remove the read footprints from *.cmp file in the pcbnew
 import netlist dialog since the *.cmp can no longer be generated by
 cvpcb.  Going forward, the *.cmp file will only be useful for back
 importing from pcbnew to eeschema.  At some point in the future, even
 that will go away.j  Please test this and let me know if you find any
 issues.
 It's nice message, but sth missed… In CMakeList.txt:769 not existing
 target „cvpcb” also should be renamed to „cvpcb_kiface”.

Fixed in r5724.  Thanks for pointing this out.

Cheers,

Wayne

___
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] pcbnew crashes when loading file with bad net ID

2015-06-08 Thread Wayne Stambaugh
Chris,

I committed this patch with a minor change to make the exception message
a bit more understandable.

Thanks,

Wayne

On 6/7/2015 7:24 PM, Chris Pavlina wrote:
 If you try to load a kicad_pcb into pcbnew that refers to an invalid net 
 ID, pcbnew crashes after failing an assertion. It should display an 
 error indicating that the file is corrupt instead. I've changed 
 BOARD_CONNECTED_ITEM::SetNetCode() to be able to indicate whether the 
 code was valid, rather than just asserting, and then changed 
 PCB_PARSER::parseTRACK() to check for this and complain using 
 Expecting().
 
 I'd rather have used an exception to do this, but we don't have any 
 exception types that look suitable. Thoughts?
 
 Here's a board file that causes this: 
 http://misc.c4757p.com/2VB701E.kicad_pcb
 
 --
 Chris
 
 
 
 ___
 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
 

___
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] Schematic Symbol Philosophy?

2015-06-08 Thread Heiko Rosemann
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 06/08/2015 06:42 PM, Andy Peters wrote:
 
 On Jun 7, 2015, at 1:33 AM, Eldar Khayrullin
 eldar.khayrul...@mail.ru wrote:
 
 What problem is this trying to solve?
 
 No copy sch symbols, no copy pcb footprints, more ready parts
 with same sch symbol and footprint, but different pins
 assignment.
 
 I still don’t understand why you think there are problems.
 
 Let’s talk op-amps for the moment.
 
 Does your schematic library have a generic op-amp which you place
 on every design? Do you then go into the schematic and modify the
 symbol you placed so that it calls out TL072 and the correct unit,
 and then do you go in and also add the desired footprint?
 
 If so, for the love of G-d, WHY? That is a recipe for disaster.
 
 Why not just have in your library a few of your favorite op-amps:
 TL072ACD, OPA2134UA, OP275GSZ. Note the symbol names, which are the
 vendor part numbers and as such have the footprint encoded into
 them. And, each symbol has the correct footprint embedded in it.
 
 Do you consider this “unnecessary duplication” in that each of
 these dual op-amps has the same symbol and uses the same footprint
 (SOIC-8)?
 
 It is MUCH harder to make an expensive mistake if the symbol — the
 “component” — is “complete,” in that it has the correct pin-out
 which matches the footprint.
 
 Your suggestion of a components library” solves a problem which
 doesn’t actually exist.

The components library is the approach Eagle uses, and I have a bit
of Eagle experience, so let me try to explain...

In that approach, you do _not_ place just a symbol in a schematic, but
an entire component (maybe a TL072ACD) or a component for which there
are several variants (maybe a TL072A with the variants CD and DE, one
a SOIC8, the other a PDIP8, but same symbol).

This makes the creation of new components and variants very easy, as
long as the symbol and the package (Eagle speak for footprint) exist.
All you have to do is to give it a name and connect symbol pins to
footprint pads. This last step is basically what you used to do with
CVPCB, only you do it only once, when you create the component. You
don't have to do it for every TL072ACD in your schematic (where I
agree it's very error prone), and it's more flexible than CVPCB,
because it can connect pin 1 (symbol) to pin 3 (footprint) or pin E
(symbol) to pin 3 (footprint) - so you don't need the
TO220BCE/ECB/CBE/123 footprints.

So you have a single canonical version of each footprint and symbol.
No need to copy symbols for creating new components, no need to update
or even touch all your OP-Amps when the one you based your symbol on
shows a bug.

Or in other words: It takes your library with a few of your favourite
OP-Amps, each with the correct footprint embedded one step further:
The components only link to symbols and footprints. If you place a
component in a schematic, it shows the symbol linked from it, and
stores the information of available footprints to be used when you
create a PCB from the schematic. If you place a component on a PCB, it
shows one of the footprints it links to (or a selection dialogue).

Maybe this clears the mud a little?

Heiko
- -- 
Mein PGP-Key zur Verifizierung: http://pgp.mit.edu

-BEGIN PGP SIGNATURE-
Version: GnuPG v2

iEYEARECAAYFAlV16sQACgkQ/Vb5NagElAVh+ACfQIRaQ6+LJqjxQFOYGQUA7ssp
zOsAn1tT8g+a+25dzAdqQ3nAH8muUksb
=hzJ/
-END PGP SIGNATURE-


___
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] [PATCH] Show targets on bus entry as well, hide when connected

2015-06-08 Thread Chris Pavlina
Hi,

I already sent in this patch but as a reply to my existing pin targets 
thread; I think it may have got lost. This patch enables pin targets 
on bus entries as well, as Wayne suggested, and hides them when the bus 
entry is connected.

--
Chris
commit a646e6c4b1a9ef624b4f56101d3a55f747558bf2
Author: Chris Pavlina cpavl...@binghamton.edu
Date:   Sun Jun 7 22:02:45 2015 -0400

Show targets on bus entries

diff --git a/eeschema/sch_bus_entry.cpp b/eeschema/sch_bus_entry.cpp
index 227f88a..6b3e3b6 100644
--- a/eeschema/sch_bus_entry.cpp
+++ b/eeschema/sch_bus_entry.cpp
@@ -35,6 +35,7 @@
 #include common.h
 #include richio.h
 #include plot_common.h
+#include boost/foreach.hpp
 
 #include eeschema_config.h
 #include general.h
@@ -182,6 +183,7 @@ void SCH_BUS_ENTRY_BASE::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint
   GR_DRAWMODE aDrawMode, EDA_COLOR_T aColor )
 {
 EDA_COLOR_T color;
+EDA_RECT* clipbox = aPanel-GetClipBox();
 
 if( aColor = 0 )
 color = aColor;
@@ -190,8 +192,16 @@ void SCH_BUS_ENTRY_BASE::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint
 
 GRSetDrawMode( aDC, aDrawMode );
 
-GRLine( aPanel-GetClipBox(), aDC, m_pos.x + aOffset.x, m_pos.y + aOffset.y,
+GRLine( clipbox, aDC, m_pos.x + aOffset.x, m_pos.y + aOffset.y,
 m_End().x + aOffset.x, m_End().y + aOffset.y, GetPenSize(), color );
+
+if( m_isDanglingStart ) {
+GRCircle( clipbox, aDC, m_pos.x + aOffset.x, m_pos.y + aOffset.y, TARGET_BUSENTRY_RADIUS, 0, color );
+}
+
+if( m_isDanglingEnd ) {
+GRCircle( clipbox, aDC, m_End().x + aOffset.x, m_End().y + aOffset.y, TARGET_BUSENTRY_RADIUS, 0, color );
+}
 }
 
 
@@ -230,6 +240,50 @@ void SCH_BUS_ENTRY_BASE::GetEndPoints( std::vector DANGLING_END_ITEM  aItemLi
 }
 
 
+bool SCH_BUS_ENTRY_BASE::IsDanglingStateChanged( std::vectorDANGLING_END_ITEM aItemList )
+{
+bool previousStateStart = m_isDanglingStart;
+bool previousStateEnd = m_isDanglingEnd;
+
+m_isDanglingStart = m_isDanglingEnd = true;
+
+// Wires and buses are stored in the list as a pair, start and end. This
+// variable holds the start position from one iteration so it can be used
+// when the end position is found.
+wxPoint seg_start;
+
+BOOST_FOREACH( DANGLING_END_ITEM each_item, aItemList )
+{
+if( each_item.GetItem() == this )
+continue;
+
+switch( each_item.GetType() )
+{
+case WIRE_START_END:
+case BUS_START_END:
+seg_start = each_item.GetPosition();
+break;
+case WIRE_END_END:
+case BUS_END_END:
+if( IsPointOnSegment( seg_start, each_item.GetPosition(), m_pos ) )
+m_isDanglingStart = false;
+if( IsPointOnSegment( seg_start, each_item.GetPosition(), m_End() ) )
+m_isDanglingEnd = false;
+default:
+break;
+}
+}
+
+return (previousStateStart != m_isDanglingStart) || (previousStateEnd != m_isDanglingEnd);
+}
+
+
+bool SCH_BUS_ENTRY_BASE::IsDangling() const
+{
+return m_isDanglingStart || m_isDanglingEnd;
+}
+
+
 bool SCH_BUS_ENTRY_BASE::IsSelectStateChanged( const wxRect aRect )
 {
 bool previousState = IsSelected();
diff --git a/eeschema/sch_bus_entry.h b/eeschema/sch_bus_entry.h
index 09e1007..5de14e6 100644
--- a/eeschema/sch_bus_entry.h
+++ b/eeschema/sch_bus_entry.h
@@ -32,6 +32,8 @@
 
 #include sch_item_struct.h
 
+#define TARGET_BUSENTRY_RADIUS 12   // Circle diameter drawn at the ends
+
 
 /**
  * Class SCH_BUS_ENTRY_BASE
@@ -43,6 +45,7 @@ class SCH_BUS_ENTRY_BASE : public SCH_ITEM
 protected:
 wxPoint m_pos;
 wxSize  m_size;
+bool m_isDanglingStart, m_isDanglingEnd;
 
 public:
 SCH_BUS_ENTRY_BASE( KICAD_T aType, const wxPoint pos = wxPoint( 0, 0 ), char shape = '\\' );
@@ -100,6 +103,10 @@ public:
 
 void GetEndPoints( std::vector DANGLING_END_ITEM aItemList );
 
+bool IsDanglingStateChanged( std::vectorDANGLING_END_ITEM aItemList );
+
+bool IsDangling() const;
+
 bool IsSelectStateChanged( const wxRect aRect );
 
 bool IsConnectable() const { return true; }
___
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] 3D model generation.

2015-06-08 Thread Cirilo Bernardo
If you can give me some sample part numbers I'll have a look.

- Cirilo

On Tue, Jun 9, 2015 at 1:55 AM, Wayne Stambaugh stambau...@gmail.com
wrote:

 Does anyone have a parametric 3D model generator script for two pin J
 lead components like SMD tantalum caps or SMD DO diode packages?  I'm
 using some of the large SMD wire wound resistor packages (2515, 4527,
 etc.) in some of my designs and I was hoping there would be an easier
 way to create them rather than using Wings3D.

 Thanks,

 Wayne

 ___
 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

___
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] on incorrect polygon behavior

2015-06-08 Thread Tomasz Wlostowski
On 08.06.2015 19:42, Torsten Hüter wrote:
 Boost.Geometry (not Boost.Polygon) - because this library has almost the same 
 performance compared to Clipper but is more general; because they use 
 metaprogrammin

Hi Torsten,

Thanks for the tip. I've known this performance comparison, it shows
Clipper is quite fast and if you combine its speed with simplicity (only
2 very cleanly written source files), it's one of the best libraries
available.

After working with BPL for a while, looking at the quality of the code
and the idea of generic geometry library (BPL authors admit it works
only for integer types, because for floats/doubles rounding is not
handled correctly), I'm sure I'll never use boost for anything
geometry-related.

Tom

___
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] Schematic Symbol Philosophy?

2015-06-08 Thread Chris Pavlina
On Mon, Jun 08, 2015 at 11:28:08PM +0200, Heiko Rosemann wrote:
  A given component should have exactly ONE available footprint. If
  your opamp comes in PDIP-8 and SOIC-8, those are two different
  components.
 
 Why? There's a good point for the opposite: Making different PCBs (SMD
 for series production/no SMD for prototyping/hobbyists or different
 casings) from a single - consistent - schematic. Otherwise you are
 going to run into trouble because you'll have multiple schematics of
 the same system and you need to change something on the logical
 (schematic) side.

I explained this already. Look at the pinouts for the different 
footprints of LT1013. Only a very inexperienced person would claim that 
assuming different footprints have the same pinout is a good idea.

--
Chris

___
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] Schematic Symbol Philosophy?

2015-06-08 Thread Andy Peters

 On Jun 8, 2015, at 12:19 PM, Heiko Rosemann heiko.rosem...@web.de wrote:
 
 The components library is the approach Eagle uses, and I have a bit
 of Eagle experience, so let me try to explain...
 
 In that approach, you do _not_ place just a symbol in a schematic, but
 an entire component (maybe a TL072ACD) or a component for which there
 are several variants (maybe a TL072A with the variants CD and DE, one
 a SOIC8, the other a PDIP8, but same symbol).
 
 This makes the creation of new components and variants very easy, as
 long as the symbol and the package (Eagle speak for footprint) exist.
 All you have to do is to give it a name and connect symbol pins to
 footprint pads. This last step is basically what you used to do with
 CVPCB, only you do it only once, when you create the component. You
 don't have to do it for every TL072ACD in your schematic (where I
 agree it's very error prone), and it's more flexible than CVPCB,
 because it can connect pin 1 (symbol) to pin 3 (footprint) or pin E
 (symbol) to pin 3 (footprint) - so you don't need the
 TO220BCE/ECB/CBE/123 footprints.

For the record: I’ve never used CvPCB, and I’ve always thought that it was a 
mistake. I have always embedded footprint (and custom part numbers) into my 
schematic symbols.

 So you have a single canonical version of each footprint and symbol.
 No need to copy symbols for creating new components, no need to update
 or even touch all your OP-Amps when the one you based your symbol on
 shows a bug.
 
 Or in other words: It takes your library with a few of your favourite
 OP-Amps, each with the correct footprint embedded one step further:
 The components only link to symbols and footprints.

OK, so this “component” library is something that maps symbols (from a symbol 
library) and footprints (from a footprint library) into a third library, in 
much the same was as Altium does with their Integrated libraries. 

 If you place a
 component in a schematic, it shows the symbol linked from it, and
 stores the information of available footprints to be used when you
 create a PCB from the schematic.

A given component should have exactly ONE available footprint. If your opamp 
comes in PDIP-8 and SOIC-8, those are two different components.

 If you place a component on a PCB, it
 shows one of the footprints it links to (or a selection dialogue).

Here’s a question: why would you place a component on a PCB? That component has 
no connectivity information, and Kicad won’t (and IMHO, shouldn’t) let you edit 
the netlist in pcbnew. (How should it regenerate the schematic when you do 
that?)

So I see what you’re saying … the “symbol” library should contain symbols only, 
and have no connection to a footprint, and you need a component library to map 
a symbol with a footprint (and a 3D model, and a custom part number for the 
BOM). The engineer doing the design interacts only with the component library; 
only the librarian needs to be concerned with the symbol and the footprint 
libraries.

Gotcha.

From the perspective of the user who considers each symbol to be a component 
(again, that is: embedded footprint, embedded custom part number, different 
symbols for TL072ACD and TL072ACP) and ignores the CvPCB crap, there’s not much 
benefit to a separate component library. That is especially true given the 
inability to edit a netlist in pcbnew.

-a
___
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] Schematic Symbol Philosophy?

2015-06-08 Thread Andy Peters

 On Jun 8, 2015, at 2:28 PM, Heiko Rosemann heiko.rosem...@web.de wrote:
 
 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1
 
 On 06/08/2015 10:41 PM, Andy Peters wrote:
 
 On Jun 8, 2015, at 12:19 PM, Heiko Rosemann
 heiko.rosem...@web.de wrote:
 
 So you have a single canonical version of each footprint and
 symbol. No need to copy symbols for creating new components, no
 need to update or even touch all your OP-Amps when the one you
 based your symbol on shows a bug.
 
 Or in other words: It takes your library with a few of your
 favourite OP-Amps, each with the correct footprint embedded one
 step further: The components only link to symbols and
 footprints.
 
 OK, so this “component” library is something that maps symbols
 (from a symbol library) and footprints (from a footprint library)
 into a third library, in much the same was as Altium does with
 their Integrated libraries.
 
 Yes, it is for Eagle (although components, footprints and symbols were
 all saved in the same file when I last used Eagle, but still during
 the schematic and PCB design phase you only interact with components)
 and I guess that's what Eldar tried to achieve too.
 
 If you place a component in a schematic, it shows the symbol
 linked from it, and stores the information of available
 footprints to be used when you create a PCB from the schematic.
 
 A given component should have exactly ONE available footprint. If
 your opamp comes in PDIP-8 and SOIC-8, those are two different
 components.
 
 Why? There's a good point for the opposite: Making different PCBs (SMD
 for series production/no SMD for prototyping/hobbyists or different
 casings) from a single - consistent - schematic. Otherwise you are
 going to run into trouble because you'll have multiple schematics of
 the same system and you need to change something on the logical
 (schematic) side.

Maybe the hobbyist will do a through-hole prototype and then an SMD version for 
“production,” but here in the real world, we never do that. Really. It just 
doesn’t happen. Stuffing boards with SMD parts is a solved problem.

And, as Chris Pavlina has noted in a reply on this thread, it’s folly to assume 
that a part that is available in different packages has the same pinout for all 
of those packages. LT1371, for example, has an 20-pin wide SO package in 
addition to two 7-pin packages (TO-220 and DDR).  

 Of course the different variants of a single component would also
 need different BOM numbers, different 3D models etc. and stuff like
 the BOM needs to be generated from the PCB, not from the schematic, in
 this use case.

Right, and that argues AGAINST having one schematic for wildly-different 
implementations. It’s bad enough trying to keep track of stuffing options, 
which only affect the BOM and assembly, but to add in the option for a 
different PCB with different footprints? That’s a new design.

 
 If you place a component on a PCB, it shows one of the footprints
 it links to (or a selection dialogue).
 
 Here’s a question: why would you place a component on a PCB? That
 component has no connectivity information, and Kicad won’t (and
 IMHO, shouldn’t) let you edit the netlist in pcbnew. (How should it
 regenerate the schematic when you do that?)
 
 1) For very simple layouts, you may not need a schematic at all, but
 need a PCB file for manufacturing the board, so you just place the
 components and draw lines for tracks.

If the layout is that simple, shouldn’t drawing the schematic be equally 
simple? How hard is it, really? 


 2) Other software (and maybe also kicad someday?) can do
 back-annotation, i.e. netlist editing from the PCB editor. That's
 where adding a component on a PCB really comes into play (and deleting
 is still more relevant than adding)

So let’s say you are doing your layout and you add an inverting op-amp circuit, 
so you need the op-amp, two resistors, and maybe two decoupling caps. You add 
the parts to the artwork, then you edit the netlist to connect those parts, and 
then you add values to the resistors and capacitors. Now to back-annotate to 
the schematic.

Imagine what kind of mess will be made of the schematic when you do that. How 
is the back-annotation thing supposed to know what looks best to the human? I 
mean, even in the “we need this feature” case where you are simply changing the 
connections to an FPGA by moving some traces around, the back-annotation would 
look like crap.

And, seriously, that’s FASTER than just editing the schematic properly in the 
first place, regenerating and importing the netlist, then moving the parts to 
where the need to be and routing? It’s really just crazy.

The only back-annotation I want to see is where once place and route is 
finished, you just tell the tools to renumber the reference designators in a 
geographical fashion and update the schematic with those new values.

 From the perspective of the user who considers each symbol to be a
 component (again, that is: embedded footprint, 

Re: [Kicad-developers] Schematic Symbol Philosophy?

2015-06-08 Thread Heiko Rosemann
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 06/08/2015 10:41 PM, Andy Peters wrote:
 
 On Jun 8, 2015, at 12:19 PM, Heiko Rosemann
 heiko.rosem...@web.de wrote:
 
 So you have a single canonical version of each footprint and
 symbol. No need to copy symbols for creating new components, no
 need to update or even touch all your OP-Amps when the one you
 based your symbol on shows a bug.
 
 Or in other words: It takes your library with a few of your
 favourite OP-Amps, each with the correct footprint embedded one
 step further: The components only link to symbols and
 footprints.
 
 OK, so this “component” library is something that maps symbols
 (from a symbol library) and footprints (from a footprint library)
 into a third library, in much the same was as Altium does with
 their Integrated libraries.

Yes, it is for Eagle (although components, footprints and symbols were
all saved in the same file when I last used Eagle, but still during
the schematic and PCB design phase you only interact with components)
and I guess that's what Eldar tried to achieve too.

 If you place a component in a schematic, it shows the symbol
 linked from it, and stores the information of available
 footprints to be used when you create a PCB from the schematic.
 
 A given component should have exactly ONE available footprint. If
 your opamp comes in PDIP-8 and SOIC-8, those are two different
 components.

Why? There's a good point for the opposite: Making different PCBs (SMD
for series production/no SMD for prototyping/hobbyists or different
casings) from a single - consistent - schematic. Otherwise you are
going to run into trouble because you'll have multiple schematics of
the same system and you need to change something on the logical
(schematic) side.

Of course the different variants of a single component would also
need different BOM numbers, different 3D models etc. and stuff like
the BOM needs to be generated from the PCB, not from the schematic, in
this use case.

 If you place a component on a PCB, it shows one of the footprints
 it links to (or a selection dialogue).
 
 Here’s a question: why would you place a component on a PCB? That
 component has no connectivity information, and Kicad won’t (and
 IMHO, shouldn’t) let you edit the netlist in pcbnew. (How should it
 regenerate the schematic when you do that?)

1) For very simple layouts, you may not need a schematic at all, but
need a PCB file for manufacturing the board, so you just place the
components and draw lines for tracks.
2) Other software (and maybe also kicad someday?) can do
back-annotation, i.e. netlist editing from the PCB editor. That's
where adding a component on a PCB really comes into play (and deleting
is still more relevant than adding)

 So I see what you’re saying … the “symbol” library should contain
 symbols only, and have no connection to a footprint, and you need a
 component library to map a symbol with a footprint (and a 3D model,
 and a custom part number for the BOM). The engineer doing the
 design interacts only with the component library; only the
 librarian needs to be concerned with the symbol and the footprint
 libraries.
 
 Gotcha.

True, the big advantage would be on the librarian's side - much easier
to keep all the components correct and on the same up-to-date symbol
and footprint set when you only have to do pin-to-pad mappings instead
of copying/drawing symbols. Imagine just 20 OP-Amps, and then for some
reason you (or your customers) want a different font size in the
schematic - in a non-component-embedded-footprint-symbol approach
you'd need to touch every single symbol, in a
component-as-symbol-footprint-pin-pad-mapping approach there's only
one file to touch: The OP-Amp symbol.

 From the perspective of the user who considers each symbol to be a
 component (again, that is: embedded footprint, embedded custom part
 number, different symbols for TL072ACD and TL072ACP) and ignores
 the CvPCB crap, there’s not much benefit to a separate component
 library. That is especially true given the inability to edit a
 netlist in pcbnew.

If there was a library for every part the user would ever want to use,
that would be true. I have yet to meet a PCB designer who never
created any library components (as in: Choosing symbol, footprint,
doing pin association) though...

But this topic has crept up on this list about every other year (I'd
say) and nobody (me included) is putting any coding effort (or similar
contribution to kicad) behind it, so we might as well drop the
conversation here - I just wanted to drop in because I felt you and
Eldar weren't really discussing the same thing ;)

Good night from Germany,
Heiko
- -- 
Mein PGP-Key zur Verifizierung: http://pgp.mit.edu

-BEGIN PGP SIGNATURE-
Version: GnuPG v2

iEYEARECAAYFAlV2COgACgkQ/Vb5NagElAUL4gCgoAWeazdFoUnB85HN/aQ20EYb
WRwAoI1ZsTrhAR0qlu14e2fpHoqc6y/A
=b0yI
-END PGP SIGNATURE-


___
Mailing list: 

Re: [Kicad-developers] Schematic Symbol Philosophy?

2015-06-08 Thread Adam Wolf
Hi folks!

This is just to say my original question has been answered quite a few
replies up, which was that KiCad still supports both philosophies, and the
library team is going this way.

Thanks everyone!  I'm certain there's a bunch more discussion we can do on
this, but I'm glad I got the clarification from Wayne that I did.

Adam Wolf

On Mon, Jun 8, 2015 at 11:42 AM, Andy Peters de...@latke.net wrote:


  On Jun 7, 2015, at 1:33 AM, Eldar Khayrullin eldar.khayrul...@mail.ru
 wrote:
 
  What problem is this trying to solve?

  No copy sch symbols, no copy pcb footprints,
  more ready parts with same sch symbol and footprint, but different
  pins assignment.

 I still don’t understand why you think there are problems.

 Let’s talk op-amps for the moment.

 Does your schematic library have a generic op-amp which you place on every
 design? Do you then go into the schematic and modify the symbol you placed
 so that it calls out TL072 and the correct unit, and then do you go in and
 also add the desired footprint?

 If so, for the love of G-d, WHY? That is a recipe for disaster.

 Why not just have in your library a few of your favorite op-amps:
 TL072ACD, OPA2134UA, OP275GSZ. Note the symbol names, which are the vendor
 part numbers and as such have the footprint encoded into them. And, each
 symbol has the correct footprint embedded in it.

 Do you consider this “unnecessary duplication” in that each of these dual
 op-amps has the same symbol and uses the same footprint (SOIC-8)?

 It is MUCH harder to make an expensive mistake if the symbol — the
 “component” — is “complete,” in that it has the correct pin-out which
 matches the footprint.

 Your suggestion of a components library” solves a problem which doesn’t
 actually exist.

 -a
 ___
 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

___
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] How to handle mounting holes with satellite vias?

2015-06-08 Thread Lorenzo Marcantonio
Having troubles getting an useable workflow with a common usage: the mounting
hole with satellite vias (see attachment).

Rationale: when you have a big hole for a screw and need to have plane
connectivity, a PTH supported pad is often not a good choice. Mostly because on
the wave solder machine they tend to get clogged (requiring an expensive peel
mask). There are other reason, like ground plane impedance, but manufacturing
convenience is the biggest one :P

So I did the following thing:

(module HOLE-M4-NPTH (layer F.Cu) (tedit 557548BB)
(descr Mechanical Hole, M4)
(attr virtual)
(fp_text reference HOLE-M4-NPTH (at 0 0) (layer F.Fab) 
 (effects (font (size 1.2 1.2) (thickness 0.12
(fp_text value HOLE-M4-NPTH (at 0 0) (layer F.Fab) hide 
 (effects (font (size 1.2 1.2) (thickness 0.12
(fp_circle (center 0 0) (end 5.85 0) (layer F.CrtYd) (width 0.01))
(fp_circle (center 0 0) (end 5.85 0) (layer B.CrtYd) (width 0.01))
(fp_circle (center 0 0) (end 5.5 0) (layer F.SilkS) (width 0.12))
(fp_circle (center 0 0) (end 2.2 0) (layer F.Fab) (width 0.12))
(fp_circle (center 0 0) (end 2.2 0) (layer B.Fab) (width 0.12))
(fp_circle (center 0 0) (end 2.2 0) (layer Dwgs.User) (width 0.12))
(pad  np_thru_hole circle (at 0 0) (size 4.4 4.4) (drill 4.4) (layers 
*.Cu))
(pad HOLE smd circle (at 0 0) (size 8.35 8.35) (layers *.Cu))
(pad HOLE thru_hole circle (at 3.2 0) (size 0.8 0.8) (drill 0.4) 
(layers *.Cu)
 (zone_connect 2))
(pad HOLE thru_hole circle (at -3.2 0) (size 0.8 0.8) (drill 0.4) 
(layers *.Cu)
 (zone_connect 2))
(pad HOLE thru_hole circle (at 1.6 -2.8) (size 0.8 0.8) (drill 0.4) 
(layers *.Cu)
 (zone_connect 2))
(pad HOLE thru_hole circle (at -1.6 -2.8) (size 0.8 0.8) (drill 0.4) 
(layers *.Cu)
 (zone_connect 2))
(pad HOLE thru_hole circle (at -1.6 2.8) (size 0.8 0.8) (drill 0.4) 
(layers *.Cu)
 (zone_connect 2))
(pad HOLE thru_hole circle (at 1.6 2.8) (size 0.8 0.8) (drill 0.4) 
(layers *.Cu)
 (zone_connect 2)))

I have a big SMD round pad on all layers for the support copper, an NPTH hole
for the drill tape, and common pads for the satellite vias. The
zone_connect forces solid fill, not that it would have really mattered
(since there is the big pad covering all). Less cruft in the gerbers...

Problem #1: pad snap always pick the big SMD pad and the track get
rejected because it falls into the NPTH hole; workaround: disable pad
snap and locate it by hands. Not a big issue since usually these are
tied to fills and they attach correctly.

Problem #2: the big pad and the NPTH hole are conflicting in the DRC
(quite correctly, in theory). However that's a PITA because the message
can 'obscure' more severe errors.

Any idea on how to solve this?

-- 
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] How to handle mounting holes with satellite vias?

2015-06-08 Thread Tomasz Wlostowski
On 08.06.2015 12:24, Cirilo Bernardo wrote:
 One method which comes to mind is to add yet another hole definition in
 software, and that may be the best way to address the problem; this way
 we can also ensure the correct thickness of the annulus and check the
 chosen number/size of vias.

There is another way: don't use a pad to simulate a via. Letting vias
retain their nets (or - in case of footprints - follow the connectivity
starting from pads) is IMHO a way to fix this and many other issues
(thermal via fields, etc.)

Tom
 
 - Cirilo
 
 
 On Mon, Jun 8, 2015 at 5:59 PM, Lorenzo Marcantonio
 l.marcanto...@logossrl.com mailto:l.marcanto...@logossrl.com wrote:
 
 Having troubles getting an useable workflow with a common usage: the
 mounting
 hole with satellite vias (see attachment).
 
 Rationale: when you have a big hole for a screw and need to have plane
 connectivity, a PTH supported pad is often not a good choice. Mostly
 because on
 the wave solder machine they tend to get clogged (requiring an
 expensive peel
 mask). There are other reason, like ground plane impedance, but
 manufacturing
 convenience is the biggest one :P
 
 So I did the following thing:
 
 (module HOLE-M4-NPTH (layer F.Cu) (tedit 557548BB)
 (descr Mechanical Hole, M4)
 (attr virtual)
 (fp_text reference HOLE-M4-NPTH (at 0 0) (layer F.Fab)
  (effects (font (size 1.2 1.2) (thickness 0.12
 (fp_text value HOLE-M4-NPTH (at 0 0) (layer F.Fab) hide
  (effects (font (size 1.2 1.2) (thickness 0.12
 (fp_circle (center 0 0) (end 5.85 0) (layer F.CrtYd)
 (width 0.01))
 (fp_circle (center 0 0) (end 5.85 0) (layer B.CrtYd)
 (width 0.01))
 (fp_circle (center 0 0) (end 5.5 0) (layer F.SilkS) (width
 0.12))
 (fp_circle (center 0 0) (end 2.2 0) (layer F.Fab) (width
 0.12))
 (fp_circle (center 0 0) (end 2.2 0) (layer B.Fab) (width
 0.12))
 (fp_circle (center 0 0) (end 2.2 0) (layer Dwgs.User)
 (width 0.12))
 (pad  np_thru_hole circle (at 0 0) (size 4.4 4.4) (drill
 4.4) (layers *.Cu))
 (pad HOLE smd circle (at 0 0) (size 8.35 8.35) (layers
 *.Cu))
 (pad HOLE thru_hole circle (at 3.2 0) (size 0.8 0.8)
 (drill 0.4) (layers *.Cu)
  (zone_connect 2))
 (pad HOLE thru_hole circle (at -3.2 0) (size 0.8 0.8)
 (drill 0.4) (layers *.Cu)
  (zone_connect 2))
 (pad HOLE thru_hole circle (at 1.6 -2.8) (size 0.8 0.8)
 (drill 0.4) (layers *.Cu)
  (zone_connect 2))
 (pad HOLE thru_hole circle (at -1.6 -2.8) (size 0.8 0.8)
 (drill 0.4) (layers *.Cu)
  (zone_connect 2))
 (pad HOLE thru_hole circle (at -1.6 2.8) (size 0.8 0.8)
 (drill 0.4) (layers *.Cu)
  (zone_connect 2))
 (pad HOLE thru_hole circle (at 1.6 2.8) (size 0.8 0.8)
 (drill 0.4) (layers *.Cu)
  (zone_connect 2)))
 
 I have a big SMD round pad on all layers for the support copper, an
 NPTH hole
 for the drill tape, and common pads for the satellite vias. The
 zone_connect forces solid fill, not that it would have really mattered
 (since there is the big pad covering all). Less cruft in the gerbers...
 
 Problem #1: pad snap always pick the big SMD pad and the track get
 rejected because it falls into the NPTH hole; workaround: disable pad
 snap and locate it by hands. Not a big issue since usually these are
 tied to fills and they attach correctly.
 
 Problem #2: the big pad and the NPTH hole are conflicting in the DRC
 (quite correctly, in theory). However that's a PITA because the message
 can 'obscure' more severe errors.
 
 Any idea on how to solve this?
 
 --
 Lorenzo Marcantonio
 Logos Srl
 
 ___
 Mailing list: https://launchpad.net/~kicad-developers
 Post to : kicad-developers@lists.launchpad.net
 mailto:kicad-developers@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~kicad-developers
 More help   : https://help.launchpad.net/ListHelp
 
 
 
 
 ___
 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
 


___
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] CvPcb change.

2015-06-08 Thread LordBlick

In response to a message written on 07.06.2015, 20:20, from Wayne Stambaugh:

I just committed a patch (r5718) from Dick that should greatly simplify
the process of footprint assignment using cvpcb.  This patch does away
with using the intermediate *.cmp file and directly updates the s-expr
netlist via kiway express messaging.  This means there is no more stand
alone executable of cvpcb.  This also means that you will have to use
the s-expr netlist when importing in pcbnew.  If you do not normally
back import the footprint assignments from the *.cmp file into eeschema,
you will have to do this before your run cvpcb because the s-expr
netlist will not contain the footprint assignments until you do this.
This patch will eliminate one more unnecessary step when assigning
footprints and streamline the process.  I still need to fix the save
tooltip in the cvpcb toolbar since the *.cmp file does not get saved.  I
also need to remove the read footprints from *.cmp file in the pcbnew
import netlist dialog since the *.cmp can no longer be generated by
cvpcb.  Going forward, the *.cmp file will only be useful for back
importing from pcbnew to eeschema.  At some point in the future, even
that will go away.j  Please test this and let me know if you find any
issues.
It's nice message, but sth missed… In CMakeList.txt:769 not existing target 
„cvpcb” also should be renamed to „cvpcb_kiface”.

--
Best Regards,
LordBlick

___
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] How to handle mounting holes with satellite vias?

2015-06-08 Thread Cirilo Bernardo
One method which comes to mind is to add yet another hole definition in
software, and that may be the best way to address the problem; this way we
can also ensure the correct thickness of the annulus and check the chosen
number/size of vias.

- Cirilo


On Mon, Jun 8, 2015 at 5:59 PM, Lorenzo Marcantonio 
l.marcanto...@logossrl.com wrote:

 Having troubles getting an useable workflow with a common usage: the
 mounting
 hole with satellite vias (see attachment).

 Rationale: when you have a big hole for a screw and need to have plane
 connectivity, a PTH supported pad is often not a good choice. Mostly
 because on
 the wave solder machine they tend to get clogged (requiring an expensive
 peel
 mask). There are other reason, like ground plane impedance, but
 manufacturing
 convenience is the biggest one :P

 So I did the following thing:

 (module HOLE-M4-NPTH (layer F.Cu) (tedit 557548BB)
 (descr Mechanical Hole, M4)
 (attr virtual)
 (fp_text reference HOLE-M4-NPTH (at 0 0) (layer F.Fab)
  (effects (font (size 1.2 1.2) (thickness 0.12
 (fp_text value HOLE-M4-NPTH (at 0 0) (layer F.Fab) hide
  (effects (font (size 1.2 1.2) (thickness 0.12
 (fp_circle (center 0 0) (end 5.85 0) (layer F.CrtYd) (width
 0.01))
 (fp_circle (center 0 0) (end 5.85 0) (layer B.CrtYd) (width
 0.01))
 (fp_circle (center 0 0) (end 5.5 0) (layer F.SilkS) (width 0.12))
 (fp_circle (center 0 0) (end 2.2 0) (layer F.Fab) (width 0.12))
 (fp_circle (center 0 0) (end 2.2 0) (layer B.Fab) (width 0.12))
 (fp_circle (center 0 0) (end 2.2 0) (layer Dwgs.User) (width
 0.12))
 (pad  np_thru_hole circle (at 0 0) (size 4.4 4.4) (drill 4.4)
 (layers *.Cu))
 (pad HOLE smd circle (at 0 0) (size 8.35 8.35) (layers *.Cu))
 (pad HOLE thru_hole circle (at 3.2 0) (size 0.8 0.8) (drill 0.4)
 (layers *.Cu)
  (zone_connect 2))
 (pad HOLE thru_hole circle (at -3.2 0) (size 0.8 0.8) (drill
 0.4) (layers *.Cu)
  (zone_connect 2))
 (pad HOLE thru_hole circle (at 1.6 -2.8) (size 0.8 0.8) (drill
 0.4) (layers *.Cu)
  (zone_connect 2))
 (pad HOLE thru_hole circle (at -1.6 -2.8) (size 0.8 0.8) (drill
 0.4) (layers *.Cu)
  (zone_connect 2))
 (pad HOLE thru_hole circle (at -1.6 2.8) (size 0.8 0.8) (drill
 0.4) (layers *.Cu)
  (zone_connect 2))
 (pad HOLE thru_hole circle (at 1.6 2.8) (size 0.8 0.8) (drill
 0.4) (layers *.Cu)
  (zone_connect 2)))

 I have a big SMD round pad on all layers for the support copper, an NPTH
 hole
 for the drill tape, and common pads for the satellite vias. The
 zone_connect forces solid fill, not that it would have really mattered
 (since there is the big pad covering all). Less cruft in the gerbers...

 Problem #1: pad snap always pick the big SMD pad and the track get
 rejected because it falls into the NPTH hole; workaround: disable pad
 snap and locate it by hands. Not a big issue since usually these are
 tied to fills and they attach correctly.

 Problem #2: the big pad and the NPTH hole are conflicting in the DRC
 (quite correctly, in theory). However that's a PITA because the message
 can 'obscure' more severe errors.

 Any idea on how to solve this?

 --
 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


___
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] How to handle mounting holes with satellite vias?

2015-06-08 Thread Lorenzo Marcantonio
On Mon, Jun 08, 2015 at 01:15:39PM +0200, Tomasz Wlostowski wrote:
 There is another way: don't use a pad to simulate a via. Letting vias
 retain their nets (or - in case of footprints - follow the connectivity
 starting from pads) is IMHO a way to fix this and many other issues
 (thermal via fields, etc.)

The main problem is another way: the NPTH conflicts with the main pad;
I don't really care about the vias (since they don't harm DRC)

Maybe special-casing hole in the same module could be a solution, if you
trust people do to correct modules...

-- 
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] How to handle mounting holes with satellite vias?

2015-06-08 Thread LordBlick

In response to a message written on 08.06.2015, 14:37, from Lorenzo Marcantonio:

On Mon, Jun 08, 2015 at 01:15:39PM +0200, Tomasz Wlostowski wrote:

There is another way: don't use a pad to simulate a via. Letting vias
retain their nets (or - in case of footprints - follow the connectivity
starting from pads) is IMHO a way to fix this and many other issues
(thermal via fields, etc.)


The main problem is another way: the NPTH conflicts with the main pad;
I don't really care about the vias (since they don't harm DRC)

Maybe special-casing hole in the same module could be a solution, if you
trust people do to correct modules...

IMHO, there is no any obstacles, that NPTH pads can have some net, only last 
wall is in peoples minds… ;)


--
Best Regards,
LordBlick

___
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] compile broken on clang - overload conflict

2015-06-08 Thread Chris Pavlina
Nope, using a by-reference parameter does not appease clang; no idea about MSVC.


On Mon, Jun 08, 2015 at 09:15:16AM -0400, Wayne Stambaugh wrote:
 On 6/8/2015 8:58 AM, Chris Pavlina wrote:
  It can't and it shouldn't - gcc is the one at fault here. wxString 
  provides the constructor:
  
  wxString(char ch, size_t nRepeat=1)
  
  which is the one in question, I believe, as the integer literal can also 
  represent a character.
  
  Using a reference should work too, though changing the name is a more 
  common solution (and better IMHO) particularly considering the two 
  methods do provide slightly different functions.
 
 I would think that searching a list with a string vs. an index is pretty
 self explanatory but maybe I've been doing this too long :)
 
  
  Apparently MSVC won't compile it either.
  
  On Mon, Jun 08, 2015 at 08:50:15AM -0400, Wayne Stambaugh wrote:
  Really!  Clang can't differentiate between
 
  SCH_SHEET_LIST::GetSheet(const wxString, bool);
 
  and
 
  SCH_SHEET_LIST::GetSheet(int);
 
  How can these two definitions be ambiguous?  Does using a reference to
  the wxString instead of passing the entire string on the stack fix the
  problem?  If so, I would prefer that fix.
 
  On 6/7/2015 9:17 PM, Chris Pavlina wrote:
  5720 broke the build on clang by making SCH_SHEET_LIST::GetSheet(int) a 
  const method, which changed the overload resolution order and resulted 
  in failure due to ambiguity. This patch ranames 
  SCH_SHEET_LIST::GetSheet(const wxString, bool) to ::GetSheetByPath to 
  resolve that conflict.
 
  --
  Chris
 
 
 
  ___
  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
 
 
  ___
  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
  
  ___
  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
  
 
 ___
 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

___
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] How to handle mounting holes with satellite vias?

2015-06-08 Thread Lorenzo Marcantonio
On Mon, Jun 08, 2015 at 02:57:46PM +0200, LordBlick wrote:
 IMHO, there is no any obstacles, that NPTH pads can have some net, only last
 wall is in peoples minds… ;)

There *are* issues having a net attached to an NPTH, at least last time
I checked (i.e. when they where added). pcbnew has no handling for holes
which don't connect planes, that's the biggest one :D

At the time I pondered a lot about it and I were with the 'no net to
NPTH pads' peoples.

-- 
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] compile broken on clang - overload conflict

2015-06-08 Thread Chris Pavlina
One is a search and the other is a direct access by index.

It's an academic discussion anyway - as long as the conflict is resolved 
somehow so that kicad compiling doesn't depend on a gcc quirk, I'm 
happy.


On Mon, Jun 08, 2015 at 09:15:16AM -0400, Wayne Stambaugh wrote:
 On 6/8/2015 8:58 AM, Chris Pavlina wrote:
  It can't and it shouldn't - gcc is the one at fault here. wxString 
  provides the constructor:
  
  wxString(char ch, size_t nRepeat=1)
  
  which is the one in question, I believe, as the integer literal can also 
  represent a character.
  
  Using a reference should work too, though changing the name is a more 
  common solution (and better IMHO) particularly considering the two 
  methods do provide slightly different functions.
 
 I would think that searching a list with a string vs. an index is pretty
 self explanatory but maybe I've been doing this too long :)
 
  
  Apparently MSVC won't compile it either.
  
  On Mon, Jun 08, 2015 at 08:50:15AM -0400, Wayne Stambaugh wrote:
  Really!  Clang can't differentiate between
 
  SCH_SHEET_LIST::GetSheet(const wxString, bool);
 
  and
 
  SCH_SHEET_LIST::GetSheet(int);
 
  How can these two definitions be ambiguous?  Does using a reference to
  the wxString instead of passing the entire string on the stack fix the
  problem?  If so, I would prefer that fix.
 
  On 6/7/2015 9:17 PM, Chris Pavlina wrote:
  5720 broke the build on clang by making SCH_SHEET_LIST::GetSheet(int) a 
  const method, which changed the overload resolution order and resulted 
  in failure due to ambiguity. This patch ranames 
  SCH_SHEET_LIST::GetSheet(const wxString, bool) to ::GetSheetByPath to 
  resolve that conflict.
 
  --
  Chris
 
 
 
  ___
  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
 
 
  ___
  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
  
  ___
  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
  
 
 ___
 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

___
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] How to handle mounting holes with satellite vias?

2015-06-08 Thread easyw

I use this workaround ...

I manually added net number to the NPTH drill pad (with notepad)...
please find attached the pcb module

then you can use this module inside a library (import without editing 
and save lib) and it is possible to wire tracks and there is no DRC 
violations...


maybe to solve this prob in a clean way it could be nice to add the 
option to have pin nbr also for NPTH drill pad...


Regards
Maurice

On 08/06/2015 14.37, Lorenzo Marcantonio wrote:

On Mon, Jun 08, 2015 at 01:15:39PM +0200, Tomasz Wlostowski wrote:

There is another way: don't use a pad to simulate a via. Letting vias
retain their nets (or - in case of footprints - follow the connectivity
starting from pads) is IMHO a way to fix this and many other issues
(thermal via fields, etc.)

The main problem is another way: the NPTH conflicts with the main pad;
I don't really care about the vias (since they don't harm DRC)

Maybe special-casing hole in the same module could be a solution, if you
trust people do to correct modules...



(module a_ANCHORS:1pinD35-NPTH-drilled (layer F.Cu) (tedit 55758F44)
  (fp_text reference J*** (at 0 -4.699) (layer F.SilkS) hide
(effects (font (size 1.00076 1.00076) (thickness 0.2032)))
  )
  (fp_text value anchor (at 0 4.953) (layer F.SilkS) hide
(effects (font (size 1.00076 1.00076) (thickness 0.2032)))
  )
  (fp_circle (center 0 0) (end 0 1.6764) (layer B.SilkS) (width 0.16))
  (fp_circle (center 0 0) (end -0.0254 1.6764) (layer F.SilkS) (width 0.16))
  (fp_circle (center 0 0) (end 0 3.556) (layer B.SilkS) (width 0.16))
  (fp_circle (center 0 0) (end 0 3.556) (layer F.SilkS) (width 0.16))
  (pad 1 thru_hole circle (at 0 -2.2606) (size 0.6 0.6) (drill 0.381) (layers 
*.Cu *.Mask))
  (pad 1 thru_hole circle (at -2.2606 0) (size 0.6 0.6) (drill 0.381) (layers 
*.Cu *.Mask))
  (pad 1 thru_hole circle (at 0 2.2606) (size 0.6 0.6) (drill 0.381) (layers 
*.Cu *.Mask))
  (pad 1 thru_hole circle (at 2.2606 0) (size 0.6 0.6) (drill 0.381) (layers 
*.Cu *.Mask))
  (pad 1 thru_hole circle (at 1.6002 -1.6002) (size 0.6 0.6) (drill 0.381) 
(layers *.Cu *.Mask))
  (pad 1 thru_hole circle (at -1.6002 -1.6002) (size 0.6 0.6) (drill 0.381) 
(layers *.Cu *.Mask))
  (pad 1 thru_hole circle (at -1.6002 1.6002) (size 0.6 0.6) (drill 0.381) 
(layers *.Cu *.Mask))
  (pad 1 thru_hole circle (at 1.6002 1.6002) (size 0.6 0.6) (drill 0.381) 
(layers *.Cu *.Mask))
  (pad 1 np_thru_hole circle (at 0 0) (size 3.5 3.5) (drill 3.5) (layers *.Cu 
*.Mask F.SilkS))
  (pad 1 smd circle (at 0 0) (size 5.6 5.6) (layers F.Cu F.SilkS F.Mask))
  (pad 1 smd circle (at 0 0) (size 5.6 5.6) (layers B.Cu B.SilkS B.Mask))
)
___
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] compile broken on clang - overload conflict

2015-06-08 Thread Chris Pavlina
It can't and it shouldn't - gcc is the one at fault here. wxString 
provides the constructor:

wxString(char ch, size_t nRepeat=1)

which is the one in question, I believe, as the integer literal can also 
represent a character.

Using a reference should work too, though changing the name is a more 
common solution (and better IMHO) particularly considering the two 
methods do provide slightly different functions.

Apparently MSVC won't compile it either.

On Mon, Jun 08, 2015 at 08:50:15AM -0400, Wayne Stambaugh wrote:
 Really!  Clang can't differentiate between
 
 SCH_SHEET_LIST::GetSheet(const wxString, bool);
 
 and
 
 SCH_SHEET_LIST::GetSheet(int);
 
 How can these two definitions be ambiguous?  Does using a reference to
 the wxString instead of passing the entire string on the stack fix the
 problem?  If so, I would prefer that fix.
 
 On 6/7/2015 9:17 PM, Chris Pavlina wrote:
  5720 broke the build on clang by making SCH_SHEET_LIST::GetSheet(int) a 
  const method, which changed the overload resolution order and resulted 
  in failure due to ambiguity. This patch ranames 
  SCH_SHEET_LIST::GetSheet(const wxString, bool) to ::GetSheetByPath to 
  resolve that conflict.
  
  --
  Chris
  
  
  
  ___
  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
  
 
 ___
 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

___
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] Hide pin targets when properly connected

2015-06-08 Thread Chris Pavlina
Also keep in mind that the standard is pay-to-access. That's not fit for 
an open-source project. I rather suspect it would be frowned upon if we 
were to buy a copy and then put it into the documentation for all to 
access - and if we don't, how can we follow it?

Forget the damn standard. Make our own, if need be.

On Mon, Jun 08, 2015 at 08:58:50AM -0400, Wayne Stambaugh wrote:
 Let's not get too hung up on EN60617-3.  I really don't care if KiCad is
 compliant to some standard other than exporting to third party file
 formats.  What I do care about is the user experience.  If the goal is
 to make it obvious to the user (IMO a good thing) that a schematic
 connection is or is not made, then I would rather do what makes the best
 user experience rather than follow some standard generated by government
 body and/or committee.
 
 On 6/8/2015 8:25 AM, Chris Pavlina wrote:
  60617-3 allows a dotless junction (as in 03-02-06), but the same 
  connection can be represented with two 03-02-05; it is not a violation of 
  the standard to always use dots.
  
  On Mon, Jun 08, 2015 at 08:48:12AM +0300, Vesa Solonen wrote:
  08/06/15, 00:44, Wayne Stambaugh kirjoitti:
  One thing I did notice is that bus entries do not draw the connection
  point so they cannot show their connection status.  It would be nice if
  bus entries exhibited the same behavior.  I'm not sure how much work
  would be involved.  I'm surprised I never noticed that before or AFAIR
  no one has every said anything about it.
 
  Are you guys aware that to support both options in EN 60617-3 (1997)
  [symbols 03-02-04 to 03-02-07] the connection point must only be drawn
  when the connection is in crossing or identical branching [symbol
  03-02-09] wires/buses? Otherwise it should be an user configurable option.
 
  Maybe Kicad could use the same end-centered ring hint for all open
  connections in addition to pins, also while drawing wires and buses.
 
  -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
  
  ___
  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
  
 
 ___
 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

___
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] Hide pin targets when properly connected

2015-06-08 Thread Chris Pavlina
60617-3 allows a dotless junction (as in 03-02-06), but the same 
connection can be represented with two 03-02-05; it is not a violation of 
the standard to always use dots.

On Mon, Jun 08, 2015 at 08:48:12AM +0300, Vesa Solonen wrote:
 08/06/15, 00:44, Wayne Stambaugh kirjoitti:
  One thing I did notice is that bus entries do not draw the connection
  point so they cannot show their connection status.  It would be nice if
  bus entries exhibited the same behavior.  I'm not sure how much work
  would be involved.  I'm surprised I never noticed that before or AFAIR
  no one has every said anything about it.
 
 Are you guys aware that to support both options in EN 60617-3 (1997)
 [symbols 03-02-04 to 03-02-07] the connection point must only be drawn
 when the connection is in crossing or identical branching [symbol
 03-02-09] wires/buses? Otherwise it should be an user configurable option.
 
 Maybe Kicad could use the same end-centered ring hint for all open
 connections in addition to pins, also while drawing wires and buses.
 
 -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

___
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] compile broken on clang - overload conflict

2015-06-08 Thread Wayne Stambaugh
Really!  Clang can't differentiate between

SCH_SHEET_LIST::GetSheet(const wxString, bool);

and

SCH_SHEET_LIST::GetSheet(int);

How can these two definitions be ambiguous?  Does using a reference to
the wxString instead of passing the entire string on the stack fix the
problem?  If so, I would prefer that fix.

On 6/7/2015 9:17 PM, Chris Pavlina wrote:
 5720 broke the build on clang by making SCH_SHEET_LIST::GetSheet(int) a 
 const method, which changed the overload resolution order and resulted 
 in failure due to ambiguity. This patch ranames 
 SCH_SHEET_LIST::GetSheet(const wxString, bool) to ::GetSheetByPath to 
 resolve that conflict.
 
 --
 Chris
 
 
 
 ___
 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
 

___
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] compile broken on clang - overload conflict

2015-06-08 Thread Wayne Stambaugh
On 6/8/2015 8:58 AM, Chris Pavlina wrote:
 It can't and it shouldn't - gcc is the one at fault here. wxString 
 provides the constructor:
 
 wxString(char ch, size_t nRepeat=1)
 
 which is the one in question, I believe, as the integer literal can also 
 represent a character.
 
 Using a reference should work too, though changing the name is a more 
 common solution (and better IMHO) particularly considering the two 
 methods do provide slightly different functions.

I would think that searching a list with a string vs. an index is pretty
self explanatory but maybe I've been doing this too long :)

 
 Apparently MSVC won't compile it either.
 
 On Mon, Jun 08, 2015 at 08:50:15AM -0400, Wayne Stambaugh wrote:
 Really!  Clang can't differentiate between

 SCH_SHEET_LIST::GetSheet(const wxString, bool);

 and

 SCH_SHEET_LIST::GetSheet(int);

 How can these two definitions be ambiguous?  Does using a reference to
 the wxString instead of passing the entire string on the stack fix the
 problem?  If so, I would prefer that fix.

 On 6/7/2015 9:17 PM, Chris Pavlina wrote:
 5720 broke the build on clang by making SCH_SHEET_LIST::GetSheet(int) a 
 const method, which changed the overload resolution order and resulted 
 in failure due to ambiguity. This patch ranames 
 SCH_SHEET_LIST::GetSheet(const wxString, bool) to ::GetSheetByPath to 
 resolve that conflict.

 --
 Chris



 ___
 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


 ___
 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
 
 ___
 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
 

___
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] Hide pin targets when properly connected

2015-06-08 Thread Wayne Stambaugh
Let's not get too hung up on EN60617-3.  I really don't care if KiCad is
compliant to some standard other than exporting to third party file
formats.  What I do care about is the user experience.  If the goal is
to make it obvious to the user (IMO a good thing) that a schematic
connection is or is not made, then I would rather do what makes the best
user experience rather than follow some standard generated by government
body and/or committee.

On 6/8/2015 8:25 AM, Chris Pavlina wrote:
 60617-3 allows a dotless junction (as in 03-02-06), but the same 
 connection can be represented with two 03-02-05; it is not a violation of 
 the standard to always use dots.
 
 On Mon, Jun 08, 2015 at 08:48:12AM +0300, Vesa Solonen wrote:
 08/06/15, 00:44, Wayne Stambaugh kirjoitti:
 One thing I did notice is that bus entries do not draw the connection
 point so they cannot show their connection status.  It would be nice if
 bus entries exhibited the same behavior.  I'm not sure how much work
 would be involved.  I'm surprised I never noticed that before or AFAIR
 no one has every said anything about it.

 Are you guys aware that to support both options in EN 60617-3 (1997)
 [symbols 03-02-04 to 03-02-07] the connection point must only be drawn
 when the connection is in crossing or identical branching [symbol
 03-02-09] wires/buses? Otherwise it should be an user configurable option.

 Maybe Kicad could use the same end-centered ring hint for all open
 connections in addition to pins, also while drawing wires and buses.

 -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
 
 ___
 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
 

___
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] Hide pin targets when properly connected

2015-06-08 Thread Chris Pavlina
Yes, but we are not a small group, we are everybody who can 
contribute.  How can an open source project implement/follow a standard 
when it can't make that standard available to its contributors?

On Mon, Jun 08, 2015 at 05:34:46PM +0300, Vesa Solonen wrote:

 I generally agree with both of you, but if Kicad wants to be a serious
 tool for documentation it has to support EN60617 pretty well.
 
 No company can use it for official documentation and certainly some one
 guy design offices will lose bids if they can not fullfill customer
 requirement of EN60617 compliant schematics...
 
 It certainly will be frowned upon if we copied the standard, but making
 a component library or software functionality according to one is
 certainly not copying, but implementing the standard.
 
 I havent read the fine print regarding implementation fee, but somehow I
 suspect every screw made to DIN913 has to pay either.
 
 -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

___
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] Hide pin targets when properly connected

2015-06-08 Thread Vesa Solonen
08/06/15, 17:54, Chris Pavlina kirjoitti:
 Yes, but we are not a small group, we are everybody who can 
 contribute.  How can an open source project implement/follow a standard 
 when it can't make that standard available to its contributors?
 
 On Mon, Jun 08, 2015 at 05:34:46PM +0300, Vesa Solonen wrote:

 I generally agree with both of you, but if Kicad wants to be a serious
 tool for documentation it has to support EN60617 pretty well.

 No company can use it for official documentation and certainly some one
 guy design offices will lose bids if they can not fullfill customer
 requirement of EN60617 compliant schematics...

 It certainly will be frowned upon if we copied the standard, but making
 a component library or software functionality according to one is
 certainly not copying, but implementing the standard.

 I havent read the fine print regarding implementation fee, but somehow I
 suspect every screw made to DIN913 has to pay either.

 -Vesa

I don't have an ideal solution to this. The whole industry section
mindset has to change to make it.

Last time we did something similar went somewhat as follows. The ones
who had the access to the standard described the contents in their own
words for the exact parts needed. The gaps were filled from various
sources and the implementation of details from the ones who had the
standard.

Regarding availability I would suggest visiting some technical
university library and ask from there. Here in Finland standards are
available for reading at the spot, but not for loan.

Somewhat annopying to go there sitting with a laptop for a day, but at
least possible.

-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] [PATCH] Hide pin targets when properly connected

2015-06-08 Thread Vesa Solonen
08/06/15, 16:06, Chris Pavlina kirjoitti:
 Also keep in mind that the standard is pay-to-access. That's not fit for 
 an open-source project. I rather suspect it would be frowned upon if we 
 were to buy a copy and then put it into the documentation for all to 
 access - and if we don't, how can we follow it?
 
 Forget the damn standard. Make our own, if need be.
 
 On Mon, Jun 08, 2015 at 08:58:50AM -0400, Wayne Stambaugh wrote:
 Let's not get too hung up on EN60617-3.  I really don't care if KiCad is
 compliant to some standard other than exporting to third party file
 formats.  What I do care about is the user experience.  If the goal is
 to make it obvious to the user (IMO a good thing) that a schematic
 connection is or is not made, then I would rather do what makes the best
 user experience rather than follow some standard generated by government
 body and/or committee.

 On 6/8/2015 8:25 AM, Chris Pavlina wrote:
 60617-3 allows a dotless junction (as in 03-02-06), but the same 
 connection can be represented with two 03-02-05; it is not a violation of 
 the standard to always use dots.

I generally agree with both of you, but if Kicad wants to be a serious
tool for documentation it has to support EN60617 pretty well.

No company can use it for official documentation and certainly some one
guy design offices will lose bids if they can not fullfill customer
requirement of EN60617 compliant schematics...

It certainly will be frowned upon if we copied the standard, but making
a component library or software functionality according to one is
certainly not copying, but implementing the standard.

I havent read the fine print regarding implementation fee, but somehow I
suspect every screw made to DIN913 has to pay either.

-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] [PATCH] compile broken on clang - overload conflict

2015-06-08 Thread Wayne Stambaugh
GCC was still generating a warning using the reference as well so I
applied your patch in r5722.

Thanks,

Wayne

On 6/8/2015 10:08 AM, Chris Pavlina wrote:
 Nope, using a by-reference parameter does not appease clang; no idea about 
 MSVC.
 
 
 On Mon, Jun 08, 2015 at 09:15:16AM -0400, Wayne Stambaugh wrote:
 On 6/8/2015 8:58 AM, Chris Pavlina wrote:
 It can't and it shouldn't - gcc is the one at fault here. wxString 
 provides the constructor:

 wxString(char ch, size_t nRepeat=1)

 which is the one in question, I believe, as the integer literal can also 
 represent a character.

 Using a reference should work too, though changing the name is a more 
 common solution (and better IMHO) particularly considering the two 
 methods do provide slightly different functions.

 I would think that searching a list with a string vs. an index is pretty
 self explanatory but maybe I've been doing this too long :)


 Apparently MSVC won't compile it either.

 On Mon, Jun 08, 2015 at 08:50:15AM -0400, Wayne Stambaugh wrote:
 Really!  Clang can't differentiate between

 SCH_SHEET_LIST::GetSheet(const wxString, bool);

 and

 SCH_SHEET_LIST::GetSheet(int);

 How can these two definitions be ambiguous?  Does using a reference to
 the wxString instead of passing the entire string on the stack fix the
 problem?  If so, I would prefer that fix.

 On 6/7/2015 9:17 PM, Chris Pavlina wrote:
 5720 broke the build on clang by making SCH_SHEET_LIST::GetSheet(int) a 
 const method, which changed the overload resolution order and resulted 
 in failure due to ambiguity. This patch ranames 
 SCH_SHEET_LIST::GetSheet(const wxString, bool) to ::GetSheetByPath to 
 resolve that conflict.

 --
 Chris



 ___
 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


 ___
 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

 ___
 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


 ___
 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
 
 ___
 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
 

___
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] 3D model generation.

2015-06-08 Thread Wayne Stambaugh
Does anyone have a parametric 3D model generator script for two pin J
lead components like SMD tantalum caps or SMD DO diode packages?  I'm
using some of the large SMD wire wound resistor packages (2515, 4527,
etc.) in some of my designs and I was hoping there would be an easier
way to create them rather than using Wings3D.

Thanks,

Wayne

___
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] 3D model generation.

2015-06-08 Thread Vesa Solonen
08/06/15, 18:55, Wayne Stambaugh kirjoitti:
 Does anyone have a parametric 3D model generator script for two pin J
 lead components like SMD tantalum caps or SMD DO diode packages?  I'm
 using some of the large SMD wire wound resistor packages (2515, 4527,
 etc.) in some of my designs and I was hoping there would be an easier
 way to create them rather than using Wings3D.

Pretty close, but for old library format and Perl:

http://bazaar.launchpad.net/~oyvind-aabling/kicad-newlib/mod/files

-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] Schematic Symbol Philosophy?

2015-06-08 Thread Andy Peters

 On Jun 7, 2015, at 1:33 AM, Eldar Khayrullin eldar.khayrul...@mail.ru wrote:
 
 What problem is this trying to solve?

 No copy sch symbols, no copy pcb footprints, 
 more ready parts with same sch symbol and footprint, but different
 pins assignment.

I still don’t understand why you think there are problems.

Let’s talk op-amps for the moment.

Does your schematic library have a generic op-amp which you place on every 
design? Do you then go into the schematic and modify the symbol you placed so 
that it calls out TL072 and the correct unit, and then do you go in and also 
add the desired footprint?

If so, for the love of G-d, WHY? That is a recipe for disaster.

Why not just have in your library a few of your favorite op-amps: TL072ACD, 
OPA2134UA, OP275GSZ. Note the symbol names, which are the vendor part numbers 
and as such have the footprint encoded into them. And, each symbol has the 
correct footprint embedded in it. 

Do you consider this “unnecessary duplication” in that each of these dual 
op-amps has the same symbol and uses the same footprint (SOIC-8)?

It is MUCH harder to make an expensive mistake if the symbol — the “component” 
— is “complete,” in that it has the correct pin-out which matches the footprint.

Your suggestion of a components library” solves a problem which doesn’t 
actually exist.

-a
___
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