### Manage LibrePCB Library with Bash commands Source: https://context7.com/librepcb-libraries/stmicroelectronics.lplib/llms.txt This Bash script demonstrates common command-line operations for managing the LibrePCB library. It includes validation of library structure and components, checking for definition errors, exporting documentation, searching for specific components using grep, and counting components by category. ```bash # Validate library structure and components librepcb-cli open-library --all --strict --minify-step . # Check for errors in component definitions librepcb-cli open-library --all --strict . # Generate library documentation librepcb-cli open-library --export-docs ./docs . # Search for specific components find cmp -name "component.lp" -exec grep -l "STM32F4" {} \; # Count components by category grep -r "category" cmp/ | cut -d'"' -f2 | sort | uniq -c ``` -------------------------------- ### Configure CI for LibrePCB Library Validation with YAML Source: https://context7.com/librepcb-libraries/stmicroelectronics.lplib/llms.txt This YAML configuration sets up a Continuous Integration workflow for the LibrePCB library on GitHub Actions. It specifies the CI trigger events (push, pull_request), the operating system, and a Docker container (librepcb/librepcb-cli) to run the validation using the `librepcb-cli` tool. The `--strict` flag ensures that validation is thorough. ```yaml name: CI on: [push, pull_request] jobs: check: runs-on: ubuntu-22.04 container: image: librepcb/librepcb-cli:1.0.0-rc1 options: --entrypoint /bin/bash steps: - uses: actions/checkout@v1 - run: librepcb-cli open-library --all --strict --minify-step . ``` -------------------------------- ### LibrePCB Library Metadata Definition (Lisp) Source: https://context7.com/librepcb-libraries/stmicroelectronics.lplib/llms.txt Defines the root library metadata, including name, description, author, version, and dependencies. This Lisp-based format is specific to LibrePCB. ```lisp (librepcb_library 1fcb0725-d2e8-4f5d-892c-d1efb44d2963 (name "ST Microelectronics") (description "Integrated circuits, sensors and more (unofficial).") (keywords "") (author "LibrePCB") (version "0.2") (created 2016-09-28T21:48:03Z) (deprecated false) (url "https://github.com/LibrePCB-Libraries/STMicroelectronics.lplib") (dependency 326f091b-b715-44bf-b385-b613cd60d9f3) (dependency a9ddf0c6-9b1c-4730-b300-01b4f192ad40) (manufacturer "ST Microelectronics") ) ``` -------------------------------- ### LibrePCB Device Definition - Physical Package Mapping (Lisp) Source: https://context7.com/librepcb-libraries/stmicroelectronics.lplib/llms.txt Defines a physical device, mapping a logical component to a specific package with associated pad assignments. This Lisp format is used by LibrePCB for device definitions. ```lisp (librepcb_device 0000bf5b-67bd-4b78-be35-9092bec5df29 (name "STM32L496VGTx") (description "A STM32L496V(E-G)Tx MCU by ST Microelectronics.\n\nPackage: LQFP100\nFlash: 512 KiB\nRAM: 320 KiB\nI/Os: 83\nFrequency: 80 MHz\nVoltage: 1.7-3.6V\nTemperature range: -40-85°C\n\nGenerated with librepcb-parts-generator (generate_stm_mcu.py)") (keywords "stm32, stm, st, mcu, microcontroller, arm, cortex") (author "Danilo Bargen, John Eaton") (version "0.1") (created 2020-03-01T01:55:20Z) (deprecated false) (generated_by "") (category 22151601-c2d9-419a-87bc-266f9c7c3459) (component ec39a646-78fb-4124-9bf1-393dfd6c3f63) (package f74cdcb2-833d-4877-876f-56d4c15b5cb8) (pad 001e6fb8-b1c0-46b7-bea8-7f8aef0ec2cc (signal bdeb9267-1307-4c22-abbc-2d7040dd7744)) (pad 00a3265a-932e-485b-ba2d-17eca5da3978 (signal f2dd74f7-bd85-4b47-bf81-e89d86d4959c)) (pad 00ac21cd-7b59-4e79-aade-73e035920c3e (signal 30b938c7-aea5-487b-955a-4972c42dfd7f)) ) ``` -------------------------------- ### LibrePCB Component Definition - STM32 Microcontroller (Lisp) Source: https://context7.com/librepcb-libraries/stmicroelectronics.lplib/llms.txt Defines a logical component for a STM32 microcontroller, including its name, description, keywords, author, version, and signals. This Lisp format is used by LibrePCB for component definitions. ```lisp (librepcb_component 001c8e20-0147-4217-9a65-da6c4c88cfda (name "STM32F429I[EGI]Tx") (description "A STM32F429IxTx MCU by ST Microelectronics.\n\nI/Os: 140\n\nGenerated with librepcb-parts-generator (generate_stm_mcu.py)") (keywords "stm32, stm, st, mcu, microcontroller, arm, cortex") (author "Danilo Bargen, John Eaton") (version "0.1") (created 2020-01-30T20:55:23Z) (deprecated false) (generated_by "") (category 22151601-c2d9-419a-87bc-266f9c7c3459) (schematic_only false) (default_value "{{MPN or DEVICE or COMPONENT}}") (prefix "U") (signal 7f5e5415-a836-4973-9271-3e174bd9f515 (name "BOOT0") (role passive) (required false) (negated false) (clock false) (forced_net "") ) (signal 1324524d-ffdc-4181-83e8-57ec54ac1618 (name "BYPASS_REG") (role passive) (required false) (negated false) (clock false) (forced_net "") ) (signal d8b7ff47-7f27-4216-8809-ee0d003f7c82 (name "NRST") (role passive) (required false) (negated false) (clock false) (forced_net "") ) (signal 1a97dc7b-ce56-4ccb-81b5-2d520d019d27 (name "PA0/WKUP") (role passive) (required false) (negated false) (clock false) (forced_net "") ) (variant d371f118-1c47-44df-87d2-02a566972b26 (norm "") (name "single") (description "Symbol with all MCU pins") (gate 2481c224-db2b-40f7-894b-a6a53def56e2 (symbol c58c1ce4-7f70-4b02-8a19-93f6ce8e30c7) (position 0.0 0.0) (rotation 0.0) (required true) (suffix "") (pin 0099f5aa-d322-4215-9161-90b2dac9baf4 (signal 5a006cab-0ffe-4a32-b6d5-46abc51d4fa9) (text signal)) ) ) ) ``` -------------------------------- ### Define Symbol for STM32L4 MCU in Lisp Source: https://context7.com/librepcb-libraries/stmicroelectronics.lplib/llms.txt This Lisp code defines a schematic symbol for a specific STM32L4 microcontroller. It includes pin configurations, graphical elements like polygons and text for names and values, and metadata such as name, description, keywords, author, and creation date. This definition is crucial for representing the component accurately in PCB schematics within LibrePCB. ```lisp (librepcb_symbol 00bba3ff-692f-4b39-bed2-b774ee5ee15b (name "STM32L4 IO-80 MonoIO-1 Power-8 Reset-1") (description "A STM32L4 MCU by ST Microelectronics with the following pins:\n\n- 80 IO pins\n- 1 MonoIO pins\n- 8 Power pins\n- 1 Reset pins\n\nGenerated with librepcb-parts-generator (generate_stm_mcu.py)") (keywords "stm32, stm, st, mcu, microcontroller, arm, cortex") (author "Danilo Bargen, John Eaton") (version "0.1") (created 2020-01-30T20:55:23Z) (deprecated false) (generated_by "") (category 22151601-c2d9-419a-87bc-266f9c7c3459) (pin ba3f91ae-2c46-4269-9d13-3050dccb2985 (name "Reset1") (position -15.24 101.6) (rotation 0.0) (length 2.54) (name_position 3.81 0.0) (name_rotation 0.0) (name_height 2.5) (name_align left center) ) (pin 9e678d6a-7194-4da5-a335-eef8c85119ed (name "Power1") (position -15.24 96.52) (rotation 0.0) (length 2.54) (name_position 3.81 0.0) (name_rotation 0.0) (name_height 2.5) (name_align left center) ) (polygon 1eaa6f09-bad5-420a-a43f-f39df0874ea2 (layer sym_outlines) (width 0.25) (fill false) (grab_area true) (vertex (position -12.7 104.14) (angle 0.0)) (vertex (position 12.7 104.14) (angle 0.0)) (vertex (position 12.7 -101.6) (angle 0.0)) (vertex (position -12.7 -101.6) (angle 0.0)) (vertex (position -12.7 104.14) (angle 0.0)) ) (text 70ee5608-2d3f-4f03-8af8-ac8a526409d0 (layer sym_names) (value "{{NAME}}") (align left bottom) (height 2.5) (position -12.7 104.14) (rotation 0.0) ) (text f15fdd82-3fb4-4f09-a841-4162406f0f47 (layer sym_values) (value "{{VALUE}}") (align left top) (height 2.5) (position -12.7 -101.6) (rotation 0.0) ) ) ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.