From be6512209a4f7ce5bc24db959b52a9b455e2d2fa Mon Sep 17 00:00:00 2001 From: Bdale Garbee Date: Sun, 4 Dec 2011 18:31:15 -0700 Subject: [PATCH] various changes driven by physical inspection of my Pluto-P board --- Datasheets/diodes/ds30036.pdf | Bin 0 -> 88919 bytes Notebook | 79 ++++- cncfpga.sch | 609 ++++++++++++++++++++++------------ packages/SOT23-6.fp | 12 + packages/SOT23.fp | 15 + 5 files changed, 505 insertions(+), 210 deletions(-) create mode 100644 Datasheets/diodes/ds30036.pdf create mode 100644 packages/SOT23-6.fp create mode 100644 packages/SOT23.fp diff --git a/Datasheets/diodes/ds30036.pdf b/Datasheets/diodes/ds30036.pdf new file mode 100644 index 0000000000000000000000000000000000000000..b9b027929fe9afa978e6cada0e765dbbe8e36068 GIT binary patch literal 88919 zcmce;2RN1Q|2Te-y=64e5z2@&tfP!_bZ{=T2z^}DYBbFSlgp8I~?_iK;)ex8F}O-F6J~8>>BRL6N5DW!7 znBFEA5rHUK+oOY7-EE z{?#Ukfc@D9hw>x-ZWHGJtBsHE?=~U9zuOQ3f3;!7@#lQ}FvMRp^Yg*}ZsY%#v4T*6 zKj#yGL;u1dASfvO7aRhR+#m82K=A!FpCDA|FS!Wv{XJGt0RA@|LQv>W9D>69f5`;_ zhy6vLFyCKzVNjUBpEzJp;lFr;!4U92@xtIj0)Ofp#*ek0|C9kt`0qA2(DWzGaJZoG zpE%$`2>w5Dz!6ZPzuWk*PJ=yu*)AOLl|N}T)>7{82qS~0CMG5* z6O)Q}Z=2sfJBsm3!NJ+_gWHl_A!B4BBiD#Kn-fn+Yv4JJhsRa0!!Mzu`>uDDi3pkMs&vFHzcC!g8OhRUQ*$udDA?yAn@o6qC><1}i@H>o#Y7WPxjH0FE^`!FUs) znW$>N*tI%x5+H*9;Ppo=J=Wik;H-?oAkC2&Bp41DGoVNbGqi)O1KJLZbzIgpG1Keo3JE9;`0JN=x<#CS^(iCM2bOXi=R{tkhACLWkK-L;%Ywl#gcMM_# zk(S_q$fImsfB~8oz#mI6Cq!BuFg95Sdkk11&WN2GB4ZEe)7st= z00NSYw1e5t1~BZHRI%gZXTE@Ar}#mF6xzX2(!tFDJCh&`4i*xI8$l%O?Hw>qV7}w& z0cOxBd%&_!_>=-@0dAcPu+bl^4(30m2aL@bz#Z1DuqVI^v8Ur9U~F8+-T`h1RyP9t z1Ou2L7z$BFnOh_OLavT-a&ShQp_~9_bX84nqs*|pE7(E70zdr84h9xHMgX+J!Ggy~ z03k>@*gBv!9Fb-y0A5N13g$ls0(ySPPg4^L<~vcHrX~!`cOpqmO*okUgi|TFF)-?f z!T{HHFw;O`46q`FXrkOO06IY9QbrINH;kMHmI(ln92U{B(_>|PVg^{l_($W%V#JF3 zhoZsQoB_xK$m7SSN1W`s}(AI7SFkV1+Kfb?R17`M{9sTY=0MW-J{HDn5(J(IYLdnqeYfzu*(t#6f_j+0X@x?eWU4!K2VD0=m2nrMLO6oX)$P+U2&RP(zj zaeMjfCL!M~S?_V=%3)wWLhY!Wr!q{KG8^j--{`!s8qk8vJRY-E8;eLN0 ztdIWAqa(Y8EV1U$uL6U*0}U4CK|VMHAle{B&wmMz$HMzVTUZ&uASy^Z)NzD@NCGB< z75MQT3S(`C{1ua?S=gf7Am%_EF*5^V5yZ;b-V%v+wzEY#V;~Ne4)!P;2pR~75RA30ISO!e$Q@?~ z49W>;vPFS~1tFGbqzj-oI09noY-<(S zfb@VpSpXr%+8$zoMw(%)0dg#zt!PWgr?S zqS7$;ldGdjjf!f;gS@cpRU=FhM9p#u@DZT<}B8oY7bnxC1wW zfC?OJQ1+%sG;oK2{F>Oz!O{JMI0v-31qxso8$@72a0rkE0ma(_c?7}>{4qyaK+q^l zYbT%tL77ABkU%Q6hnS-*(I^ze(bn1NL{=DA2PbDhVAc+32*wKN`*nvjbH<<`cFsUT z?zYPY|^ur*nPhhN1V61of{g3jRt+~EY=;Wu!H9{|5bnOnP91C_1A zi4dGm20EV%bpCCi^RE%^C!K(g0zz>A*=%%@34Yd5zr`tR^8U~K%+Cu4DnubDoL2yL zlAvM0QdouMnRwA5dfn@d_e<(iO;7!UF$SRGgGq{{;oV zEi{fx6<}+E7XhqR`JlqQFd<=}P8I~tK&1sk@Cv|z!t!T=|1U&wTpay3V!#%3e`X}K zGwN8j*c2m;axz0(J7OHrVE&U5Rtf2Zk+K3}86O;5HDRoPEF%C&`B&o7w6;Szsi0id z9RQC|(@@p~DiHKPV}2S1FxXzg-pTsc{V$xqY3a9G`zQCB{}Xv9>imzu)#KV?f*e_5RBlv-ZC*t@Hd&YhRfO7l4`Tm4InFWgjyK4Z(qQHKI;6SMfe2?#8 zFt89XHTM1(1+W~)wqwyC078yofqrZo^gl=am;t+$aXb@tc3`%DSi)BKKL`e9{dxU6 zBXD32pa~YxgG}{f}Y6|1d0mA*|{B{QS-}R+`v*?D-$P{4V)_ zyZ$-T$@$nW08RWn|EnzlI>h#4t>RBx`e}2&#$n+A3;N%z2|E{-x}Rq(AJ}W`_aA<+ zSHPCbuO4hKcAY4EJoe`p>^xXHesKGzCV3$JPJ8giWAJ1K3N# zm;ogXuv|jg9z*M(u=O#p>V{&Mbe6zQ1OE>;F<>4zOz;@!c=5#}0OT+pKBy3|*8%tv z3XufG&?!ZP9?mVdeNf6FNRcScX>KVei*Pyk>QSXcjK z6o?i-7zLL7zcYG_^LO@yV2EGr0Tsyq6?eZ?GaAR-!TA1U@0V@=A9)n|N16XKkHF>^ z51)|WPaa`F(*6H|$KML2pPLGT!vC@#`p+`nYD6=#-Toe!HfUR{Nv~`USNd`%TabBk z#)HsX>UP^?%sC1&{;yY;NUbb-@E@&wIl{}DpVgx9zfCi>{{r0iS7f(Chx9C z@UH}OE+OTNfjASz8Ct(VSjsb`c=Dg09?7zWOxmkyYR_^^F_W%?%nH6fdie4yQ^` zMls*11uNwE+E}x~UdbmAJx)@M{3g=F9)@{#-YznD*!7`idSM$XTaQr`);1uUir3x= z5n21Void1q#E*6jW$bHnx8`3EK1 zqYjDkRNk}sXEv=P+bn!QqYWg^2`vy~!%49B5R^T0gTbA8ZR1hlWL8QogWk ze%8#yqIP#CF+!9#AZ}G!4I4{*pAj{zci_K1 z&56!qmh<)5Xoj%DNuC#Y+V(KCviKV03+1826hV0HLwC+?}&$=`$xDb22GPa8` z;2dGdL^G47KO`N_hZUBx=Upe3wey@}qAiZU#`duhSKK>rD z&Fauas~|U)$NovV^DaznkB7%q+g|ZD`Y%>rKA7>{NqS7Bo!=67FZ;EyRkK1xrc`A_ z8n{zH$E0NH4oN~fhvr=}oAZYIvn_#&T%eFOGHyX)Tb2M$iya~fQ`2NW1=x0YSM0HDg>}d}>2-d1Kf+(5*(1)=1$r@|JMXB+8trmFpxB@fdVMR0ml)kxW-s zqkNbL+h(I0Bp|K$g|EVS&r7EW_dLA$PbXLPnKfk{G~`5nRhynpuSG-Mz56xtyY6LL zLvH3Le{LcRnfv;kv7o%^^Zw_rj3kVukW`Df%(OLPC2_BW7`0pB7EO9Ly(>LmjnejU zKAL-D7r>azE4Wh+6(#Jw#Ghdu+ufy($}F2-{=_D!YWqCPT~_`gb6=aa=4l9_59B@n zhoa2w`=1K;G#IJ&2UzxE!Y+m1nI3g~RyTYKN)3-1bj zELo|3wB;dQ$@iv3+#B0*9UI}ipVi=JL^a<(uhiGwDbsMiAygaK>2QSC6##DSxdrkP zESDd3t_sRZ654KuO3v0=m0R6my^>jBKOYi*@3w$kuB`CT#NB6e^FtQS>oy!Uu418R zN-GCs1XhSy*PJzX8x^GZBbUPLpGg?%9$oxziC*! zrqOhToNM1}ztBF`yUK)=ODoLhZ1*&Ry)0PE@HSt4sC-XxDNb)IP3~cKm{;&V4LoEb z+NqGpSnJ028&5Y*zjKtnQ!OgbjT|=t*fRuTMG~Y0@&q zPH~TMLz<9T%1s4SOW%AsZ<|Ii`SD7q7ghPFevmJFIsi*0xn*m;2hUVZNznE_Tm58h zloR^y6HcHf@y
5cR@u!S@S&MwzZR1e$1)gxB7m|5G6OON3U)K!;X8GWIWHEPUf zk%nnpA+^jXh6>f#k!mD2h=hDBc%ZABw@5M)ld%x`wfuX}<@9zkF&&C}1W+%+$#qFd*3) zE?i_5tidn5zZ&*-pWE^5sPx4vY4O1suR4@((jUy;e?Vn%znZ(hsb@n*qv69&Fb8~> zrP(TEll)BhdONYs;5zpvvA4A#bxtz7+X$_ZZS67rB^oPwMJL>DxFR_j6a7a z_V0*2KO()Eq{$Hz@J!`;T}^(D9{GEFYW&+h+i2>}%Sf@@aO?W`ff@dqP}#L98FGh^ z%CGiy5AmPSIFE>cw>1QX>HKLJl*FSZ7m92>2_?`R)I)>p=N=S>-hV3)GEz2^QNmni zv-o{U%af@|mtlVAqKn);4a+G@X!(I%F|LY6x#QD*1{?HMwa4Q53Lg*W5S|A4iDl=$ z)`?Ntd0Pt7PpzvRCM_o$o|PN_K9H9)>loTvtC`$==u^M>e0?>PN3i^$q9vuidDJ#z zUhVG8a^5CXT!!n4EJ@*Rr~$UK(MpUzx3{)Oh~*90z%w!+F&z zb~eR>ONV~eDkURBvx%Od@Z`ZNYm*0(=ep&nZG)UVmb{uj7cN=Mmw88twi0z_8M)Z5 z>b&jqx49ayUs+;AsO)27;JWMmu&BWCH2$oqt7RNQI;YCpyt%AxpO=!BmH1m!MmTd5 zox&s4=g&&(JZzK(`~vGPsYO9cUfm<2Ff?bIepK;-MVp%Qa`vT!FU8)8td|qhmeSwj#)wtLxD0X<+_ zCqS^AR(Z&Hhgw@`XI!G;8}&Iq+RzP-C$(L5?X=QCceAdv)AT;-f45ac@-&M?M4n`N zm1_TMPtyH0Yo_lTWZ4r`6;n~Ga__|Bzm2H4_7Lf3FvgTMbr3Vx5SJ+h#>@9ysbe>pN*nJMyfRTBFDzEx;n;?6?E)ROgJ^Bj0}sL&pzq zf0T1S!jKRQSeyOz#=w6>A+4(La}rb?+uWD#`EFHT;Ji$8IratJgXyt*uRrR6%^yyU zx_)p99&Q$EEh9Sfa(Qq*d3i8Sg5Z6LvkBYjX9APYM5~yCH#Jw_+!ZreZl`MAWX4E&FdrOK@w1YRIilg@K)2pGZ zArc~a@^^9CKDsr$4B2axky%T9vw4w-C`!^vhEJ1COGBFUE9$)ETYbX1cl&6?rBinw%Q;I`yl$FM6;07Z%F4 zr05SJ*wh0DP<3XGogb?F3W|vgt{>o-&vm&d)f_>?{fPx9ltHs11#52w=d1>HqJ@bD zgukatp*Bp|&wpr`pF>||qAYKBF7`USW4_-$xAon_d|_><;Cy?~eD9Mh@Rzrqku%%6nTq@2)R8h!I<@=6EMx3ePn#Ot@4t1I-$c8#1uIu3oHpIufO~p7 zDxf(vxy7o^wcpKcLWF1%H*eoAZ3$a-)>Ml)m`sU-s%mmaD~jqOjLQGOQ$5 zlir_V_b)<6)qb&fQSP)y{9)0h^OjxkqI)S5jnZ~}3x|R8tkCX7Yp9V_;Fl!TKJ6YW zyHjDYlFUS0FgfAoc%SW$-|C{>W_0ZI6`XWX?i;bD=fO!~A`Mf^no5*j;pm$qzcCv#txQTF?%Ilx1(^7gQ<4*QzA$ePU8uX(ymp!K zA^#Z9$5(^_-`-d|3|Q=ZHlz%@*~OPjZuK5vReh?)tfkQ1>fyaxpZLk^@!vzUL=Xzk zA3lGZu7cyX%i}+ErVb{#*HImpAk4K9{B^mnURY!8_9G{Q={==e2=3Xh`K@~XpGeoQ z_;zSWFXtzLrnwFW6{s%Xttt_p>mKGER(6;___}#RO7cPs4oeyvg2TQ4UD26AsA9a$ zrS~tcWIM66-S&`YPu++rdJ-1V`*vDHtU`hVr?vUHZI&`~diZ=F)ou4T3}3o$Va8v6 zUcFm!v9;Sj{5-nG=SjxefYETx!^N3`#AW6dck6Gkhny2LF#D}*l>Q8vznTwcJCZ61on*V!@;*tU0=9$yx&6}f+_1B zw|qFi;-w0`IaUyBNbFMUz+p0aFB4rB8q8Z_9z5vjVf99fhBp)9NQ zQI_5AvSyfDNK3de(z09J*{LkQaQ%Hvb0_+}I_EIMtrtb=K#tj*^%eSV-?F?iAo*xTNu0 z(hrwTS@YZ_IJ;Euj=bI}7ur)xuK%Q9e3amkhs#RbvZct~ZN-&5*P@i9AvJ`n=q3B| z>rx`*@EtO188{!ogUr$rsJ}jemG6@%Rr*qm(})P{gnd_uUN@Y(w1!iQ7T`54z z(36cHktUo~7=PYM2$$kbvYbISrE0d-^ib$NTZljX4q21m#Zd}rh<*M#a1cp~VRFG0 z&RL@)(Nv+xM&)p&+_g!QYn~aD#`!d+}(bk zU`K&+z}GESTQ4i;Oy01{V(^NzU*yG@`d5@b_ktShAyZaJ{}^74p#AkFkLvqE+bu(D z8<;nuB4VOXnOmv5wbBc?cGVa~#H~ffOcaeJ3w-U~UzN>zW=cJ~)FsSQ1MSv;AROVQ zEW^4lPHje#RQZ0r(YkK#$;JNuG=)@p3S7AK=-%GBrgI-(XfP2!$h}ifDUDTVRi`z@vAYu8JvlI9!w=K3f-ws(n%8l=E~?Sf9hfqm z4&Ro|tz^4g5M$SBd*#YyK%r=EWvl1B-6Fch_)7FSp+la0+=E7S_T~b9xj8p1%-CgV z)XnjEFl{9CdNK4+y#ikQqxU)Q-rBJ>>2hcKf6^_VBY&h(U!Fl9&-Y5gdni;RNiJY> z=+@n+Z}zqd^hc-8fL_`wzWq1P!amje&w>niJNkb~LQl1g96my6y*}ixnsMEPlsPaO zNXnZ{zMzE4ri()F-H3~QE-+lFvcLburp3Bv5KlRV>vGHX-k1E-km4fTTR0jq6WT@o z0d=)B19`2ntX-$5jznI%H9dB@_QjxG#y6cW)U*ee0gl6^aVNUy6sudp)k3b1wv`;u zpP6Lmobu2-^9ZKI)y@OG>BxR3B<~|48-JcSqj0f)JwLI|d3|WzJW6}@IR}3> zgYA55R39VaPSTW&X%Hg~)V z;SoG*H(<`&>_5EU)Y~`9Tv(uQVSM^U6z%tTe))zMjIi(&k?ol*RlUbF`(BNvPN(HJ8iIpboIX<;pIT2^E>xdLUtk%eyxI5-Dox#0xYp|E zzK*8P2}bhURC3pZ<)6+=Dfq3DWcpq7P2Upd@E2f}0m)Q+rDKu5QT={Vg1RmJ z;`LV2CA!qZ;YGpqyDq~bxhY#tQGPBLzsanJzfT?t{CNK$Hp#&|H_^rCA_G+n=>;`$ z%l?Pc^$ildw(#V1Lymbg{`HZU$owi7ua3t>b+yl<7V_NfbrlJp8of&i+#bnRv>Y#; z7R?|Rb91ndqQp?3*^Ky*dX6-6JD=T^9u=swM!_U*uyL`-4@`pC*jGcqshKK|zRWB8 z_ioEkJP#pOZ!rkxK68rrX7*i)SK;$_IV7m5S^Y>da-1JzV|1c!s3|mmhh4o*sgl^; zZ4_(#lxdFsP)f4wx!RFeP`Z`O5`~j@i10-*qgyzqASTl66a=jyX%a;fR+sf2Xn27+ zscwz)Ke{4wnQaAnBkH}+2=ZP&tCv-@f8c3{npW)KT&t`^Kllk9#^S1{=Ke8SSCiK7U*?4N(MNjgR9VQ!(M-baqdn-?z4?1ff zcg-XSRnfjW9gZw|u#an}@#JxRtz1+h|8SX5Qgb-FVgz$*2tI@48SVZnvw0@C-u&Hz zjxlx5DmZm3!Y8h2Uz$#d^d&#H$)`?0msTO8+@u`zBxNE36=kuuKehcWQ{J%9&dw1w zXkoRx50A2Co_ju~@281we>ziSqCVEvDOdc}p-Vz4%9>Cu$B9>tEGnCEMy77w`5wu_ zOGlC5RxTy=mKZ+P<&zSEx(rQ{Y5dXXf>s!S_RR&DTBf(_RPH(HWX5=m!T#ljb#l-9xJ=M0UU*(&S% z;#qek6-WIcarX5Dn5AP0;)c}`cdPYe@6$2fs`0s39E}7sk6peb*j)VL!lFgdI8T3g z^G2dEizsp7DvPm3Bzfk;EeVz^PF`%7Y(_X~=ac;W(9 zpS0WzqUfuTW{C@sdbflU9_9!&6CI8U%9ZLiw6D7I|j0+f6%*Dv}HTIEL70DPk_G^RI~p` z|EZXGwTw|K{+ol)y)l7chQxOt{om2H#aX4_Vk40@h}R}J&^k(0sany)=QfIZa)!qx zbj#PD+~clc+1CMASB|~N9I9q}%81=BuD)cW0qfno)jr!-XdQ8jt5*H4hlKcD zw0rbisVkxW(k7?H*q269XmJjMRVqO=ZdbJ%<7YBrKLxy1tJL8YXnnM^kp3qtrab}3 z*wYtLieIPdh`W_2(X+;ts0)kHfqLp@C<#y&*%HV;`ee{S5#^2YT<`;CQ>duwt;WyZoQ z2s2!UT;4rPL7HlFx8Y@*<9#Nv-e`pKyhi{n|0`cpH-j;yTPzMYq)Y64^kc zA7dnE3o4^|Z@}&O=M~-3b)s*mT0?gHnGW@Zuop zbt9$JFVj6J87JzfJMG`7MMSecnDWy5HtarzjOsAoG(GlaAd*StTK15#acUO%J`Tfb zb>3jbC?=;V{&Pzl&NsihzF>WZ@N<>Vc;dO>ue(el>t$5N11GBM<`@a^ZVP{!dAUXU zD(SO-r^5$j>)zCjY}kRG_vh=*$gkH#3Mr>*3~&`Mcp5J~xs4b2sAagYH&xi!FjGBx zjg02O_l2j+vKRrb+DbU`h!hI)=J3M(w*dG1GvOaEmmk0R{_~Y=egwbJ&ss!UO7q8$ zNhGZ?PHHH$l!Kik@PZ}w`TTEhB#_0@r>WIOL?HZR(re)V6R5ip?l%?w{EblGCwt4UWq! zZ}~L4O%1}u1*koBOcNmizQ8dFEHIi=00nn0p2mm!Mbcs^s8jD=E_Z{g(;h#^Uw@TGHhR%dDgoe)zeS%E!H-Qww;+^0{e z9z@<35u=bs%(75lgfzXopj)}G6rL7E`Q7FSRAbP*x3HOZ#{bLq0O8Ewd6OehI=hEm zipF7%?r`2*uir$MzW3In3e}t=(8PR>rwv~v_fwhcl^t?PEml+g%a~QJYT@u(miOM0 z9*l7oUO79)%U8Lmoc^_TQbc$uGpFm!$IL;icxL;Y*8PZ9+XJ_Gh(n*H#m1t4*LJVX zn>cD7rz+v>R{9rAxBEB9^1`fnU$uO4L5M$@sTvWZIG3sV*!QU=juy+EIYs1q`R1Dm zRRj?Raz`M<)s;itsUy%({^91=BhbytwAz{C^~z+$r-QjApS?PHS#rat-6eafa&$c? z#N~2gdxvb_03t&~7I;3_Ojspulm>}PzGI?Cb|6_VDtwff*hq5yj>g&?C>NfZMH95P<0fT5u0z> z;XVS%_lSs&jDO?q`}QV(L!>fHXsm07iQi0LuI@c3aN5UEEH~M&SH_v7N|G zikn2HyCxsfW2w0E*|x~M^?VJo#$~zt4|8-mFkM)Jj~ts+Z4Jg}V)O-OB+cIKLvucx z_F$-}Y_N1(hiaWmoR`vGp_8J~$9dar^MZp#7Cs0pl(B=1w+d9nOcw1MpJe>N^Ap3u zhyI7AMDK-gcFP6w31?652BEjg)edeoAFdk>r&UgT3=%mzc?YkXqHRu<@)w2m8Yr}%R^yboI~0TNyX#> zW0L}i?jg)^o;$y&C`$Mc!WN1rdj$GEwotok7JUS=uiftfgd_T!uWr<44PQu~^3t!X z{LaNwx_HNF)WC3Z#g#3vcpneoYua1rpyb2%5P!oF#JiTET?MAAd~&g^90AMrknGtD z>K>mo-|e-B-qLpN?=rByd!?|cVDQTvOEZ6<&jRI6Ype5z=C8=oo*sj(@~}?V#B&(D ziAu`cnroS3UWOl9>l-sdo9^Pr^!L9OY!Qg??-rM7a=+-pG5LY@af|$(w9k2iSUqT? z8BOor>sm8cNUpPIkBYWkf57JtE~D$RA@T0kUzjM?2(<=$LaQnK5+Wa6jkYQ0sq%iW z++9+>{ka~ni0?TS~VJGS@Uh<8_J_H*;y zSuNnpN5$2Y7FM-CVf&^(M5+-uNwcJ@t$K#P|zE@>N77MQghzXk5XXArbfbzo@e$v z*V9-^XL`Z9H6+C$=?DyM-QJviDVVU&NorvH3qoGAVxZ&9S;bKA$6uz|aoJdznJNdh z-XFMqRbD_K7Wb7A5gEhv?VbIP^d+psM0g|Jw|9Ey=^_I^>W|$b%`bg}D+u=%o2KMB z%UC$hf468BY#K*Z___566wiAEYJW(%f5+8F+d~odCZ8|Ed`QJvs@En-Z`9z)?CEmj zkhOSb((cv0X>qMLFOUUw^TJw{Upy#kI}xu%CsnOZaeH>a&oqk|O21QkwO8uyK1mZf zK8|}eu{JGh({lcRi8R-l>rS5CW5c$byoyBb)0U-2ptpHR?nj`VqSklqo%5fC1gHy9MUJpx2v%w)e1EVG87t7(viqqW7IiFyr$Vllpj_<~lLpQkB zoEpwUIEK9I(9fJNCpV`vqrdtoD7I^4xgf&q`c6Jolv0vHZ;Z_&f((yyHcpL(gg0&2 zGPvDy`-4)H^T>IZcu)E5(BV60%$s^yF6`(oHZ{F3dc{T6HdF>mSnhS$o!(3XGPvD- z;t?p)sJ2i1)u_(8cRmt@Lh9IU6~qlJ^~gH~o0itj8234R&&xiHJ5*3l;q$$5eX@v{ zu;+Z_^!gcpxEk0QLb~aYv*}&am(X)H85K7^{mF(WXX(?1J^1TLi&o?(?_6h<;JXRY zdM+Y|5uDF$9GCKEQZCk*kZ z^rmF%^~{c!B{J=9oYvb8$Ca$vug)S*k zRBwE4)f_^Ka^CIbN6gbqDyC>C9Q0QWie0bIfB$XO_q1=WRgk@oNQM%7UMy)3Thxu{ zJG+~=y>2b+isA|E#`nQLy(zwF7fq#TB-SJD>|(srJK-}Oma;YE^G(5LQsV&-`vrZ5 z?2bUKJPJ;R)qbZ2#PHuo@FcTQaYRr}e?H{*n0zARHqe(c5?pn7STU0Osj^(x%}4E> zb83d3?p9$ffspExrJ+ME$IRhg9@f^d3ys+WwG$ubm)NdOdMhv`ALQ<5lYh^O{Lt2* z8|KNHKT$nCW0@YF>{GYSc!ja!d(b4ZcVXFw%p@gYl^NxdWIW&CoqwQEtt+*T=6Ug% zl99-@H0;~$6-N(C)ww5`l>sxsevlro&Dy?g!6R>IiJ z>CQWy;%PWwRVSs$X*VRKC*c&uhx@!AUmWPW8tp~3OyX=UDlR+oWo#u?Wv3uMzPJ8Q zLGY%{uSn&mVpa-t?$lHbTWo_qE-&F~tgk!5n7`CWUSBMx08N5(n;0Xav_+SPzt#cS(5C6aI6u^Inez&Y^7oc8azch;G!#D zBD|YtaQVAtuc69iH77!gAzjylOBJ<|2q#^%TrfBv@1?|av02Qd(2fAQwmHLQo~NlU zFOlf*&I$x?tgAl{0)bo>y3~=AOGTMD|?st z0@kk-3pA`7En2?M`LuRJxWZ5yS+Pid$PvqI$xgg9A>&O++U1=;?F@54<~(G)BsP?T z33^@lVkBBMG|d=4DKRNJCF*-lrbFr46zH5lF4Gf2oV#Je;!FouN0Jm}MFlnI^|`HZ zQkQtTt6dEp4h0Y?yJnULWuxDt&g{NB%_^=cKj(4DGyN?tb6(M0cB_}+UU%H4`=_dN zPnLyoQb#hD1eIia#NBO;4*9Px3>s*i>ANsOem7#`tA6co#(F~u$YZ+T{q<$6jg34m z`W7Xk-n&aD#~?sm&(Dk;+e^`zH_|@>8Na->Fd}yUs=%`?8);CS(wwMNw)sOt66LZB z>2lpx2eVba3>nBHP^eF~+tk(mp~rGI#^ivB8Zlp@zeIQO;SD_*sUYpH?j05}7izk2 zF(X{F)=t@Pid%7=hvgWOtCW4VjDi=`KTWN?D`RzfZ$J6Yk%6ivb3v%D@~~i{FATNZ zLi>51P$2bVs_kvLkXiAytVSR`oEKjzI|5Bb)xEziwHdWZqtLBaVV$tYItRkZj_9s! zX4X-ddyJVu>e$>F)V~4&C$N99Ti5Yf>+d)Mwe1~&mRfwKv}(WKz9asv`NO_l?JisG ze@@Id)yfv8Qkx#hYzx8}QhDG(xYJPk%K7T*N@HHg(;?=4srLJHh5e5D;?Aa%J`a~m zl_NG^Wnaof#1i7R5JacB3Mmstjm!b-ollgM;4g~{wl>*CnfwAd*KCnF4e8B++V8L$ zxECFof-)<%H8b8RDdbmtJaN@So{2=sJ&!u?S#m1q2y|{G%)@GU+9hRo$!S#2`?WJ= z4tZXpjfI$i%E(~60(&>jEVBt+wNI0Z;asmx#MOvH3Ti&qvK2zeMjCW_so+UHt zRDJtiY2>F1y>PB}Vfu|VWqVYGvxn;D{quvPHpC91aUT@eTs1b;Co22p`nQ~wwoMLR znyT-K;u#^|4~~f{KNN_ze0oi0T!BsVK>hRJWesNPohuHxWt+Dv)m-K2pQbsR?D32& z-P29`yZqduCq*8zvQox1G2+ZY0+Tim zhLKysgI?{k=26!;_o696VQUG><>Ks%R0}yE;la)-&;|ee{?XXZ$k^{pqqpr;`1j15 z%9|4n2yX0#v3YRrU6>C$u;|zK$g1rftjAw+l3u73(oowEjgtkq!zoHZf9Tj7?0k{9 zrCNq4<_xRP?t1E~?(=jQneR7Q;WGK&Gbc(4U?a+yD?KFT=<~n5WPkjtw*PzxC=C2i z=6`t;MO!hV7fSYKR%Z$k(EA9n!hMDCH47K-eY|rPrO!AW>PA~4N|dYci2Sq%l~3=t z&wdE6A@pJ#&0h1nYRjNa+4=g+hFkGx;yc3?E1QW;N4TDdaFuJKBd=_4chmd0Q5P!= zO7Pd|izJtQI$RF7P~Ymv6FvxAG6^d!n_o+}ri<*OoVuMF*^Gb6!LujTViGT!S=_q^ zGMeNA<=<^syzp+=kF(##-$gINp)b4P{qBDEZbQ{ay;{U@Ql?Og$Bqjl?lPls#E0JK zn_k*DWT5B56<@AJqjTwsg48k1EAlOM3m?;&#gd-B*?pOumS%Q0Q#8GatvO^$XT1fI zBjzO&#jCZ)SrBtIUR~C!xlrxMZ#%gijPG>RDo0gjnxh(Y`ZQ;ys5h{4*NweWn z@vm`Oy&Gw}9L^DB>i=~thk8nk31%{GLUJX6Ab>MV;PMT^vq~hzbo|Sgz3PH-2Ty-} zA=6U8P*zQZtZx{+|B@(%=*i~p z#rxKU+z2Pg{m;U&Z9_ko)Wt{$oHp*?3kqIsdd8@ynqQ#a385S(cPHIOOW-hX*rnwlC% z=Fu}>oU~N=ocpFM94}2M<*C$6p&>6{n#=az@N{=ynV#NmsTm!#Tyfg|d^e?(7sRG| zffs@wiwjP;JVxk&_^1;o*Hw4`B5?D?$pAt1=Ca;MEZ1FUg9tHrRK6qr9y&sXBmeyk z>g$|pX26kZPmbmr5a^w8Yebud8%(`O z@uL5Hvt!Ym*`RUasmAA4TiEt}x4S`)SWO${8u8B>s$|@E2-W3Ni0`0VGq__54^E%} zg|L;8B68fQ6Ys}2Qc_^3*U%ux^w$u?3@N>1(Wwckiu81g^@=-dxRtz$5%#z3-aosG zhDRfC{ZhrFW8O^_&+&4$W+~kg1ch22UO9WmZtnR-gD3h1`sbdUP4K??@~Co0h<$nK zVhzd87ry)b+rdlu-__?qCLJNSix(&jI=n$w%W%Q2N0f;(EFd-+FPqx6CU>g|_Xi9_ z>UIyqfM*e5uNh+_Uq7o|@VWY(+-psgbZtTOR!quT)s|-Am{aMAG`XRc-fcGSDmC;r}nBMn4K z{#ga^9P;xGWCO%oK>_0ej*L$UX5a3vs=UU{3y7#&TE*YF>Pg7#m(oy7bp1XN`AsP@ zYJv&>9TsZ&EA?`M;6Qm{_23e)kvs%VdR8JM(v^cO#Q%93+08NzRZXIhz#CF_*Xh!@ zZpz(Uddb|&)5~$2V3Sx`mOGWaOVA3k!G&SGdfLdBS5D~JP*+@+YuDsgp)+JbLEUw_ zNDZ+y5exZJfO>c7Wq1dp9qPV@;9D3+ zK1JSY%~}1p>~Scq#_a&jm|o5-WR{+FNJ&;n3Z@8Ch>70Nno~HN^RVn;BALM@+tfR_pIL8�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%0DI^tR?`EE+vYVm2a96s+HHh{gD;W?Q>{TmIwbsPN zC1-|=aR0=;=bpPUf5LGjp!Vwx4_2^HggrzI6LyQJ-v0aX+F_nLs7vsYVZrD5^9ujd zhmO&@U$o-6!;(%;olm>VGxq2+*VWd>{2lbW>+>_lN5Ec-^?eTA38;n%;*H-GQa)Ee$D%>7m!_p>c;~ZY<6^;k0d85-98+-#h9gw1 zg_E(mLQZpYVV@qOWMSYlvLY5nCd%Y~@8I!56oU9KJni&YeneS_MWRMMf45ut32@ya zFgKcZSNl7C!}vt4?I25KT22lq@m<)td2Xp!C_vtsO|lBkAQVq?`T@b(!Did03;?kW zirXi~FSbMfz3`>@EH?o}T|J@OH}UDJMipcmzrVE;XVr9qx!=unC-e_F3yab@ppL4hQ0fhYxlp6^Sj2z{Hr09r;KEdmfK7bW1Sh4i78TJ?uOzrQp+Je-G zz=iB$X5)*=#4Jo$lMWtH#^V$@n7irV@DBp%{gx4X#$;kafmVnT z3jqIFT)zvEeexwpPQ-}KCy~ZKYzYB0Ey)tDvBQf5e-&&3gGy1~#Y>L6{fL9(hZkW% z7AV<}#-lAtCS4d3jWsIf)XT1aa$_Ti1-fD-fj9~qT2x5X*LyqG4!fDYL&}R9`yepu z|KQ05XY=yEB;1?mB<#WZI=TyDyJE21+fS~b5U_#~hiPm35aBS1mv?L9YmxN7yBgZd zPsFD~S}&(%f2*o30sfe9ei46l41e!FDSUPby2j!IUgfW$b2yWIX=>QN{yawxaOXYr z>@xzsIQe4c1Q$|$Fmt1OY7l#z5jPF9TmlIOmJiU#&y|i8t3A3!twOS4q$(rv;)gp_1p8vo9F#vNBeW1q&6HD2I`!12cBHa#W1CuldFg| za`xkgl&jm*ImZSl`HM^8)vTK_7z#l? z*8y^O-Ypb3POQR@889I*@HhRhr}0sRd?NnCq)x&I$Pvl}`4>Mmt&^lyU6Z6}fA~aT zGu(qfq9wQ#+=KR`B-HcLC9oLop{it$kzv>f@?n3xW!*tdG2TNBVaF=yA0xNB|1_R; z`yYLl|3VjoRI*`{!<3`l0wyR>K9dZ41W5psbP#NZYkdwROt zx6rG66P@N|JE0o`Vs)3+*LzwS3%kKIYg4;>S~bmu+(C!rd$qC~JRRI53ePW$){Zjd z;U7=$Qr^rr3Zpe@c+T4ddxoito(SDtK4gmr4+&4Um8yT*89-wn&6Y$N3N5@^#mI@3wBLE1=L?V8z>^h^11qBgh z17rQ|z4*uK4HfH~K5?}+oqzEKmPZAS9kb5_%zGp$U&vn}%ee?);K}WO4 zsu|(?a`gi(Bc)bh4^y>AeSqQ`kXz~w?&R^?BP8Q|;BwAn62Ee7SdXNDW?3m%EkEVWUrE=}E`%$6Nanp$f&k&LR0 ze(NuITIOZ7j^bDiR>C=8U?Y(e0@HD$#{0CwBBKY_ zq!**PHdrxcCVFy7g4>6c_)TJc2`&7Srq3zNcH>~b3>uk@j2{5 zoh@t4qN>Qf10!n2oxf%*Tdq3~A1?7&VO{m0FRBCyd}~c5M(gFRJMY;g60zaASc$$Q zF+g}YPe>FUhFS-2cA>Xu7X04IHgxKll?S zo&N^d5Vo2|){s@A?6 z+#3FDh}S=EiO^8&5_%nyGpd_|*T6Jy)3Y>de>>jpqhnb?P_!&P))YT7wjMGEs?UBcFJ5)8jChd@}^>6p})x9l&nhM9;BJ%Mlqlm zg1^86ZsQVzar+Xi;|$Yx2!FEPN5iapKYGtY*I3Tl${W>3{rgPvQ;H~YIk}==L$Via zmJB8)K!n<>lr#7I{b<}6-qRP0aHHCQlOAw1`?R%t1nYmCkg88bKO?L}b3#rx>X@4g z1VcsP2(0@{da(+&r54@vl26wYj%%uy@bQ|kyLYA2b3I-m{!d%-BmmuXwD{@C&UXjS zsKJEroc_J-3m>L^M3!*aUAInLl8Qi9+c{woWK$Tr)bW(B*q9@lzAek-{ySpKmJC?W zTD+2jQynk{A7$>w-V$uPZoBQ{_C4|DdD=kY*<$)Hg*LNmq^#NJ{=Dh^F%8lGw;|z8>l%aMCX=tyooVe?2mq~SRY)z2tRBBp!KbV?r%IF z1Ek*WHLjYwTt!jLZ zfyA~s`A}W52nzR$WEfXLO<1S(3myM#bAoyB4Ybzu(3uRk|HW7QrDa@+FC4LTa*Wka zZI7F_4$teP#ncPq8Q^gdgSKWa6GK9;K;WN0mx>zJ1zP|24kxaGz?I3ac{l|eN}+9J z$G@ivbsl2dvLo^?x^BRlc%~#7OVXapis0Bi$n-`*P$1`zaI03}AI4r1ULDiMf^4= zkM>2yQJK_Dg+q7!awuCJ76VHC7~wOuSl7m0y^Qe2KFek4CYPo}T*opj1AiW}y-6+e@iDbw$BiIVm10cIF{5Y0uM zgIFcUN6n){$Y*5(%1`)E%GH(8=BYoYmNwT2)iZtmE}So-sN>cgOSP7579Uq**&H~f zLk50%H~d*fS7D!VNG8;A>OB9@T*iF3!vM_7bl1tG;d$VsRBYMd?^iJ_`khTwCxZe8}m8Pjg z;Zib~TE?LZLHM$^?YzoRG2wLjxYhhwdAE#gcNq8hx|G(N4kTlz@lU`z5l=u)VVr6!_hP?;EM07BzJ9P{Zx_&fs4TwuKU874=!h z@?_&X(Bg!D6QM7{6$RWOzhAcPoRmF^CFpNjflU4h;08U3pn>hoD+S@SFDrva|5j1@ zRaiu}a)|#66Qonas-;^d;O~0zn9C)-Pp`XUG2p2=d|*F#8(<>Ox(D9x zHzjH6K8+dPc1a3ob;EblHR|KoceFPvRn#ZqVO-ke)?b=z%i!g-!~2a*;=9kO$TkloGE9JwN}yah;m`kt19vG_n>9hrA{0n0jRWT&XE`h>X~*DT zr-UXIFMsMBUt`)rEWHbXki9!efGD}s5$?q?lf;Oc=5wtHn^evcW7_8&9xV#-DJr=y z@?sM6r!D9XHBXsCe~JCbbHj2zcANT2;$P8&)IgrMZCadwHCE$4denK!^fWZlg+u5k z56Q4x2v9*}vLX3EVmTbR{GS0R{0!g=4?LBa$w)B;Sp$NfvUFPwqX;p#z?0NfN4+O#-sU zmL^K0koGe+nuq_LOu1G;q6ort)hoqwp;qQ8VWu<=s;1dm z(_QeelPmLfkSot-f%8BNf$mBS5x)J-?>g6{Yl}X8|3v@fLOtDHZo!f5CE(?-v?ZEE z+OI|GUzJ;)jFJl3?a8H4k)n4_ecL{|HtbyRmRBn~KLwNxru^*ThygT_B}p8lpt2Dd z11IGmhJH*|F`NU*eg-!xa;1vkyO)bhIpb+b>zc@4f76eD0zSjB_xigPEC-D5*n|!$ z%_Z*$X-@E~dtRc=68$sV_x=ssh+9L5#TdcVqRWUh(15j3~dwn9A}=y|Imb zSg54+Ah_kR4*`Shjx;3dQakkdC7vPEjUMhP%w_~7X+d8uq)zPVyXa%M3F;@Q8rTZW z2rxNIQ8bRc-l8HjPY+wbi9Wy!Pm;UFUSv0yx+re;j5OMf#=#9H68rV!GFiWQaWL0P zgNPNAC5N+9!5N6f5Qq~R$%7ISks@@|LqRd)G^d&K^m$j7&_BUeR50zI6?S$A+3r-% zrWq>cQ@Lq%^5<17&a39PKr$}77B}4b&qsO+pH+BDoz;_5^J|Su|5Hzx zZz!vDN{=SNN~a-7N1H?LfMXHIMkD{3$Wk~5nxBb8N3J{~+znh!_7!G~_x1G|sfM4{ zm!Ut?vxf1*E9ziC!Y&kNG}Q!Pn+zM^*`%J{%=65&9MpFdw?l0#ca%Q$7G0->@x=*Z z6OIXXq#o*RM&4o4YkXO)#rIf^-ThgJ`4H!bFf}d@GgcCl_+lAFGf_zDfpaKe87&L5 zJO+r>rt~1bLZu$32k0`5RIDcV1X{-5BkL)A3Tm?rhw86f+v1Y}pMXT)-XFRc#lQ+l z$bYb;6h+U@T_sz^7R^kPA7P#p+>wi72;lyFQ=IziwfaKO@UQ~(crudIpg89uEfLN5J;JSP`b<;Qga{DeIJ3F+}aLe8E&vW#9D zD_s57l` z`UG>504cW0Hu^r6(GO#$Ma@aPQKA#-z^sT?Q#o<43mAX&{yZVy_e>yB)_V6R3ZW7Z zK5&%go4rsgtR2MRm0dKxnUyw9Yr2bC@sf%4~`wI)NG0aF7S@JKVuF2zO${P9-|DG z)8LUkMRAKeFQfJGSTyzVXQcbYP>2Nc(%R9RGhT4WZ9~AY)C-f#Kwo-uLT6&yS)QXPLGh1cS2o{a16ja`1V> z&7bgenp9EK$;+cWMUJMWsI5|P_GVOJ+EL^eFt0h3q|0Wr-%RwGJ!TUt2SfE>%V?^= zuCHih^j)9>hhZUNoqh^~xJWgril)o^Xbdb`Na1TB?Qu-ZhaV|>z4%boE$Gqdh zjR*Q_}142u0ll*inV>eHq+!>LNh)$3*4X>5tudsa5g4^NPnRH&+I&KKY0;B#gD` zJ0EC~-(piwjkJWPcfy`Z=;4Oqffwk-T$6aWTH z(uOKkoaA$3Qk@din>y8xU#g#-!nC0RPqcB)1O+zeAwyO<5yeD%t>Q_XnVuK`57A0M&SXAd^i7g>t%nT5 zVP`G^OMMNG`#gzJp{MJ{q2AP=7J^XAV%QcO&^?hZexUQK8}J~sEakA#HeGjyVe&+k zJUh)9MaKJDkdhjeh+<>mE_EwF5jT<*3AF)eG!&{zAG81_-$xJz`^;!Uwl}Ng3?F=57 zN02Cuu-ybcJACkO`A+mfC^~(H>~VVRQ+(t@FVYCyZ`~#DCs)bjZJ~uymuM?t5!{ZR zD$-GKIN83A;P7FdfaE{S6hs+x6u6p0OlQ@j+!pBr)n>!!ILNh5yE`yHc6L6o1K=#M zeL`9Aw*7PU_P$$0*Mt7RaqDyQWnU9dJ2O|Ue12R;Hl+&}-rc~#U*D#~)2n8XC~0l<4g2M@T#iyMvE{#(YHY8M}(c0g;yXw*ugL-o!?uEGHGmc)Av3= z0}2>Rd}xB;f4`&;2!YVxX>!dQ_e(32P?0}4Nn;lSZZ%Fu2B948oeI3^XU?7<;O!f_ zcMW9a#C?(iQ$jLaMrT;SH>JY5;Vml5f{8f?CQRA6=H zCm9`QG<{&-*{oA6r{ODLy?3H%ufJ&D#2H;%sL}r&01x-4<%7FQ4kaFpTF9$4 znAPRNP7>c$RnDeUdAF4d@$$QoDUD6375pP`Y&EyOw>6a+MlMs*MB7p?_fWN2ekyZw zbXXm`56FCV=dW0ZeRPabZ~4RJ*?9`LgW>*snR15EF3}Rrd%a@ExycDEbJ8CC`h(VC zGQW-|`fBZw*n8bs&SoR2LR(t2HYN7vj$RiE-{;<+Y8KWbUHzg1Oeq;Ps5I$Di-vSI zJH>*oAat%}>t5_Wa-8xUAJirIJlzqkfqBMAhhk!*FOZe2{B0J@dF95ho4W0c`FuUB z%55oOief=!gzTF5?Re5|xFX|+rOBEWAm-d$+1SCDM$Okzr1yXW~GTs%x?c z0^b%_4%^3G=8^3vB5o0OQFI`^c;=q%B$Cf1cycv2FuKxWdd_@GK`BYM4;tCPShW2XojbCgA+ zL}}6p--%aK%^+4~bA!4IfA?bVs}pMjCe{S2=cxe2Y-);1afNPE^A6AL%8)6s&5QBv zeDC3S57>>6zz6tp&mL;wvhJkcx3)+JWHSw9{)!k3%bg%co>OmI-~;A)X>ojy4z{)s zQ83$Pd++B^6TRP&zZU2S!Pgguw++#_-=gK$Yv@B;E}a-C2UGlBjb4c!JsR~@BJqxI ze{PREki(a=v?#MI>$3bf0@suXG0t)VPIob~apt%G(kJvEF|%B|5^1bbl03OFBg_u@ zk3C(!ZWzzow-=?l4oX$a#0cOgZlpTBB@G<*bhPU5Myuo_U^i=p;a<>I-C9sX1y>aX z82KaY>v9}Pzmp<3!?HkaY&i_VB8fS#)Cb^o*gQmjam+-4?wY^{=0}{gM|Q{p{kYZN zh~Jbw=gD|u)^-B&`Ku~b7WGmb*m~E-ga+lyFpF{wHy60yK-5#yRTnIjtYVR1LP#$+ z{!dbhd&f<^-A-7siJCw7`*9EhxI~FJSV2GFS08V_fWaR)Pxdp)bJ>LX-0%+Kr|$a!bQtPu@Bet0*gEN;dC~mFhF<*|5(p*sZmhJ7K`Vx1Jfb1983VOHZWL z;OD^DfTSG(uG|wrtJbsE_<-WVK+k;VX)c@8e$cF!dAhqP{VK2>7mtE2>bhbv_uKP-oxYE1FIsvx6d0t-BI3En_F82_9OeD!tC?xmV@k>pnEm9 zSbsI-<9PF40=%u9K)-zIMff|V%7>bMAfGBKxK?2~c?#uo0T0s#8}IA-C)7zWyX{{h zGhGh3Vm5T_UfI7LOuwg&hN`40P*)>kdEjH`V4k?>f zI$_Kc26bVRD9Eb;%M0otznh&r9*27bErLk@oDKC0P{bNk#6$36{0vi0DR)2FJA5}< zb_c)B9x{1fX7fk#{J4kvasmD&+|EFF+o7nYj}PWm0RuT|PRR!UTi{xdFZ+fu^}xgf zGL^Eq2AYc;F~E+*$jbqdS<8RPH=ALPD)Rotbr4pDx z36Zy?(wQTWzZRd?k4TN1Z6uhWpwmJ5s*s!CeL_Zbn)?gDMe*OjAl*l-T4Zcm`fMUc ztt-~?i&lX9`M(C5m-7i6f4SfaaR+#9Tfh$}Z505f6Lic4)=>sZW~H07BD+?u9HdC( z;I9Pd3jgRNAN%O7vTJ#g5v~G|m+Im^_nMaZ*BWso{38x%*THJ+dqFQDOO#*nO}{Ey zNQ!1#3Qo_o6nXDkK>T%u_i5;Y^n^#3t2c&(4xr5bB+k-_(X6&%@Xmqmtm^t@qn0s$ z2vt86kmSyF#?z5j?}p~whGF$b_%MqU8HHtP-|tmqWpTt`v1US}Q?S%i+bW!OS*Y1b z@w)+If$p=ZsXTy4|Esi6&!Dw%p?Z5uThvwp*f6NO$#RtTCrwQ9$o}czj6jo7!d~ud z-;CiN*gK-H9H!}Ee-foPS`1PW7 z`&EGJq;=XH)G&FByY9*W0J_V7^p|FZ@E^P2z`yMnJO>brTdHU9X*4P@?cP4a{IL1R zVgfpfeNTBAFwZdG{%6Pp^WG3nzz_RhwHvMI-paZU9(d66HG5yHs0C8|)P^9_*#Y;g zji{Tdw2equ1Lx58$xWQDaxVSgGPbF^7+@&BCe_NQ?-(zx!T*Rb4eDqHwL~*LnoiX; z-Rmy>5kWlIp`i}Ysy7ngMrb1|Dkd`ddtVmhT@>T1Z3*eiRT^Mcg>d=ObOH89Cn!|s z?P#BR*!VBmIgnAQ_2y8Y#@0$u+fg{Fo!>B8-mQw?I9lG_&lT^#?tekey5Z)nnx=Y6 zXzaecLxFn>>T&ss=Iji=Lm~Il0<{nf;Im5Z2rEg7!zw0MoYclXc*l$I7b$%6k^tV{ zp^D#m<_-Pk+em*kcI_4t1YMjD&QSM_cj03RV!84%L1~P{_x42)lO>>)d**_SkCUJI zvB){8AlfBwrsH3H>$t~Lbp*9ip&|Q%fZ57^J~{lPj^{}7@_DPe%(O1t1{*)wr3m9$ z+jD9gNi_iIrz}DXu}WOrvbZXW2%$WsRqB=pwjCv z0{Jjpej60L3kp&J<^#jYCX5$nu`10!DxWiK=hxyXW{I`0e-%;wxq^X}&OXaQS=LF2 z0v#Mr5$iYQepT0J=z^uceg>XGXgenoQJRSejrkyNG{>?=}0QO)|N}d z;|g>}R_2jXqi|t82Uc6fbuJPmIJqC-2V8$<0PzwrZ&#?clFHho!HqycBjrTuL4VVF zs=h7pS|1Ao5#qmji9e<6f%oZz;kIuOvpH}EWz8T`y~+;85@7m_lZW9YCzh~wI#sy! zB@sQs#sahBe{^PUa=SeNMqcLIFoIycq;AZ`f?{XmX)&xb^ z==U4P4kCntCR>yxKM%>Rbn=0Fs99#M!LYe}(eX~h{6VRe?T9KMl*c0}{snBvIAlrM zxkiEKmsW%Fpy4XF724s?^^pA=Ue$~W!qMVuI-?rUMxA0CHx^07hz@{sa>O1fjl)LZ z;%k@FAP%gyl87Xcec;?Sf|jWICCD6^0CbXoy|Jkx;=3pEK?01E8n<*7a^r&JVAum* zhV))3AyPK4ZEuKdokYZTJ$Jx?51~T0RaZzogO2ZDdChp-o+o*hV!4f)ooBvnPsek z)!xJiMuSwfVxQGdiiurjl060s`}%p$R)jDlh#Hh6L{I?fD+~`LTFq_pyfu7&0rhz- zq3z#NLf;S63aaQ0UmKJ;|62cMUs+qfbM!S!ZX?Qf@5c<5$Z)v2;e9G}S-93ySXHRR zyk^1Hf3`|~JMcyltatj93P=H>ttcx#B+9yna$ZHs-&`>?>2j(9><3BoWvmjcrHdK< z0#VT|o93R|Wh9B$$33}|qa49%V;NRrvSV?J3HcA#$BpZ&$-xrmBg>@6aG(ZO*E4q=O#L3!V&X0O}{p;4E$ zWG1UM-x7zgPjiX|8X9K&Z|z+NR8!g3R>v8NA}Wpph;Rj^X}IYP2m}aHq)1f+nUos{ zB)Kt#W>+jI*n3w*6a_mdirCv&kfNY~on}D=v0(X65=ubFr|+M){R)`H}ov)kQ! zpL5Uo;ADSVcyQtrXj4v{=f1wSlWZoK=GtUi{Fy*Ew#FryzwH0JsdU=S7Z2j|-0*B8@e?J?7<>*Wvj+wmT=jejL0j>&E_~#KItfizsB0L*H?m-54UmA6~9U z(neUh>Uv-}mrtd7!~|c{8OJQv)hn-OyZCZVo>dJ1_ zSIP_KZGPf%j&gM=lhWVGbnGLydEqBT`=`Ny3C82~-oKdV3o{RCA2d6`HGWyUu)gLd zZTh>FzR2mdN9QwU4;bg$r^>E5)ojC?l0a?AlKn@Xhp*EwNh;{2`^TX`;d2A#{3&5o zlVG!#^CchiF7HUA58XIud(|SRL9je#zV@s!I!wpK3kKxqz34Z3&FO zEFUp<|Jv(LclWJza{8S8r{|LJqFFl%`;=PxZeBWg>)>-|5~tdNziJOEGsg5z_x_6s?lD>h_!9f8!w=o@Iu|z{?d_RgTDAFh5!Wh_-Lool zjAF!DCYmJw@TSbC$vU3DqCSMZ&Csgy(5q3C?p|N8^~oUTowaYv*R7ym9v+)kDcza6 zDg}{qFTPHm#9Y%9xeqzH^t!!!9#lLxI_T)68(}^6|4BuQ0(2{NvkG<$$vwv0 z+v|m|0p@K|Wrq1y9Ms@FD0a0^r6+oG$f=+c;~(xRKRK89VQ$}uD;7mH>svUfC-qS0 zx3`P~R;@Cy6k!Hk_ro=;c<(&ZqxsXh?HMw$V{ySlS?eZl(tO|c2$=u?{#&YC`OyV)~yj(@y)^)u7qJ<@Ma zMdzM8x@nATnb9Syhna6>Psec1j_(_OT&J((s#vGEF6nc+Zt&LDp+2R5UU4=I8FE1< zXj66H5Uq6fTa%X0t6O41S5=t@1||9UMIaLu`jQZ$L)>CG16-J9Qv&1 z+x{7YTdzGEynO9$OC6J0Cr_QawuDQpxNxo2w8FIIlW%LE#`OIQOBoA}X*Z@9PF`D; z{;XQ|rgYg9=aa)OSgh2g?^!~)yI5BDS7}Yiav5pB_2P)NM|5N8&QZ)80Ru6Ax#kbK z44y%#(5F4(On(N5we z-QU-<4tHweazbt0FjGebYHuks@k;d=x&mwdaH#Hyi!%q*?Rsm2E9>8!7M7&vXjp&6 z!E$f_9JYvw+S%;3OKNZs1R2d@q+T)6IcjL!%u0<+p4h8ET;vqHiFhaFwevF3!{ptk zw0dK_>j!`>`}@=$Xr7U@N5V2g-pj*9@>3QfJj2=Ek+k^GuovRK3EO>Y zW(-(5?~=sx)TU(_sgqM=w4~@q-nK0p8h#yUL%3S zkb?^*)QrE)_=7>y!RC-pw2xD~8HFFFK4@x$r~5ipiJcwpR$DF(FI&{u<5|?UdHHV! z1wUzyshrYEp8EdrygOzkwL?tY^N$*6_Xt?mlyB)7QQDk!{Nmn&k;z{ERm+#41HU3%Atg@rA!Vi#UO;J2-zT>tbw{1p4%hjWHI^mYugt^THmC_GlSahbvyeMBScF4W8~=!BvW7!nMW^mIU6~UZC~4DrMOnv7oR_-m7WytmV@p;tUpCEEKOV+Thb` ze#p7WCf7p+GvADQESKrG91FTYH3;Y0SM+~iH`pxoff~9A3LJ)8EYEPLV^SWeR`sz(@Tnn)jU_om9ay!7&o*^Oo0sSTWk(qksJX z=)jODt+`aML(};CXoq{fwDnxKi}c8*IrhQ)ZHc|3p58en+Ue@e1kZe7ESOcJsu&3pk7OjAvFK z!=y#JOxI;x%-ZTcL%(HNd9#aI-rD=D=1g-dP##u~Y1Yu!9%}L08N9+&>XBOwwu|a-;MU^VE+q&5|>}T%`hLPnr*~eM=kF<>uT37<@a&hl2X6e z6||=Vrt^S0gD2HN~j03 zNz9a-Ya8b#am8my)`GKVJe*h0oHpj%T5)ks#_AdFXABH&0`q1#VGk!g{eAtyTxvpu z>CuR=!n2hxcAFgK6|%4DYA)1-jhbzWQe=#&>F*07P zdAxIrm1wbe;huwn8v*fl3*X!64qqcE8W?u%_Ju6{JnN$0OGNe0ZTgXPpP7#yrXyK% zp!A_c)OYXU?A)jK8+ykzv@E@4pP3es#%kz6pC}!AAgWmLr(|-)Lxo2_M``QUCm!dX zm24^7vZEKz*}&EF*LlQ}nOF4(noiWu@V9&qyZD&yZK?c{CqHp)q~ z#%+JDt!wCme|UU>$1IzOdTw&v-DHnh3o(7>&mWxB+Spugmhp1f@Y0-0ladwk)4Bnn zpt$hW{uie^!uUdXdWw9SO-PaL*ur{(&d_W^;_M|s74Jmv9XCe4*c~$3LJ$=ellv<0 z0CSAtvb+WF4@TSA)kBQJ7dIDhF6C$49{jGZ`s9S?3q7#h@pE2y?Md@+-+>FzE;on{ zqCXz#btb&jeXWb&jazl|0o0$v+}}gUiSk?5c|Ol#Qx?(m&We z7x73lar8~I)jE9E{!R|AYPo}p?GY=(r7>~AK5i?^Or8(AF->f|vuDf)%Q*9_Du!p( zc(=yo#L+1M{MG3>L;SP*^?Y1F+VVDEzs~NjxBXsRJ&?CPXL^# zyoWG#18|rSk;w$GP)&*=uuR>PqC2y+!uWe5_%1sQ|@jYY&9wiH}Z z;SRxERFbGR4wdrw2)JQ^82FWfhlOaAfXfzwQvt9Y_{Br`uoQ_B$mGBz9xP&WmBHj8 zQBnkfB|?Qv?JIdaDpLT52~a64j|P1mS8T3Aj=&-XgrgFaE)}3WW$0DXxS$}bP{@Ws z+&k!jJtDS@s}QOTqEeNelN4+z;81>yW()ah4Q-7wP+JraGgXNJGu7Id8p*~~r4r2S zxOJu~!I&)AwOu_+&CF6Wvox4l9bBGj8c#Kirv{B@2MtRe4g0Fq`KihM)Z~5|R;Bbzbm#yw*Yw)tw zYS|qk*eW-$!SHN%1BfXYTri?$Ml_f~nA#Fjpr#S1X#^THf({x4xIwH|hpNd@H94w5 zj4C=drX+z^^i$-nQ z_NueW8nZaqmn}kI4@4LTyMW>Cj)I9vd4drp7+b=31BP+f;4szKgegxOwF&c8h-Bcj4qjFHHbO(8vY}le?55G7c>oJl zh~*Hmvxcw?_7?EKysRo245(cNLl=S|2QcT+ z1Kix(bb%{J^JuwTLWkk__;|Z`f*mT2fN7b_n9KCaZJG(j+De1XVge^yufPp+<7RVtZ6dDqrXTa-be z3)$i*NAm;>c>J)z{AkYb5r7Ae4CTwAQ1FC+Fp!&!fW;EXkpVdBw=C_dNM&gko7B7- zF>E(WWu`{^zlv=FThb9+vCK}Dymnkv1cMF`SZvq8f=0TlGE#^e_+fw?rDAY+43-*% z!_rAOI*9^4(?Qu4CA%hNXD}Q(dQfQ)iV7M2fvP+t+3|!zC7X_{ zPr*f`3?@i2Ffl`JU@(A{2_l84b|7|;b*MnhL*r#O4saLxf7)~qQXikM8xOivX(SSL zwO_?TcSFJA8q6V{ZVZJ&z@zind@hMgLoif4nS&v6cr*<7!DFaoK8{P_QQ24;SCth$ zKAOB;Lkjvl#WFb?Ea%(hQouiWad0>UgAnjs43Wx4Fl-7CPM{D7d@PSjA`v+4ay59r z=_hsI!E_8B1E5e~+jF3O9CplM|B(-!H~b$FuNL}K$qzaAr@MZ->xVq>L&QI`>!-VZ z$OAt_{4=}$F?Z>9?j!+*=V%@e_K9BsE%C~)&}iGLs#ers)vH{BTD#Get7;q`{9s8q z)q>gzi?yor0h|?2zVM5AOy-6ByMjb;3;5J z-@T0nAm46nM5RZ&v=ONUCB)IajRL@iZf#^zcO673nffIi2+J3|G-7vNa95P>wvb6= zC4kXIFPTIETl{WqWGvYGf6<2jk`71e-bSI&zR&^MzPJwx4fln8fR)_cW(ti!?0&zX zjRF9rF84v95wYEU1=_yQ0m4DhhzG!v1z@Y9rwd^FKtU1$k^>}+E?BrrB@q9{DOUhpr8Pz zZ=h#jkY7N@7HH`$P2KPiFAvgf4>Gwom_Lmi~9+sXP*vP2qAl z7%ZMl#Sn390)|bckug*rfy!lbu>>Na1E>9or-H;&zJ6}9)qeQS-#^{;osLqI{dCt) zcm0qDeu(&IcKvkM4|(8+h`*Ix--)NH5hH*S;o6WxDiKT6K*#{RgYW3U5xe76R3ee8 zfxCTyO@aR~3_wviq=KOWU{5h0g;a8%wjmWQ%GbtH>L~Ag+Ov;63H|w(S?b_xlnL4CZ0sZF(Lp!i^M?y^Mbm;U{rub Ib^>Al12be>!vFvP literal 0 HcmV?d00001 diff --git a/Notebook b/Notebook index 7ba2524..654b433 100644 --- a/Notebook +++ b/Notebook @@ -3,8 +3,85 @@ http://www.fourwalledcubicle.com/LUFA.php To Do: -- figure out the nConfig / nCONFIG wiring by inspecting my real Pluto-P - figure out if all the unconnected pins on the FPGA match the Pluto-P - verify pin configuration seems to match the data in: ~/src/emc2-dev/src/hal/drivers/pluto_servo_firmware/pluto_servo.pin + + +2011.12.04 +- results of physical inspection of pluto-p board + + 22 ohm series resistors on 7 pins between FPGA and 10 pin header, including + pins 5, 8, 9, 10, 13, 16, 93 + + ** these are din_1 through din_7 .. makes sense? + + **DONE** + + pin 50 has an LED and 1k resistor + + ** my current design has 330 ohms + + **NOT DONE .. CAN CHANGE IF NEEDED AFTER PCB FAB** + + 10k from pin 25 to pin 44, cap from pin 44 to ground + + 44 is VCCIO, 25 is nSTATUS, so this is a pull-up on nSTATUS + + **DONE** + + db25 pin 11 to sole pin side of one "1L" transistor, one lead to ground, + 4.7k from remaining lead to pin 87 + + db25 pin 11 is nWait .. so it looks like nWait is being driven by + a transistor from the FPGA DEV_CLRn output, not directly + + **DONE** + + db25 pin 12 to sole pin side of one "1L" transistor, one lead to ground, + 4.7k from remaining lead to pin 6 + + db25 pin 12 is undocumented? + so FPGA pin 6 is able to drive that pin through a transistor + + **DONE** + + pin 49 hooked to pin 51 .. nCONFIG driven by nConfig + + **DONE** + + osc pin 3 to pin 91 + + consistent with my design, 40mhz to FPGA + **DONE** + + 26 pin header pins 11 and 12 to sole pin side of "G1" transistor, both other + leads have caps to ground, one to pin 24, the other to pin 37, 35 + + those header pins are VCC? + pin 37, 35 is VCCIO + pin 24 is TMS + + WTF? + + SOT-23 with G1 label could be: + + transistor, 1=B, 2=E, 3(sole)=C + fet, 1=G, 2=S, 3=D + + so: + TMS is driving base or gate + 3.3V is on emitter or source + header VCC is on collector or drain + + TMS is 'test mode state' on the jtag interface, which drives the TAP + controller state machine. TMS going low starts a cycle? + + 4.7k between pins 87 and 90 + + pin 87 is DEV_CLRn driving nWait to the PC + pin 90 is CLOCK hooked to db25 pin 1 whcih is nWrite + + why not treat all the parallel port input pins with transistors? + diff --git a/cncfpga.sch b/cncfpga.sch index 932b189..1537c47 100644 --- a/cncfpga.sch +++ b/cncfpga.sch @@ -48,35 +48,33 @@ vendor=none T 59400 41600 5 10 0 1 0 0 1 nobom=1 } -C 42500 41900 1 0 0 EP1K10.sym +C 43400 41700 1 0 0 EP1K10.sym { -T 36100 40300 5 10 0 0 0 0 1 +T 37000 40100 5 10 0 0 0 0 1 device=EP1K10TC100 -T 43100 60300 5 10 1 1 180 0 1 +T 44000 60100 5 10 1 1 180 0 1 refdes=U1 -T 42500 41900 5 10 1 1 0 0 1 -value=EP1K -T 42500 41900 5 10 0 1 0 0 1 +T 43400 41700 5 10 0 1 0 0 1 loadstatus=smt -T 42500 41900 5 10 0 1 0 0 1 +T 43400 41700 5 10 0 1 0 0 1 vendor=digikey -T 42500 41900 5 10 0 1 0 0 1 +T 43400 41700 5 10 0 1 0 0 1 vendor_part_number=544-1828-ND -T 42500 41900 5 10 0 1 0 0 1 +T 43400 41700 5 10 0 1 0 0 1 footprint=lqfp100 } -C 46100 41400 1 0 0 gnd.sym -N 44600 41800 47800 41800 4 -N 44600 41900 44600 41800 4 -N 45000 41900 45000 41800 4 -N 45400 41900 45400 41800 4 -N 45800 41900 45800 41800 4 -N 46200 41900 46200 41800 4 -N 46200 41800 46200 41700 4 -N 46600 41900 46600 41800 4 -N 47000 41900 47000 41800 4 -N 47400 41900 47400 41800 4 -N 47800 41900 47800 41800 4 +C 47000 41200 1 0 0 gnd.sym +N 45500 41600 48700 41600 4 +N 45500 41700 45500 41600 4 +N 45900 41700 45900 41600 4 +N 46300 41700 46300 41600 4 +N 46700 41700 46700 41600 4 +N 47100 41700 47100 41600 4 +N 47100 41600 47100 41500 4 +N 47500 41700 47500 41600 4 +N 47900 41700 47900 41600 4 +N 48300 41700 48300 41600 4 +N 48700 41700 48700 41600 4 C 55300 51300 1 0 1 conn-25.sym { T 54845 61195 5 10 1 1 0 6 1 @@ -193,21 +191,21 @@ N 68600 49800 71500 49800 4 N 65900 51800 65900 50700 4 N 65900 49800 65900 48500 4 C 68700 49800 1 0 0 3.3V-plus.sym -C 45800 60700 1 0 0 3.3V-plus.sym -N 43800 60600 48200 60600 4 -N 46000 60700 46000 60600 4 -N 43800 60600 43800 60500 4 -N 48200 60500 48200 60600 4 -N 47800 60500 47800 60600 4 -N 47400 60500 47400 60600 4 -N 47000 60500 47000 60600 4 -N 46600 60500 46600 60600 4 -N 46200 60500 46200 60600 4 -N 45800 60500 45800 60600 4 -N 45400 60500 45400 60600 4 -N 45000 60500 45000 60600 4 -N 44600 60500 44600 60600 4 -N 44200 60500 44200 60600 4 +C 46700 60500 1 0 0 3.3V-plus.sym +N 44700 60400 49100 60400 4 +N 46900 60500 46900 60400 4 +N 44700 60400 44700 60300 4 +N 49100 60300 49100 60400 4 +N 48700 60300 48700 60400 4 +N 48300 60300 48300 60400 4 +N 47900 60300 47900 60400 4 +N 47500 60300 47500 60400 4 +N 47100 60300 47100 60400 4 +N 46700 60300 46700 60400 4 +N 46300 60300 46300 60400 4 +N 45900 60300 45900 60400 4 +N 45500 60300 45500 60400 4 +N 45100 60300 45100 60400 4 C 66800 51200 1 0 0 volt_reg_pos.sym { T 68400 52500 5 10 0 0 0 0 1 @@ -248,47 +246,47 @@ N 67700 50900 67700 51200 4 N 68900 50900 67700 50900 4 C 61300 46700 1 0 0 5V-plus.sym C 63000 44900 1 0 0 gnd.sym -N 42500 44800 41100 44800 4 +N 43400 44600 42000 44600 4 { -T 41100 44900 5 10 1 1 0 0 1 +T 42000 44700 5 10 1 1 0 0 1 netname=40mhz } -N 49500 49200 51500 49200 4 +N 50400 49000 52400 49000 4 { -T 50600 49300 5 10 1 1 0 0 1 +T 51500 49100 5 10 1 1 0 0 1 netname=led } -C 51400 48300 1 270 0 led.sym +C 52300 48100 1 270 0 led.sym { -T 51750 48200 5 10 1 1 0 0 1 +T 52650 48000 5 10 1 1 0 0 1 refdes=D1 -T 52000 48400 5 10 0 0 270 0 1 +T 52900 48200 5 10 0 0 270 0 1 device=LED -T 51800 47900 5 10 1 1 0 0 1 +T 52700 47700 5 10 1 1 0 0 1 value=red -T 51400 48300 5 10 0 1 0 0 1 +T 52300 48100 5 10 0 1 0 0 1 footprint=0603diode -T 51400 48300 5 10 0 1 0 0 1 +T 52300 48100 5 10 0 1 0 0 1 loadstatus=smt -T 51400 48300 5 10 0 1 0 0 1 +T 52300 48100 5 10 0 1 0 0 1 vendor=digikey -T 51400 48300 5 10 0 1 0 0 1 +T 52300 48100 5 10 0 1 0 0 1 vendor_part_number=160-1433-1-ND } -C 51600 48300 1 90 0 resistor.sym +C 52500 48100 1 90 0 resistor.sym { -T 51200 48600 5 10 0 0 90 0 1 +T 52100 48400 5 10 0 0 90 0 1 device=RESISTOR -T 52000 49000 5 10 1 1 180 0 1 +T 52900 48800 5 10 1 1 180 0 1 refdes=R1 -T 51700 48600 5 10 1 1 0 0 1 +T 52600 48400 5 10 1 1 0 0 1 value=330 -T 51600 48300 5 10 0 1 0 0 1 +T 52500 48100 5 10 0 1 0 0 1 footprint=0805 -T 51600 48300 5 10 0 1 0 0 1 +T 52500 48100 5 10 0 1 0 0 1 loadstatus=smt } -C 51400 47600 1 0 0 gnd.sym +C 52300 47400 1 0 0 gnd.sym C 59700 48500 1 0 0 oscillator.sym { T 60200 49900 5 10 1 1 0 6 1 @@ -329,347 +327,343 @@ N 59700 49500 59200 49500 4 N 59700 49100 59700 49500 4 N 59200 48500 60600 48500 4 N 59200 49400 59200 49500 4 -C 49500 58900 1 0 0 gnd.sym -N 49500 59600 50900 59600 4 +C 50400 58700 1 0 0 gnd.sym +N 52900 59900 53400 59900 4 { -T 50400 59700 5 10 1 1 0 0 1 +T 52900 60000 5 10 1 1 0 0 1 netname=pp_12 } -N 49600 59200 49500 59200 4 -N 42500 51600 41100 51600 4 +N 50500 59000 50400 59000 4 +N 41800 51400 41300 51400 4 { -T 41100 51700 5 10 1 1 0 0 1 +T 41300 51500 5 10 1 1 0 0 1 netname=din_2 } -N 42500 51200 41100 51200 4 +N 41800 51000 41300 51000 4 { -T 41100 51300 5 10 1 1 0 0 1 +T 41300 51100 5 10 1 1 0 0 1 netname=din_3 } -N 49500 58800 50900 58800 4 +N 51900 58600 52400 58600 4 { -T 50900 58900 5 10 1 1 0 6 1 +T 52400 58700 5 10 1 1 0 6 1 netname=din_4 } -N 42500 54400 41100 54400 4 +N 41800 54200 41300 54200 4 { -T 41100 54500 5 10 1 1 0 0 1 +T 41300 54300 5 10 1 1 0 0 1 netname=din_5 } -N 49500 58400 50900 58400 4 +N 51900 58200 52400 58200 4 { -T 50900 58500 5 10 1 1 0 6 1 +T 52400 58300 5 10 1 1 0 6 1 netname=din_6 } -N 49500 58000 50900 58000 4 +N 50400 57800 51800 57800 4 { -T 50900 58100 5 10 1 1 0 6 1 +T 51800 57900 5 10 1 1 0 6 1 netname=down_3 } -N 49500 57600 50900 57600 4 +N 50400 57400 51800 57400 4 { -T 50900 57700 5 10 1 1 0 6 1 +T 51800 57500 5 10 1 1 0 6 1 netname=down_2 } -N 49500 57200 50900 57200 4 +N 51900 57000 52400 57000 4 { -T 50900 57300 5 10 1 1 0 6 1 +T 52400 57100 5 10 1 1 0 6 1 netname=din_7 } -N 49500 56800 50900 56800 4 +N 51900 56600 52400 56600 4 { -T 50900 56900 5 10 1 1 0 6 1 +T 52400 56700 5 10 1 1 0 6 1 netname=din_0 } -N 49500 56400 50900 56400 4 +N 50400 56200 51800 56200 4 { -T 50900 56500 5 10 1 1 0 6 1 +T 51800 56300 5 10 1 1 0 6 1 netname=down_0 } -N 49500 56000 50900 56000 4 +N 50400 55800 51800 55800 4 { -T 50900 56100 5 10 1 1 0 6 1 +T 51800 55900 5 10 1 1 0 6 1 netname=up_0 } -N 49500 55600 50900 55600 4 +N 50400 55400 51800 55400 4 { -T 50900 55700 5 10 1 1 0 6 1 +T 51800 55500 5 10 1 1 0 6 1 netname=up_1 } -N 49500 55200 50900 55200 4 +N 50400 55000 51800 55000 4 { -T 50900 55300 5 10 1 1 0 6 1 +T 51800 55100 5 10 1 1 0 6 1 netname=down_1 } -N 49500 54800 50900 54800 4 +N 50400 54600 51800 54600 4 { -T 50900 54900 5 10 1 1 0 6 1 +T 51800 54700 5 10 1 1 0 6 1 netname=up_2 } -N 49500 54400 50900 54400 4 +N 50400 54200 51800 54200 4 { -T 50900 54500 5 10 1 1 0 6 1 +T 51800 54300 5 10 1 1 0 6 1 netname=up_3 } -N 49500 54000 50900 54000 4 +N 50400 53800 51800 53800 4 { -T 50900 54100 5 10 1 1 0 6 1 +T 51800 53900 5 10 1 1 0 6 1 netname=quadA_0 } -N 42500 43600 41100 43600 4 +N 43400 43400 42000 43400 4 { -T 41100 43700 5 10 1 1 0 0 1 +T 42000 43500 5 10 1 1 0 0 1 netname=quadB_0 } -C 49600 51700 1 0 0 gnd.sym -N 49700 52000 49500 52000 4 -N 49500 52400 49700 52400 4 -N 49700 52000 49700 53600 4 -N 49500 52800 49700 52800 4 -N 49500 53200 49700 53200 4 -N 49500 53600 49700 53600 4 -N 42500 46000 41100 46000 4 +C 50500 51500 1 0 0 gnd.sym +N 50600 51800 50400 51800 4 +N 50400 52200 50600 52200 4 +N 50600 51800 50600 53400 4 +N 50400 52600 50600 52600 4 +N 50400 53000 50600 53000 4 +N 50400 53400 50600 53400 4 +N 43400 45800 42000 45800 4 { -T 41100 46100 5 10 1 1 0 0 1 +T 42000 45900 5 10 1 1 0 0 1 netname=quadZ_0 } -N 42500 44400 41100 44400 4 +N 43400 44200 42000 44200 4 { -T 41100 44500 5 10 1 1 0 0 1 +T 42000 44300 5 10 1 1 0 0 1 netname=quadA_1 } -N 42500 45600 41100 45600 4 +N 43400 45400 42000 45400 4 { -T 41100 45700 5 10 1 1 0 0 1 +T 42000 45500 5 10 1 1 0 0 1 netname=quadB_1 } -N 49500 51600 50900 51600 4 +N 50400 51400 51800 51400 4 { -T 50900 51700 5 10 1 1 0 6 1 +T 51800 51500 5 10 1 1 0 6 1 netname=quadZ_1 } -N 49500 51200 50900 51200 4 +N 50400 51000 51800 51000 4 { -T 50900 51300 5 10 1 1 0 6 1 +T 51800 51100 5 10 1 1 0 6 1 netname=quadA_2 } -N 49500 50800 50900 50800 4 +N 50400 50600 51800 50600 4 { -T 50900 50900 5 10 1 1 0 6 1 +T 51800 50700 5 10 1 1 0 6 1 netname=quadB_2 } -N 49500 50400 50900 50400 4 +N 50400 50200 51800 50200 4 { -T 50900 50500 5 10 1 1 0 6 1 +T 51800 50300 5 10 1 1 0 6 1 netname=quadZ_2 } -N 49500 50000 50900 50000 4 +N 50400 49800 51800 49800 4 { -T 50300 50100 5 10 1 1 0 0 1 +T 51200 49900 5 10 1 1 0 0 1 netname=dout_0 } -N 42500 55600 41100 55600 4 +N 43400 55400 42000 55400 4 { -T 41100 55700 5 10 1 1 0 0 1 +T 42000 55500 5 10 1 1 0 0 1 netname=nCONFIG } -N 42500 56800 41100 56800 4 +N 43400 56600 42000 56600 4 { -T 41100 56900 5 10 1 1 0 0 1 +T 42000 56700 5 10 1 1 0 0 1 netname=MSEL0 } -N 42500 56400 41100 56400 4 +N 43400 56200 42000 56200 4 { -T 41100 56500 5 10 1 1 0 0 1 +T 42000 56300 5 10 1 1 0 0 1 netname=MSEL1 } -N 49500 48800 50900 48800 4 +N 50400 48600 51800 48600 4 { -T 50900 48900 5 10 1 1 0 6 1 +T 51800 48700 5 10 1 1 0 6 1 netname=quadA_3 } -N 49500 48400 50900 48400 4 +N 50400 48200 51800 48200 4 { -T 50900 48500 5 10 1 1 0 6 1 +T 51800 48300 5 10 1 1 0 6 1 netname=quadZ_3 } -N 49500 48000 50900 48000 4 +N 50400 47800 51800 47800 4 { -T 50900 48100 5 10 1 1 0 6 1 +T 51800 47900 5 10 1 1 0 6 1 netname=quadB_3 } -N 49500 47600 50900 47600 4 +N 50400 47400 51800 47400 4 { -T 50300 47700 5 10 1 1 0 0 1 +T 51200 47500 5 10 1 1 0 0 1 netname=dout_1 } -N 49500 47200 50900 47200 4 +N 50400 47000 51800 47000 4 { -T 50300 47300 5 10 1 1 0 0 1 +T 51200 47100 5 10 1 1 0 0 1 netname=dout_2 } -N 49500 46800 50900 46800 4 +N 50400 46600 51800 46600 4 { -T 50300 46900 5 10 1 1 0 0 1 +T 51200 46700 5 10 1 1 0 0 1 netname=dout_3 } -N 49500 46400 50900 46400 4 +N 50400 46200 51800 46200 4 { -T 50300 46500 5 10 1 1 0 0 1 +T 51200 46300 5 10 1 1 0 0 1 netname=dout_4 } -N 49500 46000 50900 46000 4 +N 50400 45800 51800 45800 4 { -T 50300 46100 5 10 1 1 0 0 1 +T 51200 45900 5 10 1 1 0 0 1 netname=dout_5 } -N 49500 45600 50900 45600 4 +N 50400 45400 51800 45400 4 { -T 50300 45700 5 10 1 1 0 0 1 +T 51200 45500 5 10 1 1 0 0 1 netname=dout_6 } -N 49500 45200 50900 45200 4 +N 50400 45000 51800 45000 4 { -T 50300 45300 5 10 1 1 0 0 1 +T 51200 45100 5 10 1 1 0 0 1 netname=dout_7 } -N 49500 44800 50900 44800 4 +N 50400 44600 51800 44600 4 { -T 50300 44900 5 10 1 1 0 0 1 +T 51200 44700 5 10 1 1 0 0 1 netname=dout_8 } -N 49500 44400 50900 44400 4 +N 50400 44200 51800 44200 4 { -T 50300 44500 5 10 1 1 0 0 1 +T 51200 44300 5 10 1 1 0 0 1 netname=dout_9 } -C 49500 43700 1 0 0 gnd.sym -N 49600 44000 49500 44000 4 -N 42500 47600 41100 47600 4 +C 50400 43500 1 0 0 gnd.sym +N 50500 43800 50400 43800 4 +N 43400 47400 42000 47400 4 { -T 41100 47700 5 10 1 1 0 0 1 +T 42000 47500 5 10 1 1 0 0 1 netname=TDI } -N 42500 54000 41100 54000 4 +N 43400 53800 42000 53800 4 { -T 41100 54100 5 10 1 1 0 0 1 +T 42000 53900 5 10 1 1 0 0 1 netname=nCE } -N 42500 55200 41100 55200 4 +N 43400 55000 42000 55000 4 { -T 41100 55300 5 10 1 1 0 0 1 +T 42000 55100 5 10 1 1 0 0 1 netname=DCLK } -N 42500 48000 41100 48000 4 +N 43400 47800 42000 47800 4 { -T 41100 48100 5 10 1 1 0 0 1 +T 42000 47900 5 10 1 1 0 0 1 netname=DATA0 } -N 42500 48400 41100 48400 4 +N 43400 48200 42000 48200 4 { -T 41100 48500 5 10 1 1 0 0 1 +T 42000 48300 5 10 1 1 0 0 1 netname=pport_data_0 } -N 42500 49200 41100 49200 4 +N 43400 49000 42000 49000 4 { -T 41100 49300 5 10 1 1 0 0 1 +T 42000 49100 5 10 1 1 0 0 1 netname=pport_data_1 } -N 42500 49600 41100 49600 4 +N 43400 49400 42000 49400 4 { -T 41100 49700 5 10 1 1 0 0 1 +T 42000 49500 5 10 1 1 0 0 1 netname=nDataStr } -N 42500 50000 41100 50000 4 +N 43400 49800 42000 49800 4 { -T 41100 50100 5 10 1 1 0 0 1 +T 42000 49900 5 10 1 1 0 0 1 netname=epp_nReset } -N 42500 50400 41100 50400 4 +N 43400 50200 42000 50200 4 { -T 41100 50500 5 10 1 1 0 0 1 +T 42000 50300 5 10 1 1 0 0 1 netname=pport_data_2 } -N 42500 50800 41100 50800 4 +N 43400 50600 42000 50600 4 { -T 41100 50900 5 10 1 1 0 0 1 +T 42000 50700 5 10 1 1 0 0 1 netname=nAddrStr } -N 49500 43600 50900 43600 4 +N 50400 43400 51800 43400 4 { -T 49800 43700 5 10 1 1 0 0 1 +T 50700 43500 5 10 1 1 0 0 1 netname=pport_data_3 } -N 49500 43200 50900 43200 4 +N 50400 43000 51800 43000 4 { -T 49800 43300 5 10 1 1 0 0 1 +T 50700 43100 5 10 1 1 0 0 1 netname=pport_data_4 } -N 42500 43200 41100 43200 4 +N 42300 43000 41600 43000 4 +C 43200 44700 1 0 0 gnd.sym +N 43300 45000 43400 45000 4 +N 43400 43800 42000 43800 4 { -T 41100 43300 5 10 1 1 0 0 1 -netname=nWait -} -C 42300 44900 1 0 0 gnd.sym -N 42400 45200 42500 45200 4 -N 42500 44000 41100 44000 4 -{ -T 41100 44100 5 10 1 1 0 0 1 +T 42000 43900 5 10 1 1 0 0 1 netname=nWrite } -N 42500 42800 41100 42800 4 +N 42300 42600 41800 42600 4 { -T 41100 42900 5 10 1 1 0 0 1 +T 41800 42700 5 10 1 1 0 0 1 netname=din_1 } -N 49500 42800 50900 42800 4 +N 50400 42600 51800 42600 4 { -T 49800 42900 5 10 1 1 0 0 1 +T 50700 42700 5 10 1 1 0 0 1 netname=pport_data_5 } -N 42500 52800 41100 52800 4 +N 43400 52600 42000 52600 4 { -T 41100 52900 5 10 1 1 0 0 1 +T 42000 52700 5 10 1 1 0 0 1 netname=pport_data_6 } -N 42500 53200 41100 53200 4 +N 43400 53000 42000 53000 4 { -T 41100 53300 5 10 1 1 0 0 1 +T 42000 53100 5 10 1 1 0 0 1 netname=pport_data_7 } -N 42500 52400 41100 52400 4 +N 43400 52200 42000 52200 4 { -T 41100 52500 5 10 1 1 0 0 1 +T 42000 52300 5 10 1 1 0 0 1 netname=pp_13 } -N 42500 46800 41100 46800 4 +N 43400 46600 42000 46600 4 { -T 41100 46900 5 10 1 1 0 0 1 +T 42000 46700 5 10 1 1 0 0 1 netname=TCK } -N 42500 47200 41100 47200 4 +N 43400 47000 42000 47000 4 { -T 41100 47300 5 10 1 1 0 0 1 +T 42000 47100 5 10 1 1 0 0 1 netname=TDO } -N 42500 46400 41100 46400 4 +N 43400 46200 42000 46200 4 { -T 41100 46500 5 10 1 1 0 0 1 +T 42000 46300 5 10 1 1 0 0 1 netname=TMS } -N 42500 53600 41100 53600 4 +N 43400 53400 42000 53400 4 { -T 41100 53700 5 10 1 1 0 0 1 +T 42000 53500 5 10 1 1 0 0 1 netname=nCEO } -N 42500 54800 41100 54800 4 +N 43400 54600 42000 54600 4 { -T 41100 54900 5 10 1 1 0 0 1 +T 42000 54700 5 10 1 1 0 0 1 netname=CONF_DONE } -N 42500 56000 41100 56000 4 +N 43400 55800 41400 55800 4 { -T 41100 56100 5 10 1 1 0 0 1 +T 42000 55900 5 10 1 1 0 0 1 netname=nSTATUS } C 56800 50900 1 0 0 conn-26.sym @@ -1079,9 +1073,9 @@ N 55700 47200 54200 47200 4 T 54200 47450 5 10 1 1 180 6 1 netname=dout_8 } -N 50900 49600 49500 49600 4 +N 51800 49400 50400 49400 4 { -T 50100 49700 5 10 1 1 0 0 1 +T 51000 49500 5 10 1 1 0 0 1 netname=nCONFIG } T 56500 47200 9 10 1 0 0 0 1 @@ -1401,14 +1395,14 @@ T 71500 50800 5 10 0 0 180 6 1 footprint=100mil3pin } C 71400 49900 1 0 0 gnd.sym -N 42500 52000 41100 52000 4 +N 43400 51800 42000 51800 4 { -T 41100 52100 5 10 1 1 0 0 1 +T 42000 51900 5 10 1 1 0 0 1 netname=pp_10 } -N 42500 48800 41100 48800 4 +N 43400 48600 42000 48600 4 { -T 41100 48900 5 10 1 1 0 0 1 +T 42000 48700 5 10 1 1 0 0 1 netname=pp_15 } C 55700 41900 1 0 0 conn-3.sym @@ -1521,3 +1515,200 @@ netname=avr_reset N 71500 51800 71500 50600 4 T 66800 44900 9 10 1 0 0 0 1 Heartbeat Detector +C 51900 56700 1 180 0 resistor.sym +{ +T 51600 56300 5 10 0 0 180 0 1 +device=RESISTOR +T 51100 56725 5 10 1 1 0 0 1 +refdes=R10 +T 51800 56875 5 10 1 1 180 0 1 +value=22 +T 51900 56700 5 10 0 1 90 0 1 +footprint=0805 +T 51900 56700 5 10 0 1 90 0 1 +loadstatus=smt +} +C 43200 42700 1 180 0 resistor.sym +{ +T 42900 42300 5 10 0 0 180 0 1 +device=RESISTOR +T 42400 42725 5 10 1 1 0 0 1 +refdes=R11 +T 43100 42875 5 10 1 1 180 0 1 +value=22 +T 43200 42700 5 10 0 1 90 0 1 +footprint=0805 +T 43200 42700 5 10 0 1 90 0 1 +loadstatus=smt +} +C 42700 51500 1 180 0 resistor.sym +{ +T 42400 51100 5 10 0 0 180 0 1 +device=RESISTOR +T 41900 51525 5 10 1 1 0 0 1 +refdes=R12 +T 42600 51675 5 10 1 1 180 0 1 +value=22 +T 42700 51500 5 10 0 1 90 0 1 +footprint=0805 +T 42700 51500 5 10 0 1 90 0 1 +loadstatus=smt +} +C 42700 51100 1 180 0 resistor.sym +{ +T 42400 50700 5 10 0 0 180 0 1 +device=RESISTOR +T 41900 51125 5 10 1 1 0 0 1 +refdes=R13 +T 42600 51275 5 10 1 1 180 0 1 +value=22 +T 42700 51100 5 10 0 1 90 0 1 +footprint=0805 +T 42700 51100 5 10 0 1 90 0 1 +loadstatus=smt +} +C 51900 58700 1 180 0 resistor.sym +{ +T 51600 58300 5 10 0 0 180 0 1 +device=RESISTOR +T 51100 58725 5 10 1 1 0 0 1 +refdes=R14 +T 51800 58875 5 10 1 1 180 0 1 +value=22 +T 51900 58700 5 10 0 1 90 0 1 +footprint=0805 +T 51900 58700 5 10 0 1 90 0 1 +loadstatus=smt +} +C 42700 54300 1 180 0 resistor.sym +{ +T 42400 53900 5 10 0 0 180 0 1 +device=RESISTOR +T 41900 54325 5 10 1 1 0 0 1 +refdes=R15 +T 42600 54475 5 10 1 1 180 0 1 +value=22 +T 42700 54300 5 10 0 1 90 0 1 +footprint=0805 +T 42700 54300 5 10 0 1 90 0 1 +loadstatus=smt +} +C 51900 58300 1 180 0 resistor.sym +{ +T 51600 57900 5 10 0 0 180 0 1 +device=RESISTOR +T 51100 58325 5 10 1 1 0 0 1 +refdes=R16 +T 51800 58475 5 10 1 1 180 0 1 +value=22 +T 51900 58300 5 10 0 1 90 0 1 +footprint=0805 +T 51900 58300 5 10 0 1 90 0 1 +loadstatus=smt +} +C 51900 57100 1 180 0 resistor.sym +{ +T 51600 56700 5 10 0 0 180 0 1 +device=RESISTOR +T 51100 57125 5 10 1 1 0 0 1 +refdes=R17 +T 51800 57275 5 10 1 1 180 0 1 +value=22 +T 51900 57100 5 10 0 1 90 0 1 +footprint=0805 +T 51900 57100 5 10 0 1 90 0 1 +loadstatus=smt +} +N 51000 58600 50400 58600 4 +N 51000 58200 50400 58200 4 +N 50400 57000 51000 57000 4 +N 51000 56600 50400 56600 4 +N 43200 42600 43400 42600 4 +N 42700 51400 43400 51400 4 +N 43400 51000 42700 51000 4 +N 42700 54200 43400 54200 4 +C 41300 56700 1 270 0 resistor.sym +{ +T 41700 56400 5 10 0 0 270 0 1 +device=RESISTOR +T 41200 56475 5 10 1 1 180 0 1 +refdes=R18 +T 40900 56025 5 10 1 1 0 0 1 +value=10k +T 41300 56700 5 10 0 1 180 0 1 +footprint=0805 +T 41300 56700 5 10 0 1 180 0 1 +loadstatus=smt +} +C 41200 56700 1 0 0 3.3V-plus.sym +C 41600 42500 1 0 1 npn-1.sym +{ +T 41000 43000 5 10 0 0 0 6 1 +device=NPN_TRANSISTOR +T 41000 43100 5 10 1 1 0 6 1 +refdes=Q1 +T 41000 42800 5 10 1 1 0 6 1 +value=MMBT3904 +T 41600 42500 5 10 0 0 0 6 1 +vendor_part_number=MMBT3904-FDICT-ND +T 41600 42500 5 10 0 0 0 6 1 +vendor=digikey +T 41600 42500 5 10 0 0 0 6 1 +footprint=SOT23 +T 41600 42500 5 10 0 0 0 6 1 +loadstatus=smt +} +C 52400 58900 1 0 0 npn-1.sym +{ +T 53000 59400 5 10 0 0 0 0 1 +device=NPN_TRANSISTOR +T 53000 59500 5 10 1 1 0 0 1 +refdes=Q2 +T 53000 59200 5 10 1 1 0 0 1 +value=MMBT3904 +T 52400 58900 5 10 0 0 0 0 1 +vendor_part_number=MMBT3904-FDICT-ND +T 52400 58900 5 10 0 0 0 0 1 +vendor=digikey +T 52400 58900 5 10 0 0 0 0 1 +footprint=SOT23 +T 52400 58900 5 10 0 0 0 0 1 +loadstatus=smt +} +N 41100 43500 41100 43700 4 +N 41100 43700 40600 43700 4 +{ +T 40600 43800 5 10 1 1 0 0 1 +netname=nWait +} +C 41000 42200 1 0 0 gnd.sym +C 43200 43100 1 180 0 resistor.sym +{ +T 42900 42700 5 10 0 0 180 0 1 +device=RESISTOR +T 42400 43125 5 10 1 1 0 0 1 +refdes=R21 +T 43200 43275 5 10 1 1 180 0 1 +value=4.7k +T 43200 43100 5 10 0 1 90 0 1 +footprint=0805 +T 43200 43100 5 10 0 1 90 0 1 +loadstatus=smt +} +N 43200 43000 43400 43000 4 +C 52800 58600 1 0 0 gnd.sym +C 52200 59500 1 180 0 resistor.sym +{ +T 51900 59100 5 10 0 0 180 0 1 +device=RESISTOR +T 51400 59525 5 10 1 1 0 0 1 +refdes=R22 +T 52200 59675 5 10 1 1 180 0 1 +value=4.7k +T 52200 59500 5 10 0 1 90 0 1 +footprint=0805 +T 52200 59500 5 10 0 1 90 0 1 +loadstatus=smt +} +N 52200 59400 52400 59400 4 +N 51300 59400 50400 59400 4 diff --git a/packages/SOT23-6.fp b/packages/SOT23-6.fp new file mode 100644 index 0000000..024ad3f --- /dev/null +++ b/packages/SOT23-6.fp @@ -0,0 +1,12 @@ + +Element["" "SOT23-6" "" "" 5615 7584 -10161 -12011 0 100 ""] +( + Pad[-3739 -5708 -3739 -4527 2756 984 3356 "pin6" "6" "square"] + Pad[-3739 4528 -3739 5709 2756 984 3356 "pin1" "1" "square,edge2"] + Pad[0 -5708 0 -4527 2756 984 3356 "pin5" "5" "square"] + Pad[0 4528 0 5709 2756 984 3356 "pin2" "2" "square,edge2"] + Pad[3740 -5708 3740 -4527 2756 984 3356 "pin4" "4" "square"] + Pad[3740 4528 3740 5709 2756 984 3356 "pin3" "3" "square,edge2"] + ElementArc [-3739 8504 500 500 0 360 1000] + + ) diff --git a/packages/SOT23.fp b/packages/SOT23.fp new file mode 100644 index 0000000..91092d7 --- /dev/null +++ b/packages/SOT23.fp @@ -0,0 +1,15 @@ +Element["" "SOT23" "" "" 0 0 3542 -1575 1 23 ""] +( + Pad[0 -5511 0 -3149 4187 3000 5387 "" "3" "square"] + Pad[3543 3150 3543 5315 4187 3000 5387 "" "2" "square,edge2"] + Pad[-3544 3150 -3544 5315 4187 3000 5387 "" "1" "square,edge2"] + ElementLine [6889 -8858 -6890 -8858 1000] + ElementLine [6889 8662 6889 -8858 1000] + ElementLine [-6890 8662 6889 8662 1000] + ElementLine [-6890 -8858 -6890 8662 1000] + + Attribute("author" "DJ Delorie") + Attribute("copyright" "2006 DJ Delorie") + Attribute("use-license" "Unlimited") + Attribute("dist-license" "GPL") + ) -- 2.30.2