ESP32 Gateway board is the second board designed using circuit tree application having following feature set:
- ESP32D-WROOM Module used.
- Mikro click connectivity on board. More details at https://www.mikroe.com/mikrobus
- 12V Power input for connecting DC jack.
- 10/100 Base T Ethernet port
- USB to UART cable connector for connecting FTDI USB to UART cable.
- Onboard regulators of 3.3v/5V along with control logic
- Switch and LED’s to provide status.
- 4 layer design
The board has been designed autonomously by Circuit Tree application. This design has been added in Example 4 in app-circuit-tree.com and can be customized/modified with any changes desired.
Here are some of the screenshots of the top/bottom SVG renderings.
esp32 gateway svg Top_Side
esp32 gateway svg Bot_layer
Bring-up test is underway for the board. So far initial tests show no electrical failures. We did miss on the silkscreen but that is why we need to automate more so that errors are minimized.
Design files and Arduino test code is uploaded at the Github link.
We are big fan of Python as it is extensively been used on most of our development tasks. One of our colleagues mentioned to create a third board using circuit tree having micro-python running on it. That sounded like a cool idea.
We wanted to build the board having feature set similar to the micro python 1.1 board. The additional constraint was to even have the interfaces and the dimensions the same.
Using Circuit Tree the design was loaded using command line entry through schematic. The Circuit Tree application autonomously completed these different activities:
- Interconnected the components specified in the requirement.
- Selected power, clock, reset components
- Selected discrete values needed by different components as per the electrical requirement.
- Generated the clean and error free schematic
- Accepted the board boundary which was the micro python form factor.
- Completed board placement. This placement had to be modified as some some components were placed far off. So human intervention was done here.
- Generated a two layer PCB design on it own. All the pcb routing, plane creation, Thick traces routing , length matching was autonomously. Here Human intervention was introduced to redo some traces. Human intervention was introduced to ensure that the design was correct.
- Gerber files were generated by the app after the silk screen was updated by engineer working on the program.
Using BOM component links the components were ordered. So yes it was minimal human intervention and feels good looking at the task circuit tree application is now able to undertake.
It is a two layer design with pictures below displaying svg of all layers, bottom and top layers.
Bottom side pyboard1.1
Top side pyboard1.1
And here is the PCB Fabricated using circuit tree application design:
The board is now under pcb assembly. Waiting patiently to get the boards so that we can load the micro python the board.
The PCB has been in India and this is the third board from us. Lots of learnings along the way.
We dream for the day when we are able to design complex boards (6+ layers, 400+ components including BGA components) using Circuit Tree application under 3 hours of effort.
If board design is a pain point for you write back to us what you would like us to solve.
New features and updates added in Circuit tree:
- Updated requirement editor which allows generation of variety of design using variety of components and blocks.
- UI/UX improvements.
- Placement engine update. The new engine is more efficient optimiser and produces placements and board outlines similar to a engineer on the project would do.
- Layout creation. The engine can now generate 2/4/6 layer designs depending on the complexity or requirement defined. BGA/small pitch components are easily routed.
- Designed three new boards complete with assembly. These boards have been autonomously designed at circuit tree with some manual help. It has been very useful and productive exercise.
More details of these boards in upcoming posts.
Boards designed with circuit tree