1 I chose "always vector font" before I did anything, but my texts still claim to be "proportional". Should I worry about this, or will this be ignored because of the "always..." setting?
Try change font vector
on a smashed text item. If the font changes, it didn't work. Just run one of the font conversion ULPs on your board to programmatically change everything to vector font with a specified size and ratio.
2 What is the minimum size font that is likely to be printed and legible? Sparkfun's tutorial recommends reducing the size to 50 mils (.05, or 1.27mm), and I've read somewhere that one should set the ratio to something higher than the default 8% or some lines may not be printed. What is the recommended minimum?
You have the following requirements:
- Each line on the silk has a minimum width that your board house can place
- The ratio should be small enough that the font is legible
- The size should be large enough that users can read it
- The size should be small enough that you can fit all the information you want on your board
To meet requirement 1, you need to understand the Size and Ratio terminology. Size is the vertical height of your text. Ratio is the ratio between width of a line and text height. Multiply size by ratio/100 to get the width of your silkscreen. A rule-0f-thumb is 8mil minimum width, but you may be able to get away with less. For 50 mil size, this means you need a 16% ratio. That's really chunky. The rest is subjective.
3 Is it normal that all my parts end up "smashed" in order to put the text in sane places?
Yes. This is quite normal on boards where size is a concern. Try to place all text with the same orientation to make reading easier, but place parts in whichever orientation makes the routing easier. This does mean you'll have to smash and rotate a lot.
4 Is it recommended to include values as well as names, or do these merely take up space that would be useful for something else?
What else could be useful? Let your form factor dictate the size available to you, and EMI dictate component placement and trace length, and then use the remaining space for whatever silkscreen you can fit. You won't be able to fit everything on all but the most basic boards. I'd rank the priorities for what I'd want to see on silkscreen as:
- Label Pin 1 location for connectors and ICs. A little dot takes up little to no space; this can even be under the part if things are tight.
- Labels for components users will interface with. "JTAG" on the JTAG header is important, "Reset" next to the reset switch is important, "Activity" for link activity LEDs, etc. I usually call these labels and not values; the value of these components will be the part number. This label should be added by the PCB designer.
- Meta information: Your company logo, the revision number of the PCB, the name of the product, URLs the support website and your email address. Users don't care much about anything below this.
- Names for important components. Obviously, naming your debug LEDs and test points is more important than labeling each decoupling capacitor, so make intelligent choices within this category.
- Values for components that might be adjusted by the user. For instance, an IC in a socket should have a value, while you don't need to know the part number of a generic pin header.