Compare commits

..

3 commits
main ... bom

Author SHA1 Message Date
Wojciech Kaczmarski
e3d3eac97d BOM update
- changed the case of 74AHC1G86
- R23 changed to 133k
- pdf render
2025-07-29 19:17:26 +02:00
Vlastimil Slinták
36157b9f0d Updated PCB from schematics 2025-07-29 19:17:25 +02:00
Vlastimil Slinták
70a3f0103b Added BOM assigment for most of the parts 2025-07-29 19:17:24 +02:00
49 changed files with 53035 additions and 162253 deletions

View file

@ -1,62 +0,0 @@
name: CI
on:
push:
branches: [ main ]
jobs:
build-web:
runs-on: ubuntu-latest
container:
image: ghcr.io/slintak/kicad-builder:latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Build Everything
run: make
- name: Upload Fabrication Files
uses: actions/upload-artifact@v4
with:
name: build-fabrication
path: build/web/files/
if-no-files-found: error
- name: Upload Web Files
uses: actions/upload-artifact@v4
with:
name: build-web
path: build/web/
if-no-files-found: error
# Deploy job
deploy:
# Add a dependency to the build job
needs: [build-web]
# Grant GITHUB_TOKEN the permissions required to make a Pages deployment
permissions:
pages: write # to deploy to Pages
id-token: write # to verify the deployment originates from an appropriate source
# Deploy to the github-pages environment
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
# Specify runner + deployment step
runs-on: ubuntu-latest
steps:
- name: Get Web Files
uses: actions/download-artifact@v4
with:
name: build-web
path: build/
- name: Upload Pages Artifact
uses: actions/upload-pages-artifact@v3
with:
path: build/
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4

65
.gitignore vendored
View file

@ -1,34 +1,31 @@
# For PCBs designed using KiCad: http://www.kicad-pcb.org/
# Format documentation: http://kicad-pcb.org/help/file-formats/
# Temporary files
*.000
*.bak
*.bck
*.kicad_pcb-bak
*.kicad_sch-bak
*-backups
*.kicad_prl
*.sch-bak
*~
_autosave-*
*.tmp
*-save.pro
*-save.kicad_pcb
*.lck
fp-info-cache
\#auto_saved_files\#
# Netlist files (exported from Eeschema)
*.net
# Autorouter files (exported from Pcbnew)
*.dsn
*.ses
# Exported BOM files
*.xml
#*.csv
# Build directory
build/
# For PCBs designed using KiCad: http://www.kicad-pcb.org/
# Format documentation: http://kicad-pcb.org/help/file-formats/
# Temporary files
*.000
*.bak
*.bck
*.kicad_pcb-bak
*.kicad_sch-bak
*-backups
*.kicad_prl
*.sch-bak
*~
_autosave-*
*.tmp
*-save.pro
*-save.kicad_pcb
*.lck
fp-info-cache
\#auto_saved_files\#
# Netlist files (exported from Eeschema)
*.net
# Autorouter files (exported from Pcbnew)
*.dsn
*.ses
# Exported BOM files
*.xml
#*.csv

1
CNAME
View file

@ -1 +0,0 @@
linht-radio.eu

View file

@ -1,89 +0,0 @@
.PHONY: all clean
BOARD = linht-hw
FABHOUSES = jlcpcb pcbway
# Markdown processing
MARKDOWN_SRC := $(wildcard *.md)
MARKDOWN_HTML := $(patsubst %.md, build/%.html, $(MARKDOWN_SRC))
MARKDOWN_EXT := tables fenced_code codehilite attr_list def_list admonition toc
MARKDOWN_ARGS := $(foreach e,$(MARKDOWN_EXT),-x $(e))
# Copy templates
TEMPLATE_SRC_DIR := present/template
TEMPLATE_BUILD_DIR := build
TEMPLATE_OUTPUT_DIR := build/web
TEMPLATE_RENDER_DIR := $(TEMPLATE_OUTPUT_DIR)/imgs
TEMPLATE_FAB_DIR := $(TEMPLATE_OUTPUT_DIR)/files
TEMPLATE_J2 := $(wildcard $(TEMPLATE_SRC_DIR)/*.html.j2)
TEMPLATE_JSON := $(wildcard $(TEMPLATE_SRC_DIR)/*.json)
COPIED_J2 := $(patsubst $(TEMPLATE_SRC_DIR)/%, $(TEMPLATE_BUILD_DIR)/%, $(TEMPLATE_J2))
COPIED_JSON := $(patsubst $(TEMPLATE_SRC_DIR)/%, $(TEMPLATE_BUILD_DIR)/%, $(TEMPLATE_JSON))
RENDERED_HTML := $(patsubst build/%.html.j2, build/web/%.html, $(COPIED_J2))
RENDER_ARGS := --preset follow_pcb_editor --background transparent --quality high -w 1440 -h 1080
STATIC_DIRS := $(shell find present/template -mindepth 1 -maxdepth 1 -type d)
GERBER_ZIPS = $(foreach fab,$(FABHOUSES),$(TEMPLATE_FAB_DIR)/gerbers_$(fab).zip)
all: render models fabrication web
web: $(MARKDOWN_HTML) $(COPIED_J2) $(COPIED_JSON) $(RENDERED_HTML)
fabrication: $(TEMPLATE_BUILD_DIR)/panel/$(BOARD)_panel.kicad_pcb $(BOARD).kicad_sch $(GERBER_ZIPS)
@mkdir -p $(TEMPLATE_FAB_DIR)
kicad-cli sch export pdf $(word 2,$^) -o $(TEMPLATE_FAB_DIR)/$(BOARD)_schematic.pdf
kicad-cli sch export pdf -b -n -o $(TEMPLATE_FAB_DIR)/$(BOARD)_schematic_bw.pdf $(word 2,$^)
kicad-cli sch export python-bom $(word 2,$^) -o $(TEMPLATE_FAB_DIR)/$(BOARD)_bom.xml
xsltproc -o $(TEMPLATE_FAB_DIR)/$(BOARD)_bom.csv present/bom2grouped_csv_jlcpcb.xsl $(TEMPLATE_FAB_DIR)/$(BOARD)_bom.xml
#
kicad-cli pcb export pos $< --side both --format csv --units mm -o $(TEMPLATE_FAB_DIR)/$(BOARD)_pos.csv
kicad-cli pcb export pos $< --side both --format ascii --units mm -o $(TEMPLATE_FAB_DIR)/$(BOARD)_pos.txt
sed -e '1 s/Ref/Designator/' -e '1 s/PosX/Mid X/' -e '1 s/PosY/Mid Y/' -e '1 s/Rot/Rotation/' -e '1 s/Side/Layer/' $(TEMPLATE_FAB_DIR)/$(BOARD)_pos.csv > $(TEMPLATE_FAB_DIR)/$(BOARD)_pos_jlcpcb.csv
models: $(BOARD).kicad_pcb
kicad-cli pcb export step --subst-models $< -o $(TEMPLATE_FAB_DIR)/$(BOARD)_model.step ; \
rc=$$?; if [ $$rc -ne 0 ] && [ $$rc -ne 2 ]; then exit $$rc; fi
kicad-cli pcb export vrml $< -o $(TEMPLATE_FAB_DIR)/$(BOARD)_model.vrml
@gzip -c $(TEMPLATE_FAB_DIR)/$(BOARD)_model.vrml > $(TEMPLATE_FAB_DIR)/$(BOARD)_model.vrml.gz
@xz -f $(TEMPLATE_FAB_DIR)/$(BOARD)_model.step
@xz -f $(TEMPLATE_FAB_DIR)/$(BOARD)_model.vrml
@touch $(TEMPLATE_FAB_DIR)
render: $(BOARD).kicad_pcb
@mkdir -p $(TEMPLATE_RENDER_DIR)
kicad-cli pcb render $(RENDER_ARGS) --side top -o $(TEMPLATE_RENDER_DIR)/$(BOARD)-front.png $^
kicad-cli pcb render $(RENDER_ARGS) --side bottom -o $(TEMPLATE_RENDER_DIR)/$(BOARD)-back.png $^
kicad-cli pcb render $(RENDER_ARGS) --side top --rotate "315,0,315" -o $(TEMPLATE_RENDER_DIR)/$(BOARD)-preview.png $^
$(TEMPLATE_FAB_DIR)/gerbers_%.zip: $(TEMPLATE_BUILD_DIR)/panel/$(BOARD)_panel.kicad_pcb
@mkdir -p $(TEMPLATE_FAB_DIR)
kikit fab $* --no-drc $< $(TEMPLATE_BUILD_DIR)/fab_$*
@cp $(TEMPLATE_BUILD_DIR)/fab_$*/gerbers.zip $@
$(TEMPLATE_BUILD_DIR)/panel/$(BOARD)_panel.kicad_pcb: $(BOARD).kicad_pcb
@mkdir -p $(TEMPLATE_BUILD_DIR)/panel
kikit panelize -p ./panel.json $< $@
# Convert .md → build/.html using python-markdown
build/%.html: %.md
@mkdir -p build
python3 -m markdown $(MARKDOWN_ARGS) $< > $@
build/%.html.j2: present/template/%.html.j2
@mkdir -p build
@cp $< $@
build/%.json: present/template/%.json
@cp $< $@
build/web/%.html: build/%.html.j2 build/%.json build/README.html
@mkdir -p build/web
@rsync -a $(STATIC_DIRS) build/web/
JINJA2_PATH=build jinja2 --format=json -D datetime="$$(date '+%Y-%m-%d %H:%M UTC')" $< build/$*.json -o $@
clean:
rm -rf build

340
README.md
View file

@ -1,332 +1,42 @@
# LinHT-hw
**Open-source, Linux-based, SDR handheld transceiver**
[![CC BY-NC-SA 4.0][cc-by-nc-sa-shield]][cc-by-nc-sa]
![GitHub Actions](https://github.com/M17-Project/LinHT-hw/actions/workflows/main.yml/badge.svg)
[![Docs](https://img.shields.io/badge/docs-GitHub%20Pages-blue)](https://m17-project.github.io/LinHT-hw/)
![Status](https://img.shields.io/badge/status-active%20development-orange)
## What is LinHT?
# LinHT-hw
Open-source hardware, Linux-based, SDR handheld transceiver. [OpenHT](https://github.com/M17-Project/OpenHT-hw) successor with greatly simplified hardware - no FPGAs involved.
This project offers a replacement board for the Retevis C62 radio, greatly expanding its capabilities.
**LinHT** is an open-source handheld **software-defined radio (SDR) transceiver**
built around a modern Linux System-on-Module and a true IQ RF front-end.
## Hardware
The device uses an [MCM-iMX93](https://www.compulab.com/products/computer-on-modules/mcm-imx93-nxp-i-mx-93-som-smd-system-on-module) System on Module (SoM) running Linux. The RF front-end is based on the [Semtech SX1255](https://www.semtech.com/products/wireless-rf/lora-core/sx1255). The chip is used as a complete IQ modulator/demodulator, allowing for true all-mode support.
It is the **successor of the OpenHT project**, with focus on:
### Resources
**CPU:**
- Dual-core ARM Cortex-A55 @ 1.7GHz
- ARM Cortex-M33 coprocessor @ 250MHz
- Floating Point Unit
- ARM Ethos U-65 microNPU (Neural Processing Unit with Tensor Flow Lite support)
* simpler and more maintainable hardware,
* no FPGA in the signal path,
* tight integration with Linux, GNU Radio, and modern SDR tooling,
* long-term openness and hackability.
**Memory:**
- 2GB LPDDR4
- 64GB eMMC
LinHT is developed by members of the [**M17 community**](https://m17project.org) and is intended primarily
for **radio amateurs, SDR experimenters, and developers**.
**RF:**
- 500kHz bandwidth complete IQ transceiver
This repository contains the **hardware design files** for LinHT.
## Software
Developers can use C/C++/Python as well as (or in conjunction with) GNU Radio flowgraphs. Tools such as gcc are built-in. The Linux image will be published later.
> ⚠️ **Important**<br>
> LinHT is **not a consumer product** yet.<br>
> It is an experimental, community-driven open hardware project.
### Supported modes (so far):
* M17 - transmission and reception,
* TETRA - reception only,
* Demo 64QAM transmission at 2Mbps
## Key ideas behind LinHT
* **True SDR**: IQ baseband access, not FM-only
* **Linux-first**: no microcontroller firmware lock-in
* **No FPGA**: easier development, lower entry barrier
* **Open everything**: hardware, software, toolchains
* **Hackable handheld**: not just another black box walkie-talkie
## Hardware overview
LinHT is built around a Linux SoM and a wideband IQ transceiver.
* **System on Module:** [CompuLab MCM-iMX93](https://www.compulab.com/products/computer-on-modules/mcm-imx93-nxp-i-mx-93-som-smd-system-on-module)
* **RF front-end:** [Semtech SX1255](https://www.semtech.com/products/wireless-rf/lora-core/sx1255)
**CPU**
* Dual-core ARM Cortex-A55 @ 1.7 GHz
* ARM Cortex-M33 coprocessor @ 250 MHz
* Floating-Point Unit
* ARM Ethos-U65 microNPU (TensorFlow Lite support)
**Memory**
* 2 GB LPDDR4
* 32 GB eMMC
### RF capabilities (revision B target)
| Parameter | Value |
| --------------- | ------------------------------------------------------------- |
| Frequency range | **UHF band** (exact limits depend on PA/filter configuration) |
| Bandwidth | up to **500 kHz IQ** |
| Architecture | Direct IQ (complex baseband) |
| TX power | up to **~5 W** (revision B, internal PA) |
| RX features | Programmable attenuation, gain control |
| Modes | FM, SSB, M17, experimental digital modes |
> 📌 **UHF only!**<br>
> VHF support is frequently requested, but **is not planned for revision B**.
> The current priority is **stability, manufacturability, and software maturity**.
## Software overview
LinHT runs a **custom Yocto-based Linux distribution** designed for SDR and
embedded radio use.
### Supported development models
* C / C++
* Python
* GNU Radio flowgraphs
* SoapySDR
* Custom DSP pipelines
Standard Linux tools (gcc, gdb, strace, etc.) are available directly on the device.
### Supported modes (current status)
* ✅ FM (TX/RX) with pre-/de-emphasis and CTCSS
* ✅ SSB (TX/RX)
* ✅ **M17** (TX/RX)
* ✅ TETRA (RX only)
* 🧪 Experimental 64-QAM @ 2 Mbps
* ⏳ Planned / possible: FreeDV, APRS, packet radio, custom modulations
## Hardware revisions
LinHT is developed iteratively. Each revision serves a specific purpose.
| Revision | Status | Purpose |
| ---------- | --------------------------------------------- | -------------------------------------------- |
| **Rev. A** | <span style="color:green">Completed</span> | Early prototype, architecture validation |
| **Rev. B** | <span style="color:orange">In progress</span> | Feature-complete, manufacturing-ready design |
### Revision A
* Manufactured earlier in 2025
* **4 assembled prototype units**
* Used to:
* validate the Linux + SDR architecture,
* bring up SX1255 under Linux,
* start software and DSP development,
* identify mechanical, RF, and power issues
* Revision A was **never intended for production**.
### Revision B (current focus)
* Incorporates lessons learned from Rev. A
* Major improvements:
* redesigned power supply
* internal PA (~5 W)
* improved RF path and attenuation for RX
* cleaner layout and grounding
* **Not yet released for manufacturing**
> 📅 **February 2026 status**<br>
> A test batch of Revision B PCBs is currently being assembled.<br>
> Please check this page later for updates.
## Repository contents
This repository contains:
* KiCad 9.0 project files
* Schematics
* PCB layout
* Manufacturing outputs (generated automatically)
Gerbers, BOM, pick-and-place files, and schematics are:
* generated automatically via **GitHub Actions**
* published on [**GitHub Pages**](https://m17-project.github.io/LinHT-hw/)
## Required hardware (donor radio)
LinHT is designed as a **replacement mainboard** for the
**Retevis C62 handheld radio**. You will need:
* a Retevis C62 (donor device)
* its:
* enclosure
* display
* keypad
* battery
* connectors
More details (Rev. A focused, older but useful): [LinHT Open SDR Handheld For Radio Amateurs](https://uart.cz/2811/linht-open-sdr-handheld-for-radio-amateurs/)
## Firmware images
Prebuilt Linux images for LinHT are available here:
[https://m17project.org/linht/](https://m17project.org/linht/)
Documentation:
* [https://wiki.m17foundation.org/index.php?title=LinHT_Image_Build](https://wiki.m17foundation.org/index.php?title=LinHT_Image_Build)
Yocto layers:
* [meta-linht-hardware](https://github.com/M17-Project/meta-linht-hardware)
* [meta-linht-software](https://github.com/M17-Project/meta-linht-software)
* [meta-linht-sdr](https://github.com/M17-Project/meta-linht-sdr)
## Flashing the device
Flashing is done using **NXP Universal Update Utility (uuu)**.
1. Boot LinHT into flash mode
(hold the secondary side button while powering on)
2. Flash using:
```bash
uuu -v -b emmc_all imx-boot-mcm-imx93-sd.bin-flash_singleboot linht-image-mcm-imx93.rootfs.wic.zst
```
Tool download: [mfgtools](https://github.com/nxp-imx/mfgtools/releases)
To access LinHTs USB network device on Windows, install the **RNDIS driver**: [microsoft.com USB RNDIS Gadget](https://www.catalog.update.microsoft.com/Search.aspx?q=USB%20RNDIS%20Gadget)
## Documentation & Wiki
Primary documentation lives on the **M17 Wiki**:
* [LinHT overview](https://wiki.m17foundation.org/index.php?title=LinHT)
* [Image build instructions](https://wiki.m17foundation.org/index.php?title=LinHT_Image_Build)
* [Image usage & manual](https://wiki.m17foundation.org/index.php?title=LinHT_Image_Manual)
## Contributing
LinHT is a **community project** and contributions are welcome. The best way to
get involved is [**joining the M17 Discord**](https://discord.gg/4brEP8wwVp), look for channel: **#linht**.
This is the preferred place to:
* discuss ideas,
* coordinate work,
* ask questions,
* avoid duplicated effort.
Other ways to contribute:
* Open issues in this repository (design notes, questions, suggestions)
* Help on the **software side** (especially welcome):
* Yocto recipes
* device tree improvements
* CI / GitHub Actions
* build automation
* Explore and extend [LinHT-utils](https://github.com/M17-Project/LinHT-utils)
If youre an experienced **embedded Linux or SDR developer**, we would love
your help.
## FAQ Frequently Asked Questions
### ❓ Where can I buy LinHT hardware?
You currently **cannot buy LinHT as a product**. To build LinHT, you need to:
* manufacture the PCB yourself (using provided Gerbers),
* source components,
* assemble the board,
* use a **Retevis C62** handheld radio as a donor for:
* enclosure,
* display,
* keypad,
* battery,
* connectors.
This may change in the future.
### ❓ Is LinHT suitable for everyday radio use?
Not yet. And maybe never in the "consumer radio" sense. LinHT is currently best
suited for:
* developers,
* radio amateurs comfortable with Linux,
* SDR experimenters,
* people who enjoy building and debugging hardware.
You should **not** expect:
* plug-and-play user experience,
* polished UI,
* certification,
* warranty,
* commercial-grade RF compliance.
### ❓ Does LinHT support VHF?
**No, not in revision B.**
VHF support is a **frequently requested feature**, but it is
**not planned for revision B**, adding another band significantly increases:
* RF complexity,
* filtering requirements,
* PCB area,
* development time.
Right now, the project is focused on:
* stabilizing the hardware,
* finishing revision B,
* improving software and DSP,
* validating the new power amplifier and RF chain.
VHF is **not ruled out** for future revisions, but it is
**not a current priority**.
### ❓ Is LinHT certified / legal to transmit with?
LinHT itself is **not certified**. Responsibility lies with the builder and
the operator. LinHT is intended primarily for:
* amateur radio use,
* experimental licenses,
* lab and research environments.
Always follow your local radio regulations.
### ❓ I want to help. Where do I start?
The best starting point is **discussion**. Join the M17 Discord, channel: **#linht**.
Good ways to contribute:
* software development (Yocto, drivers, tooling),
* testing and feedback,
* documentation,
* RF/DSP experiments,
* CI and automation improvements.
If youre unsure where to help - just ask.
Other modes can be added later (analog FM/AM/SSB, FreeDV, APRS, etc.).
## License
This project is licensed under: **Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International**
You are free to:
* share
* adapt
Under the conditions:
* attribution
* non-commercial use
* share alike
This work is licensed under a
[Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License][cc-by-nc-sa].
[![CC BY-NC-SA 4.0][cc-by-nc-sa-image]][cc-by-nc-sa]
## Acknowledgements
LinHT is developed by the **M17 community**, with contributions from many individuals.
Thanks to everyone testing prototypes, reviewing schematics, writing software, and sharing ideas.
[cc-by-nc-sa]: http://creativecommons.org/licenses/by-nc-sa/4.0/
[cc-by-nc-sa-image]: https://licensebuttons.net/l/by-nc-sa/4.0/88x31.png
[cc-by-nc-sa-shield]: https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -6,8 +6,8 @@
(paper "A4")
(title_block
(title "LinHT - Linux-based SDR handheld transceiver")
(date "2025-12-03")
(rev "B")
(date "29 July 2025")
(rev "A")
(company "M17 Foundation")
(comment 1 "Author: Wojciech SP5WWP, Andy OE3ANC, Vlastimil OK5VAS")
)
@ -2647,6 +2647,92 @@
)
(uuid "fa833251-a7e9-4893-a194-b2100761c6ff")
)
(symbol
(lib_id "Device:R")
(at 219.71 68.58 90)
(mirror x)
(unit 1)
(exclude_from_sim no)
(in_bom yes)
(on_board yes)
(dnp no)
(uuid "0d386b5e-d94c-4449-83ef-e4e91b1c4869")
(property "Reference" "R40"
(at 219.71 66.04 90)
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Value" "220R"
(at 219.71 71.3162 90)
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Footprint" "Resistor_SMD:R_0402_1005Metric"
(at 219.71 66.802 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "Datasheet" "~"
(at 219.71 68.58 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "Description" "Resistor"
(at 219.71 68.58 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC" "C25091"
(at 219.71 68.58 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "PN" "0402WGF2200TCE"
(at 219.71 68.58 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(pin "2"
(uuid "3bbb4d23-f1fc-4866-a9b1-143e90b71d22")
)
(pin "1"
(uuid "7537af09-0138-4ba3-8355-9904a02d4440")
)
(instances
(project ""
(path "/73efc1fc-21f6-4aef-9f73-508fe18fa32e/42192b89-bd04-4531-bec0-520394b48a86"
(reference "R40")
(unit 1)
)
)
)
)
(symbol
(lib_id "power:GND")
(at 201.93 106.68 0)
@ -2843,25 +2929,7 @@
(hide yes)
)
)
(property "PN" ""
(at 101.6 82.55 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC Part" ""
(at 101.6 82.55 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "MPN" "0402WGF1002TCE"
(property "PN" "0402WGF1002TCE"
(at 101.6 82.55 0)
(effects
(font
@ -3093,16 +3161,7 @@
(hide yes)
)
)
(property "PN" "621-BSS138-7-F"
(at 109.22 128.27 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC Part" ""
(property "PN" " 621-BSS138-7-F "
(at 109.22 128.27 0)
(effects
(font
@ -3191,15 +3250,6 @@
(hide yes)
)
)
(property "LCSC Part" ""
(at 209.55 90.17 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(pin "1"
(uuid "26f6cc8c-9741-4094-84b5-991ccf6febd2")
)
@ -3270,15 +3320,6 @@
(hide yes)
)
)
(property "LCSC Part" ""
(at 119.38 85.09 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(pin "7"
(uuid "ff102b72-fdaa-4283-90e7-5c3b707a1af4")
)
@ -3412,25 +3453,7 @@
(hide yes)
)
)
(property "PN" ""
(at 101.6 134.62 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC Part" ""
(at 101.6 134.62 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "MPN" "0402WGF4702TCE"
(property "PN" "0402WGF4702TCE"
(at 101.6 134.62 0)
(effects
(font
@ -3527,16 +3550,7 @@
(hide yes)
)
)
(property "PN" "187-CL05B104KO5NNNC"
(at 101.6 111.76 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC Part" ""
(property "PN" " 187-CL05B104KO5NNNC "
(at 101.6 111.76 0)
(effects
(font
@ -3626,110 +3640,6 @@
)
)
)
(symbol
(lib_id "Device:R")
(at 219.71 68.58 90)
(unit 1)
(exclude_from_sim no)
(in_bom yes)
(on_board yes)
(dnp no)
(fields_autoplaced yes)
(uuid "88ab9ffc-03c0-449f-8a59-8ae0ec3541c7")
(property "Reference" "R16"
(at 219.71 63.4195 90)
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Value" "100R"
(at 219.71 65.8438 90)
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Footprint" "Resistor_SMD:R_0402_1005Metric"
(at 219.71 70.358 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "Datasheet" "~"
(at 219.71 68.58 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "Description" "Resistor"
(at 219.71 68.58 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC" "C25076"
(at 219.71 68.58 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "PN" ""
(at 219.71 68.58 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC Part" ""
(at 219.71 68.58 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "MPN" "0402WGF1000TCE"
(at 219.71 68.58 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(pin "1"
(uuid "a56e0848-1776-441e-a4e1-764458c5dbec")
)
(pin "2"
(uuid "4686f9fe-5b2f-4f5c-bbe5-4540319d0b34")
)
(instances
(project "linht-hw"
(path "/73efc1fc-21f6-4aef-9f73-508fe18fa32e/42192b89-bd04-4531-bec0-520394b48a86"
(reference "R16")
(unit 1)
)
)
)
)
(symbol
(lib_id "Device:R")
(at 185.42 99.06 90)
@ -3792,25 +3702,7 @@
(hide yes)
)
)
(property "PN" ""
(at 185.42 99.06 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC Part" ""
(at 185.42 99.06 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "MPN" "0402WGF1000TCE"
(property "PN" "0402WGF1000TCE"
(at 185.42 99.06 90)
(effects
(font
@ -3910,16 +3802,7 @@
(hide yes)
)
)
(property "PN" "621-BSS138-7-F"
(at 199.39 99.06 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC Part" ""
(property "PN" " 621-BSS138-7-F "
(at 199.39 99.06 0)
(effects
(font
@ -4010,25 +3893,7 @@
(hide yes)
)
)
(property "PN" ""
(at 111.76 116.84 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC Part" ""
(at 111.76 116.84 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "MPN" "0402WGF100JTCE"
(property "PN" "0402WGF100JTCE"
(at 111.76 116.84 0)
(effects
(font
@ -4052,110 +3917,6 @@
)
)
)
(symbol
(lib_id "Device:R")
(at 219.71 80.01 90)
(unit 1)
(exclude_from_sim no)
(in_bom yes)
(on_board yes)
(dnp no)
(fields_autoplaced yes)
(uuid "a6458ba4-4e62-4cb6-8514-14b12d8041d7")
(property "Reference" "R15"
(at 219.71 74.8495 90)
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Value" "100R"
(at 219.71 77.2738 90)
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Footprint" "Resistor_SMD:R_0402_1005Metric"
(at 219.71 81.788 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "Datasheet" "~"
(at 219.71 80.01 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "Description" "Resistor"
(at 219.71 80.01 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC" "C25076"
(at 219.71 80.01 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "PN" ""
(at 219.71 80.01 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC Part" ""
(at 219.71 80.01 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "MPN" "0402WGF1000TCE"
(at 219.71 80.01 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(pin "1"
(uuid "3a0f4633-7121-4a68-a73c-180579691375")
)
(pin "2"
(uuid "96f0a8b8-8ae1-4afe-ad12-f02840ba38d2")
)
(instances
(project "linht-hw"
(path "/73efc1fc-21f6-4aef-9f73-508fe18fa32e/42192b89-bd04-4531-bec0-520394b48a86"
(reference "R15")
(unit 1)
)
)
)
)
(symbol
(lib_id "Device:LED")
(at 209.55 68.58 0)
@ -4236,15 +3997,6 @@
(hide yes)
)
)
(property "LCSC Part" ""
(at 209.55 68.58 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(pin "1"
(uuid "87f3e6c7-9c0b-4eab-ab64-ebd4ba9c6425")
)
@ -4406,15 +4158,6 @@
(hide yes)
)
)
(property "LCSC Part" ""
(at 209.55 80.01 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(pin "1"
(uuid "8438c2f5-0991-4864-8a7b-f40f2021a4bf")
)
@ -4626,25 +4369,7 @@
(hide yes)
)
)
(property "PN" ""
(at 191.77 105.41 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC Part" ""
(at 191.77 105.41 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "MPN" "0402WGF4702TCE"
(property "PN" "0402WGF4702TCE"
(at 191.77 105.41 0)
(effects
(font
@ -4730,25 +4455,7 @@
(hide yes)
)
)
(property "PN" ""
(at 219.71 90.17 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC Part" ""
(at 219.71 90.17 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "MPN" "0402WGF1500TCE"
(property "PN" "0402WGF1500TCE"
(at 219.71 90.17 90)
(effects
(font
@ -4772,6 +4479,92 @@
)
)
)
(symbol
(lib_id "Device:R")
(at 219.71 80.01 90)
(mirror x)
(unit 1)
(exclude_from_sim no)
(in_bom yes)
(on_board yes)
(dnp no)
(uuid "e84ab908-db69-42fb-b1ca-195af8de0d78")
(property "Reference" "R41"
(at 219.71 77.47 90)
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Value" "220R"
(at 219.71 82.7462 90)
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Footprint" "Resistor_SMD:R_0402_1005Metric"
(at 219.71 78.232 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "Datasheet" "~"
(at 219.71 80.01 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "Description" "Resistor"
(at 219.71 80.01 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC" "C25091"
(at 219.71 80.01 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "PN" "0402WGF2200TCE"
(at 219.71 80.01 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(pin "2"
(uuid "7d2eee4a-3f34-4cd9-801a-f9b9b6f0d56a")
)
(pin "1"
(uuid "0c144a0c-c9b1-42c7-a738-d93a80281a39")
)
(instances
(project "linht-hw"
(path "/73efc1fc-21f6-4aef-9f73-508fe18fa32e/42192b89-bd04-4531-bec0-520394b48a86"
(reference "R41")
(unit 1)
)
)
)
)
(symbol
(lib_id "Device:R")
(at 102.87 64.77 90)
@ -4834,25 +4627,7 @@
(hide yes)
)
)
(property "PN" ""
(at 102.87 64.77 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC Part" ""
(at 102.87 64.77 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "MPN" "0402WGF1002TCE"
(property "PN" "0402WGF1002TCE"
(at 102.87 64.77 90)
(effects
(font
@ -4938,25 +4713,7 @@
(hide yes)
)
)
(property "PN" ""
(at 95.25 128.27 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC Part" ""
(at 95.25 128.27 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "MPN" "0402WGF1000TCE"
(property "PN" "0402WGF1000TCE"
(at 95.25 128.27 90)
(effects
(font

File diff suppressed because it is too large Load diff

View file

@ -6,8 +6,8 @@
(paper "A4")
(title_block
(title "LinHT - Linux-based SDR handheld transceiver")
(date "2025-12-03")
(rev "B")
(date "29 July 2025")
(rev "A")
(company "M17 Foundation")
(comment 1 "Author: Wojciech SP5WWP, Andy OE3ANC, Vlastimil OK5VAS")
)
@ -2288,25 +2288,7 @@
(hide yes)
)
)
(property "PN" ""
(at 165.1 101.6 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC Part" ""
(at 165.1 101.6 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "MPN" "0402WGF4702TCE"
(property "PN" "0402WGF4702TCE"
(at 165.1 101.6 0)
(effects
(font
@ -2450,15 +2432,6 @@
(hide yes)
)
)
(property "LCSC Part" ""
(at 55.88 114.3 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(pin "1"
(uuid "27a69361-e298-497b-b45d-512bd0954e22")
)
@ -2524,15 +2497,6 @@
(hide yes)
)
)
(property "LCSC Part" ""
(at 55.88 118.11 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(pin "1"
(uuid "b49e1642-5ab3-4a68-88ce-fcb095bd1e53")
)
@ -2609,25 +2573,7 @@
(hide yes)
)
)
(property "PN" ""
(at 154.94 83.82 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC Part" ""
(at 154.94 83.82 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "MPN" "ERJPA2F1500X"
(property "PN" "ERJPA2F1500X"
(at 154.94 83.82 0)
(effects
(font
@ -2915,25 +2861,7 @@
(hide yes)
)
)
(property "PN" ""
(at 171.45 95.25 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC Part" ""
(at 171.45 95.25 90)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "MPN" "0402WGF1000TCE"
(property "PN" "0402WGF1000TCE"
(at 171.45 95.25 90)
(effects
(font
@ -3076,15 +3004,6 @@
(hide yes)
)
)
(property "LCSC Part" ""
(at 55.88 110.49 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(pin "1"
(uuid "527fae63-5afd-4eea-88b1-a2254f7f0b8a")
)
@ -3150,15 +3069,6 @@
(hide yes)
)
)
(property "LCSC Part" ""
(at 55.88 100.33 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(pin "1"
(uuid "af641070-2291-4f46-a574-0ef525df7fe7")
)
@ -3251,15 +3161,6 @@
(hide yes)
)
)
(property "LCSC Part" ""
(at 123.19 92.71 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(pin "1"
(uuid "c1fae89d-1cc8-4b69-b6e0-97c447335ffd")
)
@ -3373,15 +3274,6 @@
(hide yes)
)
)
(property "LCSC Part" ""
(at 55.88 104.14 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(pin "1"
(uuid "ac7ce14b-8f85-48be-aa3f-eaf8bbadfb50")
)
@ -3470,16 +3362,7 @@
(hide yes)
)
)
(property "PN" "621-BSS138-7-F"
(at 157.48 95.25 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC Part" ""
(property "PN" " 621-BSS138-7-F "
(at 157.48 95.25 0)
(effects
(font

File diff suppressed because it is too large Load diff

View file

@ -37,9 +37,9 @@
"other_text_thickness": 0.15,
"other_text_upright": false,
"pads": {
"drill": 0.4,
"height": 2.2,
"width": 1.2
"drill": 0.0,
"height": 0.8,
"width": 0.9
},
"silk_line_width": 0.1,
"silk_text_italic": false,
@ -48,7 +48,7 @@
"silk_text_thickness": 0.1,
"silk_text_upright": false,
"zones": {
"min_clearance": 0.3
"min_clearance": 0.25
}
},
"diff_pair_dimensions": [
@ -58,16 +58,7 @@
"width": 0.0
}
],
"drc_exclusions": [
[
"clearance|108775500|119310000|02a1131b-98f8-4e77-8f06-f91a9c7aba4e|17b7483f-1cbe-4de4-ba83-99e1a907f329",
""
],
[
"clearance|110455000|119230500|74cf3d9e-d74b-46d4-83e5-241b865105e9|074758df-e958-4e73-be7f-4dfd6804f3ff",
""
]
],
"drc_exclusions": [],
"meta": {
"version": 2
},
@ -75,7 +66,7 @@
"annular_width": "error",
"clearance": "error",
"connection_width": "warning",
"copper_edge_clearance": "ignore",
"copper_edge_clearance": "error",
"copper_sliver": "warning",
"courtyards_overlap": "error",
"creepage": "error",
@ -88,7 +79,7 @@
"footprint_filters_mismatch": "ignore",
"footprint_symbol_mismatch": "warning",
"footprint_type_mismatch": "ignore",
"hole_clearance": "ignore",
"hole_clearance": "error",
"hole_to_hole": "warning",
"holes_co_located": "warning",
"invalid_outline": "error",
@ -110,7 +101,7 @@
"pth_inside_courtyard": "ignore",
"shorting_items": "error",
"silk_edge_clearance": "ignore",
"silk_over_copper": "ignore",
"silk_over_copper": "warning",
"silk_overlap": "warning",
"skew_out_of_range": "error",
"solder_mask_bridge": "error",
@ -462,7 +453,6 @@
"single_global_label": "ignore",
"unannotated": "error",
"unconnected_wire_endpoint": "warning",
"undefined_netclass": "error",
"unit_value_mismatch": "error",
"unresolved_variable": "error",
"wire_dangling": "error"
@ -480,7 +470,7 @@
"classes": [
{
"bus_width": 12,
"clearance": 0.11,
"clearance": 0.12,
"diff_pair_gap": 0.25,
"diff_pair_via_gap": 0.25,
"diff_pair_width": 0.2,
@ -507,12 +497,12 @@
"via_drill": 0.3
},
{
"clearance": 0.17,
"clearance": 0.1,
"name": "RF",
"pcb_color": "rgba(0, 0, 0, 0.000)",
"priority": 1,
"schematic_color": "rgb(132, 0, 132)",
"track_width": 0.2,
"track_width": 0.234,
"via_diameter": 0.6,
"via_drill": 0.3
},
@ -546,30 +536,12 @@
"/Connectors/xUDP": [
"USB"
],
"/RF/ATT_IN_OUT": [
"RF"
],
"/RF/RF_IN": [
"RF"
],
"/RF/RF_IN_ATT": [
"RF"
],
"/RF/RF_OUT": [
"RF"
],
"Net-(C52-Pad2)": [
"RF"
],
"Net-(C54-Pad2)": [
"RF"
],
"Net-(C55-Pad1)": [
"RF"
],
"Net-(C56-Pad2)": [
"RF"
],
"Net-(FL1-IN)": [
"RF"
],
@ -596,29 +568,12 @@
],
"Net-(U2-RF_OUT_2)": [
"RF"
],
"Net-(U9-RF1)": [
"RF"
],
"Net-(U9-RF2)": [
"RF"
],
"Net-(U9-RF3)": [
"RF"
]
},
"netclass_patterns": [
{
"netclass": "Narrow",
"pattern": "/Keyboard/D."
},
{
"netclass": "Narrow",
"pattern": "GND"
},
{
"netclass": "Default",
"pattern": ""
}
]
},
@ -766,24 +721,6 @@
"label": "LCSC",
"name": "LCSC",
"show": true
},
{
"group_by": false,
"label": "LCSC Part",
"name": "LCSC Part",
"show": false
},
{
"group_by": false,
"label": "Sim.Device",
"name": "Sim.Device",
"show": false
},
{
"group_by": false,
"label": "MP",
"name": "MP",
"show": false
}
],
"filter_string": "",
@ -865,10 +802,6 @@
[
"5f168690-b6ac-4b3d-aad0-4e97277dc85d",
"Connectors"
],
[
"0b7c638a-0bf4-4df2-9e8c-e9dd4f727b29",
"GNSS"
]
],
"text_variables": {}

File diff suppressed because it is too large Load diff

BIN
linht-hw.pdf Normal file

Binary file not shown.

View file

@ -10,7 +10,7 @@
| | V_SOM | Pin 6 | 5V | | |
| | ADC_IN3 | Pin 7 | | | |
| | ADC_IN2 | Pin 8 | | | |
| | ADC_IN1 | Pin 9 | | | |
| | ADC_IN1 | Pin 9 | U_BATT_MON | | |
| | ADC_IN0 | Pin 10 | VOL_ADC | | |
| | V_SOM | Pin 11 | 5V | | |
| | TAMPER0 | Pin 12 | | | |
@ -50,7 +50,7 @@
| | POR_B_3P3 | Pin 46 | | | |
| SAI3_TX_SYNC | GPIO2_IO[26] | Pin 47 | I2S1_WS | 3.3V | MX93_PAD_GPIO_IO26__SAI3_TX_SYNC |
| GPIO2_IO[27] | GPIO2_IO[27] | Pin 48 | | 3.3V | MX93_PAD_GPIO_IO27__GPIO2_IO27 |
| GPIO4_IO[15] | ENET2_MDIO | Pin 49 | JACK_DETECT | 1.8V | MX93_PAD_ENET2_MDIO__GPIO4_IO15 |
| GPIO4_IO[15] | ENET2_MDIO | Pin 49 | | 1.8V | MX93_PAD_ENET2_MDIO__GPIO4_IO15 |
| GPIO4_IO[14] | ENET2_MDC | Pin 50 | | 1.8V | MX93_PAD_ENET2_MDC__GPIO4_IO14 |
| GPIO4_IO[16] | ENET2_TD3 | Pin 51 | KBD_D1 | 1.8V | MX93_PAD_ENET2_TD3__GPIO4_IO16 |
| GPIO4_IO[19] | ENET2_TD0 | Pin 52 | KBD_D2 | 1.8V | MX93_PAD_ENET2_TD0__GPIO4_IO19 |
@ -68,8 +68,8 @@
| UART1_RX | UART1_RX | Pin 64 | UART_RX | | |
| GPIO3_IO[7] | SDIO2_RESET_B | Pin 65 | | 3.3V/1.8V | MX93_PAD_SD2_RESET_B__GPIO3_IO07 |
| SAI1_TX_DATA[0] | SAI1_TX_DATA[0] | Pin 66 | I2S0_DOUT | | MX93_PAD_SAI1_TXD0__SAI1_TX_DATA00 |
| GPIO3_IO[6] | SDIO2_DATA3 | Pin 67 | | 3.3V/1.8V | MX93_PAD_SD2_DATA3__GPIO3_IO06 |
| GPIO3_IO[5] | SDIO2_DATA2 | Pin 68 | | 3.3V/1.8V | MX93_PAD_SD2_DATA2__GPIO3_IO05 |
| GPIO3_IO[6] | SDIO2_DATA3 | Pin 67 | MIC_GAIN | 3.3V/1.8V | MX93_PAD_SD2_DATA3__GPIO3_IO06 |
| GPIO3_IO[5] | SDIO2_DATA2 | Pin 68 | /MIC_MUTE | 3.3V/1.8V | MX93_PAD_SD2_DATA2__GPIO3_IO05 |
| GPIO3_IO[2] | SDIO2_CMD | Pin 69 | | 3.3V/1.8V | MX93_PAD_SD2_CMD__GPIO3_IO02 |
| GPIO3_IO[1] | SDIO2_CLK | Pin 70 | | 3.3V/1.8V | MX93_PAD_SD2_CLK__GPIO3_IO01 |
| | RESERVED | Pin 71 | | | |
@ -84,35 +84,35 @@
| GPIO3_IO[31] | JTAG_TDO | Pin 80 | | 1.8V | MX93_PAD_DAP_TDO_TRACESWO__GPIO3_IO31 |
| GPIO4_IO[6] | ENET1_TX_CTL | Pin 81 | | 1.8V | MX93_PAD_ENET1_TX_CTL__GPIO4_IO06 |
| GPIO4_IO[4] | ENET1_TD1 | Pin 82 | | 1.8V | MX93_PAD_ENET1_TD1__GPIO4_IO04 |
| GPIO4_IO[3] | ENET1_TD2 | Pin 83 | GNSS_RST | 1.8V | MX93_PAD_ENET1_TD2__GPIO4_IO03 |
| GPIO4_IO[5] | ENET1_TD0 | Pin 84 | GNSS_TX | 1.8V | MX93_PAD_ENET1_TD0__GPIO4_IO05 |
| GPIO4_IO[2] | ENET1_TD3 | Pin 85 | GNSS_WAKEUP | 1.8V | MX93_PAD_ENET1_TD3__GPIO4_IO02 |
| GPIO4_IO[3] | ENET1_TD2 | Pin 83 | | 1.8V | MX93_PAD_ENET1_TD2__GPIO4_IO03 |
| GPIO4_IO[5] | ENET1_TD0 | Pin 84 | | 1.8V | MX93_PAD_ENET1_TD0__GPIO4_IO05 |
| GPIO4_IO[2] | ENET1_TD3 | Pin 85 | | 1.8V | MX93_PAD_ENET1_TD3__GPIO4_IO02 |
| GPIO4_IO[7] | ENET1_TXC | Pin 86 | | 1.8V | MX93_PAD_ENET1_TXC__GPIO4_IO07 |
| GPIO4_IO[8] | ENET1_RX_CTL | Pin 87 | GNSS_PPS | 1.8V | MX93_PAD_ENET1_RX_CTL__GPIO4_IO08 |
| GPIO4_IO[10] | ENET1_RD0 | Pin 88 | GNSS_RX | 1.8V | MX93_PAD_ENET1_RD0__GPIO4_IO10 |
| GPIO4_IO[8] | ENET1_RX_CTL | Pin 87 | | 1.8V | MX93_PAD_ENET1_RX_CTL__GPIO4_IO08 |
| GPIO4_IO[10] | ENET1_RD0 | Pin 88 | | 1.8V | MX93_PAD_ENET1_RD0__GPIO4_IO10 |
| GPIO4_IO[9] | ENET1_RXC | Pin 89 | | 1.8V | MX93_PAD_ENET1_RXC__GPIO4_IO09 |
| GPIO4_IO[11] | ENET1_RD1 | Pin 90 | | 1.8V | MX93_PAD_ENET1_RD1__GPIO4_IO11 |
| GPIO4_IO[12] | ENET1_RD2 | Pin 91 | | 1.8V | MX93_PAD_ENET1_RD2__GPIO4_IO12 |
| GPIO4_IO[13] | ENET1_RD3 | Pin 92 | | 1.8V | MX93_PAD_ENET1_RD3__GPIO4_IO13 |
| GPIO4_IO[1] | ENET1_MDIO | Pin 93 | | 1.8V | MX93_PAD_ENET1_MDIO__GPIO4_IO01 |
| GPIO4_IO[0] | ENET1_MDC | Pin 94 | | 1.8V | MX93_PAD_ENET1_MDC__GPIO4_IO00 |
| GPIO2_IO[25] | GPIO2_IO[25] | Pin 95 | KBD_PWM | 3.3V | MX93_PAD_GPIO_IO25__GPIO2_IO25 |
| GPIO2_IO[25] | GPIO2_IO[25] | Pin 95 | | 3.3V | MX93_PAD_GPIO_IO25__GPIO2_IO25 |
| GPIO2_IO[23] | GPIO2_IO[23] | Pin 96 | | 3.3V | MX93_PAD_GPIO_IO23__GPIO2_IO23 |
| I2C3_SCL | GPIO2_IO[29] | Pin 97 | I2C_SCL | 3.3V | MX93_PAD_GPIO_IO29__LPI2C3_SCL |
| I2C3_SDA | GPIO2_IO[28] | Pin 98 | I2C_SDA | 3.3V | MX93_PAD_GPIO_IO28__LPI2C3_SDA |
| TPM3_CH3 | GPIO2_IO[24] | Pin 99 | LCD_PWM | 3.3V | MX93_PAD_GPIO_IO24__TPM3_CH3 |
| SAI3_MCLK | GPIO2_IO[17] | Pin 100 | SPI1_MCLK | 3.3V | MX93_PAD_GPIO_IO17__SAI3_MCLK |
| SAI3_TX_BCLK | GPIO2_IO[16] | Pin 101 | I2S1_CLK | 3.3V | MX93_PAD_GPIO_IO16__SAI3_TX_BCLK |
| GPIO2_IO[14] | GPIO2_IO[14] | Pin 102 | | 3.3V | MX93_PAD_GPIO_IO14__GPIO2_IO14 |
| GPIO2_IO[15] | GPIO2_IO[15] | Pin 103 | RF_SW_CTRL | 3.3V | MX93_PAD_GPIO_IO15__GPIO2_IO15 |
| GPIO2_IO[13] | GPIO2_IO[13] | Pin 104 | RF_ATT_LE2 | 3.3V | MX93_PAD_GPIO_IO13__GPIO2_IO13 |
| TPM3_CH2 | GPIO2_IO[12] | Pin 105 | RF_ATT_LE1 | 3.3V | MX93_PAD_GPIO_IO12__TPM3_CH2 |
| GPIO2_IO[7] | GPIO2_IO[7] | Pin 106 | RF_ATT_CLK | 3.3V | MX93_PAD_GPIO_IO07__GPIO2_IO07 |
| GPIO2_IO[6] | GPIO2_IO[6] | Pin 107 | RF_ATT_DATA | 3.3V | MX93_PAD_GPIO_IO06__GPIO2_IO06 |
| GPIO2_IO[14] | GPIO2_IO[14] | Pin 102 | ON/OFF_SW | 3.3V | MX93_PAD_GPIO_IO14__GPIO2_IO14 |
| GPIO2_IO[15] | GPIO2_IO[15] | Pin 103 | | 3.3V | MX93_PAD_GPIO_IO15__GPIO2_IO15 |
| GPIO2_IO[13] | GPIO2_IO[13] | Pin 104 | RF_SW_CTRL | 3.3V | MX93_PAD_GPIO_IO13__GPIO2_IO13 |
| TPM3_CH2 | GPIO2_IO[12] | Pin 105 | KBD_PWM | 3.3V | MX93_PAD_GPIO_IO12__TPM3_CH2 |
| GPIO2_IO[7] | GPIO2_IO[7] | Pin 106 | | 3.3V | MX93_PAD_GPIO_IO07__GPIO2_IO07 |
| GPIO2_IO[6] | GPIO2_IO[6] | Pin 107 | | 3.3V | MX93_PAD_GPIO_IO06__GPIO2_IO06 |
| SPI6_SCK | GPIO2_IO[3] | Pin 108 | SPI1_SCK | 3.3V | MX93_PAD_GPIO_IO03__LPSPI6_SCK |
| GPIO3_IO[20] | SDIO3_CLK | Pin 109 | | 1.8V | MX93_PAD_SD3_CLK__GPIO3_IO20 |
| GPIO3_IO[24] | SDIO3_DATA2 | Pin 110 | | 1.8V | MX93_PAD_SD3_DATA2__GPIO3_IO24 |
| GPIO3_IO[25] | SDIO3_DATA3 | Pin 111 | RF_PA_ENABLE | 1.8V | MX93_PAD_SD3_DATA3__GPIO3_IO25 |
| GPIO3_IO[25] | SDIO3_DATA3 | Pin 111 | | 1.8V | MX93_PAD_SD3_DATA3__GPIO3_IO25 |
| GPIO3_IO[23] | SDIO3_DATA1 | Pin 112 | EXT_PTT | 1.8V | MX93_PAD_SD3_DATA1__GPIO3_IO23 |
| GPIO3_IO[21] | SDIO3_CMD | Pin 113 | INT_PTT | 1.8V | MX93_PAD_SD3_CMD__GPIO3_IO21 |
| GPIO3_IO[22] | SDIO3_DATA0 | Pin 114 | SIDE_BTN | 1.8V | MX93_PAD_SD3_DATA0__GPIO3_IO22 |

View file

@ -1,30 +0,0 @@
{
"tabs": {
"type": "full",
"patchcorners": "False"
},
"cuts": {
"type": "vcuts"
},
"framing": {
"type": "frame",
"width": "11mm"
},
"tooling": {
"type": "4hole",
"hoffset": "5mm",
"voffset": "25mm"
},
"fiducials": {
"type": "3fid",
"hoffset": "5mm",
"voffset": "20mm"
},
"text": {
"type": "simple",
"voffset": "3mm",
"width": "2.0mm",
"height": "2.0mm",
"text": "LinHT PCB"
}
}

View file

@ -1,930 +0,0 @@
ISO-10303-21;
HEADER;
FILE_DESCRIPTION(('STEP AP214'),'1');
FILE_NAME('ANT_ANT8010LL05R1516A_PUL','2025-11-26T08:41:00',(''),(''),'','','');
FILE_SCHEMA(('AUTOMOTIVE_DESIGN'));
ENDSEC;
DATA;
#1=SHAPE_DEFINITION_REPRESENTATION(#2,#3);
#2=PRODUCT_DEFINITION_SHAPE('',$,#4);
#3=SHAPE_REPRESENTATION('',(#188,#484,#780,#1077,#19),#11);
#4=PRODUCT_DEFINITION('design','example product_definition',#6,#5);
#5=PRODUCT_DEFINITION_CONTEXT('3D Mechanical Parts',#10,'design');
#6=PRODUCT_DEFINITION_FORMATION('1.0','first version',#8);
#7=APPLICATION_PROTOCOL_DEFINITION('international standard','automotive_design',2003,#10);
#8=PRODUCT('product','part','',(#9));
#9=PRODUCT_CONTEXT('3D Mechanical Parts',#10,'mechanical');
#10=APPLICATION_CONTEXT('Core Data for Automotive Mechanical Design Process');
#11=(GEOMETRIC_REPRESENTATION_CONTEXT(3) GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#12)) GLOBAL_UNIT_ASSIGNED_CONTEXT((#13,#14,#18)) REPRESENTATION_CONTEXT('ID1','3D'));
#12=UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-005),#13,'DISTANCE_ACCURACY_VALUE','Maximum model space distance between geometric entities at asserted connectivities');
#13=(LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.));
#14=(CONVERSION_BASED_UNIT('degree',#16) NAMED_UNIT(#15) PLANE_ANGLE_UNIT());
#15=DIMENSIONAL_EXPONENTS(0.,0.,0.,0.,0.,0.,0.);
#16=MEASURE_WITH_UNIT(PLANE_ANGLE_MEASURE(0.01745329252),#17);
#17=(NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.));
#18=(NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT());
#19=AXIS2_PLACEMENT_3D('',#20,#21,#22);
#20=CARTESIAN_POINT('',(0.0,0.0,0.0));
#21=DIRECTION('',(0.0,0.0,1.0));
#22=DIRECTION('',(1.0,0.0,0.0));
#25=MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION($,(#190,#239,#288,#337,#386,#435,#486,#535,#584,#633,#682,#731,#782,#831,#880,#929,#978,#1027,#1079,#1128,#1177,#1226,#1275,#1344,#1413,#1482,#1551,#1600,#1649,#1698),#11);
#26=PRODUCT_CATEGORY_RELATIONSHIP('','',#27,#28);
#27=PRODUCT_CATEGORY('part','');
#28=PRODUCT_RELATED_PRODUCT_CATEGORY('','',(#8));
#34=PRESENTATION_STYLE_ASSIGNMENT((#35,#40));
#35=SURFACE_STYLE_USAGE(.BOTH.,#36);
#36=SURFACE_SIDE_STYLE('',(#37));
#37=SURFACE_STYLE_FILL_AREA(#38);
#38=FILL_AREA_STYLE('',(#39));
#39=FILL_AREA_STYLE_COLOUR('',#41);
#40=CURVE_STYLE('',#42,POSITIVE_LENGTH_MEASURE(0.1),#41);
#41=COLOUR_RGB('Aluminum',0.725,0.725,0.725);
#42=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#43=PRESENTATION_STYLE_ASSIGNMENT((#44,#49));
#44=SURFACE_STYLE_USAGE(.BOTH.,#45);
#45=SURFACE_SIDE_STYLE('',(#46));
#46=SURFACE_STYLE_FILL_AREA(#47);
#47=FILL_AREA_STYLE('',(#48));
#48=FILL_AREA_STYLE_COLOUR('',#50);
#49=CURVE_STYLE('',#51,POSITIVE_LENGTH_MEASURE(0.1),#50);
#50=COLOUR_RGB('Brown',0.459,0.345,0.176);
#51=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#52=PRESENTATION_STYLE_ASSIGNMENT((#53,#58));
#53=SURFACE_STYLE_USAGE(.BOTH.,#54);
#54=SURFACE_SIDE_STYLE('',(#55));
#55=SURFACE_STYLE_FILL_AREA(#56);
#56=FILL_AREA_STYLE('',(#57));
#57=FILL_AREA_STYLE_COLOUR('',#59);
#58=CURVE_STYLE('',#60,POSITIVE_LENGTH_MEASURE(0.1),#59);
#59=COLOUR_RGB('Pin1Wrap',0.98,0.706,0.176);
#60=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#61=PRESENTATION_STYLE_ASSIGNMENT((#62,#67));
#62=SURFACE_STYLE_USAGE(.BOTH.,#63);
#63=SURFACE_SIDE_STYLE('',(#64));
#64=SURFACE_STYLE_FILL_AREA(#65);
#65=FILL_AREA_STYLE('',(#66));
#66=FILL_AREA_STYLE_COLOUR('',#68);
#67=CURVE_STYLE('',#69,POSITIVE_LENGTH_MEASURE(0.1),#68);
#68=COLOUR_RGB('HeatTab',0.588,0.588,0.588);
#69=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#70=PRESENTATION_STYLE_ASSIGNMENT((#71,#76));
#71=SURFACE_STYLE_USAGE(.BOTH.,#72);
#72=SURFACE_SIDE_STYLE('',(#73));
#73=SURFACE_STYLE_FILL_AREA(#74);
#74=FILL_AREA_STYLE('',(#75));
#75=FILL_AREA_STYLE_COLOUR('',#77);
#76=CURVE_STYLE('',#78,POSITIVE_LENGTH_MEASURE(0.1),#77);
#77=COLOUR_RGB('Black',0.196,0.196,0.196);
#78=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#79=PRESENTATION_STYLE_ASSIGNMENT((#80,#85));
#80=SURFACE_STYLE_USAGE(.BOTH.,#81);
#81=SURFACE_SIDE_STYLE('',(#82));
#82=SURFACE_STYLE_FILL_AREA(#83);
#83=FILL_AREA_STYLE('',(#84));
#84=FILL_AREA_STYLE_COLOUR('',#86);
#85=CURVE_STYLE('',#87,POSITIVE_LENGTH_MEASURE(0.1),#86);
#86=COLOUR_RGB('Gold',0.843,0.686,0.0);
#87=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#88=PRESENTATION_STYLE_ASSIGNMENT((#89,#94));
#89=SURFACE_STYLE_USAGE(.BOTH.,#90);
#90=SURFACE_SIDE_STYLE('',(#91));
#91=SURFACE_STYLE_FILL_AREA(#92);
#92=FILL_AREA_STYLE('',(#93));
#93=FILL_AREA_STYLE_COLOUR('',#95);
#94=CURVE_STYLE('',#96,POSITIVE_LENGTH_MEASURE(0.1),#95);
#95=COLOUR_RGB('Tan',0.784,0.686,0.51);
#96=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#97=PRESENTATION_STYLE_ASSIGNMENT((#98,#103));
#98=SURFACE_STYLE_USAGE(.BOTH.,#99);
#99=SURFACE_SIDE_STYLE('',(#100));
#100=SURFACE_STYLE_FILL_AREA(#101);
#101=FILL_AREA_STYLE('',(#102));
#102=FILL_AREA_STYLE_COLOUR('',#104);
#103=CURVE_STYLE('',#105,POSITIVE_LENGTH_MEASURE(0.1),#104);
#104=COLOUR_RGB('Gray',0.431,0.431,0.431);
#105=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#106=PRESENTATION_STYLE_ASSIGNMENT((#107,#112));
#107=SURFACE_STYLE_USAGE(.BOTH.,#108);
#108=SURFACE_SIDE_STYLE('',(#109));
#109=SURFACE_STYLE_FILL_AREA(#110);
#110=FILL_AREA_STYLE('',(#111));
#111=FILL_AREA_STYLE_COLOUR('',#113);
#112=CURVE_STYLE('',#114,POSITIVE_LENGTH_MEASURE(0.1),#113);
#113=COLOUR_RGB('Red',0.6,0.0,0.0);
#114=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#115=PRESENTATION_STYLE_ASSIGNMENT((#116,#121));
#116=SURFACE_STYLE_USAGE(.BOTH.,#117);
#117=SURFACE_SIDE_STYLE('',(#118));
#118=SURFACE_STYLE_FILL_AREA(#119);
#119=FILL_AREA_STYLE('',(#120));
#120=FILL_AREA_STYLE_COLOUR('',#122);
#121=CURVE_STYLE('',#123,POSITIVE_LENGTH_MEASURE(0.1),#122);
#122=COLOUR_RGB('Blue',0.157,0.157,0.588);
#123=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#124=PRESENTATION_STYLE_ASSIGNMENT((#125,#130));
#125=SURFACE_STYLE_USAGE(.BOTH.,#126);
#126=SURFACE_SIDE_STYLE('',(#127));
#127=SURFACE_STYLE_FILL_AREA(#128);
#128=FILL_AREA_STYLE('',(#129));
#129=FILL_AREA_STYLE_COLOUR('',#131);
#130=CURVE_STYLE('',#132,POSITIVE_LENGTH_MEASURE(0.1),#131);
#131=COLOUR_RGB('Maroon',0.294,0.0,0.0);
#132=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#133=PRESENTATION_STYLE_ASSIGNMENT((#134,#139));
#134=SURFACE_STYLE_USAGE(.BOTH.,#135);
#135=SURFACE_SIDE_STYLE('',(#136));
#136=SURFACE_STYLE_FILL_AREA(#137);
#137=FILL_AREA_STYLE('',(#138));
#138=FILL_AREA_STYLE_COLOUR('',#140);
#139=CURVE_STYLE('',#141,POSITIVE_LENGTH_MEASURE(0.1),#140);
#140=COLOUR_RGB('Green',0.0,0.294,0.0);
#141=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#142=PRESENTATION_STYLE_ASSIGNMENT((#143,#148));
#143=SURFACE_STYLE_USAGE(.BOTH.,#144);
#144=SURFACE_SIDE_STYLE('',(#145));
#145=SURFACE_STYLE_FILL_AREA(#146);
#146=FILL_AREA_STYLE('',(#147));
#147=FILL_AREA_STYLE_COLOUR('',#149);
#148=CURVE_STYLE('',#150,POSITIVE_LENGTH_MEASURE(0.1),#149);
#149=COLOUR_RGB('Pin1',0.588,0.588,0.059);
#150=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#151=PRESENTATION_STYLE_ASSIGNMENT((#152,#157));
#152=SURFACE_STYLE_USAGE(.BOTH.,#153);
#153=SURFACE_SIDE_STYLE('',(#154));
#154=SURFACE_STYLE_FILL_AREA(#155);
#155=FILL_AREA_STYLE('',(#156));
#156=FILL_AREA_STYLE_COLOUR('',#158);
#157=CURVE_STYLE('',#159,POSITIVE_LENGTH_MEASURE(0.1),#158);
#158=COLOUR_RGB('Pin1Rad',0.588,0.588,0.588);
#159=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#160=PRESENTATION_STYLE_ASSIGNMENT((#161,#166));
#161=SURFACE_STYLE_USAGE(.BOTH.,#162);
#162=SURFACE_SIDE_STYLE('',(#163));
#163=SURFACE_STYLE_FILL_AREA(#164);
#164=FILL_AREA_STYLE('',(#165));
#165=FILL_AREA_STYLE_COLOUR('',#167);
#166=CURVE_STYLE('',#168,POSITIVE_LENGTH_MEASURE(0.1),#167);
#167=COLOUR_RGB('Pin1Axial',0.98,0.706,0.176);
#168=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#169=PRESENTATION_STYLE_ASSIGNMENT((#170,#175));
#170=SURFACE_STYLE_USAGE(.BOTH.,#171);
#171=SURFACE_SIDE_STYLE('',(#172));
#172=SURFACE_STYLE_FILL_AREA(#173);
#173=FILL_AREA_STYLE('',(#174));
#174=FILL_AREA_STYLE_COLOUR('',#176);
#175=CURVE_STYLE('',#177,POSITIVE_LENGTH_MEASURE(0.1),#176);
#176=COLOUR_RGB('Pin1Tant',0.459,0.345,0.176);
#177=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#178=PRESENTATION_STYLE_ASSIGNMENT((#179,#184));
#179=SURFACE_STYLE_USAGE(.BOTH.,#180);
#180=SURFACE_SIDE_STYLE('',(#181));
#181=SURFACE_STYLE_FILL_AREA(#182);
#182=FILL_AREA_STYLE('',(#183));
#183=FILL_AREA_STYLE_COLOUR('',#185);
#184=CURVE_STYLE('',#186,POSITIVE_LENGTH_MEASURE(0.1),#185);
#185=COLOUR_RGB('Shroud',0.235,0.235,0.235);
#186=DRAUGHTING_PRE_DEFINED_CURVE_FONT('continuous');
#188=MANIFOLD_SOLID_BREP($,#189);
#189=CLOSED_SHELL('',(#191,#240,#289,#338,#387,#436));
#190=STYLED_ITEM('',(#43),#191);
#191=ADVANCED_FACE('',(#197),#192,.T.);
#192=PLANE('',#193);
#193=AXIS2_PLACEMENT_3D('',#194,#195,#196);
#194=CARTESIAN_POINT('',(-3.061,-0.48,0.117));
#195=DIRECTION('',(0.0,-1.0,0.0));
#196=DIRECTION('',(0.,0.,1.));
#197=FACE_OUTER_BOUND('',#198,.T.);
#198=EDGE_LOOP('',(#199,#209,#219,#229));
#202=CARTESIAN_POINT('',(3.061,-0.48,0.117));
#201=VERTEX_POINT('',#202);
#204=CARTESIAN_POINT('',(-3.061,-0.48,0.117));
#203=VERTEX_POINT('',#204);
#200=EDGE_CURVE('',#201,#203,#205,.T.);
#205=LINE('',#202,#207);
#207=VECTOR('',#208,6.1214);
#208=DIRECTION('',(-1.0,0.0,0.0));
#199=ORIENTED_EDGE('',*,*,#200,.F.);
#212=CARTESIAN_POINT('',(3.061,-0.48,1.077));
#211=VERTEX_POINT('',#212);
#210=EDGE_CURVE('',#211,#201,#215,.T.);
#215=LINE('',#212,#217);
#217=VECTOR('',#218,0.959394285714286);
#218=DIRECTION('',(0.0,0.0,-1.0));
#209=ORIENTED_EDGE('',*,*,#210,.F.);
#222=CARTESIAN_POINT('',(-3.061,-0.48,1.077));
#221=VERTEX_POINT('',#222);
#220=EDGE_CURVE('',#221,#211,#225,.T.);
#225=LINE('',#222,#227);
#227=VECTOR('',#228,6.1214);
#228=DIRECTION('',(1.0,0.0,0.0));
#219=ORIENTED_EDGE('',*,*,#220,.F.);
#230=EDGE_CURVE('',#203,#221,#235,.T.);
#235=LINE('',#204,#237);
#237=VECTOR('',#238,0.959394285714286);
#238=DIRECTION('',(0.0,0.0,1.0));
#229=ORIENTED_EDGE('',*,*,#230,.F.);
#239=STYLED_ITEM('',(#43),#240);
#240=ADVANCED_FACE('',(#246),#241,.T.);
#241=PLANE('',#242);
#242=AXIS2_PLACEMENT_3D('',#243,#244,#245);
#243=CARTESIAN_POINT('',(3.061,-0.48,0.117));
#244=DIRECTION('',(1.0,0.0,0.0));
#245=DIRECTION('',(0.,0.,1.));
#246=FACE_OUTER_BOUND('',#247,.T.);
#247=EDGE_LOOP('',(#248,#258,#268,#278));
#251=CARTESIAN_POINT('',(3.061,0.48,0.117));
#250=VERTEX_POINT('',#251);
#249=EDGE_CURVE('',#250,#201,#254,.T.);
#254=LINE('',#251,#256);
#256=VECTOR('',#257,0.959394285714286);
#257=DIRECTION('',(0.0,-1.0,0.0));
#248=ORIENTED_EDGE('',*,*,#249,.F.);
#261=CARTESIAN_POINT('',(3.061,0.48,1.077));
#260=VERTEX_POINT('',#261);
#259=EDGE_CURVE('',#260,#250,#264,.T.);
#264=LINE('',#261,#266);
#266=VECTOR('',#267,0.959394285714286);
#267=DIRECTION('',(0.0,0.0,-1.0));
#258=ORIENTED_EDGE('',*,*,#259,.F.);
#269=EDGE_CURVE('',#211,#260,#274,.T.);
#274=LINE('',#212,#276);
#276=VECTOR('',#277,0.959394285714286);
#277=DIRECTION('',(0.0,1.0,0.0));
#268=ORIENTED_EDGE('',*,*,#269,.F.);
#278=ORIENTED_EDGE('',*,*,#210,.T.);
#288=STYLED_ITEM('',(#43),#289);
#289=ADVANCED_FACE('',(#295),#290,.T.);
#290=PLANE('',#291);
#291=AXIS2_PLACEMENT_3D('',#292,#293,#294);
#292=CARTESIAN_POINT('',(3.061,0.48,0.117));
#293=DIRECTION('',(0.0,1.0,0.0));
#294=DIRECTION('',(0.,0.,1.));
#295=FACE_OUTER_BOUND('',#296,.T.);
#296=EDGE_LOOP('',(#297,#307,#317,#327));
#300=CARTESIAN_POINT('',(-3.061,0.48,0.117));
#299=VERTEX_POINT('',#300);
#298=EDGE_CURVE('',#299,#250,#303,.T.);
#303=LINE('',#300,#305);
#305=VECTOR('',#306,6.1214);
#306=DIRECTION('',(1.0,0.0,0.0));
#297=ORIENTED_EDGE('',*,*,#298,.F.);
#310=CARTESIAN_POINT('',(-3.061,0.48,1.077));
#309=VERTEX_POINT('',#310);
#308=EDGE_CURVE('',#309,#299,#313,.T.);
#313=LINE('',#310,#315);
#315=VECTOR('',#316,0.959394285714286);
#316=DIRECTION('',(0.0,0.0,-1.0));
#307=ORIENTED_EDGE('',*,*,#308,.F.);
#318=EDGE_CURVE('',#260,#309,#323,.T.);
#323=LINE('',#261,#325);
#325=VECTOR('',#326,6.1214);
#326=DIRECTION('',(-1.0,0.0,0.0));
#317=ORIENTED_EDGE('',*,*,#318,.F.);
#327=ORIENTED_EDGE('',*,*,#259,.T.);
#337=STYLED_ITEM('',(#43),#338);
#338=ADVANCED_FACE('',(#344),#339,.T.);
#339=PLANE('',#340);
#340=AXIS2_PLACEMENT_3D('',#341,#342,#343);
#341=CARTESIAN_POINT('',(-3.061,0.48,0.117));
#342=DIRECTION('',(-1.0,0.0,0.0));
#343=DIRECTION('',(0.,0.,1.));
#344=FACE_OUTER_BOUND('',#345,.T.);
#345=EDGE_LOOP('',(#346,#356,#366,#376));
#347=EDGE_CURVE('',#203,#299,#352,.T.);
#352=LINE('',#204,#354);
#354=VECTOR('',#355,0.959394285714286);
#355=DIRECTION('',(0.0,1.0,0.0));
#346=ORIENTED_EDGE('',*,*,#347,.F.);
#356=ORIENTED_EDGE('',*,*,#230,.T.);
#367=EDGE_CURVE('',#309,#221,#372,.T.);
#372=LINE('',#310,#374);
#374=VECTOR('',#375,0.959394285714286);
#375=DIRECTION('',(0.0,-1.0,0.0));
#366=ORIENTED_EDGE('',*,*,#367,.F.);
#376=ORIENTED_EDGE('',*,*,#308,.T.);
#386=STYLED_ITEM('',(#43),#387);
#387=ADVANCED_FACE('',(#393),#388,.T.);
#388=PLANE('',#389);
#389=AXIS2_PLACEMENT_3D('',#390,#391,#392);
#390=CARTESIAN_POINT('',(-3.061,0.48,0.117));
#391=DIRECTION('',(0.0,0.0,-1.0));
#392=DIRECTION('',(0.,1.,0.));
#393=FACE_OUTER_BOUND('',#394,.T.);
#394=EDGE_LOOP('',(#395,#405,#415,#425));
#395=ORIENTED_EDGE('',*,*,#298,.T.);
#405=ORIENTED_EDGE('',*,*,#249,.T.);
#415=ORIENTED_EDGE('',*,*,#200,.T.);
#425=ORIENTED_EDGE('',*,*,#347,.T.);
#435=STYLED_ITEM('',(#43),#436);
#436=ADVANCED_FACE('',(#442),#437,.T.);
#437=PLANE('',#438);
#438=AXIS2_PLACEMENT_3D('',#439,#440,#441);
#439=CARTESIAN_POINT('',(-3.061,-0.48,1.077));
#440=DIRECTION('',(0.0,0.0,1.0));
#441=DIRECTION('',(0.,1.,0.));
#442=FACE_OUTER_BOUND('',#443,.T.);
#443=EDGE_LOOP('',(#444,#454,#464,#474));
#444=ORIENTED_EDGE('',*,*,#220,.T.);
#454=ORIENTED_EDGE('',*,*,#269,.T.);
#464=ORIENTED_EDGE('',*,*,#318,.T.);
#474=ORIENTED_EDGE('',*,*,#367,.T.);
#484=MANIFOLD_SOLID_BREP($,#485);
#485=CLOSED_SHELL('',(#487,#536,#585,#634,#683,#732));
#486=STYLED_ITEM('',(#34),#487);
#487=ADVANCED_FACE('',(#493),#488,.T.);
#488=PLANE('',#489);
#489=AXIS2_PLACEMENT_3D('',#490,#491,#492);
#490=CARTESIAN_POINT('',(3.061,-0.597,0.0));
#491=DIRECTION('',(0.0,-1.0,0.0));
#492=DIRECTION('',(0.,0.,1.));
#493=FACE_OUTER_BOUND('',#494,.T.);
#494=EDGE_LOOP('',(#495,#505,#515,#525));
#498=CARTESIAN_POINT('',(4.102,-0.597,0.0));
#497=VERTEX_POINT('',#498);
#500=CARTESIAN_POINT('',(3.061,-0.597,0.0));
#499=VERTEX_POINT('',#500);
#496=EDGE_CURVE('',#497,#499,#501,.T.);
#501=LINE('',#498,#503);
#503=VECTOR('',#504,1.0414);
#504=DIRECTION('',(-1.0,0.0,0.0));
#495=ORIENTED_EDGE('',*,*,#496,.F.);
#508=CARTESIAN_POINT('',(4.102,-0.597,1.194));
#507=VERTEX_POINT('',#508);
#506=EDGE_CURVE('',#507,#497,#511,.T.);
#511=LINE('',#508,#513);
#513=VECTOR('',#514,1.1938);
#514=DIRECTION('',(0.0,0.0,-1.0));
#505=ORIENTED_EDGE('',*,*,#506,.F.);
#518=CARTESIAN_POINT('',(3.061,-0.597,1.194));
#517=VERTEX_POINT('',#518);
#516=EDGE_CURVE('',#517,#507,#521,.T.);
#521=LINE('',#518,#523);
#523=VECTOR('',#524,1.0414);
#524=DIRECTION('',(1.0,0.0,0.0));
#515=ORIENTED_EDGE('',*,*,#516,.F.);
#526=EDGE_CURVE('',#499,#517,#531,.T.);
#531=LINE('',#500,#533);
#533=VECTOR('',#534,1.1938);
#534=DIRECTION('',(0.0,0.0,1.0));
#525=ORIENTED_EDGE('',*,*,#526,.F.);
#535=STYLED_ITEM('',(#34),#536);
#536=ADVANCED_FACE('',(#542),#537,.T.);
#537=PLANE('',#538);
#538=AXIS2_PLACEMENT_3D('',#539,#540,#541);
#539=CARTESIAN_POINT('',(4.102,-0.597,0.0));
#540=DIRECTION('',(1.0,0.0,0.0));
#541=DIRECTION('',(0.,0.,1.));
#542=FACE_OUTER_BOUND('',#543,.T.);
#543=EDGE_LOOP('',(#544,#554,#564,#574));
#547=CARTESIAN_POINT('',(4.102,0.597,0.0));
#546=VERTEX_POINT('',#547);
#545=EDGE_CURVE('',#546,#497,#550,.T.);
#550=LINE('',#547,#552);
#552=VECTOR('',#553,1.1938);
#553=DIRECTION('',(0.0,-1.0,0.0));
#544=ORIENTED_EDGE('',*,*,#545,.F.);
#557=CARTESIAN_POINT('',(4.102,0.597,1.194));
#556=VERTEX_POINT('',#557);
#555=EDGE_CURVE('',#556,#546,#560,.T.);
#560=LINE('',#557,#562);
#562=VECTOR('',#563,1.1938);
#563=DIRECTION('',(0.0,0.0,-1.0));
#554=ORIENTED_EDGE('',*,*,#555,.F.);
#565=EDGE_CURVE('',#507,#556,#570,.T.);
#570=LINE('',#508,#572);
#572=VECTOR('',#573,1.1938);
#573=DIRECTION('',(0.0,1.0,0.0));
#564=ORIENTED_EDGE('',*,*,#565,.F.);
#574=ORIENTED_EDGE('',*,*,#506,.T.);
#584=STYLED_ITEM('',(#34),#585);
#585=ADVANCED_FACE('',(#591),#586,.T.);
#586=PLANE('',#587);
#587=AXIS2_PLACEMENT_3D('',#588,#589,#590);
#588=CARTESIAN_POINT('',(4.102,0.597,0.0));
#589=DIRECTION('',(0.0,1.0,0.0));
#590=DIRECTION('',(0.,0.,1.));
#591=FACE_OUTER_BOUND('',#592,.T.);
#592=EDGE_LOOP('',(#593,#603,#613,#623));
#596=CARTESIAN_POINT('',(3.061,0.597,0.0));
#595=VERTEX_POINT('',#596);
#594=EDGE_CURVE('',#595,#546,#599,.T.);
#599=LINE('',#596,#601);
#601=VECTOR('',#602,1.0414);
#602=DIRECTION('',(1.0,0.0,0.0));
#593=ORIENTED_EDGE('',*,*,#594,.F.);
#606=CARTESIAN_POINT('',(3.061,0.597,1.194));
#605=VERTEX_POINT('',#606);
#604=EDGE_CURVE('',#605,#595,#609,.T.);
#609=LINE('',#606,#611);
#611=VECTOR('',#612,1.1938);
#612=DIRECTION('',(0.0,0.0,-1.0));
#603=ORIENTED_EDGE('',*,*,#604,.F.);
#614=EDGE_CURVE('',#556,#605,#619,.T.);
#619=LINE('',#557,#621);
#621=VECTOR('',#622,1.0414);
#622=DIRECTION('',(-1.0,0.0,0.0));
#613=ORIENTED_EDGE('',*,*,#614,.F.);
#623=ORIENTED_EDGE('',*,*,#555,.T.);
#633=STYLED_ITEM('',(#34),#634);
#634=ADVANCED_FACE('',(#640),#635,.T.);
#635=PLANE('',#636);
#636=AXIS2_PLACEMENT_3D('',#637,#638,#639);
#637=CARTESIAN_POINT('',(3.061,0.597,0.0));
#638=DIRECTION('',(-1.0,0.0,0.0));
#639=DIRECTION('',(0.,0.,1.));
#640=FACE_OUTER_BOUND('',#641,.T.);
#641=EDGE_LOOP('',(#642,#652,#662,#672));
#643=EDGE_CURVE('',#499,#595,#648,.T.);
#648=LINE('',#500,#650);
#650=VECTOR('',#651,1.1938);
#651=DIRECTION('',(0.0,1.0,0.0));
#642=ORIENTED_EDGE('',*,*,#643,.F.);
#652=ORIENTED_EDGE('',*,*,#526,.T.);
#663=EDGE_CURVE('',#605,#517,#668,.T.);
#668=LINE('',#606,#670);
#670=VECTOR('',#671,1.1938);
#671=DIRECTION('',(0.0,-1.0,0.0));
#662=ORIENTED_EDGE('',*,*,#663,.F.);
#672=ORIENTED_EDGE('',*,*,#604,.T.);
#682=STYLED_ITEM('',(#34),#683);
#683=ADVANCED_FACE('',(#689),#684,.T.);
#684=PLANE('',#685);
#685=AXIS2_PLACEMENT_3D('',#686,#687,#688);
#686=CARTESIAN_POINT('',(3.061,0.597,0.0));
#687=DIRECTION('',(0.0,0.0,-1.0));
#688=DIRECTION('',(0.,1.,0.));
#689=FACE_OUTER_BOUND('',#690,.T.);
#690=EDGE_LOOP('',(#691,#701,#711,#721));
#691=ORIENTED_EDGE('',*,*,#594,.T.);
#701=ORIENTED_EDGE('',*,*,#545,.T.);
#711=ORIENTED_EDGE('',*,*,#496,.T.);
#721=ORIENTED_EDGE('',*,*,#643,.T.);
#731=STYLED_ITEM('',(#34),#732);
#732=ADVANCED_FACE('',(#738),#733,.T.);
#733=PLANE('',#734);
#734=AXIS2_PLACEMENT_3D('',#735,#736,#737);
#735=CARTESIAN_POINT('',(3.061,-0.597,1.194));
#736=DIRECTION('',(0.0,0.0,1.0));
#737=DIRECTION('',(0.,1.,0.));
#738=FACE_OUTER_BOUND('',#739,.T.);
#739=EDGE_LOOP('',(#740,#750,#760,#770));
#740=ORIENTED_EDGE('',*,*,#516,.T.);
#750=ORIENTED_EDGE('',*,*,#565,.T.);
#760=ORIENTED_EDGE('',*,*,#614,.T.);
#770=ORIENTED_EDGE('',*,*,#663,.T.);
#780=MANIFOLD_SOLID_BREP($,#781);
#781=CLOSED_SHELL('',(#783,#832,#881,#930,#979,#1028));
#782=STYLED_ITEM('',(#34),#783);
#783=ADVANCED_FACE('',(#789),#784,.T.);
#784=PLANE('',#785);
#785=AXIS2_PLACEMENT_3D('',#786,#787,#788);
#786=CARTESIAN_POINT('',(-4.102,-0.597,0.0));
#787=DIRECTION('',(0.0,-1.0,0.0));
#788=DIRECTION('',(0.,0.,1.));
#789=FACE_OUTER_BOUND('',#790,.T.);
#790=EDGE_LOOP('',(#791,#801,#811,#821));
#794=CARTESIAN_POINT('',(-3.061,-0.597,0.0));
#793=VERTEX_POINT('',#794);
#796=CARTESIAN_POINT('',(-4.102,-0.597,0.0));
#795=VERTEX_POINT('',#796);
#792=EDGE_CURVE('',#793,#795,#797,.T.);
#797=LINE('',#794,#799);
#799=VECTOR('',#800,1.0414);
#800=DIRECTION('',(-1.0,0.0,0.0));
#791=ORIENTED_EDGE('',*,*,#792,.F.);
#804=CARTESIAN_POINT('',(-3.061,-0.597,1.194));
#803=VERTEX_POINT('',#804);
#802=EDGE_CURVE('',#803,#793,#807,.T.);
#807=LINE('',#804,#809);
#809=VECTOR('',#810,1.1938);
#810=DIRECTION('',(0.0,0.0,-1.0));
#801=ORIENTED_EDGE('',*,*,#802,.F.);
#814=CARTESIAN_POINT('',(-4.102,-0.597,1.194));
#813=VERTEX_POINT('',#814);
#812=EDGE_CURVE('',#813,#803,#817,.T.);
#817=LINE('',#814,#819);
#819=VECTOR('',#820,1.0414);
#820=DIRECTION('',(1.0,0.0,0.0));
#811=ORIENTED_EDGE('',*,*,#812,.F.);
#822=EDGE_CURVE('',#795,#813,#827,.T.);
#827=LINE('',#796,#829);
#829=VECTOR('',#830,1.1938);
#830=DIRECTION('',(0.0,0.0,1.0));
#821=ORIENTED_EDGE('',*,*,#822,.F.);
#831=STYLED_ITEM('',(#34),#832);
#832=ADVANCED_FACE('',(#838),#833,.T.);
#833=PLANE('',#834);
#834=AXIS2_PLACEMENT_3D('',#835,#836,#837);
#835=CARTESIAN_POINT('',(-3.061,-0.597,0.0));
#836=DIRECTION('',(1.0,0.0,0.0));
#837=DIRECTION('',(0.,0.,1.));
#838=FACE_OUTER_BOUND('',#839,.T.);
#839=EDGE_LOOP('',(#840,#850,#860,#870));
#843=CARTESIAN_POINT('',(-3.061,0.597,0.0));
#842=VERTEX_POINT('',#843);
#841=EDGE_CURVE('',#842,#793,#846,.T.);
#846=LINE('',#843,#848);
#848=VECTOR('',#849,1.1938);
#849=DIRECTION('',(0.0,-1.0,0.0));
#840=ORIENTED_EDGE('',*,*,#841,.F.);
#853=CARTESIAN_POINT('',(-3.061,0.597,1.194));
#852=VERTEX_POINT('',#853);
#851=EDGE_CURVE('',#852,#842,#856,.T.);
#856=LINE('',#853,#858);
#858=VECTOR('',#859,1.1938);
#859=DIRECTION('',(0.0,0.0,-1.0));
#850=ORIENTED_EDGE('',*,*,#851,.F.);
#861=EDGE_CURVE('',#803,#852,#866,.T.);
#866=LINE('',#804,#868);
#868=VECTOR('',#869,1.1938);
#869=DIRECTION('',(0.0,1.0,0.0));
#860=ORIENTED_EDGE('',*,*,#861,.F.);
#870=ORIENTED_EDGE('',*,*,#802,.T.);
#880=STYLED_ITEM('',(#34),#881);
#881=ADVANCED_FACE('',(#887),#882,.T.);
#882=PLANE('',#883);
#883=AXIS2_PLACEMENT_3D('',#884,#885,#886);
#884=CARTESIAN_POINT('',(-3.061,0.597,0.0));
#885=DIRECTION('',(0.0,1.0,0.0));
#886=DIRECTION('',(0.,0.,1.));
#887=FACE_OUTER_BOUND('',#888,.T.);
#888=EDGE_LOOP('',(#889,#899,#909,#919));
#892=CARTESIAN_POINT('',(-4.102,0.597,0.0));
#891=VERTEX_POINT('',#892);
#890=EDGE_CURVE('',#891,#842,#895,.T.);
#895=LINE('',#892,#897);
#897=VECTOR('',#898,1.0414);
#898=DIRECTION('',(1.0,0.0,0.0));
#889=ORIENTED_EDGE('',*,*,#890,.F.);
#902=CARTESIAN_POINT('',(-4.102,0.597,1.194));
#901=VERTEX_POINT('',#902);
#900=EDGE_CURVE('',#901,#891,#905,.T.);
#905=LINE('',#902,#907);
#907=VECTOR('',#908,1.1938);
#908=DIRECTION('',(0.0,0.0,-1.0));
#899=ORIENTED_EDGE('',*,*,#900,.F.);
#910=EDGE_CURVE('',#852,#901,#915,.T.);
#915=LINE('',#853,#917);
#917=VECTOR('',#918,1.0414);
#918=DIRECTION('',(-1.0,0.0,0.0));
#909=ORIENTED_EDGE('',*,*,#910,.F.);
#919=ORIENTED_EDGE('',*,*,#851,.T.);
#929=STYLED_ITEM('',(#34),#930);
#930=ADVANCED_FACE('',(#936),#931,.T.);
#931=PLANE('',#932);
#932=AXIS2_PLACEMENT_3D('',#933,#934,#935);
#933=CARTESIAN_POINT('',(-4.102,0.597,0.0));
#934=DIRECTION('',(-1.0,0.0,0.0));
#935=DIRECTION('',(0.,0.,1.));
#936=FACE_OUTER_BOUND('',#937,.T.);
#937=EDGE_LOOP('',(#938,#948,#958,#968));
#939=EDGE_CURVE('',#795,#891,#944,.T.);
#944=LINE('',#796,#946);
#946=VECTOR('',#947,1.1938);
#947=DIRECTION('',(0.0,1.0,0.0));
#938=ORIENTED_EDGE('',*,*,#939,.F.);
#948=ORIENTED_EDGE('',*,*,#822,.T.);
#959=EDGE_CURVE('',#901,#813,#964,.T.);
#964=LINE('',#902,#966);
#966=VECTOR('',#967,1.1938);
#967=DIRECTION('',(0.0,-1.0,0.0));
#958=ORIENTED_EDGE('',*,*,#959,.F.);
#968=ORIENTED_EDGE('',*,*,#900,.T.);
#978=STYLED_ITEM('',(#34),#979);
#979=ADVANCED_FACE('',(#985),#980,.T.);
#980=PLANE('',#981);
#981=AXIS2_PLACEMENT_3D('',#982,#983,#984);
#982=CARTESIAN_POINT('',(-4.102,0.597,0.0));
#983=DIRECTION('',(0.0,0.0,-1.0));
#984=DIRECTION('',(0.,1.,0.));
#985=FACE_OUTER_BOUND('',#986,.T.);
#986=EDGE_LOOP('',(#987,#997,#1007,#1017));
#987=ORIENTED_EDGE('',*,*,#890,.T.);
#997=ORIENTED_EDGE('',*,*,#841,.T.);
#1007=ORIENTED_EDGE('',*,*,#792,.T.);
#1017=ORIENTED_EDGE('',*,*,#939,.T.);
#1027=STYLED_ITEM('',(#34),#1028);
#1028=ADVANCED_FACE('',(#1034),#1029,.T.);
#1029=PLANE('',#1030);
#1030=AXIS2_PLACEMENT_3D('',#1031,#1032,#1033);
#1031=CARTESIAN_POINT('',(-4.102,-0.597,1.194));
#1032=DIRECTION('',(0.0,0.0,1.0));
#1033=DIRECTION('',(0.,1.,0.));
#1034=FACE_OUTER_BOUND('',#1035,.T.);
#1035=EDGE_LOOP('',(#1036,#1046,#1056,#1066));
#1036=ORIENTED_EDGE('',*,*,#812,.T.);
#1046=ORIENTED_EDGE('',*,*,#861,.T.);
#1056=ORIENTED_EDGE('',*,*,#910,.T.);
#1066=ORIENTED_EDGE('',*,*,#959,.T.);
#1077=MANIFOLD_SOLID_BREP($,#1078);
#1078=CLOSED_SHELL('',(#1080,#1129,#1178,#1227,#1276,#1345,#1414,#1483,#1552,#1601,#1650,#1699));
#1079=STYLED_ITEM('',(#52),#1080);
#1080=ADVANCED_FACE('',(#1086),#1081,.T.);
#1081=PLANE('',#1082);
#1082=AXIS2_PLACEMENT_3D('',#1083,#1084,#1085);
#1083=CARTESIAN_POINT('',(-2.449,0.482,0.115));
#1084=DIRECTION('',(0.0,0.0,-1.0));
#1085=DIRECTION('',(0.,1.,0.));
#1086=FACE_OUTER_BOUND('',#1087,.T.);
#1087=EDGE_LOOP('',(#1088,#1098,#1108,#1118));
#1091=CARTESIAN_POINT('',(-1.836,0.482,0.115));
#1090=VERTEX_POINT('',#1091);
#1093=CARTESIAN_POINT('',(-2.449,0.482,0.115));
#1092=VERTEX_POINT('',#1093);
#1089=EDGE_CURVE('',#1090,#1092,#1094,.T.);
#1094=LINE('',#1091,#1096);
#1096=VECTOR('',#1097,0.61214);
#1097=DIRECTION('',(-1.0,0.0,0.0));
#1088=ORIENTED_EDGE('',*,*,#1089,.F.);
#1101=CARTESIAN_POINT('',(-1.836,-0.482,0.115));
#1100=VERTEX_POINT('',#1101);
#1099=EDGE_CURVE('',#1100,#1090,#1104,.T.);
#1104=LINE('',#1101,#1106);
#1106=VECTOR('',#1107,0.964474285714287);
#1107=DIRECTION('',(0.0,1.0,0.0));
#1098=ORIENTED_EDGE('',*,*,#1099,.F.);
#1111=CARTESIAN_POINT('',(-2.449,-0.482,0.115));
#1110=VERTEX_POINT('',#1111);
#1109=EDGE_CURVE('',#1110,#1100,#1114,.T.);
#1114=LINE('',#1111,#1116);
#1116=VECTOR('',#1117,0.61214);
#1117=DIRECTION('',(1.0,0.0,0.0));
#1108=ORIENTED_EDGE('',*,*,#1109,.F.);
#1119=EDGE_CURVE('',#1092,#1110,#1124,.T.);
#1124=LINE('',#1093,#1126);
#1126=VECTOR('',#1127,0.964474285714287);
#1127=DIRECTION('',(0.0,-1.0,0.0));
#1118=ORIENTED_EDGE('',*,*,#1119,.F.);
#1128=STYLED_ITEM('',(#52),#1129);
#1129=ADVANCED_FACE('',(#1135),#1130,.T.);
#1130=PLANE('',#1131);
#1131=AXIS2_PLACEMENT_3D('',#1132,#1133,#1134);
#1132=CARTESIAN_POINT('',(-2.449,-0.482,0.115));
#1133=DIRECTION('',(0.0,-1.0,0.0));
#1134=DIRECTION('',(0.,0.,1.));
#1135=FACE_OUTER_BOUND('',#1136,.T.);
#1136=EDGE_LOOP('',(#1137,#1147,#1157,#1167));
#1137=ORIENTED_EDGE('',*,*,#1109,.T.);
#1150=CARTESIAN_POINT('',(-1.836,-0.482,1.079));
#1149=VERTEX_POINT('',#1150);
#1148=EDGE_CURVE('',#1149,#1100,#1153,.T.);
#1153=LINE('',#1150,#1155);
#1155=VECTOR('',#1156,0.964474285714287);
#1156=DIRECTION('',(0.0,0.0,-1.0));
#1147=ORIENTED_EDGE('',*,*,#1148,.F.);
#1160=CARTESIAN_POINT('',(-2.449,-0.482,1.079));
#1159=VERTEX_POINT('',#1160);
#1158=EDGE_CURVE('',#1159,#1149,#1163,.T.);
#1163=LINE('',#1160,#1165);
#1165=VECTOR('',#1166,0.61214);
#1166=DIRECTION('',(1.0,0.0,0.0));
#1157=ORIENTED_EDGE('',*,*,#1158,.F.);
#1168=EDGE_CURVE('',#1110,#1159,#1173,.T.);
#1173=LINE('',#1111,#1175);
#1175=VECTOR('',#1176,0.964474285714287);
#1176=DIRECTION('',(0.0,0.0,1.0));
#1167=ORIENTED_EDGE('',*,*,#1168,.F.);
#1177=STYLED_ITEM('',(#52),#1178);
#1178=ADVANCED_FACE('',(#1184),#1179,.T.);
#1179=PLANE('',#1180);
#1180=AXIS2_PLACEMENT_3D('',#1181,#1182,#1183);
#1181=CARTESIAN_POINT('',(-1.836,0.482,0.115));
#1182=DIRECTION('',(0.0,1.0,0.0));
#1183=DIRECTION('',(0.,0.,1.));
#1184=FACE_OUTER_BOUND('',#1185,.T.);
#1185=EDGE_LOOP('',(#1186,#1196,#1206,#1216));
#1186=ORIENTED_EDGE('',*,*,#1089,.T.);
#1199=CARTESIAN_POINT('',(-2.449,0.482,1.079));
#1198=VERTEX_POINT('',#1199);
#1197=EDGE_CURVE('',#1198,#1092,#1202,.T.);
#1202=LINE('',#1199,#1204);
#1204=VECTOR('',#1205,0.964474285714287);
#1205=DIRECTION('',(0.0,0.0,-1.0));
#1196=ORIENTED_EDGE('',*,*,#1197,.F.);
#1209=CARTESIAN_POINT('',(-1.836,0.482,1.079));
#1208=VERTEX_POINT('',#1209);
#1207=EDGE_CURVE('',#1208,#1198,#1212,.T.);
#1212=LINE('',#1209,#1214);
#1214=VECTOR('',#1215,0.61214);
#1215=DIRECTION('',(-1.0,0.0,0.0));
#1206=ORIENTED_EDGE('',*,*,#1207,.F.);
#1217=EDGE_CURVE('',#1090,#1208,#1222,.T.);
#1222=LINE('',#1091,#1224);
#1224=VECTOR('',#1225,0.964474285714287);
#1225=DIRECTION('',(0.0,0.0,1.0));
#1216=ORIENTED_EDGE('',*,*,#1217,.F.);
#1226=STYLED_ITEM('',(#52),#1227);
#1227=ADVANCED_FACE('',(#1233),#1228,.T.);
#1228=PLANE('',#1229);
#1229=AXIS2_PLACEMENT_3D('',#1230,#1231,#1232);
#1230=CARTESIAN_POINT('',(-2.449,-0.482,1.079));
#1231=DIRECTION('',(0.0,0.0,1.0));
#1232=DIRECTION('',(0.,1.,0.));
#1233=FACE_OUTER_BOUND('',#1234,.T.);
#1234=EDGE_LOOP('',(#1235,#1245,#1255,#1265));
#1235=ORIENTED_EDGE('',*,*,#1158,.T.);
#1246=EDGE_CURVE('',#1208,#1149,#1251,.T.);
#1251=LINE('',#1209,#1253);
#1253=VECTOR('',#1254,0.964474285714287);
#1254=DIRECTION('',(0.0,-1.0,0.0));
#1245=ORIENTED_EDGE('',*,*,#1246,.F.);
#1255=ORIENTED_EDGE('',*,*,#1207,.T.);
#1266=EDGE_CURVE('',#1159,#1198,#1271,.T.);
#1271=LINE('',#1160,#1273);
#1273=VECTOR('',#1274,0.964474285714287);
#1274=DIRECTION('',(0.0,1.0,0.0));
#1265=ORIENTED_EDGE('',*,*,#1266,.F.);
#1275=STYLED_ITEM('',(#52),#1276);
#1276=ADVANCED_FACE('',(#1282),#1277,.T.);
#1277=PLANE('',#1278);
#1278=AXIS2_PLACEMENT_3D('',#1279,#1280,#1281);
#1279=CARTESIAN_POINT('',(-1.836,-0.482,0.115));
#1280=DIRECTION('',(1.0,0.0,0.0));
#1281=DIRECTION('',(0.,0.,1.));
#1282=FACE_OUTER_BOUND('',#1283,.T.);
#1283=EDGE_LOOP('',(#1284,#1294,#1304,#1314,#1324,#1334));
#1284=ORIENTED_EDGE('',*,*,#1099,.T.);
#1294=ORIENTED_EDGE('',*,*,#1217,.T.);
#1307=CARTESIAN_POINT('',(-1.836,0.48,1.077));
#1306=VERTEX_POINT('',#1307);
#1305=EDGE_CURVE('',#1306,#1208,#1310,.T.);
#1310=LINE('',#1307,#1312);
#1312=VECTOR('',#1313,0.00359210244842771);
#1313=DIRECTION('',(0.0,0.707,0.707));
#1304=ORIENTED_EDGE('',*,*,#1305,.F.);
#1317=CARTESIAN_POINT('',(-1.836,0.48,0.117));
#1316=VERTEX_POINT('',#1317);
#1315=EDGE_CURVE('',#1316,#1306,#1320,.T.);
#1320=LINE('',#1317,#1322);
#1322=VECTOR('',#1323,0.959394285714286);
#1323=DIRECTION('',(0.0,0.0,1.0));
#1314=ORIENTED_EDGE('',*,*,#1315,.F.);
#1327=CARTESIAN_POINT('',(-1.836,-0.48,0.117));
#1326=VERTEX_POINT('',#1327);
#1325=EDGE_CURVE('',#1326,#1316,#1330,.T.);
#1330=LINE('',#1327,#1332);
#1332=VECTOR('',#1333,0.959394285714286);
#1333=DIRECTION('',(0.0,1.0,0.0));
#1324=ORIENTED_EDGE('',*,*,#1325,.F.);
#1335=EDGE_CURVE('',#1100,#1326,#1340,.T.);
#1340=LINE('',#1101,#1342);
#1342=VECTOR('',#1343,0.00359210244842768);
#1343=DIRECTION('',(0.0,0.707,0.707));
#1334=ORIENTED_EDGE('',*,*,#1335,.F.);
#1344=STYLED_ITEM('',(#52),#1345);
#1345=ADVANCED_FACE('',(#1351),#1346,.T.);
#1346=PLANE('',#1347);
#1347=AXIS2_PLACEMENT_3D('',#1348,#1349,#1350);
#1348=CARTESIAN_POINT('',(-1.836,-0.482,0.115));
#1349=DIRECTION('',(1.0,0.0,0.0));
#1350=DIRECTION('',(0.,0.,1.));
#1351=FACE_OUTER_BOUND('',#1352,.T.);
#1352=EDGE_LOOP('',(#1353,#1363,#1373,#1383,#1393,#1403));
#1353=ORIENTED_EDGE('',*,*,#1335,.T.);
#1366=CARTESIAN_POINT('',(-1.836,-0.48,1.077));
#1365=VERTEX_POINT('',#1366);
#1364=EDGE_CURVE('',#1365,#1326,#1369,.T.);
#1369=LINE('',#1366,#1371);
#1371=VECTOR('',#1372,0.959394285714286);
#1372=DIRECTION('',(0.0,0.0,-1.0));
#1363=ORIENTED_EDGE('',*,*,#1364,.F.);
#1374=EDGE_CURVE('',#1306,#1365,#1379,.T.);
#1379=LINE('',#1307,#1381);
#1381=VECTOR('',#1382,0.959394285714286);
#1382=DIRECTION('',(0.0,-1.0,0.0));
#1373=ORIENTED_EDGE('',*,*,#1374,.F.);
#1383=ORIENTED_EDGE('',*,*,#1305,.T.);
#1393=ORIENTED_EDGE('',*,*,#1246,.T.);
#1403=ORIENTED_EDGE('',*,*,#1148,.T.);
#1413=STYLED_ITEM('',(#52),#1414);
#1414=ADVANCED_FACE('',(#1420),#1415,.T.);
#1415=PLANE('',#1416);
#1416=AXIS2_PLACEMENT_3D('',#1417,#1418,#1419);
#1417=CARTESIAN_POINT('',(-2.449,0.482,0.115));
#1418=DIRECTION('',(-1.0,0.0,0.0));
#1419=DIRECTION('',(0.,0.,1.));
#1420=FACE_OUTER_BOUND('',#1421,.T.);
#1421=EDGE_LOOP('',(#1422,#1432,#1442,#1452,#1462,#1472));
#1422=ORIENTED_EDGE('',*,*,#1119,.T.);
#1435=CARTESIAN_POINT('',(-2.449,-0.48,0.117));
#1434=VERTEX_POINT('',#1435);
#1433=EDGE_CURVE('',#1434,#1110,#1438,.T.);
#1438=LINE('',#1435,#1440);
#1440=VECTOR('',#1441,0.00359210244842768);
#1441=DIRECTION('',(0.0,-0.707,-0.707));
#1432=ORIENTED_EDGE('',*,*,#1433,.F.);
#1445=CARTESIAN_POINT('',(-2.449,0.48,0.117));
#1444=VERTEX_POINT('',#1445);
#1443=EDGE_CURVE('',#1444,#1434,#1448,.T.);
#1448=LINE('',#1445,#1450);
#1450=VECTOR('',#1451,0.959394285714286);
#1451=DIRECTION('',(0.0,-1.0,0.0));
#1442=ORIENTED_EDGE('',*,*,#1443,.F.);
#1455=CARTESIAN_POINT('',(-2.449,0.48,1.077));
#1454=VERTEX_POINT('',#1455);
#1453=EDGE_CURVE('',#1454,#1444,#1458,.T.);
#1458=LINE('',#1455,#1460);
#1460=VECTOR('',#1461,0.959394285714286);
#1461=DIRECTION('',(0.0,0.0,-1.0));
#1452=ORIENTED_EDGE('',*,*,#1453,.F.);
#1463=EDGE_CURVE('',#1198,#1454,#1468,.T.);
#1468=LINE('',#1199,#1470);
#1470=VECTOR('',#1471,0.00359210244842771);
#1471=DIRECTION('',(0.0,-0.707,-0.707));
#1462=ORIENTED_EDGE('',*,*,#1463,.F.);
#1472=ORIENTED_EDGE('',*,*,#1197,.T.);
#1482=STYLED_ITEM('',(#52),#1483);
#1483=ADVANCED_FACE('',(#1489),#1484,.T.);
#1484=PLANE('',#1485);
#1485=AXIS2_PLACEMENT_3D('',#1486,#1487,#1488);
#1486=CARTESIAN_POINT('',(-2.449,-0.48,0.117));
#1487=DIRECTION('',(-1.0,0.0,0.0));
#1488=DIRECTION('',(0.,0.,1.));
#1489=FACE_OUTER_BOUND('',#1490,.T.);
#1490=EDGE_LOOP('',(#1491,#1501,#1511,#1521,#1531,#1541));
#1491=ORIENTED_EDGE('',*,*,#1433,.T.);
#1501=ORIENTED_EDGE('',*,*,#1168,.T.);
#1511=ORIENTED_EDGE('',*,*,#1266,.T.);
#1521=ORIENTED_EDGE('',*,*,#1463,.T.);
#1534=CARTESIAN_POINT('',(-2.449,-0.48,1.077));
#1533=VERTEX_POINT('',#1534);
#1532=EDGE_CURVE('',#1533,#1454,#1537,.T.);
#1537=LINE('',#1534,#1539);
#1539=VECTOR('',#1540,0.959394285714286);
#1540=DIRECTION('',(0.0,1.0,0.0));
#1531=ORIENTED_EDGE('',*,*,#1532,.F.);
#1542=EDGE_CURVE('',#1434,#1533,#1547,.T.);
#1547=LINE('',#1435,#1549);
#1549=VECTOR('',#1550,0.959394285714286);
#1550=DIRECTION('',(0.0,0.0,1.0));
#1541=ORIENTED_EDGE('',*,*,#1542,.F.);
#1551=STYLED_ITEM('',(#52),#1552);
#1552=ADVANCED_FACE('',(#1558),#1553,.T.);
#1553=PLANE('',#1554);
#1554=AXIS2_PLACEMENT_3D('',#1555,#1556,#1557);
#1555=CARTESIAN_POINT('',(-2.449,0.48,0.117));
#1556=DIRECTION('',(0.0,-1.0,0.0));
#1557=DIRECTION('',(0.,0.,1.));
#1558=FACE_OUTER_BOUND('',#1559,.T.);
#1559=EDGE_LOOP('',(#1560,#1570,#1580,#1590));
#1561=EDGE_CURVE('',#1316,#1444,#1566,.T.);
#1566=LINE('',#1317,#1568);
#1568=VECTOR('',#1569,0.61214);
#1569=DIRECTION('',(-1.0,0.0,0.0));
#1560=ORIENTED_EDGE('',*,*,#1561,.F.);
#1570=ORIENTED_EDGE('',*,*,#1315,.T.);
#1581=EDGE_CURVE('',#1454,#1306,#1586,.T.);
#1586=LINE('',#1455,#1588);
#1588=VECTOR('',#1589,0.61214);
#1589=DIRECTION('',(1.0,0.0,0.0));
#1580=ORIENTED_EDGE('',*,*,#1581,.F.);
#1590=ORIENTED_EDGE('',*,*,#1453,.T.);
#1600=STYLED_ITEM('',(#52),#1601);
#1601=ADVANCED_FACE('',(#1607),#1602,.T.);
#1602=PLANE('',#1603);
#1603=AXIS2_PLACEMENT_3D('',#1604,#1605,#1606);
#1604=CARTESIAN_POINT('',(-1.836,-0.48,0.117));
#1605=DIRECTION('',(0.0,1.0,0.0));
#1606=DIRECTION('',(0.,0.,1.));
#1607=FACE_OUTER_BOUND('',#1608,.T.);
#1608=EDGE_LOOP('',(#1609,#1619,#1629,#1639));
#1610=EDGE_CURVE('',#1434,#1326,#1615,.T.);
#1615=LINE('',#1435,#1617);
#1617=VECTOR('',#1618,0.61214);
#1618=DIRECTION('',(1.0,0.0,0.0));
#1609=ORIENTED_EDGE('',*,*,#1610,.F.);
#1619=ORIENTED_EDGE('',*,*,#1542,.T.);
#1630=EDGE_CURVE('',#1365,#1533,#1635,.T.);
#1635=LINE('',#1366,#1637);
#1637=VECTOR('',#1638,0.61214);
#1638=DIRECTION('',(-1.0,0.0,0.0));
#1629=ORIENTED_EDGE('',*,*,#1630,.F.);
#1639=ORIENTED_EDGE('',*,*,#1364,.T.);
#1649=STYLED_ITEM('',(#52),#1650);
#1650=ADVANCED_FACE('',(#1656),#1651,.T.);
#1651=PLANE('',#1652);
#1652=AXIS2_PLACEMENT_3D('',#1653,#1654,#1655);
#1653=CARTESIAN_POINT('',(-2.449,-0.48,0.117));
#1654=DIRECTION('',(0.0,0.0,1.0));
#1655=DIRECTION('',(0.,1.,0.));
#1656=FACE_OUTER_BOUND('',#1657,.T.);
#1657=EDGE_LOOP('',(#1658,#1668,#1678,#1688));
#1658=ORIENTED_EDGE('',*,*,#1610,.T.);
#1668=ORIENTED_EDGE('',*,*,#1325,.T.);
#1678=ORIENTED_EDGE('',*,*,#1561,.T.);
#1688=ORIENTED_EDGE('',*,*,#1443,.T.);
#1698=STYLED_ITEM('',(#52),#1699);
#1699=ADVANCED_FACE('',(#1705),#1700,.T.);
#1700=PLANE('',#1701);
#1701=AXIS2_PLACEMENT_3D('',#1702,#1703,#1704);
#1702=CARTESIAN_POINT('',(-1.836,-0.48,1.077));
#1703=DIRECTION('',(0.0,0.0,-1.0));
#1704=DIRECTION('',(0.,1.,0.));
#1705=FACE_OUTER_BOUND('',#1706,.T.);
#1706=EDGE_LOOP('',(#1707,#1717,#1727,#1737));
#1707=ORIENTED_EDGE('',*,*,#1630,.T.);
#1717=ORIENTED_EDGE('',*,*,#1532,.T.);
#1727=ORIENTED_EDGE('',*,*,#1581,.T.);
#1737=ORIENTED_EDGE('',*,*,#1374,.T.);
ENDSEC;
END-ISO-10303-21;

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,141 +0,0 @@
#VRML V2.0 utf8
# 3D model generated by easyeda2kicad.py (https://github.com/uPesy/easyeda2kicad.py)
Shape{
appearance Appearance {
material Material {
diffuseColor 1.0 1.0 1.0
specularColor 0.5019607843137255 0.5019607843137255 0.5019607843137255
ambientIntensity 0.2
transparency 0
shininess 0.5
}
}
geometry IndexedFaceSet {
ccw TRUE
solid FALSE
coord DEF co Coordinate {
point [
1.063 0.3937 0.4291, 1.0236 0.3937 0.4291, 1.063 0.1181 0.4291, 1.0236 0.1181 0.4291, 0.6693 0.3937 -0.0039, 1.063 0.3937 -0.0039, 0.6693 -0.3937 -0.0039, 1.063 -0.3937 -0.0039, 0.6693 0.3937 0.0354, 0.6693 -0.3937 0.0354, 1.0236 0.3937 0.0354, 1.0236 -0.3937 0.0354, 1.0236 0.1181 0.3504, 1.0236 -0.1181 0.3504, 1.0236 -0.1181 0.4291, 1.0236 -0.3937 0.4291, 1.063 -0.3937 0.4291, 1.063 -0.1181 0.4291, 1.063 -0.1181 0.3504, 1.063 0.1181 0.3504, -1.0236 0.3937 0.4291, -1.063 0.3937 0.4291, -1.0236 0.1181 0.4291, -1.063 0.1181 0.4291, -1.063 0.3937 -0.0039, -0.6693 0.3937 -0.0039, -1.063 -0.3937 -0.0039, -0.6693 -0.3937 -0.0039, -0.6693 0.3937 0.0354, -0.6693 -0.3937 0.0354, -1.0236 0.3937 0.0354, -1.0236 -0.3937 0.0354, -1.0236 -0.1181 0.4291, -1.0236 -0.3937 0.4291, -1.0236 -0.1181 0.3504, -1.0236 0.1181 0.3504, -1.063 -0.3937 0.4291, -1.063 -0.1181 0.4291, -1.063 0.1181 0.3504, -1.063 -0.1181 0.3504, -1.063 -0.1181 0.3504
]
}
coordIndex [
0,1,2,-1,2,1,3,-1,4,5,6,-1,6,5,7,-1,8,4,9,-1,9,4,6,-1,10,8,11,-1,11,8,9,-1,3,1,12,-1,12,1,10,-1,12,10,13,-1,13,10,11,-1,13,11,14,-1,14,11,15,-1,15,16,14,-1,14,16,17,-1,17,16,18,-1,18,16,7,-1,18,7,19,-1,19,7,5,-1,19,5,2,-1,2,5,0,-1,1,0,10,-1,10,0,5,-1,10,5,8,-1,8,5,4,-1,9,6,11,-1,11,6,7,-1,11,7,15,-1,15,7,16,-1,19,2,12,-1,12,2,3,-1,18,19,13,-1,13,19,12,-1,17,18,14,-1,14,18,13,-1,20,21,22,-1,22,21,23,-1,24,25,26,-1,26,25,27,-1,25,28,27,-1,27,28,29,-1,28,30,29,-1,29,30,31,-1,32,33,34,-1,34,33,31,-1,34,31,35,-1,35,31,30,-1,35,30,22,-1,22,30,20,-1,36,33,37,-1,37,33,32,-1,23,21,38,-1,38,21,24,-1,38,24,39,-1,39,24,26,-1,39,26,37,-1,37,26,36,-1,28,25,30,-1,30,25,24,-1,30,24,20,-1,20,24,21,-1,33,36,31,-1,31,36,26,-1,31,26,29,-1,29,26,27,-1,23,38,22,-1,22,38,35,-1,38,39,35,-1,35,39,34,-1,39,37,34,-1,34,37,32,-1,
]
}
}
Shape{
appearance Appearance {
material Material {
diffuseColor 0.5019607843137255 0.5019607843137255 0.5019607843137255
specularColor 0.25098039215686274 0.25098039215686274 0.25098039215686274
ambientIntensity 0.2
transparency 0
shininess 0.5
}
}
geometry IndexedFaceSet {
ccw TRUE
solid FALSE
coord DEF co Coordinate {
point [
-0.2222 0.1878 0.7874, -0.2222 -0.0715 0.7874, -0.1646 -0.0715 0.7874, 0.2712 -0.2059 0.7874, 0.2865 -0.132 0.7874, 0.2147 0.1446 0.7874, 0.3151 -0.0463 0.7874, -0.0135 -0.0379 0.7874, -0.0493 -0.0379 0.7874, -0.0493 -0.2059 0.7874, 0.4596 0.1578 0.7874, 0.4 0.0392 0.7874, 1.0236 -0.8071 0.7874, 0.3589 -0.063 0.7874, 0.3342 -0.1476 0.7874, 0.324 -0.2059 0.7874, 0.1379 0.0835 0.7874, 0.1353 0.0567 0.7874, 0.1283 0.0353 0.7874, 0.1173 0.0175 0.7874, 0.3595 0.0546 0.7874, 0.3935 0.1204 0.7874, 0.4068 0.1446 0.7874, 0.4596 0.1878 0.7874, 1.0236 0.8071 0.7874, 1.0169 0.858 0.7874, 0.0526 -0.0218 0.7874, 0.0526 -0.0231 0.7874, 0.0565 -0.0206 0.7874, 0.0704 -0.0335 0.7874, 0.0878 -0.0074 0.7874, 0.9972 0.9055 0.7874, 0.966 0.9463 0.7874, 0.9252 0.9776 0.7874, 0.1085 0.0079 0.7874, 0.0835 -0.0464 0.7874, 0.8268 -1.0039 0.7874, 0.8777 -0.9972 0.7874, 0.1811 -0.2059 0.7874, 0.9252 -0.9776 0.7874, 0.966 -0.9463 0.7874, 0.1067 -0.0797 0.7874, 0.111 -0.0868 0.7874, 0.9972 -0.9055 0.7874, 1.0169 -0.858 0.7874, 0.1235 -0.2059 0.7874, 0.0596 -0.0951 0.7874, 0.0387 -0.0639 0.7874, 0.025 -0.0503 0.7874, 0.013 -0.0431 0.7874, -0.0015 -0.0388 0.7874, -0.2702 -0.2059 0.7874, -0.2702 -0.1147 0.7874, -0.4526 -0.1147 0.7874, -1.0169 0.858 0.7874, -1.0236 0.8071 0.7874, -0.3134 0.1166 0.7874, -0.966 -0.9463 0.7874, -0.2222 -0.2059 0.7874, -0.9972 -0.9055 0.7874, -1.0169 -0.858 0.7874, -0.8268 -1.0039 0.7874, -0.1021 -0.2059 0.7874, -0.8777 -0.9972 0.7874, -0.9252 -0.9776 0.7874, -0.3826 0.0137 0.7874, -1.0236 -0.8071 0.7874, -0.4526 -0.0737 0.7874, 0.0493 0.1852 0.7874, 0.078 0.1771 0.7874, 0.2147 0.1878 0.7874, 0.0994 0.1652 0.7874, -0.1021 0.1878 0.7874, 0.0166 0.1878 0.7874, -0.8268 1.0039 0.7874, 0.8268 1.0039 0.7874, 0.8777 0.9972 0.7874, 0.1099 0.1565 0.7874, 0.1229 0.1407 0.7874, 0.1321 0.1217 0.7874, 0.1374 0.0958 0.7874, -0.8777 0.9972 0.7874, -0.9252 0.9776 0.7874, -0.966 0.9463 0.7874, -0.9972 0.9055 0.7874, -0.2222 -0.1147 0.7874, -0.1646 -0.1147 0.7874, -0.2735 0.1878 0.7874, 0.8268 -1.0039 0.0, -0.0274 -1.0039 0.0, 0.5118 -0.4724 0.0, -0.5118 -0.4724 0.0, -0.5118 -0.0566 0.0, -0.0274 -0.0566 0.0, -1.0169 -0.858 0.0, -1.0236 -0.8071 0.0, -0.8268 -1.0039 0.0, -1.0236 -0.4724 0.0, -0.8777 -0.9972 0.0, -0.9252 -0.9776 0.0, -0.966 -0.9463 0.0, -0.9972 -0.9055 0.0, 0.0951 -0.0566 0.0, 0.0998 -0.0573 0.0, 0.103 -0.0573 0.0, 0.5118 -0.0566 0.0, 1.0236 -0.4724 0.0, 1.0236 -0.8071 0.0, 0.8777 -0.9972 0.0, 0.9252 -0.9776 0.0, 0.966 -0.9463 0.0, 1.0169 -0.858 0.0, 0.9972 -0.9055 0.0, -0.0274 1.0039 0.0, -0.0159 -0.0429 0.0, -0.0159 -0.0559 0.0, 0.0475 -0.0559 0.0, -0.013 0.0493 0.0, 0.0317 0.0493 0.0, 0.0317 0.0104 0.0, 0.0705 -0.0498 0.0, 0.0705 -0.0368 0.0, 0.0475 0.0622 0.0, 0.0831 -0.0549 0.0, 0.5118 0.4724 0.0, 1.0236 0.4724 0.0, 0.8268 1.0039 0.0, 1.0236 0.8071 0.0, 1.0169 0.858 0.0, 0.0317 -0.0026 0.0, 0.0317 -0.0429 0.0, -0.0101 -0.0026 0.0, -0.0101 0.0104 0.0, 0.8777 0.9972 0.0, 0.9252 0.9776 0.0, 0.9972 0.9055 0.0, 0.966 0.9463 0.0, 0.229 -0.0559 0.0, 0.11 -0.0566 0.0, 0.1685 -0.0559 0.0, 0.1176 -0.0558 0.0, 0.129 -0.0519 0.0, -0.013 0.0622 0.0, 0.1098 0.0494 0.0, 0.1187 0.0462 0.0, 0.0727 -0.038 0.0, 0.1269 0.0407 0.0, 0.134 0.0329 0.0, 0.1426 0.0019 0.0, 0.1414 -0.0109 0.0, 0.1382 -0.021 0.0, 0.1119 -0.0431 0.0, 0.1009 -0.0444 0.0, 0.1205 -0.04 0.0, 0.1277 -0.0351 0.0, 0.1333 -0.0292 0.0, 0.0852 -0.0426 0.0, 0.1522 0.0311 0.0, 0.1453 0.0422 0.0, 0.2131 0.0622 0.0, 0.1389 0.0237 0.0, 0.142 0.0111 0.0, 0.1346 0.0524 0.0, 0.229 0.0622 0.0, 0.1385 -0.0458 0.0, 0.1474 -0.0365 0.0, 0.1685 -0.0429 0.0, 0.1537 -0.0252 0.0, 0.2131 -0.0429 0.0, 0.1573 -0.0127 0.0, 0.1584 0.0009 0.0, 0.1567 0.0177 0.0, 0.1234 0.0589 0.0, 0.1102 0.0627 0.0, 0.0983 0.0637 0.0, 0.0842 0.0627 0.0, 0.0705 0.059 0.0, 0.0705 0.0431 0.0, 0.0839 0.0488 0.0, 0.0982 0.0507 0.0, -0.1426 -0.0559 0.0, -0.1281 -0.0235 0.0, -0.1213 -0.0341 0.0, -0.5118 0.4724 0.0, -1.0236 0.4724 0.0, -1.0236 0.8071 0.0, -0.8268 1.0039 0.0, -0.8777 0.9972 0.0, -0.1116 -0.0434 0.0, -0.0993 -0.0505 0.0, -0.0857 -0.0546 0.0, -0.2319 -0.0559 0.0, -0.2492 -0.0559 0.0, -0.2031 0.0622 0.0, -0.1873 0.0622 0.0, -0.071 -0.0559 0.0, -0.0389 -0.0559 0.0, -0.0389 0.0622 0.0, -0.0723 0.0622 0.0, -0.1161 0.0468 0.0, -0.1245 0.0376 0.0, -0.13 0.0274 0.0, -0.1599 -0.0559 0.0, -0.1712 -0.0228 0.0, -0.22 -0.0228 0.0, -0.0893 0.0604 0.0, -0.1031 0.0556 0.0, -0.116 0.0469 0.0, -1.0169 0.858 0.0, -0.9972 0.9055 0.0, -0.9252 0.9776 0.0, -0.966 0.9463 0.0, -0.1331 0.0158 0.0, -0.134 0.0047 0.0, -0.1323 -0.0111 0.0, -1.0236 -0.437 0.0354, -1.0236 0.437 0.0354, 1.0236 0.437 0.0354, 1.0236 -0.437 0.0354, 0.5472 -0.437 0.0354, 0.5472 0.437 0.0354, -0.5472 -0.437 0.0354, -0.5472 0.437 0.0354, -0.5472 0.437 0.0354
]
}
coordIndex [
0,1,2,-1,3,4,5,-1,5,4,6,-1,7,8,9,-1,10,11,12,-1,12,11,13,-1,13,14,12,-1,12,14,15,-1,12,15,3,-1,16,17,3,-1,3,17,18,-1,3,18,19,-1,6,20,5,-1,5,20,21,-1,5,21,22,-1,10,12,23,-1,23,12,24,-1,23,24,25,-1,26,27,28,-1,28,27,29,-1,28,29,30,-1,25,31,23,-1,23,31,32,-1,23,32,33,-1,30,29,34,-1,34,29,35,-1,34,35,19,-1,36,37,38,-1,38,37,39,-1,38,39,40,-1,35,41,19,-1,19,41,42,-1,19,42,3,-1,3,42,38,-1,3,38,12,-1,40,43,38,-1,38,43,44,-1,38,44,12,-1,45,46,9,-1,9,46,47,-1,9,47,48,-1,48,49,9,-1,9,49,50,-1,9,50,7,-1,51,52,53,-1,54,55,56,-1,57,58,59,-1,59,58,51,-1,59,51,60,-1,38,45,36,-1,36,45,9,-1,36,9,61,-1,61,9,62,-1,61,62,63,-1,63,62,58,-1,63,58,64,-1,64,58,57,-1,56,55,65,-1,60,51,66,-1,66,51,53,-1,66,53,55,-1,55,53,67,-1,55,67,65,-1,68,69,70,-1,70,69,71,-1,72,73,74,-1,73,68,74,-1,74,68,70,-1,74,70,75,-1,75,70,23,-1,75,23,76,-1,76,23,33,-1,71,77,70,-1,70,77,78,-1,70,78,5,-1,5,78,79,-1,5,79,3,-1,3,79,80,-1,3,80,16,-1,74,81,56,-1,56,81,82,-1,82,83,56,-1,56,83,84,-1,56,84,54,-1,85,58,86,-1,86,58,62,-1,86,62,2,-1,2,62,72,-1,2,72,0,-1,0,72,74,-1,0,74,87,-1,87,74,56,-1,88,89,90,-1,91,92,93,-1,94,95,96,-1,96,95,97,-1,96,97,89,-1,98,99,100,-1,98,100,96,-1,96,100,101,-1,96,101,94,-1,102,103,89,-1,89,103,90,-1,90,103,104,-1,90,104,105,-1,90,106,88,-1,88,106,107,-1,88,107,108,-1,108,107,109,-1,109,107,110,-1,110,107,111,-1,110,111,112,-1,113,114,93,-1,93,114,115,-1,93,115,116,-1,117,118,119,-1,120,116,121,-1,121,116,122,-1,97,91,89,-1,89,91,93,-1,89,93,102,-1,102,93,116,-1,102,116,123,-1,123,116,120,-1,124,113,125,-1,125,113,126,-1,125,126,127,-1,127,126,128,-1,129,130,131,-1,131,130,114,-1,131,114,132,-1,126,133,128,-1,128,133,134,-1,128,134,135,-1,135,134,136,-1,137,138,139,-1,139,138,140,-1,139,140,141,-1,119,132,117,-1,117,132,114,-1,117,114,142,-1,142,114,113,-1,142,113,122,-1,143,144,145,-1,145,144,146,-1,145,146,147,-1,148,149,145,-1,145,149,150,-1,151,152,153,-1,153,152,154,-1,150,155,145,-1,145,155,154,-1,145,154,156,-1,156,154,152,-1,157,158,159,-1,147,160,145,-1,145,160,161,-1,145,161,148,-1,158,162,159,-1,159,162,113,-1,159,113,163,-1,163,113,124,-1,163,124,137,-1,137,124,105,-1,137,105,138,-1,138,105,104,-1,141,164,139,-1,139,164,165,-1,139,165,166,-1,166,165,167,-1,166,167,168,-1,167,169,168,-1,168,169,170,-1,168,170,159,-1,159,170,171,-1,159,171,157,-1,162,172,113,-1,113,172,173,-1,113,173,174,-1,174,175,113,-1,113,175,176,-1,113,176,122,-1,122,176,177,-1,122,177,121,-1,121,177,178,-1,121,178,145,-1,145,178,179,-1,145,179,143,-1,180,181,182,-1,183,184,113,-1,113,184,185,-1,113,185,186,-1,186,185,187,-1,182,188,180,-1,180,188,189,-1,180,189,190,-1,191,93,192,-1,192,93,92,-1,192,92,193,-1,193,92,183,-1,193,183,194,-1,194,183,113,-1,195,196,93,-1,93,196,197,-1,93,197,113,-1,113,197,198,-1,199,200,194,-1,194,200,201,-1,190,195,180,-1,180,195,93,-1,180,93,202,-1,202,93,191,-1,202,191,203,-1,203,191,204,-1,198,205,113,-1,113,205,206,-1,113,206,194,-1,194,206,207,-1,194,207,199,-1,185,208,187,-1,187,208,209,-1,187,209,210,-1,210,209,211,-1,201,212,194,-1,194,212,213,-1,194,213,180,-1,180,213,214,-1,180,214,181,-1,97,95,215,-1,215,95,66,-1,215,66,216,-1,216,66,55,-1,216,55,184,-1,184,55,185,-1,125,127,217,-1,217,127,24,-1,217,24,218,-1,218,24,12,-1,218,12,106,-1,106,12,107,-1,75,126,74,-1,74,126,113,-1,74,113,186,-1,88,36,89,-1,89,36,61,-1,89,61,96,-1,219,220,218,-1,218,220,217,-1,215,216,221,-1,221,216,222,-1,66,95,94,-1,66,94,60,-1,60,94,101,-1,60,101,59,-1,59,101,100,-1,59,100,57,-1,57,100,99,-1,57,99,64,-1,64,99,98,-1,64,98,63,-1,63,98,96,-1,63,96,61,-1,74,186,187,-1,74,187,81,-1,81,187,210,-1,81,210,82,-1,82,210,211,-1,82,211,83,-1,83,211,209,-1,83,209,84,-1,84,209,208,-1,84,208,54,-1,54,208,185,-1,54,185,55,-1,36,88,108,-1,36,108,37,-1,37,108,109,-1,37,109,39,-1,39,109,110,-1,39,110,40,-1,40,110,112,-1,40,112,43,-1,43,112,111,-1,43,111,44,-1,44,111,107,-1,44,107,12,-1,24,127,128,-1,24,128,25,-1,25,128,135,-1,25,135,31,-1,31,135,136,-1,31,136,32,-1,32,136,134,-1,32,134,33,-1,33,134,133,-1,33,133,76,-1,76,133,126,-1,76,126,75,-1,
]
}
}
Shape{
appearance Appearance {
material Material {
diffuseColor 0.0 0.0 0.0
specularColor 0.0 0.0 0.0
ambientIntensity 0.2
transparency 0
shininess 0.5
}
}
geometry IndexedFaceSet {
ccw TRUE
solid FALSE
coord DEF co Coordinate {
point [
-0.2031 0.0622 0.0004, -0.2492 -0.0559 0.0004, -0.2031 0.0622 0.0, -0.2492 -0.0559 0.0, -0.2319 -0.0559 0.0004, -0.2319 -0.0559 0.0, -0.22 -0.0228 0.0004, -0.22 -0.0228 0.0, -0.1712 -0.0228 0.0004, -0.1712 -0.0228 0.0, -0.1599 -0.0559 0.0004, -0.1599 -0.0559 0.0, -0.1426 -0.0559 0.0004, -0.1426 -0.0559 0.0, -0.1873 0.0622 0.0004, -0.1873 0.0622 0.0, -0.1752 -0.0098 0.0004, -0.2147 -0.0098 0.0004, -0.1928 0.0395 0.0004, -0.1939 0.0436 0.0004, -0.1947 0.0478 0.0004, -0.1951 0.0478 0.0004, -0.1958 0.0437 0.0004, -0.1969 0.0395 0.0004, -0.1752 -0.0098 0.0, -0.2147 -0.0098 0.0, -0.1928 0.0395 0.0, -0.1939 0.0436 0.0, -0.1947 0.0478 0.0, -0.1951 0.0478 0.0, -0.1958 0.0437 0.0, -0.1969 0.0395 0.0, -0.071 -0.0559 0.0004, -0.0389 -0.0559 0.0004, -0.071 -0.0559 0.0, -0.0389 -0.0559 0.0, -0.0389 0.0622 0.0004, -0.0389 0.0622 0.0, -0.0723 0.0622 0.0004, -0.0723 0.0622 0.0, -0.134 0.0047 0.0004, -0.134 0.0047 0.0, -0.1331 0.0158 0.0, -0.1331 0.0158 0.0004, -0.13 0.0274 0.0, -0.13 0.0274 0.0004, -0.1245 0.0376 0.0, -0.1245 0.0376 0.0004, -0.1161 0.0468 0.0, -0.1161 0.0468 0.0004, -0.116 0.0469 0.0, -0.116 0.0469 0.0004, -0.1031 0.0556 0.0, -0.1031 0.0556 0.0004, -0.0893 0.0604 0.0, -0.0893 0.0604 0.0004, -0.0857 -0.0546 0.0, -0.0857 -0.0546 0.0004, -0.0993 -0.0505 0.0, -0.0993 -0.0505 0.0004, -0.1116 -0.0434 0.0, -0.1116 -0.0434 0.0004, -0.1213 -0.0341 0.0, -0.1213 -0.0341 0.0004, -0.1281 -0.0235 0.0, -0.1281 -0.0235 0.0004, -0.1323 -0.0111 0.0, -0.1323 -0.0111 0.0004, -0.1103 0.0327 0.0004, -0.1045 0.0388 0.0004, -0.0959 0.0444 0.0004, -0.0862 0.0478 0.0004, -0.0722 0.0493 0.0004, -0.0548 0.0493 0.0004, -0.0548 -0.0429 0.0004, -0.0715 -0.0429 0.0004, -0.084 -0.0418 0.0004, -0.0939 -0.0387 0.0004, -0.102 -0.0339 0.0004, -0.1086 -0.0273 0.0004, -0.1136 -0.0192 0.0004, -0.1171 -0.0081 0.0004, -0.1181 0.0043 0.0004, -0.1171 0.0161 0.0004, -0.1144 0.0254 0.0004, -0.0722 0.0493 0.0, -0.0548 0.0493 0.0, -0.0862 0.0478 0.0, -0.0959 0.0444 0.0, -0.1045 0.0388 -0.0, -0.1103 0.0327 0.0, -0.1144 0.0254 -0.0, -0.1171 0.0161 -0.0, -0.1181 0.0043 0.0, -0.1171 -0.0081 0.0, -0.1136 -0.0192 0.0, -0.1086 -0.0273 0.0, -0.102 -0.0339 0.0, -0.0939 -0.0387 0.0, -0.084 -0.0418 0.0, -0.0715 -0.0429 0.0, -0.0548 -0.0429 0.0, -0.0159 -0.0429 0.0004, -0.0159 -0.0559 0.0004, -0.0159 -0.0429 0.0, -0.0159 -0.0559 0.0, 0.0475 -0.0559 0.0004, 0.0475 -0.0559 0.0, 0.0475 0.0622 0.0004, 0.0475 0.0622 0.0, -0.013 0.0622 0.0004, -0.013 0.0622 0.0, -0.013 0.0493 0.0004, -0.013 0.0493 0.0, 0.0317 0.0493 0.0004, 0.0317 0.0493 0.0, 0.0317 0.0104 0.0004, 0.0317 0.0104 0.0, -0.0101 0.0104 0.0004, -0.0101 0.0104 0.0, -0.0101 -0.0026 0.0004, -0.0101 -0.0026 0.0, 0.0317 -0.0026 0.0004, 0.0317 -0.0026 0.0, 0.0317 -0.0429 0.0004, 0.0317 -0.0429 0.0, 0.0705 -0.0368 0.0004, 0.0705 -0.0498 0.0004, 0.0705 -0.0368 0.0, 0.0705 -0.0498 0.0, 0.0831 -0.0549 0.0004, 0.103 -0.0573 0.0004, 0.103 -0.0573 0.0, 0.0998 -0.0573 0.0, 0.0998 -0.0573 0.0004, 0.0951 -0.0566 0.0, 0.0831 -0.0549 0.0, 0.11 -0.0566 0.0, 0.1176 -0.0558 0.0004, 0.1176 -0.0558 0.0, 0.129 -0.0519 0.0004, 0.129 -0.0519 0.0, 0.1385 -0.0458 0.0004, 0.1385 -0.0458 0.0, 0.1474 -0.0365 0.0004, 0.1474 -0.0365 0.0, 0.1537 -0.0252 0.0004, 0.1537 -0.0252 0.0, 0.1573 -0.0127 0.0004, 0.1573 -0.0127 0.0, 0.1584 0.0009 0.0004, 0.1584 0.0009 0.0, 0.0983 0.0637 0.0004, 0.0983 0.0637 0.0, 0.1102 0.0627 0.0, 0.1102 0.0627 0.0004, 0.1234 0.0589 0.0, 0.1234 0.0589 0.0004, 0.1346 0.0524 0.0, 0.1346 0.0524 0.0004, 0.1453 0.0422 0.0, 0.1453 0.0422 0.0004, 0.1522 0.0311 0.0, 0.1522 0.0311 0.0004, 0.1567 0.0177 0.0, 0.1567 0.0177 0.0004, 0.0705 0.059 0.0004, 0.0705 0.059 0.0, 0.0842 0.0627 0.0, 0.0842 0.0627 0.0004, 0.0705 0.0431 0.0004, 0.0705 0.0431 0.0, 0.0982 0.0507 0.0004, 0.0982 0.0507 0.0, 0.0839 0.0488 0.0, 0.0839 0.0488 0.0004, 0.1426 0.0019 0.0004, 0.1426 0.0019 0.0, 0.142 0.0111 0.0, 0.142 0.0111 0.0004, 0.1389 0.0237 0.0, 0.1389 0.0237 0.0004, 0.134 0.0329 0.0, 0.134 0.0329 0.0004, 0.1269 0.0407 0.0, 0.1269 0.0407 0.0004, 0.1187 0.0462 0.0, 0.1187 0.0462 0.0004, 0.1098 0.0494 0.0, 0.1098 0.0494 0.0004, 0.1009 -0.0444 0.0004, 0.1009 -0.0444 0.0, 0.1119 -0.0431 0.0, 0.1119 -0.0431 0.0004, 0.1205 -0.04 0.0, 0.1205 -0.04 0.0004, 0.1277 -0.0351 0.0, 0.1277 -0.0351 0.0004, 0.1333 -0.0292 0.0, 0.1333 -0.0292 0.0004, 0.1382 -0.021 0.0, 0.1382 -0.021 0.0004, 0.1414 -0.0109 0.0, 0.1414 -0.0109 0.0004, 0.0727 -0.038 0.0, 0.0727 -0.038 0.0004, 0.0852 -0.0426 0.0, 0.0852 -0.0426 0.0004, 0.1685 -0.0429 0.0004, 0.1685 -0.0559 0.0004, 0.1685 -0.0429 0.0, 0.1685 -0.0559 0.0, 0.229 -0.0559 0.0004, 0.229 -0.0559 0.0, 0.229 0.0622 0.0004, 0.229 0.0622 0.0, 0.2131 0.0622 0.0004, 0.2131 0.0622 0.0, 0.2131 -0.0429 0.0004, 0.2131 -0.0429 0.0, 0.2131 -0.0429 0.0
]
}
coordIndex [
0,1,2,-1,2,1,3,-1,1,4,3,-1,3,4,5,-1,4,6,5,-1,5,6,7,-1,6,8,7,-1,7,8,9,-1,8,10,9,-1,9,10,11,-1,10,12,11,-1,11,12,13,-1,12,14,13,-1,13,14,15,-1,14,0,15,-1,15,0,2,-1,16,8,17,-1,17,8,6,-1,18,14,16,-1,16,14,12,-1,16,12,8,-1,8,12,10,-1,18,19,14,-1,14,19,20,-1,14,20,0,-1,0,20,21,-1,0,21,22,-1,22,23,0,-1,0,23,17,-1,0,17,1,-1,1,17,6,-1,1,6,4,-1,16,17,24,-1,24,17,25,-1,18,16,26,-1,26,16,24,-1,18,26,27,-1,18,27,19,-1,19,27,28,-1,19,28,20,-1,21,20,29,-1,29,20,28,-1,21,29,30,-1,21,30,22,-1,22,30,31,-1,22,31,23,-1,17,23,25,-1,25,23,31,-1,32,33,34,-1,34,33,35,-1,33,36,35,-1,35,36,37,-1,36,38,37,-1,37,38,39,-1,40,41,42,-1,40,42,43,-1,43,42,44,-1,43,44,45,-1,45,44,46,-1,45,46,47,-1,47,46,48,-1,47,48,49,-1,49,48,50,-1,49,50,51,-1,51,50,52,-1,51,52,53,-1,53,52,54,-1,53,54,55,-1,55,54,39,-1,55,39,38,-1,32,34,56,-1,32,56,57,-1,57,56,58,-1,57,58,59,-1,59,58,60,-1,59,60,61,-1,61,60,62,-1,61,62,63,-1,63,62,64,-1,63,64,65,-1,65,64,66,-1,65,66,67,-1,67,66,41,-1,67,41,40,-1,45,47,68,-1,68,47,49,-1,68,49,69,-1,69,49,51,-1,69,51,70,-1,70,51,53,-1,70,53,71,-1,71,53,55,-1,71,55,72,-1,72,55,38,-1,72,38,73,-1,73,38,36,-1,73,36,74,-1,74,36,33,-1,74,33,75,-1,75,33,32,-1,75,32,76,-1,76,32,57,-1,76,57,77,-1,77,57,59,-1,77,59,78,-1,78,59,61,-1,78,61,79,-1,79,61,63,-1,79,63,80,-1,80,63,65,-1,80,65,81,-1,81,65,67,-1,81,67,82,-1,82,67,40,-1,82,40,83,-1,83,40,43,-1,83,43,84,-1,84,43,45,-1,84,45,68,-1,72,73,85,-1,85,73,86,-1,72,85,87,-1,72,87,71,-1,71,87,88,-1,71,88,70,-1,70,88,89,-1,70,89,69,-1,69,89,90,-1,69,90,68,-1,68,90,91,-1,68,91,84,-1,84,91,92,-1,84,92,83,-1,83,92,93,-1,83,93,82,-1,82,93,94,-1,82,94,81,-1,81,94,95,-1,81,95,80,-1,80,95,96,-1,80,96,79,-1,79,96,97,-1,79,97,78,-1,78,97,98,-1,78,98,77,-1,77,98,99,-1,77,99,76,-1,76,99,100,-1,76,100,75,-1,74,75,101,-1,101,75,100,-1,73,74,86,-1,86,74,101,-1,102,103,104,-1,104,103,105,-1,103,106,105,-1,105,106,107,-1,106,108,107,-1,107,108,109,-1,108,110,109,-1,109,110,111,-1,110,112,111,-1,111,112,113,-1,112,114,113,-1,113,114,115,-1,114,116,115,-1,115,116,117,-1,116,118,117,-1,117,118,119,-1,118,120,119,-1,119,120,121,-1,120,122,121,-1,121,122,123,-1,122,124,123,-1,123,124,125,-1,124,102,125,-1,125,102,104,-1,106,103,102,-1,102,124,106,-1,106,124,122,-1,106,122,108,-1,112,110,114,-1,114,110,108,-1,114,108,116,-1,116,108,122,-1,116,122,118,-1,118,122,120,-1,126,127,128,-1,128,127,129,-1,129,127,130,-1,131,132,133,-1,131,133,134,-1,134,133,135,-1,134,135,130,-1,130,135,136,-1,130,136,129,-1,132,131,137,-1,137,131,138,-1,137,138,139,-1,139,138,140,-1,139,140,141,-1,141,140,142,-1,141,142,143,-1,143,142,144,-1,143,144,145,-1,145,144,146,-1,145,146,147,-1,147,146,148,-1,147,148,149,-1,149,148,150,-1,149,150,151,-1,152,153,154,-1,152,154,155,-1,155,154,156,-1,155,156,157,-1,157,156,158,-1,157,158,159,-1,159,158,160,-1,159,160,161,-1,161,160,162,-1,161,162,163,-1,163,162,164,-1,163,164,165,-1,165,164,151,-1,165,151,150,-1,166,167,168,-1,166,168,169,-1,169,168,153,-1,169,153,152,-1,166,170,167,-1,167,170,171,-1,172,173,174,-1,172,174,175,-1,175,174,171,-1,175,171,170,-1,176,177,178,-1,176,178,179,-1,179,178,180,-1,179,180,181,-1,181,180,182,-1,181,182,183,-1,183,182,184,-1,183,184,185,-1,185,184,186,-1,185,186,187,-1,187,186,188,-1,187,188,189,-1,189,188,173,-1,189,173,172,-1,190,191,192,-1,190,192,193,-1,193,192,194,-1,193,194,195,-1,195,194,196,-1,195,196,197,-1,197,196,198,-1,197,198,199,-1,199,198,200,-1,199,200,201,-1,201,200,202,-1,201,202,203,-1,203,202,177,-1,203,177,176,-1,126,128,204,-1,126,204,205,-1,205,204,206,-1,205,206,207,-1,207,206,191,-1,207,191,190,-1,193,131,190,-1,190,131,134,-1,190,134,207,-1,207,134,130,-1,207,130,205,-1,205,130,127,-1,205,127,126,-1,170,166,175,-1,175,166,169,-1,175,169,172,-1,172,169,152,-1,172,152,189,-1,189,152,155,-1,189,155,187,-1,187,155,157,-1,187,157,185,-1,185,157,159,-1,185,159,183,-1,183,159,161,-1,183,161,181,-1,181,161,163,-1,181,163,179,-1,179,163,165,-1,179,165,176,-1,176,165,150,-1,176,150,203,-1,203,150,148,-1,203,148,201,-1,201,148,146,-1,201,146,199,-1,199,146,144,-1,199,144,197,-1,197,144,142,-1,197,142,195,-1,195,142,140,-1,195,140,193,-1,193,140,138,-1,193,138,131,-1,208,209,210,-1,210,209,211,-1,209,212,211,-1,211,212,213,-1,212,214,213,-1,213,214,215,-1,214,216,215,-1,215,216,217,-1,216,218,217,-1,217,218,219,-1,218,208,219,-1,219,208,210,-1,216,214,218,-1,218,214,212,-1,218,212,208,-1,208,212,209,-1,
]
}
}
Shape{
appearance Appearance {
material Material {
diffuseColor 0.5019607843137255 0.5019607843137255 0.5019607843137255
specularColor 0.25098039215686274 0.25098039215686274 0.25098039215686274
ambientIntensity 0.2
transparency 0
shininess 0.5
}
}
geometry IndexedFaceSet {
ccw TRUE
solid FALSE
coord DEF co Coordinate {
point [
-0.1752 -0.0098 0.0, -0.2147 -0.0098 0.0, -0.1928 0.0395 0.0, -0.1969 0.0395 0.0, -0.1939 0.0436 0.0, -0.1958 0.0437 0.0, -0.1947 0.0478 0.0, -0.1951 0.0478 0.0, -0.0548 0.0493 0.0, -0.0548 -0.0429 0.0, -0.0722 0.0493 0.0, -0.0715 -0.0429 0.0, -0.084 -0.0418 0.0, -0.1181 0.0043 0.0, -0.1171 0.0161 -0.0, -0.1144 0.0254 -0.0, -0.0862 0.0478 0.0, -0.0939 -0.0387 0.0, -0.102 -0.0339 0.0, -0.1086 -0.0273 0.0, -0.1136 -0.0192 0.0, -0.1171 -0.0081 0.0, -0.1103 0.0327 0.0, -0.1045 0.0388 -0.0, -0.0959 0.0444 0.0, -0.5472 -0.437 0.0354, -0.5118 -0.4724 0.0, -1.0236 -0.437 0.0354, -1.0236 -0.4724 0.0, -0.5118 -0.0566 0.0, -0.5472 0.437 0.0354, -0.5118 0.4724 0.0, -1.0236 0.4724 0.0, -1.0236 0.437 0.0354, 0.5472 0.437 0.0354, 0.5118 0.4724 0.0, 1.0236 0.437 0.0354, 1.0236 0.4724 0.0, 0.5118 -0.0566 0.0, 0.5472 -0.437 0.0354, 0.5118 -0.4724 0.0, 1.0236 -0.437 0.0354, 1.0236 -0.4724 0.0, 1.0236 -0.4724 0.0
]
}
coordIndex [
0,1,2,-1,2,1,3,-1,2,3,4,-1,4,3,5,-1,4,5,6,-1,6,5,7,-1,8,9,10,-1,10,9,11,-1,10,11,12,-1,13,14,10,-1,10,14,15,-1,10,15,16,-1,12,17,10,-1,10,17,18,-1,10,18,19,-1,19,20,10,-1,10,20,21,-1,10,21,13,-1,22,23,15,-1,15,23,24,-1,15,24,16,-1,25,26,27,-1,27,26,28,-1,26,25,29,-1,29,25,30,-1,29,30,31,-1,31,30,32,-1,32,30,33,-1,34,35,36,-1,36,35,37,-1,35,34,38,-1,38,34,39,-1,38,39,40,-1,41,42,39,-1,39,42,40,-1,
]
}
}
Shape{
appearance Appearance {
material Material {
diffuseColor 0.0 0.0 0.0
specularColor 0.0 0.0 0.0
ambientIntensity 0.2
transparency 0
shininess 0.5
}
}
geometry IndexedFaceSet {
ccw TRUE
solid FALSE
coord DEF co Coordinate {
point [
0.4596 0.1878 0.787, 0.4596 0.1578 0.787, 0.4596 0.1878 0.7874, 0.4596 0.1578 0.7874, 0.324 -0.2059 0.787, 0.324 -0.2059 0.7874, 0.3342 -0.1476 0.7874, 0.3342 -0.1476 0.787, 0.3589 -0.063 0.7874, 0.3589 -0.063 0.787, 0.4 0.0392 0.7874, 0.4 0.0392 0.787, 0.2712 -0.2059 0.787, 0.2712 -0.2059 0.7874, 0.4068 0.1446 0.787, 0.4068 0.1446 0.7874, 0.3935 0.1204 0.7874, 0.3935 0.1204 0.787, 0.3595 0.0546 0.7874, 0.3595 0.0546 0.787, 0.3151 -0.0463 0.7874, 0.3151 -0.0463 0.787, 0.2865 -0.132 0.7874, 0.2865 -0.132 0.787, 0.2147 0.1446 0.787, 0.2147 0.1446 0.7874, 0.2147 0.1878 0.787, 0.2147 0.1878 0.7874, 0.111 -0.0868 0.787, 0.1811 -0.2059 0.787, 0.111 -0.0868 0.7874, 0.1811 -0.2059 0.7874, 0.1235 -0.2059 0.787, 0.1235 -0.2059 0.7874, 0.0596 -0.0951 0.787, 0.0596 -0.0951 0.7874, -0.0135 -0.0379 0.787, -0.0135 -0.0379 0.7874, -0.0015 -0.0388 0.7874, -0.0015 -0.0388 0.787, 0.013 -0.0431 0.7874, 0.013 -0.0431 0.787, 0.025 -0.0503 0.7874, 0.025 -0.0503 0.787, 0.0387 -0.0639 0.7874, 0.0387 -0.0639 0.787, -0.0493 -0.0379 0.787, -0.0493 -0.0379 0.7874, -0.0493 -0.2059 0.787, -0.0493 -0.2059 0.7874, -0.1021 -0.2059 0.787, -0.1021 -0.2059 0.7874, -0.1021 0.1878 0.787, -0.1021 0.1878 0.7874, 0.0166 0.1878 0.787, 0.0166 0.1878 0.7874, 0.1379 0.0835 0.787, 0.1379 0.0835 0.7874, 0.1374 0.0958 0.7874, 0.1374 0.0958 0.787, 0.1321 0.1217 0.7874, 0.1321 0.1217 0.787, 0.1229 0.1407 0.7874, 0.1229 0.1407 0.787, 0.1099 0.1565 0.7874, 0.1099 0.1565 0.787, 0.0994 0.1652 0.7874, 0.0994 0.1652 0.787, 0.078 0.1771 0.7874, 0.078 0.1771 0.787, 0.0493 0.1852 0.7874, 0.0493 0.1852 0.787, 0.0526 -0.0218 0.787, 0.0526 -0.0218 0.7874, 0.0565 -0.0206 0.7874, 0.0565 -0.0206 0.787, 0.0878 -0.0074 0.7874, 0.0878 -0.0074 0.787, 0.1085 0.0079 0.7874, 0.1085 0.0079 0.787, 0.1173 0.0175 0.7874, 0.1173 0.0175 0.787, 0.1283 0.0353 0.7874, 0.1283 0.0353 0.787, 0.1353 0.0567 0.7874, 0.1353 0.0567 0.787, 0.0526 -0.0231 0.787, 0.0526 -0.0231 0.7874, 0.1067 -0.0797 0.7874, 0.1067 -0.0797 0.787, 0.0835 -0.0464 0.7874, 0.0835 -0.0464 0.787, 0.0704 -0.0335 0.7874, 0.0704 -0.0335 0.787, 0.0834 0.0962 0.787, 0.0851 0.0792 0.787, 0.009 0.0053 0.787, 0.084 0.0648 0.787, 0.0797 0.0488 0.787, 0.0711 0.0338 0.787, 0.0791 0.1094 0.787, 0.0723 0.1204 0.787, 0.0633 0.1294 0.787, 0.0518 0.1365 0.787, 0.0338 0.1424 0.787, 0.0097 0.1446 0.787, -0.0493 0.1446 0.787, -0.0493 0.0053 0.787, 0.059 0.0213 0.787, 0.0456 0.0129 0.787, 0.0293 0.0074 0.787, 0.0097 0.1446 0.7874, -0.0493 0.1446 0.7874, 0.0338 0.1424 0.7874, 0.0518 0.1365 0.7874, 0.0633 0.1294 0.7874, 0.0723 0.1204 0.7874, 0.0791 0.1094 0.7874, 0.0834 0.0962 0.7874, 0.0851 0.0792 0.7874, 0.084 0.0648 0.7874, 0.0797 0.0488 0.7874, 0.0711 0.0338 0.7874, 0.059 0.0213 0.7874, 0.0456 0.0129 0.7874, 0.0293 0.0074 0.7874, 0.009 0.0053 0.7874, -0.0493 0.0053 0.7874, -0.2735 0.1878 0.787, -0.2222 0.1878 0.787, -0.2735 0.1878 0.7874, -0.2222 0.1878 0.7874, -0.2222 -0.0715 0.787, -0.2222 -0.0715 0.7874, -0.1646 -0.0715 0.787, -0.1646 -0.0715 0.7874, -0.1646 -0.1147 0.787, -0.1646 -0.1147 0.7874, -0.2222 -0.1147 0.787, -0.2222 -0.1147 0.7874, -0.2222 -0.2059 0.787, -0.2222 -0.2059 0.7874, -0.2702 -0.2059 0.787, -0.2702 -0.2059 0.7874, -0.2702 -0.1147 0.787, -0.2702 -0.1147 0.7874, -0.4526 -0.1147 0.787, -0.4526 -0.1147 0.7874, -0.4526 -0.0737 0.787, -0.4526 -0.0737 0.7874, -0.3134 0.1166 0.7874, -0.3134 0.1166 0.787, -0.3826 0.0137 0.7874, -0.3826 0.0137 0.787, -0.2702 0.1155 0.787, -0.2702 -0.0715 0.787, -0.3294 0.0192 0.787, -0.3969 -0.0715 0.787, -0.3969 -0.0715 0.7874, -0.3294 0.0192 0.7874, -0.2702 0.1155 0.7874, -0.2702 -0.0715 0.7874, -0.2702 -0.0715 0.7874
]
}
coordIndex [
0,1,2,-1,2,1,3,-1,4,5,6,-1,4,6,7,-1,7,6,8,-1,7,8,9,-1,9,8,10,-1,9,10,11,-1,11,10,3,-1,11,3,1,-1,4,12,5,-1,5,12,13,-1,14,15,16,-1,14,16,17,-1,17,16,18,-1,17,18,19,-1,19,18,20,-1,19,20,21,-1,21,20,22,-1,21,22,23,-1,23,22,13,-1,23,13,12,-1,14,24,15,-1,15,24,25,-1,24,26,25,-1,25,26,27,-1,26,0,27,-1,27,0,2,-1,26,24,0,-1,0,24,14,-1,12,4,23,-1,23,4,7,-1,23,7,21,-1,21,7,9,-1,21,9,19,-1,19,9,11,-1,19,11,17,-1,17,11,14,-1,14,11,1,-1,14,1,0,-1,28,29,30,-1,30,29,31,-1,29,32,31,-1,31,32,33,-1,32,34,33,-1,33,34,35,-1,36,37,38,-1,36,38,39,-1,39,38,40,-1,39,40,41,-1,41,40,42,-1,41,42,43,-1,43,42,44,-1,43,44,45,-1,45,44,35,-1,45,35,34,-1,36,46,37,-1,37,46,47,-1,46,48,47,-1,47,48,49,-1,48,50,49,-1,49,50,51,-1,50,52,51,-1,51,52,53,-1,52,54,53,-1,53,54,55,-1,56,57,58,-1,56,58,59,-1,59,58,60,-1,59,60,61,-1,61,60,62,-1,61,62,63,-1,63,62,64,-1,63,64,65,-1,65,64,66,-1,65,66,67,-1,67,66,68,-1,67,68,69,-1,69,68,70,-1,69,70,71,-1,71,70,55,-1,71,55,54,-1,72,73,74,-1,72,74,75,-1,75,74,76,-1,75,76,77,-1,77,76,78,-1,77,78,79,-1,79,78,80,-1,79,80,81,-1,81,80,82,-1,81,82,83,-1,83,82,84,-1,83,84,85,-1,85,84,57,-1,85,57,56,-1,72,86,73,-1,73,86,87,-1,28,30,88,-1,28,88,89,-1,89,88,90,-1,89,90,91,-1,91,90,92,-1,91,92,93,-1,93,92,87,-1,93,87,86,-1,94,95,56,-1,52,50,46,-1,46,50,48,-1,96,39,41,-1,56,95,85,-1,85,95,97,-1,85,97,83,-1,83,97,98,-1,83,98,81,-1,81,98,99,-1,81,99,79,-1,96,41,72,-1,72,41,86,-1,86,41,43,-1,86,43,93,-1,93,43,45,-1,93,45,91,-1,91,45,34,-1,91,34,89,-1,89,34,28,-1,28,34,32,-1,28,32,29,-1,56,59,94,-1,94,59,61,-1,94,61,100,-1,100,61,63,-1,100,63,101,-1,101,63,65,-1,101,65,102,-1,102,65,67,-1,102,67,103,-1,103,67,69,-1,103,69,104,-1,104,69,71,-1,104,71,105,-1,105,71,54,-1,105,54,106,-1,106,54,52,-1,106,52,107,-1,107,52,46,-1,107,46,96,-1,96,46,36,-1,96,36,39,-1,79,99,77,-1,77,99,108,-1,77,108,75,-1,75,108,109,-1,75,109,72,-1,72,109,110,-1,72,110,96,-1,105,106,111,-1,111,106,112,-1,105,111,113,-1,105,113,104,-1,104,113,114,-1,104,114,103,-1,103,114,115,-1,103,115,102,-1,102,115,116,-1,102,116,101,-1,101,116,117,-1,101,117,100,-1,100,117,118,-1,100,118,94,-1,94,118,119,-1,94,119,95,-1,95,119,120,-1,95,120,97,-1,97,120,121,-1,97,121,98,-1,98,121,122,-1,98,122,99,-1,99,122,123,-1,99,123,108,-1,108,123,124,-1,108,124,109,-1,109,124,125,-1,109,125,110,-1,110,125,126,-1,110,126,96,-1,107,96,127,-1,127,96,126,-1,106,107,112,-1,112,107,127,-1,128,129,130,-1,130,129,131,-1,129,132,131,-1,131,132,133,-1,132,134,133,-1,133,134,135,-1,134,136,135,-1,135,136,137,-1,136,138,137,-1,137,138,139,-1,138,140,139,-1,139,140,141,-1,140,142,141,-1,141,142,143,-1,142,144,143,-1,143,144,145,-1,144,146,145,-1,145,146,147,-1,146,148,147,-1,147,148,149,-1,128,130,150,-1,128,150,151,-1,151,150,152,-1,151,152,153,-1,153,152,149,-1,153,149,148,-1,129,154,132,-1,132,154,155,-1,142,140,144,-1,144,140,138,-1,129,128,154,-1,154,128,151,-1,154,151,156,-1,156,151,153,-1,156,153,157,-1,136,134,138,-1,138,134,132,-1,138,132,144,-1,144,132,155,-1,144,155,146,-1,146,155,157,-1,146,157,148,-1,148,157,153,-1,157,158,159,-1,157,159,156,-1,156,159,160,-1,156,160,154,-1,155,154,161,-1,161,154,160,-1,157,155,158,-1,158,155,161,-1,
]
}
}
Shape{
appearance Appearance {
material Material {
diffuseColor 0.5019607843137255 0.5019607843137255 0.5019607843137255
specularColor 0.25098039215686274 0.25098039215686274 0.25098039215686274
ambientIntensity 0.2
transparency 0
shininess 0.5
}
}
geometry IndexedFaceSet {
ccw TRUE
solid FALSE
coord DEF co Coordinate {
point [
0.0097 0.1446 0.7874, 0.0851 0.0792 0.7874, 0.0834 0.0962 0.7874, -0.0493 0.1446 0.7874, -0.0493 0.0053 0.7874, 0.009 0.0053 0.7874, 0.0293 0.0074 0.7874, 0.0633 0.1294 0.7874, 0.0723 0.1204 0.7874, 0.0791 0.1094 0.7874, 0.0518 0.1365 0.7874, 0.0338 0.1424 0.7874, 0.0456 0.0129 0.7874, 0.059 0.0213 0.7874, 0.0711 0.0338 0.7874, 0.0797 0.0488 0.7874, 0.084 0.0648 0.7874, -0.3969 -0.0715 0.7874, -0.2702 -0.0715 0.7874, -0.3294 0.0192 0.7874, -0.2702 0.1155 0.7874, -0.2702 0.1155 0.7874
]
}
coordIndex [
0,1,2,-1,3,4,0,-1,0,4,5,-1,0,5,6,-1,7,2,8,-1,8,2,9,-1,7,10,2,-1,2,10,11,-1,2,11,0,-1,6,12,0,-1,0,12,13,-1,0,13,14,-1,14,15,0,-1,0,15,16,-1,0,16,1,-1,17,18,19,-1,19,18,20,-1,
]
}
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,178 +0,0 @@
(footprint "0908SQ-23N"
(version 20241229)
(generator "pcbnew")
(generator_version "9.0")
(layer "F.Cu")
(property "Reference" "REF**"
(at 0.5 -2 0)
(unlocked yes)
(layer "F.SilkS")
(uuid "ff5069db-971e-4012-a8fe-79a0beeecba2")
(effects
(font
(size 0.6 0.6)
(thickness 0.15)
)
)
)
(property "Value" "0908SQ-23N"
(at 0 2.5 0)
(unlocked yes)
(layer "F.Fab")
(uuid "c788aafb-994d-4f0d-a772-19139ed4b02a")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Datasheet" "https://www.coilcraft.com/getmedia/b4a6ff85-4c1f-448e-aea7-541369538706/sq_spring.pdf"
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "69f6b539-b4d8-480f-bee6-8714df5845b6")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Description" "Square Air Core Inductor 24 nH, Q>120, I_rms=4.4 A"
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "cbff2ecb-ae54-4bf8-ad5c-7f89f71cb09b")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(attr smd)
(fp_line
(start -0.5 -1.4)
(end 0.5 -1.4)
(stroke
(width 0.1)
(type default)
)
(layer "F.SilkS")
(uuid "89716351-aa68-45c5-9c3e-57a3f007a040")
)
(fp_line
(start -0.5 1.4)
(end -0.5 1.5)
(stroke
(width 0.1)
(type default)
)
(layer "F.SilkS")
(uuid "cea89c5b-1ac2-48fe-a52f-4eaaf0b14cf0")
)
(fp_line
(start -0.5 1.4)
(end 0.5 1.4)
(stroke
(width 0.1)
(type default)
)
(layer "F.SilkS")
(uuid "1d3ae979-5ae2-473f-8263-c0f541358936")
)
(fp_rect
(start -1.3 -1.4)
(end 1.3 1.4)
(stroke
(width 0.05)
(type default)
)
(fill no)
(layer "F.CrtYd")
(uuid "2381b2f1-d50e-475d-b21e-9824096947db")
)
(fp_line
(start -1.2 -1.3)
(end -1.2 1.3)
(stroke
(width 0.1)
(type default)
)
(layer "F.Fab")
(uuid "4ebbb063-9f45-469d-9765-d35393b51da2")
)
(fp_line
(start -1.2 -1.3)
(end 1.2 -1.3)
(stroke
(width 0.1)
(type default)
)
(layer "F.Fab")
(uuid "a13d60b6-8e9f-4ab4-8d58-b542c5386432")
)
(fp_line
(start -1.2 1.3)
(end 1.2 1.3)
(stroke
(width 0.1)
(type default)
)
(layer "F.Fab")
(uuid "26a9057f-9cb3-4820-8fb7-a169dafbc550")
)
(fp_line
(start 1.2 1.3)
(end 1.2 -1.3)
(stroke
(width 0.1)
(type default)
)
(layer "F.Fab")
(uuid "0895da63-d22e-4748-bfb3-4df06a7f00db")
)
(fp_text user "${REFERENCE}"
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(uuid "d81c5e90-a27e-4bbc-94be-a0bf45dfe818")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(pad "1" smd roundrect
(at -0.95 0)
(size 0.64 2.8)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.15)
(thermal_bridge_angle 45)
(uuid "1835b1b7-3832-4dc2-9517-716f0ba370c6")
)
(pad "2" smd roundrect
(at 0.95 0)
(size 0.64 2.8)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.15)
(thermal_bridge_angle 45)
(uuid "cf1fda8d-d25a-4927-a438-7274d4ea4823")
)
(embedded_fonts no)
(model "${KIPRJMOD}/parts/parts.3dshapes/Coilcraft-0908SQ-23N.step"
(offset
(xyz -1 -0.9 0.15)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz -90 -0 -0)
)
)
)

View file

@ -1,327 +0,0 @@
(footprint "ANT8010LL05R1516A"
(version 20241229)
(generator "pcbnew")
(generator_version "9.0")
(layer "F.Cu")
(descr "8010 GPS/Galileo&GLONASS chip antenna")
(tags "ANT8010LL05R1516A ")
(property "Reference" "REF**"
(at -2.7 -1.5 0)
(unlocked yes)
(layer "F.SilkS")
(uuid "67de59bd-50d3-4153-8a4e-c58c9f058573")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Value" "ANT8010LL05R1516A"
(at 0 1.9 0)
(unlocked yes)
(layer "F.Fab")
(uuid "21902822-4981-4d76-b82a-56ff1d338bd9")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(layer "F.Fab")
(hide yes)
(uuid "d82f4af2-efea-48d6-810c-b6437c2bcc5a")
(effects
(font
(size 1.27 1.27)
(thickness 0.15)
)
)
)
(property "Description" "8010 GPS/Galileo&GLONASS chip antenna"
(at 0 0 0)
(layer "F.Fab")
(hide yes)
(uuid "a0162afe-b591-4e82-8c03-f2a4918b03eb")
(effects
(font
(size 1.27 1.27)
(thickness 0.15)
)
)
)
(attr smd)
(fp_line
(start -2.75315 0.7239)
(end 2.75315 0.7239)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.SilkS")
(uuid "fb87d9b3-72d0-4381-a7a6-3f99b07fda55")
)
(fp_line
(start 2.75315 -0.7239)
(end -2.75315 -0.7239)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.SilkS")
(uuid "584abc94-0543-4317-8301-7be4bfffde06")
)
(fp_circle
(center -4.8 0)
(end -4.7238 0)
(stroke
(width 0.1524)
(type solid)
)
(fill no)
(layer "F.SilkS")
(uuid "0a1074d0-3150-4078-91bd-f934b88f6a92")
)
(fp_line
(start -4.7117 -0.8509)
(end 4.7117 -0.8509)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.CrtYd")
(uuid "24f6b07a-557a-49a1-a7e7-67748dd14889")
)
(fp_line
(start -4.7117 0.8509)
(end -4.7117 -0.8509)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.CrtYd")
(uuid "84618e66-22e8-49da-8e0c-c9960c6a0f85")
)
(fp_line
(start 4.7117 -0.8509)
(end 4.7117 0.8509)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.CrtYd")
(uuid "27a77f1e-c2ef-48b9-b687-674e49c1a581")
)
(fp_line
(start 4.7117 0.8509)
(end -4.7117 0.8509)
(stroke
(width 0.1524)
(type solid)
)
(layer "F.CrtYd")
(uuid "aaef7064-f6bb-4f5c-81c1-5b638144387f")
)
(fp_line
(start -4.1021 -0.5969)
(end -4.1021 0.5969)
(stroke
(width 0.0254)
(type solid)
)
(layer "F.Fab")
(uuid "122c187b-6ae2-4cb6-9eee-acfe815513c7")
)
(fp_line
(start -4.1021 -0.5969)
(end -4.1021 0.5969)
(stroke
(width 0.0254)
(type solid)
)
(layer "F.Fab")
(uuid "3b4e7593-bc53-4675-a50e-571981bf9a77")
)
(fp_line
(start -4.1021 0.5969)
(end -3.0607 0.5969)
(stroke
(width 0.0254)
(type solid)
)
(layer "F.Fab")
(uuid "46fc8b4c-6230-4c27-b345-df0c1b0f74ea")
)
(fp_line
(start -4.1021 0.5969)
(end 4.1021 0.5969)
(stroke
(width 0.0254)
(type solid)
)
(layer "F.Fab")
(uuid "ab67247b-62e8-4b19-91c6-03251b837afd")
)
(fp_line
(start -3.0607 -0.5969)
(end -4.1021 -0.5969)
(stroke
(width 0.0254)
(type solid)
)
(layer "F.Fab")
(uuid "ea8f05df-6873-433c-b723-188f4297daba")
)
(fp_line
(start -3.0607 0.5969)
(end -3.0607 -0.5969)
(stroke
(width 0.0254)
(type solid)
)
(layer "F.Fab")
(uuid "69a84e84-26fd-45e7-8a91-d5d3d03e320e")
)
(fp_line
(start 3.0607 -0.5969)
(end 3.0607 0.5969)
(stroke
(width 0.0254)
(type solid)
)
(layer "F.Fab")
(uuid "87289390-3cf6-46d8-b4fd-21de84fc60ac")
)
(fp_line
(start 3.0607 0.5969)
(end 4.1021 0.5969)
(stroke
(width 0.0254)
(type solid)
)
(layer "F.Fab")
(uuid "9e0b509f-4f6a-47f3-8e27-b043408466de")
)
(fp_line
(start 4.1021 -0.5969)
(end -4.1021 -0.5969)
(stroke
(width 0.0254)
(type solid)
)
(layer "F.Fab")
(uuid "0b6afa09-8a18-4b64-8d07-6e812735759c")
)
(fp_line
(start 4.1021 -0.5969)
(end 3.0607 -0.5969)
(stroke
(width 0.0254)
(type solid)
)
(layer "F.Fab")
(uuid "3dbd06af-f6b6-4b85-a699-be9d9b213986")
)
(fp_line
(start 4.1021 0.5969)
(end 4.1021 -0.5969)
(stroke
(width 0.0254)
(type solid)
)
(layer "F.Fab")
(uuid "2a578d8d-ba06-4e7c-8a6d-7d24bcb26903")
)
(fp_line
(start 4.1021 0.5969)
(end 4.1021 -0.5969)
(stroke
(width 0.0254)
(type solid)
)
(layer "F.Fab")
(uuid "7c9618c0-8275-4613-aaf2-595256883d05")
)
(fp_circle
(center -3.6322 0)
(end -3.556 0)
(stroke
(width 0.0254)
(type solid)
)
(fill no)
(layer "F.Fab")
(uuid "49375d77-fd81-4fd9-a68f-5d1bc1e75bc0")
)
(fp_text user "${REFERENCE}"
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(uuid "95ac6dba-5ee0-4552-a1f1-2d31ef0c3f39")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(pad "1" smd rect
(at -3.7592 0)
(size 1.397 1.1938)
(layers "F.Cu" "F.Mask" "F.Paste")
(uuid "0229653a-e7b6-4587-8855-9cce52519c5f")
)
(pad "2" smd rect
(at 3.7592 0)
(size 1.397 1.1938)
(layers "F.Cu" "F.Mask" "F.Paste")
(uuid "2af865ae-2dc5-4ea1-887a-94d7706972a2")
)
(zone
(net 0)
(net_name "")
(layer "F.Cu")
(uuid "d6caf877-bc81-468e-b4b0-dea1ddfa3bcc")
(hatch full 0.508)
(connect_pads
(clearance 0)
)
(min_thickness 0.254)
(filled_areas_thickness no)
(keepout
(tracks not_allowed)
(vias not_allowed)
(pads allowed)
(copperpour not_allowed)
(footprints allowed)
)
(placement
(enabled no)
(sheetname "")
)
(fill
(thermal_gap 0.508)
(thermal_bridge_width 0.508)
)
(polygon
(pts
(xy -3.0099 -0.5461) (xy 3.0099 -0.5461) (xy 3.0099 0.5461) (xy -3.0099 0.5461)
)
)
)
(embedded_fonts no)
(model "${KIPRJMOD}/parts/parts.3dshapes/ANT8010LL05R1516A.step"
(offset
(xyz 0 0 0)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz 0 0 0)
)
)
)

View file

@ -1,139 +0,0 @@
(footprint "Fuse_1812L200"
(version 20241229)
(generator "pcbnew")
(generator_version "9.0")
(layer "F.Cu")
(descr "16V 2A 100A 4A 20mΩ 1812 PTC Resettable Fuses")
(property "Reference" "REF**"
(at 0 -2.05 0)
(unlocked yes)
(layer "F.SilkS")
(uuid "af2fd0fe-a6b0-4ede-99e9-afca1a15eabe")
(effects
(font
(size 0.6 0.6)
(thickness 0.15)
(bold yes)
)
)
)
(property "Value" "1812L200"
(at 0 2.4 0)
(unlocked yes)
(layer "F.Fab")
(uuid "c2b87a99-99c0-4a9a-92c4-2df3f5800af5")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "c084fba9-c381-4ee9-9f09-3125d2a42c7b")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Description" "16V 2A 100A 4A 20mΩ 1812 PTC Resettable Fuses"
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "2deff168-1cff-4a8b-8de0-8c1c73a28161")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(attr smd)
(fp_line
(start -1.3 -1.5)
(end 1.3 -1.5)
(stroke
(width 0.2)
(type default)
)
(layer "F.SilkS")
(uuid "80f3575f-ad24-4bef-8c93-21539d1c40ae")
)
(fp_line
(start 1.3 1.5)
(end -1.3 1.5)
(stroke
(width 0.2)
(type default)
)
(layer "F.SilkS")
(uuid "e795d725-0e38-471c-9559-6d528f447fae")
)
(fp_rect
(start -3.35 -1.7)
(end 3.35 1.7)
(stroke
(width 0.05)
(type default)
)
(fill no)
(layer "F.CrtYd")
(uuid "c6a858da-55df-47c9-afc8-8a6ceb14ddf0")
)
(fp_rect
(start -2.25 -1.55)
(end 2.25 1.55)
(stroke
(width 0.1)
(type solid)
)
(fill no)
(layer "F.Fab")
(uuid "269c2f99-0ae4-4b3e-9260-e2fe6830033e")
)
(fp_text user "${REFERENCE}"
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(uuid "7d52f6eb-3607-49d7-b956-aba6f75e540b")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(pad "1" smd roundrect
(at -2.2 0)
(size 1.6 3.15)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.1)
(uuid "1596402f-1968-4744-8536-4d34377fd0f1")
)
(pad "2" smd roundrect
(at 2.2 0)
(size 1.6 3.15)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.1)
(uuid "4f990784-974c-4158-9f6c-1dc006e80997")
)
(embedded_fonts no)
(model "${KIPRJMOD}/parts/parts.3dshapes/F1812_L4.5-W3.2-H1.0.step"
(offset
(xyz 0 0 0)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz 0 0 0)
)
)
)

View file

@ -216,7 +216,7 @@
)
(fp_line
(start -3.15 5.35)
(end -6 5.35)
(end -6.5 5.35)
(stroke
(width 0.12)
(type solid)
@ -246,7 +246,7 @@
)
(fp_line
(start 3.15 5.35)
(end 6 5.35)
(end 6.5 5.35)
(stroke
(width 0.12)
(type solid)
@ -513,35 +513,35 @@
(at -5 0)
(size 1.2 1.2)
(drill 1.2)
(layers "*.Cu" "*.Mask")
(layers "F&B.Cu" "*.Mask")
(uuid "2a6783be-49b7-4a5e-8837-fde4f5b6b326")
)
(pad "" np_thru_hole circle
(at -5 2.5)
(size 1.2 1.2)
(drill 1.2)
(layers "*.Cu" "*.Mask")
(layers "F&B.Cu" "*.Mask")
(uuid "43e28b64-3f22-4d06-a9d9-1a6cbaeb55e4")
)
(pad "" np_thru_hole circle
(at 0 -5)
(size 1.2 1.2)
(drill 1.2)
(layers "*.Cu" "*.Mask")
(layers "F&B.Cu" "*.Mask")
(uuid "c28e13f1-55b0-4023-8004-5c43f3cb0c59")
)
(pad "" np_thru_hole circle
(at 5 0)
(size 1.2 1.2)
(drill 1.2)
(layers "*.Cu" "*.Mask")
(layers "F&B.Cu" "*.Mask")
(uuid "a43ddcff-5f56-4ac9-9af6-caeb3e1e6b3b")
)
(pad "" np_thru_hole circle
(at 5 2.5)
(size 1.2 1.2)
(drill 1.2)
(layers "*.Cu" "*.Mask")
(layers "F&B.Cu" "*.Mask")
(uuid "0dcf70ee-cde7-482b-a3e5-44427c25dbc7")
)
(pad "R" thru_hole oval

View file

@ -1,464 +0,0 @@
(footprint "LG77L"
(version 20241229)
(generator "pcbnew")
(generator_version "9.0")
(layer "F.Cu")
(descr "Footprint of the Quectel LG77L GNSS module")
(property "Reference" "REF**"
(at -2.6 -4.1 0)
(unlocked yes)
(layer "F.SilkS")
(uuid "5a4a5c43-0705-4e50-a7d4-086544a98c0e")
(effects
(font
(size 0.6 0.6)
(thickness 0.1)
)
)
)
(property "Value" "LG77L"
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(uuid "f118f25f-baa0-401f-bc89-ad33a73892ae")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "d2c786e6-4cab-4760-950d-efcc0684fb4e")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Description" "Footprint of the Quectel LG77L GNSS module"
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "d71725b2-61d6-4d32-adb0-a029871e94f4")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(attr smd)
(fp_line
(start -3.7 -3.7)
(end -3.15 -3.7)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "998a6c69-d629-4dc8-96a8-f738f45ebe67")
)
(fp_line
(start -3.7 -3.35)
(end -3.35 -3.7)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "1273686e-e3e6-4fc8-9308-84fb6efca4df")
)
(fp_line
(start -3.7 -3.15)
(end -3.7 -3.7)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "6e1c00a2-8509-4454-ac10-f4b5b854a1dc")
)
(fp_line
(start -3.5 -3.5)
(end 3.5 -3.5)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "4fd4c71a-3ee3-42ae-b2d7-1945f1aae112")
)
(fp_line
(start -3.5 3.5)
(end -3.5 -3.5)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "7aae71df-5d86-4554-af04-60abf87632d0")
)
(fp_line
(start -3.5 3.5)
(end 3.5 3.5)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "48996a6c-9adf-4ef1-8aa5-214cf10145a8")
)
(fp_line
(start 3.5 3.5)
(end 3.5 -3.5)
(stroke
(width 0.1)
(type solid)
)
(layer "F.SilkS")
(uuid "039ccfb8-4512-4397-944d-6c63f82aebe9")
)
(fp_rect
(start -3.7 -3.7)
(end 3.7 3.7)
(stroke
(width 0.05)
(type default)
)
(fill no)
(layer "F.CrtYd")
(uuid "a42469c2-6809-4336-b217-97a467bf35e0")
)
(fp_text user "${REFERENCE}"
(at 0 1.5 0)
(unlocked yes)
(layer "F.Fab")
(uuid "8c8aca7e-4089-4f4a-bd9e-86cba41b2b05")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(pad "1" smd rect
(at -3.15 -2.6)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "8434dda3-042d-4d5f-9e27-84b5860c5093")
)
(pad "2" smd rect
(at -3.15 -1.95)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "c0a13736-a7a3-4fe6-8385-080d9328e44c")
)
(pad "3" smd rect
(at -3.15 -1.3)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "ce1e8130-2d7a-470e-a56d-e6951d72f81c")
)
(pad "4" smd rect
(at -3.15 -0.65)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "d76a556c-d202-4abc-8cf1-f38b2a758bec")
)
(pad "5" smd rect
(at -3.15 0)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "05396c81-0ffc-46e4-944e-9a25178566e9")
)
(pad "6" smd rect
(at -3.15 0.65)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "407ee700-8dcf-4120-9e66-f763afbc5ead")
)
(pad "7" smd rect
(at -3.15 1.3)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "4579ae85-a8d3-4772-9415-0569937fcdda")
)
(pad "8" smd rect
(at -3.15 1.95)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "047fa1e4-514b-42ba-85c1-02c289eb6e90")
)
(pad "9" smd rect
(at -3.15 2.6)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "58b7dda1-8943-4a42-9800-e08f86b4ef9c")
)
(pad "10" smd rect
(at -2.6 3.15 90)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "50a02efc-846c-4881-8f8c-ca92ff96d451")
)
(pad "11" smd rect
(at -1.95 3.15 90)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "f4b4525b-28e1-4f80-ae49-2029f055bea0")
)
(pad "12" smd rect
(at -1.3 3.15 90)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "64d2a0d3-495a-4414-8c8c-1ba56a807045")
)
(pad "13" smd rect
(at -0.65 3.15 90)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "bb66b982-d048-48e4-9453-a1c3e7267812")
)
(pad "14" smd rect
(at 0 3.15 90)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "a4ddce47-348e-49ce-bffb-65afb37d16b7")
)
(pad "15" smd rect
(at 0.65 3.15 90)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "7035dbbc-981d-41ad-84c6-0c3c676a5e5d")
)
(pad "16" smd rect
(at 1.3 3.15 90)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "37acf533-9106-4968-a12e-5a5f08605f42")
)
(pad "17" smd rect
(at 1.95 3.15 90)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "e2ec9451-a34b-4910-93c0-fb3b88a0b35d")
)
(pad "18" smd rect
(at 2.6 3.15 90)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "21d1a3e3-b919-4d59-9641-4f5da2962429")
)
(pad "19" smd rect
(at 3.15 2.6)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "47bc0a58-f13a-4868-a995-85758b92e88e")
)
(pad "20" smd rect
(at 3.15 1.95)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "f41feb9f-7549-429f-8019-f3e7ecccf621")
)
(pad "21" smd rect
(at 3.15 1.3)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "2b09dd2e-bf6c-45d9-a069-b5a2fefa906d")
)
(pad "22" smd rect
(at 3.15 0.65)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "d1ec8d28-096e-480e-94fa-f5a8845d0318")
)
(pad "23" smd rect
(at 3.15 0)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "ec875793-5a2b-40bf-9420-61bc489ad12f")
)
(pad "24" smd rect
(at 3.15 -0.65)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "a97d1315-d260-46cf-8244-ff5eb24204da")
)
(pad "25" smd rect
(at 3.15 -1.3)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "28019ec8-b73a-443f-ba70-a61f82c73447")
)
(pad "26" smd rect
(at 3.15 -1.95)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "58ab1220-483d-45fe-9383-468e81974f43")
)
(pad "27" smd rect
(at 3.15 -2.6)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "18bba525-ac4c-40ac-97af-7ebdf52dac0a")
)
(pad "28" smd rect
(at 2.6 -3.15 90)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "541b85a6-f955-4be8-aa6e-4e5dce3401c8")
)
(pad "29" smd rect
(at 1.95 -3.15 90)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "2d4cfb5d-b913-4dc5-8c06-371feb1d4bbc")
)
(pad "30" smd rect
(at 1.3 -3.15 90)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "29987e7e-274e-49a3-8817-b8378febf272")
)
(pad "31" smd rect
(at 0.65 -3.15 90)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "d7fd6692-c079-4646-abff-75f2e7df79b9")
)
(pad "32" smd rect
(at 0 -3.15 90)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "3596584a-a93b-4ad5-a2f2-a73afbe7dbea")
)
(pad "33" smd rect
(at -0.65 -3.15 90)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "eeab4309-eb26-45db-a549-dfd3690125d3")
)
(pad "34" smd rect
(at -1.3 -3.15 90)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "6e376d9d-099a-49a4-81f2-5344d7e3cd27")
)
(pad "35" smd rect
(at -1.95 -3.15 90)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "813acad6-3d64-4053-a12b-80ebb2298b7c")
)
(pad "36" smd rect
(at -2.6 -3.15 90)
(size 0.4 0.3)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "f13c26d2-baef-4b84-9a2d-32df5705f1f8")
)
(pad "37" smd rect
(at -1.3 -1.3)
(size 0.5 0.5)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "b6275dd6-7d9e-42a1-81b8-fd408bebb21a")
)
(pad "38" smd rect
(at 0 -1.3)
(size 0.5 0.5)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "d8a54cb3-569a-4560-8ab4-9f43260d88ad")
)
(pad "39" smd rect
(at -1.3 0)
(size 0.5 0.5)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "7eb9a52c-4fbb-49c3-b036-dfdcc2b61134")
)
(pad "40" smd rect
(at 0 0)
(size 0.5 0.5)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "a3da43f2-323c-423e-befa-222fb4d903ce")
)
(pad "41" smd rect
(at -1.3 1.3)
(size 0.5 0.5)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "a2c16c35-2246-48ef-8721-736d46cf2d53")
)
(pad "42" smd rect
(at 0 1.3)
(size 0.5 0.5)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "5f77703a-3395-4a33-8d43-c8e48a729fa2")
)
(pad "43" smd rect
(at 1.3 1.3)
(size 0.5 0.5)
(layers "F.Cu" "F.Mask" "F.Paste")
(solder_mask_margin 0.05)
(uuid "1713a5bf-e34d-421f-8fd8-c1467d39d23f")
)
(embedded_fonts no)
(model "${KIPRJMOD}/parts/parts.3dshapes/LG77L.step"
(offset
(xyz 0 0 0)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz -90 -0 -0)
)
)
)

View file

@ -1,296 +0,0 @@
(footprint "L_TDK_SPM6530"
(version 20241229)
(generator "pcbnew")
(generator_version "9.0")
(layer "F.Cu")
(descr "Inductor, TDK, SPM6530, 7.1mmx6.5mm")
(tags "Inductor TDK_SPM6530")
(property "Reference" "REF**"
(at -2.4 -4.1 0)
(layer "F.SilkS")
(uuid "73ea877f-3c26-4249-8567-2c147a332783")
(effects
(font
(size 0.6 0.6)
(thickness 0.15)
)
)
)
(property "Value" "L_TDK_SPM6530"
(at 0 4.4 0)
(layer "F.Fab")
(uuid "25da4e9b-cf5b-489b-8077-35b21c4b9ff6")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(layer "F.Fab")
(hide yes)
(uuid "fb423d1f-6124-4bb4-a23e-d9201a4817fc")
(effects
(font
(size 1.27 1.27)
(thickness 0.15)
)
)
)
(property "Description" ""
(at 0 0 0)
(layer "F.Fab")
(hide yes)
(uuid "00d899db-5479-4a84-b8a5-61d7bac83b4e")
(effects
(font
(size 1.27 1.27)
(thickness 0.15)
)
)
)
(attr smd)
(fp_line
(start -3.55 -3.55)
(end 3.55 -3.55)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "fd1cae0b-7518-424a-a653-a2a88468097e")
)
(fp_line
(start -3.55 -2.344)
(end -3.55 -3.55)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "af170147-b3d3-49cf-a973-19627c931ac0")
)
(fp_line
(start -3.55 3.55)
(end -3.55 1.8)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "0dc4ae72-6559-4a6e-894b-427e6ff83ff9")
)
(fp_line
(start 3.55 -3.55)
(end 3.55 -1.8)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "893b775b-00c8-4d1a-99ee-2cd2ed9da719")
)
(fp_line
(start 3.55 1.8)
(end 3.55 3.55)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "422da8c6-c590-469f-9ced-4fd9748d38ca")
)
(fp_line
(start 3.55 3.55)
(end -3.55 3.55)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "9ef3e704-b132-48ae-a2a2-1e6ddd38687b")
)
(fp_poly
(pts
(xy -3.547242 -1.8) (xy -3.9 -1.8) (xy -3.547242 -2.344)
)
(stroke
(width 0.12)
(type solid)
)
(fill yes)
(layer "F.SilkS")
(uuid "4d6a56eb-2192-421d-b61d-35b997aa8504")
)
(fp_line
(start -3.75 -1.8)
(end -3.6 -1.8)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "4d2cf893-7307-4d3b-9547-7cf316a646dc")
)
(fp_line
(start -3.75 1.8)
(end -3.75 -1.8)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "f5fa0654-101c-4867-a3d7-0fcf0a91208b")
)
(fp_line
(start -3.6 -3.6)
(end 3.6 -3.6)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "3e13f767-90b6-44d9-b451-2256c55515f9")
)
(fp_line
(start -3.6 -1.8)
(end -3.6 -3.6)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "365e080f-0d56-4e65-b286-158ffc027ea7")
)
(fp_line
(start -3.6 1.8)
(end -3.75 1.8)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "eb0725dd-4c26-407a-8d29-6482159b4983")
)
(fp_line
(start -3.6 3.6)
(end -3.6 1.8)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "831ba7da-133c-41d3-af0f-5c0e724792db")
)
(fp_line
(start 3.6 -3.6)
(end 3.6 -1.8)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "fd529a65-3c5f-46c5-82b9-d8ced98977c7")
)
(fp_line
(start 3.6 -1.8)
(end 3.75 -1.8)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "4ccdf759-7dfb-4397-a3d0-3bd24e05a392")
)
(fp_line
(start 3.6 1.8)
(end 3.6 3.6)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "d09bf15b-a175-4ebf-987c-013115b0dc7d")
)
(fp_line
(start 3.6 3.6)
(end -3.6 3.6)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "6247ba8d-1290-4614-b559-cb562b419441")
)
(fp_line
(start 3.75 -1.8)
(end 3.75 1.8)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "6960d76d-b2af-42e7-a7f4-2e1970afe7c6")
)
(fp_line
(start 3.75 1.8)
(end 3.6 1.8)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "28937305-71a1-457f-8313-f688127b4028")
)
(fp_poly
(pts
(xy -3 -2) (xy -3 3) (xy 3 3) (xy 3 -3) (xy -2 -3)
)
(stroke
(width 0.1)
(type solid)
)
(fill no)
(layer "F.Fab")
(uuid "4266ea0b-a93d-4889-8a3e-30609e1391c7")
)
(fp_text user "${REFERENCE}"
(at 0 0 0)
(layer "F.Fab")
(uuid "134794af-0d6e-446c-933d-b8a675a7919c")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(pad "1" smd roundrect
(at -2.775 0)
(size 1.85 3.4)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.166667)
(uuid "ec5576c9-933b-49e2-84aa-bf6f1a6bf0e5")
)
(pad "2" smd roundrect
(at 2.775 0)
(size 1.85 3.4)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.166667)
(uuid "4e03847a-9b76-4cd4-a634-620b2038afee")
)
(embedded_fonts no)
(model "${KIPRJMOD}/parts/parts.3dshapes/spm6530.step"
(offset
(xyz 0 0 0)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz -90 -0 -90)
)
)
)

View file

@ -3550,17 +3550,6 @@
(layer "F.Paste")
(uuid "def6af63-afc9-4db6-8566-ea920cccef75")
)
(fp_rect
(start -15.4 -15.4)
(end 15.4 15.4)
(stroke
(width 0.05)
(type default)
)
(fill no)
(layer "F.CrtYd")
(uuid "14c2b528-efe8-4e89-bcf1-4731300788e5")
)
(fp_text user "${REFERENCE}"
(at 19.8 -16 0)
(unlocked yes)

View file

@ -1,368 +0,0 @@
(footprint "QFN-12_L2.0-W2.0-P0.50-BL-EP0.8"
(version 20241229)
(generator "pcbnew")
(generator_version "9.0")
(layer "F.Cu")
(property "Reference" "REF**"
(at -0.2 -1.6 0)
(layer "F.SilkS")
(uuid "a8782719-28f7-4db1-96bf-5c52097446fe")
(effects
(font
(size 0.6 0.6)
(thickness 0.15)
)
)
)
(property "Value" "QFN-12_L2.0-W2.0-P0.50-BL-EP0.8"
(at 0 2.6 0)
(layer "F.Fab")
(uuid "4aed39a9-b881-4214-8490-b053b2e15bbc")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(layer "F.Fab")
(hide yes)
(uuid "60d57ccb-a582-4496-bbde-d266d018fed4")
(effects
(font
(size 1.27 1.27)
(thickness 0.15)
)
)
)
(property "Description" ""
(at 0 0 0)
(layer "F.Fab")
(hide yes)
(uuid "15a50e0a-abb9-45fe-9c63-d7dccdd89aed")
(effects
(font
(size 1.27 1.27)
(thickness 0.15)
)
)
)
(attr smd)
(fp_line
(start -1.08 -1.08)
(end -0.83 -1.08)
(stroke
(width 0.15)
(type solid)
)
(layer "F.SilkS")
(uuid "b3ac46b5-8e15-48c3-97bf-071a84fae8d6")
)
(fp_line
(start -1.08 -0.83)
(end -1.08 -1.08)
(stroke
(width 0.15)
(type solid)
)
(layer "F.SilkS")
(uuid "10be5a6d-f17c-4409-a270-ae5f28a7590f")
)
(fp_line
(start -1.08 0.83)
(end -1.08 1.08)
(stroke
(width 0.15)
(type solid)
)
(layer "F.SilkS")
(uuid "8f130482-50f0-448c-b49d-bc89d3062701")
)
(fp_line
(start -1.08 1.08)
(end -0.83 1.08)
(stroke
(width 0.15)
(type solid)
)
(layer "F.SilkS")
(uuid "f4d21aad-ee76-4db6-b582-d5f8f1303a17")
)
(fp_line
(start 1.08 -1.08)
(end 0.83 -1.08)
(stroke
(width 0.15)
(type solid)
)
(layer "F.SilkS")
(uuid "ffcba15f-85e5-472d-a5bd-070aaf4bc708")
)
(fp_line
(start 1.08 -0.83)
(end 1.08 -1.08)
(stroke
(width 0.15)
(type solid)
)
(layer "F.SilkS")
(uuid "d3ddd0d4-01b4-4dc8-b887-2e8e3c086d90")
)
(fp_line
(start 1.08 0.83)
(end 1.08 1.08)
(stroke
(width 0.15)
(type solid)
)
(layer "F.SilkS")
(uuid "4f631bdd-7ff2-418a-bf98-97e73950d1cb")
)
(fp_line
(start 1.08 1.08)
(end 0.83 1.08)
(stroke
(width 0.15)
(type solid)
)
(layer "F.SilkS")
(uuid "cc0adfc1-a251-4812-9488-f43dcce841a4")
)
(fp_circle
(center -0.5 1.47)
(end -0.43 1.47)
(stroke
(width 0.15)
(type solid)
)
(fill no)
(layer "F.SilkS")
(uuid "f5772caa-5350-472b-b828-0e34b5a4bb22")
)
(fp_circle
(center -1 1)
(end -0.97 1)
(stroke
(width 0.06)
(type solid)
)
(fill no)
(layer "F.Fab")
(uuid "19601206-2697-4961-9fd1-d5cde159999f")
)
(fp_text user "${REFERENCE}"
(at 0 0 0)
(layer "F.Fab")
(uuid "2b5a77c6-7481-4bcd-b837-d30210a97c1f")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(pad "1" smd custom
(at -0.5 0.93)
(size 0.01 0.01)
(layers "F.Cu" "F.Mask" "F.Paste")
(thermal_bridge_angle 90)
(options
(clearance outline)
(anchor circle)
)
(primitives
(gr_poly
(pts
(xy -0.12 0.24) (xy 0.12 0.24) (xy 0.12 -0.24) (xy -0.03 -0.24) (xy -0.13 -0.05)
)
(width 0.1)
(fill yes)
)
)
(uuid "dd162c2b-9f32-4eff-ac73-0b92d8076147")
)
(pad "2" smd rect
(at 0 0.93)
(size 0.25 0.48)
(layers "F.Cu" "F.Mask" "F.Paste")
(uuid "ca2ab885-5f15-4d06-8795-df9769a50a84")
)
(pad "3" smd custom
(at 0.5 0.93)
(size 0.01 0.01)
(layers "F.Cu" "F.Mask" "F.Paste")
(thermal_bridge_angle 90)
(options
(clearance outline)
(anchor circle)
)
(primitives
(gr_poly
(pts
(xy 0.12 0.24) (xy -0.12 0.24) (xy -0.12 -0.24) (xy 0.03 -0.24) (xy 0.12 -0.05)
)
(width 0.1)
(fill yes)
)
)
(uuid "4dfc71ca-2265-45f3-8e39-7253a50af51c")
)
(pad "4" smd custom
(at 0.93 0.5)
(size 0.01 0.01)
(layers "F.Cu" "F.Mask" "F.Paste")
(thermal_bridge_angle 90)
(options
(clearance outline)
(anchor circle)
)
(primitives
(gr_poly
(pts
(xy 0.24 0.12) (xy 0.24 -0.13) (xy -0.24 -0.13) (xy -0.24 -0.12) (xy -0.24 0.03) (xy -0.05 0.12)
)
(width 0.1)
(fill yes)
)
)
(uuid "abc5d17c-bfd1-4349-897b-5c0ca2f8dde7")
)
(pad "5" smd rect
(at 0.93 0)
(size 0.48 0.25)
(layers "F.Cu" "F.Mask" "F.Paste")
(uuid "5dc8d355-be9c-42f6-be27-8cd651b5f099")
)
(pad "6" smd custom
(at 0.93 -0.5)
(size 0.01 0.01)
(layers "F.Cu" "F.Mask" "F.Paste")
(thermal_bridge_angle 90)
(options
(clearance outline)
(anchor circle)
)
(primitives
(gr_poly
(pts
(xy 0.24 -0.12) (xy 0.24 0.13) (xy -0.24 0.13) (xy -0.24 0.12) (xy -0.24 -0.03) (xy -0.05 -0.12)
)
(width 0.1)
(fill yes)
)
)
(uuid "2a687c68-2d92-4132-9cf6-a94ad3b4ff17")
)
(pad "7" smd custom
(at 0.5 -0.93)
(size 0.01 0.01)
(layers "F.Cu" "F.Mask" "F.Paste")
(thermal_bridge_angle 90)
(options
(clearance outline)
(anchor circle)
)
(primitives
(gr_poly
(pts
(xy 0.12 -0.24) (xy -0.13 -0.24) (xy -0.13 0.24) (xy -0.12 0.24) (xy 0.03 0.24) (xy 0.12 0.05)
)
(width 0.1)
(fill yes)
)
)
(uuid "563a62c7-6460-468f-9ed8-3f392e3a66e9")
)
(pad "8" smd rect
(at 0 -0.93)
(size 0.25 0.48)
(layers "F.Cu" "F.Mask" "F.Paste")
(uuid "786a1091-77e3-4c4c-9fec-91ee152eda63")
)
(pad "9" smd custom
(at -0.5 -0.93)
(size 0.01 0.01)
(layers "F.Cu" "F.Mask" "F.Paste")
(thermal_bridge_angle 90)
(options
(clearance outline)
(anchor circle)
)
(primitives
(gr_poly
(pts
(xy -0.12 -0.24) (xy 0.13 -0.24) (xy 0.13 0.24) (xy 0.12 0.24) (xy -0.03 0.24) (xy -0.12 0.05)
)
(width 0.1)
(fill yes)
)
)
(uuid "62334b86-0c16-4adc-a69c-124a79058807")
)
(pad "10" smd custom
(at -0.93 -0.5)
(size 0.01 0.01)
(layers "F.Cu" "F.Mask" "F.Paste")
(thermal_bridge_angle 90)
(options
(clearance outline)
(anchor circle)
)
(primitives
(gr_poly
(pts
(xy -0.24 -0.13) (xy -0.24 0.12) (xy 0.24 0.12) (xy 0.24 -0.03) (xy 0.05 -0.13)
)
(width 0.1)
(fill yes)
)
)
(uuid "96053804-0f8e-42f5-9fa9-3ab57c47ded0")
)
(pad "11" smd rect
(at -0.93 0)
(size 0.48 0.25)
(layers "F.Cu" "F.Mask" "F.Paste")
(uuid "2c8dadd3-e21b-493c-b5df-9afd6866ca88")
)
(pad "12" smd custom
(at -0.93 0.5)
(size 0.01 0.01)
(layers "F.Cu" "F.Mask" "F.Paste")
(thermal_bridge_angle 90)
(options
(clearance outline)
(anchor circle)
)
(primitives
(gr_poly
(pts
(xy -0.24 0.12) (xy -0.24 -0.12) (xy 0.24 -0.12) (xy 0.24 0.03) (xy 0.05 0.12)
)
(width 0.1)
(fill yes)
)
)
(uuid "287ad911-9040-43fc-a616-7bb3f66da731")
)
(pad "13" smd rect
(at 0 0)
(size 0.85 0.85)
(layers "F.Cu" "F.Mask" "F.Paste")
(uuid "5ea7bd86-7f7e-45ee-9a20-b1fa5054d81e")
)
(embedded_fonts no)
(model "${KIPRJMOD}/parts/parts.3dshapes/QFN-12_L2.0-W2.0-P0.50-BL-EP0.8.wrl"
(offset
(xyz 0 -0 0.83)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz -0 -0 -0)
)
)
)

View file

@ -1,621 +0,0 @@
(footprint "QFN-16-1EP_3x3mm_P0.5mm_EP1.7x1.7mm_ThermalVias"
(version 20241229)
(generator "pcbnew")
(generator_version "9.0")
(layer "F.Cu")
(descr "QFN, 16 Pin (https://www.st.com/resource/en/datasheet/tsv521.pdf), generated with kicad-footprint-generator ipc_noLead_generator.py")
(tags "QFN NoLead")
(property "Reference" "REF**"
(at 0 -2.83 0)
(layer "F.SilkS")
(uuid "146cb097-3a23-4d30-97e1-02afe1715ff0")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Value" "QFN-16-1EP_3x3mm_P0.5mm_EP1.7x1.7mm_ThermalVias"
(at 0 2.83 0)
(layer "F.Fab")
(uuid "d51956ff-1267-4fa4-aec0-e779bb076052")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(layer "F.Fab")
(hide yes)
(uuid "e2650296-9dce-4213-b9ad-c5957d95e9de")
(effects
(font
(size 1.27 1.27)
(thickness 0.15)
)
)
)
(property "Description" ""
(at 0 0 0)
(layer "F.Fab")
(hide yes)
(uuid "6e80eac6-0820-4ed8-a62e-21d57212afde")
(effects
(font
(size 1.27 1.27)
(thickness 0.15)
)
)
)
(attr smd)
(fp_line
(start -1.61 -1.135)
(end -1.61 -1.37)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "794740e0-cbde-4527-bb22-0b4a4c74449a")
)
(fp_line
(start -1.61 1.61)
(end -1.61 1.135)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "c30118cb-93db-4f00-bbdd-7910b11869d7")
)
(fp_line
(start -1.135 -1.61)
(end -1.31 -1.61)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "56f5158c-dd8a-4f6b-a21f-5dd799b5c1d5")
)
(fp_line
(start -1.135 1.61)
(end -1.61 1.61)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "f2ff359a-2256-4cd4-9da3-a5271d0a8189")
)
(fp_line
(start 1.135 -1.61)
(end 1.61 -1.61)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "c1dcc67e-52ae-449e-9108-f8c4480d93b1")
)
(fp_line
(start 1.135 1.61)
(end 1.61 1.61)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "4cdce9dd-a812-4039-8e65-2ae3cd56f9df")
)
(fp_line
(start 1.61 -1.61)
(end 1.61 -1.135)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "162babcd-8007-46c5-80bd-bbd89b0f6948")
)
(fp_line
(start 1.61 1.61)
(end 1.61 1.135)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "65658de6-bfbe-46ba-95a4-533601177c79")
)
(fp_poly
(pts
(xy -1.61 -1.61) (xy -1.85 -1.94) (xy -1.37 -1.94)
)
(stroke
(width 0.12)
(type solid)
)
(fill yes)
(layer "F.SilkS")
(uuid "5056cf90-be6a-434a-a325-4a362c32af51")
)
(fp_line
(start -2.13 -1.13)
(end -1.75 -1.13)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "1f671b79-d97e-41ad-93fc-1cf51bfa9cb7")
)
(fp_line
(start -2.13 1.13)
(end -2.13 -1.13)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "a08deeeb-cd7c-4232-a316-3dafdfdfd22c")
)
(fp_line
(start -1.75 -1.75)
(end -1.13 -1.75)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "662e0b38-7053-4314-a76b-084e7c6272ce")
)
(fp_line
(start -1.75 -1.13)
(end -1.75 -1.75)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "d0e2a759-83b1-40db-b43d-005c3d7d23ae")
)
(fp_line
(start -1.75 1.13)
(end -2.13 1.13)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "19883e16-6c0d-436f-ba5b-4a05292297c2")
)
(fp_line
(start -1.75 1.75)
(end -1.75 1.13)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "186bab08-2bad-43d1-8f48-d50ecde883cb")
)
(fp_line
(start -1.13 -2.13)
(end 1.13 -2.13)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "64b466da-5271-4218-b766-7f4aa5c20160")
)
(fp_line
(start -1.13 -1.75)
(end -1.13 -2.13)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "f05331ee-774e-4698-b4c8-3d8e70d9b824")
)
(fp_line
(start -1.13 1.75)
(end -1.75 1.75)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "fabffa53-ad6d-493c-8f94-421324445e39")
)
(fp_line
(start -1.13 2.13)
(end -1.13 1.75)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "a496d30d-77fa-498c-ad3a-d5a1f0bdb36e")
)
(fp_line
(start 1.13 -2.13)
(end 1.13 -1.75)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "eedb0013-7f64-4e9b-8709-ac33ef35ba86")
)
(fp_line
(start 1.13 -1.75)
(end 1.75 -1.75)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "6965b92e-f026-4522-b39c-d1a84a46ed6f")
)
(fp_line
(start 1.13 1.75)
(end 1.13 2.13)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "b8956d33-1761-4836-a804-bbf2b778e549")
)
(fp_line
(start 1.13 2.13)
(end -1.13 2.13)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "3627ec72-7ac6-4784-8218-dad7d4bfa806")
)
(fp_line
(start 1.75 -1.75)
(end 1.75 -1.13)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "ec936198-d501-46f6-a690-abfa32a3b8cb")
)
(fp_line
(start 1.75 -1.13)
(end 2.13 -1.13)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "f219ea12-929d-42d5-98d3-50eb61c80fbc")
)
(fp_line
(start 1.75 1.13)
(end 1.75 1.75)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "f7a71f8d-a99f-4e39-9862-af6ac30a7091")
)
(fp_line
(start 1.75 1.75)
(end 1.13 1.75)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "817093f7-d70e-4e8d-a938-0d501369996e")
)
(fp_line
(start 2.13 -1.13)
(end 2.13 1.13)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "db88c6f6-4b31-4243-9654-30d77b022a33")
)
(fp_line
(start 2.13 1.13)
(end 1.75 1.13)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "393772b7-f5af-49e8-9612-4b8bb9d9a9ba")
)
(fp_poly
(pts
(xy -1.5 -0.75) (xy -1.5 1.5) (xy 1.5 1.5) (xy 1.5 -1.5) (xy -0.75 -1.5)
)
(stroke
(width 0.1)
(type solid)
)
(fill no)
(layer "F.Fab")
(uuid "c0565ff4-e04c-4de1-8a69-8b14d4a59ec7")
)
(fp_text user "${REFERENCE}"
(at 0 0 0)
(layer "F.Fab")
(uuid "69b96c44-6392-4f22-8818-ebb39567f873")
(effects
(font
(size 0.75 0.75)
(thickness 0.11)
)
)
)
(pad "" smd roundrect
(at -0.425 -0.425)
(size 0.69 0.69)
(layers "F.Paste")
(roundrect_rratio 0.25)
(uuid "edb080ec-f862-442f-a07c-f3f822e92eac")
)
(pad "" smd roundrect
(at -0.425 0.425)
(size 0.69 0.69)
(layers "F.Paste")
(roundrect_rratio 0.25)
(uuid "400bcf57-b44e-4c5a-ab46-c04b3cab419b")
)
(pad "" smd roundrect
(at 0.425 -0.425)
(size 0.69 0.69)
(layers "F.Paste")
(roundrect_rratio 0.25)
(uuid "f168171f-5a00-478e-a94a-74957d998f5a")
)
(pad "" smd roundrect
(at 0.425 0.425)
(size 0.69 0.69)
(layers "F.Paste")
(roundrect_rratio 0.25)
(uuid "a70fb6f2-aa93-4fbd-992d-d2143f65e9aa")
)
(pad "1" smd roundrect
(at -1.4625 -0.75)
(size 0.825 0.25)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "f263de75-8f03-4c0d-bbe8-69115199632e")
)
(pad "2" smd roundrect
(at -1.4625 -0.25)
(size 0.825 0.25)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "26b64c03-186c-4209-b768-66b3958013f9")
)
(pad "3" smd roundrect
(at -1.4625 0.25)
(size 0.825 0.25)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "ad332282-e7de-46d5-8d74-4a20c5bb6abc")
)
(pad "4" smd roundrect
(at -1.4625 0.75)
(size 0.825 0.25)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "90175b93-a479-4dd8-9b85-6c77b02a9199")
)
(pad "5" smd roundrect
(at -0.75 1.4625)
(size 0.25 0.825)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "38674765-a05d-46f1-becd-9c3168ad661a")
)
(pad "6" smd roundrect
(at -0.25 1.4625)
(size 0.25 0.825)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "ce7f813e-4f7e-4157-84af-b30a379f3210")
)
(pad "7" smd roundrect
(at 0.25 1.4625)
(size 0.25 0.825)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "eca66c6d-1ffa-440b-bffa-bb087cb75123")
)
(pad "8" smd roundrect
(at 0.75 1.4625)
(size 0.25 0.825)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "b38d6cac-61a7-46a7-8872-2596081f1ce3")
)
(pad "9" smd roundrect
(at 1.4625 0.75)
(size 0.825 0.25)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "54ab9335-8987-4f76-bf90-b5d0da4be022")
)
(pad "10" smd roundrect
(at 1.4625 0.25)
(size 0.825 0.25)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "3fea1b13-3ae4-44a1-83d0-6b9b84e406bf")
)
(pad "11" smd roundrect
(at 1.4625 -0.25)
(size 0.825 0.25)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "0bef8fe5-c2dc-4b06-a1ae-68ad9d8423f4")
)
(pad "12" smd roundrect
(at 1.4625 -0.75)
(size 0.825 0.25)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "f1f5f2fb-694f-4fdf-ba18-2a55ecdb8b77")
)
(pad "13" smd roundrect
(at 0.75 -1.4625)
(size 0.25 0.825)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "70c63b74-ad50-4cf2-b27a-daad0df06ca2")
)
(pad "14" smd roundrect
(at 0.25 -1.4625)
(size 0.25 0.825)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "9014df83-ce34-4861-b73d-5f0081a34d0f")
)
(pad "15" smd roundrect
(at -0.25 -1.4625)
(size 0.25 0.825)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "a796753a-1977-4937-9ac1-45fdde894bba")
)
(pad "16" smd roundrect
(at -0.75 -1.4625)
(size 0.25 0.825)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "f13fdf09-8954-47b4-95d7-5f517ea93f7d")
)
(pad "17" thru_hole circle
(at -0.55 -0.55)
(size 0.6 0.6)
(drill 0.3)
(property pad_prop_heatsink)
(layers "*.Cu")
(remove_unused_layers no)
(uuid "2cf49eb3-69ae-489c-a1a9-fd78a76faff6")
)
(pad "17" thru_hole circle
(at -0.55 0)
(size 0.6 0.6)
(drill 0.3)
(property pad_prop_heatsink)
(layers "*.Cu")
(remove_unused_layers no)
(uuid "940fd9f5-bc60-4156-84bd-47db1f493b07")
)
(pad "17" thru_hole circle
(at -0.55 0.55)
(size 0.6 0.6)
(drill 0.3)
(property pad_prop_heatsink)
(layers "*.Cu")
(remove_unused_layers no)
(uuid "fc118f21-1667-4e35-b534-3bfbff79aab8")
)
(pad "17" thru_hole circle
(at 0 -0.55)
(size 0.6 0.6)
(drill 0.3)
(property pad_prop_heatsink)
(layers "*.Cu")
(remove_unused_layers no)
(uuid "c12a4c25-d958-4e3f-b071-1f45f1378f36")
)
(pad "17" thru_hole circle
(at 0 0)
(size 0.6 0.6)
(drill 0.3)
(property pad_prop_heatsink)
(layers "*.Cu")
(remove_unused_layers no)
(uuid "23510b70-47cb-4362-8a39-9db1315f4f7a")
)
(pad "17" smd roundrect
(at 0 0)
(size 1.7 1.7)
(property pad_prop_heatsink)
(layers "F.Cu" "F.Mask")
(roundrect_rratio 0.05882352941)
(zone_connect 2)
(uuid "4eaa4886-87a8-421e-9a38-c05f26a21d1f")
)
(pad "17" smd roundrect
(at 0 0)
(size 1.7 1.7)
(property pad_prop_heatsink)
(layers "B.Cu")
(roundrect_rratio 0.05882352941)
(zone_connect 2)
(uuid "e511c39e-f8fb-42ad-a37a-e49d7bebf859")
)
(pad "17" thru_hole circle
(at 0 0.55)
(size 0.6 0.6)
(drill 0.3)
(property pad_prop_heatsink)
(layers "*.Cu")
(remove_unused_layers no)
(uuid "45eeca99-2c2c-4d89-8529-b816a2dec996")
)
(pad "17" thru_hole circle
(at 0.55 -0.55)
(size 0.6 0.6)
(drill 0.3)
(property pad_prop_heatsink)
(layers "*.Cu")
(remove_unused_layers no)
(uuid "ec8d14d2-db2f-48d9-a4aa-73b79c5ec504")
)
(pad "17" thru_hole circle
(at 0.55 0)
(size 0.6 0.6)
(drill 0.3)
(property pad_prop_heatsink)
(layers "*.Cu")
(remove_unused_layers no)
(uuid "74e6a742-89cf-4343-bff9-14ed4f09e303")
)
(pad "17" thru_hole circle
(at 0.55 0.55)
(size 0.6 0.6)
(drill 0.3)
(property pad_prop_heatsink)
(layers "*.Cu")
(remove_unused_layers no)
(uuid "484c7ef4-0746-459d-a501-e944bc0a4d11")
)
(embedded_fonts no)
(model "${KICAD9_3DMODEL_DIR}/Package_DFN_QFN.3dshapes/QFN-16-1EP_3x3mm_P0.5mm_EP1.7x1.7mm.step"
(offset
(xyz 0 0 0)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz 0 0 0)
)
)
)

View file

@ -1,433 +0,0 @@
(footprint "QFN-29_L4.0-W4.0-P0.40-TL-BQ25792RQMR"
(version 20241229)
(generator "pcbnew")
(generator_version "9.0")
(layer "F.Cu")
(property "Reference" "REF**"
(at -1.1 -2.8 0)
(layer "F.SilkS")
(uuid "6599aade-e261-4ab8-8b8b-15cc68510d40")
(effects
(font
(size 0.6 0.6)
(thickness 0.15)
)
)
)
(property "Value" "QFN-29_L4.0-W4.0-P0.40-TL-BQ25792RQMR"
(at 0 3.2 0)
(layer "F.Fab")
(uuid "c140b509-841c-444c-b8de-79c5c34ac8fa")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(layer "F.Fab")
(hide yes)
(uuid "90288ff5-9cf7-4f11-91b6-321c6853ebc3")
(effects
(font
(size 1.27 1.27)
(thickness 0.15)
)
)
)
(property "Description" ""
(at 0 0 0)
(layer "F.Fab")
(hide yes)
(uuid "3f7a6fa9-3a31-4eb9-a68a-a133d3efeed8")
(effects
(font
(size 1.27 1.27)
(thickness 0.15)
)
)
)
(attr smd)
(fp_line
(start -2 -2.02)
(end -1.6 -2.02)
(stroke
(width 0.15)
(type solid)
)
(layer "F.SilkS")
(uuid "f55524ca-94f0-4acd-aa21-ce9804d702ad")
)
(fp_line
(start -2 -1.8)
(end -2 -2)
(stroke
(width 0.15)
(type solid)
)
(layer "F.SilkS")
(uuid "960a36aa-41e4-402e-8697-b2bfcaf90657")
)
(fp_line
(start -2 1.97)
(end -2 1.8)
(stroke
(width 0.15)
(type solid)
)
(layer "F.SilkS")
(uuid "8526c0b5-cd2a-47be-bab1-f1dce2f8c4d6")
)
(fp_line
(start -1.6 1.97)
(end -2 1.97)
(stroke
(width 0.15)
(type solid)
)
(layer "F.SilkS")
(uuid "0319cbea-a76a-4dcd-8733-aee7ec62785c")
)
(fp_line
(start 1.6 -2.02)
(end 2 -2.02)
(stroke
(width 0.15)
(type solid)
)
(layer "F.SilkS")
(uuid "53f46456-ce3d-4d9e-afa1-8fbf4a934967")
)
(fp_line
(start 2 -2.02)
(end 2 -1.8)
(stroke
(width 0.15)
(type solid)
)
(layer "F.SilkS")
(uuid "0ff195a4-6e3f-4fd2-b7ac-73dd4adaa4df")
)
(fp_line
(start 2 1.8)
(end 2 1.97)
(stroke
(width 0.15)
(type solid)
)
(layer "F.SilkS")
(uuid "e398322e-1008-453f-a7ab-7bfe29924feb")
)
(fp_line
(start 2 1.97)
(end 1.6 1.97)
(stroke
(width 0.15)
(type solid)
)
(layer "F.SilkS")
(uuid "bf533144-a334-48af-94ac-77e9083fa407")
)
(fp_circle
(center -2.3 -2)
(end -2.26 -2)
(stroke
(width 0.26)
(type solid)
)
(fill no)
(layer "F.SilkS")
(uuid "e2c3de30-af42-493d-92da-44c8b2ff05da")
)
(fp_rect
(start -2.2 -2.2)
(end 2.2 2.2)
(stroke
(width 0.05)
(type default)
)
(fill no)
(layer "F.CrtYd")
(uuid "fc8e23fe-87c2-4ba4-a56a-e23cc2e1a5b1")
)
(fp_text user "${REFERENCE}"
(at 0 0 0)
(layer "F.Fab")
(uuid "01ce11ae-6357-4152-b2c7-4bdde2470eb9")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(pad "1" smd roundrect
(at -1.35 -1.6)
(size 0.2 0.7)
(drill
(offset 0 -0.25)
)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "ba3a59db-39cd-4e75-8ec1-12bd995b561b")
)
(pad "1" smd roundrect
(at -1.35 -1.6 90)
(size 0.2 0.95)
(drill
(offset 0 -0.375)
)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "01b62e0c-048d-4385-bb7e-7c5de008d950")
)
(pad "2" smd roundrect
(at -1.9 -1.2)
(size 0.6 0.2)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "51ff94ae-67d5-4713-83e3-1616ff0e75eb")
)
(pad "3" smd roundrect
(at -1.9 -0.8)
(size 0.6 0.2)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "75a543dc-b49a-4a4f-8a8a-6b381d106769")
)
(pad "4" smd roundrect
(at -1.9 -0.4)
(size 0.6 0.2)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "070ac279-c3bf-4291-9ae2-986d5341f318")
)
(pad "5" smd roundrect
(at -1.9 0)
(size 0.6 0.2)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "062e8738-fe6c-449a-9e75-a7caa7b35934")
)
(pad "6" smd roundrect
(at -1.9 0.4)
(size 0.6 0.2)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "7541255c-870c-4419-a89c-b38367322359")
)
(pad "7" smd roundrect
(at -1.9 0.8)
(size 0.6 0.2)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "78187563-72a7-4a5f-a66c-a1da603d464a")
)
(pad "8" smd roundrect
(at -1.9 1.2)
(size 0.6 0.2)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "bbbd0b7c-4706-4384-b242-7d362487711a")
)
(pad "9" smd roundrect
(at -1.4 1.6 180)
(size 0.2 0.7)
(drill
(offset 0 -0.25)
)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "12df419d-ee54-4c01-8487-3a1ea5efe1be")
)
(pad "9" smd roundrect
(at -1.4 1.6 90)
(size 0.2 0.9)
(drill
(offset 0 -0.35)
)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "81f4aaa1-d58c-46f4-952a-971b27422c17")
)
(pad "10" smd roundrect
(at -1 1.9)
(size 0.2 0.6)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "6f2540b1-2c03-4620-bd30-c4334c90116e")
)
(pad "11" smd roundrect
(at -0.6 1.9)
(size 0.2 0.6)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "5fa4f42a-f380-429e-837d-a3b787b82d79")
)
(pad "12" smd roundrect
(at -0.2 1.9)
(size 0.2 0.6)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "678cd046-c882-402b-96b0-5b440ecf0d0e")
)
(pad "13" smd roundrect
(at 0.2 1.9)
(size 0.2 0.6)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "7fb2a85e-c298-4a70-9ead-7921c8d436c2")
)
(pad "14" smd roundrect
(at 0.6 1.9)
(size 0.2 0.6)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "cbbae3c6-7280-4523-91ef-fa875f02612d")
)
(pad "15" smd roundrect
(at 1 1.9)
(size 0.2 0.6)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "ebca0186-36e9-4dd0-ab63-bf622246cb83")
)
(pad "16" smd roundrect
(at 1.4 1.6 180)
(size 0.2 0.7)
(drill
(offset 0 -0.25)
)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "c0f77ae7-2244-453d-af17-a76790ad34e3")
)
(pad "16" smd roundrect
(at 1.4 1.6 270)
(size 0.2 0.9)
(drill
(offset 0 -0.35)
)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "aef4c759-12b8-4960-9733-e106e9d35ad9")
)
(pad "17" smd roundrect
(at 1.85 1.2)
(size 0.7 0.2)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "ab71ef63-3ab6-4abb-94e9-975269fd4309")
)
(pad "18" smd roundrect
(at 1.875 0.8)
(size 0.65 0.2)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "b18382b7-f5ad-417d-917f-35ecc910d919")
)
(pad "19" smd roundrect
(at 1.8625 0.4)
(size 0.68 0.2)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "6cbf90c5-3ad9-489a-888a-7546142f48cf")
)
(pad "20" smd roundrect
(at 1.9 0)
(size 0.6 0.2)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "8f0c4ccd-e618-4cc3-94a3-157feab8f387")
)
(pad "21" smd roundrect
(at 1.9 -0.4)
(size 0.6 0.2)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "4b789dea-abf8-4395-9ed7-95c7b82357fb")
)
(pad "22" smd roundrect
(at 1.9 -0.8)
(size 0.6 0.2)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "e4017287-9459-429f-abdb-fcddfb80e267")
)
(pad "23" smd roundrect
(at 1.9 -1.2)
(size 0.6 0.2)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "0643f254-7f26-4e26-8daa-5c9d63153e8b")
)
(pad "24" smd roundrect
(at 1.35 -1.6)
(size 0.2 0.7)
(drill
(offset 0 -0.25)
)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "f6445e30-69d7-445e-9eda-81b5cc58e5a7")
)
(pad "24" smd roundrect
(at 1.35 -1.6 270)
(size 0.2 0.95)
(drill
(offset 0 -0.375)
)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "ccef8ac6-0b40-4eec-8440-85306fd1ece9")
)
(pad "25" smd roundrect
(at 0.9 -1.7)
(size 0.22 1)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.2272727273)
(uuid "d3275a0a-6a2b-4d35-8a22-49854e02a924")
)
(pad "26" smd roundrect
(at 0.45 -1.7)
(size 0.22 1)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.2272727273)
(uuid "0b92c444-d36a-4797-8e58-c273c4a27f20")
)
(pad "27" smd roundrect
(at 0 -1.7)
(size 0.22 1)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.2272727273)
(uuid "9eac8c92-637b-46af-bbe0-6ca3e2e3ebe6")
)
(pad "28" smd roundrect
(at -0.45 -1.7)
(size 0.22 1)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.2272727273)
(uuid "b154beb7-3216-4f1c-92b7-02a92eeaf9f6")
)
(pad "29" smd roundrect
(at -0.9 -1.725)
(size 0.22 0.95)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.2272727273)
(uuid "5344e602-4be2-4a71-9cd3-b52d6cf18599")
)
(embedded_fonts no)
(model "${KIPRJMOD}/parts/parts.3dshapes/QFN-29_L4.0-W4.0-P0.40-TL-BQ25792RQMR.wrl"
(offset
(xyz 0 -0.01 -0)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz 0 0 0)
)
)
)

View file

@ -1,170 +0,0 @@
(footprint "SLO0520H1R0MTT"
(version 20241229)
(generator "pcbnew")
(generator_version "9.0")
(layer "F.Cu")
(property "Reference" "REF**"
(at -1.6 -3.1 0)
(layer "F.SilkS")
(uuid "41c7a22f-195d-4286-9376-e35a5beeab80")
(effects
(font
(size 0.6 0.6)
(thickness 0.15)
)
)
)
(property "Value" "IND-SMD_L5.4-W5.1"
(at 0 4 0)
(layer "F.Fab")
(uuid "6452beba-b4e8-408b-8ad2-7a40e8095d51")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(layer "F.Fab")
(hide yes)
(uuid "6e2b042f-763d-49d7-b25b-64524ec8b839")
(effects
(font
(size 1.27 1.27)
(thickness 0.15)
)
)
)
(property "Description" ""
(at 0 0 0)
(layer "F.Fab")
(hide yes)
(uuid "18c8fb2f-6b5a-46e5-92ba-50a0f2c77068")
(effects
(font
(size 1.27 1.27)
(thickness 0.15)
)
)
)
(attr smd)
(fp_line
(start -2.7 -2.6)
(end -2.7 -1.48)
(stroke
(width 0.25)
(type solid)
)
(layer "F.SilkS")
(uuid "365a8472-28f6-468c-92ce-632a363ea605")
)
(fp_line
(start -2.7 -2.6)
(end 2.7 -2.6)
(stroke
(width 0.25)
(type solid)
)
(layer "F.SilkS")
(uuid "23280908-433e-4121-9392-af6302b0616d")
)
(fp_line
(start -2.7 1.48)
(end -2.7 2.6)
(stroke
(width 0.25)
(type solid)
)
(layer "F.SilkS")
(uuid "d3b5b7c3-6d6e-4c2c-bcaa-c91601929fe4")
)
(fp_line
(start -2.7 2.6)
(end 2.7 2.6)
(stroke
(width 0.25)
(type solid)
)
(layer "F.SilkS")
(uuid "c0954084-ff72-448b-8a6a-6d8671163165")
)
(fp_line
(start 2.7 -2.6)
(end 2.7 -1.48)
(stroke
(width 0.25)
(type solid)
)
(layer "F.SilkS")
(uuid "4e6d9180-4936-44da-ac3d-036401c0c417")
)
(fp_line
(start 2.7 1.48)
(end 2.7 2.6)
(stroke
(width 0.25)
(type solid)
)
(layer "F.SilkS")
(uuid "343e5950-04fa-4f1e-88ac-541dfb3f2733")
)
(fp_rect
(start -3 -2.7)
(end 3 2.7)
(stroke
(width 0.05)
(type default)
)
(fill no)
(layer "F.CrtYd")
(uuid "7c58817f-924c-4929-ba1b-710ddd679fd7")
)
(fp_circle
(center -2.7 2.6)
(end -2.67 2.6)
(stroke
(width 0.06)
(type solid)
)
(fill no)
(layer "F.Fab")
(uuid "9fdfa3db-7dc6-479e-8bf3-4786c3dfe67e")
)
(fp_text user "${REFERENCE}"
(at 0 0 0)
(layer "F.Fab")
(uuid "6bd7b1fc-cb8f-4bd1-a2a6-2c6de7f5aa13")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(pad "1" smd rect
(at -2.4 0)
(size 1.25 2.5)
(layers "F.Cu" "F.Mask" "F.Paste")
(uuid "ed8eccd9-c6c5-4dcd-9c1d-5d23e4b5f353")
)
(pad "2" smd rect
(at 2.4 0)
(size 1.25 2.5)
(layers "F.Cu" "F.Mask" "F.Paste")
(uuid "7e6633d2-1ff1-4c50-9cc2-7cfca8d7f459")
)
(embedded_fonts no)
(model "${KIPRJMOD}/parts/parts.3dshapes/SLO0520H1R0MTT.wrl"
(offset
(xyz 0 -0 -0)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz 0 0 0)
)
)
)

File diff suppressed because it is too large Load diff

View file

@ -1,106 +0,0 @@
<!--XSL style sheet to convert EESCHEMA XML Partlist Format to grouped CSV BOM Format
Copyright (C) 2014, Wolf Walter.
Copyright (C) 2013, Stefan Helmert.
Copyright (C) 2018, Kicad developers.
Copyright (C) 2019, arturo182.
GPL v2.
Functionality:
Generation of JLCPCB PCBA compatible BOM
How to use this is explained in eeschema.pdf chapter 14. You enter a command line into the
netlist exporter using a new (custom) tab in the netlist export dialog.
The command line is
xsltproc -o "%O.csv" "FullPathToFile/bom2grouped_csv_jlcpcb.xsl" "%I"
-->
<!--
@package
Generates a JLCPCB PCBA service compatible BOM
Functionality:
* Generate a comma separated value BOM list (csv file type).
* Components are sorted by ref and grouped by same value+footprint
One value per line
Fields are
Comment,Designator,Footprint,PN,LCSC
The command line is
xsltproc -o "%O.csv" "full_path/bom2grouped_csv_jlcpcb.xsl" "%I"
-->
<!DOCTYPE xsl:stylesheet [
<!ENTITY nl "&#xd;&#xa;"> <!--new line CR, LF, or LF, your choice -->
]>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="text"/>
<xsl:variable name="digits" select="'1234567890'" />
<!-- for matching grouping of footprint and value combination -->
<xsl:key name="partTypeByValueAndFootprint" match="comp" use="concat(footprint, '-', value)" />
<!-- for table head and empty table fields-->
<xsl:key name="headentr" match="field" use="@name"/>
<!-- main part -->
<xsl:template match="/export">
<xsl:text>Comment,Designator,Footprint,Quantity,PN,LCSC</xsl:text>
<!-- all table entries -->
<xsl:apply-templates select="components"/>
</xsl:template>
<xsl:template match="components">
<!-- for Muenchian grouping of footprint and value combination -->
<xsl:for-each select="comp[count(. | key('partTypeByValueAndFootprint', concat(footprint, '-', value))[1]) = 1]">
<xsl:sort select="@ref" />
<xsl:text>&nl;</xsl:text>
<xsl:text>"</xsl:text><xsl:value-of select="value"/><xsl:text>","</xsl:text>
<!-- list of all references -->
<xsl:for-each select="key('partTypeByValueAndFootprint', concat(footprint, '-', value))">
<!-- strip non-digits from reference and sort based on remaining number -->
<xsl:sort select="translate(@ref, translate(@ref, $digits, ''), '')" data-type="number" />
<xsl:value-of select="@ref"/>
<xsl:if test="position() != last()"><xsl:text>,</xsl:text></xsl:if>
</xsl:for-each>
<xsl:text>","</xsl:text>
<xsl:value-of select="footprint"/><xsl:text>","</xsl:text>
<xsl:value-of select="count(key('partTypeByValueAndFootprint', concat(footprint, '-', value)))"/><xsl:text>","</xsl:text>
<xsl:value-of select="fields/field[@name='PN']"/><xsl:text>","</xsl:text>
<xsl:value-of select="fields/field[@name='LCSC']"/><xsl:text>"</xsl:text>
</xsl:for-each>
</xsl:template>
<!-- table entries with dynamic table head -->
<xsl:template match="fields">
<!-- remember current fields section -->
<xsl:variable name="fieldvar" select="field"/>
<!-- for all existing head entries -->
<xsl:for-each select="/export/components/comp/fields/field[generate-id(.) = generate-id(key('headentr',@name)[1])]">
<xsl:variable name="allnames" select="@name"/>
<xsl:text>,"</xsl:text>
<!-- for all field entries in the remembered fields section -->
<xsl:for-each select="$fieldvar">
<!-- only if this field entry exists in this fields section -->
<xsl:if test="@name=$allnames">
<!-- content of the field -->
<xsl:value-of select="."/>
</xsl:if>
<!--
If it does not exist, use an empty cell in output for this row.
Every non-blank entry is assigned to its proper column.
-->
</xsl:for-each>
<xsl:text>"</xsl:text>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>

File diff suppressed because one or more lines are too long

View file

@ -1,217 +0,0 @@
.render-row {
display: flex;
flex-wrap: wrap;
padding: 0 4px;
}
/* Create four equal columns that sits next to each other */
.render-col {
flex: 50%;
max-width: 50%;
padding: 0 4px;
}
.render-col img {
margin-top: 8px;
vertical-align: middle;
width: 100%;
}
/* Responsive layout - makes the two columns stack on top of each other instead of next to each other */
@media screen and (max-width: 600px) {
.render-col {
flex: 100%;
max-width: 100%;
}
}
.img-rounded {
border-radius:10% !important;
}
.card-body {
/* Better reading width & spacing */
font-size: 1.02rem;
line-height: 1.65;
}
/* Reading width only for text content */
.card-body > p,
.card-body > ul,
.card-body > ol,
.card-body > blockquote,
.card-body > pre,
.card-body > h1,
.card-body > h2,
.card-body > h3,
.card-body > h4,
.card-body > h5,
.card-body > h6 {
max-width: 80ch;
}
/* Headings: better rhythm, slightly heavier, nicer spacing */
.card-body h1,
.card-body h2,
.card-body h3,
.card-body h4,
.card-body h5,
.card-body h6 {
margin-top: 1.6em;
margin-bottom: 0.6em;
line-height: 1.25;
font-weight: 650;
letter-spacing: -0.015em;
}
.card-body h1 { font-size: 2.0rem; margin-top: 0.4em; }
.card-body h2 { font-size: 1.5rem; border-bottom: 1px solid var(--bs-border-color); padding-bottom: .35rem; }
.card-body h3 { font-size: 1.25rem; }
.card-body h4 { font-size: 1.1rem; }
/* Paragraphs + lists: consistent spacing */
.card-body p {
margin: 0 0 0.9rem 0;
}
.card-body ul,
.card-body ol {
margin: 0 0 1rem 1.1rem;
padding: 0;
}
.card-body li {
margin-bottom: 0.25rem;
}
/* Make nested list indentation feel nicer */
.card-body ul ul,
.card-body ol ol,
.card-body ul ol,
.card-body ol ul {
margin-top: 0.35rem;
margin-bottom: 0.35rem;
}
/* Links: subtle, readable */
.card-body a {
text-decoration: none;
border-bottom: 1px solid rgba(13,110,253,.35); /* bootstrap primary-ish */
}
.card-body a:hover {
border-bottom-color: rgba(13,110,253,.8);
}
/* Blockquotes: turn into a clean “note” box */
.card-body blockquote {
margin: 1rem 0;
padding: 0.75rem 1rem;
border-left: 4px solid var(--bs-border-color);
background: var(--bs-tertiary-bg);
border-radius: 0.5rem;
}
.card-body blockquote p:last-child { margin-bottom: 0; }
/* Inline code: subtle pill */
.card-body code {
padding: 0.15em 0.35em;
border-radius: 0.35rem;
background: rgba(0,0,0,.05);
font-size: 0.95em;
}
/* Code blocks (```): good spacing, background, scroll if needed */
.card-body pre {
margin: 1rem 0;
padding: 0.9rem 1rem;
border: 1px solid var(--bs-border-color);
border-radius: 0.75rem;
background: var(--bs-tertiary-bg);
overflow: auto;
}
.card-body pre code {
padding: 0;
background: transparent;
font-size: 0.95em;
line-height: 1.5;
display: block;
}
/* Tables: readable borders + zebra stripes + padding */
.card-body table {
width: 100%;
margin: 1rem 0;
border-collapse: separate;
border-spacing: 0;
border: 1px solid var(--bs-border-color);
border-radius: 0.75rem;
overflow: hidden; /* makes rounded corners work */
}
.card-body thead th {
background: var(--bs-tertiary-bg);
font-weight: 650;
border-bottom: 1px solid var(--bs-border-color);
}
.card-body th,
.card-body td {
padding: 0.6rem 0.75rem;
vertical-align: top;
border-right: 1px solid var(--bs-border-color);
}
.card-body th:last-child,
.card-body td:last-child {
border-right: none;
}
.card-body tbody tr:not(:last-child) td {
border-bottom: 1px solid var(--bs-border-color);
}
/* Zebra stripes */
.card-body tbody tr:nth-child(2n) td {
background: rgba(0,0,0,.02);
}
/* If tables are wide, allow horizontal scrolling on small screens */
.card-body table {
width: 100%;
}
@media (max-width: 768px) {
.card-body table {
display: block;
overflow-x: auto;
}
}
/* Images inside markdown: look consistent */
.card-body img {
max-width: 100%;
height: auto;
border-radius: 0.75rem;
}
/* Horizontal rule: subtle */
.card-body hr {
margin: 2rem 0;
border-top: 1px solid var(--bs-border-color);
opacity: 1;
}
/* Optional: badge images should align nicely and not be huge */
.card-body p img {
vertical-align: middle;
}
/* Fix your flashing code block: currently it's inside <p><code>... */
.card-body p > code {
white-space: pre-wrap;
}
/* Improve the "card" reading feel a bit (optional) */
.card .card-body {
padding: 1.75rem;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 917 B

View file

@ -1,26 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" width="189.5063mm" height="117.32051mm" viewBox="0 0 189.5063 117.32051" version="1.1" id="svg8" inkscape:version="0.92.4 (5da689c313, 2019-01-14)" sodipodi:docname="M17_logo_shadow.svg" inkscape:export-filename="C:\Users\SP5WWP\Documents\M17_logo_simple_400.png" inkscape:export-xdpi="399.95294" inkscape:export-ydpi="399.95294">
<defs id="defs2"/>
<sodipodi:namedview id="base" pagecolor="#ffffff" bordercolor="#666666" borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:zoom="0.98994949" inkscape:cx="380.91114" inkscape:cy="226.43171" inkscape:document-units="mm" inkscape:current-layer="layer1" showgrid="false" showguides="false" inkscape:guide-bbox="true" fit-margin-top="10" fit-margin-bottom="10" fit-margin-left="10" fit-margin-right="10" inkscape:window-width="1280" inkscape:window-height="962" inkscape:window-x="-8" inkscape:window-y="-8" inkscape:window-maximized="1" inkscape:snap-global="false">
<sodipodi:guide position="70.590358,88.660254" orientation="0,1" id="guide10" inkscape:locked="false" inkscape:label="" inkscape:color="rgb(0,0,255)"/>
<sodipodi:guide position="73.129418,28.660253" orientation="0,1" id="guide12" inkscape:locked="false" inkscape:label="" inkscape:color="rgb(0,0,255)"/>
</sodipodi:namedview>
<metadata id="metadata5">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title/>
</cc:Work>
</rdf:RDF>
</metadata>
<g inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1" transform="translate(-41.529203,-88.339744)">
<path style="fill:none;stroke:#999999;stroke-width:10;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="m 57.857748,178.73185 34.641012,-60 v 60 l 34.64101,-60 v 60" id="path879-0" inkscape:connector-curvature="0"/>
<path style="fill:none;stroke:#999999;stroke-width:10;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="m 161.78079,178.73185 v -60 l -17.2733,29.91823" id="path821-2" inkscape:connector-curvature="0"/>
<path style="fill:none;stroke:#999999;stroke-width:10;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="m 179.73264,178.73185 34.64102,-60 h -33.97049" id="path825-1" inkscape:connector-curvature="0"/>
<path style="fill:none;stroke:#000000;stroke-width:10;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="m 55.85933,177 34.641017,-60 v 60 l 34.641013,-60 v 60" id="path879" inkscape:connector-curvature="0"/>
<path style="fill:none;stroke:#ff0000;stroke-width:10;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="m 159.78238,177 v -60 l -17.2733,29.91823" id="path821" inkscape:connector-curvature="0"/>
<path style="fill:none;stroke:#ff0000;stroke-width:10;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="m 177.73423,177 34.64102,-60 h -33.97049" id="path825" inkscape:connector-curvature="0"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.6 KiB

View file

@ -1,100 +0,0 @@
<!DOCTYPE html>
<html lang="en" data-bs-theme="auto">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
<meta name="author" content="M17 Foundation">
<title>{{ name }}</title>
<link rel="stylesheet" href="css/bootstrap.min.css">
<link rel="stylesheet" href="css/style.css">
<link rel="icon" href="imgs/favicon.png">
</head>
<body>
<section class="py-1 text-center container">
<div class="row py-2 py-lg-3 mx-auto">
<div class="col-lg-4 col-md-4 ">
<img class="img-rounded" src="imgs/m17-logo.svg" alt="Logo M17 Foundation" width="200px">
</div>
<div class="col-lg-6 col-md-6 pt-2">
<h1>{{ title }}</h1>
<p>{{ description }}</p>
</div>
</div>
</section>
<div class="py-5 bg-body-tertiary">
<div class="container">
<div class="card mb-3">
<div class="row g-0">
<div class="col-md-8">
<div class="card-body">
{% include 'README.html' %}
</div>
</div>
<div class="col-md-4">
{% for r in renders %}
{% if loop.first %}
<a href="imgs/{{ name }}-{{ r.suffix }}.png">
<img src="imgs/{{ name }}-{{ r.suffix }}.png" class="img-fluid rounded-start mb-2" alt="3D render PCB {{ name }}, {{ r.alt }}.">
</a>
<div class="render-row">
{% else %}
<div class="render-col">
<a href="imgs/{{ name }}-{{ r.suffix }}.png">
<img src="imgs/{{ name }}-{{ r.suffix }}.png" class="img-fluid rounded-start" alt="3D render PCB {{ name }}, {{ r.alt }}.">
</a>
</div>
{% endif %}
{% if loop.last %}
</div>
{% endif %}
{% endfor %}
<div class="">
<h3>Files:</h3>
<ul>
{% for item in files %}
<li>
<a href="files/{{ item.file }}">{{ item.description }}</a>
</li>
{% endfor %}
</ul>
</div>
<vrml-viewer src="files/{{ name }}_model.vrml.gz" autoload="false" model-size="1.2" responsive="true"></vrml-viewer>
</div>
</div>
</div>
<footer class="text-body-secondary py-5">
<div class="container">
<p class="float-end mb-1">
<a href="#">Back to top</a>
</p>
<p class="mb-1"><a href="https://m17foundation.org/">m17foundation.org</a>, last update: {{ datetime }}.</p>
</div>
</footer>
<div class="w-full mt-16 mb-1 p-2 bg-gray-200 text-center txt-xs rounded">
</div>
</div>
</div>
<script src="js/bootstrap.bundle.min.js"></script>
<script type="importmap">
{
"imports": {
"three": "https://cdn.jsdelivr.net/npm/three@0.160.1/build/three.module.js",
"three/addons/": "https://cdn.jsdelivr.net/npm/three@0.160.1/examples/jsm/"
}
}
</script>
<script type="module" src="js/vrml-viewer.js"></script>
</body>
</html>

View file

@ -1,23 +0,0 @@
{
"title": "LinHT Hardware",
"name": "linht-hw",
"description": "This is the hardware project page for LINHT-HW board.",
"files": [
{"file": "gerbers_jlcpcb.zip", "description": "Gerber Files for JLCPCB (ZIP)"},
{"file": "gerbers_pcbway.zip", "description": "Gerber Files for PCBWay (ZIP)"},
{"file": "linht-hw_pos.csv", "description": "Position File (CSV)"},
{"file": "linht-hw_pos.txt", "description": "Position File (ASCII)"},
{"file": "linht-hw_pos_jlcpcb.csv", "description": "Position File for JLCPCB (CSV)"},
{"file": "linht-hw_bom.txt", "description": "Bill of Materials (ASCII)"},
{"file": "linht-hw_bom.csv", "description": "Bill of Materials for JLCPCB (CSV)"},
{"file": "linht-hw_schematic.pdf", "description": "Schematic (PDF)"},
{"file": "linht-hw_schematic_bw.pdf", "description": "Schematic without Colors (PDF)"},
{"file": "linht-hw_model.step.xz", "description": "3D Model (STEP.XZ)"},
{"file": "linht-hw_model.vrml.xz", "description": "3D Model (VRML.XZ)"}
],
"renders": [
{"suffix": "preview", "alt": "Isometric view of the PCB"},
{"suffix": "front", "alt": "Top side of the PCB"},
{"suffix": "back", "alt": "Bottom side of the PCB"}
]
}

File diff suppressed because one or more lines are too long

View file

@ -1,785 +0,0 @@
/**
* VRML Viewer Custom Element
* Web component for displaying VRML files using ThreeJS with responsive design and touch support
*/
import {
Scene,
PerspectiveCamera,
WebGLRenderer,
AmbientLight,
DirectionalLight,
Box3,
Vector3,
LinearToneMapping
} from 'three';
import { VRMLLoader } from 'three/addons/loaders/VRMLLoader.js';
import { OrbitControls } from 'three/addons/controls/OrbitControls.js';
const DEFAULT_WIDTH = 800;
const DEFAULT_HEIGHT = 600;
const DEFAULT_BACKGROUND = '#f8f8f8';
// Inject embedded CSS styles once to avoid duplicates
if (!document.querySelector('style[data-vrml-viewer]')) {
const style = document.createElement('style');
style.setAttribute('data-vrml-viewer', 'true');
style.textContent = `
/* VRML Viewer Embedded Styles */
vrml-viewer {
display: block;
position: relative;
border: 1px solid rgba(0, 0, 0, 0.1);
border-radius: 4px;
overflow: hidden;
background: #fafafa;
/* Default fixed size */
width: var(--vrml-width, 800px);
height: var(--vrml-height, 600px);
}
/* Responsive viewer - simplified approach */
vrml-viewer[responsive="true"],
vrml-viewer.responsive-viewer {
width: 100%;
height: auto;
aspect-ratio: var(--vrml-aspect-ratio, 3/2);
min-height: clamp(250px, 40vh, 400px);
max-height: 85vh;
}
/* Container and canvas */
.vrml-viewer-container {
position: relative;
width: 100%;
height: 100%;
}
.vrml-viewer-canvas {
display: block;
width: 100%;
height: 100%;
}
/* Controls */
.vrml-viewer-controls {
position: absolute;
top: 8px;
right: 8px;
display: flex;
gap: 4px;
z-index: 1000;
}
.vrml-viewer-btn {
background: rgba(255, 255, 255, 0.9);
color: #333;
border: 1px solid rgba(0, 0, 0, 0.1);
border-radius: 3px;
padding: 6px 10px;
cursor: pointer;
font-size: 11px;
font-weight: 500;
transition: all 0.2s ease;
min-height: 32px;
min-width: 50px;
}
.vrml-viewer-btn:hover {
background: rgba(255, 255, 255, 1);
border-color: rgba(0, 0, 0, 0.2);
transform: translateY(-1px);
}
.vrml-viewer-btn:active {
transform: translateY(0);
}
/* Load button */
.vrml-viewer-load-btn {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
background: #007bff;
color: white;
border: none;
border-radius: 4px;
padding: 12px 24px;
font-size: 14px;
font-weight: 500;
cursor: pointer;
transition: all 0.2s ease;
z-index: 1001;
}
.vrml-viewer-load-btn:hover {
background: #0056b3;
transform: translate(-50%, -50%) translateY(-1px);
}
/* Loading and error states */
.vrml-viewer-loading,
.vrml-viewer-error {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
background: rgba(255, 255, 255, 0.95);
padding: 20px;
border-radius: 6px;
text-align: center;
z-index: 1001;
border: 1px solid rgba(0, 0, 0, 0.1);
max-width: 80%;
}
.vrml-viewer-error {
color: #d32f2f;
border-color: rgba(211, 47, 47, 0.2);
}
.vrml-viewer-spinner {
border: 2px solid #f3f3f3;
border-top: 2px solid #007bff;
border-radius: 50%;
width: 20px;
height: 20px;
animation: vrml-spin 1s linear infinite;
margin: 0 auto 10px;
}
@keyframes vrml-spin {
to { transform: rotate(360deg); }
}
.vrml-viewer-loading div:last-child {
color: #666;
font-size: 12px;
font-weight: 500;
}
.vrml-viewer-error h3 {
margin: 0 0 8px 0;
font-size: 14px;
font-weight: 600;
}
.vrml-viewer-error p {
margin: 0;
font-size: 12px;
font-weight: 400;
}
/* Fullscreen styles */
vrml-viewer:fullscreen {
width: 100vw !important;
height: 100vh !important;
border: none;
border-radius: 0;
}
/* Simplified responsive breakpoints - only 2 instead of 5 */
@media (max-width: 768px) {
/* Mobile and tablet adjustments */
vrml-viewer[responsive="true"],
vrml-viewer.responsive-viewer {
aspect-ratio: 4/3; /* More square for mobile */
min-height: clamp(250px, 35vh, 350px);
max-height: 70vh;
}
.vrml-viewer-controls {
top: 6px;
right: 6px;
flex-direction: column;
gap: 4px;
}
.vrml-viewer-btn {
padding: 8px 12px;
font-size: 11px;
min-width: 60px;
min-height: 36px;
}
.vrml-viewer-load-btn {
padding: 14px 20px;
font-size: 15px;
min-width: 120px;
min-height: 44px;
}
}
/* Touch-friendly enhancements */
@media (hover: none) and (pointer: coarse) {
.vrml-viewer-btn {
min-height: 44px;
min-width: 44px;
padding: 10px 14px;
font-size: 12px;
}
.vrml-viewer-load-btn {
min-height: 48px;
min-width: 140px;
padding: 16px 24px;
font-size: 16px;
}
}
/* Dark theme support */
@media (prefers-color-scheme: dark) {
vrml-viewer {
border-color: rgba(255, 255, 255, 0.1);
background: #1a1a1a;
}
.vrml-viewer-btn {
background: rgba(0, 0, 0, 0.8);
color: #fff;
border-color: rgba(255, 255, 255, 0.1);
}
.vrml-viewer-btn:hover {
background: rgba(0, 0, 0, 0.9);
border-color: rgba(255, 255, 255, 0.2);
}
.vrml-viewer-loading,
.vrml-viewer-load-btn {
background: rgba(0, 0, 0, 0.9);
border-color: rgba(255, 255, 255, 0.1);
}
.vrml-viewer-loading div:last-child {
color: #ccc;
}
.vrml-viewer-error {
background: rgba(0, 0, 0, 0.9);
color: #ff6b6b;
border-color: rgba(255, 107, 107, 0.2);
}
}
/* High DPI displays */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
vrml-viewer {
border-width: 0.5px;
}
.vrml-viewer-btn {
border-width: 0.5px;
}
}
`;
document.head.appendChild(style);
}
// GZIP detection and decompression utilities
function isGzipFile(url) {
return url.toLowerCase().endsWith('.gz');
}
// Handle both modern DecompressionStream and fallback for older browsers
async function fetchAndDecompress(url) {
try {
const response = await fetch(url);
if (!response.ok) {
throw new Error(`HTTP ${response.status}: ${response.statusText}`);
}
if ('DecompressionStream' in window) {
// Modern browsers: use native streaming decompression
const decompressedStream = response.body
.pipeThrough(new DecompressionStream('gzip'));
const decompressedResponse = new Response(decompressedStream);
return await decompressedResponse.text();
} else {
// Legacy browsers: rely on server-side decompression
const fallbackResponse = await fetch(url, {
headers: { 'Accept-Encoding': 'gzip' }
});
if (!fallbackResponse.ok) {
throw new Error(`HTTP ${fallbackResponse.status}: ${fallbackResponse.statusText}`);
}
return await fallbackResponse.text();
}
} catch (error) {
throw new Error(`Failed to fetch/decompress file: ${error.message}`);
}
}
async function fetchVRMLFile(url) {
if (isGzipFile(url)) {
return await fetchAndDecompress(url);
} else {
const response = await fetch(url);
if (!response.ok) {
throw new Error(`HTTP ${response.status}: ${response.statusText}`);
}
return await response.text();
}
}
// Basic VRML content validation - checks for common VRML keywords
function validateVRMLContent(content) {
if (!content || typeof content !== 'string') return false;
const trimmed = content.trim();
return trimmed.startsWith('#VRML') ||
trimmed.includes('VRML') ||
trimmed.includes('Shape') ||
trimmed.includes('geometry') ||
trimmed.includes('IndexedFaceSet');
}
class VRMLViewer extends HTMLElement {
constructor() {
super();
// ThreeJS core components
this.scene = null;
this.camera = null;
this.renderer = null;
this.controls = null;
this.model = null;
this.isLoading = false;
this.initialCameraPosition = null;
this.initialCameraTarget = null;
// Render-on-demand optimization to improve performance
this.needsRender = true;
this.resizeTimeout = null;
// Bind event handlers to maintain correct 'this' context
this.handleResize = this.handleResize.bind(this);
this.resetView = this.resetView.bind(this);
this.toggleFullscreen = this.toggleFullscreen.bind(this);
this.createDOM();
}
static get observedAttributes() {
return ['src', 'width', 'height', 'background-color', 'autoload', 'model-size', 'responsive'];
}
createDOM() {
this.innerHTML = `
<div class="vrml-viewer-container">
<canvas class="vrml-viewer-canvas"></canvas>
<div class="vrml-viewer-controls">
<button class="vrml-viewer-btn" id="reset-btn" title="Reset View">Reset</button>
<button class="vrml-viewer-btn fullscreen" id="fullscreen-btn" title="Toggle Fullscreen">Fullscreen</button>
</div>
<button class="vrml-viewer-load-btn" id="load-btn" style="display: none;">Load Model</button>
<div class="vrml-viewer-loading" style="display: none;">
<div class="vrml-viewer-spinner"></div>
<div>Loading VRML...</div>
</div>
<div class="vrml-viewer-error" style="display: none;">
<h3>Error Loading VRML</h3>
<p id="error-message"></p>
</div>
</div>
`;
// Get references
this.canvas = this.querySelector('.vrml-viewer-canvas');
this.loadingEl = this.querySelector('.vrml-viewer-loading');
this.errorEl = this.querySelector('.vrml-viewer-error');
this.errorMessageEl = this.querySelector('#error-message');
this.loadBtnEl = this.querySelector('#load-btn');
// Add event listeners
this.querySelector('#reset-btn').addEventListener('click', this.resetView);
this.querySelector('#fullscreen-btn').addEventListener('click', this.toggleFullscreen);
this.loadBtnEl.addEventListener('click', () => this.handleLoadButtonClick());
}
async connectedCallback() {
try {
await this.initViewer();
// Wait for CSS layout completion before sizing calculations
requestAnimationFrame(() => {
this.updateSize();
this.updateBackgroundColor();
// Handle autoload behavior
const src = this.getAttribute('src');
const autoload = this.getAttribute('autoload');
const shouldAutoload = autoload === null || autoload === '' || autoload === 'true';
if (src && shouldAutoload) {
this.loadModel(src);
} else if (src && !shouldAutoload) {
this.showLoadButton();
}
});
this.startRenderLoop();
window.addEventListener('resize', this.handleResize);
// Cross-browser fullscreen event listeners
document.addEventListener('fullscreenchange', () => this.handleFullscreenChange());
document.addEventListener('webkitfullscreenchange', () => this.handleFullscreenChange());
document.addEventListener('mozfullscreenchange', () => this.handleFullscreenChange());
document.addEventListener('MSFullscreenChange', () => this.handleFullscreenChange());
} catch (error) {
this.showError(`Failed to initialize viewer: ${error.message}`);
}
}
disconnectedCallback() {
window.removeEventListener('resize', this.handleResize);
document.removeEventListener('fullscreenchange', () => this.handleFullscreenChange());
document.removeEventListener('webkitfullscreenchange', () => this.handleFullscreenChange());
document.removeEventListener('mozfullscreenchange', () => this.handleFullscreenChange());
document.removeEventListener('MSFullscreenChange', () => this.handleFullscreenChange());
this.stopRenderLoop();
if (this.renderer) this.renderer.dispose();
if (this.controls) this.controls.dispose();
}
attributeChangedCallback(name, oldValue, newValue) {
if (oldValue === newValue) return;
switch (name) {
case 'src':
if (newValue && this.renderer) {
const autoload = this.getAttribute('autoload');
const shouldAutoload = autoload === null || autoload === '' || autoload === 'true';
if (shouldAutoload) {
this.hideLoadButton();
this.loadModel(newValue);
} else {
this.showLoadButton();
}
}
break;
case 'autoload':
const src = this.getAttribute('src');
const shouldAutoload = newValue === null || newValue === '' || newValue === 'true';
if (shouldAutoload && src && this.renderer) {
this.hideLoadButton();
this.loadModel(src);
} else if (!shouldAutoload && src) {
this.showLoadButton();
} else {
this.hideLoadButton();
}
break;
case 'width':
case 'height':
case 'responsive':
this.updateSize();
break;
case 'background-color':
this.updateBackgroundColor();
break;
case 'model-size':
if (this.model) this.fitCameraToModel();
break;
}
}
async initViewer() {
this.scene = new Scene();
const width = this.getWidth();
const height = this.getHeight();
this.camera = new PerspectiveCamera(60, width / height, 0.01, 1000);
this.camera.position.set(0, 0, 5);
// Configure renderer for optimal PCB visualization
this.renderer = new WebGLRenderer({
canvas: this.canvas,
antialias: true,
alpha: true,
powerPreference: 'high-performance'
});
this.renderer.setSize(width, height);
this.renderer.setPixelRatio(Math.min(window.devicePixelRatio, 2)); // Cap at 2x for performance
this.renderer.shadowMap.enabled = false; // Shadows not needed for PCB viewing
this.renderer.toneMapping = LinearToneMapping;
this.renderer.toneMappingExposure = 1.2;
this.renderer.outputColorSpace = 'srgb';
this.setupLighting();
// Configure orbit controls for 3D model interaction
this.controls = new OrbitControls(this.camera, this.canvas);
this.controls.enableDamping = true;
this.controls.dampingFactor = 0.05;
this.controls.screenSpacePanning = false;
this.controls.minDistance = 0.01;
this.controls.maxDistance = 100;
this.controls.maxPolarAngle = Math.PI;
// Touch device optimizations
if ('ontouchstart' in window) {
this.controls.rotateSpeed = 0.8;
this.controls.zoomSpeed = 1.2;
this.controls.panSpeed = 0.8;
}
this.controls.addEventListener('change', () => {
this.needsRender = true;
});
}
setupLighting() {
// Three-point lighting setup optimized for PCB visualization
const ambientLight = new AmbientLight(0x808080, 1.2); // Base illumination
this.scene.add(ambientLight);
const directionalLight = new DirectionalLight(0xffffff, 1.5); // Key light
directionalLight.position.set(10, 10, 8);
this.scene.add(directionalLight);
const fillLight = new DirectionalLight(0xffffff, 0.8); // Fill light from opposite side
fillLight.position.set(-8, -8, -6);
this.scene.add(fillLight);
}
async loadModel(src) {
if (this.isLoading) return;
this.isLoading = true;
this.showLoading();
this.hideError();
try {
this.disposeModel();
const vrmlContent = await fetchVRMLFile(src);
if (!validateVRMLContent(vrmlContent)) {
throw new Error('Invalid VRML content');
}
const loader = new VRMLLoader();
this.model = loader.parse(vrmlContent);
this.scene.add(this.model);
this.fitCameraToModel();
this.hideLoading();
this.hideLoadButton();
this.needsRender = true;
} catch (error) {
this.hideLoading();
this.showError(`Failed to load VRML: ${error.message}`);
} finally {
this.isLoading = false;
}
}
// Proper WebGL resource cleanup to prevent memory leaks
disposeModel() {
if (this.model) {
this.model.traverse((child) => {
if (child.geometry) child.geometry.dispose();
if (child.material) {
if (Array.isArray(child.material)) {
child.material.forEach(material => material.dispose());
} else {
child.material.dispose();
}
}
if (child.texture) child.texture.dispose();
});
this.scene.remove(this.model);
this.model = null;
}
}
// Calculate optimal camera position based on model bounding box
fitCameraToModel() {
if (!this.model) return;
const box = new Box3().setFromObject(this.model);
const size = box.getSize(new Vector3());
const center = box.getCenter(new Vector3());
// Calculate camera distance using field of view and model size
const modelSizeMultiplier = parseFloat(this.getAttribute('model-size')) || 1.0;
const maxDim = Math.max(size.x, size.y, size.z);
const fov = this.camera.fov * (Math.PI / 180);
let cameraDistance = Math.abs(maxDim / Math.sin(fov / 2)) * 0.8 * modelSizeMultiplier;
cameraDistance = Math.max(cameraDistance, maxDim * 1.5); // Ensure minimum distance
// Position camera with slight elevation for better PCB viewing angle
this.camera.position.copy(center);
this.camera.position.z += cameraDistance;
this.camera.position.y += cameraDistance * 0.1;
this.camera.lookAt(center);
this.controls.target.copy(center);
this.controls.update();
// Store initial position for reset functionality
this.initialCameraPosition = this.camera.position.clone();
this.initialCameraTarget = center.clone();
this.needsRender = true;
}
resetView() {
if (this.initialCameraPosition && this.initialCameraTarget) {
this.camera.position.copy(this.initialCameraPosition);
this.controls.target.copy(this.initialCameraTarget);
this.controls.update();
this.needsRender = true;
} else if (this.model) {
this.fitCameraToModel();
}
}
toggleFullscreen() {
if (!document.fullscreenElement) {
this.requestFullscreen().catch(err => {
console.warn('Could not enter fullscreen:', err);
});
} else {
document.exitFullscreen();
}
}
// Render-on-demand loop for optimal performance
startRenderLoop() {
const animate = () => {
this.animationId = requestAnimationFrame(animate);
let hasChanges = false;
if (this.controls && this.controls.enabled) {
hasChanges = this.controls.update() || hasChanges;
}
// Only render when changes occur to save GPU resources
if (this.needsRender || hasChanges) {
if (this.renderer && this.scene && this.camera) {
this.renderer.render(this.scene, this.camera);
this.needsRender = false;
}
}
};
animate();
}
stopRenderLoop() {
if (this.animationId) {
cancelAnimationFrame(this.animationId);
this.animationId = null;
}
}
// Debounced resize handler to prevent excessive recalculations
handleResize() {
clearTimeout(this.resizeTimeout);
this.resizeTimeout = setTimeout(() => {
this.updateSize();
if (this.isResponsive() && this.model) {
this.fitCameraToModel();
}
}, 150);
}
handleFullscreenChange() {
setTimeout(() => this.updateSize(), 100);
}
updateSize() {
if (!this.renderer || !this.camera) return;
const width = this.getWidth();
const height = this.getHeight();
this.camera.aspect = width / height;
this.camera.updateProjectionMatrix();
this.renderer.setSize(width, height);
this.needsRender = true;
}
updateBackgroundColor() {
if (!this.renderer) return;
const color = this.getAttribute('background-color') || DEFAULT_BACKGROUND;
this.renderer.setClearColor(color);
this.needsRender = true;
}
getWidth() {
if (this.isFullscreen()) return window.innerWidth;
if (this.isResponsive()) return this.clientWidth || this.getBoundingClientRect().width || DEFAULT_WIDTH;
return parseInt(this.getAttribute('width')) || DEFAULT_WIDTH;
}
getHeight() {
if (this.isFullscreen()) return window.innerHeight;
if (this.isResponsive()) return this.clientHeight || this.getBoundingClientRect().height || DEFAULT_HEIGHT;
return parseInt(this.getAttribute('height')) || DEFAULT_HEIGHT;
}
isFullscreen() {
return document.fullscreenElement === this ||
document.webkitFullscreenElement === this ||
document.mozFullScreenElement === this ||
document.msFullscreenElement === this;
}
isResponsive() {
return this.getAttribute('responsive') === 'true' || this.classList.contains('responsive-viewer');
}
// UI state management
showLoading() { this.loadingEl.style.display = 'block'; }
hideLoading() { this.loadingEl.style.display = 'none'; }
showError(message) {
this.errorMessageEl.textContent = message;
this.errorEl.style.display = 'block';
}
hideError() { this.errorEl.style.display = 'none'; }
showLoadButton() { if (this.loadBtnEl) this.loadBtnEl.style.display = 'block'; }
hideLoadButton() { if (this.loadBtnEl) this.loadBtnEl.style.display = 'none'; }
// Public API
async load(src = null) {
const sourceUrl = src || this.getAttribute('src');
if (!sourceUrl) {
throw new Error('No source URL provided and no src attribute set');
}
if (src && src !== this.getAttribute('src')) {
this.setAttribute('src', src);
}
await this.loadModel(sourceUrl);
}
clear() {
this.disposeModel();
this.hideError();
this.hideLoading();
const src = this.getAttribute('src');
const autoload = this.getAttribute('autoload');
const shouldAutoload = autoload === null || autoload === '' || autoload === 'true';
if (src && !shouldAutoload) {
this.showLoadButton();
}
this.needsRender = true;
}
async handleLoadButtonClick() {
const src = this.getAttribute('src');
if (src) await this.load(src);
}
}
customElements.define('vrml-viewer', VRMLViewer);

View file

@ -1,324 +0,0 @@
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html{
line-height:1.15;
-webkit-text-size-adjust:100%
}
body{
margin:0
}
h1{
font-size:2em;
margin:.67em 0
}
pre{
font-family:monospace,monospace;
font-size:1em
}
a{
background-color:transparent
}
b,strong{
font-weight:bolder
}
code{
font-family:monospace,monospace;
font-size:1em
}
small{
font-size:80%
}
img{
border-style:none
}
input{
font-family:inherit;
font-size:100%;
line-height:1.15;
margin:0
}
input{
overflow:visible
}
[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{
height:auto
}
[type=search]{
-webkit-appearance:textfield;
outline-offset:-2px
}
[type=search]::-webkit-search-decoration{
-webkit-appearance:none
}
[hidden]{
display:none
}
h1,h2,h3,h4,h5,h6,p,pre{
margin:0
}
ul{
margin:0;
padding:0
}
ul{
list-style:none
}
html{
font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;
line-height:1.5
}
*{
box-sizing:border-box;
border:0 solid #e2e8f0
}
img{
border-style:solid
}
input::-webkit-input-placeholder{
color:#a0aec0
}
input::-moz-placeholder{
color:#a0aec0
}
input:-ms-input-placeholder{
color:#a0aec0
}
input::-ms-input-placeholder{
color:#a0aec0
}
input::placeholder{
color:#a0aec0
}
table{
border-collapse:collapse
}
tbody td {
padding-top: 5px;
padding-bottom: 5px;
overflow-x: scroll;
}
tbody tr:nth-child(even) {
background-color: #edf2f7;
}
h1,h2,h3,h4,h5,h6{
font-size:inherit;
font-weight:inherit
}
a{
color:inherit;
text-decoration:inherit
}
input{
padding:0;
line-height:inherit;
color:inherit
}
code,pre{
font-family:Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace
overflow-x: scroll;
}
.container{
width:100%
}
@media (min-width:640px){
.container{
max-width:640px
}
}
@media (min-width:768px){
.container{
max-width:768px
}
}
@media (min-width:1024px){
.container{
max-width:1024px
}
}
@media (min-width:1280px){
.container{
max-width:1280px
}
}
.bg-gray-200{
background-color:#edf2f7
}
.rounded{
border-radius:.25rem
}
.block{
display:block
}
.inline{
display:inline
}
.flex{
display:flex
}
.table{
display:table
}
.hidden{
display:none
}
.flex-wrap{
flex-wrap:wrap
}
.flex-auto{
flex:1 1 auto
}
.clearfix:after{
content:"";
display:table;
clear:both
}
.my-2{
margin-top:.5rem;
margin-bottom:.5rem
}
.my-3{
margin-top:.75rem;
margin-bottom:.75rem
}
.mx-auto{
margin-left:auto;
margin-right:auto
}
.mb-1{
margin-bottom:.25rem
}
.mt-16{
margin-top:4rem
}
.overflow-auto{
overflow:auto
}
.overflow-hidden{
overflow:hidden
}
.p-2{
padding:.5rem
}
.py-1{
padding-top:.25rem;
padding-bottom:.25rem
}
.py-3{
padding-top:.75rem;
padding-bottom:.75rem
}
.px-3{
padding-left:.75rem;
padding-right:.75rem
}
.px-4{
padding-left:1rem;
padding-right:1rem
}
.fixed{
position:fixed
}
.absolute{
position:absolute
}
.relative{
position:relative
}
.top-0{
top:0
}
.right-0{
right:0
}
.bottom-0{
bottom:0
}
.left-0{
left:0
}
.text-center{
text-align:center
}
.text-right{
text-align:right
}
.text-sm{
font-size:.875rem
}
.w-full{
width:100%
}
body{
font-size:1rem;
font-weight:400;
color:#718096
}
h1{
font-size:1.875rem
}
h1,h2{
font-weight:700;
font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;
overflow-wrap:normal;
word-break:normal;
color:#1a202c;
padding-top:1.5rem;
padding-bottom:.5rem
}
h2{
font-size:1.5rem
}
h3{
font-weight:700;
font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;
overflow-wrap:normal;
word-break:normal;
color:#1a202c;
padding-top:1.5rem;
padding-bottom:.5rem;
font-size:1.25rem
}
p{
text-align:justify
}
a{
color:#63b3ed
}
a:hover{
color:#2b6cb0
}
ul{
list-style-type:disc;
list-style-position:inside;
margin-top:.25rem;
margin-bottom:.25rem
}
code{
padding:.25rem
}
code,pre code{
background-color:#edf2f7
}
pre code{
display:block;
margin-top:1rem;
margin-bottom:1rem;
padding:1rem .75rem;
width:100%
}
.boardPreview{
display:block;
max-width:100%;
max-height:400px;
width:auto;
height:auto;
margin-left:auto;
margin-right:auto
}
@media (min-width:768px){
.md\:w-1\/3{
width:33.333333%
}
}

12033
rf.kicad_sch

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff