Author Topic: Annoying datasheets  (Read 2946 times)

0 Members and 1 Guest are viewing this topic.

Offline saikeTopic starter

  • Regular Contributor
  • *
  • Posts: 74
  • Country: gb
Annoying datasheets
« on: August 27, 2018, 09:23:32 am »
I have just been trying to draw a pcb footprint for a Diodes Inc. POWERDi5 component and what should have been a few minutes work turned into a task involving a calculator, vernier calipers, pen and paper, multiplication, division, addition and subtraction because the datasheet diagrams look like they were drawn by an apprentice draftsman on his first day at work.
The dimensions shown all start from a different anchor point and the centroid on the outline diagram is in a different place to the one shown on the suggested pcb layout.
</rant over>
I just downloaded a more general, not component specific data sheet for the footprint and it is a lot better but still a long way from being a proper engineering drawing.
 

Offline tooki

  • Super Contributor
  • ***
  • Posts: 12378
  • Country: ch
Re: Annoying datasheets
« Reply #1 on: August 27, 2018, 10:08:50 am »
Datasheets are, IMHO, one of the biggest hurdles to the electronics novice. Wildly inconsistent formats (not just page layout, but what information is expressed explicitly and what must be derived, what’s omitted altogether, and where important information is placed — sometimes as a warning, sometimes in body text, sometimes casually mentioned in passing...) make it really hard to find and compare components.

A related topic (especially in things like 7400 and 4000 series logic) is that the names of components don’t tell you much if you don’t already know what they mean. E.g. you might need a multiplexer, but until you know it’s called that, how do you find the parts? I don’t recall ever seeing a listing of what the different things do.
 

Offline b_force

  • Super Contributor
  • ***
  • Posts: 1381
  • Country: 00
    • One World Concepts
Re: Annoying datasheets
« Reply #2 on: August 27, 2018, 11:35:18 am »
The biggest issue with most datasheets is that every manufacturer uses different methods to show (off) their data.
This result really comparing apples with bananas.
A lot of times the real essential data is also missing.
Dave devoted a couple of videos to this issue already.

A lot of times this means you need to investigate these things yourself.
For a company that mostly means getting (or hiring) expensive equipment to verify consistent results. 

I have a physics background and in general I find many papers in the electronics field written very poorly.
Symbols, definition and variables are often not even described and often change from paper to paper.
As well as many graphs without any description or explanation
 
The following users thanked this post: tooki

Offline dmills

  • Super Contributor
  • ***
  • Posts: 2093
  • Country: gb
Re: Annoying datasheets
« Reply #3 on: August 27, 2018, 01:18:49 pm »
I have a pet hate on for connector datasheets, the footprint drawings are clearly done my the mechanical guys and basically never quite tell me what I want to know without reaching for a calculator.

Seriously, over dimensioning the things really would not hurt if it saves the "Twice A - (B+F)/2 + D - E" shuffle.
Oh and FFS pick ONE datum, not three with hairy maths to map between them, also LABEL the "bottom view" (In BOLD RED TEXT), been burned by that one.

Regards, Dan.
 

Online T3sl4co1l

  • Super Contributor
  • ***
  • Posts: 22231
  • Country: us
  • Expert, Analog Electronics, PCB Layout, EMC
    • Seven Transistor Labs
Re: Annoying datasheets
« Reply #4 on: August 27, 2018, 01:47:07 pm »
Two of the worst I've seen:

One was a QFN that's actually an LGA.  In a QFN, the leads come out to the full corner, so a toe fillet forms.  In this one, the plastic wraps around the corner, so although there is some exposed metal that could be soldered on the side face, that's not going to happen, and it's actually an LGA (pads on bottom surface only).  The drawing looked like a sixth grader made it, though it probably didn't help that I saw "QFN" plastered everywhere, and was expecting measurements for a QFN, when it turns out it was actually an LGA, and if I had read it for what it actually was, it would've made more sense.

Oh, so add that to the fire, manufacturers using their own mickey-mouse, proprietary (and often obscure) names for utterly common packages.  (It's not "TO-220AB", to On Semi, it's "Case 221A".)  And poorly documented variants of common ones.

Another was a coin cell holder, with no tolerances specified anywhere, only the default in the title block.  A +/- 0.25mm tolerance on everything means that:
1. to guarantee fit of the 0.8 and 1.0mm alignment pegs in the PCB, I have to use 1.05 and 1.25mm holes; except,
2. it's worse than that, because the position and separation distance tolerance are the same 0.25mm again, needing 1.55 and 1.75mm holes, strictly speaking.

So, the part can fit either direction on the board, with tons of slop to spare, if you follow the drawing exactly.

Turns out the real parts are well within 0.05mm of the drawing nominal values.  So I made the right choice, making the footprint according to realistic tolerances.  Risky though.


I have a pet hate on for connector datasheets, the footprint drawings are clearly done my the mechanical guys and basically never quite tell me what I want to know without reaching for a calculator.

It's not always the manufacturers.  I took a look at SFP connectors and modules.  The SFP consortium sets dimensions and tolerances for all compatible hardware.  They don't give dimensions for the connector pins.  They do give a recommended footprint(!!).  Manufacturers merely copy the same drawing; after all, one familiar with the SFP standards might wonder, why did they add any tolerances, are they not compliant?  Or probably even lazier than that, just going with a standard and not giving a second thought at all.

Jellybean transistors have the same problem, where JEDEC registered parts (2Nxxxx series, for example) are registered only on those scant data and nothing else.  At least a few manufacturers do go out of their way to be informative, e.g. On Semi datasheets are often flush with data and graphs well beyond what the spec sets.


Speaking of standards, some packaging standards are awful.  Did you know TO-220 supports round leads, a tab as thin as the leads (usually only seen on 78xx regs), and tolerances wide enough that the proportions look wrong?  What you usually see -- what you usually think of -- is actually TO-220AB.  It makes a difference!

The DO-214 series is similarly messy -- the tolerances are massive, to the point where several manufacturers suggest footprints that have negative toe fillet (a big no-no) if you believe the MMC condition in their spec -- which isn't their spec at all, but a JEDEC (or one of those bodies) registered one.  I've seen a few that actually give their internal package dimensions in addition to the standard, showing compliance with the standard and also a much more representative size to design from.


Quote
Seriously, over dimensioning the things really would not hurt if it saves the "Twice A - (B+F)/2 + D - E" shuffle.
Oh and FFS pick ONE datum, not three with hairy maths to map between them, also LABEL the "bottom view" (In BOLD RED TEXT), been burned by that one.

 |O

Tim
« Last Edit: August 27, 2018, 02:01:36 pm by T3sl4co1l »
Seven Transistor Labs, LLC
Electronic design, from concept to prototype.
Bringing a project to life?  Send me a message!
 
The following users thanked this post: tooki

Offline Tomorokoshi

  • Super Contributor
  • ***
  • Posts: 1212
  • Country: us
Re: Annoying datasheets
« Reply #5 on: August 27, 2018, 02:39:55 pm »
I have a pet hate on for connector datasheets, the footprint drawings are clearly done my the mechanical guys and basically never quite tell me what I want to know without reaching for a calculator.

Seriously, over dimensioning the things really would not hurt if it saves the "Twice A - (B+F)/2 + D - E" shuffle.
Oh and FFS pick ONE datum, not three with hairy maths to map between them, also LABEL the "bottom view" (In BOLD RED TEXT), been burned by that one.

Regards, Dan.

Absolutely.

For some reason it seems like connector datasheets from German companies are the worst, particularly the automatically-generated ones.
 

Offline dmills

  • Super Contributor
  • ***
  • Posts: 2093
  • Country: gb
Re: Annoying datasheets
« Reply #6 on: August 27, 2018, 03:24:45 pm »
Also, "Controlling dimension mm", then everything turns out to be on a multiple of 1.27mm... Grumble.

Can we give the D2PAK an Honorable mention,  so many things that manufacturers call D2PAK that have basically totally different thermal pads.

Regards, Dan.
 
The following users thanked this post: tooki

Offline b_force

  • Super Contributor
  • ***
  • Posts: 1381
  • Country: 00
    • One World Concepts
Re: Annoying datasheets
« Reply #7 on: August 27, 2018, 03:28:23 pm »
In most connector footprints the distance between PCB holes and connector are missing.
Which is especially annoying with righ-angle connectors.  :scared: :--
 
The following users thanked this post: tooki

Offline thm_w

  • Super Contributor
  • ***
  • Posts: 6926
  • Country: ca
  • Non-expert
Re: Annoying datasheets
« Reply #8 on: August 27, 2018, 07:24:35 pm »
Link/photo?
https://www.diodes.com/assets/Package-Files/PowerDI5.pdf

This looks like a good drawing to me, everything is reasonably dimensioned.
Profile -> Modify profile -> Look and Layout ->  Don't show users' signatures
 

Offline saikeTopic starter

  • Regular Contributor
  • *
  • Posts: 74
  • Country: gb
Re: Annoying datasheets
« Reply #9 on: August 27, 2018, 08:28:21 pm »
Two different images. Try calculating the centre/centre pad distance, in your head from the first one and be 100% certain you haven't made a mistake

 
 

Offline b_force

  • Super Contributor
  • ***
  • Posts: 1381
  • Country: 00
    • One World Concepts
Re: Annoying datasheets
« Reply #10 on: August 27, 2018, 08:40:24 pm »
you mean from the big pad to the smaller ones?
That's (Y+Y1)/2 + G

What is confusing is the swapped X and Y with both pictures plus the (2x)

Offline saikeTopic starter

  • Regular Contributor
  • *
  • Posts: 74
  • Country: gb
Re: Annoying datasheets
« Reply #11 on: August 27, 2018, 08:54:37 pm »
Yep, this is an easy example, easy with a pen/paper and even easier with a calculator but I shouldn't have to do any of this on the shop floor. It should be done, checked and double checked on the drawing board and then all I need to do is copy the dimensions from the drawing, or in this case the non existent dimensions. Obviously this is a lot more important when using multi pin components with equally garbage data sheet diagrams.
 

Offline thm_w

  • Super Contributor
  • ***
  • Posts: 6926
  • Country: ca
  • Non-expert
Re: Annoying datasheets
« Reply #12 on: August 27, 2018, 10:00:44 pm »
Well, in an ideal world you would just download the component library model and not do any work at all.

The dimensions as shown are common for mechanical drawings. I think what causes problems here is that circuit CAD (at least Altium, maybe other as well), rely on center to center distances, and don't let you drop dimensions from pad edges.

If they haven't added this already it would be a huge benefit, I don't know why Altium (and probably other CAD) has stuck with its very poor dimensioning tools, and lack of equation entry. Use something like Solidworks and you will see how drawing this part is very straightforward.
Profile -> Modify profile -> Look and Layout ->  Don't show users' signatures
 

Offline Bud

  • Super Contributor
  • ***
  • Posts: 7050
  • Country: ca
Re: Annoying datasheets
« Reply #13 on: August 27, 2018, 10:12:25 pm »
This is not a mechanical drawing. This is a suggested pad layout. The only purpose of it is to be transferred onto a pcb. And that is done by EEs, not mechanics.
Facebook-free life and Rigol-free shack.
 

Offline b_force

  • Super Contributor
  • ***
  • Posts: 1381
  • Country: 00
    • One World Concepts
Re: Annoying datasheets
« Reply #14 on: August 28, 2018, 12:09:58 am »
What would be nice is to add just simple formulas in PCB/EDA program fields for these things.

Not all are capable of doing this, which is such an enormous pain in the ass.
Apparently it's so difficult to add a tiny line of extra programming code?

But yeah I get it. Since almost every PCB designer needs these values, you just wonder why the hell they aren't already there in the datasheets?
 
The following users thanked this post: thm_w

Offline BrianHG

  • Super Contributor
  • ***
  • Posts: 7990
  • Country: ca
Re: Annoying datasheets
« Reply #15 on: August 28, 2018, 12:28:19 am »
What would be nice is to add just simple formulas in PCB/EDA program fields for these things.
Back in the early 2000s, for Protel99se, I built a footprint generator script program for QFP and TSOP footprints.  I would open the footprint generator and 'run script' which brought up a for where I entered the actual data sheet measurements of the time.  It would automatically do all the math and create a proper footprint, with proper play room for manufacturing.  No more math.

Here is what had to be done:
Code: [Select]
' Protel Client Basic code QFPfootprintGeneratorScript.bas Aug 22, 2001
'
' Beta ver 1.1
'
' By Brian Guralnick,  email bugs to "brian@point-lab.com"
'
' Generates QFP & TSOP footprints with exact measurements provided
' in most data sheets without having to figure out the pin center.
'
' Thanks to Ian Wilson & Darren Moore for Client Basic help
' on generating the dialog boxes, and Brad Velander & John Williams
' on how to find the protel help on the RunProcess parameters.
'
' Intended to run in the PCBLIB editor.
'

Dim measurement$ (2)
measurement (0) =  "Metric"
measurement (1) =  "Imperial"

DIM offset, pxsize, pysize, pin_outside, pin_inside, pak_xpinc, pak_ypinc, toppin, pinnum, angle, xpos, ypos as DOUBLE
DIM pak_ypins, pak_xsize, pak_xtol, pak_xpins, pak_ysize, pin_space, pin_width, pin_length, pin_xin, pin_xout, etch as DOUBLE

Sub Main

 Begin Dialog DialogName1 20, 20, 280, 200, "QFP & TSOP Footprint Generator."
  Text    35,  10, 300, 11, "Vertical pins in package. (1 side only)"
  Textbox  5,   8,  25, 11, .pak_ypins
  Text    35,  20, 300, 11, "Width of package from vertical pin edge to pin edge."
  Textbox  5,  18,  25, 11, .pak_xsize
  Text    35,  30, 300, 11, "Measurement tolerance for width & height."
  Textbox  5,  28,  25, 11, .pak_xtol

  Text    35,  50, 300, 11, "Horizontal pins in package. (1 side only)"
  Textbox  5,  48,  25, 11, .pak_xpins
  Text    35,  60, 300, 11, "Width of package from horizontal pin edge to pin edge."
  Textbox  5,  58,  25, 11, .pak_ysize

  Text    35,  80, 300, 11, "Pin to Pin Spacing."
  Textbox  5,  78,  25, 11, .pin_space
  Text    35,  90, 300, 11, "Pin width."
  Textbox  5,  88,  25, 11, .pin_width
  Text    35, 100, 300, 11, "Pin length."
  Textbox  5,  98,  25, 11, .pin_length

  Text    35, 120, 300, 11, "Added pin length, in multiples of pin width, underneath IC package."
  Textbox  5, 118,  25, 11, .pin_xin
  Text    35, 130, 300, 11, "Added pin length, in multiples of pin width, outside of IC package."
  Textbox  5, 128,  25, 11, .pin_xout
  Text    35, 140, 300, 11, "Globally added material to compensate for etch.  Usally 0.04mm, or 1mil."
  Textbox  5, 138,  25, 11, .etch
  Text    35, 150, 300, 11, "Pin 1 starting location. 0 = top left, 1 = top middle."
  Textbox  5, 148,  25, 11, .pin1loc


  Text        50,170,300,11, "Measurement Unit."
  DropListBox 5,168,40,62, measurement$(), .munit

  PushButton  20, 185, 30, 12, "Cancel", .Cancel
  OKBUTTON    180, 185, 30, 12
 End Dialog

 ' Dimension an object to represent the dialog.
 Dim Dlg1 As DialogName1

'Default inputs

Dlg1.pak_ypins  = 60    ' number of pins in package vertically
Dlg1.pak_xsize  = 34.60 ' width of package from vertical pin edge to vertical pin edge
Dlg1.pak_xtol   = 0     ' +/- tolerance of package width

Dlg1.pak_xpins  = 60    ' number of pins in package horizontally, enter 0 for a TSOP package
Dlg1.pak_ysize  = 34.60 ' width of package from horizontal pin edge to horizontal pin edge

Dlg1.pin_space  = 0.50  ' pin to pin spacing
Dlg1.pin_width  = 0.27  ' width of pin
Dlg1.pin_length = 0.75  ' length of pin

Dlg1.pin_xin    = 1     ' added pin length underneath the IC in multiples of pin width.  Usually 1
Dlg1.pin_xout   = 2     ' added pin length outside the IC in multiples of pin width.  Usually 2
Dlg1.etch       = 0.04  ' gloabally added material to compensate for the etch
Dlg1.pin1loc    = 0     ' starting pin number at the top left of the package.  0 for top left, 1 for center.

Dlg1.munit      = 0


 Dialog Dlg1                  ' Display the dialog.

    If Dlg1.Cancel = 1 Then
    Exit Sub
    End If


' package generation

offset = 50000 ' imperial center offset
if measurement(Dlg1.munit) = "Metric" then offset = 1270 ' metric center offset
    ResetParameters
    AddStringParameter  "MeasurementUnit", measurement(Dlg1.munit)
    RunProcess          "PCB:DocumentPreferences"

'-----------------------------------------------------------------------------
' DO NOT REMOVE, RESOLVES A BUG WITH FLOATIN POINT ENTRY INTO THE DIALOG BOX
' AND USING THE DIALOG VARIBLES DIRECTLY IN LINE WITH MATH
'-----------------------------------------------------------------------------
pak_ypins  = val (Dlg1.pak_ypins)
pak_xsize  = val (Dlg1.pak_xsize)
pak_xtol   = val (Dlg1.pak_xtol)
pak_xpins  = val (Dlg1.pak_xpins)
pak_ysize  = val (Dlg1.pak_ysize)
pin_space  = val (Dlg1.pin_space)
pin_width  = val (Dlg1.pin_width)
pin_length = val (Dlg1.pin_length)
pin_xin    = val (Dlg1.pin_xin)
pin_xout   = val (Dlg1.pin_xout)
etch       = val (Dlg1.etch)
'------------------------------------------------------------------------------

pxsize = pin_width + etch
pysize = pin_length + (pin_xin * pin_width) + (pin_xout * pin_width) + etch + (pak_xtol * 2)

pin_outside = ( ( pak_xsize + pak_xtol ) / 2 )
pin_inside  = pin_outside - ( pin_length + (pin_xin * pin_width) + (etch / 2 ) + pak_xtol )
pak_xpinc   = pin_inside + (( pin_outside - pin_inside ) / 2 ) + ( (pin_xout * pin_width) / 2 )

pin_outside = ( ( pak_ysize + pak_xtol ) / 2 )
pin_inside  = pin_outside - ( pin_length + (pin_xin * pin_width) + (etch / 2 ) + pak_xtol )
pak_ypinc   = pin_inside + (( pin_outside - pin_inside ) / 2 ) + ( (pin_xout * pin_width) / 2 )

pak_yofs    = pin_space * (pak_ypins -1 ) / 2
pak_xofs    = pin_space * (pak_xpins -1 ) / 2


toppin = ( pak_xpins * 2 ) + ( pak_ypins * 2 )
pinnum = Dlg1.pin1loc * ( pak_xpins / 2 )

angle = 90
for n = 1 to pak_ypins
    xpos = - pak_xpinc
    ypos = pak_yofs - ( (n-1) * pin_space )
    gosub makepin
next n


if pak_xpins <> 0 then
    angle = 180
    for n = 1 to pak_xpins
       xpos = - pak_xofs + ( (n-1) * pin_space )
       ypos = - pak_ypinc
       gosub makepin
    next n
end if


angle = 270
for n = 1 to pak_ypins
    xpos = pak_xpinc
    ypos = - pak_yofs + ( (n-1) * pin_space )
    gosub makepin
next n

if pak_xpins <> 0 then
    angle = 0
    for n = 1 to pak_xpins
       xpos = pak_xofs - ( (n-1) * pin_space )
       ypos = pak_ypinc
       gosub makepin
    next n
end if


Exit Sub


makepin:
    pinnum=pinnum+1:if pinnum>toppin then pinnum=1
      ResetParameters
      AddStringParameter  "Designator", pinnum
      AddStringParameter  "Location.X", xpos + offset
      AddStringParameter  "Location.Y", ypos + offset
      AddStringParameter  "HoleSize",   0
      AddStringParameter  "Rotation",   angle
      AddStringParameter  "Plated",    "True"
      AddStringParameter  "XSize",      pxsize
      AddStringParameter  "YSize",      pysize
      AddStringParameter  "Shape",     "Round"
      AddStringParameter  "DaisyChain","Load"
      AddStringParameter  "Selected",  "False"
      AddStringParameter  "DRCError",  "False"
      AddStringParameter  "Locked",    "False"
      AddStringParameter  "Layer",     "Top"
      RunProcess          "PCB:PlacePad"
return

End Sub


Too bad, I don't think Altium allows basic scripts anymore.  I had scripts to generate swiggly inductors, spiral inductors, smooth track size A to size B transitions, change a bitmap into a halftone image on the PCB...

As messy as the above diode datasheet was, the old method of translating the datasheet QFP footprints to what the PCB cad software liked has been simplified with modern footprint examples in datasheets today.  Be glad you didn't have to manually work out all of the math in my example code above, around 2/3rd down, by hand for every new footprint.

I assume most modern PCB engineering CADs have some sort of script or module language where you can create your own auto footprint generator like I have.  For simple 2-4 pin devices, and using footprint example pads of today's datasheets, your program should be around half or 1/3rd the size of my over-complicated QFP generator I made above.
« Last Edit: August 28, 2018, 12:48:10 am by BrianHG »
 

Offline TERRA Operative

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: jp
  • Voider of warranties
    • Near Far Media Youtube
Re: Annoying datasheets
« Reply #16 on: August 28, 2018, 04:27:24 am »
Ugh, I had a similar thing with a tact switched from C&K..

The dimensions for the tact switch footprint are passable, and they supplied a .step file for the switch.
But the button caps? Nope. Terrible hand drawn diagram with only the most cursory dimensions, and NO way to see how high the cap sits on the button. Kinda important for making the part fit properly.....
The most annoying part was that I requested .step files for both parts, but they completely ignored the request for the button cap, not even acknowledging my follow up emails...

How am I meant to design your part into my product without proper dimensions at least, or .step files?


Not to mention TT Electronics who couldn't even organise a .step file that wasn't distorted or skewed or otherwise broken in some way after 3 tries.
I switched to Bourns and they had all their i's dotted and t's crossed, a perfect .step file and good documentation. Same price for their part too.
Where does all this test equipment keep coming from?!?

https://www.youtube.com/NearFarMedia/
 

Online coppercone2

  • Super Contributor
  • ***
  • Posts: 10332
  • Country: us
  • $
Re: Annoying datasheets
« Reply #17 on: August 28, 2018, 07:54:26 pm »
I hate shitty pictures of round can packaged transistors.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf