Headings:
All the components used in a schematic are described in the component libraries.
In order to be able to have a reasonably simple management of these components, several libraries are used, grouping components by topic (by functions, or manufacturers.).
The Library management menu allows you to create libraries, add, delete or transfer components.
It also naturally allows you to quickly visualize the components of a library.
There are two library management menus :
ViewLib which
allows you only to visualize the components, but gives quick access
to the components.
Click on
.
LibEdit
which really allows you to manage the components and
libraries.
Click on
.
A component in a library is composed of :
Its graphic design (lines, circles, text fields).
Pins which, (which must respect the usual graphic standards (regular pin, or clock pin, or inverted, or low level active…)) describe electrical properties, used by E.R.C. function.
Fields (text) such as reference, value, corresponding module name for PCB design…
It can also have an alias, i.e. several names (thus one 7400 can also have several alias like 74LS00, 74HC00, 7437, because all these components are identical to the schematic diagram design).
The use of aliases is a very interesting method of creating complete but compact and (relatively) quickly built libraries.
Designing a component is:
Defining general properties: does it have multi-parts, and how many, does it have a double representation (known as Morgan, and in EESchema normal and converted representation).
Designing it ( pins excepted) using lines, rectangles, circles, polygons and texts.
Adding pins, carefully defining its graphic design, name and the number of pins, and their electrical properties (input, output, 3 states, power port…).
Adding an alias if other components have the same design and pinout (or removing one if the component has been created by copying of another component).
Adding fields if desired ( it is optional, the name of the module is used by the PCB design software) and/or defining their visibility.
Documenting the component.
Saving it in the desired library.
Click
on the tool
to open Libedit, the
component editing and library management window .
Libedit looks as shown below :
|
Save current library on hard disc |
|
Current library selection |
|
Delete a component in current library |
|
Create a new component |
|
Load component from current library for editing |
|
|
|
Import one component. |
|
Export the current component. |
|
Create a new library file with the current component. |
|
Edit the component properties. |
|
Show the representation: Normal or converted (De Morgan) |
|
Show the associated documentation (if exists) |
|
Part selection (for multi part components) |
|
Alias selection (if the current components has aliases) |
|
Pin editing: independant editing for pin shape and position (for multi parts and De Morgan representation) |
The
selection of the current library is possible by the icon
,
which displays for selection the list of the available libraries.
When a component is loaded or saved, it will remain it in this library.
The library name of a component is also its field « Value ».
Note:
You have to load a library in Eeschema, in order to use it.
The current library can
be saved after modification, by clicking
.
A
component can be removed from the library by clicking
.
When a component is edited, you don't really work on the component in library, but on its copy in RAM.
Thus you can easily cancel any editing.
A component may come from a library, or from an old component.
Once loaded, it will be displayed.
The
icon
displays the list of the available components, to select and load
the desired component.
Notice 1:
If a component alias is selected, the main component will be loaded (EESchema always displays the name of the component really loaded).
The list of component aliases is always loaded with each component, and can thus be edited.
When
you want to edit one alias,
this alias must be selected in the toolbar window :
The
first item of the list is the root component.
Notice 2:
Alternatively,
the Import command ()
allows you to load a component which has been previously saved by
the Export command (
).
After modification, a component can be saved in the current library, or in a new library, or exported in a backup file.
To save in current
library, use the Update command ().
However the update is done only in RAM (By this way, you can make up your mind in the schematic diagram.
If one wants to
completely save the component, you have to use the save tool
which will modify the library file on hard disc.
If you want to create a
new library for this component, use the NewLib command ().
You will be asked for a new library name.
Note:
If you want to be able to find it, don't forget to add it to the list of libraries to be searched by EESchema (see EESchema configuration).
Finally, one can use the
Export command ()
to create a file containing only this component (this file is a
standard library file, which contains only one component).
In fact the NewLib and Export commands are identical, the first proposes by default to create a library in the default library directory, and the second in the user directory.
One can very easily copy a component from a source library into a destination library using the following commands:
Select the source
library as current library
.
Load the component to be
transferred
.
Select the destination
library as the current library
.
Save the component in
RAM
.
Save
the modified library.
The edited component is only a working copy of the component really in the library. As long as it hasn't been saved to RAM, you just have to reload it (or to reload another library) to cancel the changes made to this component.
If you have already saved it in RAM, and you haven't saved the library file to hard disc, one can quit and start EESchema again, and then read from the library again.
A
new component can be created with the NewPart command ().
You will be asked for a component name to load it in the library (this name is also the field value for Libedit and used as default value for the field « Value » in schematic editor), the reference (U, IC, R…), the number of parts per package (for example a standard component 7400 A 4 parts per package) and if a converted representation exists (de Morgan as standard).
If the field reference is left empty, the reference will default to “U”.
All this data can be set later, but it is preferable to set it at the beginning of component design.
The beginnings of a component look like this :
When a component strongly looks like another, it is often profitable to load this other component, and to modify it.
Then you have to :
Load the component which will be used as a model.
Modify its name (edit
command
and chage the field « Value », or right click
on the name and edit the text « Value »).
Modify the list of
aliases, and remove all undesired aliases.You probably will have to
remove them all (tool
,
panel Alias, Delete or Delete All command)
because any alias of the used component would then be assigned to
the new component.
The main characteristics are:
The number of parts per package.
The presence of a converted representation.
Associated documentation.
The update of various fields.
These characteristics should be correct, because they are requested during the component creation, or they come from the model component.
So, however they are
modified, it is necessary to call the edit command
.
The editing window then appears as follows:
The important options that define the general properties are:
Number off Units to define the number of parts per package.
As Convert : check if the component has a double representation.
It is important that these two parameters are correctly set, because when pins are edited or created, the corresponding pins of all the parts will be published or created together.
If you increase the number of parts after pin creation/editing, there will be additional work introduced by this increase.
Nevertheless, it is possible to modify these parameters at any moment.
Graphic options:
- Show Pin Num and
- Show Pin Name
defines the visibility of the pin number and pin name text (these texts will be visible if the corresponding options are active).
The option :
- Pin Inside
defines the pin name position : this text will be displayed inside the component outline if the option is active).
In this case the Pin Name Skew parameter defines the shift of the text towards the interior.
A value from 30 to 40 (in 1/1000 inch) is reasonable.
The example below shows the same component, with the Pin Inside option unchecked (notice the position of the names and pin numbers):
During the editing of component elements, and if the component has multiple parts or representations, you will have to select the different parts or representations of this component.
For the representation
selection click on
or
.
For the part selection
The vertical toolbar allows you to place all the elements of a component :
|
The pins and the fields (value, reference) are treated differently, because they are not pure graphic elements. |
Each graphic element can be defined as ordinary or specific, either to a type of representation (Normal or converted), or to the different parts of a component.
The options menu is accessible by a right click on the concerned element (here a line) :
or by a double-click on this element:
The normal options of a graphic element are:
- Common to Units checked, because generally the different parts of a component have the same graphic representation, and it is thus enough to draw one part only.
- Common to convert unchecked, because a double representation is introduced, to have a different graphic representation with each kind of representation.
It will then be neccesary to draw each graphic representation.
For the elements of the type “polygon” (lines successively traced) the Filled option allow you to generate a filled polygon.
However, you can thus treat the case (fortunately rare) multi-parts components, designed with different graphic types, by checking the option “Parts Specific”.
Each part will then have to be drawn, and if the option “Specific to the representations” is checked, for each part it will be necessary to draw the two representations.
Finally it can be interesting to check the option “Common to representations” for the components drawn with the modern IEEE standard, since the graphics essentials are identical in the normal and converted representations.
Their design is possible thanks to the tools :
Lines and polygons, simple or Filled if option is checked.
Rectangles defined by a diagonal.
Circles defined by the center and a point of the circumference.
Arcs defined by the starting and ending point of the arc and its center. An arc goes from 0 to 180 degrees.
Allows
the creation of graphic text ( free text ).
The text is always readable, even if the component is mirrorred.
Click
on
to create a pin.
The editing is done whilst double-clicking on the pin. You can right-click to open the fast editing menu :
Pins must be created carefully, because any error will have consequences for the PCB design, or will make E.R.C function inefficient.
Any pin already placed can be re-edited, erased or moved.
A pin is defined by its form (length, graphic aspect), its name and its “number” which is not always a number ( PGA socket pins are defined by a letter and a number, like A12 or AB45)
In EEschema, the “ pin number” is defined by a set of 4 letters or numbers.
For E.R.C. controls, the “electric” type (input, output, 3states…) must also be defined.
If this type isn't well defined, E.R.C control will be inefficient.
Note:
Avoid spaces in the pin names and numbers.
An pin name with an inverted signal begins with the symbol “~”.
If the name is reduced to this single symbol, the pin is regarded as unnamed.
Pin names starting with “#”, are reserved for power port symbols.
A pin number consists of 1 to 4 letters or numbers. 1,2,..9999 are valid numbers, but also A1, B3… (standard PGA notation) or Anod, Gnd, Wine…
Let us recall that, particularly for logic gates, a symbol can have two representations (representation known as “De Morgan”, and an IC can include several parts (e.g. several NOR gates)
For certain IC's, you may desire several different elements of graphics and pins.
For example a relay can be represented with different elements:
- Coil
- switch contact 1
- switch contact 2
The management of the multi-part IC's, and the components with double representation is flexible.
Indeed, a pin can be:
- Common or specific to different parts.
- Common run to both representation or specific to each representation.
By default, pins are specific to each representation of each part, because their number differs for each part, and their design is different for each representation.
When a pin is common you just have to draw it once (e.g. in the case of power pins)
It is also the case of the design which is almost always identical for every part (but differs between the normal and the converted representation).
The components with multiple parts and/or representations pose a particular problem for pin creation and editing.
Insofar as the majority of the pins are specific to each part (because their pin number is specific to each part) and to each representation (because their form is specific to each representation), the creation and the edition of the pins would thus be likely to be long and tiresome.
In fact, EESchema allows the simultaneous handling of the pins :
By default, for the multi-part components and/or double representations, these modifications are made for all the pins corresponding to the parts and the representations when you create, edit (except form, and number) delete or move a pin, (i.e. for all the pins placed at the same co-ordinate).
- For the design, the modifications made for the current representation, are for all parts.
- The pin numbers are modified for the current part, for the 2 representations.
- The names are modified independently.
This dependence was established to allow fast modifications in most of the cases.
This dependence in the modifications can be disabled in the Options Menu, allowing you to create components with parts and representations of completely independent characteristics.
This dependence option is managed by the tool
If
is not activated (not highlighted): the edits will apply to
all parts and to all representations. This
is the normal option.
If
is
activated (highlighted) : the edits will apply only to the
current part and in the current representation (i.e. on what you see
on the screen). This option is rarely
used.
The pin properties window allows you to edit a pin's characteristics.
This menu pops up automatically as you create a pin, or while you doubleclick on an existing pin.
It allows you to define or modify:
The name and name's size of a pin.
The number and size of a pin number.
Pin length.
Electrical type and design.
Its membership (common to normal and "Morgan" representation or not)
Invisible pin (used for power pins).
Recall:
The pin name begins with a “~”, for inverted signals.
If the name is reduced to this character only, the pin is regarded as without name.
The pin number consists
of 1 to 4 characters (letters or digits).
- 1,2..9999 are
thus valid numbers, but also A1, B3… (standard
notation PGA) or Anod, Gnd, Wine…
You can see on the figure below different pin shapes :
The choice of the form has a purely graphic influence, and does not have any influence on the E.R.C or netlist functions.
The choice of the type is important, for E.R.C. function.
The choice is commonplace for input and output pins of IC's.
The BiDi type indicates bidirectional pins commutable between input and output ( microprocessors data bus for example).
The type 3 States is the usual 3 states output.
The Passive type is used for passive component pins, resistors, connectors….
The Unspec type (unspecified) can be used when E.R.C. check doesn't matter.
The Power In type is to be used for the components power pins.
Power Out is for
regulator ouputs.
In particular if the pin is a power port (
Power In or Out, and is declared as "Invisible", it
is not displayed in schematic diagram, and it is automatically
connected to the other pins of the same type and same name (
Invisible Power Pin).
You can use Open Emitter and Open Collector types too.
One can modify the length of all the pins, or the text sizes (name, part number), using the Global command of the Pop Up menu to set one of these three parameters.
To click on the parameter you want to modify and type the new value, which will then apply to all component pins, for the current representation.
Various parts or representation (such as met in a 7400, 7402…) can need a complementary edition.
This complementary work will be limited if the following precautions are taken:
General option Edit
pin part per part
must remain unchecked.
The power pins will be created with the attribute CommonUnit and CommonConvert active (They can be also invisible (No Draw) ).
The correct setup is like this:
When the other pins have been created, they have been created for each part and each representation.
For example the output pin of part A of a 7400 will have been created by EESchema in 8 specimens: 2 per part (there are 4 parts A, B, C, D and for each part, the normal representation, and the converted representation known as of Morgan.)
However will have, at the beginning, probably correctly created the part A in its normal representation.
It will thus be necessary for each part :
To select the converted representation, and to edit the form and the length of each pin.
For the other parts, to edit the pin numbers.
For the already existing fields, you can use the fast editing commands with a right-click :
For more complete editing or empty fields, it is necessary to call the editing window of the component properties :
The folder Reference is selected here.
The fields are texts associated to the component, not to be confused with the texts belonging to the graphic represention of this component.
These fields are available :
Value
Reference
Field 1 to 8 ( for comments )
Name of the associated module (footprint for the PCB)
Name of the associated diagram (for the components displayed themselves by a schematic diagram in certain hierarchies).
The value and reference fields are defined during the component creation, and can be modified here.
It can possibly be useful to edit the Name field of the associated module to directly generate netlists (for the PCB software ) including the module (footprint) name.
The Name field of the associated diagram is of particular use for some other electronic CAD software.
Fields 1 to 8 haven't any reason to be used in the library, because they are rather to be used in the schematic design.
For the library, the edition of the Value and Reference fields allows the definition of their size and position.
Important remarks :
Modifying the text of the value field, equals to create a new component, starting from an old one used as a model, because this new component has the name contained in the value field when you save it in the library.
To edit an invisible field (i.e. empty, because even if the field has the Invisible attribute, it is displayed in LibEdit) you will have to use the general edition window above.
The power port symbols are created just like usual components.
It may be usefull to gather them in a dedicated library such as Power.lib.
They consist in a graphic symbol (the desired form) and in a pin of the type “Power Invisible”.
They will thus be handled like any other component in the schematic capture software.
However, some precautions are essential.
Here a symbol (power + 5V) :
The symbol is carried out in the following way :
A pin “Invisible Power” named + 5V (important because this name will establish connection to the net + 5V), of pin number 1 (number of no importance) and null length.
The shape is of the type “Line”, and obviously the type is “Power” and the attribute is “Invisible”.
A graphics : here a small circle and a segment from the pin to the circle.
The anchor of the symbol is on the pin.
The value is + 5V like the pin name, to display the value of this symbol (the pin being invisible by default, its name does not appear ).
IThe reference is # + 5V (thus displayed # + 5V) like the pin name.The reference text has no importance except the first character which must be “#”. By convention, every component whose reference starts with this symbol will appear neither in the components list, nor in the netlists. Moreover, in Option of symbol, the reference is declared invisible.
The creation of a new power port symbol is easy and fast if you use another symbol as model.
You just have to :
Load the model.
Edit the pin name (which then takes the name of new power port).
Edit the field Value (same name as the pin, if you want to dispaly the power port value…).
Save the new component.