.brd files consist of multiple layers. Usually it is enough for brd2svg to convert layers 1 (top), 16 (bottom), 17 (pads), 21 (top place), 22 (bottom place) and 20 (dimensions). You can optionally specify other layers to be converted (though this only affects the breadboard image). Note, if there is no dimensions layer in the .brd, Fritzing has no way to determine the overall size of the board. In this case, it is best to add your own dimensions layer to the original .brd file.
You can incorporate SVGs into the breadboard image. A line like <include src='full path to whatever.svg' x='0in' y='0.2in'/> will place the image 'whatever.svg' into the specified location on the breadboard .svg.
You can reposition, rotate or hide a package using 'nudges'. For example, the line <nudge element='JP17' package='1X08' x='-1.1mm' y='0.2mm' angle='90' /> will move the JP17 element and give it an additional 90-degree rotation (rotations are additive, not absolute). Note that the element and package refer to entities found in the .xml file generated from a given .brd file.
Connectors in .fzp files are more-or-less equivalent to signals in .brd files. Connectors are split into five categories: power, ground, left, right and unused. In rectangular-type schematic view images, power connectors go on top, ground connectors go on the bottom, and the others are split between left and right. Unused connectors don't appear in Fritzing (so users are not burdened with them). The order of the connectors in the .params xml is the order they will appear along the side of the rectangle in schematic view. You can add <space/> elements to include some whitespace between connector pins (in schematic view only).
It turns out most signals in a .brd file end up being unused in Fritzing. One rule of thumb is that signals of type 'pad' tend to be used and signals of type 'smd' tend to be unused--but this is only a rule of thumb. When a .brd file is first converted, brd2svg will make a guess at which category each signal belongs. This is usually a bad guess, and this is where most of the time is spent in working with params files.
Some boards feature prototyping areas--grids of connectors. You can specify this using the <fake-vias> element (this is a sibling to the <connectors> element). For example, the following xml snippet sets up the beginning of one such grid:
<fake-vias>
<connector signal=''
id='173' package='1X3_STRIP' element='U$10' name='2'
type='pad'/>
<connector signal=''
id='174' package='1X3_STRIP' element='U$10' name='3'
type='pad'/>
...
</fake-vias>
We refer to internal connections as 'buses'. To set up internal connections in a part, for example if there are multiple GND connectors, use the <buses> element (another <connectors> sibling). Here is another snippet:
<buses>
<bus>
<connector signal='5V' id='160' package='1X12_STRIP'
element='U$9' name='1' type='pad'/>
<connector signal='VCC' id='126' package='1X22_STRIP'
element='U$7' name='1' type='pad'/>
</bus>
...
</buses>
Sometimes a signal is not named very clearly, and it would be nice to provide a more explanatory label. If you don't want to change the original .brd file, you can use renaming in the .params file. The <rename> element is a child of the <connectors> element:
<renames>
<rename element='JP2'
package='1X02' signal='N$223' to='+3V3' />
<rename element='JP1'
package='1X02' signal='N$223' to='+3V3' />
</renames>
warning
As of this writing (19 July 2013), brd2svg generates schematic
images according to a spec that has now been superseded. Please be
aware that any schematic images you make using this version of the
program will likely become obsolete in the next few months. We
plan to update brd2svg to fit the new spec, but the timing is not
certain.