Kiln monitoring and fan control with ESP8266

(More detail to come)

This is a board I created to monitor kiln temperature and allow fan control with an esp8266

It features micro-usb input, a MAX31855 chip for thermocouple (type K) interfacing and two opto-isolators for control of a solid-state relay (pictured) or other purposes. I only need one, technically but I had GPIOs to spare.

I made three mistakes on this board that I would change in a redesign. The first is that I connected a resistor to GPIO2 instead of CH_PD. I have no idea why I did this, I think I was looking at the instructions for startup requirements and got something lodged in my head. Fortunately, this was easily fixed with the addition of a resistor. Second is that I wired the opto-isolators to be on when the pins on the ESP are pulled high. The opto-isolators would like 20mA which would require a 100 Ohm resistor and the ESP can happily sink 20mA but they can only source 12mA. Fortunately, they work well with the 12mA available from using 120 Ohm resistors but I did not have any of those on-hand so had to wait for those to arrive. The third mistake is that I put some silk-screen writing on the wrong layer and one of my components also had its silk-screen on the wrong layer. This could have been caught by inspecting the gerbers, of course but it’s non-critical so was overlooked.

Technically, the SSRs should be able to operate on 3-32VDC but I have had trouble getting this to work from a Raspberry Pi before, hence the opto-isolators.

Sorry about the screw terminal connectors. The ones I ordered never arrived and I have another batch incoming. I only need one for fan control anyway so this works for me.

This was my first real foray into working with SMDs. I was using a reflow air station. It worked well but I had some issues with the ESP. Because the PCBs are so flat, the solder paste pancaked and caused shorts and because there wasn’t much room for airflow, the paste under the board didn’t melt. I ended up using regular solder and an iron.

pcb1

pcb2