ATtiny_216_461_861.fzpz (26.6 KB)
I ran that part file through FritzingCheckPart. That had several complaints, but the only important one seems to be that the “breadboard” layer id is missing from the svg.
@vanepp FritzingCheckPart is complaining that terminalID elements do not work as paths. However, a quick test seems to show that it does work here. Both the connector and terminalId elements have been created as path elements for the svg, though looking at the coordinates, they are really just lines and rectangles.
The only other warning was that the PCB silkscreen should be black, for the current standard / convention. Fritzing handles it, so it just cosmetic.
Not an error, but you do not need a separate icon svg in the part. It is currently identical to the breadboard svg. Instead of duplicating the file, all you need to do is specify the breadboard svg as the image for the icon.
<iconView> <layers image="breadboard/ATtiny_261_461_861_1bbfa7281bb8936bd48dbc6a432260e2_1_breadboard.svg"> <layer layerId="icon"/> </layers> </iconView> <breadboardView> <layers image="breadboard/ATtiny_261_461_861_1bbfa7281bb8936bd48dbc6a432260e2_1_breadboard.svg"> <layer layerId="breadboard"/> </layers> </breadboardView>
I have noticed the message isn’t always accurate. Sometimes (probably when the element isn’t a line or rectangle) paths as terminals do not work, so the message perhaps should be changed to indicate that, although it won’t hurt to make the terminalIds not be a path, so perhaps we should change the part file format document to specify terminalIds can’t be a path (because some types of path won’t work)?
The same thing is true of paths as through hole pads in pcb. A path that is a circle (with nothing else!) works, but CheckPart will still complain that “no hole will be drilled” even though sometimes it will be. Again I expect the best solution is to specify that the pad needs to be a circle (not a path) in the part format file document.
Or at least add a note to the documentation that if paths are used, additional verification will be needed because it does not always work. Simplest is to disallow. How about:
Do not used svg path elements for terminalId elements. Although they work properly some of the time, they can also NOT work. There is no easy way to tell when they will and will not work without testing the part in Fritzing after creation. It is easier to just not use paths to start with. A rect element is the usual equivalent choice.