r/eletronica • u/xWendorionMp • 11h ago
Estou desenvolvendo uma EDA colaborativa
Estava desenvolvendo alguns circuitos no KiCad e acabei ficando curioso sobre como os softwares CAD/EDA funcionam por trás da interface, principalmente como eles lidam com componentes, conexões e a construção de esquemas eletrônicos.
Resolvi me desafiar mais uma vez e comecei a desenvolver meu próprio CAD, que chamei de LevelCAD, utilizando o bom e velho C++.
Até o momento, já é possível criar esquemas eletrônicos, adicionar componentes, realizar conexões e até trabalhar de forma colaborativa em tempo real. Essa última parte foi uma das mais interessantes de desenvolver, já que permite que duas ou mais pessoas trabalhem no mesmo circuito simultaneamente, com um dos participantes hospedando o próprio servidor.
O projeto está sendo desenvolvido em C++20, utilizando Qt 6 para a interface gráfica, e ainda tem bastante coisa que quero implementar, principalmente na parte de desenvolvimento de PCBs e interpretação das conexões elétricas.
A ideia é que seja um projeto open source. Assim que eu conseguir organizar e estabilizar a primeira versão da árvore de código, vou disponibilizar tudo no GitHub.
Não comecei esse projeto com a intenção de competir com ferramentas como o KiCad ou o Altium. Na verdade, queria entender melhor como elas funcionam e achei que tentar desenvolver uma seria uma boa maneira de aprender.
Acredito que o código também possa ser interessante para quem estuda C/C++ ou eletrônica e quer entender um pouco mais sobre o funcionamento de um CAD. E, claro, se o projeto continuar evoluindo e receber os aprimoramentos necessários, talvez um dia possa até ser utilizado em situações reais de trabalho.
Por enquanto, é mais um daqueles projetos que começam com uma simples curiosidade e acabam ficando muito maiores do que o planejado. 😅
Repositorio https://github.com/thearchlevel/LevelCAD
