Package: atopile
📖 What Isatopile?atopileis a tool to build electronic circuit boards with code.🗣️ Join Us On DiscordWhat's your story in electronics? What would you like us to build? Come talk on discord.⚡️atoCode ExamplesSimple Examples:Voltage Dividerfrom"generics/resistors.ato"importResistormoduleVoltageDivider:signaltopsignaloutsignalbottomr_top=newResistorr_top.footprint="R0402"r_top.value=100kohm+/-10%r_bottom=newResistorr_bottom.footprint="R0402"r_bottom.value=200kohm+/-10%top~r_top.p1;r_top.p2~outout~r_bottom.p1;r_bottom.p2~bottomRP2040 Blinky CircuitimportRP2040Kitfrom"rp2040/rp2040_kit.ato"importLEDIndicatorfrom"generics/leds.ato"importLDOReg3V3from"regulators/regulators.ato"importUSBCConnfrom"usb-connectors/usb-connectors.ato"moduleBlinky:micro_controller=newRP2040Kitled_indicator=newLEDIndicatorvoltage_regulator=newLDOReg3V3usb_c_connector=newUSBCConnusb_c_connector.power~voltage_regulator.power_involtage_regulator.power_out~micro_controller.powermicro_controller.gpio13~led_indicator.inputmicro_controller.power.gnd~led_indicator.gndled_indicator.resistor.value=100ohm+/-10%Full ProjectsCheckout out theservo drive projector thelogic card project.🔨 Getting StartedFind ourdocumentationand getting startedvideo.atopileis on pypi.org:https://pypi.org/project/atopile/Most Basic Installationatopilerequirespython3.11or later, which you can install using your package manager or frompython.org.Then justpip install atopileand you're good to go!❓ Why Atopile?The objective of atopile is to help push forward these pardiagrams from the software world to hardware, mainly these points:Intelligent Design Capture: Define hardware specifications like ratios and tolerances in code, enabling precise control and easy reuse of designs.Version Control Integration: Use git to manage design changes, facilitating collaboration and ensuring each iteration is thoroughly reviewed and validated.Continuous Integration (CI): Implement CI to guarantee high-quality, compliant designs with every commit, represented by a green checkmark for assurance.Describing hardware with code might seem odd at first glance. But once you realize it introduces software development paradigms and toolchains to hardware design, you'll be hooked, just like we've become.Code cancapture the intelligenceyou put into your work. Imagine configuring not the resistance values of a voltage divider, but its ratio and total resistance, all usingphysical unitsandtolerances. You can do this because someone before you described precisely what this module is and described the relationships between the values of the components and the function you care about. Now instead imagine what you can gain fromreusinga buck design you can merelyconfigurethe target voltage and ripple of. Now imagineinstallingaservo drivethe same way you might numpy.Version controlling your designs usinggitmeans you can deeplyvalidateandreviewchanges a feature at a time,isolatedfrom impacting others' work. It means you can detangle your organisation andcollaborateon an unprecedented scale. We can forgo half-baked "releases" in favor of stamping a simple git-hash on our prototypes, providing an anchor off which toassociate test dataand expectations.Implementing CI totestour work ensures bothhigh-qualityandcompliance, all summarised in a green check mark, emboldening teams to target excellence.🔍 Discover what people buildBrowse and submit your modules atpackages.atopile.io