← Commit history

9ac13558102060c3: symbol repaired (crystal)

Ray ·bdd39f8bf9 ·9h ago ·parent 82a62de
3 files changed +287−33
9ac13558102060c3.kicad_sym+195−20
@@ -1,21 +1,196 @@-(kicad_symbol_lib (version 20211014) (generator ds2sf_rect)-  (symbol "9AC13558102060C3" (in_bom yes) (on_board yes)-    (property "Reference" "U" (at 0 5.08 0) (effects (font (size 1.27 1.27))))-    (property "Value" "9AC13558102060C3" (at 0 -5.08 0) (effects (font (size 1.27 1.27))))-    (property "Footprint" "" (at 0 0 0) (effects (font (size 1.27 1.27)) hide))-    (symbol "9AC13558102060C3_0_1"-    (rectangle (start -12.70 2.54) (end 12.70 -2.54)-      (stroke (width 0.254) (type default)) (fill (type background)))-    )-    (symbol "9AC13558102060C3_1_1"-    (pin passive line (at -17.78 0.00 0) (length 5.08)-      (name "1" (effects (font (size 1.27 1.27))))-      (number "1" (effects (font (size 1.27 1.27))))-    )-    (pin passive line (at 17.78 0.00 180) (length 5.08)-      (name "2" (effects (font (size 1.27 1.27))))-      (number "2" (effects (font (size 1.27 1.27))))-    )-    )-  )+(kicad_symbol_lib+	(version 20251024)+	(generator "kicad_symbol_editor")+	(generator_version "10.0")+(symbol "9AC13558102060C3"+		(pin_numbers+			(hide yes)+		)+		(pin_names+			(offset 1.016)+			(hide yes)+		)+		(exclude_from_sim no)+		(in_bom yes)+		(on_board yes)+		(in_pos_files yes)+		(duplicate_pin_numbers_are_jumpers no)+		(property "Reference" "Y"+			(at 0 3.81 0)+			(show_name no)+			(do_not_autoplace no)+			(effects+				(font+					(size 1.27 1.27)+				)+			)+		)+		(property "Value" "9AC13558102060C3"+			(at 0 -3.81 0)+			(show_name no)+			(do_not_autoplace no)+			(effects+				(font+					(size 1.27 1.27)+				)+			)+		)+		(property "Footprint" ""+			(at 0 0 0)+			(show_name no)+			(do_not_autoplace no)+			(hide yes)+			(effects+				(font+					(size 1.27 1.27)+				)+			)+		)+		(property "Datasheet" "https://datasheet.lcsc.com/datasheet/pdf/48cf89b1476e4914a1757cbed04721cc.pdf"+			(at 0 0 0)+			(show_name no)+			(do_not_autoplace no)+			(hide yes)+			(effects+				(font+					(size 1.27 1.27)+				)+			)+		)+		(property "Description" "Two pin crystal"+			(at 0 0 0)+			(show_name no)+			(do_not_autoplace no)+			(hide yes)+			(effects+				(font+					(size 1.27 1.27)+				)+			)+		)+		(property "ki_keywords" "quartz ceramic resonator oscillator"+			(at 0 0 0)+			(show_name no)+			(do_not_autoplace no)+			(hide yes)+			(effects+				(font+					(size 1.27 1.27)+				)+			)+		)+		(property "ki_fp_filters" "Crystal*"+			(at 0 0 0)+			(show_name no)+			(do_not_autoplace no)+			(hide yes)+			(effects+				(font+					(size 1.27 1.27)+				)+			)+		)+		(property "MPN" "9AC13558102060C3" (at 0 0 0) (effects (font (size 1.27 1.27)) hide))+		(property "LCSC" "C2715841" (at 0 0 0) (effects (font (size 1.27 1.27)) hide))+		(symbol "9AC13558102060C3_0_1"+			(polyline+				(pts+					(xy -2.54 0) (xy -1.905 0)+				)+				(stroke+					(width 0)+					(type default)+				)+				(fill+					(type none)+				)+			)+			(polyline+				(pts+					(xy -1.905 -1.27) (xy -1.905 1.27)+				)+				(stroke+					(width 0.508)+					(type default)+				)+				(fill+					(type none)+				)+			)+			(rectangle+				(start -1.143 2.54)+				(end 1.143 -2.54)+				(stroke+					(width 0.3048)+					(type default)+				)+				(fill+					(type none)+				)+			)+			(polyline+				(pts+					(xy 1.905 -1.27) (xy 1.905 1.27)+				)+				(stroke+					(width 0.508)+					(type default)+				)+				(fill+					(type none)+				)+			)+			(polyline+				(pts+					(xy 2.54 0) (xy 1.905 0)+				)+				(stroke+					(width 0)+					(type default)+				)+				(fill+					(type none)+				)+			)+		)+		(symbol "9AC13558102060C3_1_1"+			(pin passive line+				(at -3.81 0 0)+				(length 1.27)+				(name "1"+					(effects+						(font+							(size 1.27 1.27)+						)+					)+				)+				(number "1"+					(effects+						(font+							(size 1.27 1.27)+						)+					)+				)+			)+			(pin passive line+				(at 3.81 0 180)+				(length 1.27)+				(name "2"+					(effects+						(font+							(size 1.27 1.27)+						)+					)+				)+				(number "2"+					(effects+						(font+							(size 1.27 1.27)+						)+					)+				)+			)+		)+		(embedded_fonts no)+	) )
9ac13558102060c3.lbr+27−12
@@ -50,7 +50,7 @@ <layer number="98" name="Guide" color="6" fill="1" visible="yes" active="yes"/> </layers> <library>-<description></description>+<description>JGHC Crystals, HC-49S. Unpolarised two-terminal part: the datasheet prints no pin numbers, so pins 1 and 2 follow the library convention</description> <packages> <package name="Crystal_HC49-4H_Vertical">   <description>2 pads, 6.4 x 1.5 mm. HC-49-4H, Crystal</description>@@ -114,19 +114,26 @@ </packages> <symbols> <symbol name="9AC13558102060C3">-  <wire x1="-12.7" y1="2.54" x2="12.7" y2="2.54" width="0.254" layer="94"/>-  <wire x1="12.7" y1="2.54" x2="12.7" y2="-2.54" width="0.254" layer="94"/>-  <wire x1="12.7" y1="-2.54" x2="-12.7" y2="-2.54" width="0.254" layer="94"/>-  <wire x1="-12.7" y1="-2.54" x2="-12.7" y2="2.54" width="0.254" layer="94"/>-  <text x="0.0000" y="5.0800" size="1.27" layer="95" align="center">&gt;NAME</text>-  <text x="0.0000" y="-5.0800" size="1.27" layer="96" align="center">&gt;VALUE</text>-  <pin name="1" x="-17.78" y="0" length="middle" direction="pas"/>-  <pin name="2" x="17.78" y="0" length="middle" direction="pas" rot="R180"/>+  <description>JGHC Crystals, HC-49S. Unpolarised two-terminal part: the datasheet prints no pin numbers, so pins 1 and 2 follow the library convention</description>+  <wire x1="-1.143" y1="2.54" x2="1.143" y2="2.54" width="0.254" layer="94"/>+  <wire x1="1.143" y1="2.54" x2="1.143" y2="-2.54" width="0.254" layer="94"/>+  <wire x1="1.143" y1="-2.54" x2="-1.143" y2="-2.54" width="0.254" layer="94"/>+  <wire x1="-1.143" y1="-2.54" x2="-1.143" y2="2.54" width="0.254" layer="94"/>+  <wire x1="-2.5400" y1="0.0000" x2="-1.9050" y2="0.0000" width="0.1524" layer="94"/>+  <wire x1="-1.9050" y1="-1.2700" x2="-1.9050" y2="1.2700" width="0.5080" layer="94"/>+  <wire x1="1.9050" y1="-1.2700" x2="1.9050" y2="1.2700" width="0.5080" layer="94"/>+  <wire x1="2.5400" y1="0.0000" x2="1.9050" y2="0.0000" width="0.1524" layer="94"/>+  <text x="0.0000" y="3.8100" size="1.27" layer="95" align="center">&gt;NAME</text>+  <text x="0.0000" y="-3.8100" size="1.27" layer="96" align="center">&gt;VALUE</text>+  <wire x1="-3.8100" y1="0.0000" x2="-2.5400" y2="0.0000" width="0.254" layer="94"/>+  <pin name="1" x="-3.81" y="0" length="point" direction="pas" visible="pad"/>+  <wire x1="3.8100" y1="0.0000" x2="2.5400" y2="0.0000" width="0.254" layer="94"/>+  <pin name="2" x="3.81" y="0" length="point" direction="pas" rot="R180" visible="pad"/> </symbol> </symbols> <devicesets>-<deviceset name="9AC13558102060C3" prefix="U">-  <description></description>+<deviceset name="9AC13558102060C3" prefix="Y">+  <description>JGHC Crystals, HC-49S. Unpolarised two-terminal part: the datasheet prints no pin numbers, so pins 1 and 2 follow the library convention</description>   <gates>     <gate name="G$1" symbol="9AC13558102060C3" x="0" y="0"/>   </gates>@@ -136,7 +143,15 @@         <connect gate="G$1" pin="1" pad="1"/>         <connect gate="G$1" pin="2" pad="2"/>       </connects>-      <technologies><technology name=""/></technologies>+      <technologies>+        <technology name="">+          <attribute name="MPN" value="9AC13558102060C3" constant="no"/>+          <attribute name="MANUFACTURER" value="JGHC" constant="no"/>+          <attribute name="DATASHEET" value="https://datasheet.lcsc.com/datasheet/pdf/48cf89b1476e4914a1757cbed04721cc.pdf" constant="no"/>+          <attribute name="ADOM_WIKI" value="https://wiki.adom.inc/adom/9ac13558102060c3" constant="no"/>+          <attribute name="LCSC_PN" value="C2715841" constant="no"/>+        </technology>+      </technologies>     </device>   </devices> </deviceset>
viewers/symbol.html+65−1
@@ -1 +1,65 @@-<!doctype html><title>9ac13558102060c3</title>\ No newline at end of file+<!doctype html><html lang=en><head><meta charset=utf-8>+<meta name=viewport content="width=device-width,initial-scale=1"><title>ADOM/9AC13558102060C3 symbol</title>+<style>+:root{--bg:#0d1117;--panel:#161b22;--edge:#30363d;--ink:#e6edf3;--mut:#8b949e;--acc:#00b8b0;--accb:#00e6dc;--hi:#6ea8fe}+*{box-sizing:border-box;margin:0}html,body{height:100%}+body{background:var(--bg);color:var(--ink);font-family:'Satoshi',system-ui,sans-serif;display:flex;flex-direction:column}+.bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 11px;border-bottom:1px solid var(--edge);flex:none}+.bar .h{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--mut);font-weight:700}+.bar .sp{flex:1}+.lyrtog{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--mut);background:#1a2130;border:1px solid var(--edge);border-radius:999px;padding:3px 9px;cursor:pointer;user-select:none}+.lyrtog.on{color:var(--ink);border-color:#485162}.lyrtog:not(.on){opacity:.5}+.lyrtog .d{width:8px;height:8px;border-radius:50%;background:#485162}+.stage{flex:1;min-height:0;position:relative;overflow:hidden;background:var(--bg);cursor:grab;touch-action:none}+.stage.drag{cursor:grabbing}+.stage svg{position:absolute;inset:0;width:100%;height:100%}+.pingroup,.pad{cursor:pointer}+.pingroup.hi .pinvis{stroke:var(--hi)!important;stroke-width:7}+rect.pad.hi{stroke:var(--hi);stroke-width:.15;paint-order:stroke}+.lyr-off{display:none}+#tip{position:fixed;z-index:99;pointer-events:none;display:none;max-width:250px;background:#0d1117;border:1px solid var(--acc);border-radius:8px;padding:7px 10px;box-shadow:0 8px 26px #000a}+#tip .tn{font:700 12px ui-monospace,monospace;color:var(--accb)}+#tip .tt{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--mut);margin-top:1px}+#tip .td{font-size:11px;color:var(--ink);margin-top:5px;line-height:1.4}+</style></head><body>+<div class=bar><span class=h>Schematic symbol</span><span class=sp></span></div>+<div class=stage id=stage><svg xmlns='http://www.w3.org/2000/svg' viewBox='-200 -150 400 300' style='width:100%;height:100%'><rect x='-45.0' y='-100.0' width='90.0' height='200.0' fill='none' stroke='#e35d5d' stroke-width='4'/><polyline points='-100.0,-0.0 -75.0,-0.0' fill='none' stroke='#e35d5d' stroke-width='4'/><polyline points='-75.0,50.0 -75.0,-50.0' fill='none' stroke='#e35d5d' stroke-width='4'/><polyline points='75.0,50.0 75.0,-50.0' fill='none' stroke='#e35d5d' stroke-width='4'/><polyline points='100.0,-0.0 75.0,-0.0' fill='none' stroke='#e35d5d' stroke-width='4'/><g class='pingroup' data-num='1' data-name='1'><line class='pinvis' x1='-150.0' y1='-0.0' x2='-100.0' y2='-0.0' stroke='#dfe4ec' stroke-width='4'/><line x1='-150.0' y1='-0.0' x2='-100.0' y2='-0.0' stroke='transparent' stroke-width='26' pointer-events='stroke'/></g><g class='pingroup' data-num='2' data-name='2'><line class='pinvis' x1='150.0' y1='-0.0' x2='100.0' y2='-0.0' stroke='#dfe4ec' stroke-width='4'/><line x1='150.0' y1='-0.0' x2='100.0' y2='-0.0' stroke='transparent' stroke-width='26' pointer-events='stroke'/></g></svg></div>+<div id=tip></div>+<script>+var KIND="symbol", MPN="ADOM/9AC13558102060C3", PINS=[{"desc":"","name":"1","number":"1","type":""},{"desc":"","name":"2","number":"2","type":""}];+var byNum={}; PINS.forEach(function(p){byNum[String(p.number)]=p;});+var stage=document.getElementById('stage'), svg=stage.querySelector('svg'), tip=document.getElementById('tip');+// ---- pan/zoom ----+var vb=(svg.getAttribute('viewBox')||'0 0 100 100').split(/\s+/).map(Number), base=vb.slice();+function setVB(){svg.setAttribute('viewBox',vb.join(' '));}+stage.addEventListener('wheel',function(e){e.preventDefault();var r=stage.getBoundingClientRect();var mx=(e.clientX-r.left)/r.width,my=(e.clientY-r.top)/r.height;var f=e.deltaY<0?0.88:1.14;var nw=vb[2]*f,nh=vb[3]*f;vb[0]+=(vb[2]-nw)*mx;vb[1]+=(vb[3]-nh)*my;vb[2]=nw;vb[3]=nh;setVB();},{passive:false});+var pan=null;+stage.addEventListener('pointerdown',function(e){pan={x:e.clientX,y:e.clientY};stage.classList.add('drag');stage.setPointerCapture(e.pointerId);});+stage.addEventListener('pointermove',function(e){if(!pan)return;var r=stage.getBoundingClientRect();vb[0]-=(e.clientX-pan.x)/r.width*vb[2];vb[1]-=(e.clientY-pan.y)/r.height*vb[3];pan={x:e.clientX,y:e.clientY};setVB();});+function endPan(){pan=null;stage.classList.remove('drag');}+stage.addEventListener('pointerup',endPan);stage.addEventListener('pointerleave',endPan);+stage.addEventListener('dblclick',function(){vb=base.slice();setVB();});+// ---- cross-highlight bus ----+function els(n){return [].slice.call(document.querySelectorAll('[data-num="'+n+'"]'));}+function clearHi(){[].slice.call(document.querySelectorAll('.hi')).forEach(function(e){e.classList.remove('hi');});}+function hi(n){els(n).forEach(function(e){e.classList.add('hi');});}+function post(n){try{parent.postMessage({type:'lbr-hover',pin:n===null?null:String(n),mpn:MPN},'*');}catch(_){}}+function showTip(n,x,y){var p=byNum[String(n)];if(!p)return;tip.innerHTML='<span class=tn></span><div class=tt></div><div class=td></div>';tip.querySelector('.tn').textContent=n+'  '+(p.name||'');tip.querySelector('.tt').textContent=p.type||'';var d=p.desc||'';if(d)tip.querySelector('.td').textContent=d;else tip.querySelector('.td').style.display='none';tip.style.display='block';tip.style.left=(x+14)+'px';tip.style.top=(y+12)+'px';}+[].slice.call(document.querySelectorAll('.pingroup,.pad')).forEach(function(g){+  var n=g.getAttribute('data-num');+  g.addEventListener('mouseenter',function(e){clearHi();hi(n);post(n);showTip(n,e.clientX,e.clientY);});+  g.addEventListener('mousemove',function(e){tip.style.left=(e.clientX+14)+'px';tip.style.top=(e.clientY+12)+'px';});+  g.addEventListener('mouseleave',function(){clearHi();post(null);tip.style.display='none';});+});+window.addEventListener('message',function(e){var d=e.data||{};if(d.type!=='lbr-hover')return;clearHi();if(d.pin!=null)hi(d.pin);});+// ---- footprint layer toggles ----+[].slice.call(document.querySelectorAll('.lyrtog')).forEach(function(b){+  function apply(on){[].slice.call(document.querySelectorAll('.ly-'+b.getAttribute('data-lyr'))).forEach(function(el){el.classList.toggle('lyr-off',!on);});}+  apply(b.classList.contains('on'));+  b.addEventListener('click',function(){apply(b.classList.toggle('on'));});+});+// ---- auto-grow the host readme iframe ----+function ph(){var h=Math.max(360,Math.min(16000,document.body.scrollHeight||420));parent.postMessage({type:'readme-height',height:h},'*');}+window.addEventListener('load',ph);setTimeout(ph,300);+</script>+</body></html>