Wemos D1 mini PCB protective areas rotated


@tzn You did not answer my question “What needs to be modified”… What exactly would you like me to do to make a non-faulty FZ part. What size do you want the holes, rings, ect., or what ever else needs to be fixed to make the correct part. This is a five minute fix… Just give me some specification… other than, “per stated above”, numbers would be helpful…


Sorry for that, I’m still pretty new to this stuff, just working on some community project (air quality monitoring)

Anyway, what I usually do with Wemos is to solder standard, 2.54mm through hole male header. So to stack it on the PCB, something like this will be required (2 x 8 holes):

Let me know if I need to provide more details


I changed the drill size to the standard 1mm holes with 0.508 solder ring for the standard 0.1" (2.54mm) pitch headers, I set the breadboard view to male pins so it will attach to the breadboard. I did not touch the schematic or breadboard view. Is there any other changes you need? :relaxed: If there is a problem let me know… enjoy…
WeMos D1 Mini_v2.fzpz (41.4 KB)


Thanks, will check.

Another question: is there any way to update the parts so I don’t lose connections? Pin names are the same, I would expect that it should be possible to swap part somehow, actually there was a parts update this morning, wemos was updated, but I lost all connections. Took me 1h to get them back with all routing :frowning:


Sure, there are a couple of ways; After saving my part in FZ, save you project, close FZ and reopen for the metadata to take effect. Click on the WeMos, then in the Inspector, under headers, click (male pins). It should just swap parts and maintain connections.

If that doesn’t work;

After saving my part in FZ, go to \Fritzing\parts\svg\user\pcb and open WeMos-D1-Mini_pcb in a text/xml editor and copy the content. Open the other WeMos_pcb.svg part and past the content you just copied and save the .svg. You may need to save your project close FZ and reopen it to take effect.

EDIT: I just thought of another way to update the part if the first on doesn’t work… Let me know how it turns out.


These ones

Can you see the faults in the left 2 - V2.0s, ie no pins status indicators


The red only indicates that the connectors are assigned as male pins. If the pins are assigned as female then there will not be red. The breadboard has female sockets and only male pins and wires will connect to them… female pins will not connect to female sockets in the breadboard view. You can assign them either way or mix them (male and female pins) depending on what you are want to do with them. But you are correct, sense these are breadboard adapter boards, the pins should be assigned as male.


From memory the order of the pic was v2.0 male above, V2.0 female above, V1.0 male below, and your new male below.

Shouldn’t the other is male above be red.


The male above and female above was not referring to the pin assignment. I believe they were referring to the header type on top of the board in the breadboard view. The female above showed headers and the male above showed pins… It was just for visual prospective only… Confusing… :confused:

I would think the female above be red because it would have male pins below to fit the female sockets. But again, it was referring to the visual representation and not pin assignment.


@steelgoose thank you very much, first method worked perfectly! You are awesome, I never expected this to be fixed so rapidly. Great community guys!


So male above is NOT red centred, and male below is red centred.


Not really, the “male above” and “female above” have nothing to do the with the assigned type of connector. Apparently, when the author of the part, Mike Causer, drew them up, he added two rows of headers to the part “female above”, meaning headers on the top, and two rows of pins on the other one and called it “male above” meaning pins on top. Mike labeled these part male above and female above just to identify the two images (one with headers and the other with pins). Has nothing to do with the assigned pin type… Now, we have no idea what is on the bottom cause we can’t see the bottom… could be short pin, long pins or headers… It really does not make any difference as far as the assigned type of connector go… In real life you may have pins on the bottom to plug into a breadboard… but we are not in real life… we are in the virtual world…

In the virtual world, in the breadboard view, we want to replicate the real world and plug the little breakout board on to the breadboard… In FZ, in order to connect to the breadboard female sockets, the pin type on the breakout board needs to be “male”. In the breadboard view you can only connect male pins to female pins or sockets, you cannot connect female pin to male pins, female to female or male to male. After you connect the part with male pins to the part with female pins then that part becomes “sticky”. Just like when you move the breadboard around all the male part connect to it, stick to it and move around with it. Male pin type are identified by the red and female pin type are identified by nothing. Other than the breadboard view to connect one part to another and it being sticky, I can’t think of any other real purpose in them… In the schematic and PCB views, the male and female pins don’t appear to make any difference.

The pins can be assigned as male, female, or Pad. If you open up the part editor, in every view, you will see a male and female symbol and the word Pad, Every pin type can be changed individual to male, female, or Pad. You cannot change the pin type for just that view, when you change it in one view it is for all views. In the Connectors tab, you can change all pins at once by clicking on the symbol or Pad up by “Set all to:”. You can also change the pin type in the .fzp file by typing in “male, female, or pad” for each connector.

Personally, I would have assigned male pin type to both of them just so they could be connected to the breadboard…


Hello, I’m Mike, the original author of the part.
I’ve fixed the rotated pcb issues in my latest version (v3).

Will make a PR to merge that into fritzing-parts once it’s ready.
Will hold off until I work my way through the comments above and fix everything I can.

Sorry for taking so long to reply!
I wasn’t aware the Forum was so active and that so many people were having issues with my parts.
My github repo / issues is the best place to reach me, as I receive email notifications.

There is still this remaining issue:

How to handle parts multiple header configurations.

There has been some confusion as to why I chose the variant names “female above”, “male below”.
I was referring to the black plastic stackable headers.
eg. female above means Female 2.54mm stackable headers, sitting above the WeMos D1 mini’s 2x8 through holes.
The board is sold with various header configurations, and for project documentation purposes, I split the part into multiple parts.
When using Fritzing as a project documentation tool, the 4x variants let you visually describe your project more accurately.
When using Fritzing to design a PCB, do the 4x variants still make sense? Your thoughts?

If you can suggest an alternate naming convention, I am happy to adjust.
These names just made sense to me at the time.

I would like to maintain backwards compatibility as much as possible, for those using existing parts.
So, if replacing the current 2x variants with 4x variants is the solution, then I’ll check how the current patched parts have evolved and obsolete the matching parts.

The underside of the WeMos D1 is populated and contains several bulky parts, resistors, capacitors, usb-serial chip, micro usb socket.
I presumed if you were adding the part to a PCB, you would be soldering on stacking headers.
ie. you are designing a board similar to the Dual Base Shield, with the D1 mini sitting on top:

I have never used Fritzing for exporting to production, so there were a few issues that came up as a result.

  • svg parser in Frizing is different to a web browser (eg. Chrome) - I was using combined transform translate+rotate on a group, and only the first transformation was being used.
  • drill hole size - I am not sure what the correct size should be - I used a Sparkfun board as a reference.
  • 4x variants naming convention - I was focusing on Breadboard view. Names may not make sense in the PCB view.
  • original multiple parts squished/combined when merged into fritzing-parts.
  • inches, mm, svg dpi - if only we could all just use metric/SI units…

All of my .svgs are hand crafted, with a little help from illustrator. This keeps the svg succinct and precise.
I have noticed when parts are edited in apps such as illustrator, inkscape etc, they introduce all sorts of unused crap, and sometimes alter the precise dimensions.
eg. Illustrator sometimes changes cx=“3.6” to cx=“3.599”. Sure, 0.001 isn’t going to make a huge difference. Just illustrating (pun) that they can introduce side effects.

It would be best to use a git workflow for managing changes/revisions, as opposed to uploading .fzpz files.
If everyone is collaborating in the same place, it makes it a lot easier to resolve conflicts.

Recap - latest changes are here:

But not here yet: