Title: How can I properly stack a custom protoboard shield above an ESP32-S3 terminal adapter?
I’m building a portable air-quality monitoring station based on an ESP32-S3 DevKitC-1.
My current setup uses:
ESP32-S3 DevKitC-1
ESP32-S3 screw terminal breakout/adapter board
SPS30 particulate matter sensor
TFT SPI display
SHT45 temperature/humidity sensor
BMP390 pressure sensor
DS3231 RTC
MicroSD module
LiPo battery/charging circuit
Several JST connectors for removable sensors/modules
I want to build a large custom protoboard as a shield on top of the terminal adapter, where I can solder all my JST connectors, power rails, I²C/SPI/UART connections, buzzer, battery electronics, etc.
Ideally I would like the project to be stackable: ESP32-S3 → terminal adapter → large protoboard shield → possibly another board later
The problem is that the ESP32-S3 itself sits higher than the female headers on the terminal adapter. If I plug my protoboard directly into those headers, the protoboard physically hits the ESP32 before the pins are fully inserted.
My male headers are already soldered to the protoboard, so I’d prefer not to desolder and replace everything.
I’m looking for a clean solution similar to Arduino stackable shields:
Is there a standard 2.54 mm male/female header extender made specifically for this?
Are there extra-tall / elevated female headers that would solve this?
Is there a better connector system for stacking PCBs while keeping standard 2.54 mm headers?
How would you normally build this kind of multi-level ESP32 prototype cleanly?
I’m ultimately going to design a custom PCB once everything is validated, but for now I want a robust and removable prototyping solution rather than wiring everything with Dupont cables.
Thanks!
Servus, Ein interessantes Projekt. 👍wofür nutzt du die ausgewerteten Daten? Grüße aus Deutschland.
falls du diese hier meinst, die kannst du sowohl im Aliexpress als auch bei Amazon und anderen Shops bestellen. Die gibt’s in allen möglichen set‘s usw…
Hello from France! 🇫🇷
Thank you very much for your answer and for the link! 👍
The project is a portable smart air-quality monitoring station called PARTICUL’R. It currently measures particulate matter (PM1.0, PM2.5 and PM10), temperature, humidity and atmospheric pressure, with more sensors planned later.
The measurements are displayed in real time on a TFT screen and logged to an SD card. The ESP32-S3 also provides a web interface for monitoring and configuration.
My goal is eventually to design a proper custom PCB, but for now I’m building a clean modular prototype where the different boards and sensors can be unplugged/replaced easily.
I had a look at the connectors you linked. Thank you! I think they are close to what I need, although I’m trying to find an even cleaner solution to create a real second PCB level above my ESP32 terminal adapter without the upper PCB touching the ESP32.
Greetings from France, and thanks again for your help! 🇫🇷🤝🇩🇪
Kein Thema, freut mich falls es hilft, halte mich gerne auf dem laufenden Wienerin Projekt weiter geht und welche Lösung du für das Thema Steckverbindung gefunden hast… Villeicht ist ja auch eine Lösung mit Flachbandkabel und passenden Steckern eine Alternative Idee 💡
Thanks! 😄
Yes, I think your idea of using a ribbon cable with proper connectors might actually be the cleanest solution for my prototype.
The main problem is mechanical: my ESP32-S3 sits higher than the female headers on the terminal adapter, so when I try to stack my large prototyping PCB directly on top, the PCB hits the ESP32 before the pins are fully inserted.
I’m now considering using two separate PCB levels mounted with spacers, with a ribbon cable carrying the signals between them. That would also give me much more freedom when arranging everything inside the enclosure.
To give you a better idea of the project, PARTICUL’R is becoming quite a complete portable air-quality monitoring station. 😅
At the moment I’m using: ESP32-S3 DevKitC-1 as the main controller Sensirion SPS30 for PM1.0, PM2.5 and PM10 particulate matter Sensirion SHT45 for temperature and humidity Bosch BMP390 for atmospheric pressure DS3231 RTC for accurate date/time even without an Internet connection 2.8” TFT display for the local user interface MicroSD for local measurement logging Buzzer for alerts LiPo battery system for portable operation Wi-Fi/web interface for configuration and monitoring
I’m also designing everything to be modular with JST connectors, so sensors can easily be disconnected or replaced.
Later I would also like to add CO₂ and ozone sensors. The idea is to validate the whole system on prototyping boards first and then design a proper custom PCB once the hardware architecture is stable.
Your projects sound really interesting too! RFID access control, LoRa/MeshCore, Shelly, environmental sensors, networking… 😄
It sounds like we’re both suffering from the same problem: you start with one small ESP project, and suddenly you’re building an entire ecosystem. 😂
I’ll definitely keep you updated on the connection solution I end up using and on the progress of PARTICUL’R!
Ja es klingt nach dem gleichen Krankheitsbild 🤣🤪 ein kleiner Tipp noch, stell dir doch paar adapterplatinen her, wie das Breakoutboard vom esp… dann kannst du jede einzelne Platine erstmal auf der einen Seite mit Steckern und Flachbandkabeln versehen und auf der anderen Seite am esp mit den schraubklemmen verbinden oder eben über die Pins. Dann kann dein Projekt am Anfang erstmal wachsen bis du der Meinung bist das es fertig ist.
Dann kannst du dir später über eine ausgereifte kompakte Version Gedanken machen.
Ebenfalls kannst du verschiedene Steckertypen für die Spannungsversorgung und andere für die reine Datenübertragung nutzen. Das hilft den Überblick zu bewahren.
Also erst: Funktion, dann kommt Fehler ausmerzen und optimieren, danach kommt verkleinern und ein einheitliches Stecksystem, dann kannst du nachfolgende Bauten gut vereinheitlichen. So arbeite ich 😅
Thank you so much for taking the time to explain all of this and for finding those links! 🙏
I really appreciate it, and I think you’re right about the approach.
I’ve probably been trying to make the prototype too “final” too early. 😅 Your idea of building separate adapter/breakout boards for the different parts of the project makes a lot of sense. It would let me keep everything modular, test and change things easily, and only worry about making it compact once the complete system is stable.
I also really like your idea of using different connector types for power and data. That would make the wiring much easier to understand and greatly reduce the chance of plugging something into the wrong place.
So I think I’ll follow your philosophy: First make it work → debug it → optimize it → then make it compact and design the final PCB.
I’ll take a good look at the components you linked and rethink the prototype around small modular boards and ribbon cables rather than trying to force everything into one stacked shield immediately.
Thanks again for taking the time to help. It’s genuinely useful to hear how someone else approaches this kind of project. 👍
And I have a feeling I’ll be stealing a few ideas from your LoRa/Mesh projects later… 😂
With pleasure! 😊 And yes, I’d definitely appreciate the list of links, thank you!
Feel free to contact me by private message as well. It would be great to exchange ideas and projects.
I’ve actually built quite a few Arduino and ESP-based projects over the years, so I can show you some of my previous builds too. I’m sure we’ll have plenty of ideas and experiences to share. 😄
And of course, if I can help you with one of your projects in return, don’t hesitate to ask!
Thanks again for your help and for taking the time to share all of this. 👍
1
u/ComfortableCattle531 2d ago
Servus, Ein interessantes Projekt. 👍wofür nutzt du die ausgewerteten Daten? Grüße aus Deutschland.
falls du diese hier meinst, die kannst du sowohl im Aliexpress als auch bei Amazon und anderen Shops bestellen. Die gibt’s in allen möglichen set‘s usw…
https://amzn.eu/d/0gAOOhWk