In this tutorial, you will design and build your own ESP32 board. Once you finish this tutorial, you will know all the essential steps to design and build any board you like. Let's start. You don't have to install anything. We will design our board directly in browser using software called EasyEDA. Go to EasyEDA website, they have number of different versions of the software, we are going to use this free version, it’s the standard edition, open it, we are going to create new project, and I’m going to call it ESP32 Tutorial. Save. We are going to change the size of the schematic, I’m going to use A3 format, and I’m going to change the title to ESP32 Tutorial, and I’m going to change the company name to FEDEVEL. We are going to rename the schematic and save the project. I’m going to create a title on this schematic page, so everyone knows what is this schematic about. Make it big, and maybe we can use bold. Nice. And now, find some documentation about ESP32. We need some reference schematics, which we will use, so we are going to build our schematic based on this ESP32-WROOM module. I copied the link to the datasheet, I’m going to place it into our schematic, so we can quickly find the datasheet if we need it. Okay. Now, let’s find the reference schematic. It’s down here. Open it, again, copy the link, place it into our schematic, it’s going to be helpful, because you may need to go back to this schematic couple of times, so this is a quick link to find it. There is one more reference schematic which we will use, and it’s from a little bit different module from this S series. I’m going to open it, I’m going to copy the link to the schematic, and place it into our schematic. Perfect. Save. Now, let’s have a look what we need. We need the module. So, go to LSC, LCSC part, and we are going to search for ESP32, WiFi Module, and find the one which is in the stock, so we will use this one. We need to copy this LCSC part number, and we will use it to find this part in the library, so we don’t have to create the symbol and print, we can just use them. Click on Place, and here it is, we have our ESP32 module schematic symbol in our project. Next chip what we are going to need is this USB 2 serial, so I’m going to find it. Maybe this is not what we want. Search again. Okay, so this is A02 revision, silicon revision, and we can use it, so copy, again, search in the library, they have it in stock, Place, and we have also this USB to UART chip in our schematic. Next, we will need this regulator. Copy, find it, again we are going to use the one which is most available. Maybe not this one, because this is only 800 milliamps, we would like to use this 1 amp, so select this, copy the number, find it in library, they have it in stock, click on Place and here it is. This is the regulator. Go back to reference schematic, next we would like to place there the USB connector, so search for USB connector, we would like to use the Molex one, and they have number of them. I used before one, this one, so we are going to use it again, okay, so use this, copy it, and find it in the library, place it into our schematic. I’m going to flip this. Okay. Go back to schematic, now we need this ESD protection diode, so copy it, go directly to the library, maybe they have it here, search for it, okay here it is, perfect, we can use it. I’m going to rotate, press spacebar to rotate, so select the text and use spacebar. Or you can use the icons in the toolbar. Next the transistors. Again, go directly to the library, try to find them, they have two, I’m going to use this one, because it’s more available, they have more pieces in the stock. Save the schematic, so we don’t lose our work. Now the buttons. Go to Switches, Tactical Switches, I’m going to use this one, C&K, we would like to use this 6x6 SMD button, Apply, perfect. Copy the number, go to library, find it, they have it in stock, place it into our schematic. Okay. What else we need? Capacitors. 100 nanofarad capacitors. Go to Capacitors, Multilayer capacitors, Ceramic capacitors, we are going to use these Samsung capacitors, 0402, 100 nanofarad, Apply. Which one is available? This one. Okay, 16 volts, perfect. We can use it, copy, find it, it's this one, okay? Place, press spacebar to rotate, and left-click to place it, and it is used also here, where the enable is and on the power. And it's also here close to this USB to UART. So, I'm going to copy it, we are going to place it close to the enable pin, then we need one on 3.3 volt, and we need one here. Okay. Go back to schematic, next 22 microfarad. And this one is going to be in bigger footprint, so I'm going to use 0805, 22 microfarad, Apply, okay 25 volt, 22 microfarad, we can use it, copy, go to library, and find it. They have it in stock, I can see it, and place it here. Let's have a look if 22 microfarad is somewhere else. It's also here, but but I think this regulator doesn't need 22 microfarad, I'm going to open datasheet of the regulator, let's have a look what they recommend. 10 microfarad. Okay, so, go and let's find 10 microfarad capacitor, we would like to use smaller one 0402, Apply, okay, 6.3 volts, that’s… Maybe we would like to use this one, 10 volt. Okay? Copy it, and find it. 6.3 volt would be like too close to the 5 volt what we are using, that's why I decided to use 10 volt. We need two of them, go to schematic, okay. What else, what other capacitors we need? Four point micro seven, 4.7 micro. Okay. Let's find it. 4.7, click on Apply, order based on availability, we can use this one, open it, copy the number, and find it. Place, and it's here, where the USB to UART is. Next, we are going to create these resistors or we are going to find these resistors, 0 ohm resistor. We are going to use this UNI-ROYAL brand, 0402 resistors, tolerance plus minus 1%, that's what I normally use. And we can use this one, that's exactly what we need. Copy, find it, and place it into our schematic. Okay, what other resistors we will need? 10K. Copy this part number, go directly to library, and we will just adjust this part number. So, we don't have to search on the website, this is much easier, much faster, 10K, place it, okay. Is there any other place? Here, we need also 10K, so SUSPEND. And here is also 10K close to the enable pin. So, we need to add two more 10K resistors. Copy, paste it close to the enable pin, press spacebar to rotate, and also place it here, so SUSPENDb. Next, we are going to use this 22.1, again I'm going to just find it this way, it's much much faster. Place it, it's close to the VBUS, press spacebar to rotate, and the other resistor is 47.5K, so I'm going to change this, place it, okay. Go back to reference schematic, next we will need this one 2K resistor connected to reset, but if we go into datasheet of this USB to UART, there are some recommended circuits. And when we have a closer look, they actually use 1 kiloohm pull-up resistor on the reset pin. They even say like in all cases, 1 kiloohm pull-up on reset pin is recommended. So, instead of 2K, I'm going to find 1K resistor, and I'm going to place it close to the reset pin. Somewhere here. Okay. Go back to reference schematic, next we need this resistor for the LED, and from my experience I will use 5.1K, because we don't want to have very high current flowing through the LED, and this 5.1K is just good enough to have really nice light from the LED. Not strong and not weak, just right. Okay, so next we can just find the LED, we would like to use basic part, so search for basic part, because these are cheaper for assembly. 0805, okay, place it, they don't have it in stock right now, but don't worry about this, because it just keeps changing. Save it. We are going to connect this switch. I'm going to move this. And I'm going to place ground symbol here, connect the capacitor, and copy and paste the ground symbol. I’m going to delete this, because this is exactly the same circuit, and this is just faster when we copy and place it, perfect. And let's have a look where we need to connect it to the enable signal. And don't forget this enable signal is also connected to this resistor and capacitor. So, I'm going to move it, and now we have two same capacitors here, so we can delete one. And if needed we can adjust the value of the one which is already there, so if needed we can use 200 nanofarad. I'm going to connect this pull-up to 3.3 volts, so I'm going to rename this to +3V3, okay, I'm going to move it little bit, don't forget use snap again, this is very important, and I'm going to call this enable, EN. Okay? And I'm going to connect it here. So, once I use exactly same name, these two nets are going to be connected together. Perfect. Next, I'm going to connect these two capacitors, they are connected to the 3V3 pin, maybe little bit up, okay. Copy the ground symbol, paste it, paste it, copy the power symbol, paste it, and next we can connect the ground. I'm just making it little bit nicer. Okay. Copy the ground symbol, paste it, paste it, perfect. Now, we are going to connect all these other pins, so I'm going to simply just copy this. This is easy to do. IO20 is not used, I will just delete it little bit later. Okay, delete this, delete this. Now, name this, and this is actually input only, so I'm going to call them inputs. Name rest of the signals. Almost done. I'm going to rename this to transmit and receive. Delete this, and it's done. Perfect. Save. Next, I’m going to explain, why I use this input. If we go into datasheet, and when we find the pin description, here you can see, these pins they are actually inputs. Okay? That's why I call them inputs. And they are 36, 39, 34, 35, 36, 39, 34, 35. Okay. Next, we are going to connect this USB to UART, so I'm going to start with ground pins, that's the simplest connection, and it's also closest to the symbol, that's why I often draw it at the beginning. Okay, next the reset signal. Connect it to this pull-up, and connect the pull-up to 3.3, then SUSPEND, press spacebar to rotate, copy, paste. Next, I'm going to make a note that this resistor is not fitted by default, or not connected, so very simply I just place here this text, NF, not fitted. And I'm going to use italic. Okay. So, I will know that this resistor is not fitted. VBUS, we are going to connect VBUS, we are going to connect this voltage divider to ground and VBUS, so I'm going to move it little bit to make some space, draw it maybe like this, put here the resistor divider, connect it, one is going to be connected to ground and the other one is going to be connected to VBUS or +VBUS. Plus 5-volt VBUS (+5V_VBUS). I always put there also the value of the voltage, so I know what we would measure there. Okay, perfect. Save. Next, we are going to connect these decoupling capacitors. So, place it may be like this, connect it. Perfect, and connect the power. Done. I'm going to connect the USB pins. I'm going to call this one USB positive and this one is going to be USB negative signal. And be careful, be sure you place them correctly, okay? Positive, plus, negative, minus. We have connected the USB to serial, now we are going to connect this USB connector, so the VBUS is connected to VBUS, and ESD diode D- and D+ are connected both to ESD diode and to the USB signals. So, I'm going to move this little bit, and I'm going to add one more extra component here, I'm going to add this 100 nanofarad capacitor. Just in case we need to do some filtering. I'm going to connect the ESD diode to the VCC pin, I'm going to connect the capacitor to VCC pin, we are going to connect the ESD diode to ground, and also I'm going to connect this capacitor to ground. Okay, D- signal, D+, connect it to ESD protection, and connect the VBUS power symbol. I'm going to move it little bit up, and we are going to connect it to the USB to serial chip, so paste it here, be sure positive is, positive is placed on the plus, and the negative is connected on the minus signal. All this is going to be connected to the ground symbol. Copy and paste, paste, paste, perfect. We have connected the USB connector, now we are going to connect this RX, TX, DTR, RTS. We need to connect them to this USB to UART chip, so go to our schematic, I'm going to copy this, and I'm going to name these nets. DTR, TXD, RXD, RTS, and let's connect this. Remember how it is connected. So, I'm going to move it, flip this transistor, that's very important, don't forget, the arrow has to be like this, connect it, now connect this up here, connect this one up here, okay, almost done. Go back to schematic, DTR, RTS, so copy, paste, copy, paste, enable IO0. Copy enable, and we will place the IO0 later. Next this, so I'm going to draw the signals here, move it little bit, copy, paste, copy, paste, this is just faster, and they are all same length, it looks nice. So, TXD0, RXD0, I'm going to copy them, press Ctrl to do a multi-select, RXD, TXD, copy, press Ctrl and put it this way. This is again very important, okay? RXD, RXD and TXD, they are swapped, watch this, okay? RXD, TXD0, RXD0, TXD. That's what we have here. This is connected, now the LED, they have it connected to the 5 volts, but I'm going to connect it differently, because we would like to be sure the LED will be on only when the 3.3-volt power supply is working correctly, so I'm going to connect it to 3.3 volt and ground. Be sure LED is oriented this way, okay? It's very important. Now, this regulator. So, the input pin has to be connected to the 5 volts, and the output pin 3.3, and then there is the ground pin, so I'm going to flip it, rotate, now flip, so the input is on the left and output is on the right, and we can connect it. So, I'm going to draw the signal somehow maybe like this, okay. I'm going to copy it so it looks nice, it is same. Place the capacitors and place the ground. Okay. Copy, this is the output, and here I'm going to just call it +5V. We will connect it little bit later, okay? And we also need to connect this to ground. And this one, connect to the output. Perfect. Now, we are going to make the connection between the +5V and the VBUS, and I'm going to use this jumper, so I'm going to find this pin header, one row, three pins, 1.27 pitch, like this, and then we will simply just use a jumper to switch between different power inputs. So, place it maybe like this, okay. In the middle, we would like to have the +5V, and then on one side, we would like to have the VBUS, so if jumper is between pins 1 and 2, then the board will be powered from the USB, and on the second pin, the second pin we are going to connect to this header, it is the external 5-volt power supply. So, if you place the jumper between pins 3 and 2, then the board will be powered from the header from the external power supply. Perfect. Now we are going to connect this IO0, and I'm going to connect it little bit differently, because it is split between two different circuits, or three different circuits basically, so what I'm going to do, I'm going to place here 22-ohm resistors. I'm going to copy this resistor name or part number, and I'm going to change it, and I'm going to find the 22-ohm resistor. Like this, search, see it's 22-ohm resistor, they have it in stock, place it into our schematic, and this, this is called series termination, it can be helpful to minimize reflections and improve quality of the signal. Especially because this signal is splitting to different places, that's why I use it here. And you can also disconnect these resistors, if you will have problems or something. So, this will go to the connector, and this one is going to be connected to the switch, and to the transistors. Okay. You see the connector pin will go here, and this button will be connected to the switch, and also to the transistor. So, I'm going to copy it, and I'm going to place it here, and also here. Perfect. Now, let's have a closer look on this capacitor, here it is called C15, because I've seen in documentation there was some, there was a note about this. So, here when you go down, you will find this note about C15, this component may cause some problems, so they actually recommend do not fit it, so what I'm going to do, I'm going to place here the not fitted text on the top of this capacitor. We are going to connect the connector, so basically what we need to do, we need to find these headers first, I'm going to search for little bit different header, we don't want to use 19-pin header, we are going to use only 17-pin header, so number of pins 17. Pitch is standard 2.54, and number of rows is one. Let's see what they have in stock. Okay this looks good, copy, and find it in the library, paste. We are going to use only 17 pins, because that's enough for our board. In the original module, they don't really use all the pins, because they have two, two variants for the ESP module. I'm going to copy the pins from the module, and I'm going to place them or connect them to the header like this, and do exactly same with this other side, paste it here. Okay. See? We don't really need like 19-pin headers. Okay, so we have connected all the pins, same way as they have them in the reference schematic, next we are going to connect ground, and again, I made small changes. I would like to have more ground pins, so we will connect two ground pins on each of the headers, copy the ground symbol, and paste it, and only what left are powers, so first I'm going to connect this external 5-volt, and also, we would like to use a capacitor close to this power pin to filter the power. I will use same capacitor also for 3.3-volt, so copy and paste it here and here, and connect these pins to 3.3-volt. So, copy 3.3, paste it, I'm going to move this a bit. And 3.3 also here, connect it, move it. Okay. It's connected. Save. We have connected this, we have connected this, this is just different variant for different module, we don't want to support this, it’s not connected, we have connected this, also this, this is also connected, also this, and we have not connected this diode, but instead of this diode, we use this header. Now, let's go to this different reference schematic, S2 module reference schematic, and compare what they have here, so this is connected very similar way, these are not connected so we can ignore them. I just would like to, you know, see how this other module is connected, maybe if they have some different connection. Here they use 10 microfarad, and on this enabled pin, they use 10K and 1 microfarad capacitor. In our schematic, we actually use 100 nanofarad capacitor. So, why there is this difference? Let's have a look into datasheet. What they recommend here? Down here they have this peripheral schematic, and on enable pin, they recommend this kind of circuits, and here is a note, it is advised to add an RC delay circuit at the EN pin. The recommended setting 10K, 1 microfarad. That’s what they have in this S2 schematic, but in this schematic what we are using, they only use a 100 nanofarad. It's okay, we will use 100 nanofarad for now. If it's needed, we can always change it for 1 microfarad. Okay, what else is in this S2 schematic? This one is not connected, so we don't need to care. See? They connected the LED to the 3.3-volt and used 5.1K resistor, that's exactly what we used. So again, here they use 10 microfarad, that's what we used 10 microfarad as recommended in the datasheet. They do not fit these 100 nanofarad capacitors close to the switches. This is connected exactly same way as we have it, and on this GPIO18 they have this additional LED. So, what we are going to do, we are going to add user LED on this GPIO18 pin, so I'm going to search for red LED, again basic part, we can place it, this is going to be LED, which we can use for simple testing. It is always useful to have user LED on the board. And this time I'm not going to use 5.1K resistor, I'm going to use little bit different one, because this is connected to the output pin, so we will use 560-ohm resistor. This is the kind of resistor what you may normally see connected to LEDs. Okay, and we would like to connect it to this GPIO18, so I'm going to find it, copy and paste it here. Okay, let's go back to this S2 schematic. What else they have here? So, in this USB to UART, they have this extra 1-microfarad capacitor on the divider, which we don't have, so again let's have a look into datasheet of the USB to UART converter, what they recommend here. This is what we are using, self-powered connection, and they don't recommend any capacitor, so let's leave it as it is, and we are not going to use this. But I know for this USB to UART chip, there is something special, there are errata, it means there is problem with silicon, and there is this, there is this USB power on reset problem, and what they recommend, they recommend to use this kind of circuit, so what we are going to do, we are going to add this circuit to our schematic, in case you would need it. So, I'm going to search for some transistors, this is like super standard transistor, I'm going to find it, or mosfet in this small footprint, they have this one in stock, I'm going to place it here and here, we need two of them, I'm going to make some space. Okay. Now, I'm going to move it little bit, and I'm going to connect this here, and this one here. Okay, I'm going to connect these together, I'm going to put here a pull-down resistor and a capacitor, and I'm going to connect all these to ground. Let's go back to the errata, okay, be sure the transistors are connected correctly. So, the arrow is connected to ground. Okay? And we also need to connect it to a GPIO pin, so I'm going to use this series resistor, 1K series resistor, and I will connect it to GPIO23. Copy, paste. Before we actually can use GPIO23, we need to provide option to manually use this circuit, so I'm going to find this 2-pin header, which we will not fit, but we can use these pins of the header to make short circuit and activate this special circuit by ourselves manually before actually you program the GPIO23 pin. So, I'm going to place it into our schematic, and you can use for example tweezers or something to connect pins 1 and 2 together and activate the circuit. Okay, almost done. Perfect. They are not fitted by default, so I'm going to copy this not fitted text, and I'm going to place it here. Okay. Only you may want to fit them when you need it in case you have problems. Most people should not have any problems. I'm going to put titles to each of these blocks to make the schematic look nice and, and it will help to read the schematic, so everyone will know what circuit, what each individual circuit is doing, so this is power input selection, I'm going to move it, okay. Okay, copy this, I'm going to name this 5-volt to 3.3-volt. This one is going to be power LED. This is something what will make your schematic more professional. User LED, USB connector, USB to UART or to serial. These are just to handle the serial signal, buttons. These titles are super useful, because for example, when someone have a look on this schematic, they immediately know the chip in the middle is USB to serial, they don't need to search for datasheet or have a closer look on the pinout, they immediately know what it is doing. This one is the ESP modudel, and these are the headers. I'm going to call it connectors. Okay. Make it little bit nicer, move it. Perfect. Next, have a closer look at these reference designators, they are kind of random, so what we are going to do, we are going to reset them. Notice now, they are just designators with question marks. Some of them we are going to name manually, so these are for example headers, normally I'm using J for headers, so this one is going to be J1, and this one is going to be J2. These are going to be J3, J4, so instead of H I'm using J, that's not many people use. And all the other components, we are going to annotate automatically, so we don't have to do it manually. You can see J4 is still there, and now they're automatically named based on the position in the schematic. Nice. Notice these reference designators for each component, because it can be useful when we will be doing layout, it's useful if all the components in your schematic they have exactly the same reference designators as I have them here. Save. Now go and convert the schematic to PCB. There are some errors or something. So et's have a look what is it. Okay. So, these are unconnected pins, we have to double check, but this pin is not connected, so we are going to use this not connected flag, and let's have a look if it helped. 48/72, when we refresh 48/71. It helped. That's the problem. So, on U2, we are going to find all these unconnected pins, and we are going to place this not connected flag to all these pins. This should fix the warnings from the DRC check. Okay. Refresh. Okay much better. Only the warnings from U3. Place this on every unconnected pin and refresh. Fantastic! No warnings, no errors, no warnings. I'm going to move this little bit up, so it looks nicer. Okay. So, 48/48, it means everything is okay, now let's try convert schematic to PCB, and okay, save it first. And the moment of the truth… Yes! We can start working on our PCB. This is how our board is going to look, here are all the 3D models from all our components, and now we need to design the PCB. I'm going to change the unit to mils, I'm going to move all the components little bit down, and we are going to change the board size. Put here 1 000, 1 000, 2 500 and 800. Watch what is going to happen. Apply, and this is our board. Be sure you are going to use these 100-mil grid size and snap 5 mils. I'm going to move this J1 connector, don't forget to place it on the bottom layer. Watch the position, okay. Use exactly same position. Move this on the bottom layer, press spacebar to rotate and place it here. Again, watch the position, it's very important. The distance between these two connectors, it needs to be 700 mils. Next, I'm going to move or I'm going to placethis ASP module. Again, watch how I'm going to place it. Place it exactly the same way, okay? Now, USB connector, place it into middle of the board, and on the edge. Now the switch, press spacebar to rotate, watch the position, and place it exactly same way. This will help you if you place it into exactly same position as I have it, then it will help you in the placement and in the layout. Okay, do exactly same for this second switch. Next, this USB to UART chip, be sure pin 1 location is in the right bottom corner. The position again it needs to be exactly same. Change the snap size and use arrow down to move it little bit. Okay, perfect. Change the snap size back to 5 and place this regulator a little bit here. Okay. Perfect. Save. Now, we are going to place the components around the regulator, so these capacitors, select C1 and use this Cross Probe, okay. Now, we are holding the capacitor, press left-click to place it, and press right-click to cancel the movement command, okay? It's very important. So, select it, use Cross Probe, now left-click and right-click, and move it somewhere here. So, this one is close to the output from the regulator and C1 is close to the input pin of the regulator. We are going to hide the reference designators. Okay. And we can continue with the placement. Place this C4 close to the USB to UART chip. You can see where the power pins are, so press spacebar to rotate. Okay. And also 100-nanofarad capacitor, again place it close to the power pins of the chip. Press spacebar to rotate. Next, this divider. So, left-click, right-click, this one, left-click, right-click. Press spacebar to rotate and move it. Next the reset pull-up. They are all connected to the pin on the top of the chip. You can see where it is connected. And this pull-down. Perfect. Save. Next, we are going to place these components close to the USB connector, this ESD protection diodes, they need to be very close to the connector. So, this one is for the power. Then this capacitor close to the connector and close to the ESD diode. Again, this one needs to be close to the connector. And the last ESD diode. Okay. Next, place the decoupling capacitors for the module. I'm going to place them close to the module maybe like here, and also 100 nanofarad somewhere here. Okay. Ideally, maybe we would like to place these capacitors very close to this 3.3-volt pin, but you know there is no really space on our board, and we don't want to place it on the bottom, so we will place it as close as possible, that's why we place them here. Next, the capacitors which we use to filter the power on the connectors or on the headers. Again, they need to be placed close to the pins. So, let's place this one close to the +5 external power. Next capacitor is going to be close to this J1. And the last one is close to this J2. Okay. Now this header. We would like to place it somewhere here, because this is the place where all the three powers are easily accessible. Now, the power LED. We can place it maybe like somewhere here, again close to the power. And we need also this series resistor. Press spacebar to rotate, place in here, okay. You can easily connect it. User LED, let's place it on the bottom down here, so it looks nice. We will have the power LED and user LED in nice places. Series resistor. Watch how the components are connected, watch these lines. And the lines are showing you where the pins need to be connected. Now, this pull-up, but we need to place it maybe somewhere here. It will be somewhere on the way between the module and switch. Okay. Place it same way, okay, as I'm doing it. It will help you when we will be doing the layout. Now, these components for the USB to UART, so they need to be placed close to this chip. The transistor spacebar to rotate, watch the connections, and think ahead how you are going to route these connections. I'm just making it a little bit nicer. You know, so the components they are nicely placed on the PCB, aligned together. Okay. This resistor and the transistor. Okay. Double check the connection, and again, think how you are going to do PCB layout, how you are going to connect everything together. Okay. These resistors, they are close to the connector, so I'm going to place them here maybe like this. And also, the second one maybe like here. These series termination resistors, again, place them close to the connector, so it's going to be connected here, I'm going to place it, maybe spacebar to rotate, maybe like this. And the second one is going to be close to this one. Okay. Now, this capacitor. Here is some free space, so I'm just going to place it somewhere here. And also, we need to place there this circuit, so here is some free space for this header. Again, this header is not going to be really fitted on the board, we just use the pins to short them for example with tweezers. And all these other components, I'm going to place on the bottom layer, default they are not going to be fitted, but we don't have really much space on the top side of our PCB, so I'm going to place them on the bottom. And they need to be very close to the USB tracks. When we will be doing layout, we would like to have this, the pins of the transistors directly placed on the track. So, there are no stubs. That helps the quality of the signal. Okay. This pull-down resistor, I'm going to hide some layers. I can see little bit better. Maybe like here. Okay. The capacitor. This is very simple circuit, which is just helping to filter some glitches or peaks on on the signal which is switching off the… Switching off and switching on the transistors. Okay, I'm going to switch off all the layers what we don't need, save it and double check how it looks. Nice. Really really nice. This is how your board is going to look when you build it. We are going to set up some basic design rules before we start doing the layout, and we need to double check this with capabilities of JLCPCB, so search for JLCPCB capabilities, go on the website, scroll down and find the minimum via hole size, for multi-layer PCB it’s 0.2 millimeter. And when we change these to mils, it's 8 mils. So, our drill diameter is much higher on mils, so it's okay, and minimum via diameter is for multi-layer PCB 0.45 millimeters, that’s 18 mils, so double check if the hole, if the via diameter is bigger what we are using 24 mils. Now, the track width and clearance is, minimum is 3.5 mils and we are using 10 mils, so it's okay. They will be able to manufacture our PCB. Go to Layer Manager, we are going to add two more layers, so our PCB is 4-layer, and I'm going to set them to planes, and now go on layer 2, it's called Inner layer 1 and connect it to 3.3 volts. And layer 3, which is called Inner 2, is going to be ground, just double check if it's ground, okay perfect. If you would like to learn more about how to set up correct rules, how to decide on PCB stack-up, or how to decide on layers, how to route tracks, check out our online courses. We have courses in different software, in KiCAD, Altium, Cadence, we have got this for beginners or professionals about hardware design, PCB layout, EMC, measuring and more. Just go to fedevel.com, you may find there something interesting for you. Now let's go back to our board and let's continue. We would like to use snap size 10 and routing with 10 mils, and we are going to start doing PCB layout. Just use left-click, left-click, right-click. Okay? So, left, left, right, left, left, right, left, left, right. Okay, and do fanout of all the pins from the module. This here and also on the top. And then we will place the vias. Almost done. These are all the signals what we need to route. Now, use the via button and left-click to place it. Now, left-click to select it and double check the size of the via, 24 and 12 mils, that's what we are using, okay. If the size of the via in your PCB is different, then adjust the size, okay? Change it to 24, 12. Perfect. Next, we are going to connect these two pins together. We are routing them on the top layer, now we will use a via to go on the bottom layer, and continue on the bottom layer. Always where the pencil is, that's the layer which is active where you are doing the layout. I'm going to change the snap size to 1 mil, so we can go closer to the object like this, okay. Left-click, perfect. Now, we are going to connect these two pins together, so we would like to route and left-click, left-click, left-click, watch how, how it is suggesting where it is going to route. Okay. And the white edges are basically the clearance. That's the space what we set in the design rules. That's the space around our tracks which is required, the 10 mils. Left-click, left-click, left-click, left. Use mouse wheel to zoom in, zoom out. And if you would like to pan or move the PCB, use the right button on mouse. Okay. Perfect. The next one. We need to go around this header. And left-click, connect this, left, left-click, left-click, left-click, left-click, and I see there is something with, I'm going to move it, just press left button, hold it down, and move the track to adjust it. We would like to place ground vias, but first, I'm going to set the color of the net, so we can see what nets are grounds and which are the power. So, we can easily see what pins we need to connect to the ground planes and power planes which are on layer 2 and layer 3. Okay. And we are going to place the vias, because if we would be routing tracks in this area, then we would need to reroute them later, so first place the vias, and then we can reroute, we can route around these vias. Because we know we need these vias here in this place. So, I'm going to place them. When you are placing vias use grid 5 mils, because then it's easier to align the vias. If you use 1 mil it's like super hard to be sure they are on same level. Now when we will continue doing layout, now we can go around these vias. Okay. Perfect. And we don't have to reroute the track. If we would route the track first and then we would place the vias, we would have to reroute the track. It would be just additional work. Again, here are some powers what we need to connect or some grounds. So, I'm going to place vias also here. Before we continue doing layout in this area. And also here are some pins which are connected to ground and 3.3-volt, so place the vias also here. Change the grid back to 1, for layout it's really useful to have grid set to 1, because then you can go very close to the objects when we are routing the tracks. Go around the vias and connect these pins together. Okay, double check how it looks. Look good. Maybe we would like to move this little bit closer. Watch this yellow X, that's when there is violation. See? When I place the track very close to the vias, you see this yellow Xs, it means it's too close. So, when you are routing and when you are moving or adjusting the distance between the objects, always watch for this yellow X. And be sure there is no violation. There is, there is still a violation, I can see. Okay. Okay, this is moving too close, because it means there is a violation somewhere, so I'm going to have a look. Oh, there it is. Okay? Now, it's better. Okay. Perfect, perfect. Okay. Let's continue. I'm going to connect this. Okay. Okay. We need little bit of space here, so I'm going to move this little bit. Change the snap size to 5 to move the via, and now back to 1 to move the tracks. Okay. Okay. Okay. See? There are many ground pins and power pins, so we need space there, and there is no space to continue routing, so I'm going to route this little bit closer like this. I'm making space for the next track what we need to route from the module. Okay? And now, I'm going to place this vias here. One ground, second ground and place the vias. Okay. Connect next pin. Now we have enough space, so we can go like this around the vias, left-click, left-click. Looks good. And also, we need to connect these ground pins, so place ground via here, and also here. This is not ideal connection, ideally, we would like to have this connection as short as possible, but there is not really space, so we have to use this kind of little bit longer track to connect this decoupling capacitor or this filtering capacitor. Okay, connect this one, go around the vias, left-click, Save. This is too complicated, so now let's go down here, we are going to connect the pins which are here. These are super easy. So, direct connection on the top layer, this one we need to go down here and go on the bottom layer, and route it on the bottom. Perfect. And now we can continue. So this one needs to go and we need to go up to connect the series termination resistors, so I'm going to place this via and route on the top layer, connect this to resistors, okay, connect this one to the header, make it nicer maybe like this. And continue with the next signal. Route as close as possible, because we don't really have much space on the board, we need to be sure all the tracks will fit. Left-click, left-click, okay. Next one, super easy. Just draw the connection on the bottom layer and connect the pins together. Again, super easy, left-click, left-click, left-click. I'm pretty sure you know what to do. Oh! This is little bit more complicated, so we are going to route everything on the bottom, and then where this LED is placed, we will use a via to go up and connect the LED. So, connect this first, now we are going to connect the pad to the track on the bottom, so we use a via. Go on the top layer and connect it. Perfect. Next one, next one is simple one. Left-click, left-click, left-click. Again, simple one. We have connected almost all the pins from the module. Only few left. Left-click, left-click, okay. Now, I'm going to connect it on the top layer like this, and also, connect this one same way, so on the bottom, and then connect the resistor on the top. Okay. Save. Next, we are going to connect these signals for the serial port, and go on the top layer, we would like to route these pins, the pins are very close to each other, so we need to go to the rules, and we need to change the clearance to 8. Okay, we should be able to route now, okay, perfect. So, left-click, left-click, left-click, okay like this. Move this little bit down and do exactly same for this receive signal. Don't forget to go back and change the clearance to 10 mils, because rest of the board we would like to have routed with clearance 10 mils. And we would like to connect these resistors, so place a via here, we need to move the track on the bottom, so I'm going to change this little bit. We need space to place the via. Okay. Now place the via. Let's have a better look on the bottom layer, and connect these vias together. Perfect. Next, we would like to connect this ground pin. So, we need to place a ground via maybe somewhere here. I can see the, it's very close, so I'm going to move it little bit. Okay. Make it nicer. Connect these two pins. Use spacebar, if the suggestion is the other way, use spacebar to change how it is suggesting to draw the track. If you don't know what I mean when you will be doing layout, use spacebar, you will see what will change. I'm going to connect also this power and the ground pin. Again, place the vias on the same level, because this helps us when we route all the signals horizontally on the bottom layer, then this helps us to save some space when all the vias are in nice row. Okay, go around the vias. Now you can try using the spacebar, so you can see what I was talking about. Try spacebar like this. See? Okay. This looks good. Let's place rest of the vias here. So, these are the vias which are going to bring the power to the second layer, which is our 3.3-volt plane. This is the resistor from the LED. This is the bigger capacitor, 4.7 microfarad capacitor for the module. This is the decoupling capacitor from the module. And maybe we would like to place one more via here. It's not really necessary for this design, but I would like to use it here to, to show you that when you will be routing your own board, you may want to consider to place more vias for power. Sometimes one via is not enough. Okay, and now let's connect this signal, this really complicated signal which is connected to many different places. Okay. We just have enough space here to go around all the vias. If in your case you don't have this space, you need to move or adjust some of the vias or tracks. There should be enough space to connect all these tracks. Left-click, place a via. And now we would like to connect this together. Okay? Let's try it. First, I'm going to connect this, so I can see how much space I have in this area. It will continue like this way, to this capacitor, okay, and now the enable. So, let's continue, connect it to this pull-up, and to this capacitor, transistor. Okay, I can see now there will be a problem. There is not enough space between the pads of this transistor. And we will not be able to route it. We need to change this footprint, so we need to change the transistor. Let's go back to schematic, and let's have a look what other options we have, I'm going to find same transistor in the library, there are two. Oh, watch the footprint, this one is bigger, bigger, smaller, bigger, smaller. So, let's use this one. I'm going to place these other transistors. Use the same name as we already have in the schematic. I'm going to swap this or flip this, delete this one, place it here, delete this one and place it here. Okay. Now, save and we would like to synchronize our schematic with the PCB, so go to Design, Update PCB. Here you will see all the changes what are going to happen, so be sure this is also checked, Apply changes, click on Settings. The old transistors are gone, and these are the new transistors. I would like to hide the reference designators, and I'm going to delete these existing tracks, it's easy to reroute these tracks when we place the new transistors there, so just delete everything, and place the transistors. Press spacebar to rotate, place it maybe like this. Okay. The second one, and you can already see the pads are much smaller, there is much more space under the transistor, I hope it will be enough or what we need. So, let's try it again. First connect this. Okay. Now let's see what will happen. Left-click, and nice, we can easily go and route the tracks under this new footprint. Connect this. Okay, we can even fit there this second track. This is very nice, because we don't need to change layers, and this makes the layout much much easier. And let's connect the rest of the signals. Okay. Okay, we need to change the clearance to 8, so we can route these pins which are very close. Okay. Connect also this pin. Okay. Don't forget to change the clearance back to 10. And almost done. Perfect. It was like complicated part of our PCB. Let's connect this, this is super easy. What else? This. Okay, down here. Now it's quick. Okay. This together. Little bit later this will be replaced by polygon, so right now we just would like to connect it, because we would like to run DRC check and see if everything is connected. These vias are not connected, we need to connect them to ground, so select the via and write here ground, these are the vias which are directly in the footprint. Name every single via, and when you name it, it will automatically connect it to ground. Okay, almost done. What is next what we need to connect? I'm going to save it. Next, this pin. So, let's connect it to ground, left-click, and place via, okay. This, connect it. Again, little bit later here we will draw a polygon, because this is power, for powers maybe you would like to use polygons. Same here. Connect it, but later it will be replaced by a polygon. Basically, this is… We are routing this to give us an idea, how the polygon will be created later. Drawing the polygons is little bit more difficult, so it's easier for now just connect it by track. Again, we are going to work with this chip, so I change the clearance to 8 mils, so we can connect these pins. Okay. Next, the USB signals. Be sure you use this snap size 5, so we can nicely align the vias and the tracks. Okay, place the vias. Maybe they are too close to each other, so change the grid to 1, and move it like this. Okay, perfect. We can also connect this ground pin. And also this power. Maybe like this. We can change the clearance back to 10, because the chip is now connected, and let's continue. We would like to finish this USB connection, so I'm going to move this ESD protection little bit further, because we need little bit more space. Especially for the power. For the +5V VBUS. Place the vias. We are going to finish these USB signals, so search for USB impedance, we would like to route them properly, and it's recommended to use 90-ohm differential pair impedance for USB tracks. Search for JLCPCB stack-up, click here, and we would like to use 4-layer stack-up, this one, remember 3313, 1.6-millimeter thickness, go to impedance calculator, and we would like to calculate impedance for 90-ohm, 4-layer stack-up, 1.6 and differential pair, here select for example 6, and for 3313 stack-up, it suggests 5 mils. I'm going to change this, 6 mils, so we would like to use trace width 6 mil and trace space 8 mil for our USB. Go to design rules, and we are going to add a new rule for USB where we are going to use the track width 6 mil, and the space or clearance is going to be 8 mils. Okay? Via 24, 12, and we would like to apply this new rule to the USB signals, so select them and select USB, Apply. Okay. Click on Settings, go on the bottom layer, and we are going to route these USB signals. Be sure you are routing with 6-mil track width, and the space will be automatically 8 mils as we set this in rules, and this is what will help us to route these tracks with 90 ohm differential pair impedance. The rule. Perfect. This is not connected, so I'm going to connect it. Okay. We need to also connect this chip, so it's exposed pad is going to be connected to ground, so I'm just going to place there the ground vias. And I just placed these ground vias on these pads from the switch, because the vias will automatically become the ground net. I don't have to manually write the net name into the via. It's just easier and faster. Okay, the last one, perfect. Looks good. Save and only few connection left, so I'm going to connect these pads from the switch or from the switches. Okay. And also these two. Okay, just vias. Next, I'm going to connect these pins to ground, and there is this +5V_VBUS, so I'm going to place this ground via somewhere here, because we will use the space for for the polygon, power polygon. Okay. Connect also these. Almost finished, almost done. Connect this, place the vias. We also need to connect this to ground, and this. I'm going to move it little bit. Just select it and use arrow up and arrow down, okay it is still on the track. I'm going to move this little bit, so let's have a look how much space we have on the top layer. I'm going to place this ground via here, again, double check what is on the top layer, okay. And we would like to connect also ground pins here, there is a lot of space, so we can just connect it like here, here and here. I'm going to make it little bit shorter like this. Perfect. Now, this connection is missing, so left-click, left-click, left, left, left, okay, and we also need to connect this. Left-click and connect this one. You can use backspace, if you click and you need to cancel the last click, you can just use backspace. And here are few unconnected pins, so I'm going to connect this, via, go on the bottom layer, and we need a little bit of space. I'm going to move this. Reroute this, okay, now we should have enough space. Perfect. I will make it little bit nicer. I like it. Here are unconnected pins, so I'm going to connect them, move it maybe a little bit, and this, and also this, we need to connect it, so go around these components, go on the bottom layer, we would like to find some place on the bottom layer, maybe we can route it like this. Okay, and connect it. Okay, let's have a look how it looks. Fantastic. Save, go to Design, Check DRC, but before we run it, we would like to adjust the rules, because where the chip is there would be many problems, so run DRC check. Oh, there are some errors. Let's have a look what they are. These vias are little bit smaller than what we use, we use 24, 12 and they are 19 and 11, so I'm going to change it to 24 and 12, and we need to do it for every single via in this footprint. So, just very quickly, I'm going to change them. 24, 12 Because these vias are part of the footprint, it's little bit tricky to work with them. But maybe if you find faster way how to do it, then you can do it also faster way. But I just change them one by one. Okay, done. So, now let's try again. What is going to happen? Oh, still two errors. This one is too close to the component, so I'm going to move the component little bit, just 1 mil, okay. Perfect, and what is this? There are some missing connections, so we need to connect this, and also this one. And the layout or everything should be connected. Perfect. There is still 47/48, what is this, refresh. Okay 48/48, now it's good. Perfect. Double check if everything looks okay, maybe move some of the tracks, make it nicer, go through your PCB, okay? Before we start doing anything else just be sure all these tracks are… Okay, forgot to change the clearance to 10. We need to, need to move this again. Okay, perfect. Okay. So, go through all the tracks in your PCB and make them look nice. Okay, maybe this, I would like to move this. Because in PCB, they don't like these sharp corners, in PCB manufacturing. So, I just move it the way, so there is no the sharp angle. Okay. Now, we are going to create the polygons. We would like to connect it to ground, and we are going to create this as the first one, it’s very simple one. Left-click, left-click, left-click, right-click, select this polygon, you need to… You will see when it is highlighted like this, okay, left-click, and change the connection to direct. This is what we would like to have. Okay, be sure the copper area is visible in your setup if you don't see it. Now, do exactly same for this external power, connect it to +5V external, left-click, left-click, left-click, left-click, left-click. Again, in case you make a mistake or wrong click, then you can use backspace to correct it. Draw it similar way as I do it, go around the pads what we would like to connect, maybe like here, and then right-click. Select it, direct, sometimes the selection of the polygon is tricky, so you just need to find the right place, where you will see it highlighted. We would like to adjust or correct this polygon. So again, select it, and you can drag these points to adjust the shape like this. Don't forget to rebuild the connection. Okay. Next one is going to be this +5V. This is a simple one. Left-click, left, left, just go around the pads. Okay, almost done. Left-click, left-click, left, right, select it, direct, okay looks good. I need to correct this little bit, move it, move it, rebuild. Okay. Next, this one, +3.3V. This one is super complicated. I'm just kidding. Okay, I am going to play with this grid. Okay, this is good one, 2 mils. Go around the vias, you don't have to go around all these vias and tracks and pads, but I like to keep the full control over the space, which is between these other elements your PCB and the polygon what you are drawing, that's why I just go around the pad and the other things. Because if you go too close to other nets with this polygon, it will automatically keep the correct clearance when it will fill up this polygon with the copper. So, theoretically you don't have to go around all these, but as I said, I like to have full control over the distance between the polygon and the other object, so I draw it around them. Around everything and I always double check it if there are no spaces, where the clearance was automatically adjusted. Let’s do the polygon here. I will show you what I mean. I will draw this polygon, I will draw it from here like… Left-click, and I will draw it close to the pads, you will see how the copper will be automatically adjusted. Let's finish it. Again, go around the via, left-click, right-click, okay. Now, see where is the edge of the polygon, and when we have a look for example here, you can see how the copper was adjusted, so I'm going to change the shape of the polygon. Okay, now it's better. Okay. Draw this big polygon for +5V_VBUS. Always play with the grid, because when I'm drawing polygons, it's easy to work with bigger grid, so everything is aligned nicely. But sometimes I need to use smaller grid, so I can go closer around some of the objects. Okay, almost almost finished. Maybe like this. Too close. Like this. Left-click, left-click, left, right, okay. Change the connection to direct and double check. Okay. Here I would like to adjust this little bit. Again, full control over the copper inside of the polygon. That's what I like. Save. Double check if we didn't make any errors, again, don't forget to change clearance back to 8. Okay, everything seems to be fine. We would like to use also proper impedance for standard tracks, normally it's 50 ohms, so we are going to find out what kind of track width we have to use for 50 ohms and for our stack-up. It's like 6 mils. And what we are going to do, we are going to select all the tracks, we would like to work with the tracks only. Be careful, do not select the board outline, okay? And I'm going to change the width of all these tracks on our PCB, I'm going to change it to 6 mils. So, this way all the tracks what we'll be using will have 50-ohm impedance, which is standard for PCB layout, and also the space or distance between the tracks on our PCB is going to be bigger, which is better. But now we have to also adjust the track width for the powers, we don't want to use 6 mils for the powers, so I'm going to change it to 21 mils. For this power pin, I'm going to use two vias, again, it's not maybe necessary for this design, but I would like to point out that in your design, you may want to consider in some cases to use more vias on power pins. Make this ground winder, also this one and this one, use control to select more tracks or more connections. Check how they look. Looks okay. Maybe here I would like to draw polygon, ground polygon, because this is the output capacitor from the power supply, so we would like to have like very good connection between this ground pin of the regulator and the output capacitor of the regulator, so I will use this ground polygon. Select it, use direct connection, okay perfect. Now, let's continue. Select this ground, this one, this one, this one, this one, make them 21 mils, it's good, okay. This one maybe needs to be adjusted little bit. So, I'm going to make some space, maybe move this like here, okay. Rebuild and move the track. Okay much better. Much much better. Perfect. Next, make this winder and this one, 21 mil. This one is going to be little bit thinner. 8 mil. Okay. Select, select, select, select, okay. Select all these, make them 21, okay, and on the bottom, these are little bit thinner, 12 mils, and this can be 21. Because the pads are really big, so we can use 21, but on the transistors, the pads are thinner, that's why we use 12 mils. Select all these other connections 21. 21, this one is going to be thinner, 12, and it looks like we updated all of them, so look for blue color and orange color if all the blue connections and orange connections are wider. Perfect. Maybe this one, make it wider. Save. This time we have to change the track width to 6, because we updated all the tracks to be 6 mils and run DRC check. There is one error, so let's have a look what is it. This track is too close. I'm going to move it little bit. Okay, try again, perfect, no errors. Save. We are going to add some text, so we are going to work on this top silkscreen layer, and we would like to know what are the capabilities of the JLCPCB, what is the smallest text what we can use, and minimum line with 6 and height 40, so I'm going to change in here, line width 6, height 40, and this is the minimum text JLCPCB will be able to manufacture. So, I'm going to place this power text close to this LED, because this is power LED. Okay. Same text I'm going to place close to the header, so when the jumper is on this side, the board is powered from the external power, and when the jumper is on the other side, the board is going to be powered from the USB. Okay. Now, name for the second LED, that’s the user LED, and it's quite close. I think the LEDs are not in exactly same place, I'm going to move it little bit. Select it and use arrows to adjust the position. Okay. Now it looks okay. Let's have a look what happened with the connections. I'm going to reroute them little bit so it's nicer. We have to use 6 mils, okay, and let's check this one, 6 mils, and this one is 21 mils. Delete, 21, and connect it. Okay. Next, this is the boot or user button, I'm going to rotate the text, maybe 270. Okay, be careful, do not place it on the pads. This one is reset button, place it down here, again don't place it on pads, okay? This is the header for the manual reset of the USB connection. And I'm going to also mark the headers, so when someone is holding the board, they know which one is J1 and which one is J2. Okay, and also I like to mark pin 1 of the connectors or the headers, so I'm going to place them here and here, maybe it's too close, so I'm going to move this and also this. Check the connection, okay I will reroute it. 21 mils, okay. And also this second connection, perfect. I'm going to create small marks, one, two, three, four, five, I'm going to place this mark between the pins five and six, and it's going to be a small rectangle. It's very useful when you are using these connectors, you don't have to always count the pins. You know this is pin five and six, I'm going to move it little bit, now copy and pick where you would like to hold it when you do paste, one, two, three, four, five, left-click, and one, two, three, four, five, left-click. Do exactly same also on the bottom. I'm going to move it little bit like this, again Copy, pick it, Paste and Paste. Perfect. Save, we have all the text on the top layer, go on the bottom silkscreen, and we are going to add pin description. I'm going to call this one IO33, and I'm going to place it like this. Okay, close to this IO33. Now, we are going to copy, and we are going to place it close to every single pin on our connector. I'm going to copy more of them, so it's faster. Copy, Paste, and just name it based on the pins, so this one is ground, this one is 3V3, enable, input 36, input 39, 34, 35 You can see on the pins what they are. This goes over the header, we will move them. Just finish naming all these pins. Okay. Move this little bit. Ideally use arrows, because then it will only move in one direction, and also select these two and move them away from this through hole pins. Move this one down, we would like to have it align, all the text what is on the top and bottom, copy this, and again, copy and paste this. Do it for all these pins, you know exactly what we are going to do. We place them here, then we will copy all these, and we will paste them here. Now, rename all the text based on the pin name, and if needed then move it little bit like this one, we don't want to have the text through this through hole holes, because it would not look very nice, and finish naming all these pins. It is very useful to have it there, because then people don't have to search for documentation or open datasheet to, you know, to know what kind of pins are connected there. Everything is on the board, all the information they need. Almost done. Okay. We are going to add few more information, first make this little bit bigger, 12, 80, and I'm going to put here copyright and the year when the board is going to be released. I'm going to place it here, I'm going to put here the company name, so everyone knows who created this board, and don't forget the board name and version of the board, so I'm going to call it FUN32 V1I1, and I'm going to place it here. And I'm going to make advertisement for the courses what we make, so I'm going to put here also this “ONLINE COURSES” text. Okay, if you would like to learn more about hardware design, PCB layout then have a look on our online courses, just go to fedevel.com. Nice. Go to 3D model and double check what we have created. Wow! This is super cool. I really hope you like your board what you have created. Now, we would like to manufacture our board, so go to PCB fabrication and check if everything is okay, if there are no errors, generate Gerber files, here they are, you can see it, go to JLCPCB website, click on Instant Quote, upload the Gerber files what we have just generated, it’s in zip file, once they are uploaded you will see your board, and we will only do few changes here, so leave all these default, I would like to change the PCB color to black, and also we would like to use impedance control, yes, and our stack-up is 3313, select it, okay, it’s this stack-up, and here we are going to select the layers, so the top layer, then inner 1, inner 2 is in the third layer and the bottom layer. Okay, it's same ordering what we have in our PCB. If you go here, it's inner 1, inner 2. Okay? That's what we have there. I'm going to use surface finish ENIG, if you like you can use LeadFree HASL, it's a little bit cheaper, and now we need to go and generate the BOM for the assembly. So, export this, see the file was created, and also we need pick and place file for the assembly, Export. Okay. Go to the files what were generated, open the BOM, and we are going to unfit the components, what we don't want to have there, so C13, R8 and J5. Okay, so delete C13, change the quantity to 8, delete the R8, change the quantity to 4, and delete this J5. We don't, we are not going to fit the components which are on the bottom, so we don't need to remove them from the BOM. I'm going to just make this nicer, okay, and I'm going to save it as our prototype version, don't forget to select the CSV format. Save, okay, go back to JLCPCB website, enable the assembly, this is our board, we would like to only assemble the top side, click on Yes, Confirm, they need to add little bit to the PCB to be able to make the assembly, so it's okay, Add BOM File, select the prototype BOM, which is the one where we remove the components we don't want to assemble, select the pick and place file, click on Next, they just would like to fill something here, so I'm going to put here like YouTube video. Next, and 22 parts detected, 22 parts confirmed, so everything is in stock, we can go to Next, and this is how our board is going to be assembled, okay, notice for example these components are not fitted, and also on the bottom these components are not fitted. Everything seems to be okay, so Save To Cart, and we can order it. Go to checkout, address is okay, you can play with this different shipping method, some of them are cheaper, some of them are expensive, I'm going to use DHL, Continue, I'm going to use PayPal, here are some coupons, so I'm going to select this one, so I get discount. Total price 117, click on Pay, okay, I use my PayPal to pay for this and it's ordered. Now, let's wait, and when we are waiting, we would like to buy the components what we may need, for example the transistors, which are on the bottom, so I go to Farnell, that's what I normally use, but you can use also DigiKey or something what what you normally use to buy components, I'm going to copy the name of the transistor or part number of the transistor, I'm going to search for it, because these components will not be delivered, okay, with your board. You need to buy them separately, because they are not fitted. I'm going to buy 10 pieces, let's have a look what else we need, 10K resistor, I'm going to copy it, search for it, okay, I'm going to, oh alternative product, it's fine, 10K, 0402, 1%, okay we can use this one. Next, we also need this resistor, it’s the 1K resistor, so search for it, no longer manufactured, okay we can use alternative, but this one you can really buy them in low quantities, so this one looks okay, 10 pieces. It's 1K, 0402, 1%. Perfect. We also need the capacitor, 100 nanofarad. If you have these components in your stock, you don't have to buy them, but I would like to show everything what I need to build this board, so 100 nanofarad, 16 volts, 0402, buy it. Next, what else we need, do you know? Headers, we would like to buy the headers, and I'm going to buy special headers, so if you like you can use same part number, this one, and these are the headers which will go through, so there will be pins on the bottom of the board, but there are also the, you can also put wires on this or inside of this header. These are super useful for debugging. So, I'm going to buy them, and also we need the cap for the jumper, again, use this part number, and we need this for the power header, so order this. Okay, go to checkout, and buy all these missing components. The transistors, resistors, okay. Some people may not need all these components, maybe the board will be working fine, for most people, board will be working perfectly fine, some of them may experience, or some of you may experience with ... error when this errata is applied, so you will need them. So, I just received this email, where I need to confirm the assembly, let's have a look what they have here, and from my experience even if this looks bad, they will always fit it correctly, so just submit this and Ok. We have received our boards, here they are, don't forget to remove the part of PCB, which was needed for board assembly, let's have a closer look on the board, double check how it is soldered, also double check unfitted components, have a look between the pins if there is no short circuit, pin 1 position, double check also the anode and cathode on the LEDs, and again, have a look if there is no short circuit between the pins, on the bottom components are not fitted. Also, measure the resistance of the power rails on our board, it must not be short circuit, do it also the other way around. Okay, perfect, no short circuit. Now, don't forget to place the jumper, this is very important, and we are going to connect it to power. I have this special device, which is showing the voltage and the current through USB, and also, we will be looking on the green LED. Green LED is on and the current is 0.02 amp, I'm going to measure the voltage 4.5, 3.3 volts. Yes! Now, search for Arduino, Home, Software, download the Arduino IDE and install this software. Just follow the default installation, it's super simple to install it. Start the Arduino IDE and go on this website. Scroll down, and we are going to follow these steps. File, Preferences and copy this, and place it here. In case there is already something, just use comma, okay? Now, also have a look into Tools, Board and Board Manager, and we need to search for ESP32, okay, and you need to install this. I already have it installed, but you need to install it, and then when you go to Tools, Boards, you should see this esp32, and there should be this ESP32 Dev Module, that's what we will be using. Search for Device Manager, open it, we would like to see if our board is detected by our PC, so when I connect it, we should see it here. Okay. There is, there are these ports and COM8, very important, remember COM8, that's the port where our board is connected. Close the Arduino IDE and open it again just in case to initialize it properly, go to Examples, Basic and Blink Example, we can close this, I don't need it anymore, the default LED, Arduino LED is connected to pin 6, and our user LED is connected to GPIO18, so we need to add few lines of code, I'm going to add this, copy this and place it here, here and also here. Okay? We need to connect our board, so search here for esp32 dev module, it needs to be checked, and also the COM8 port needs to be checked, okay, board is connected, now compile and upload. And if everything is working fine, we should see the LED blinking. Yes! Our code is working. In case you have problems with COM port, you can fit, you can try to fit all these components on the bottom, and then when you will be connecting USB, use tweezers to short these two pins and it should help. Now, little bit more complex example, search for WiFi, SimpleWiFiServer, and put here information about your WiFi network, and also we need to change this, our LED is connected to pin number 18, 18, 18 Our LED is connected inverted, so I'm going to change this, and put 18 also here and here. Now, go to Tools and open Serial Monitor, and compile and upload. Once it is uploaded, go to Serial Monitor, our board is connected to WiFi, copy this IP address, go to your web browser, paste the IP address and watch. When I click here LED is off, LED is on, off, on. So, we are controlling our LED through website. If you like, you can watch this video, there are more examples and it's like super simple to follow it. And that's it. That's everything for this tutorial, I really hope you design and build your own board and it's working, if yes fantastic job. Well done! Now you know everything important to start designing your own project. If you would like to learn more about electronics, check out our online courses. You can find there courses about KiCAD, Altium, Cadence, there are courses for beginners and also for professionals, about designing boards, PCB layout, EMC testing, measuring and more. Just go to fedevel.com. Please, don't forget to leave your comments, and let me know if you like this tutorial. Thank you very much for watching and see you next time. Bye!
…..Thank you. I’ve been strongly considering taking this step with a project that I made 6 different times and still need to make another 6. I’ve been putting it off because of the significant learning curve, but I think this makes it much more doable for me. Thank you again.
I love your videos. I am only a hobbyist but following you I have been able to design and build my first smt pcb from scratch. Keep up the good work!
This is Art
Well shit, I totally wanted one of these. Thanks, Op
That's really cool! Thanks for sharing your knowledge.
Well, I’ve got three hours to kill, maybe I’ll give it a go.
Dude! I've been searching for something like this!
Am I missing something or did it really cost $170+ for 5 boards??