BEGINNER: first PCB project

Hi folks - I have created a few Arduino projects so far - one simple one being a wifi device to control my fire place.

It's a reasonably simple design - an ESP8266 board (this: https://www.amazon.com/HiLetgo-Internet-Development-Wireless-Micropython/dp/B010N1SPRK/ref=sr_1_4?keywords=nodemcu&qid=1563551510&s=gateway&sr=8-4), with a small transmitter.

I connect 8266 VIN to transmitter vIn, a data pin from the 8266 to the transmitter, and ground from the transmitter back to GND on the 8266. Then I plugged the 8266 into micro usb, and soldered an antennae onto the transmitter.

It works great!

...But it's all on a solderless breadboard that I'm afraid my kids are going to break.

I would love to learn how to transform this into a PCB I order. (and also to draw the schematic which I'm sure would be easier to read that my description above). Some questions:

  1. Any good tutorial links out there? Some basic google searches didn't give me obvious starting points.

  2. I tried using Fritzing, but I looked for an ESP8266 part - I found one, but when mapped to the breadboard, it's wider than what I actually have -- what I actually have takes up width from columns b to i on a mini breadboard, leaving pins a and j open for connections. But the part I found takes up the full width from a to j. Seems like starting out by trying to design a custom ESP8266 fritizing part is not the best way to go about this (and I'd also be surprised if someone hasn't done this....?).

  3. Dumb question - is it possible/easy to manufacture a PCB that has a .... I don't know the word....pin slot to accept a NodeMCU board, so I could get the PCB made, flash the ESP8266 the same way I do now, then just put the ESP8266 into the "pin slot" on the manufactured PCB board? Or is this a bad way to do it?

Thanks in advance for your help getting going! I'm excited to learn!

You mean using the ESP8266 as a piggy-backed daughter board? Very good way to do things, commonly done to integrate pre-existing modules robustly, either using headers or sometimes directly via SMT mounting (small modules with edge-crenellations).

You need to define the package footprint and pin-out to the PCB package, if you can't already find one.

Another way to do this is to use something like this: https://www.amazon.com/Solderable-BreadBoard-matches-breadboards-1-85in/dp/B00LLO4Q7W Which means you just transfer the breadboarded layout directly.

A purpose made pcb, however, can have a ground-plane and be more compact and tailored to fit in a particular enclosure.

Thanks Mark - yes I do think I'm saying as a piggy backed daughter board.

Which means you just transfer the breadboarded layout directly.

Ah I see - so I would design a PCB with a solderable breadboard but just leave space for the node MCU, then solder that as a daughter board on?

You need to define the package footprint and pin-out to the PCB package, if you can't already find one.

Any good resources or tutorials for me to start learning how to do this? I thought fritizing would be good, but got stuck on step 1 trying to find the ESP8266 part.

Perhaps you could purchase one of these boards to see how it has already been done? Highly recommended, Dr Azzy is a regular contributor here.

With respect to designing your own pcb, forget Fritzing, it is a complete and absolute waste of your time. What you need for the task is an EDA toolset, of which the choices are many. There are many, high end, very expensive ones such as Altium and OrCad and just as many free, online systems but many most captivate you into use their board house at prices they set. There are only a few, both capable and free ones out there, the most notable being KiCad.

If you want the ultimate flexibility in being able to have your boards built anywhere, you’ll want to use a tool like KiCad which is open source and completely free. Eagle was popular for many years in the builder community, as there was a free but limited board size version and all of the Arduino boards have been designed with it but now that it is owned by AutoDesk, the free version is crippled and no longer as popular as it once was.

You’ll find there is quite a learning curve but there are tons of online tutorials. DigiKey has a very good series of YouTube videos on KiCad, well worth the time if you don’t have any experience in the area of EDA tools.