Stacking a board onto another

ESP8266 | 2020-07-12, 03:27:00

The power supply I've made here was designed with a stacking structure in mind, to add an on-top board with microcontroller logic.

There are two reasons for stacking boards: space availability and PCB manufacturing constraints (the bigger the board, the more expensive).

Designing a stacked board

There's no magic software to design a board to fit onto another.

If you look closely at my power supply design, I've left some holes for mounting spaces and screws, and I've soldered female pin headers.

The easy way to do it is to design a template with fixed dimensions that can be reused in subsequent board designs.

Then, you copy-paste the project into a new one and start making changes over the copy.

Now you can build at least two boards and keep a safe back-up template.



You can stop the design at a certain stage, save and reissue a copy to work with, up until you get to a point you know which parts of the circuit won't change since they work.

The footprint of the 8266 is available here. It needs no improvements.

A working circuit for the ESP8266

First of all, of course, it is mandatory to read the datasheet.

I like clean voltage filters, so the 3.3V line is filtered with a 10uF - 1u - 100n - ferrite - 100pF filter. This should remove whatever transient the voltage regulator might send.

This SoC is very power-hungry so I placed a big 47uF capacitor near it. The worst problem it has are the start-up peaks for the wireless module, which can trigger the watchdog to do a brown-out reset.

It needs two reset switches, one for the normal reset and the other for the programming mode, with their appropriate pull-ups.

There's also a 12k resistor routed for the internal oscillator, a resistor divider for the 1V ADC and a jumper for the wake-up trigger pin during sleep.

I have had designed this board to test several things, some chips on the i2c bus, the SPI and on the SPI bus, a lora module with an 868Mhz printed-on-copper antenna.

These aren't very relevant, so I won't go into detail. I suggest using 1k2 resistors for the i2c bus since it has to travel lot of board space with relevant data and the usual 3k3-4k7 allows a too small current.

If you need the 3.3V line again, add more capacitors.

Before powering on the board, check for short-circuits with the multimeter, proper insertion and the soldering.

After powering it on, check the voltage, do a blink, run the i2cscanner if useful and run the wifi_scan example.

As you can observe, the 3.375V margin falls short under this load.

I do not suggest copying my two-pin rail pins. I remember my teachers asked me during the presentation of my graduation project why do I keep shorting jumpers in my designs. I find one pin wouldn't provide as much stability as two and it would make the soldering much more difficult.

'ESP8266 won't detect my WiFi network'

There are several clones of clones.

Examine these carefully. I've added an ESP32 to the right, to notice the same issue.

The antennae's impedances are adapted using smd inductors and capacitors.

The good/wide bandwidth module is the model on the left. I suspect removing the extra capacitors from the model in the middle should allow the full range of 2.4Ghz on 20 and 40 Mhz channel.

It could be an oscillator issue as well.

Leave Comment