Parts Wrangling
Before we Begin Gadget 1
Gadget one assembly
Circuit Boards and Stencils are here
Get started this week.
Extra office hours
REL is ready and waiting for you
March 25
th
housing design
April 1
st
housing complete
April 8
th
case study plus complete firmware
Extended Office Hours
Monday (today): 8:30-10
Tuesday 4:30-6:30
Thursday 6:30-7:30+
Friday 7-8
Sunday 6:30-7:30
Part Sourcing
Our giant BoM was basically cheating
Knowing how to source parts is very important
Your mental understanding of what is available dramatically
affects your designs
Other various details:
Its bad to design for obselete / non-existent parts
Random part #s in a BoM can yield.very random parts
Lazy/quick replacements dont always work
You can order the wrong size/shape/get the shape wrong
You need to be able to wade in and find your own parts
Finding Parts
Sadly, searching in a poorly Googleable niche
A few search engines exist
www.findchips.com
www.octopart.com
But, you usually need to know a specific part number
A few distributors have reasonable search ability
www.digikey.com
www.mouser.com
Can refine the search parametrically
Finding a Part
The options can be overwhelming
Knowing what you want is
important!
Fungible Parts
For the most part, a discrete is a discrete
Resistors
Capacitors
Inductors
Diodes (including LEDs)
Most important search criteria
Electrical value
Package aka size / shape
Other electrical characteristics (Max Voltage, Reverse
Breakdown, etc.)
Cost and availability
Finding a Part
Being Specific Helps
Search for resistor 4.7k
Better: resistor 4.7k 1206
In-stock is good to check
Packaging:
Cut Tape / Bulk / Tube are hobbyist quantities
Tray or Tape & Reel is cheaper per part, but you get a ton
Narrowing it Down
Decide if the differences matter
Pick one and write it down
Navigating semi-fungible parts
Some things do the same thing completely differently
Microcontrollers
Atmel AVR attiny, atmega, atxmega, avr32
Microchip PIC 12f, 14f, 16f, 18f, dspic
Parallax Basic Stamp, Propellers
8051 / HC16
ARM7, ARM9, Xscale
Sensors / Actuators
Accelerometers analog, I2C, SPI
Different brands have different pinouts, requirements, etc.
Navigating semi-fungible parts
Usually its easier to stick with what you know
But be sure to check periodically
Newer is almost always better
Example:
CHS-MSS vs. HIH-5031-001
Both humidity sensors
$24 vs. $13
5V vs. 3V
TH vs. SMT
Wading through very similar parts
Pin-Compatibility
Part options: AtXmega16A4 / AtXmega32A4 / AtXmega64A4
Many, many logic gates (cmos vs. ttl vs. fast ttl vs. open drain)
A wide variety of knockoffs or generics (MAX232)
Package Variants
Attiny85-SU vs. Attiny85-PU vs. Attiny85-MU
The thing you are most likely to get wrong
Package Variations
Usually differentiated only by a letter or two
All of the packages are usually in the same datasheet
Usually your only help is a horrible table like this:
Be Paranoid
Helpful Package Standards
Discretes
1206 is what you used on your gadgets (1.2mm by 0.6mm)
0603 is half as big in each dimension, 0201 is 1/36
th
the area.
1210 is slightly wider (usually used for capacitors), and so on
Non-LE diodes are different SMA, SMB, SMC
SOT223 is a good-sized SMT regulator
TQFP, SOIC are usually good for ICs
Avoid QFN or anything LC* (no legs!), but they are skilletable
BGA is very bad for hand assembly
Small Outline Package
SOIC / SOIC Wide / SOIC Narrow / SOP / SSOP/
TSOP / TSSOP / TVSOP
Usually the more letters, the smaller it is
Key differences are pitch and body dimensions
Pitch space between leads or legs
The only way to be sure is to:
1. Verify the part number and find the dimensions in the
datasheet
2. Check the datasheet against the eagle library
3. Verify the pitch, width, and pin numbering
Using Eagle to create parts
Every part is divided into three parts
Package
The physical representation of the part.
What you see in Layout view
Symbol
The logical representation of the part
What you see in Schematic View
Device
A place to tie the package to the symbol
Lets you re-use common packages on different parts
Lets you re-use common symbols on package variants
See the Handout:
Course Documents -> Creating Eagle Libraries
First Step in Making Packages:
Make sure you actually have to
1. Find the datasheet for your part
2. Find the drawing for your package
Sometimes you get lucky with a recommended land pattern
Sometimes they reference another datasheet elsewhere
3. See if it matches something you already have
4. Look around a bit more since laziness is good
Check random eagle parts libraries, particularly smd*
Check the internet, particularly sparkfun / hobbyists
5. Sigh and then open Eagle to make it yourself
1. File -> open library / create a new one
Making the Package
1. Click the package button to edit a package
2. Give it a sensible name (either a part # or package)
3. Use SMD / PAD to put down pads
4. Draw lines in layer tplace/tnames as necessary
5. Put down magic text: >NAME and >VALUE
Helpful Hints
Always center your part around 0,0 much easier to work
with in layout!
Adjusting the grid spacing to the pitch saves a lot of time
Can group bunches of pads to move a row to the right offset
Always verify your pins are in order
Making the Symbol
1. Click the symbol button to edit a symbol
(no need to save your package in between)
2. Name it something useful mfg part number, digikey part number,
or be sure to put that information in the description.
3. Put down pins in a desired arrangement
4. Draw some lines so it looks part-like
5. Add magic text (>NAME, >VALUE)
Helpful Hints
You can group pins by function, not by number
You can change visibility to put the pin #s here or there
Labeling pins with text can make parts easy to understand
Drawing simple diagrams can obviate a lot of labeling
Making the Device
1. Click the Device button
2. Give it a name similar to your symbol
3. In the main area, type add, insert your symbol
4. Then hit new and add your package
5. Then hit connect and connect the two
I. Be sure to get this right
II. Check back and forth with the datasheet
III. Go back to I again just to be sure
6. If theres a green checkbox, youre good to go!
Helpful Hints
If your pins have the same names, this is a lot easier
You dont need to connect all pins in a package, but must connect all pins in a
symbol
Some shortcuts
Using packages from other libraries
1. Open your library
2. Navigate using the library pane to the donor library
3. Right-click on the desired package and choose add to library
4. Now you can use it in your devices!
Using other libraries wholesale
Sparkfun and others have a wide variety of interesting parts
already in libraries
Its still up to you to verify that the parts match the datasheet
Homework
Part A Eagle Practice
Create library parts for specific parts weve chosen
No Copying make all packages/symbols from scratch