Like I promised on last post here will be the first code with what I was able to get the sensor to work and PCB design that I used to order custom ones from China.
Prototype of the PCB
I wanted to little more permanent sensor while I will wait the PCB's so I can start to create firmware and little home automation software. I went and bought 3.3V 1117 voltage regulators to connect 5V power supply to the creation. I have micro USB cables and some old electronics power supplies. For this I re-used my dismantled IP-Camera power supply.
Prototype had same wiring as the breadboard design. Below is pictures of the prototype up and running.
I haven't done any PCB design in many years. Last time I think was at school. I wanted to get the order going so I just Started the design without that much reading. Parts for the design were micro USB for the power, 3.3V 1117 voltage regulator, connector for the ESP8266 ESP-01, connectors for GPIO0 and GPIO2 with ground and 3.3V, connector for FTDI serial to change the firmware and switch to ground the GPIO0 while you upgrade the firmware.
I want the GPIO pins to have connectors so I can change the sensors if I want. Also I want the board to be reusable so I need to be able upgrade firmware easily. I ordered small switch that use same pin size as the connectors 2,54mm. Easier to design the board.
I'm not going through the steps. Below is pictures from kiCad 3D-viewer back and front.
I used JLCPCB service because there were some recommendations in few youtube videos for it. Their site did not recognize text on backside correctly when it was mirrored. Mirrored is the default on kiCad on backside and that's why text on back side is mirrored in picture. Its mirrored because its not mirrored. Errr... moving on.
Code and next step
Now I need to wait the boards from the JLCPCB. On the meantime I can start to with my own home automation software. I think it will be on Raspberry Pi and done with NodeJs and MongoDB but will see what I can get to work.
Code and the kiCad files can be found in my GitHub.