i am working on building some parts and am running into a weird selection artefact
https://www.dropbox.com/s/uwvpsys85ehd0y1/DEX%20selection%20artefact.mp4?dl=0this happens when selecting pads with shift-click
The following video shows me trying to edit a few pads.
http://dl.dropbox.com/u/62657892/DEX%20pad%20editing%20bugs%20and%20idiosynchraties.mp4Comment and explanation of my thought process (that will give you an insight in how i work , how i expect things to work. i don't think my method is much different from anyone else's when exploring a program) :
at up to 0:13 i try to set values for the pad only to realize that .. there is only one size. That's kinda odd. I start looking around the GUI to see if i can find where to change it.
at 0:21 i start looking around the pad type. maybe there is a 'rectangle' type as opposed to 'square'.. nope the tooltip clearly reads 'rectangle' so it must be possible to alter x and y independently. weird.
at 0:29 i decide to go back to 'Size' and click ont he flyout, maybe it's hidden there. no . that's the calculator.
at 0:32 i am thinking , maybe i can 'stretch' the pad graphically. nope. the pad stays a square and sizes both x and y if i do that.
at 0:36 - back to the pad menu , maybe i missed something. let;s check again. i see a box 'size' but no x and y ... odd
at 0:49 : explore the polygonal pad. surely i don't need to draw a non-square as a polygon. that would be really whacky ...
at 0:57 i finally spot the tab 'SHAPE'. ah . got it. kinda odd we need a totally separate tab for that. why can't this be on the 'general tab. there's plenty of room there. But ok. that was how Iliya decide it to be. fine. no problem. Let's explore here. there is some dead time where i took some notes to write this timeline.
at 1:23 i start exploring the settings. great that works.
at 1:40 things start going strange and this is where the idiosynchraties begin. i click on pad number two. Notice how in the 'Properties window' we are still on the Shape tab. But under 'Size' the field for 'height' disappears? euh ? why does that happen ? that should not be -bug-
at 1:41 i try a multiselect. ( select both pads by holding down shift and clicking. i get a weird selection artefact on pad 1. maybe this has a meaning , but it looks odd to me. The field for 'Height' reappears in the properties panel. good. let's try changing values
1:47 : width works in multiselect. good
1:49 : height works in multiselect. good
1:50 : lets try to bring both pads in line with each other. There is a box for X and Y .
1:51 X doesn't work -bug-
1:56 Y doesn't work -bug-
maybe it is because of multiselect. let's try it with only one pad
2:18 x doesnt work , y doesnt work. lets try altering the numbers with the scrollwheel. the numbers do change. the pad stays where it is. -bug-
2:34 go to general tab and try it there.
2:35 try scroll wheel on x : it works the pad moves.
2:40 go back to shape and try altering the numbers. doesn't work. oops.
So here are my comments :
1) from a usability perspective there is no need to hide the X and Y size of the shape in a different tab. it is more clicking and more work and there is plenty of space on the 'general tab'. The only 'additional settings' on the Shape tab are widht and height and a roundness slider. Ditch the 'size on the general tab and put those 3 controls there and get rid of the Shape tab
2) if you are going to duplicate x and y settings ; make sure they work. now they are broken. Also the 'height' field disappears when selecting pad 2. that is a bug.
3) mulitselect has weird screen artefacts.
4) once a pad has been made non square in the Shape tab , now a 'Height ' field does appear in the General tab. So it is actually already there, it only appears after futsing around in a separate menu. From a simplicity and user friendlyness perspective this is not good.
All the properties for a pad should be grouped in 1 tab
- shape
- width
-height
- a checkbox to link width and height if you want to ( to force square or round pads) . you can grey-out Height if checked. there is such a checkbox but it is on the Shape tab.
- X and Y coordinates
- pin name
- oversize/shrink for soldermask
- oversize shrink for pastemask
there is a checkbox . there is a checkbox to generate sodermaks automatically.
The Solder mask definition however hides in a totally different panel : the layers panel. that again is illogical. i am trying to define it for the pad i am editing.
problems :
- the mask can only be set to a positive number and not to a negative number. Sometimes you need to create SMDP structures (soldermask defined pads) like for heatslugs under certain packages ( TQFP's or QFN or TSSOP with a center pad used for heat dissipation ). in that case you define a pad that is much larger but you encroach the soldermask to expose only the actual pad size the other copper is to be hidden. this has to do with soldering. DEx only allows an 'oversize' on the pad. At a minimum i need to be able to set an x and y oversize and for real work i need to be able to DRAW my own arbitrary soldermask opening using rectangles and polygons. This is a serious shortcoming
- there is no definition for paste mask opening. The paste mask may need to be shrunk smaller than the solder mask opening , or i may need to make a lattice structure of paste in the pad to avoid thermal via's for example ( such a lattice could be combine with a solder mask lattice as well. in other situation the paste may need overprinting : more paste than there s copper , to offset thickness variations. once the paste goes liquid it contracts .the flux evaporates so the volume shrinks. i may need to compensate for than actual solder / past mixture and print more paste to get the right amount of solder after the fliux activation phase.
so i need a way to define the paste mask opening again able to draw this as a polygon or collection of elements like a lattice or array of rectangles for example.
In certain circumstances i need to be able to draw on the soldermask. depending on the plating of the board and weight of the copper ( 1 ounce vs a heavy copper board of 4 ounces for example ) it is possible that the manufcaturer of the PCB cannot meet the 'sliver' : the minimum width of a strip soldermask between pads. for thick copper the walls are no longer vertical but slanted. this shrinks the distance at the base of the pads. soldermask must sit only on the carrier material and not on the slant of the copper. In this case i need to shrink the soldermask inbetween pads. it is possible ( and very likely with parts having a pitch of 0.65 or smaller ) that i now end up with a soldermask that i no longer stable. it is so narrow that it will peel off . in such a case i need to remove these slivers. that is done by simply 'drawing' an opening across the row of pads on the solder mask layer. Dex doesn't seem to have such a layer so i cannot make these production critical edits to my board prior to production. my board is not manufacturable as i can't create the correct geometries due to limitations of the cad software.
in short : Soldermask and paste mask must be able to be defined PER PAD , not as a 'global setting'. and must be able to be drawn arbitrarily either as oversize/undersize in respect to the pad or as a collection of arbitrary shapes.
That is the nature of surface mounted technology. there is no dancing around it. it is required.
So here we have a bunch of valuable information for improvements with the how and why it is needed.
I have attached two images to demonstrate such a case.
Red= copper. the chip itself only has a smallpad in the body. there is much more copper required to actively cool it. so here the soldermask defines the opeing where solder will touch the bottom of the package. this opening is the same size as the thermal pad in the chip. this opening in the soldermask cannot be a simple rectangle as we are using thermal via's . these via;s need to be covered in soldermask or the solder will disappear in the holes during reflow. which is not what we want to happen.
the second picture shows the definition of the paste ( gray color) there is less paste required than trhe width of the pin. we also cannot print paste on top of the soldermask we we need to create a pattern inside the soldermask openings.
notice on the first image hgow there is a tiny sliver os soldermask between the center pins ? that is unacceptable for production as dry film mask will peel of and liquid mask does not have such fine resolution. if we are to use thick copper it is complete misery. so i need the ability to selectively remove the mask in those area's ( i have deliberately left it in this drawing to show you what the problem is for manufacturing.
so this is why custom apertures and custom shapes ,on pad level and on package level are mandatory both for soldermask and paste mask. as simple 'oversize' setting works fine for thru-hole parts, but not for surface mounted technology.that is whole different ballgame.