From c02fbab0a17e6aa0c63da07a36c4396d6dab8b21 Mon Sep 17 00:00:00 2001 From: Nat Moore Date: Fri, 3 Dec 2021 20:21:15 -0600 Subject: [PATCH] update readme with setup info --- README.md | 31 ++++++++++++++++++++++++++++++- doc/pic/basic_hw_schematic.png | Bin 0 -> 12005 bytes 2 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 doc/pic/basic_hw_schematic.png diff --git a/README.md b/README.md index a9edb53..f863ecf 100644 --- a/README.md +++ b/README.md @@ -17,13 +17,42 @@ The following boards should work, however have not been tested: * Arduino Leonardo (and clones) * Arduino Pro Micro (and clones) * Arduino Nano (and clones) -* Basically anything using an ATMega 328p, 2560, 32u4, or 16u2 +* Basically anything using an ATMega328p, 2560, 32u4, or 16u2 The following boards have been reported to work with minor modifications: * LGT8F328P - need to adjust frequency and remove all of the EEPROM references Further testing and problem reporting by the community is encouraged to further improve compatibility with other devices. + +## Setup/Installation + +Setup consists of three parts. + +1. Hardware Setup +2. Firmware Flashing +3. Software Setup + +### Hardware Setup + +The hardware for the KFD-AVR fork is very simple. You can either purchase a KFDShield from the [online store](https://store.omahacommunicationsys.com), or build your own circuit on a breadboard. The bare minimum you need to get going is this: + +![schematic](doc/pic/basic_hw_schematic.png) + +Where PIN3 is Arduino pin 3, PIN5 is Arduino pin 5, DATA is the radio data line, SNS, is the radio sense line, and GND is the radio ground line. VCC is 5 volts (make sure you are using a 5 volt tolerant board). + +If you are using a shield, on the TRS connector, tip is data, ring is sense, and shield is ground. + +### Firmware Flashing + +Head to the Releases page and download both the Firmware and Software zips from the latest version. Save the software for later. Unzip Firmware, and open the kfd-avr.ino file in the Arduino IDE, and select your board type and COM port from the Tools menu. If you are using a board that is not explicitly supported, or DIYing your own rather than using a shield, you should confirm that all options in the hal.h file are correct - namely, CPU speed and data/LED pins. Once you are done, hit upload. + +### Software Setup + +The software distributed with the KFD-AVR release is "flat pack", meaning there is no installer supplied - all you need to do to run the software is unzip the Software zip and run the KFDToolGui.exe file. You may see an "Error - timeout while waiting for data" when first opening the software. **This is completely normal, especially if you have many COM ports on your system. The warning will be suppressed in a future release.** Select the COM port corresponding to your Arduino, and you should see information populate in the bottom bar of the screen indicating that the KFDTool software is connecting to your Arduino. + +In order to validate that every part of the chain - hardware, firmware, and software - is working, go to the Utility - Adapter Self Test menu, and click "Detect MR". This will send a signal to your radio asking it to reply and confirm it is there. If you get a success message, congrats! You are ready to load keys. + # Original Readme: Open Source P25 Key Fill Device diff --git a/doc/pic/basic_hw_schematic.png b/doc/pic/basic_hw_schematic.png new file mode 100644 index 0000000000000000000000000000000000000000..752e3c5037dc199b575050644aba03c4572aa2b4 GIT binary patch literal 12005 zcmeHN3p`Zo+F#>NO~ke<<5EdC6(xgQqfLr*CnS!YnT&-ZGz?Qo`|RzKb|sYI5NZ;( zF@$l+IdsacFfn5oDRQU5U|ha;joPPuvcK=__Wr)#Iltfc^IHpRz3Y9S=Xsy^dH&Dk z&j$}!p=Fe0AP7QR@7;44f<$2m66uzb08d`L4>=7%t0C(>yN?Fl8RQIJe_i;Kcmpwr z5!j*DGiI#2RPB1sz!=kU`JS4ucAUwVd5OXF^~i!RPtQhrH#lNcP4jA>je0)JcB|!6 zKVFB7)w)zt~#WqSq_u*9N&)0*YIHmro4K)@~xuep&y$`o5v%sAC zF%5vIgSWrv-r|cVWT9gytsZZKbeXSmx&_T2ugs!To)0k;ZCTwau%>!$gbt7ZbVd4i z+|gI*OxDO`JbXOb-kpRdl%D!{MLiJQt11Fq9d!2!d153_&~N;5ral$LuQ2GqIAxkO zJ9QziHc!9~3!CVh@S<2&)z?%e#2iXJut1ed0mAZ)oeHdW@f=*t_?emFX~_5M6g2rd zv67ibDO2hY@a*`g^7wEp^h`IAm&%Z_f1acfW0EW<#vR|)YL3`KJPzPP=I}RwcL3=g8-|c(x7-=^!GH^BW#tttq z9%56%ie#a>oyshht0*DM7S20YqSQ}t;LUm>*BwT;@tOyW$r&~kHjN6)uhru@zb-GYoFR%z?hAj1E_vNhmddfs<7U~+VusEL?QC;u#OS+Ca z@!}h9(Nu9wpXpS=I#eN}>|$*z7LxDvg4){M@rVHaLPhx!>O~S8B+TSbqRDKcB2!Ec zy8aFiwK1v5-H{l`+Fu9q?rm(<1@io=Xcbg2wkgekEny~ecPW{D;p?YK;)tZhc7ZoK z@(tkQp#v*KxyLOlf z>u(z~(stmD>oPw(oIZvkz8I^kSg25xvxF>Vz6!eUuLrG_f}ymR9Oyf+XV>-ximtu{ zIM~cVg8`V|IAEkPbZ%xRj3ygZaxg874$Dege zG^EYMa6qT-6{F;K<3(5B9Fi~-1L8PZgn^a=^*r3`4egQpq5=O_#C&829ayl4U5WA} zm?*HWGrJ;{j`8^?l&sYzodqqUvg@{!rS^s1&-Dh5t7#?hm@$7-AvhfW>KT1BXTeS__Too)gsBXREt{;66KtC z4$uu?2XhQnmXKcp;}DSHjyjkC-VFI~f%Yk|pq9JQ;$~;;uhJ<@mv&--IN1kSxf{m~ zXe1fLlUV^nvN3BPK6spGpW^i7_uyS|V=lDO7BA`=xa;c$_w8Nio?jt*uz;EV z`4+@pYd+G&@6yPsUZwlbxUCbmg!cKRqsg4!|5oynmbJIm-Yv=A*6FQ(HKfPN-Qxf6bd-lIQXn#Vr7zt7EXEUak)gfIJ5XY*nd3MPq+tvYN1()zsY5 z2;GisX>=s6Qw@`98g4TljTL(<__x|CMSsQgdNtS{j4rF+SY4?Xj=ro}EF)q=SGGl5IsY+|A@NnG|67Q`B zq_|+Ze~O&Di%miAP5<4HOt+20;;LnMeWuU@gTG=gH6jfe0aDyoNgcI6&*S;G@45+!D!J?)CEa0_sPIk5_CJi z-p6X(1(jhtGAh#eHcfiCN2O=|T?IQmXsYEpA11P_bIqEbDmX4iug+zdek9w8F!58R zdVM*`{j_VaZuy3^_9>p3HUtQx|cUw?n zRLV(z%?t6s=rW^)QTqp-aKEeQT#AM@yU%@t7Y(xdU7^6IXY}V_BBI!d00+&~{L(U8 z=Ic_VVe9_0mY48BNBt zml_py8^^iyzZGu}fLGL_-+4cO^RApv;arFxDuJf2oknpShUH2)4`=W)Ed2AI(D zGP5TBQEFW@$&W5Ov|8LQJb(=K!=f*Cz3o4oM-obKicHu`5;UjmzX?OiC90M$V5rV(zMpuJ;&L)Xu~4Jk;ukyHy`* z+pI*xI=I?)hHFd&UA<%K@@5lpY{ejPliP;Vs)mMr&wflY3H8S(wr+Uu;C5U4T)@B) zUnOZ+efYI8J42Nr`NZ4XJGhQynn)E-5c7--2Gyn>Ce zFZ?7PR3`xt%BCtY+=k}W`fIVn-7ku3o54?Q)&zVWuh}XaPIv04lYz^^vZJM7il@Kv z@e23Cc(@68=k&-VUBlP8rKFxB9A=n#b^}Aw%X!174TisS%%jIFIf0b-7ru>Cz56t$ z?K02=`*3=PsRD~@Dn@4scQPPg55B+mIiq6m2s$Oo>iEj_&WZqT&Ae;q{)S>G&+^vbH)U@Xj@xAt9WU)g8KM|R z-)@!N0Y>_s#s{D87|>A46QG-=yvEbQ@7}neJ#pxw`nLVbtpO9GAJhi`yV24YfnPDW zeu3sr#+$OWHt~{uw#I~19>I5Q1eC2~n60n9!a!6DnPNok3?Uw?mh?|rTz{G!SRA|N zjPZ}%PYB?vv=X!Q8qv9#<*dy`yIiH=lIuS!_#+d%FC;R*p4RL)-k{KzGH!eA5=Q#tXsb}Ttf2~+egxZct5h%FYN)FFMQ*X;a?vNT zh-pSuvFTro9lQ7eOy{Vi(SJa;&jPNk)`hvTT5Ef!cu*bfEN)?cE@LoL&*tq;Ij+q) z8~BmI7p9N4(qe7?)udT?S<2v%pkU<*=y-mX2x5OP_c|lr z)Ktx7X?s*}tLoZL@1N}-2&V!7q_ ztqt9nb*Rh(;2Ci#K_|u5RsHV;DQM`y%X{2(Rnb>?yh6)f5W8R77k5cc9eEu)B95dl z&1=H3djaSMN_|3`CAB}Fl z!(gWeQjh`&kv_HlVAMdP*WJbQor=&qm{*LaA&?1P1gVZI2LU?oP6m!lKsp=6P}OUT(F3g1~; zu=Oek-}nl~-kJ_qO}|!yh(I-M1X!us2>J;tiGp|^Z^bs~_8J;Wdyoz7lxIcnvHLc#c{j-#&pcSm>2czc( z-WUObyG+JImRslR&Ks8gb4IF;c9Pq=``KNenquPMjEQ#F)A7)8Lx1LQ)2fug=GnTR zPz}$QGsPd7WCmPwsct6p@Gl;+%H}th+3AdzO2bc-ART45ldF5V*fZPg3lUEkxr>;k zIkOE2)6R2dp>CwG)3b) z-F@To_yr*_Dk)g&a8jiuY0x4jumU7lgu}HlEXyaY1#Uj;X$G!paqoTNcF49n<<=>h zv%5maf)tyG^AU*$CCjC(99B$XZAdz$fyIZGwe&cXl8HBfb5ClRu*wGHrUf#VnZ z4jt~U2sU?8!!?405O{fK70Z$y95AwzDA!d^s%e&dU4}zpQv(#q_=NmMLYU`=3_^?gd?pm%~mw)Q6e?0awMC3=Mgh zJADJ77binc;rK(Io{y_?Z{IXD5qA8JIXVOVLEpiL;yL13rujR`e!{zN89>k>O=8NJ<9o8)>LJh(^C$ z=H1xsmrj*E8gqSz>|F0zTl;XTOv>QXX-x|@-ZeO|W1v*Z3wq@ne*R+GWp>(Q=gvlr z`++5~oy`g9SLr_EF5kE0)jqvVHBXe2^j!w@ZSSr^+l1$ekCr)@W9mzs>UGT7tz}jK z8^>}Rc^C3h&7FpoiF_5ZyO3DP=4CJY3z0K7@~+WQmC+6YE0vRZJxiGdDTCk1P1xf5 zNy<=k7f@1rwWEf6C6jtdE);Nnf=DNpw-7DZR5`sP?h`%3o?|o4cv1ao-#E|9T6J0Z z_dhM8hVqm|J5OUBjM>@ty9b-Q!X6mx;H&qHZp+D+jZ-vX4{?lKqQcHw4n5WJOHIid z7%o=ge443C5OeiAQt>uf=jd?Vqj8DH>Yia;jXkxYF&F5y?^+)umFMrEjWZ#xzB#76 z%0uh2N#BktyZqxPcU@?5ACI`1wA$alHi^ZE*-Aq>@5hU_wCGVz8n2zK5&LWE<=2rf zl3yxBSQ5hWD5-#F63R6Rm_S-{3jDVfH}9ylg!(k{9EMfH(k3!;WB8P_Oj)u4u!W7K z=tB(38NN`(A8aVhZ(}dBUBRNz!m=F zYYsunl9673UuKXP?3yHT!Pw;05bC!Li`EDt#JFEE!U6}`7$^!k2$b^d!VDNZuBZ) zf#{JsYW1b(>IUp)l-GH@Xy3?yI4BlZ#SeXbX^37{ZhB!t1Q5|>6S!n|Ao~=TVib%5 zMdh=%lAxyGGp`3o>bgY!s?6tkE0EGMZl&~IV~VB#+b|v)V2i&T%v+dkm8FPNJzZya zewz7&SN!nFz3|8`WLNXuj_Y^4@48#8%Hbffs^+{qt zZ2*Cvuq+GtcI+$#?zh2=#No7%N_&p9xAJ|xvBGY?Tf{~)K@coq8AEC-bdop=lJ{rK6O&9+H{Vur%P1r zZ|<@u%^nh#wvm$U5~!dlxEyUY*=^JOG%hMKX?Oqq(ZM;u?T|njD>yFzP zMx{*ph;iJ3iBO3HpNNsT%}IG`M{H}d?(`K6b4*(z5Cf>A*PW||{HsY4bJZWVp~y+9 zh&?AV|E6^bIE+y`oULLUIP78=kPNc9t;Eu=(pc!i4Z`){JA-}DdRm1^1ci~6-#M!D zs~PCe!i-kwAfymkWG`Sf-Cl5$wu>&{zt9;i(w8W_IH zk<7PY^BFGV0jLV7|FI6AeMp+56?!}#hIF5_`Qd#eJq^pqLLiVV8G`d zxfcD(cc-rdR29gN3D18)l0>FKbaNF^^zb)<93RlNv^pG|`XQyzp`s2lsKQAhio6}- zoTXfxA6Xb2KeUoOR9Igg7PPQAUX;>`+&*-nTD>z+%++tb?5}F2peMG^)WC~0mmvmJ zGHvl3H4uugVPR#d^ z-i(Dn&GniYXh8}fKDk}K(5K`?T=7f{3)-4IKwDFu@A@3nHA^c|E;ID%PVnKLA|z`4fW`%MW&MTfDjss=x17Yxu7hM0Nc)^$h z0{$2^82$!J5V_P zGF|xjE6g%@F*k)2O#ivP3RD&#C|Mh%mcI0!)7h|C#|@Ip{HzrZ)aidF@{3g-%<%sV p{-Z(e|99|zRNem|70sC!&ACx(M6ud+5F8cA`kMoL9+|sd`Y&U6LFfPg literal 0 HcmV?d00001