From 375c1bb45b012c22765c770f369a286af6ef3dba Mon Sep 17 00:00:00 2001 From: Will Hedgecock Date: Tue, 18 Jan 2022 17:24:38 -0600 Subject: [PATCH] Move latency timer fix for FTDI inside of check for existing port --- src/main/c/Windows/SerialPort_Windows.c | 13 +++++++------ .../resources/Windows/aarch64/jSerialComm.dll | Bin 163840 -> 163840 bytes .../resources/Windows/armv7/jSerialComm.dll | Bin 120320 -> 120320 bytes .../resources/Windows/x86/jSerialComm.dll | Bin 135680 -> 135680 bytes .../resources/Windows/x86_64/jSerialComm.dll | Bin 164864 -> 164864 bytes 5 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/main/c/Windows/SerialPort_Windows.c b/src/main/c/Windows/SerialPort_Windows.c index 152d5c5..d791f5d 100644 --- a/src/main/c/Windows/SerialPort_Windows.c +++ b/src/main/c/Windows/SerialPort_Windows.c @@ -2,7 +2,7 @@ * SerialPort_Windows.c * * Created on: Feb 25, 2012 - * Last Updated on: Jan 17, 2022 + * Last Updated on: Jan 18, 2022 * Author: Will Hedgecock * * Copyright (C) 2012-2022 Fazecast, Inc. @@ -278,15 +278,15 @@ JNIEXPORT jobjectArray JNICALL Java_com_fazecast_jSerialComm_SerialPort_getCommP LONG comPortNumber = 0; if ((FT_Open(i, &devInfo[i].ftHandle) == FT_OK) && (FT_GetComPortNumber(devInfo[i].ftHandle, &comPortNumber) == FT_OK)) { - // Reduce latency timer to minimum value of 2 - FT_SetLatencyTimer(devInfo[i].ftHandle, 2); - - // Update port description if COM port is actually connected and present in the port list - FT_Close(devInfo[i].ftHandle); + // Check if COM port is actually connected and present in the port list swprintf(comPort, sizeof(comPort) / sizeof(wchar_t), L"COM%ld", comPortNumber); for (int j = 0; j < serialPorts.length; ++j) if (wcscmp(serialPorts.ports[j]->portPath, comPort) == 0) { + // Reduce latency timer to minimum value of 2 + FT_SetLatencyTimer(devInfo[i].ftHandle, 2); + + // Update the port description serialPorts.ports[j]->enumerated = 1; size_t descLength = 8+strlen(devInfo[i].Description); wchar_t *newMemory = (wchar_t*)realloc(serialPorts.ports[j]->portDescription, descLength*sizeof(wchar_t)); @@ -298,6 +298,7 @@ JNIEXPORT jobjectArray JNICALL Java_com_fazecast_jSerialComm_SerialPort_getCommP memcpy(serialPorts.ports[j]->serialNumber, devInfo[i].SerialNumber, sizeof(serialPorts.ports[j]->serialNumber)); break; } + FT_Close(devInfo[i].ftHandle); } } } diff --git a/src/main/resources/Windows/aarch64/jSerialComm.dll b/src/main/resources/Windows/aarch64/jSerialComm.dll index 53c89b064ea772218d87d113d51ed0242b9c1c51..e2c7c98c97463f00fc5de7fcb0e22c41f2e73141 100644 GIT binary patch delta 9541 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 delta 9623 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 diff --git a/src/main/resources/Windows/armv7/jSerialComm.dll b/src/main/resources/Windows/armv7/jSerialComm.dll index b4437c002e5e4b7afad95d51bdd0a2791f1bae1e..d12c434fa09dba1455daa5fbb0e358c38accfdf7 100644 GIT binary patch delta 12547 zcmZ{q3tW>&_V;H(xQm7Y3IYNG0^XVsLINZZR6yENq-v|XQbA<}OLw^{C=l3c|F|s` z9c@t5Vyj)Lxd`T|>u z-vQR>nnbS{dR>=Nn$ObQgbfPq| z-9&0d#t(j;i=IM<{P7z+#Cx60mQKi|udy=|7JC0N(L39pO=9I5=Qmy9FEp~~X|2P)eHKB^?sh|yT-y#H7d z3Dp{ZtaPsDC3h-UOtu*k86Ax5XZu9wMt95tufJZ|Wt!eZf^4^1>~vJx?;?|3dP^LS zB`z|pm>1(_q~j)bq#CJ{SNC<3yEHlRqaPi~tl!8?qL>}C#GPcSsgnSTfzQUJuWx%BUBLjzr{$Ub#laNzro7NSPy}%@nne<70HutRR zH{tMX`z)>Tok|imAXs{?UKCK5B+sUk_xH{r^L8vT1;YHQhqjHUL-83OP)R76e?w=AnEtV!?Ry8g=!nJ9gG_X zGjbe^Zx427M>!bZ8uW)yIk-IAt=SXC)(sY9lK?W+uS=S3pZFRE{Lw6jj%1(BvrON3 zbnAT9B#b=CI&5H$I^<_N;I}%VmDzeHjn($WyJ-XLddHBF0r}7t--)cq zd!9>b|3`(-N(We{_cYf-W_dObGLOfOY_YMOx%j*Wy?vv4e`fhURVev*v?K#9z1c+H z-=Xx+qorOb^f`BY`fny=hS{fzGnuP-PvWoX=76Rk67hF6SMQ53Wb(@iJ=m zc0iC%T4iT;OOQ_q^6-F>O_{naX8V=01s+A4p>-V)?9R`~!#DX7KR66nLPNnzS_Plh9M0us8wQ_VI}-Uuyh2n?EH`M21+&l)VlqL(bjWzH@FYC}gsuw(o|k6cJg# zQbVR;?;IDTXme_RS0Sqo3AMdFw7bcjwS@QujHwMxylSeQ-HOF*Gr?|55(% zz)|*2sGogme?RgcvF1>3S(Q-t7;^1X61o?|F;`GlzOJ zZJ7A^)cyg;tI$fcf0ltlWIXA@>b&Kkd-&;D5E_ z6YL=Tu*hw}hySK>kW-_w8R&`ns9#)Cs!OeuC1YLg`n3Io3AQDu*Bw3NNxF{VEH1y%M0=2AbtvBva9Lyc*bR9s(U%9VQ7yJ-Vw&%Wnu zW4mMaJqMfF_Z)59X4~y>n{AKeiSdx-hfKedf`x}n+0wCS^`>+jet$2W(^o0<j!ir91Yl)2Rt=3YCaQ(HVi4E!_hW)gn~ z^w7%=&F~d#`!)o!uV?tvv+UuFm~pB7!G&M;*hz`M1S$tu)XatS1GZ_VH!WZXW~M-W zUm$xr)01ip9?yGF*H1@`LYIV$JCfI89@x!dq*e40J1LcqOC8A*>c${b{5)BNq4`o5F+CE>oEb&05 zjj{P>Rhymh68onto=#<6;b}CIy%Fw9V_2`;kL?d1Z$De6N;D7X*}3o(`Z9BqFSY-T zTpM5>@M5L%*KD+X>4N?;=*y<85_E45)0sA%qB^H0OjOk$jD%Qn&#qdgjhHN2BS*wM zSy{w*(OZ`6!3a;$CZ3(hx{<9Hvi382jPd4ysmxmuML%Ypk<-Mf{i_PMDBYdbOn1&8Ak83DrHu{cY@`Sr@yxR<0JIW8sBPJ@04zXL&Su-cZ^HI3`UwvKu`Io-F z7V;L$Cw>+zPhzrY9-j4rW&My~xrFJX{pbrssVm1T)xWz0r9 zy3)`a|4@uK(OZd8^ceF_@}-AZRFZ)%HQZ17!iMG;nqN$@p(-}=@&tO7O-N04b>ojz z?+kzIkF)5YmP)P}@>36p@V4sv%8T?xmh(yv9c!3BKiP&B8+N_A&6d7ukS`f0qAwd} zzaA!{8x3z}*xS%fL-Fz|F+ITsR`$|V){`AZXCgn1#payG4jah{p?g`#s$Qxzc)c-O zM7s>>Z^qkDwc&$2mvM9&JEYr4|6@>Au5+f}8Vv6Q+qk`Eebhs=QeAp|oJ|9>3_re? zWkc%?Xu>x@@IQNnr=9M`6Eh2hBrFlNDgcH`*N2nCcDPeeusk4#76_|hTto0l+HDLceRz$ z5`+F9heY_mkZ>c0rW&el_&U>U_Q4MuX)+7D9YtSf%Wp5FcMNT}x7pL{EcJdfeTUHp z8v1WT+=FyV<%V4kH&Gg3n9=JZ=Bx9u%%yQ8r@LnVD~Tk)h{w3n$2D{e$^+TdCu2pA zhFSEJ4Ei~%f8vGh+46+B93OUq`b0rJ%dl`@Id!r5RnZ}K&eVf7ba>E%ma}t%>s;c@ zPTgKs`#pw~pHryEmZxL!3g)RNfn!l+v86H`9@-_MyI9I_vvc>)_wGy;x_HOnIP%z* zs`MjbI-mZ#b-pc~FA^Dt^!x4U$Fx?T>OeE;8~SDkx{bQ)lN^DE`YuO$g>KL{JJCIK zV(WZonk1t4TI*e?tqm>I?~%}8#|0zWKJkKw1FQ9yCG?|Urx7glO=>K0f23oVsN~tw zdN^Plwx~X**Spe2`jI~VIqK_JjZy~~_(Z?*IoeLcc&S_KTsIo)BBcl7d3LZq zW8-Ba>6t)B%jxGt(iu)A3pu@GbF@_Mk^U+nyAE24oKeO90`$#V`r8Cv#Wgt}e`?9w8!Rg0K#Hsf z$aVazSX8S({-?Lf?ME!54Q{c}v4==xNRE(sy7qS>(Oe;t z9F)}{@wSUmKI06LWFeKJ{t#09_e63s1v=foM31+Jx;JUGWJnIk3q6o}(6M7n>!ew9 zhbE`liwXmoFp&?75HFAq%-bsaTIFx7a+g)UWtG3T%8uTa_Rb)0?`D-ftn&HRfJ!PC z)ArVd>*;YD{=u--t(xAVu109gEXpb=3VQSR+=Gr*+dt7CMJ^$BP5!UnrQeO9tXFS- zmre^P5J|%0Nw-~`sM`*Ye0I4=lb|9Vxl6x!XgkuYPp+YUv{#=~LqmYgHFN^dXeqo{ zLsKDny+@x1<&8X6onFtEA*M)4WAzR`L=;^5#*pkTl89+dbWH#9SCL7tdlmaDb2~?A&sUF$VOoOj)gXLp7y~B7{i_$3ZvY6QU-zGLZtI<+ zm8lu>Fxp&!qNTrTKK1`IwvEtf z6PkCTx$Cpu>(3DKSENS$Afqv(#WjB?WDin{K4B}Jh8fD=D$G|65d3T=5-j04#>4Y$ zpuyen5b2D*eXFpq?xTg`S#R6EK_G7;I@SPtSu9j@3(s^m+{1x~)UMZTqu!(A^!kaA zR-_x&roNVOR{!?|e1WFdkn;7Lx6zQ%=H(9v`5x)9wfT#DsW@S&i1|{n9bGEl-6tdk zdOiByZFItvXG0CPIJ)!Kj&6F4fgsTs{ml32WCSVgeJUUAaiI$(ZAdOLe9|p{3c*a{ z@UP9JjiW?|)S^H6z7XRZ7Ce4mh@Xd^PD^_hn`TcOl}KJzn{Nm~I6VC8P0f3|;zx}=^JMou2m8{>ary-8dMwhAIqZf|78+xJ7K~!Qm0d>@EbVUSCqhtn>OrKCk z<)|&KqamZUyQGx-6G@|QMx)U^zZiRV6B0kcHtBEF(M_~QpR=7lFY;Ka-?5!eq*?lw z?YQ+^HH73K?a~sGIR`O~$26#MmdFX&r@~^0!U9Qx&LkW`U<;D%TtZ5bvXC@L0Z138 zLY84eB@)s+3wsT=6tHy$w%>&98IUuDQ02Z$cXU66Z_iFU#$LGFcM2Ofet z!Bw)G3a)c*5$a{^e$?SQJ?I!e-T8)cy2BG?4>yo3##5pH%#A>=w_FYqoHW|bA-4bn{UG(o&F z;>blX7`zPzXyeGBwcPP#LKdQ20qy}eTICi{2Du$f&>_={Oc-dJ$|p=t;z7?35IQhS z8%L_ZOw_l4%^5P{h5OM6hxUQ#8B+5NFd3w27KdCxSLl0zi!JQ9zs zvI}nO0LZ?e6zv*8FMkXKOhfywg+xaZpg{2exCb5c2SFav9Iy@zHiE?{zXtLS?t?Cw za3Tc`PW<;1bf_acHuEGJ5QD_c+1NsR85 z;9-2OWh9v(U&Y(Na~b{A^-arSj0XoDR@0OD7DsM@jT!l7MFF3peDg_8Dzix`B*YgE zrh|Ln@FDOd=u(8|vprNt!iov0#E3Pkg#xm84URO-(Mc-X76!+3%aPdzgUfX0bMM0u@S>iO(})PI#{mSE?#6)w zk9)v9a7^<7rV87!vjMvWO#cwui97ZY4}GDz2Beq*m%V%qV2ywQnc?Q(eYgPNa1GcA zJ_dCPnNgrkUNIAQlVqKBnsORFO9;%g%?L*Tj6b0 zI63hqDvT5_mN-vj{6!OsS!x~x`9NHCM=c=@1NnZ80xzJW9IIRkcJPitzI}SZQgBAA zrQ-yUAJzFFA88d>g>85d%tD8@$1IWa0x2!9*#q`w6q|$FFx444vo0PPekr7Yyn{Vp zJLrl>^o3voxEO{?t@0tOd<#^4L`lGLLVV3hbWPbe%^7+D}U_AQH=tny+2N zL6NB-ZC??xkt#&xf5QXFUc8pJ6Cwc{zs7Zp#kAovzkcHgzQGVpW`r5vTrkJs=3O9P zoGn(igWQ3~;0)R#-qne_Lx;tMPZanUH%joCLU{1NCk=!O2hkNC!Z?D@8^WztWtI1V znV7q4AU`SNuUbZ$4sL@(Gp^y_p+(g8A9!?w-Ku}$K*E`yejQT-IpAN|-ekm_1?u>s zDMluqJ~DfKLr4j40Ghzeo0g+@AJ|Uvs8^Te=&S;-qyE;nSoME21P*?OxrbcSZJFaP zkgx8?U>(Xk|BdZP3TW8(7&*%EEk=k${`c7by;!aHQIG-$w*SCcM3Zmh@f8P2BY1IH zq*-ytvQ3LY{@~CE^4)UM%1$e9TR8}pqkZyS{;1YM&w+0uQuug;HG}g5%tU=o5B5KQ z6vCGyVXpRpjaW=(FdYiAdzS5!0H$FP=7awGFjZh4*b8QIgFj+K2x%I~r>q>Di~8jI zmc?2O@&jxm$hYN1umklux(B$gk$DXABhmIDLdF|{zPMCwfQxCfsK#ii-vtIE0xh5k zdbfMApX0+vZuMb~<0D4SJ>nhU5(4@5ozZWRv%o>z0a=f+ct6Hl8dwfTbY^5SGi9Xt z3EvhtFb1#)mxY_dOcnzRLB5LL1h->Xv<>2801U*NvH!syC%h{lw8_qR^}+zs!5MIT z5X>aK=CCo4MXPB%UJFa0-wE)=<8)MFaz|5%)k9rf?Ymv4BY2S$!V~75;_EP{3uxjCi`PL z#82$oCsSeny9DBS5+h9qqcD(Cusoy5+y<6{kHLjHg#J(vJlu~Lj1Y8=kwt;Y7*QA4 z4mlwdonY?FU=QT{FgOTSfqe1q0wrjFZ7L<9VEi<85@D8w<0S_5Ibb@@k9{EDzW6dN?Ek@Vod0dOjWXpZfI<~`XhY;kaU`5U z!|k93Yy)}2TOc2?8RQ+i;yt?*Ax;60q2ujf4$9lXc;+{R^UVC);~D-^3f2$_<(~$9A>Rl0f&7ai*Ix|E zK>k&Y+u?6J!H+YN6>@l}J9e_7$=Uqd+g*A5RjCbLr0 z+WaNHIM6Zr_zN^mS5f?+c-d;FH8a=DU9*18yK7Fb>06Ug@>$7)lDVa2rB_QG)-GGS zb?xr89c#Z`+qc$dUC_FSb&2a3-KNBO_Yhjrz46`mCl z73zwYD^^t$RIIOPsMufeS;appzO67;jM2I4rs!trUeNtsw_3MD_o42H?rYsYba!?5 z3Q2He6H%U1o=;w6UTogHyzIQZyg%mc$onwwNM1*tI6pjpZvLwLkMsYMe>z`M5MHpT zAh)2Xpt4|R!M6nu3Wf{D7OD$%R|}nro+}C}dZFl#MSF|BDl!(0FODt#UGaOxM~lBL zwp%@O^{cBZR#>y~d$re94rOypqb2+|r8D-KBpi{krsSsbp>B+Sk_>t*u^LxAx%L zuhu?TD_-Y`7=5_z?7DmFBxN(pipt(bG(IjnQg*iNUuE~oCYQfZzP9|sa#At5B2riJ zQblgX+ZB5&KCO6C;iHr4N_3UFEg0)j-BsNKTs}lg$T46{-o(7$=e?b`JMU=T*LipI zMEO4XvH5%R59WWC|9Sq{f++)A&`1i$c7k^TGs#tfac;f2H)zz!tU%h+vz15;MQ`SUdC2U#q*_wZ^ zu`8KeGOHvPBaVns#i(PnF>_+(#=I1BI_7N5O?9{W2X%vHuV%mIpr%Q4OmkDyt?Ac@ zW7o&3bKaD{#l95~;hiL3&mCR60gBM>bdXlB`TtDO)dVk{!{>I%J^{(<7u2 zB@ss=jzye^I2~~|Vyj|(mtJS=tt?D{;geF^)tI5+C z5h0W2sfNUgV?ARR#V*jrEs9$bml3xjjx^yh86BLJU67p!H-;~eFOn~jFNw&AxDe4D z@k0brh!qPI4T`;ryNaI_Mn%73Ok_snipZUjxysXs4UdVts!p|2(${~78 zv^rWFoflmcy*GM)^!4bQ(Rnc!VlKrTQ=2gU2#qvW7ZIz9RmW;$=fsA_O^=htMZ}TQ z!kQyN(opGisZ<&vRY`qh{<0uhsBDQW1M}7)yDEDss}0{8ej)r)ct?1se7d|Ns#dc% zwvtDxgOFTcuJk48Jn2?xowP}MLHd)_D1BE}E88lolVykJhUbMBp`}D8cb7-VRq`Tv ziM&j{Q{Es~MW`b}6(mv;?H=tJ?Gx=DQxa1avq-%}-Jl+$k!ajCWty9@KgAj2`gv#F zmff*lT8&OFNjtF2uA{3H;itpT3hrgdSID#Fx$?X6tr1$q9K{%=MCq>dRQf3Wl|f2f zsB*ees?1jAD)W>(u|W1Jk71E@EBloym0DP2M^wjDCse0ZPgNvJ92FWhJt`w=1!lY& zb8f<%Yol|8@ZOF7DcV0KC?+&!dQ5IiUQ7`jkI<+zYK>MiN0|NfniHDSnzNdW*cGwF zC@fMP;hr~1yJa`SPsmTpP4ZC8c!r`$aYSKK9E>E&Y}HK--pqs*eLDJV^o8h4!c2BY zpVeH@T+$T9mc&Zq8shfGb;Moe5y8{X0)R-xLhyHD(@A8%$$zil?>P6K6g*e>dSPwh zbd^+9tJ%v|XxoFK# R%JnuS4pFTRm#N9_{{X(4Cb0kj delta 12419 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 diff --git a/src/main/resources/Windows/x86_64/jSerialComm.dll b/src/main/resources/Windows/x86_64/jSerialComm.dll index 71ed6dcc498d731ee2cdd5b921d2299451a99d35..33a1bbc0378811f6cead17564a43a12fed75ea1a 100644 GIT binary patch delta 1454 zcmX|Be@s(X6n^JnNyV~Phff$tTciq7p%no!tw3jMU!he@G+T(nhB<7MsdF$$b(H=T=HBsLq1#teUfN~Vrvn9VI3;}mcjnWouv`gUGj_Wtu5f}fPP#3txGVdo8rC6;MDroP($47gI0lDgO~pL5ISoz}sov!lO| z+r#?Z?3~wh4xb1qYuztpnUvE8%DCB;(E^J5?KT+wA|_~zr+9h!eu=3PXk%&Mf=rLZ zH1Uc@k}o)m>-C0)DCNi2Q@-^A9hoLx3QtLsnAn-Vw$4N{Svfsa!mh5gLfDN(X*TG7T-vcsbn#Cs3=)fv?f3Gr`HoYF#3zFHu_qF3Tls($9pS@iVBbb|!2V=N`@DF4eW_XNe z2%q3X!ap%>x*48f1z{Ao68?oJ2%qCE!hdj5rWszLHPg&@b$h+Q#d8xPDTP@8$yio&2y}S6$OVQ-);#)TUTbA>Z)Gtw pjw`?4-oaVCJx=v9jpH(UC+G6kc@xK{aa`ToJU8CEd=-B}|1V?O?u-Bc delta 1428 zcmYL}eN0nl6vpql3{n-mfL?I&(F#?t1zHsl)(TYH^;X-dnZ}Ly(dkyZ>Bdl;Y^X(P zmHO@?^Tb8Bg}F_mnPww43mc0D6k(H0oQt|dGuej@G`Q#{iywG*Ze8O2TSJ z>AAV}jic)uN4F+I%+=ECk#X=~4D_Oqup7$p(*#GLUkW=K74iD}z)7;WI+N#Itk2B` z$Zl4|zQ?xru`Pw|dcPvJt7h1-R|*Xa!B(E*q|jv{c!-22^oI~^iHad1xQB$hv_|h2 zf;*#G9YS!cDrC3bt6U6q2%&ZH6f?WtOF__w>&9k1XCcSIZrQ2OD{RlF$j&nAs(H>W z`@9m{-01W91Z|L0AKS29zaNCq5YTV0x?p1$9ihuxO5H4WHWhf*obhA-SZyGcj+K+H zh7OI*^3$gCo;COVHui%(T%)gb$2@Y$OT5bBX0@FlCAwI=UXmB-Yn4l?RsFwpj8_)# zRnL?~dcU2ysZ@?NWbj;jJvAc9o^t~S{!tX_^{Y2|8sMxa+KkXN6U-bZXe+oUZA&aR zOi6R)!VBsYZrO28V(D=bo0I4^cKDj{Mwpn3NCZl_f6{Mb13O$l?%286I)omE2F0NMb zoYZhiBeD26NgkgjF_&&2t5)4;N6jpWC7i%TiCKXU)im}LHCUlj-vON>_9MLmEOslM z*n~v8zBPJ<+NF?WE2Dp*Ng_i!k!1Q4gBm%tuek=_fRpfTekIE>$AIN@_l%rwAJ zv}79Li^%HC1kiNRSUpa27jDu{fuHd+txIetOJcnPhp#EhjNzWxL@&>MgP;q;ugG-s z;CH;FGr~2DnKTvt#QaGGFo;WuH<3*;!4Q5+{0naqZ(~}P3I4`;#JgBW{1=Z9@8M9Q%`w-aJ!dWiaaYbe zH0S8t`Ot!uxhvs7I6h6a-zny|`L4jt~Kw%)0{EhaWSo#Q6ACFS#$nWIKX Qubs_vBW;Uc=8tIq162F$)&Kwi