From fdb968f02c782d30eb28a0c0bd03e8bd52e20d5f Mon Sep 17 00:00:00 2001 From: ShikyC Date: Fri, 3 May 2024 00:06:43 -0700 Subject: [PATCH] Update signal visualizer tool --- README.md | 14 +++++++++++++- README_ja-JP.md | 14 +++++++++++++- README_zh-CN.md | 12 ++++++++++++ images/taiko_test.webp | Bin 0 -> 10576 bytes 4 files changed, 38 insertions(+), 2 deletions(-) create mode 100644 images/taiko_test.webp diff --git a/README.md b/README.md index 6843409..b3f7838 100644 --- a/README.md +++ b/README.md @@ -127,4 +127,16 @@ If you prefer to use the Arduino Micro/Leonardo board, please refer to the [Ardu Note that with `analog = true`, all the keyboard drum inputs are disabled. Sorry for this but it need further refactoring to make them work together. If you want to switch back to keyboard inputs, set `analog = false`. -4. Launch the game and enjoy! \ No newline at end of file +4. Launch the game and enjoy! + +## Online Signal Visualizer Tool + +If you find debugging and finding the best sensitivity values very inconvenient with serial port's communications, you can use this [taiko signal visualizer](https://shiky.me/taiko). It's a simple tool I created to show the output of the Taiko Controller (ESP32-Analog version only). + +Just connect the board to the computer (using the USB port, not the serial port) and the waveform will be shown in the graphs. So you don't need to turn on debug mode or using `Serial.print()` command to obtain the values to tune the sensitivities. + +### How it works + +The analog version of the controller simulates as a gamepad and sends the hit force values to the game as the axis values of the left and right joysticks. So with the built-in `Gamepad` API it's very easy to read the values directly. To prevent the tool reading from other gamepads, the controller must be named with `Taiko Controller (Vendor: 4869 Product: 4869)`, so please don't change the `pID` and `vID` values in the firmware. + +![Taiko Test Tool](./images/taiko_test.webp) \ No newline at end of file diff --git a/README_ja-JP.md b/README_ja-JP.md index 5310c2a..773ece2 100644 --- a/README_ja-JP.md +++ b/README_ja-JP.md @@ -127,4 +127,16 @@ Arduino Micro/Leonardoボードを使用する場合は、[Arduino XInputライ `analog = true`で、すべてのキーボードドラム入力が無効になります。これはさらなるリファクタリングが必要ですが、一緒に機能させるために申し訳ありません。キーボード入力に戻したい場合は、`analog = false`に設定してください。 -4. ゲームを起動して楽しんでください! \ No newline at end of file +4. ゲームを起動して楽しんでください! + +## オンライン信号ビジュアライザーツール + +シリアルポートの通信でデバッグを行うのが不便で、最適な感度値を見つけるのが困難な場合、この[太鼓信号ビジュアライザー](https://shiky.me/taiko)を使用することができます。これは私が作成したシンプルなツールで、太鼓コントローラー(ESP32-Analog版のみ)の出力を表示します。 + +ボードをコンピュータに接続するだけ(USBポートを使用し、シリアルポートは使用しない)と、波形がグラフに表示されます。したがって、デバッグモードをオンにする必要もなく、`Serial.print()` コマンドを使用して感度を調整するための値を取得する必要もありません。 + +### 使い方 + +コントローラのアナログバージョンはゲームパッドとして動作し、ヒット力の値をゲームに左右のジョイスティックの軸値として送信します。内蔵の `Gamepad` APIを使用すると、値を直接読み取るのが非常に簡単です。他のゲームパッドからのツールの読み取りを防ぐために、コントローラは `Taiko Controller (Vendor: 4869 Product: 4869)` という名前でなければなりませんので、ファームウェアの `pID` と `vID` の値を変更しないでください。 + +![太鼓テストツール](./images/taiko_test.webp) diff --git a/README_zh-CN.md b/README_zh-CN.md index 45a076c..490a0eb 100644 --- a/README_zh-CN.md +++ b/README_zh-CN.md @@ -128,3 +128,15 @@ 请注意,使用`analog = true`时,所有键盘鼓输入都将被禁用。对此表示抱歉,但它需要进一步重构才能同时工作。如果你想切换回键盘输入,请设置`analog = false`。 4. 开始游玩咚! + +## 在线信号可视化工具 + +如果您发现通过串行端口的通信进行调试并找到最佳灵敏度值非常不便,您可以使用这个[太鼓信号可视化工具](https://shiky.me/taiko)。这是一个简单的工具,我创建它是为了显示太鼓控制器(仅限ESP32-Analog版本)的输出。 + +只需将板连接到计算机(使用USB端口,不使用串行端口),波形就会显示在图表中。因此,您无需开启调试模式或使用`Serial.print()`命令来获取调整灵敏度所需的值。 + +### 如何工作 + +控制器的模拟版本作为游戏手柄模拟,并将击打力量值作为左右摇杆的轴值发送到游戏中。通过内置的`Gamepad` API,直接读取值非常容易。为了防止工具读取其他游戏手柄,控制器必须命名为`Taiko Controller (Vendor: 4869 Product: 4869)`,因此请不要更改固件中的`pID`和`vID`值。 + +![太鼓测试工具](./images/taiko_test.webp) diff --git a/images/taiko_test.webp b/images/taiko_test.webp new file mode 100644 index 0000000000000000000000000000000000000000..a3069394aadc2555c8a09d864b2cb4cdb611138d GIT binary patch literal 10576 zcmb7ob97~2u;z_zI~_Y6cGR(rPSPFQ>9}Ltwr$(CZQFKo@AU6sJ@#UlY!=`BX%DM0OS>TO0QTLOh^!qQML(BFf5hd~J zGuuA>?ZxSnemY8Lb~*^*J^EI?etX?J5fpufcH#X*NYrlg7A@GV4IDiJ-GW}d$K0Bq z*j5l;lb-}$y!t@Xw?^;NAKQA-hoA#b{qC8&-p63zwO#izu%RpJ3k)j)XNAjfa@&kb zs5cT}+X`R)_@)`{KzC4-wiU6`;Z+0Xo^HPcQxgi!-LnQf^Qs_DA4>^#4R_xoLB8b> zqFRSx$LSZh$l1nyXnGx%EytKn@sqV%f2?ZUuBB2i0gfc_B{X6FF~~jb)*2BLwrHT& z6v``TdbJlM@cPara10VKh4}!Tb(Jd0Cc|$a@Y=2rt#asz&jr;k&hY@!TuyHwN&}Is zc0$=XnXOsm+5w4p>cntA8&M;`Grr87dg)4My_|v@)DorE^7C8Id)+uxWTUvv<2 zo64MEM#2su)H0rq7I%y zRgx^b^}ZW-NGI7fL=f)Kegh9bg-qziu4h#Zz+P>n`+jIhyD{aYhn=7t?W$f;8a_Yg z<;Q0Da|sFQl-66|Sua`djp3#BHssFudBa?y5lNA)MVCI`)_c~F-0t>0@aCWQnH7r_ zsSqdtWq*8TklcgNQc|o_RiCJAoCFJ!rIx0|Qj}^r$m?$Nnp(<6s2q*8va2P^IeOQ%`ss~ytYwN@+Lwl zv__`m2V(D7%qf%=P+LlElGRQ4MkbKAu}A5ef~WZs9D#~1+V$sH#tF56{yzoLHPjxb zP}TEqwdY7xGKtG=&Y17@Wb~O{=fzR$QYOPdQZT2M84z+h2xE6|>!kRv>pLv$d9dG=dfXLc{C z&e6*TjJ(R+lruqt&ulqEJ)p@)7S=2|nP$e3!hhurEOlIG3c*DE-5PQrz9rTE$=0KZ z$ySO%bBEp7U+9l$k58iL57ov^5l!QuIWq7UAvI5@dd4N+lmNTc_b!gGRpLaXVC=(- zEXyw$tM$`K?8%C#*~aM=JL7$?ICpa4UiR8JD({ZBwJgoMx!T4 z?YKbNMwOxeE0KNI~~80OItu zXq>l{zB;1bOa8tEo?wFa++Xy043>%L&rMG*S#i#5PfEz4lPV+3Wa2?)Pa;QnJR)2V zlZR^B2$SgC>%AL88Y?H`$rd&t*=yu~#n|JEoqz9~?7FM8oUgs6qw;Td9S$OC!IY|Ug&!F7;lQ1|p!A!rTb1JNH&nfRxQq4;A)a#Ht~%Ol zQHW-X!p(gYRPw-8{~Hzkw;SK}(^|hXazCePOl9$gmHlVT|Bvum81$|swZ+^weWxGp zIC;T$_+V9!(_ZP7!|x87p-so7%~yX?S)tu|ojyBQ91lZ_UrnTtEP}Jp0$w%el@)1V z`dF=tTkHH+W*m)=22IM>7~znSnoD#frJ8mAux6=V?2Og-8MWB~ z?~M_W|CN_KzZ-7TjIiI`Rs4;6$1$YtSFLz+;iQJUP+1H$7FL4=qWf5<&0P){#}y=6gCA9X;FhdqjTI@gXev90JC|tmC-r>E z=RflS3ql$kU-!Sk{b|X-XA()V{IVsFmuuE?4Y2g9{x&~Fn>~O?ldfoi-|#Q%pVoa+ zk^l$)Er;o|Iu#TVDns2JHDgRlBs_)=Kcu=d0v#LNF2=a zL3)f#9ZgoKNqsC^O78A!8J>UBhbcq;MbrNXzq_MMfPD{7H*(b$RNjylAtlq81$BkS z(tol+^6*oZQDdzR+72{b2az1y#58R7oak=Qt}|%>caJkB7*rRt-E}7AxQD*Zxc)Ti z%F-ezqd%?C;(CYicO2@^b0qw;#HRdr_g|vo*Ejw=;7utd{B}%s5~M%ululkBn#O>* z-1hO6_r@f!Qy`O!;c~8PF<8(^hD3H|2X!x42Z?F*P!g0#Lz=MK> ze-h-hl2G%}5@EneNcZX*!XKy2HKg$aiwOM*<$WA6mh$=7`O}-(la#}S!$sIm7W>bR zN1vvD^XD=7+I+!Hf-KX%rs~HPsQMo>-tP0)&0W@4`k%JC_7j5iw~i1AnpktPJd*&c z@9~vkj5jkk^nOY9P=~ z5ZALz&2ft32f z7Q;)rmQk)SDrEX4DIP_PTP-`zZ%TxbLXghBQh*XFBS=H`JLaK=mox%5Vnd1>?O4M{ z0x~}U00fcENyoCA{jS|Yi?Wuk-o-syC^>ffce6HfU1dILl&GSBJfoE30WPctR{OD}U{l!fTL-G7vx3Nv=+_q{gGR@0@0OM; zu#EQz0Be4aoN=>Dm`!Zlh_ z=cZTJZ9l*Xf|7S|urL|nMokd_hG4N+N+3#=xcsC#NiadFw+i$baj4^+4GH#CoK_Wg zwHL`{J}+f@92PQRYK<<;F{h0&Ox*Y`D}Qgd#hb;qUVC4sKhBJmvK1~Dnq|uFeF`^N zFxcr*ty{gCtszU5>r6&1pr&8*aX^&hiE%B@7IUTd%~q-RhdiA3n$2mbDlBz5oFmf_bkHSp*9ENTTgltH+*{#s@YqGx+B4gZ+6dky zy30xQdtwP~hwNTIzGO>g@Pwoqp*d~uU^=&xoO?Z|h}Ro+I-u~Pt3C2~Q|(Z|cg070;uwgz!wRK8+ESg74`y*JB6wPR{W_0!!JL4oJoVcPkupdedE!ck{-_kI%0al zpOmzgacA=6$*Xr6PLoKdKJ+SR%aW4)Z52Wv#sH6*!q6%O7Gc}Q^MY(Hz@Jp%;#f@J+gZX# z=*82x7z1V6O<6h!L#C9kgD{xj3ge~-yUfO}#LQ#Pxin-f9Eo;lAp19uLkeYFRNRKI z8o9Zk>-2t0fuyWRx?nRewc^Xq8wh7#w;2&lj?SVyeVDP4IQ*trZesgDi_nL@?GM>w zdbZkcxQZEm$8czxNvCn?{k3hOO;pWFd~3JMe=jNS=Op^~(VBHDK!+bU{pEA*O-2s@ z(6RQrh-))IZvlnw5`bGkq^cnH;NK7oR6pF^&|99m=Go=|{@mwszL;e(BN$F1dv(qP z-{kJVf4u+)Y6N!a;#gK?wM<$&ak4?TG>P=^?gm&i8sId(-(;sn4yv7MFG&>>dw;GV zhnQcH#(GXx&!BZt;AI;m8+1t-L>7FI5OQ^17vx9KrY73z9zk4NEv+X;W6F%XlHg>T z)%sT~Xv#Yc2pMXTt`m}Z!bHue(|jesSk;B40CHN~qUuM_{<)wly%3;gEa+=nqgTLB zLDq>zaQIyaHgkmQDhsA-+Eh!RVCJG}%3nU38m|6lOHc(>M)7@TPMMuPcFrqLg0SM) z554*e1=4a)ENNJS*3-(3MHjd@PiAH+6M2zY-<~o_ylKU^siT-e%;S=P$h8kkOn_P+ zv9mV<1@mqVQrxVaAPOUyhY;qLQz%IKmMe7Yi!00(x!#K);aeUjvj%w0P9J3_XO5%r z&WjQxM0`Dy0|KP2400`B5vP*i%x_9mK)zF|f`JIvVK45yDQH{~$~w|i_1<&OBP(

Xj(iRm%0H8!}FMUmrX>&Wg)9A*94X~wq>zr#{rEPpAwB%airAfEFt7!#PdZ9 z#n>cF4)@Z}vuPVO(q!a9l`Y?xQ_ct|)7+RN$EhQ9;XA`0UiLVgl5=p+1_EaqmxzWr z-%B{hNPp_9YxUlf=eruDav};WS}yuI?Ggv9628PqFvgO)57KaV%)Il6yXPvVt-zWX z33D5q$(m+9;*y}YAw_e&dLf8QCXj!q12PotNa~d#m01^QCBm6kT&}b4FS#p4;9ID5 zwNImaGx|9PhH{p_W;K>j*I1?v9}PgoCqDbbTzXaX;rJEY;|t3{9jj3(R3`q6bBR)O z`zBoE_={X_gIZxxn{pOmlX2rg$3q(ZFuXoJS!f(8({MB?)K=OiXEu3FwW1owa+F!E z4yxJX5Q!kOQ?IgVZNl04(UkI`!X~>S-PGIuL|taQTrnYa4iDzH-;kBw5ys3 zcG^}|F@{ev+W1D-$2v9~G07af*nuH@4{{4+2>=e~`RXI(UtH`>y73X8jWa zEV4UlAPR4diJBy|b?ZXQRsRqg@T({>)W=e2V?JWhDdi2A>urH} z$z)ntqg&k@let!Sk-EFzy!Xgkf%+fQTULZ-KW3@hrrYQIZ6yr|>G4|3s~EtOo@`+F z)3IT4jc=cuj20uK=ge_tR2%i+!7t21?(fv#8F(9|eFiBv7JCTDC4DP08&>D!JdoddASVU(rec*J6Ae?shCEe!8ohwSYwi=V@t>y^^ z9?`ZR7Qj&u(#(nUQ2fC$)MU6JkZ|KD+f=ircby!WLl!>3lYP)KNy(J|An#A2-JVO1 zVa{FT5{$c13clO*%XOXV#3LG4UTh{GeKCHf#!ZitHPNt1#1N=ZO)!EGxriIbJXxCD zVcM^SHh+hMXzS{t!Hh+3JG&sBbeogjS}znUM!w5iraCs_SWjx54=)V4gmHc14l4%j&~ZHTyCJ!wxlzuRPi*0CMk zyw@xSZ1CAK;sjBpyy;PX$~)e(i-uyIqzQ`{9s31b3e6WMk21lM(Z;HW~FI?SuF@^dgz})2;5s#8p9zha&D5 zV3E=Bn0dm12(8T3`f26UXe%;(8%wjRMD$p8y0ptt0e>2-V^*0wA7DB|S<1wk4=*d0 zWW?EiOeki+WgY}ZN<0X+X4s`z7puiCOqThuQ(l}nu-tWjAozT^g^54xOtO#U<|gfM zc$35u(Ae?M*Iu4r%!AW>Rnfr9;d3v8&=fy}VwoA+l$w{>FGuNj!b{dr#>dicn)o&$ zJCb*caMxhGs?2}#bEv%7X?lsYz=T}3f|V94IH(D`>FzZ~n+W-~HL4w1>epLQi?9Cn3)z)jy#Ln z3rD8;PxBh|PHLIptEk0I{o`GDOfA)ctDc^o))XUl)}b&-cLne;Gf#%Q_O7B3$D}hK z<2VDlw;{vY28EAKz#$j^8OduQ>su_F%(BS3&BL|oL48fuy=60OZwi1z=dQnE$9QJQ z?V;rIl9H%k#I719^&E<>?XwA6v{Wrp)1s==HsT!WLLp(Hu}>UCUG4iPi$v}0f=G)r zPmu*c%Pqvob!%ME+Fv|1zFSHiOxA?1mY1U}pOTd{{q`yOJ@V`Twy(U>J|W&BUwJVx zN%H>ycT}y!2Z0uXFZ%=E~UBskK8cu4_Bhn`v^+b>B zo(CLXEIn~eIX}VP=$UVx;6kaEg@0!*8q0X!$UxiLSlwE1tzt4HmMLGI{c9I%TgB8; zjwj?hxI2OQ7p1K?-euGQ8&n0!Bk?*IdOp}Scxf#>#Pf&ag|MPGjYF=^`WUp=uZ4S z&6fe-+w}RO3^)C6-wTW@^7A*YGDjYvteTKHp$_z4ENZA}<-oO}JtF>)@Afj* zDAA3ev8aV#l$*0M)m6`F3qYtegJGl4$Xc$EK(-8VbOfam<*W$`ZH{u$MO#h( z*zQDNm!8JY??$<>d)K_r>@oE`E}yVyA>YTo(y#ME9cnl~z^t-uHAruDxCh{h`*bRY zv8Mu45ykw5;;-U#SYaYAQNo9U+XXNDc!pMtu3jwqiw@H?@^=QrE@1)R1B*jMYeK6x zsUwzA%oEjjC0{G;DCX0azO0n1sPw7d4OoQCv2iO{P*<2(>bbqig^U?`32l#6frMk9 zuH1^0vQESCI8?ahV9raO)lj2+3XIridcYu?UI&eWC+jYjWa%c)deKZ5dK*XSr8@1}@67oKYo`VVk9%- zBJ_tUl?-{>Iej;GMxrHhsH)gW&7zO(PU`fNiD_;i8}a5sFO8!raa2Q)(?RBDEa!L- ztbzUnw?LL^kAk{aL0o;msBprUpomV2_&Fhv$DjVKV1%tz9Sf>_dR4R9jqwHva@IL; zS3sBfZ?@Csk{|JA+2ulqD?lH^!x<$Amb=VK2C2qPrFqCrPREi z#4_H=?zQex{I-`6+BBg!BaJcxWU=jnhEss*M&fP&F%&O*uxp_M48BkztlT8}{44em zir}LWWN;N&|8+N+2t>^fQt)o#?>vA<(h&+?72dCfTCguYByp*?mC}t9%PGt(ypMm} z5pRfS9LJJ{TDb}8q3)bjh9Q5~S0Ce-1i_(L3b(nx*Bo}sRE=?aB@WzrYN}eCKV9a4 z=oB3A5O_zvL-gN!2lmCJ{QX4y&jRCursCrR0H9C_YTiI&{Xn$ZIn5NC{8}VKN(=yi zVW$|M8BDPCYkSQ0oFa1gs3iaZ(4(#SS_fgplw0~Hk{wD-e~-hvN8Hj3<;e|v(p)K5r{LC9@(-ll6ww_l?EmatQAZuRz%*#Ld~*_wM6?m5nIHxY_BIx; z$mg6QSi|cV5llRn*azSRP!wnLR>7`xs68z#Y2kc(D!0}pE)j1%`yCn|hYUxE_UPyo zI=yKuX)}yIMZR`{>vz7}E+fsA!05$ookLFE@oFjimTu+lY`F^8u=OJgYkz%up1GW% zm*7Zy@R!U$xu^*x=%E2N#>%c<>nJdG!V+PGIanx^wL@DHI$i-Nuq&^h&)H>z(Jq{%$y2#|^!FXtnbIv~4M3 zH^FEXewWD$#$Cyd`H|}w7koR{Q0{C5t6Td@{!pTvy)%9fkq);%6R~-2J=-BB<)sCt zh4{6Y!UYHn<(YRH)Dgs(uZ3Y+ygS8FJ|ER&dvo%_=>v)xF?Y%4T)tk# zP9eHIiGw)tzFggw?#QD+`eI#&;eQKpO7R!=Lh_lh79?BgKD00@4&mVY4l-;pwNUah zt4$~!H(P5t{OVkPfYnFAst6n=2lCd}Mv6aIu@ENZ34&d=&!x?jyjc~6?c z5k))g70=}pp!?|vOuRfjs5#QLvX5@J<_yO|AVEWev3iUGsEB<}KtvUAed?;Zlm2Ov zzMtP{^1&Cp+k{>9k-j>TH&9?WK%5C|#qE!~8e3RhYkI+Ut#C?xq|2tIHz=w}qkc$_ z{t8Jd(DP+qJu97Frw2M#yv;Spu^oE`3LTTU^-7V;)t7#a0krXOr*U8+;dY0CX;QCS z2yekC1Wfcisf0Ai7ypVXFRJ&&Jnk6c=j|!Tr0IR=0qu&ZNcZz=lPkiK*j^yE)?I#) zhhwssM6BhByW&>wEns^sLd#L7>-3L{b<~d%=c1WzJk`Y-m;C9{n`YusN8Rb`xmZC6 z%gg?pjzR51w#qsyXqbEl#LaOaI(VAXVYLyyjJy5?_Htd%2N&Xroy0_&-D7RmWruXt zY%jq;Gylt0VvAy_9#-Ch!JWpHA3J!Kx^T7`6Dw}skKoh5Ov;h)qwnn1*j)Ld(cMBj zmp$v&!)$fhmCy>Y%hGf>)*gN5vCjV+kMHWk8Ak+)y-bIH$MFQ!a{oC9nwoTDFJlc z7;O|)@laAs4QDtOn}J2s8=UbQMrrn{4(QQ%Z)}ffguK*WMERGMjZ{z=l}D(bJj^3~ zKjFBs1Iyyt0PA%iRJL_zdnC zBX7JzOsU`ObHq+hwi2< z1SeMh@rVezvkS`Ws(fUTa%HTmUK4|*hNXKC3k1A`3bA;j=DoB|;uoNu$;!8;+HJOH z@ZBDhRZBvOn+RB4`fO3i68qaGZmjPrf6k^0xW06elb-f9Zq37;K638*U zje;Wl11`NAS75mC_s?f-k_c2{eG#21bwR5T6M@0FPU5KIn==sDF#b1hq;4pqyKV;(qwu(m3oqsz=y4j$C)ah|p5_PUq>~k?Ut&-(9qnGdH&IteAz6pLcv|ReI9l$*(kNu|+SylZP z^z1O73E?lGH#+{DOz%j?aJj=JL!+*;I|wEkpVw{(-h&o^&i5#{i`fP5hTkV`J zQ&l~p$WtvwbWAbl@E-5;+^8Auo3r$rB=EPyt!=T&##SAM@TTC5F|?=F=bl|p4EkgQ z!A7hf`C+yf)ps7c*A#`K7%(g)E7w0%^Pz*8l(j literal 0 HcmV?d00001