HOW TO MAKE ALMOST ANYTHING, help pages, 2002
<< back to topics page
 

Making a new Schematic/PCB Part in Protel '99
by David Merrill

Q: What do I do if I want to use a part in my circuit that protel doesn't have in any of its libraries?

A: Make your own Schematic Library, and PCB Library documents for it, include your .ddb file in the list of libraries, then you can use it!

The situation came up because I wanted to make a circuit including the solenoid driver that I used for microcontroller week/ (see http://web.media.mit.edu/~dmerrill/mas863/micro.html, in the "Technical Details" section). I knew the following about it:

Part name: DRV101
Number of pins: 7
Usage of each pin: specified in the datasheet
Pin footprint: specified in the datasheet

So, first I made a schematic library for this part, so that I could use it in the schematic file I'm building. With my document open, I did the following:

  1. File -> New -> Schematic Library Document
  2. Tools -> New Component
  3. Gave it a name (DRV101)
  4. Make sure the "Drawing Toolbar" is present (find it in View -> Toolbars, if not)
  5. Draw the yellow box that will be the body of the part (the PlaceRectangle tool from the drawing toolbar)
  6. Draw the 7 pins (the PlacePin tool from the toolbar)
    • make sure that the pins are in the proper orientation - the "knob" should be away from the body of the part, since that end connects to the rest of the circuit. Press space to rotate
  7. Change the Name/Number of each pin to match the actual part characteristics (double-click the pin to get the dialog up)
    • For instance, I made the following changes to the first pin I placed:

      Name: 0 -> Input
      Number: 0 -> 1

    • and so forth for the rest of the pins
  8. Over in the group menu on the lefthand side of the screen, click "Description" and specify the:
    • Default Designator: U? (the U is because it's an IC I think)
    • Default Footprint (or Sheet Part Filename): TO220-7 (because the datasheet describes this thing as a 7-lead TO-220)
  9. Click the save button!

Now, I want to have the appropriate footprint so that I'll be able to lay out my PCB.

  1. File -> New -> PCB Library Document
  2. Tools -> New Component (you'll be welcomed to the PCB component wizard)
  3. For the component pattern I chose DIP, because it gave me something close to what I wanted (i.e. a couple of rows of pins - you can tweak it all around later)
  4. In the next screen, "Specify the pad dimensions", I made the hole diameters 40 mils (the datasheet shows a sample footprint and they are 40 there), and the outer diameters 60 mils. This will leave a 10-mil ring around the holes, and the modela should cut it OK since the diameter of the entire thing is 60 mils.
  5. In the next screen "Pad Spacing Values" put something reasonable here
  6. In the next screen "Outline Width" we don't care, since we'll draw our own outline.
  7. In the next screen "Total Number of Pads" I chose 8, since the actual part has 7 pins - we can remove the extra one.
  8. In the next screen "What is the name of this component" I put TO220-7, so that it matches up with the schematic part we made.
  9. Finish
  10. Now, you can edit the part that it put down. Do the following:
    • delete the yellow lines that it put there by default
    • delete the 8th pin that I don't need
    • change the x and/or y locations of the pins so that they line up as needed by the actual footprint of the part.
    • Click on the "top overlay" tab at the bottom of the screen, and click on the line drawing tool.
    • Draw a line around the footprint
    • Save it!
Look at my final PCB footprint (with annotations that I put there to show the sizes of the parts)

Now, to actually use this stuff, you need to add the .dbb file to your Libraries list.

Other notes:

  1. If you can't find the particular microcontroller that you want to use in the Microchip library, you can usually find one that's pin-for-pin compatible with it.
    • Ari rumored that at one time there existed a pin-for-pin compatibility chart somewhere at microchip.com, but I didn't manage to find it myself. (although I didn't look too hard). Rather, I just compared the datasheet for my PIC with the schematic parts that are there in the Microchip library and found one that matched up.
    • In case you're interested, here's my mapping:

      I am using: PIC16F876 (it has 40 pins total)
      I found this worked: PIC16C74-041/P(40)
      (note - the 40 at the end designates the number of pins.. you could also use whatever part you want, with a dip20 footprint)

  2. For things that I don't have schematic/layout for (3-pin crystal, for example)
    • schematic design: use conX (connector, X pins - for example, I use con3 for my crystal)
    • PCB footprint: sipX (single-inline-package, X pins - so I use sip3 for my crystal)