Hello,
I have now tried to implement a JacDac component for the Calliope Mini 3 as a part. For this, I adjusted the files from Calliope GmbH.
I also created a PCB view. This was actually not necessary, because a PCB will hardly be made for JacDac components. I only did it to fit with Fritzing.
Is the part okay like this?
What mistakes did I make?
What still needs to be changed?
Here I ungrouped the groups above breadboard to make this easier (I prefer to have a single group that covers the entire breadboard, although multiple groups will work fine.)
Then the connectors are in the wrong order, connector 0 should be on the top left not the bottom left and the pin numbers increase in order (as with an IC)
to do that copy the width from the tool bar, then set the width locked to height and scale stroke-width icons in Inkscape and select the entire breadboard image. Now replace the current width (circled in red here) with the saved width of the reference svg to rescale the svg.
then save the breadboard svg as it is done. On to schematic. Again this schematic will work but has a few issues. The label should be A (for assembly indicating this is a module) and the pins should be 0.1in long (not the current 0.2in.)
We need to set Keycap Button as the label and the sizes to 0.8in wide and 0.4in high (the height needs to be 0.1in larger than the number of pins)
Then we need to change to the Schematic Connectors tab and set the number of pins on left and right t0 3 each and set the other parameters as shown.
then click “finished” to commit the changes that brings up the next set of pins like this (note we are now doing the right side pins starting at the bottom of the right side pins)
Here the scale is set to the correct value (where drawing units are 1/1000 of an inch), the labels are all the correct colors as specified in the graphics standards document and the schematic svg is ready for saving. Now on to the pcb view
This pcb view would do, but it would be better to just not have the part have a pcb view (as it isn’t useful.) To do that we need to modify the .fzp file so lets move on to that. Starting at the top of the fzp file set the current (1.0.3 in my case and I think yours) Fritzing version by changing
as there will probably be more JacDac parts and we need to be able to differentiate between them. Now we need to suppress the pcb view. To do that replace
which was copied from the breadboard layer as pcb needs an svg to render even if we don’t want a pcb view and it will happily reprocess breadboard view. To suppress pcb view. Then we need to replace the current connectors with a new set that doesn’t have pcb view defined (and in this case change the order of the pins as well)
I have a python script which generates such boiler plate with blank description fields meaning I only need to add the pin labels to the description. I also changed the bus labels to reflect the pin name that they refer to for more clarity. That completes the part, so now run it through FritzingCheckPartw.py to clean it up and check it
Processing view pcbView, File svg.breadboard.JacDac Keycap Button_cf205303d297ba0950044bec99d14359_3_breadboard.svg.bak
has already been processed
but will be processed again as part of this fzp file in case of new warnings.
which shows no problems, so make and test the new part which results in this part:
First of all, thank you very much, I have translated everything and will take it into account for the other parts.
The part works excellently and the dimensions from the PDF printout also match the original part.
The “Breadboard” group always shifts when working with the internal parts editor. Maybe I need to work more in the xml file.
I suspect that the component editor does this too, in the order in which I click the pins to connect them to the graphic. So I want to edit the xml file here too.
I had determined the dimensions (35 mm x 25 mm) from the original using a caliper and entered them. But Inkscape must have scaled it. I can’t always say exactly what Inkscape does on its own.
I used an old template from Fritzing for the diagram. That was the MAX485 chip. The tool described is of course much, much better. Thanks for that too!
I’ll try to use this part and the instructions as a reference for the other JacDac parts.
For some reason parts editor loves to add groups. I usually start by either starting at the top group and ungrouping recursively til there aren’t any more groups (which has the benefit of removing most of the translates) before editing then use edit select all and group to form the breadboard group. I also rarely use parts editor and just edit the xml file directly.
me either, I have seen it do strange things many times!
Hello Peter,
I wanted to continue working on the JacDac components. I managed to do this with two examples thanks to your instructions.
But I absolutely cannot adjust the size of one part.
The breadboard view is simply about 2 mm too big.
When I look at the exported svg files, everything is correct. If I insert them into Fritzing, the “light sensor” is a bit larger.
Do you have any idea what I’m doing wrong?
Greetings, Harald!
Yep this is an easy one. Your svg is dimensioned in px, it needs to be in inches or mm. In px Fritzing guesses between 72DPI (Illustrator) and 90DPI (older Inkscape) but current Inkscape (which looks to be what you are using) is 96DPI which doesn’t match either so the scale will be incorrect. Changing the dimensions to in or mm here and rescaling the image to be the correct size should correct this.