2 puntos por GN⁺ 2024-02-06 | 1 comentarios | Compartir por WhatsApp
  • Introducción a atopile

    • atopile es un proyecto creado por fundadores que están desarrollando una herramienta para describir dispositivos electrónicos con código.
    • Sintieron en el diseño de hardware una dificultad comparable a construir un producto de software usando solo código ensamblador.
    • Actualmente no existe una buena forma de reutilizar diseños existentes y compilar esa descripción en un producto.
  • Objetivo de atopile

    • atopile es un lenguaje y toolchain de código abierto para describir circuitos con código.
    • El compilador está disponible en GitHub, y la documentación puede consultarse en el sitio web de atopile.
    • Un análisis detallado del diseño de un módulo ESP32 puede verse en el enlace de video proporcionado.
  • Contexto de desarrollo

    • Los fundadores tenían que dibujar y exportar manualmente placas de circuito electrónico en su trabajo anterior.
    • Después de que un amigo ingeniero de software les mostró un flujo de trabajo de desarrollo automatizado, se preguntaron si podían construir lo mismo para hardware.
  • Lenguaje ato

    • Desarrollaron el lenguaje "ato" para abstraer dispositivos electrónicos de manera efectiva.
    • En el lenguaje ato, los circuitos se dividen en módulos, componentes e interfaces, y estos bloques pueden conectarse entre sí.
    • Se proporciona un ejemplo de código usando el microcontrolador RP2040.
  • Funciones del compilador

    • El compilador genera una netlist que describe cómo está conectado el circuito y selecciona componentes jellybean para el usuario.
    • En el futuro, planean agregar reutilización de layouts, relaciones matemáticas entre valores y funciones para definir circuitos de forma similar a las traits de Rust.
  • Alcance de uso de atopile

    • Actualmente, atopile está pensado para diseñar todo tipo de placas de circuito impreso (PCB) de complejidad baja a media.
    • La complejidad de los circuitos que el compilador puede manejar irá aumentando gradualmente hasta ser apta para uso en producción.
    • Aclaran que el compilador se usa solo para PCB y no para diseño de chips.
  • Código abierto y plan de monetización

    • La comunidad de software ha prosperado gracias al código abierto y a las tecnologías open core.
    • Para que los ingenieros de hardware también puedan beneficiarse de ello, ofrecen el núcleo de atopile como código abierto (Apache 2.0).
    • Planean generar ingresos vendiendo funciones orientadas a empresas, de manera similar a GitLab.
  • Solicitud de opinión a la comunidad

    • Piden comentarios sobre el compilador y preguntan sobre las experiencias de los usuarios en electrónica y qué les gustaría ver en atopile.

Opinión de GN⁺

  • El proyecto atopile puede verse como un intento innovador de mejorar la automatización y la reutilización en el diseño de hardware.
  • El enfoque de código abierto tiene el potencial de fomentar una cultura de colaboración e intercambio en la comunidad de ingeniería de hardware.
  • Este proyecto es un paso importante para aplicar la eficiencia y flexibilidad del desarrollo de software al diseño de hardware, y podría traer grandes cambios al campo de la ingeniería de hardware.

1 comentarios

 
GN⁺ 2024-02-06
Opiniones de Hacker News
  • Opinión sobre expresar circuitos como código

    • Esto no es expresar circuitos como código, sino expresarlos como texto. Representa una netlist de forma no estándar y añade metadatos, lo cual es útil, pero no especifica características reales de partición ni tolerancias.
    • Sería deseable definir funciones generadoras de módulos para crear módulos divisores con base en la proporción deseada, la tolerancia de salida y la corriente máxima de salida. Además, también es importante agregar posibles componentes al BOM.
    • Este enfoque reduce el trabajo repetitivo del diseño de circuitos y permite revisar archivos de circuitos como si fueran revisiones de código.
  • Opinión sobre las herramientas de componentes electrónicos

    • El estado de las herramientas para componentes electrónicos es muy malo, y el estado actual de la técnica es que la mayoría de los diseñadores copian de PDFs los capacitores, cristales, puertos de programación, etc., necesarios al agregar un regulador o un microcontrolador al esquemático.
    • Es muy difícil que varias personas trabajen en el mismo diseño y luego fusionen los cambios.
    • Si se avanza hacia un mundo modular, el diseño será más fácil, y eso es una perspectiva muy interesante.
  • Opinión sobre compartir módulos

    • Compartir y convertir en biblioteca módulos como divisores de voltaje es una buena idea.
    • Si se modularizan las restricciones de layout, se podría generar automáticamente el layout de todo el proyecto, lo que permitiría un diseño eficiente.
  • Opinión sobre un nuevo enfoque para el diseño de PCB

    • Sentar las bases de riqueza de datos e interoperabilidad para un nuevo enfoque del diseño de PCB es una idea genial.
    • Como los esquemáticos eléctricos son más familiares para los ingenieros eléctricos, se necesita la capacidad de alternar entre texto y esquemáticos visuales.
  • Sugerencia de usar Verilog

    • Se propone usar Verilog o SystemVerilog para definir la información de los componentes como parámetros y, a partir de eso, generar el esquemático.
    • También sería posible la simulación analógica usando Verilog-AMS.
  • Opinión sobre la diferencia entre los programas EDA y el CAD mecánico

    • Sorprende la falta de "relaciones" en los programas EDA en comparación con el CAD mecánico.
    • Herramientas como KiCad ofrecen "netclasses" para establecer manualmente el ancho de las pistas, pero se necesitan herramientas más eficientes.
  • Opinión sobre la sintaxis de importación de código

    • import Y from X debería cambiarse por algo como import X.Y o from X import Y para que se puedan usar herramientas de autocompletado.
  • BFH - Health Without Borders

    • BFH, es decir, BorderFreeHealth, apoya el acceso universal a productos de salud eliminando barreras geográficas y ofreciendo envíos globales de diversos suministros médicos.
  • Entusiasmo por trabajos de automatización del hogar

    • Hace mucho trabajo de automatización del hogar y expresa frustración por pasar mucho tiempo usando protoboards o diseñando módulos de relé con IO personalizado.
    • Pregunta si hay alguna forma de contribuir al proyecto.