From 174edaff6e506cd02be3b617a98d42af799184f3 Mon Sep 17 00:00:00 2001 From: GitHub build-firmware Action Date: Tue, 19 Jan 2021 04:05:31 +0000 Subject: [PATCH] Auto-generated configs and docs --- .../controllers/generated/signature_all.h | 4 +-- .../generated/signature_frankenso_na6.h | 4 +-- .../generated/signature_hellen72.h | 4 +-- .../generated/signature_hellen_cypress.h | 4 +-- .../controllers/generated/signature_kin.h | 4 +-- .../controllers/generated/signature_mre_f4.h | 4 +-- .../controllers/generated/signature_mre_f7.h | 4 +-- .../generated/signature_prometheus_405.h | 4 +-- .../generated/signature_prometheus_469.h | 4 +-- .../generated/signature_proteus_f4.h | 4 +-- .../generated/signature_proteus_f7.h | 4 +-- firmware/tunerstudio/generated/cache.zip | Bin 1062889 -> 1063472 bytes firmware/tunerstudio/generated/rusefi.ini | 32 +++++++++--------- .../generated/rusefi_frankenso_na6.ini | 32 +++++++++--------- .../tunerstudio/generated/rusefi_hellen72.ini | 32 +++++++++--------- .../generated/rusefi_hellen_cypress.ini | 32 +++++++++--------- .../tunerstudio/generated/rusefi_kinetis.ini | 32 +++++++++--------- .../tunerstudio/generated/rusefi_mre_f4.ini | 32 +++++++++--------- .../tunerstudio/generated/rusefi_mre_f7.ini | 32 +++++++++--------- .../generated/rusefi_prometheus_405.ini | 32 +++++++++--------- .../generated/rusefi_prometheus_469.ini | 32 +++++++++--------- .../generated/rusefi_proteus_f4.ini | 32 +++++++++--------- .../generated/rusefi_proteus_f7.ini | 32 +++++++++--------- 23 files changed, 198 insertions(+), 198 deletions(-) diff --git a/firmware/controllers/generated/signature_all.h b/firmware/controllers/generated/signature_all.h index 9fde17fd64..6104d2e16f 100644 --- a/firmware/controllers/generated/signature_all.h +++ b/firmware/controllers/generated/signature_all.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD all #define SIGNATURE_DATE 2021.01.19 -#define SIGNATURE_HASH 445786044 -#define TS_SIGNATURE "rusEFI 2021.01.19.all.445786044" +#define SIGNATURE_HASH 1284601733 +#define TS_SIGNATURE "rusEFI 2021.01.19.all.1284601733" diff --git a/firmware/controllers/generated/signature_frankenso_na6.h b/firmware/controllers/generated/signature_frankenso_na6.h index 98e5ea577a..adf8c12ef5 100644 --- a/firmware/controllers/generated/signature_frankenso_na6.h +++ b/firmware/controllers/generated/signature_frankenso_na6.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD frankenso_na6 #define SIGNATURE_DATE 2021.01.19 -#define SIGNATURE_HASH 1655641 -#define TS_SIGNATURE "rusEFI 2021.01.19.frankenso_na6.1655641" +#define SIGNATURE_HASH 1444549472 +#define TS_SIGNATURE "rusEFI 2021.01.19.frankenso_na6.1444549472" diff --git a/firmware/controllers/generated/signature_hellen72.h b/firmware/controllers/generated/signature_hellen72.h index 91678b649e..4c9c56fea1 100644 --- a/firmware/controllers/generated/signature_hellen72.h +++ b/firmware/controllers/generated/signature_hellen72.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD hellen72 #define SIGNATURE_DATE 2021.01.19 -#define SIGNATURE_HASH 2208611457 -#define TS_SIGNATURE "rusEFI 2021.01.19.hellen72.2208611457" +#define SIGNATURE_HASH 3584552120 +#define TS_SIGNATURE "rusEFI 2021.01.19.hellen72.3584552120" diff --git a/firmware/controllers/generated/signature_hellen_cypress.h b/firmware/controllers/generated/signature_hellen_cypress.h index 9c52132c91..87a77bee37 100644 --- a/firmware/controllers/generated/signature_hellen_cypress.h +++ b/firmware/controllers/generated/signature_hellen_cypress.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD hellen_cypress #define SIGNATURE_DATE 2021.01.19 -#define SIGNATURE_HASH 3546513791 -#define TS_SIGNATURE "rusEFI 2021.01.19.hellen_cypress.3546513791" +#define SIGNATURE_HASH 2237714758 +#define TS_SIGNATURE "rusEFI 2021.01.19.hellen_cypress.2237714758" diff --git a/firmware/controllers/generated/signature_kin.h b/firmware/controllers/generated/signature_kin.h index cb54adf0fc..2900af1f2f 100644 --- a/firmware/controllers/generated/signature_kin.h +++ b/firmware/controllers/generated/signature_kin.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD kin #define SIGNATURE_DATE 2021.01.19 -#define SIGNATURE_HASH 2189409157 -#define TS_SIGNATURE "rusEFI 2021.01.19.kin.2189409157" +#define SIGNATURE_HASH 3564956604 +#define TS_SIGNATURE "rusEFI 2021.01.19.kin.3564956604" diff --git a/firmware/controllers/generated/signature_mre_f4.h b/firmware/controllers/generated/signature_mre_f4.h index f597aa539f..bc9f88b0ba 100644 --- a/firmware/controllers/generated/signature_mre_f4.h +++ b/firmware/controllers/generated/signature_mre_f4.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD mre_f4 #define SIGNATURE_DATE 2021.01.19 -#define SIGNATURE_HASH 539394471 -#define TS_SIGNATURE "rusEFI 2021.01.19.mre_f4.539394471" +#define SIGNATURE_HASH 1982189982 +#define TS_SIGNATURE "rusEFI 2021.01.19.mre_f4.1982189982" diff --git a/firmware/controllers/generated/signature_mre_f7.h b/firmware/controllers/generated/signature_mre_f7.h index 744629a029..468159ef36 100644 --- a/firmware/controllers/generated/signature_mre_f7.h +++ b/firmware/controllers/generated/signature_mre_f7.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD mre_f7 #define SIGNATURE_DATE 2021.01.19 -#define SIGNATURE_HASH 539394471 -#define TS_SIGNATURE "rusEFI 2021.01.19.mre_f7.539394471" +#define SIGNATURE_HASH 1982189982 +#define TS_SIGNATURE "rusEFI 2021.01.19.mre_f7.1982189982" diff --git a/firmware/controllers/generated/signature_prometheus_405.h b/firmware/controllers/generated/signature_prometheus_405.h index e344f7ab03..a96e25f9f6 100644 --- a/firmware/controllers/generated/signature_prometheus_405.h +++ b/firmware/controllers/generated/signature_prometheus_405.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD prometheus_405 #define SIGNATURE_DATE 2021.01.19 -#define SIGNATURE_HASH 2629621827 -#define TS_SIGNATURE "rusEFI 2021.01.19.prometheus_405.2629621827" +#define SIGNATURE_HASH 3401549946 +#define TS_SIGNATURE "rusEFI 2021.01.19.prometheus_405.3401549946" diff --git a/firmware/controllers/generated/signature_prometheus_469.h b/firmware/controllers/generated/signature_prometheus_469.h index 70575dfb28..8ae74739ee 100644 --- a/firmware/controllers/generated/signature_prometheus_469.h +++ b/firmware/controllers/generated/signature_prometheus_469.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD prometheus_469 #define SIGNATURE_DATE 2021.01.19 -#define SIGNATURE_HASH 2629621827 -#define TS_SIGNATURE "rusEFI 2021.01.19.prometheus_469.2629621827" +#define SIGNATURE_HASH 3401549946 +#define TS_SIGNATURE "rusEFI 2021.01.19.prometheus_469.3401549946" diff --git a/firmware/controllers/generated/signature_proteus_f4.h b/firmware/controllers/generated/signature_proteus_f4.h index 0ea123fcc4..bd6e27e52c 100644 --- a/firmware/controllers/generated/signature_proteus_f4.h +++ b/firmware/controllers/generated/signature_proteus_f4.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD proteus_f4 #define SIGNATURE_DATE 2021.01.19 -#define SIGNATURE_HASH 2646870958 -#define TS_SIGNATURE "rusEFI 2021.01.19.proteus_f4.2646870958" +#define SIGNATURE_HASH 3418839959 +#define TS_SIGNATURE "rusEFI 2021.01.19.proteus_f4.3418839959" diff --git a/firmware/controllers/generated/signature_proteus_f7.h b/firmware/controllers/generated/signature_proteus_f7.h index 6e09b1e55e..a4226eba06 100644 --- a/firmware/controllers/generated/signature_proteus_f7.h +++ b/firmware/controllers/generated/signature_proteus_f7.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD proteus_f7 #define SIGNATURE_DATE 2021.01.19 -#define SIGNATURE_HASH 2646870958 -#define TS_SIGNATURE "rusEFI 2021.01.19.proteus_f7.2646870958" +#define SIGNATURE_HASH 3418839959 +#define TS_SIGNATURE "rusEFI 2021.01.19.proteus_f7.3418839959" diff --git a/firmware/tunerstudio/generated/cache.zip b/firmware/tunerstudio/generated/cache.zip index 680b556d5397637af6898f7bf5b2ec3f91ceb8f2..4c123a130ba8defe6fae52b481d7ccc7b967e183 100644 GIT binary patch delta 269857 zcmY(qV{qrs6Ezy!&Nogr-q^Nn+qUtEtxYzzcVk-{+t`>J+s^&{pZnrI_eIy4nN!m> zRa4bf-F^DxO1SP`I4BG}3?dA&2}%?h;wNdkI5HGFf{reX@&9YByOl_eZvP{0gP=J7 zZ-O-#Di`X1#9a9QpFod*vVg?=Ny?_$yO@g3n+XO+u>=8z2Zo-0LxDyBAcMjFf9_$7 z&%5os2-@puUUgov;jAdx4E55+s3gW7JxybZ>@Dwg$t|o{sbec8I7^9B>@P3Nh%?!~ zJ~Xk3kqhRg%1TycF1sfO$%92T3WMmd48x!7y$Pt0KJQkYo8k6EI0^f7A509S3jdU2BPmbKck4dLbsI2!<4-UVSM`{rLN1!H6}i0`${Gth;88Fq z0-UxOlLId7u{eufmrlVXXpiO`5fKzSG+83K!HYUS`<0-cKYM$uWV{>uFkG&MDw$z; zp4AHA4)(rHCEYqk(iBm?TYS3WKeLR>+p%N80y{@JfyT{Oe>pVqR;x}<0Ap$D^scBq z9(DDSfiF_Fp{?uxVM zmU9CCm_$^9;7NFK)ei+jYS{>No^B|T<|^c-;Blw|&qE{z0LD-Y z+fY!Mm>Jb<%4@96pvzLvqV#tY{$43WN-*zqq&aPaH2 zgVq_aUH<+{*Rv79gF)kw7T_|Zru>sU-0(S%A;j-^Y2OK)&VjJ#kFbZV5A~^`=Z{36 zq;Io#ezBd#I1Hg?C^x}Vn3?Rh!1;13I=i;KC{P~+As-+JM-lfDizr<3@8%sQRpR1Q z$(RrV5w%SGVCi#4tUKYWRwhGExleu;O01~;+#^A9^KM~bdUX!&?EPk+r29B=D?`?> zb}!semdVH4!^bjJeUW#cy(@HXjL~iGWs#ol4w~U{h5Kizd8WwM`GSlSaR1OC)HFd} z?u8)o+|_Xgsbu;^ALIz>adv*{A|#sCm!U#U@g@E;cqB4{*kKl*0*P=vW0LpCLn zdUOzCZ>f+~e3H4|-ke&tVLQ1xk%;pB>^to6Bzh=~iOc=*GUaFQfw@unmmGFhIU!V@ zXIM1kGIT-@@G<{l#Sgqc%Fq$J{82$T%?^!*wR+h5m!Kw$$bklH^k{3?NJe=J%1rNa~|alES-$1isDP7s}PV_AjtB=vP|pLLfv5vSJ2dE!2xZ z5M|EF&h8BIS%B6ZKpLJOq11Lk!|WSylAp##D;4a!#(hiVYZo1>PVD`Cc7f*1`e>Du zJp4&6a+R!Vg+626x{Hz>#-*q_NQm=f^0VnUYDVqYe!maI+(6*L3=LcrCb;8Y>5_K9 zvw#_I-Zk!jmd~McpIUvGe7)PV<9RYhW|~1-691!@8lPkVp0sSBTJS+≻+aHT_cD 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 delta 269519 zcmY(qV{o9)7d4nQsN| z>gscE-GkuiwV+=RXb@P?k4A7|1h9r5siFwrtg!bKkOu!JS_DZUY@PlG-1&jC|9=5y zfADPZ{{eHs|9=2E1l;5YTEh<(<&dBh35awM5X>bo5G)X6kkmO;czodhC5JS)=z4eC z;7nkAYxq<*STrl;F~gTAFkX{lZ-_VHnrqe{QO-I&wTnTdQ)1^yC?ls5DCzmyu~XX< z0s*HQcXc(r?#jr~0E1Nv2CGnXN8fJPvq@uonK2t!A_;>!wL}rO#+K-TI7pH!Oe<~y z?a(3bI`{&vI5Qdy98l@O*q<@KnyOn^2QJ^3Uh=Qytz{Ly;ZO9bXsL^9%QA zG!S&;`q7CKH<-q6FR2-6j2$&#!TD=)&A|milR5ci6)SFB1VDe*t6Tc=(g~feE9T-})%DOidkmc!Xkg|iaV-iK$_qn?5 z1Vys8g6;|SakNn*6^{7vxZmVgWI24un#JeVpU*0YJH!P^;S61We;To6cInZj%Nn|U zS)&6)GqH2jrYrG;3fn8wcE@bJj<_H+0ytQ{gYteKgPQndu3tvNYI1>4L^wsyt7TG* zKS$e!Ji~9 zGLcneyaT@=EafKkb;4wKgp#FtP7%*9*9my@U-C6r(J(Y_C@K98C(hQnBZ)XxREkIZ z4xB{uvU9|(1|bt#9{|l9o;@~0zHU;+Z_j2~77z}(Np0!vMp()c`(r7SkS>rZ_MFrM zE(ZF``$R`E{T;e}o-^XlNqWP`)}_Io{tQ^J12kp(7ub!jfeMfUzOm7R7{ChAp9}1p zH_3i=BSe4aC=U0bW!N(zPS=HB4Xj0pxe0x6BT}qh26ixNk@L*fYH|)C3i{Z=^AfSo zy2Mb;)%{3#z;Hw}-F};$G5h-P-2WLMhBCxME6df!337=GH5lz5y@kYGT}T=xPrc@o zHd6$7YB~DOKf)eunn<*5@=1jXX$kcGh6`UR1BMq}{35VqUAbcH`bZ_c0=Vz}*GyKG z(ge{7ZZRd_SX*!7F_D;0Br@m|-Ry$o3)Z}T$n|9Ow7~^>onY;`yLohc%p8T9Zd7vk zYRu=_GzV{OD5w)zk-Xj>*fZih2xPm2=+k=<3V>l(w=ZTH819eIYp`B0YXBweWrp0W zreJ*KJ!#^2>X#MbMlc7jd|H&Cy&cA3!)NQU<=a+iy(!8_L@T?XRiqhaCz(V&K9JDI z$gZi{0#C#gkUY(wR+!FwkC;>s{m<6On-h#8#vcb=s5E~MvUv^4}IZ;)+f=joaFj&pGJ4<0Z*Z>nuiba#3$P| z7&~~-?YTW!pE?@bxNv9(?wb$oEqyPUbHrQ`6ZCnfE&x4-8eWkD)+U7R{JtKZh(y4? zkWHo)DVB=zJge_uH)I8b$Z52IZ&5y85|69{_JX=yG!p9q0)8CC^bNLQ5vRuzI= z{7BlUT=D-_G2oX4V^lU6rAQi*V7MSXO!gafT_b`{`jj*{!H3Gj<>{QTtDxDMRP)D4N5;bY%oiz3-UVT@JbkCOdm{$_3rlz7YIq!;Ig;(h!GgIs`) zY4sznYo#kQm9ny7@@3p4kLICcr+?s%8axOF@^+ATIkl5C}t08k(9O zK|gZPxFP=lrw1rioMAA#dmO)xVZ)RO4PGKYN3wPD50^)F79U-qIkDeaB&GfU@p*1i z;+-U(lkBSoQQEqfdTR~VLbyu%z z4&MtW(0GpxUv+>lI}SWg>cHe*P?p%cWKxrVY44Q)E7%4+f}b?FEw}m}DW3IM<<=*{ zX04Ut7>uRCwu+1LbvC|@U2vkNeOs1(P$F_FWCl1_3X=3y+49RO^rifOQGL{Wp#e-_ zc%yNY2hk0;x3-_kj{}H@6iP@7cA`_e-evgpmB4G@^Tav4e_0$4)00wPl*GN-_G}?FC-h(gVpo!jQnI5^}}bEzq0?$ zoY?Be0Wk%0QMWFJ*AIRckKjQy%wh?)@zlQGW&~@jZHeJr%9&h<(bxwc@+B@e5tCvm zi@K(l!gs5p@Aea9pDdS#jv`}`I~v-YR0;Q33K7e@9U>PQ?Blw#pjW`;uK*h73DPQS zJ38li+K)Vo&T-4f9Eh)%-=11|{e%MjCteQxz5X8s3!iNqWRV~t=xg0SUk;Z*m-xON zQ<3rD-#|4}|8_!Z0Mm3=R&`-g(t&FVodwbA1}ZIUPqpeoW_vRP-=GWb(M~T#t)nEr zzPy9*-*%Hr2WYb?-0U1kU=av5MRmKSe~9Z8zj1OwCpol)IDTwOVaR`y4=ANd!q=Md zMAW@zQX9=}__wpyJCKYx6yOEJz44198nF7#LCLCDJSLocMD``Z7jt z4FqG>B?Gkq+g4;&nw{wDcEzb{f(-aZ7VJ__LtohD3fAC?bU5C}b^i?W@|S@|mWdAy za>u%jNxj$x8)275kz?)tL@QcPK;n!%c0?DIT@DGHdrjRNN=*g*2Q2_Fj9=XIKUjV0 zeqNuD3PlQ?FPk?NJrVp3lKKu&K=EwU;yayyS%wmpC<9L!?hr>#88Swjzkv)B_uld< zAfENO-S!CXbSBI{%_np*^Y781^FkB_leyPzpvGu3;22ved#q7YENEY`+ zbZ{#bYg?|jF-UP{exJTPO*qCypfCM|2=lcOymoRGz@Jlc?m;SxK=!!CnI;%D>|MhK z&bJ``7DFS7PPrkNQ7j^5i#>bra*0;|HxoEyTwzLUiZs}taRkb&MZNypR5NNgSx&t$ zWJ7A%W5wx38hSet_>MGKtrd+vZvL%XSS9j{@$KgE@Xq(a>R?y5ut-FCCa1ViaF<%> z;YoL3jd-U)3|z%wGj^!!T2PJ~`FT_SckkuWj)%NRr33bxTI&POb!Wo1d>9JTSi<=& zUTSpN>om=25fBCqnea#8(JZL6F442vO)vc~d}6I{r{9;Yb0}U)*Z&rDj5t#7sD|f# zkI`{tE|m3_OQnrJp0bZGV7xW5CIhZ$r31#K(C8xnvYuaOT(JYOIVXr6GKV+`&a&8v zUApwt4GgWOLWEp}#rb{%li$udUUUVMb6HIu(vOE3?qEt3DK1G~))3pJD9 z`^>x#{T%Ful@1zDdQ4){*k$cs^<;As!#mmzUlX@!cT_%>(W z9c0Q11RF&l>ehPpGqWw1%$ne3jCxo|S}O%un7-AT*l%jk(mAqpaPein@IK?R@)zYX z^oEB=LZ@)epJ~dq+s-4^pfm{HRRqwKz7SdzYIVY_h}j?M9&Y3KUXWX@5F6 z0kf7UK$PdK^HLb9seVAaugTyH&8%hQVsawrF?r zpF?`N zd6&K<(~jAQnVR5xH$5zwmuSPkj%fmjSpxxJl`dMm8xE*`?745wWFwmIQL+e@xz)Il z?Xa?cd-7C31@~B~ddYm^JoF+)^gStzF_Xv|*l}w2u_kf#BQ9kBP}nkU$H67p6&}cx zmiPHs9JY#%TOL*8tYF(FJsw&5Yi|v;c9rh^gEEx=AiJD!N%;xp71BZOK*0rUmeMnY z8cFP%C-b`!_Nl$cxy?Sw!UYaJ-x;Cv%u;V1on2nyBK-D~q9e_o5P^8z^Hs=589y8Q z-mk!UprlAeY0((kT8-`tM6opF`wQ;9zmtVwp}kSLXer+DY9Sukrd!}TVcvp}g^?yv zJJP+^T1aDncY2b&`ZFg2U+o4U$ub7#Km2=5WA>NX(R{P^3m)Er6?9?l6vpy7E@Zff zCH6OGs6E@Y@6x|1YT`L=%Xl?mHU{G9HFMrvUnX}Jk!zvbOb;}P*7Mz@&+arzYyPbU zSLV%CnP^w+rzp3K*C&Gc)$cs7(;Kcbfn+y4Z{%t`93483Iw_fbIq<(g9ewiej|Fvr-PLx|QV*FA86C*vU3b;b#+%VDD4rXh+_p9*i_smQ;HN5> zn3!Jf%s5lToKDUpMPXk}v^@N)7fars)nGBZ-ubyUw&m z6C>l#;Mbpq{n@8Mh{F_p@Uo<~KW~44ggc6wx4fky_T#!JRm_&1%aM$Mh#gsl)7ga& zh8OAv{aF3PPW^hc0in`VX&o_IUL*Qh?utG&KZxOH-K2u$;kqaf93yUzNfkPXz@-VW{$eS&*65T_D_Is3Pf{gPN_r zQ%6PCZVK9tkSSbX#fAT;w)=mGm#uR&buz?J@mhrz?qqYo_c-iL1=VyZJOknL5(8Ab ze#C4Ob>0v5z)V$cbdF(yVq6+cdYge|iyr`JVhhHCkeKY0OPaaWU)YjmEm=J=SuZQ5 zCTb(g+96f7{dX%Swd9vRZrLd|l$obsKA*X@@G}^m7RRE;>(GfJVg}B(=2qT^;gt&; zll7m_3@PFL$KtEo@P=+Bm;GGG1lA#S*R?`n@3xslyerRlSeKlsM{ zV4)352FJcGlHqNrd%iQlFRA9Dv>0{WZj~pPLUSx?A~)Sm44aNcTabbqGaWv2ax_JZb(J@Vkm-Ubbf9^@?hh~d77xzonIQ2=>_i!M2#x}g8j==i&E5db7(Hxm)DG6Mf15}EGGwQn&y19YZ z`Jppw>&at`xI|Zj5by$5_u+LPi$C6a;c}BUz*N%or5G8*5#MzF!E*&)wqfBcp!n{M z=cuUBd@$>Y~hR#E$s0GwsxiC^t71`hh(Qap-d{|#^L9bt-l?`~4&YJ1NhbY6* zuGuH=c<~&6M)Q?5KLG9W%RIXC-Nu@8rB?isdY8)tC*-etqj}0*GaPcepukl8;lJq6 z0!H-H|FCZnEbUi+SYa^)5gqs(X7Ud9#6a!teP~&_+0taCGE1%WR3|Lk{qoABm*rH( z@2Lzm%jGKN2GigSwiRHd>UA-rsVbwXVzElC*t8m!&8oUq)9OCM=G&90`|cpl_2H`~ z>zX#+XBLbGnupw$npz@TJLz3*w$FzbFM3gl1erF(`n@(v-@#*r$ga72g9x{KK#${A z|E=^^Z%^x`VFF}e4V=U?p;zoGeNYUSdbe=}f_i-&d?vosei)bqN^HUqNoLbXL1(=dce}QDiM*zGpP>9{3l21AEu|@CAg3LDJ#ncdTh-jZ<<+0`E?IE;f$gr?oqd5K<=9K1B#wt2Uh2@ofs!$ z?;siFy9d$xF9Eu*BeM4VB}+Eu@(udI?$+%v%Dov))rIjntyihEBC83I5%)XDnW1@U z{Ol*gYdssD!r`sZoqi7YsT+T=VWqt0pQT?$M>E^VwWI_t%E2{d59K^6xYMeCkgHC? z_i|HsJZ7>d1%}6wH#k^+rXAcjBdHIlRfbfliquMoR00wMhaHAD8;sb-2$4gy14GsW z2FndE_tqX>1Pv<8{CwGR3>2ygW{VT84`}*11|?K$=Kt0^(*Fn+Ik9IX1ecKQSo7== zlTwtH5a*fJU~9XcH#t9P{W7br_mu<@FKoW^sXIFCBww?|x9-^)=dWTZB!w^MrVt_I z_NnH1dXRs0_OHo)nI$d?P>6-+ieD9#kBB%HP*)%DHd4pSn?4>*{9}zZ zoejcpbBgeDP3)U8_X{aXJ%uy(n~UIKMj~2CPpad4DOC|0PL1^F!rOW2+UKZoM&Pld za9Z>DFtz8Ap6ZlF*1G1AC`E^Ciy>9M5Ihcu30bMv1PI*bo?YPo;Z5Eo)6?mQcs!R@SwyTTe^k#t`zM#yKkN!PA zQ9sO z${7MNg=9)*-@se*gFbQZlHmDJ%yPL8pZ5qoBO&u%c_uOVUHu&C4dipzimr5 zL`gn7N!UXtKMMkah-%UJOjB2tI_a4#xIKwOI3l?4Bv9BeY4y5Fkseu9g;Iq1$*xB6 z7xW_)g9>Fj4LY@VHtcUb+5AolN;IGcuC{VfD_EFOq!1SEthz>V_a-b?I)60ukJ}i% zECaE2PE^_4kfZvB%te`ESD%Rx%RlrA%^F2ak~eOFsj`gl>)!m|pCkH3mN3DVcZ68Y z*+)N(l^pUFSa;Mskr&u?itkB{Blrc3n0Sb7cMbgO4(A9( zh|c6yrnFf+c)8spO`oGhu%56;DZk4$W~9H(rV`i-43O0ksV-9rjP%vCI(%7`EHsCz z%G8b2T^YH@Q8T(&u|gX{ml|pSU1F2Y(ea<=R;)LPA+GE(#sAcyzf~u)R9*Z}5DWy3 zp2Uu7-@T`(btNVhmcDr{X8;UD2mG**dnnxOj!<7r ze~{JcH#3A)jY=Kc`30sBp19Sgo`e`eJ%Ev?$mo@=`{Ep##I_vv2t)=n-917N5|{7m zDK(6*^|S>v!6Mm1ShZOuDwLHOe2SU7J20G))TBFqR?=u#Wd~Giy6M+SCsSL3!9p~w zY_UK%wf_Eggf+dh-g-3*x;9g0>3U4)mKT<|^GJz@8xk02Ev060jh z5q*=Z8wnaw4}LP#8hCL*ENtUn^A+`h)v{3l$EjW0R~b*%i`uSLaoTugjm#P#%7Jih5=Hs$aar34;*1d^9YSU$`bFng9~1eJth zMOl~d)+jTI1HHT`8%S4k;LBztZqp@A_b*xXHZQ26rQ1|bDtJ4kp!rOxda0ATdbunW zc{^{dlX_~I^86vEaO=>)aXr>-t4fE7LCBL&>#k)ja@8EeAwQX}l0G2#h)m0btlyIC z*Ady%xTGu^jID(U(PZQaz#rB&^B^P+$_w)gbFToL{-4t3O22L>oOu_hZ0*O|O+NPp zd0z_1pJ)SK?BeIS6Mog7J7|3bBI4NGyqa7IDTF=jI)$kuGE!{vxHlr)Kz>q_0MQkn%V@UrqY+(g&AZ;O&7GLvK35cMFf4f z9kBvr+O6v!g<5?f9ZP)>$GM{wTaQ`hp|Pj4tW~U1di`U~hSF;)}J% zws;>pl4$@CLpY0bwUQLpl)X)u;PC}H-EG5x2N~W7$tX!;jg~30U*6Flpg*VcPNZEX zNf9`|huV+3r~N7oa|bVj#9a8v-{b=gmihCOH8{Gd&{#A2!F zmCrKZvc9DoW9qTVyxnT9-g54ZV!5EH8-uP8!wHaLA_)0n4r2+VEo3+DBlL{q#M_xZ zO(5vUP`#rZga~KSB;W>`vx2d2B7d(Nbk%J`qB$0&Z^7_CCql>$6rQE^4-~241(prA z_Z?X9P@wx<4gem5=?{-a0^c$7Ul z)R3bpS?Ce?`kObuYSD`lX##($X4d;>P_Lnd|FddM6MdFn!>it}N7jT6A$`e>gD-8& zH+RoRSvv`cPrXkhz3C4nzUo?3rHp~e=_vw!gj(^T(Z(ogMR3Dwg}KI~7+TliHy=N3 zfwL4^3CJmY;HtXNBYAo)Q6Z>fkC^j5mrC?;_P3bTZ`;%Ax$Ej5*>Tv}7OKVT4(=Kc zEm2gBzW(RfE8==!*ptsP>++^L8^+mEjhv8zu%@;LQi$FU1~L zl3Rk~ME=EbUXBc`x#O2Xc`RTOcNjk+0z>15$QKO9FQsj#5b-klQGB6C0#3ZWIHYLz z9W*^htBN0eAT3OFiBBIM=BKu$NlgwE7-@uC*5{Y-eJj_`>Cw~>;UTo+LM&9E^p8NM zjv1a%SSEwymPZzfaheW@gm7)H(8oc?5-JT$JYL}VMM`LAY_o0_5NS5SszJ4iinn4J zM=6%#fg6XbLk>l@!$^{>$l3F_*|Z=DmmLPK$P6l0ODG0bCkN@37a%H;z?}kyN8ltZ z%Q9lJcIIsj74GBQQrR<#>&5-VmcgiKKOzQ=))jdBOxNVO7uf-!fw;9`=9z{?bCgWA z=o0W6OB7*XGx~#Usgv#%SA4eymQ8r+6VCalF!p00S~!~Up6SIC1M__c76ZQx|)nNZ%WKy>OAYL z@ZT$XBb0&DLi?j-5Pn!smbIi%cZrUnkpPVCJ`p9B^2(IHKAalWTx!$+EQ>lqyLZz7 zT3@o}d!?R7^7o}ha&@GcwzQ?ET2q30-?J9e$l-^il?#fA(3cB$#1LQs!KFpM?2J{B z7AO6+T81Wj{GyzJv}JZJ>#I#pRg+xPLLDZ&=|Ia)uQx_Q;gq z8Lo&SY4Jas5qYrC>rO@d&w|ZZO594M*zoPkTd{;d6CS?{BJ7j!%0wiA(2htLSj(jc zOK+#>W7#v7+u^FQ-3@l^}-ko?`0a$hwWH=vF-D5$dJI5gE zrUME-Srzn@hHy5tEgIoRas$^;AfVEA1wPcAToI#D#FwUAgJmfAxd)UC(*d-UKFgesLQywesINSoejno1 zb?RYnj8ca51DnH8u@~GPrp4}ulip1)GE(1*miEi;VvWg0n&g}Aq^*#(N>AF(YU?~j zXq%bzHB!Ipj9lu$TC*vn&1*wB&y&&DU6=bCEcdu9_teURTP)~0OBef{RthYZ3Qo(! z8l>qmGM5WpleAd3n#?tu%(*P*DwHFaOPb92ivPP#0gM%2*;q9gKFl6b1jM~k{_#_n zxF4yVj}3)2ux$u_y*f*f(DvAz>PdaZ>4(iw_1sy=eTQ;*^88TljqrxNkB}54xg*4$ zoN4l*bh9+J&1Z_vbq{@Gw(fEm5>$lk1ysp>6N>!}7^(TImL6zZX8el^sh?NJ+vE@v zU#CSY0N22E$nH`2FPjs_1W{DuYl<*GSOr^ugjmH>1{@f7zA-AFLa>c*xS*Y9l_l*- z_F1Qk5+ok$){ww^1RvZ}h;<3Y?YeYPs;;JoOIA0Y)8r3z+nNqRE8<%b)^WA#*9-?t zRkSDFxH0v*TR3^EEMW|gZ%0SA2ZP&xCq1 z_jd%N%UMgKQ)~E=z&tyne($BSXoVKLngQxYirS^VQu*RI7_gB%IMb7GXq8KEJ{|pM ze1LRMx>4)`=a-5Ld4N(DPgGmeqj|t2ko3?94)PuflX9nqpD4m`Fsp*+iEDpSeLUO1 z^^k?Q9QAMzBiD|`<&?yxi(bpeS)>A}W zv_&@Ji>(((Zs;2CC>iUct+` z2>rZg@&2d5d!MQV1w#w;D0Y^p^+QOkn2FJ@%Q|~f?@;O9-1qSgZiXNvpANy}1naGy zi6;ssu%Ngx>KG?fP&7F!M+deCrbw!#V>cxUoJqH$R>n}dJ2vD)#x4EshLE8(b|J93 zedOHZ!{n)&QrX~g-8X<2Nw2Wbtv4zy92y|>Ht-Ptq#KL|3qSzGX1z26^gx9akgdCE z`%FRmN=Q~cH3O=_0_eo-uT5aC(2+J(z&99V>U0I`s-drXX!}0F0^TEb`&eM)2i#+{ zU(|)NMjIknxie1TVG5eic)nzd?g!KrSpD1|!$L!(na!YL0Ww}>dq6Y7?}Sa#i#dCV z#TogkNruV98q{#bPk5@NH+Ob=aAg$(@;N|%%-=IGn~ z@Wn6rQ8yEbn=$f{@sbLsedeJ9`l2`-i0644AaJ(YML@)1y9i~W)R z6|t^8hk%BwLl)ig%L9Ab&%phY!EreZF5f9WJt z9_v74UNrHy%H?1-*saQ;ALj~)H(_*_?|X_R^>={a3+Amvjas#C^l>yR)}ic@u03vy z8EBW?=l$L9)he1C%XI5QS6{&D{){SI?UJ^;dGbS@YZp7bzSDxQeQSH{q;}kISEPTP z+BpyvsS&rMKa1KW;YZ#}r24A0sjmamy$lRXPbVwODc(cY8mo_?-VX%E%zu zBHcVpf!7@4X_CLjAGjy7_C9Br^{L)EouQA+@D%I*GZ$he9_mh}Pd6iyQp$v)h?bAJ zAL#lLD)Yxgx8xK*$qoDv^m<=P6Dz&V23Uzsmpbz4Oy2bWHYmEJgaoscNd#5Q++^~b z@@RcF6Rl(!>6)bpC0P(h)qCr4kuk<>hNZKU{~C zPFa0Vjmq#^e%)OBxRdId`cETT*D9tM%1YT(UxtUg%N6>f-s#Ed`$EO^>6oL9N_07s zxyupP%a?BOVoJPVV(7#zM4Fo|3a}}7J~Hj5_=BPkoez|~u|OG;&WW{p-C6fDZ{~6R z^BpDUIrn+ecO0FHspVY?cs+1Fnz<1TYj=vrH*++`u$YxHV-%hC)b&^#IZAc+s*nAL z58Bt>Qu-X#Ay}1cZe>bB$FX~ZOMJ~(HzE_u=9!rN!ci*4KDCHKj=jJ_45Vl22Lw6W zj7^lpmq)&-7qi3r^m*#tnYljXYsk3P3nRF^9$i$m@8e`~x?uh}GF=X2Az6rM^O((qu%aEqtcl++1B1j1PVkPSesVv(7iXT8NzFo=yAIC{rxZy%>#R)LpSo3A!4TjuDu z=%~2m9mCvZwU@@vsH8ss(+>m9U?^JokdLiNqMkGC&&Q1pIRQgZ1CA%>YL{;WgAtLj zF>q0Ele7fe-8?*eE%1K&$bHH=bLU6bzRvzl#TK>r3DU#nfi4<3tVCuxsnrx~B-FxN z`&z$l)m`>0Wtp-3N=I*Wd5PiEi#zaWX8^C9cpFWXH)9OTda{RuFiMm`H%GH35u##( z;YMEt8stWY78R980>~w2`L8DWU<1v^E#+U9WezO>_ppoCrl6BraQ!a-5NDkaReB9` zG9zM@9a$)_vSJ3qSHzeejV+r8ER?nNMVGZzMzt^b!WT4M^oyET51wb#&Sbzr~4>S+UD!mSSOPe1_*E1 zso#UdtNv%z*i)^(8ZYk`QA;PbmG6~0?>Gt2j>EtU1>Bo(WH9vkp7+HZiJ3iYoRAPO z^d@$+d>Q#S&^jcA+mEuwNwXs;mrJVqKA+keVup}(qZ@^0Op?53zhT+ubI$7<7Ky&2 zbU6GI$M3Dj(1D-kqTym9qXk3=iaAee5?C|N^BMK?aE32mFD4hAXbke$+SF&XkiU)I zBk#c>fZJ)-5Z>-sqlg))+SZlV1~#LnOuY-C6INlul){J<*1ebBUxooe3VEMBv=n*5 z;Sly+5tzp(aQ0&lkZ}9QL(_t})?HVWIt+Hee zC4|%tdae!3sab1&1^Crzy!V`);6F zOokD|$Pm^LO!+0n!U-0H)h7mjEf7G)h0~RE$r#6ICiRR&^pjLtt8*HUTTk4F{TlOm z651$KAA|B%&>|opO1HH-;CpHp9NRu|pL2fm3|TpyS`4N^7Ob^%J-J5vrhl0MAU^ul zuLoY4Bbex+oxwaVlY$kinfPfCWj|ti#9MqFFG|0nmJQRmpLEalo02AdFLo5O{w9^P zUZ#JHUqyj;OW-h4flj(%0`a8)mnR$^6opTEbPz^7w?%KI(MQ52oN$6|oA==r%wp(? z6f?8#ER!#PxMIOhs~Giu1bt*T)obzE;|BHq#73g?G)*v5u6&dulnEAyYKtUVAV*@B_ia!$9tTf;2#C!BiZ zd)kOm8&S-8ee)$^0Y{i^O-{Wj@6NEBxNfO=iS-Sr&e%EWUBs&Zh>k}lGFJGnmb_QP z@fyN(_el@0$_UW?K4A?&VOzAtH#Lpe*pz@CM4>fJTpMDY@exxJ@+At3bpc#Nq>g`~S8h^)E z)5sixpWp_K_!QgQL|?~9kHy=87E7rDp5>o_)bPsR@968Ea^et4Meb5TeWB_sv}OD2 zSg2X8gN>+Xc@9(#UpL||j1Hxw43(uIy;G&WY8aXvI8$nGce#=%80nH^EIFgkF4z}F zm@GY5Nd6hf8uDvk=|v2pk`i5^hQx1r;Wj+5>%)pI3!;0B79RrTRwL`XmtjT-=M6{s zh1eUcheY{-$51}xYL~Wm4Pe}>G0#Ei{wSyH`za68ty*-*c-8owMO>UKd~7jMh_lbz z(I~nan4VqEkH@CZerO198k;Gj+i3>a?L*2)Vsl3~+}8r=vvzjhZ%#L>*paL1+MM)y zyQDDASsa^vWqfs^!4C*si0Lb7 zoX?mqtX&62c$H@bmTXyf`F;^TXIXtWZ)7byv$l2QLE?-qwU~)Gs5LyG(4P0Z$`GSrnrpS% zk*Q34i@PpP;@}9EBbMB)VYU~nZ7FR`ceY_x2Q3fyE1Fon);_DTq8r&ZM_<)G$0>Rs z_@^r1cowTgq0;acc1|)R;y-4FdyN{zM|tfia-QJshGda>p7%w8^YR7-?P56-yu9&z zW<;fQ{Mr6LdKh)LhgWb_L!{S%)@#i*z>~!ySNmC(%iNhwa)cC|QYz-cjM?#4t^`F_ zl$Vw;?_R74MH%5Z@v1iYK8**XK4uK8v82)fACI1o zRYzxQGks?swP(mZ$7QhttC|}oi^J_7*RByyvcN*eKSsOsxkmYzV1wGhH2cC- zH{PW2Dz|OcoMU#J+MM90BWs~={-nXk!^#xg9;^c9f#?mg2z?jYl7)>R;#SJP5njsS z8KTSC|Nbj`Ql`m_&p}4mbRywVH)|sTFEkZ(>H?@=?m@CvzF9q6!^FksReCHBN7v=8 z`R7e6Mp@jd02v=55w9DHZaOcNEyW0%Zg28E-DkauH!S%>n4Wef|Hs5V|8tH5=C>7!Y&UMaS zN!Mzf=1<5P)LFfS*=8@a3PwO->o+20j z%QciM+ICR60BWc-N+AgQgbCw4p@#@^zKUd^KOBn9p)b5KOctD7uZkbo7PljMf!NoQ zw-iM4%Yde{*3As<(?B}J1p}l|#(oM^D5RI=_!?B?6tU<#0x@|(a%hIyUtmoYZ*{SxpLeq!4|vFFsk-6wbqGes6pLO?=@lLu7;vt!#?XzFRu`0(mJ6MV(lUGuHICyeFOv4BeI z#pM6#fk^XobPc?M5KG39A_j=Wpv}{Nu&aA|=;;_^Yr4uma_k}%39kQ$pG;QGiVquxAG^RHFGaRr4ecU`i`*hS zpq1kVcf-83^&A4NK6NaMmxJ7(mjlk8jHa|JZv0dI6S$%&(HP|+(JJ|WP~)lftIVp3 z5b9~$JxvXgKn)-o{+awr-G&LfDqNjnUd4&@LO98tTru*QnKwu2`h)yJW1v~c!}|~6 zk2z~8&&Y|}U>{z>8X7!fPm?3Q#7=-%bp8!=@G@iBYhw$L|I@0J+9gmcB}@_a|7!2f zQ}#VVWtSy8S<6zEu_f6e)!33Pw98Ipr&P+8Erb?|5M}2# z)%`rTx_f?q-+x?soma0ppX+0j4v}}#cI?qUoDdxq>C41zRaDs$DQkde}4wyHPB(95k zap+OIM>)$XyY^g}_My>Pc%)3P*CynZ?s<{npvV%TP~numMD%Neq{gb1W(NVecaf%9 z^(xOxUcYN|GnJUQ_adZqEB1u5D>jzY zt{39BsTH5sh=)hLda3+|8bh}rm}|IPHYv5ouSRF;-h!gk#X|++-2C_*6I%z#A1!1s zANi`7qx$$k%M-s(3R(Mdg}GdvL-u2AKaH8`#Ab{eGac}A-TTa$Ie(&G;a=9hhwa^; z1oe*0kUD2^oY+q*nl)5#3~AZ6m$zQ0mO!&@jmxagLPMEwzngV#1PSeNOlFR5E617r z^~=nHzB>*uv#aaYut2^#=TYaQFf`; zKB`Z98qZP=I^&(}#T(fh?%99K)F~s{7!z@u#*`&Omt*-wlW_Zi)bfV2kB2WS-n>n8 ztk05CxV0vWyUru@O>=b&GhXDoy<6(}h{02M!Gw(l3_fLu>UT)5cM*&HFWldg z^&W2AFGQtJI->GYpZW6pJ6!LA4!dga5h|LA4(LnqvphWgF_d^9rH0>^!P54IGyVqz zktV8J#9U)SV~NE>{cPFQB9?e1481+aS~Jx?rgbvQ!2-%#F~(8E=Zq%^&tMn?R%G?t zCvW;aw4zmu?Av;m6yL=>{+>vNpobH=dTq(7?TNqi%ecVaxuH7Bn8U?n}$^4liHhz6$%rns8SWCbMcD?OUoFooPM#C@V6gVBZ*SyXI# zH0@BQlZiyFdPJ9_$bHuB8T^ga2dDbl8aG^A>QlRi)-2|yv?~J&{Y6=}i{4(TL5De9 z$X%Iv{ba5A;`h(Bgc2&RZB8um8%f4Xb~fd^rv)02O&>~oqx866=csm=2PP=EV|dv2 z?uKo0-sOv1r!j2y%RCE+DKqI}Z#lLbPl&xklZqFH+q)CON#bP#m&e@dTHfEO2)H5M z%U5SEh}B|yx+uTua1dQsVegl^_mgHbhov+Mksn^WmnRQfE4}-5L7vZod?xuMMF#BX zSsS%qvScqWVBf{BmJMlE>oB_;dZ31BMH}-S6J-tJZwtLm3c5#j;e*PgXIz22dxFXX zE%v@=8vSE9`5UneVO%wEqSRIS;Ldy-J}K`|)3`E|^pqYla|Vq>pZC@`KQd1>#K8YX4n>v_J5A~^`feXawqvO?c6Db}n1hA8>ld(Q{s zy4p&v--{|w4puqA!zP;A@^ZiwNhV>7&zK*S<56;nK`sGNmKEYAcP4B8D5eH=L5Q@Y zuyM2Xd_esbD?`UEp|<+V_LCc!rpFn!Y6F^l1z)1|3dFOIm66g-ePM75n)K-P$%rVJ zc-GK#v(MckPEUix$&Yb|_1V=Sy(H5OtH)?EqO8k(kGD@SM?4tamhRPIWmeIa7$#&{ zn*YLei)w%F1D=L6A4g6E2FeOYa+T9C9h9(+u5Oj-Xc2uBY0hc-(l3C*h7|LR-J3q= z9i!u(9Sfb3=<~C+R88$jy9I=(E;D*tFx!rxT}1y4IzL1|k8@(tihgRyJ(B$;555_h z2z$&od|9c)cIwZMN52~u$pewb2$zfHZOEKMj4o#s$Z&t!Z4kJ4GF>iiy-0cDq!`J5 z)O`+Y_4A7z9#g8d8PVMrALC*A0#OE%9ci6UcuteecJJg+2V%b#>FBp038s@t4x3+n z8>|-`rR|&i)r^Me7#kDYZT^vNw^PQ(8WIUF2_23|@vWPO6A8ALISnFD?W9D=MtgB9 zbITK5>}w#Qp>tPmyDfm1Am(tniae{(Y*WedIX~~GWnYr6R&tHU!m9gMFds_yzsyle z{W|!L%VNQ?$4C6*^@}m}cw@uz2j{Zv`xN)YMo+Tf&3+3~V#@U<9_y(>1*k9Ne$mtp zD%zUr*jX~VzjOV3OvlbE7U}%zDtq4-B4e*hf_g>9hD(B;iae^aUp!bA6x=fDS+=?z z)3)+_l8A*~SvBX?G-3;oYpS6hvIQVyHVW>4f~ z8CcdD?Ls@xVH*;d=ej)?I2Tzu!(9j5)uqd`&jsAQdQ5$!{N=s=Y7ah`noF4 z?6jfdqQ`Aakmia8z3l5$-V76&%&4W*u_5`Gw3|6X;nk%R*71Xq)Mhf*Jg8+2TCXI2 zux#B&>+7^sL%*1Pp}G|BczpHUK(e}N@w^R^5c?=k6W&vUil4%|dP}|-DsGi^JIxoQ zs!sDnC1l+ZQ*96oWfz%wI&&_*uDW`W?Y1&wfav-9rx@e;JEwwrgz2N-Y8*JqBe$+p z$NH7%-LqAPHaY-y2ir3=p#^)0iWO0VcUb6PPH zBeL532jw0`5hv-V>GhUUvrlx6PI>j})KMJtv!h<3 zY7WQGDT(>q6NeXk{)2V{0&DC@u7e4YpS2ES`nrAFx1^$mpu8tDb}Lr7=km$J3&nx2 z*ZhzR?@0Lxdt9Za2YcEtMMs`Jm!tYs6qPvSmwCsbZZ%rlI=lDAMKMJe<&`ef2g{DG zwC*!Cc}W#jw&~c!{^7Rxo39%UKX_}irOfw#s@Cbd^|&XuBl`)}@;B*&^V~^27`rP8 zhgUK~3Pxhzw7pv^Ss`@RF0!R=Sx*um6Wo^T7DztbUs4{)d$f+N#0@K;W@MBibC;=o zW}-}8Nx5Aq@Qov3s7_X~sf)_yTp#Iloqtbm`qNZmwpu5_vBcYBip=RePHk(mw#QW;Muzry0!(J%ZmMN<%-lZ4N%org!a&AJf zI2#uUHB4~cY%d*sx4-@HV)SLS8pFepdrhSLc(KOK7;~#; zOvxcm!;WRI(W*?@DlHQI_k3Uadok{OZXf&21B6*x|c=cSK5pkH@@}jP)$>oOH z3u39G=TfgIM~y$I4#?>wpI;1T)&Fqs=1G+m#%Vtazmzd;TdvdvcmI84UJl|(n48&6 zQ#I8(UH8PrQ8oev;!NA>Y3L^pRn%hRB#HLPws$SwpuM4-C_K?OY}&4lUXcwf&0(EA z@UZfxxl#J6NO;M9ccf^8P8K4y!mWwvlPMHk zoc2F%=MKuzuEF#fo#njjv&r+wmM99==ik}s@Et0i*+Tl9pPNZ0w zw<%dK=Ypd_2y030bkYTdjuvCI@`2oA)=W3*YM!?>f(a&VkLnUQB zAi;8>)rI6H%k!B>JnjeUFY({LcH`)mvRGDa39YbMF@E9Fo*kjsXp$GkOe2Fen5t?! z+Z|1fI4K^~N3TrbLB~9=qfdyh%tj)$GTy&4ta7W>AFDspaz5vH@qFf6gN(MqXXGi3 zk!5oImdND70F=0r6KcwopwKgcO>0;bPuYggO-i7c3+cZW#o6#_wc2A^U+S8h>or2T z<#9FNs|{Jx;VlO*++i-+vY=tQJ&#e|j$2WPPFP=hH@g@jG?|vWwYhOo{3>Ips#C8L z?q#+6%YI2)YtmAV<$C0-?InH^Wa1wYhpjLtAMmzi`iJl`Z7gxDd8YVuUX{?dp3)xD zY`rV~g>srnJiNKYZu_6lk=`jjt}i9#cul>F&uN*H?Xs>PF^7lJO3_n0 z(Gxini7Br^7j3^a{LW*f2P)&?l0TzX4U*|Ml`j?$8Fl=XF^M}kk3Ic9ph zhgWCIM=M_I3;%Kw0?Ejv+2qw2dz(J@@=E5*@&x0Ccm0B2Zv`N`rnvh#E|f3$a!~qQ zN>;0zE2zaMo+s~hQPIkgo3tlmegAo?W5OqT=h}5D<&`8YTjiCr0{H=I z^}orSGoG62P-flIkLOONFy7Mi!ad~`sOuIBILTng-R6Jy-KFvKho0p)rBi&$o6);W zNZ_!_cz3m4vfSNbmcZn#T6of#*|=d!NtFC#qVwtY1Rp$uto_EO2ImA#c;h-L8fR`y z^WK`}Y!vpUydkB3-PGzPsAD&yHaBp^AMsPmq?jNAIc@{I6 z{$Rpn_|TePuYox5NL zpI}D6QMsN`Icq49kKN*A8!HlD5OGA|&Q)P)gEo1BhP9Jpgl5}Co#QsLpWh47omp`) z&Kf%sjb!vQU3#-=Nsyo$B-N};nx=_)su*kP(aF4&Eb`f>axn8Qkx1C5BXprm*BJ|P zOcMhu+1r}K`9tucg}eJk9m|)yFJHYQyzjx09OeX;>zdp2F`?R;w%7?zAFdp`2h__S z1VRp*M{*B$&()KkAjoGcdD|7zw(Vm|CLD1)=#ZVj(voy#t))$Wg~_>tl#OS|f-u%L z)HhttH=so%O9c|*-K|?=Lv&0$tm9~+#n$bY*q>5}r>TXXiZFJ{IcIV29FZGclD9fj z#zE7vkJ0;G74~WA=-lmlU9VN&MI&HSm~Rq*DME`8hFvG5s%!C>@5l(v;B7U#S$;*d zpVIH^P z_qv(e?!I~~ZIxd=%3KrUL04tXGjKYwaXCPZqCY3Ta!KR0v&j(+6^++wbEJ=sdI=OM zxf1$OJS=o#3FwWqF%Q)zY(1}3Nc33jvkPhStP5jWKI`kU#%o(5_}-Rpy27r0-@J?R z)5evb|BcWGDK?Z8T+9Brw#poAkV#%FZFT(a^Pxjb&G%KQ)mHLM{hwjhRmEyFye2CL zA9q)NoU`;js@+gdTF||p)q&XfEwvf%8M$uqhrY&;-Lda zAzg6qxl!Tf&x3hFZDW4+-ndsB$4Af`*<``DiGzdHXFVCd)pO5ou$&kVwD)GPR~|%f zM38NSQGcsqIf41q9A*@K4b@=qvbWFW`KDG!!-EqtS{? z(lQE>-BNC&`AV!jda2*~(cm36>`2dpH*E#}2RNow{W{-TNu1700H1mw zoASh6_4{%+3Izmx*(EwezEY}*UgS2V!^$vwJou7`FTS6>oS5h?Ql^)hk^E&{LXTZa z%xR<4iTKE>i0jVh$9yo7SSJL-iWp zVV+5P-ki_`Q;8P!Q@&{-8>v&w5h12xcDz)+p9ksB%UEZIcBJRJMT=@JrJEFCH8_ud zefhr2RJO6jAE9bBc_MT3tF40V_V7y^vl9o@KZkfoje7I+a}MpDmwT##Vfi-1#FgWH zf@SSv6I(qas=32wBHF_0c_pa>=Vl5)6uWus!)XZ)1qR%&O)pgSiG+Gb)CW)9(M*(#=!F>hk2%GQ%|9&4eDr?i*_g6~49=vNb{vlQB zZcH7?1QO?i3+y#3@({yb@gpv=MS*=^@DS$v0Zmv(f^ruL*? zbDtc1IU97t*~Q_Kp}3+=%Fr2`P_k!9X6^ymX5(?r9m4w+U)=VI7+TbOjybG(Y5n8) zetD~I^)mIfOOzN+DaG4~zPOjZr4DWPm`Jp?X2#bzy!w*E{)M8LC10zl)@WpP8Nbj$K1r^LboZ%6^t`EBk`NZ5PeH z8tKC!u^CLypRU&46D}P^wNBHOVW!QO?_3Jmt|h%*_1Wj;mOJfb=))<;wy!f_{|R*z$ubc2&=b~vn@iyaP+z}V+-dcrQVuu27f2gpd^>FbPcDuB0 za;QCy@t)u2^4E~n&b=q;&V^`O2+WV2$XlFuy#DFcuwM1YoW3tiSB&M#Er<54KCvAo z7+jTI)hz5JHM)0|X=8=qsm37g1i_8zEE_%8K4cXz=+7&f_B0Ip$?;X!71MKU&hwTx z1-x=)+&}CMo_zH=dQJY-5egA2D~0{tmFAtx_i_yuM!U4z@x|v$&Jc`!@F&=Lq^2*= zn-rvmR4*rQ?3wbP^ds1gdcfAsv1C#)rV5By#F&5MQ@iUwd%yAxiP2YWlADrToW*9$ z)$8&kBN@DdZO^jk-?4iYp6khaU(M%y)6jUXhJT{ev9kSI{iNQ~`vJ^Rma;Fps^5Cu zs)i1@mfJ24@K#*?Fmp1i*ehn0(@jd|8>X7iE~{Wb-bnv6o+0jof5+#r#CCe8RjEYR zX9cUtI(i&WT&UWxDJ4HsDiKj9_sGty&q-`QTa)1OntNut^~uDkAtfkM8I2LEGIXT4U8 zL239_^p2LW*9{G!kmplewwGvww-^GbSH}l)g9s(*jEyv&@V%XQl-b0;M{tVf&^ywC zTzWfA?dw`@l#GMxtWDmT`z(@`huwTM7o4m|k>NHfIn9oDxHk+p8IL($_1M^}NUhvm zMf&xUxkRYbk=Ns|5{Nyi7xkx_SL8j}m@qdICL%@CpNl(2)W#&b$Oy)&hLucrnFgiD zH80~nkRO7buoA?-#&{@dnPxMxXxKoib1*_yqo%*7fQK~HqV@@*I+eI-gtza`*LclV zzk~aZoPV&h?@d^o#VoUAb(QPY>AD%qiiHmR^|_cHby*#q%(W?t1(hO?gbUMGeS7bT z3Noq$VCY45CiZ6CxZhOmR^?9g@%hm87R}_CCmwZnE1lDF%yQ$U4h+;Wrq!3Q$ws6? z`-1$}EL%NveKb=t$DYO?E#qYP)MzM%J$1Yk_YO;t^wJ0+WfSMi9hwFTw=H_CiV}$w zmF>>D8Izz`(|Gs6P5YgCtSSSMH69W6jS@*1UT~GfX98tB%w?=@6rZb-B5D5vs>4Y| z>ZP?>$IakjGLPKw6gl23lEb~{B>!>Z@baCahhm;yBbM}=B3q>9 z_gDm^{X`=B0wl%6==dzonw6U8%{n@}#}TIFM0;Ga!^?5(5ZehoykfB-!l@%{t92z# zB+I6&r|8A2c*3grc>-cdWH~-|jhpZw=`zl)|GE5S*W-ectAxtCgC9iw_Yrm(ghsoA z+6=-jBvL);oicG4*o>HRkVG0ksFz9#DHg?E$q1)E-cK zKp>nGOO9sES?aY4@@vEi-&D?CIzhQzHW8z$D-z5e(xu{?FvZ=^jxc4Cm2?T2aq z_oQIjgJ}<@J(%`j+Jk8irahSUVA_Le52ihs_F&qBX%D77nD$`WgJ}<@J(%`j+Jk8i zrahSUVA_Le52ihs_F&qBX%D77nD$`WgJ}<@J(%`j+Jk8irahSUVA_Le52ihs_F&qB zX%D77nD$`WgJ}<@J(%`j+Jk8irahSUVA_Le52ihs_F&qBX%D77nD$`WgJ}<@J(%`j z+Jk8irahSUVA_Le52ihs_F&qBX%D77nD$`WgJ}<@J(%`j+Jk8irahSUVA_Le52ihs z_F&ro3r+iKeC+cWQufp?7AmZYD4Ldn0ztHi^X-2wfBE*fqPTTj5hE)V_R(JSp5Kao zTKBjjm2FaX?BP8~CM+8Rnt|$ZIE^^8V-Y7kQ5haOAz_?%*eLj|*_jy)pUUBX-O7 zxD+Sbv!^a_QDcoFkSx2#{~+!uYIYO%*v~tpl9=6Fnyudm9Fe;uzFxLvX4mIZr0Bw? zo#!~DD^r%@B;Q?W+i@goX2v^-a-Xq`;-z9fA?3n`?Qw6D2~`AvP-j4Z^L%|qwmFj2 zQD)~$ zD~gm^Vc0ehr=k}+#GWdZ=G`zJ_Tqs-i$$Z?R`hYArpQr(@K=UWBoD(JCniPL=|#Q7 z{iTxVdl#Hnh7AL6x*~?2n&`cY$dwB});?)Mqu+A8b6CwL{KA=XI~6~9{5t03)-)v_ z9gBEJri2zZIsRv@E*Se`vKKJ#@f=ZQy2yla!jtqs+XHP6v^~)FK-&Xt541hd_CVVM zZ4b0P(Dp#v18onqJ<#?*+XHP6v^~)FK-&Xt541hd_CVVMZ4b0P(Dp#v18onqJ<#?* z+XHP6v^~)FK-&Xt541hd_CVVMZ4b0P(Dp#v18onqJ<#?*+XHP6v^~)FK-&Xt541hd z_CVVMZ4b0P(Dp#v18onqJ<#?*+XHP6v^~)FK-&Xt541hd_CVVMZ4b0P(Dp#v18onq zJ<#?*+XHP6v^~)FK-&Xt541hd_CVVMZ4b0P(DwgA+P)SC)!!v&!6v1X@sc70QFcF< zzkGXKDndc7x;yyk+v9>UG`ZgHV279DG#(Nc6w{Ea?+UPAX~^p-YJU;!8)(VJFn`a6 zvIEin*kps5>ZKT!lb<`r8EFXbl-XsJy6TNHDA5yet)=S5CT}N9*}GNi2UX7}8TZ*sIQbKCsR z)(Pp%dYgUe`u2g_C--1DUtH|o>pYOcVK_F><^4gr(T@cotjx?9)_OR6v(UD>YWeS@?x(pVAq~Hz3C8?yxVQW8h-s0W<8=m%x=Kk-m$E( zXy*cm_8{7WXb+-2i1r}bgJ=(;J&5)o+Jk5hqCJTAAlidy528JY_8{7WXb+-2i1r}b zgJ=(;J&5)o+Jk5hqCJTAAlidy528JY_8{7WXb+-2i1r}bgJ=(;J&5)o+Jk5hqCJTA zAlidy528JY_8{7WXb+-2i1r}bgJ=(;J&5)o+Jk5hqCJTAAlidy528JY_8{7WXb+-2 zi1r}bgJ=(;J&5)o+Jk5hqCJTAAlidy528JY_8{7WXb+-2i1r}bgJ=(;J&5)o+Jk8S zFBI(`{t)ezNs&0r{^#-+W{(SSm^}+tj{;4JZD=H7++FgMwa1mfLavQcCDfbz0H@4L z|0JRA68uZc^nP^CW9u(pxNL8pourD?q-j$W(U-50L(H)dwI)U+j-nOr=JUiJ-a8bU z_M!kav9K}?Kj`USOr zt4Jw=*1ZcM|13V;RLu z#e71_g$>)|-X;^O2m+zbfB@(D`iyLIB&o?cCDHdTIIj#F2Htc<3_Uf`dl!)_7k;dL z(u798<#^|?noanHGv#(Fe)9Nr%*m~3NfIpx(29y6OT@Cq{33fkkg=Xn#vybMFyR9sp`cP2K4@E?F`Y>K=0_oc|*bY z1`QbvHDpo2(~J{AfoC3WzIb=udE~Zin0e22&&qS7BZg+29^7k-Q$FI%%gWdMV{Ao( zIh2u1cWe8y?Cd8yM9rmU_nTu1Ws2<;q@0llZ#JZ9v6{`@(mFvhwRX@_5U=r}V{H4! z;fpuNJklDk9zk;syurJ}li@O*$=MK!BK|-ffVEQo#wCDKtlaWoIDPOdgV1vG%1P?i z>i5|(WJYdNXbRM=qn(PzE2Z%v&!TuEvd67n6PCF$v7U;hI+^{rz}TVc5hgLG=>*Ms zJRzOk$0b!p`)9V+fZ79U52!t$_JG<0Y7eMAp!R^;18NVbJ)ri0+5>72s6C+efZ79U z52!t$_JG<0Y7eMAp!R^;18NVbJ)ri0+5>72s6C+efZ79U52!t$_JG<0Y7eMAp!R^; z18NVbJ)ri0+5>72s6C+efZ79U52!t$_JG<0Y7eMAp!R^;18NVbJ)ri0+5>72s6C+e zfZ79U52!t$_JG<0Y7eMAp!R^;18NVbJ)ri0+5>72s6C+efZ79U52!t$_JG<0Y7eMA zp!R^;{|iz3W_;|4eoA#xavW;^bNLIk#|0d^RGPbkpQt@9=+~!m-yP^0P~{OIalxE1 z)fu6`H}xxO-@F^O??)m8u!|%F?ARSeN@~pRF`(NYn`|&sy%eKz@^i;HBMsr5GP{gY zSG{otC3*s`wN%~M(O*}^)YHh;YZ)SY^#xR0AIX+cNz4IYkUhLHc z?AlYOHywhKce{;P!>^yhtVi^R*$tT6JC+p|?OXueKFJ$&`+XNb$QFyZn_-YsX!9U( zKJNS9Fzg@wH!%jy){#i(NPb3|=T7%eNqx+|o*mGYq-Fl$BFE12`0eK`N1uE$se5^7 zhL5VjI@^M8Peqp;#k}3=(x=v^mA=MxTIaTHGoLTLEFw95Jyc;P@sSPY+xY;Cx66mQ zrpNBlkFyfjUT?_SvNj)MA)}iLdc9m*)wG(~%_SfAR5WMCA0tX{!dl?V_?qx|&!i2j zx_0EGs%NGL5984zJyKz@h+afPEv3X{;gCv8MK#;9)vu|_hX#E$$d77e;R==Px7gKiJHJ?QqJ z+k!>0uhfwAOsO4h`)cluM%RLt`Z9G{~sgQ zX$f98BN2!zYzTz>FC#gyssd99)s(eyOme!CiQMJ0l`qT<^q z?8G`16E-{qiT=K|KNM03;R;Rfqp;!|RCHJsAvB-FKdU59KVeJQ2KN3|8)HO?3F(|##6u=>_v;vtp3(3F8us*_QNr^v= z`rloOcKn$2KTZBVxC$RjCW1Q<5q88^xX>&=59|7Gt>TJ2zZV_sBgTsM6N`WE@((rL zxEkb_0qnd8TAAh#xyn8?E1od+_&&6}_&?)a_e0!`lmC}PRXy~5qpbgF;`hPT_}Fn- z-2Ty=B1vsxVa2M5;%=Lpzcqm?audfDy?9TOO2*2HeY6+N_@|<-??vZ6l3-Q$Ao;Ou z3~1&*RVhp0sw_W|V8drgWWJvf{yE*R4GH|xkl^f(?fAfFL*TxxWcR5YS7acC zE4oWYjc0F8IeNNSVKwNo#>zWul?}+a=4^v zer%cXKR3YNM?d_lpM=}wSmV3o!r%7*`CB`Hf!Nzc+^8#7mKyBFv2)p&_UEe!%{@)&H--=X^is`rhE5MmOOe-%@DW zR!*EkAg*1;L-74__3$=OVA-1}1i$Ye>2GZ};bSFaa98~BeypJkT9oDw`9)lge?f*a zbwZdQ%WObJiLH{O{L#ceizSbIe^|vm7X0`z_+>Zz_vCwmKTRMZkGqau82(l2C6Cto<21V) p{Pm1;!iWl+a)fFx8}1nW+(AOz^Az0UD()ZsVFaRnh6;D-{{Vszjw%2E diff --git a/firmware/tunerstudio/generated/rusefi.ini b/firmware/tunerstudio/generated/rusefi.ini index 77cbb8bc4b..063fc5da38 100644 --- a/firmware/tunerstudio/generated/rusefi.ini +++ b/firmware/tunerstudio/generated/rusefi.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2021.01.19.all.445786044" + signature = "rusEFI 2021.01.19.all.1284601733" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2021.01.19.all.445786044" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2021.01.19.all.1284601733" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC @@ -77,7 +77,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Jan 19 00:29:37 UTC 2021 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Jan 19 04:04:40 UTC 2021 pageSize = 20000 page = 1 @@ -1838,21 +1838,21 @@ page = 1 ; wall of debug mode :) ; https://rusefi.com/wiki/index.php?title=Manual:Debug_fields ; 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 -; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 +; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing Fu Corr VSS SD Card Knock ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 ; DBG_ALTERNATOR_PID DBG_TPS_ACCEL DBG_GPPWM DBG_IDLE_CONTROL - debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" - debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "", "", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" - debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" - debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" - debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" - debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" - debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" + debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "Total SD", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" + debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "Write Cnt","", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" + debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "Sync Cnt", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" + debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "File Cnt", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" + debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" + debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" + debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" - debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" - debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" - debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" - debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" - debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" + debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" + debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" + debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" + debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" + debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" [ConstantsExtensions] ; defaultValue is used to provide TunerStudio with a value to use in the case of diff --git a/firmware/tunerstudio/generated/rusefi_frankenso_na6.ini b/firmware/tunerstudio/generated/rusefi_frankenso_na6.ini index 141180f50a..612bcfa0b4 100644 --- a/firmware/tunerstudio/generated/rusefi_frankenso_na6.ini +++ b/firmware/tunerstudio/generated/rusefi_frankenso_na6.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2021.01.19.frankenso_na6.1655641" + signature = "rusEFI 2021.01.19.frankenso_na6.1444549472" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2021.01.19.frankenso_na6.1655641" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2021.01.19.frankenso_na6.1444549472" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC @@ -77,7 +77,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Jan 19 00:29:45 UTC 2021 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Jan 19 04:04:47 UTC 2021 pageSize = 20000 page = 1 @@ -1838,21 +1838,21 @@ page = 1 ; wall of debug mode :) ; https://rusefi.com/wiki/index.php?title=Manual:Debug_fields ; 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 -; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 +; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing Fu Corr VSS SD Card Knock ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 ; DBG_ALTERNATOR_PID DBG_TPS_ACCEL DBG_GPPWM DBG_IDLE_CONTROL - debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" - debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "", "", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" - debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" - debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" - debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" - debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" - debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" + debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "Total SD", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" + debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "Write Cnt","", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" + debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "Sync Cnt", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" + debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "File Cnt", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" + debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" + debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" + debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" - debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" - debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" - debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" - debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" - debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" + debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" + debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" + debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" + debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" + debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" [ConstantsExtensions] ; defaultValue is used to provide TunerStudio with a value to use in the case of diff --git a/firmware/tunerstudio/generated/rusefi_hellen72.ini b/firmware/tunerstudio/generated/rusefi_hellen72.ini index 4e917ae45e..8f8fd0a248 100644 --- a/firmware/tunerstudio/generated/rusefi_hellen72.ini +++ b/firmware/tunerstudio/generated/rusefi_hellen72.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2021.01.19.hellen72.2208611457" + signature = "rusEFI 2021.01.19.hellen72.3584552120" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2021.01.19.hellen72.2208611457" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2021.01.19.hellen72.3584552120" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC @@ -77,7 +77,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Jan 19 00:29:39 UTC 2021 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Jan 19 04:04:42 UTC 2021 pageSize = 20000 page = 1 @@ -1838,21 +1838,21 @@ page = 1 ; wall of debug mode :) ; https://rusefi.com/wiki/index.php?title=Manual:Debug_fields ; 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 -; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 +; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing Fu Corr VSS SD Card Knock ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 ; DBG_ALTERNATOR_PID DBG_TPS_ACCEL DBG_GPPWM DBG_IDLE_CONTROL - debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" - debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "", "", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" - debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" - debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" - debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" - debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" - debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" + debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "Total SD", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" + debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "Write Cnt","", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" + debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "Sync Cnt", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" + debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "File Cnt", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" + debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" + debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" + debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" - debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" - debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" - debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" - debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" - debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" + debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" + debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" + debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" + debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" + debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" [ConstantsExtensions] ; defaultValue is used to provide TunerStudio with a value to use in the case of diff --git a/firmware/tunerstudio/generated/rusefi_hellen_cypress.ini b/firmware/tunerstudio/generated/rusefi_hellen_cypress.ini index b7dc67849b..64d07041eb 100644 --- a/firmware/tunerstudio/generated/rusefi_hellen_cypress.ini +++ b/firmware/tunerstudio/generated/rusefi_hellen_cypress.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2021.01.19.hellen_cypress.3546513791" + signature = "rusEFI 2021.01.19.hellen_cypress.2237714758" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2021.01.19.hellen_cypress.3546513791" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2021.01.19.hellen_cypress.2237714758" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC @@ -77,7 +77,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on hellen_cypress_gen_config.bat integration/rusefi_config.txt Tue Jan 19 00:30:03 UTC 2021 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on hellen_cypress_gen_config.bat integration/rusefi_config.txt Tue Jan 19 04:05:05 UTC 2021 pageSize = 20000 page = 1 @@ -1838,21 +1838,21 @@ page = 1 ; wall of debug mode :) ; https://rusefi.com/wiki/index.php?title=Manual:Debug_fields ; 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 -; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 +; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing Fu Corr VSS SD Card Knock ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 ; DBG_ALTERNATOR_PID DBG_TPS_ACCEL DBG_GPPWM DBG_IDLE_CONTROL - debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" - debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "", "", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" - debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" - debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" - debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" - debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" - debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" + debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "Total SD", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" + debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "Write Cnt","", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" + debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "Sync Cnt", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" + debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "File Cnt", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" + debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" + debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" + debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" - debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" - debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" - debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" - debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" - debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" + debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" + debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" + debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" + debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" + debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" [ConstantsExtensions] ; defaultValue is used to provide TunerStudio with a value to use in the case of diff --git a/firmware/tunerstudio/generated/rusefi_kinetis.ini b/firmware/tunerstudio/generated/rusefi_kinetis.ini index 72db7328c4..24e5210eb0 100644 --- a/firmware/tunerstudio/generated/rusefi_kinetis.ini +++ b/firmware/tunerstudio/generated/rusefi_kinetis.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2021.01.19.kin.2189409157" + signature = "rusEFI 2021.01.19.kin.3564956604" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2021.01.19.kin.2189409157" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2021.01.19.kin.3564956604" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC @@ -77,7 +77,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Tue Jan 19 00:29:56 UTC 2021 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Tue Jan 19 04:05:03 UTC 2021 pageSize = 20000 page = 1 @@ -1838,21 +1838,21 @@ page = 1 ; wall of debug mode :) ; https://rusefi.com/wiki/index.php?title=Manual:Debug_fields ; 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 -; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 +; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing Fu Corr VSS SD Card Knock ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 ; DBG_ALTERNATOR_PID DBG_TPS_ACCEL DBG_GPPWM DBG_IDLE_CONTROL - debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" - debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "", "", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" - debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" - debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" - debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" - debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" - debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" + debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "Total SD", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" + debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "Write Cnt","", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" + debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "Sync Cnt", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" + debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "File Cnt", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" + debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" + debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" + debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" - debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" - debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" - debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" - debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" - debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" + debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" + debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" + debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" + debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" + debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" [ConstantsExtensions] ; defaultValue is used to provide TunerStudio with a value to use in the case of diff --git a/firmware/tunerstudio/generated/rusefi_mre_f4.ini b/firmware/tunerstudio/generated/rusefi_mre_f4.ini index 99610ce7f7..fb558ba923 100644 --- a/firmware/tunerstudio/generated/rusefi_mre_f4.ini +++ b/firmware/tunerstudio/generated/rusefi_mre_f4.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2021.01.19.mre_f4.539394471" + signature = "rusEFI 2021.01.19.mre_f4.1982189982" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2021.01.19.mre_f4.539394471" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2021.01.19.mre_f4.1982189982" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC @@ -77,7 +77,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Jan 19 00:29:43 UTC 2021 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Jan 19 04:04:45 UTC 2021 pageSize = 20000 page = 1 @@ -1838,21 +1838,21 @@ page = 1 ; wall of debug mode :) ; https://rusefi.com/wiki/index.php?title=Manual:Debug_fields ; 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 -; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 +; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing Fu Corr VSS SD Card Knock ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 ; DBG_ALTERNATOR_PID DBG_TPS_ACCEL DBG_GPPWM DBG_IDLE_CONTROL - debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" - debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "", "", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" - debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" - debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" - debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" - debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" - debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" + debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "Total SD", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" + debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "Write Cnt","", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" + debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "Sync Cnt", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" + debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "File Cnt", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" + debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" + debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" + debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" - debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" - debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" - debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" - debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" - debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" + debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" + debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" + debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" + debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" + debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" [ConstantsExtensions] ; defaultValue is used to provide TunerStudio with a value to use in the case of diff --git a/firmware/tunerstudio/generated/rusefi_mre_f7.ini b/firmware/tunerstudio/generated/rusefi_mre_f7.ini index 453015d6e8..0d078c86dc 100644 --- a/firmware/tunerstudio/generated/rusefi_mre_f7.ini +++ b/firmware/tunerstudio/generated/rusefi_mre_f7.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2021.01.19.mre_f7.539394471" + signature = "rusEFI 2021.01.19.mre_f7.1982189982" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2021.01.19.mre_f7.539394471" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2021.01.19.mre_f7.1982189982" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC @@ -77,7 +77,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Jan 19 00:29:41 UTC 2021 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Jan 19 04:04:44 UTC 2021 pageSize = 20000 page = 1 @@ -1838,21 +1838,21 @@ page = 1 ; wall of debug mode :) ; https://rusefi.com/wiki/index.php?title=Manual:Debug_fields ; 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 -; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 +; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing Fu Corr VSS SD Card Knock ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 ; DBG_ALTERNATOR_PID DBG_TPS_ACCEL DBG_GPPWM DBG_IDLE_CONTROL - debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" - debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "", "", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" - debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" - debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" - debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" - debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" - debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" + debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "Total SD", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" + debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "Write Cnt","", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" + debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "Sync Cnt", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" + debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "File Cnt", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" + debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" + debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" + debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" - debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" - debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" - debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" - debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" - debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" + debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" + debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" + debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" + debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" + debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" [ConstantsExtensions] ; defaultValue is used to provide TunerStudio with a value to use in the case of diff --git a/firmware/tunerstudio/generated/rusefi_prometheus_405.ini b/firmware/tunerstudio/generated/rusefi_prometheus_405.ini index 1217a1b005..3d4193b74b 100644 --- a/firmware/tunerstudio/generated/rusefi_prometheus_405.ini +++ b/firmware/tunerstudio/generated/rusefi_prometheus_405.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2021.01.19.prometheus_405.2629621827" + signature = "rusEFI 2021.01.19.prometheus_405.3401549946" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2021.01.19.prometheus_405.2629621827" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2021.01.19.prometheus_405.3401549946" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC @@ -77,7 +77,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Jan 19 00:29:49 UTC 2021 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Jan 19 04:04:51 UTC 2021 pageSize = 20000 page = 1 @@ -1838,21 +1838,21 @@ page = 1 ; wall of debug mode :) ; https://rusefi.com/wiki/index.php?title=Manual:Debug_fields ; 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 -; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 +; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing Fu Corr VSS SD Card Knock ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 ; DBG_ALTERNATOR_PID DBG_TPS_ACCEL DBG_GPPWM DBG_IDLE_CONTROL - debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" - debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "", "", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" - debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" - debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" - debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" - debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" - debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" + debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "Total SD", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" + debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "Write Cnt","", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" + debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "Sync Cnt", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" + debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "File Cnt", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" + debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" + debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" + debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" - debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" - debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" - debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" - debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" - debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" + debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" + debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" + debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" + debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" + debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" [ConstantsExtensions] ; defaultValue is used to provide TunerStudio with a value to use in the case of diff --git a/firmware/tunerstudio/generated/rusefi_prometheus_469.ini b/firmware/tunerstudio/generated/rusefi_prometheus_469.ini index dfeaf65451..b625d3b478 100644 --- a/firmware/tunerstudio/generated/rusefi_prometheus_469.ini +++ b/firmware/tunerstudio/generated/rusefi_prometheus_469.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2021.01.19.prometheus_469.2629621827" + signature = "rusEFI 2021.01.19.prometheus_469.3401549946" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2021.01.19.prometheus_469.2629621827" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2021.01.19.prometheus_469.3401549946" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC @@ -77,7 +77,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Jan 19 00:29:47 UTC 2021 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Jan 19 04:04:49 UTC 2021 pageSize = 20000 page = 1 @@ -1838,21 +1838,21 @@ page = 1 ; wall of debug mode :) ; https://rusefi.com/wiki/index.php?title=Manual:Debug_fields ; 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 -; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 +; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing Fu Corr VSS SD Card Knock ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 ; DBG_ALTERNATOR_PID DBG_TPS_ACCEL DBG_GPPWM DBG_IDLE_CONTROL - debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" - debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "", "", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" - debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" - debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" - debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" - debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" - debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" + debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "Total SD", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" + debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "Write Cnt","", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" + debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "Sync Cnt", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" + debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "File Cnt", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" + debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" + debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" + debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" - debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" - debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" - debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" - debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" - debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" + debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" + debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" + debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" + debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" + debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" [ConstantsExtensions] ; defaultValue is used to provide TunerStudio with a value to use in the case of diff --git a/firmware/tunerstudio/generated/rusefi_proteus_f4.ini b/firmware/tunerstudio/generated/rusefi_proteus_f4.ini index f1f048feae..77db096ab9 100644 --- a/firmware/tunerstudio/generated/rusefi_proteus_f4.ini +++ b/firmware/tunerstudio/generated/rusefi_proteus_f4.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2021.01.19.proteus_f4.2646870958" + signature = "rusEFI 2021.01.19.proteus_f4.3418839959" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2021.01.19.proteus_f4.2646870958" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2021.01.19.proteus_f4.3418839959" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC @@ -77,7 +77,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Jan 19 00:29:53 UTC 2021 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Jan 19 04:05:02 UTC 2021 pageSize = 20000 page = 1 @@ -1838,21 +1838,21 @@ page = 1 ; wall of debug mode :) ; https://rusefi.com/wiki/index.php?title=Manual:Debug_fields ; 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 -; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 +; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing Fu Corr VSS SD Card Knock ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 ; DBG_ALTERNATOR_PID DBG_TPS_ACCEL DBG_GPPWM DBG_IDLE_CONTROL - debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" - debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "", "", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" - debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" - debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" - debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" - debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" - debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" + debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "Total SD", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" + debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "Write Cnt","", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" + debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "Sync Cnt", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" + debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "File Cnt", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" + debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" + debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" + debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" - debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" - debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" - debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" - debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" - debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" + debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" + debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" + debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" + debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" + debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" [ConstantsExtensions] ; defaultValue is used to provide TunerStudio with a value to use in the case of diff --git a/firmware/tunerstudio/generated/rusefi_proteus_f7.ini b/firmware/tunerstudio/generated/rusefi_proteus_f7.ini index 3fefb8c298..841bb4af19 100644 --- a/firmware/tunerstudio/generated/rusefi_proteus_f7.ini +++ b/firmware/tunerstudio/generated/rusefi_proteus_f7.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2021.01.19.proteus_f7.2646870958" + signature = "rusEFI 2021.01.19.proteus_f7.3418839959" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2021.01.19.proteus_f7.2646870958" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2021.01.19.proteus_f7.3418839959" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC @@ -77,7 +77,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Jan 19 00:29:51 UTC 2021 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Jan 19 04:04:52 UTC 2021 pageSize = 20000 page = 1 @@ -1838,21 +1838,21 @@ page = 1 ; wall of debug mode :) ; https://rusefi.com/wiki/index.php?title=Manual:Debug_fields ; 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 -; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 +; Alternator TPS Acceleration GPPWM Idle Engine Load Acc Trigger Counters VVT Cranking Ignition Timing Fu Corr VSS SD Card Knock ETB PID Executor FSIO_1_7 CJ125 CAN TLE8888 Analog inputs 2 Boost Start Launcher ETB Autotune FSIO_8_14 FSIO_SPECIAL Injector flow compensation DYNO_VIEW LOGIC_ANALYZER Wideband TCU DBG_48 ; DBG_ALTERNATOR_PID DBG_TPS_ACCEL DBG_GPPWM DBG_IDLE_CONTROL - debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" - debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "", "", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" - debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" - debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" - debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" - debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" - debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" + debugFieldF1List = bits, U08, [0:7], "Controller Output", "From TPS", "GPPWM 1", "Controller Output", "Idle output", "Channel 1 Rise Counter", "", "", "VVT Event Position","", "Ign IAT Corr", "", "", "Total SD", "", "", "", "ETB Controller Output", "", "", "df1", "df1", "22df1", "fsio 1", "24:df1", "CJ125: output", "", "", "", "", "", "", "TPS1 Pri/Sec Diff", "", "", "", "Boost Open Loop Duty", "S unused" "", "Osc Amplitude", "", "fsio 8", "idle offset", "Pressure across injector(kpa)", "VSS", "", "WB: Pump DAC duty", "", "" + debugFieldF2List = bits, U08, [0:7], "I-Term", "To TPS", "GPPWM 2", "I-Term", "Idle df2", "Channel 2 Rise Counter", "", "", "VVT Ratio", "", "Ign CLT Corr", "", "", "Write Cnt","", "", "", "ETB I-Term", "", "", "df2", "df2", "22df2", "fsio 2", "24:df2", "CJ125: i-term", "", "", "", "", "", "", "TPS2 Pri/Sec Diff", "", "", "", "Boost Closed Loop Duty","S unused" "", "Duty Amplitude", "", "fsio 9", "idle min", "Pressure ratio vs. nominal", "Speed", "", "WB: ESR", "", "" + debugFieldF3List = bits, U08, [0:7], "Previous Error", "Current TPS<>TPS", "GPPWM 3", "prev error", "Idle df3", "ICU sum", "", "", "", "", "Ign FSIO Adj", "", "", "Sync Cnt", "", "", "", "ETB err", "", "", "df3", "df3", "22df3", "fsio 3", "24:df3", "CJ125: err", "", "", "", "", "", "", "TPS1/2 Diff", "", "", "", "", "S unused" "", "Tu", "", "fsio 10", "", "Flow ratio vs. configured", "DeltaSpeed", "", "WB: Heater duty", "", "" + debugFieldF4List = bits, U08, [0:7], "I Gain", "Extra Fuel", "GPPWM 4", "I Gain", "Idle df4", "VVT rise", "", "", "", "", "Ign PID Adj", "", "", "File Cnt", "", "", "", "ETB I setting", "", "", "df4", "df4", "22df4", "fsio 4", "24:df4", "CJ125: UA", "", "", "", "", "", "", "Acc Pedal Pri/Sec Diff","", "", "", "", "S unused" "", "Ku", "", "fsio 11", "", "", "accel", "", "WB: Lambda", "", "" + debugFieldF5List = bits, U08, [0:7], "D Gain", "df5", "df5", "D Gain", "Idle df5", "VVT fall", "df5", "", "", "", "", "", "", "", "", "", "", "ETB D setting", "df5", "df5", "df5", "df5", "22df5", "fsio 5", "24:df5", "CJ125: UR", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kp", "", "fsio 12", "", "", "", "", "", "", "" + debugFieldF6List = bits, U08, [0:7], "D Term", "", "", "D Term", "Idle df6", "Current Gap", "", "", "", "", "", "", "", "", "", "", "", "ETB df6", "", "", "df6", "df6", "22df6", "fsio 6", "24:df6", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Ki", "", "fsio 13", "", "", "", "", "", "", "" + debugFieldF7List = bits, U08, [0:7], "Max-Value", "", "", "Max-Value", "Idle df7", "", "", "", "", "", "", "", "", "", "", "", "", "ETB df7", "", "", "df7", "df7", "22df7", "fsio 7", "24:df7", "cj: f7", "", "", "", "", "", "", "", "", "", "", "", "S unused" "", "Kd", "", "fsio 14", "", "", "", "", "", "", "" - debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" - debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" - debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" - debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" - debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" + debugFieldI1List = bits, U08, [0:7], "P-Gain", "", "", "P-Gain", "Idle di1", "Channel 1 Fall Counter", "", "", "VVT Sync Counter", "Cycle Counter", "Multispark Count", "", "", "", "", "", "", "ETB P-Gain", "t counter", "", "di1", "di1", "22di1", "", "24:di1", "CJ125: state", "read count","", "", "", "", "SPI Counter", "", "", "", "", "", "Start Count", "", "", "", "", "", "", "deltatime", "", "", "Solenoid 1 State", "" + debugFieldI2List = bits, U08, [0:7], "Offset", "", "", "Offset", "Idle di2", "Channel 2 Fall Counter", "", "", "", "", "", "", "", "", "", "", "", "ETB di2", "invocationcounter", "", "di2", "di2", "22di2", "", "24:di2", "", "write count","", "", "", "", "Latest Transmit","", "", "", "", "", "Starter Enable", "", "", "", "", "", "", "", "", "", "Solenoid 2 State", "" + debugFieldI3List = bits, U08, [0:7], "Reset Cnt", "", "", "Reset Cnt", "Idle di3", "Cycle Index", "", "", "", "", "", "", "", "", "", "", "", "ETB di3", "s counter", "", "di3", "di3", "22di3", "", "24:di3", "", "write err", "", "", "", "", "Latest Received","", "", "", "", "", "Starter Disable","", "", "", "", "", "", "", "", "", "Solenoid 3 State", "" + debugFieldI4List = bits, U08, [0:7], "Period", "", "", "State", "Idle di4", "Cycle Cnt 1", "", "", "", "", "", "", "", "", "", "", "", "ETB di4", "executor", "", "di4", "di4", "22di4", "", "24:di4", "", "", "", "", "", "", "Init Count", "", "", "", "", "", "S unused" "", "", "", "", "", "", "", "", "", "Solenoid 4 State", "" + debugFieldI5List = bits, U08, [0:7], "", "", "", "", "Idle di5", "Cycle Cnt 2", "", "", "", "", "", "", "", "", "", "di5", "di5", "ETB di5", "max executor", "di5", "di5", "di5", "22di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "di5", "", "di5", "di5", "di5", "di5", "S di5" "", "", "", "", "", "", "", "", "", "Solenoid 5 State", "" [ConstantsExtensions] ; defaultValue is used to provide TunerStudio with a value to use in the case of