First PCB design feedback

Hello,
I’m already a user of arduino and IOT devices but making a pcb is new for me.
I tried to make a small pcb for my IOT system.
It contains a ESP8266-01, DHT22, LDR (includes 10K resistor) and reset button.
Power supply = 9V with 2 voltage regulators: 5V and 3,3V

Is there somebody who wants to help me by checking my first PCB design and give me feedback?

Timo
LDR ESP8266 PCB.fzz (25.6 KB)

The PCB routing looks good but I can not see any reason why you would have both a 5V regulator and a 3.3V regulator. Further more you have the 5V regulator output going into a voltage divider made up of a resistor and your LDR. If the ESP-01 had a Analog input I could see you reading the value but it does not have any Analog inputs so all you are doing is holding the GPIO high all the time unless your LDR’s resistance goes below 5k and then it may cause the voltage to go low enough to trigger a low input. But again I can not see why you would be running it off 5V rather than the 3.3v. Maybe if I understood what you were trying to achieve it would make more sense.

1 use the 5V for all of my sensors on the board. (currently only 2 but maybe in future) and 3.3 for the ESP-01.

I was using ESP-12 at first but after some trouble i decided to choose ESP-01. did’t noticed that version doesn’t have Analog input so thats just a stupid mistake that i made :stuck_out_tongue:

Are there no options to sent analog data through ESP-01?
What is the main difference between 01 and 12 in this case?

You currently have two sensors, 1 being the LDR which would be fine running off 3.3v and your Humidity sensor which is also fine to run off 3.3v so unless you know you must have a 5v source I think you would be safe with only the 3.3v regulator. A lot of 5v stuff runs off 3.3v which also keeps the signal at 3.3v for the mcu (esp8266’s are 5v tolerant so not a big worry but others like teensy are not).

If you are really brave you can solder to the pads along the edge of the actual esp8266 chip but in all reality it is not worth it. I would recommend an ESP-12(any variant) but then you have to be comfortable soldering the SMD pads which are fairly close together.

Just more pins and the 1 analog input.

If you want to have lots of analog inputs you could look at an ESP32-wroom as it can use almost any pin as an analog input, pwm output etc. But the pads on the ESP32-wroom are even closer together and very hard to solder even with experience.

Your last choice would be to use more hardware. One possible way would be to use something like an Arduino Mini to read all the sensors and then send the data via the esp-01.

Personally I would use the ESP12.

i switched to ESP-01 because of the SMD.
But i already have 2 nodeMCU’s so i think i just solder a nodemcu on my pcb.

could you check if i connected LDR and DHT correct?NODEMCU IOT.fzz (28.1 KB)

Your only ground connection to the NodeMCU board is through the button which is not the best idea. You should have at least one trace connecting it directly. Even if it’s just putting a trace between the pins on the button.

Is there a reason why you have a 10k pullup on the humidity sensor that you did not have on the last version?

Now assuming that the NodeMCU part you used is labelled correctly I think you have everything connected to the correct locations.

With all of that said I would not use that NodeMCU part because of how small the rings are around the pins. I would also not route any of the traces between the pins either. If you move the NodeMCU board to the left and move all the parts from the left to the right you will have only 4 traces to route across the PCB instead of 15 which means you will have plenty of room to route them around the ends.

The last thing is GPIO16 (NodeMCU D0) is a special pin and may cause board resets if you try and use it.

For a first pcb board looks great, I remember my first project… LOL, just a tip for the voltage regulators, as shown in the picture use some capacitors in parallel, it works by stabilizing possible voltage drops.
Once because of a bad contact in the voltage input I had some power peak that resulted in a malfunction of a moisture sensor, maybe I burned his 555.