From fed12740f2bb7aa9490e7fd7ea28efffee7242c8 Mon Sep 17 00:00:00 2001 From: firestarsdog <229254897+firestarsdog@users.noreply.github.com> Date: Tue, 17 Feb 2026 22:58:14 -0500 Subject: [PATCH] Spoof CruiseSpeed Non-Acc --- panda/board/obj/bootstub.panda.bin | Bin 14876 -> 14876 bytes panda/board/obj/bootstub.panda_h7.bin | Bin 16944 -> 16944 bytes panda/board/obj/bootstub.panda_h7_remote.bin | Bin 16944 -> 16944 bytes panda/board/obj/bootstub.panda_remote.bin | Bin 14876 -> 14876 bytes panda/board/obj/panda.bin.signed | Bin 61152 -> 61620 bytes panda/board/obj/panda_h7.bin.signed | Bin 69984 -> 70456 bytes panda/board/obj/panda_h7_remote.bin | Bin 69808 -> 70280 bytes panda/board/obj/panda_h7_remote.bin.signed | Bin 69944 -> 70416 bytes panda/board/obj/panda_remote.bin.signed | Bin 0 -> 61580 bytes panda/board/safety/safety_gm.h | 134 ++++++++++++++++--- panda/python/__init__.py | 1 + selfdrive/car/gm/carcontroller.py | 25 +++- selfdrive/car/gm/carstate.py | 7 + selfdrive/car/gm/gmcan.py | 17 +++ selfdrive/car/gm/interface.py | 10 ++ 15 files changed, 173 insertions(+), 21 deletions(-) create mode 100644 panda/board/obj/panda_remote.bin.signed diff --git a/panda/board/obj/bootstub.panda.bin b/panda/board/obj/bootstub.panda.bin index fef03f10f8c119007911d9dc5f8d57e696c411bd..d7694f70844f4f4c6382742fcb10fe5c399ada44 100755 GIT binary patch delta 21 ccmbPJGN)w2En^PjL^IRmGz-hkkBqI@0ArL0CjbBd delta 21 ccmbPJGN)w2En^Oo6vNcCq$H!wkBqI@0A^(fcmMzZ diff --git a/panda/board/obj/bootstub.panda_h7.bin b/panda/board/obj/bootstub.panda_h7.bin index ffc6b083a04746952ba6296cbed7cbcf2cd71d90..2a9d9ce54af6aa86275e67595d58df186cf48227 100755 GIT binary patch delta 23 dcmdnc!ngs5X4!BUCz_cir&(BTUS!k93IJ&$2vz_9 delta 23 dcmdnc!ngs5X4!CK2&Vu5 diff --git a/panda/board/obj/bootstub.panda_h7_remote.bin b/panda/board/obj/bootstub.panda_h7_remote.bin index ffc6b083a04746952ba6296cbed7cbcf2cd71d90..2a9d9ce54af6aa86275e67595d58df186cf48227 100755 GIT binary patch delta 23 dcmdnc!ngs5X4!BUCz_cir&(BTUS!k93IJ&$2vz_9 delta 23 dcmdnc!ngs5X4!CK2&Vu5 diff --git a/panda/board/obj/bootstub.panda_remote.bin b/panda/board/obj/bootstub.panda_remote.bin index fef03f10f8c119007911d9dc5f8d57e696c411bd..d7694f70844f4f4c6382742fcb10fe5c399ada44 100755 GIT binary patch delta 21 ccmbPJGN)w2En^PjL^IRmGz-hkkBqI@0ArL0CjbBd delta 21 ccmbPJGN)w2En^Oo6vNcCq$H!wkBqI@0A^(fcmMzZ diff --git a/panda/board/obj/panda.bin.signed b/panda/board/obj/panda.bin.signed index b28fbb2a85a44a1f3c6897dff3d90534082b5726..bf9b31336a8400f51bd52aa9488b26c9558245ca 100644 GIT binary patch delta 15285 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 delta 14903 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 +2JEswc=5EO6X)op2GPL!e|CS$KST% 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 diff --git a/panda/board/obj/panda_h7_remote.bin b/panda/board/obj/panda_h7_remote.bin index 0fd036317d66e8def609dbb1dd3aef0d55857a60..25b3c7c841420261a55571705198e753cf91f136 100755 GIT binary patch delta 16172 zcma)j30zah_VC=B0AUZ{!Xj{!fFN-R;DRD01Pn+}aeH-XEs9#)aV?;2BH-3qw?XUL z;?~+~g@{;D5frqw+SjDwt5$7keQjK-F9>*t0LgbI0iW&v|NXuXe&^11X6DS9GiT16 znUo(CZagY{4I!2bIK+zP{4aq1_ScO=vmNp6bNjk|En`LB0o;^r|1>1f7RHL)! N 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 HGl~BPOaAf2 delta 15631 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 iTou2;`Y|1wJ2(F$F+dAiGo|JRvonN zb!~06LPV^n2nt%QwoR(O)v7JlwsEPxLBKl%Nd7Yk_}YHo|NK8Z=gxL!=FFKhXU?3N zoIW7j^qKIDO@0gtJiv;l|1W_4@z;Svvz_tHGa}r-k+b6O0B*=Pe-;{K4`an1;jCB$ z;0qvtv>U+m1Dn4O8a@bOLji^XXaPn6yb16&KsLZkfcXHlhb0g$16TpD24Dj~2L%}7 zJMbu`tF8uOR{?$ixCPLGA&0(cE3g0Eh4KdgW`Jh^4FJsmJps2bK!1REfQ~jg!o>Ex zPXV_huRR>}DuZ_PkHWu|y-oHb;a|J4Y^e;w!b_&?kF|46^SJ@GtCC<|IxObZ0X06oH(11FsS!v40)J-wOUk1DS9h z+jm%k2z4CM*ZgWYbt6_BjT&rLy9P$AUie9)24SaGQb z;xdk~;!JnM-IgGZ^FdtkVf@nNh0X}sbpRHC?pjIt&+jvXnW+A^w^yiMm|}OR#in2_ zCdtuA(W#2%Mq2DjNu{CbqRz95##xRxvyq{u{Y}-&RWCZn+^a`O_0$t>R{I%MFRsbf z2TfH^P3-o8XT_us;thtTw{+qvm4!i`21!!&36=V`&dkXEW2Q~rFrzBU3j*|AXh5=5 zt)+bD(r;abnt8Vv+0RQZG*q*`jc9(-@Sm3^rT_9iTfZ0uR7o_ES-GLrC%PDX8;f+4 zjc=sCF}!oug$BJJV-bp=ogqx4{>_O?A%`s_A=N?eK|6jE7x`LPwp&%XRk!NJXg4M@ zXld$gcLVC3V)V77`gm3`9OAYEDw6z4s;h6m=WF2*9WmoQ(t^C#ljH{%8dSXs30Do_ zkU}D@PJW^C9P)%=B2B4fUt8DIr@0jpnS|*B_)H;@OA1MtBrv;>^pn&)cJ~c5cG3D= zD|+PfF5)znO5aBP)PO2hw%*J{?yX{*K3wQIJSuCq8FA;#k(x7RB)x5BH2*ex8QioF z&F=86GrMVjY3EqR4~Rowu;Rt{5%&l})t4~S09gRJ0Fi}kOh!?6o2UR0VT^_GK&UFB^(ovKaog-^iV9w6FL@vSm9DtosZm5L2e2l z{V0)1hbRSxsi$&NsDLdz<)VdI$r7bulEAIaVx)!S4cyr`p0+sJcOlasU-G@?z6n~a z1t3T9PQS6tQ2ZaiST_|{ND={tVugQT_g=?X@eqJg0~^`J^kdIXAoJ(P>`+UL?yzQt z;%xsk+U9ZpdtpPkj_z44k`C^SdM_?)@LvZ)bgP0;bp|hfM(F4TAl`lNyosou$NkS&mpW^T69PE~$Wa96hpsC8v zA+C^$rSS)y179ljvgqZ|nuNBd6)J%zDyCl{{e~S-3$09jH;sqM z&TqCsKd;&z7NGD=P>Pl75EJ{ciUq9I(94Pdd3!H3^;JNyB0;&qQOd-^5|05&l$peH zsQigY5SV1=U$nj6We9<7}?)YXjZI1-mA2&XP(lr3b_Z|9ArMxS$G5+J&MLarNyh ziHZg=04t=rmlObJwu&)K(b&)Ep*u74$Gl)-~M8PDm+(E4H>% z!wgWpu*Z7#+pE57%7xa7@CI41?k#997bYko0~jVLCh45E8)c@tVx&c%6fyVhSr6wZ zl6M8yKKAd=P&P}704J~lgvKHG0rJ4%f)+IHDD-|bYj)1|lwy*qj5U0jqnNo<&ECnG zY3K9o3r|7o+!#m8&`0}Zrz?{bj&8WQ6J}-4^+*m5s(swaA36ahc62~VrE5!AT{c?& zBg3TP@bIC+S#zJx!8zff{hm&nJw2f6o98`dU3%7K7F_{BQz{=>R-h_6x6X=)`v^w4 z4}k8fA6&v`!bb#BCPrL!4!&E)u$c~daY(c@Vx-S2c?1U1^`VRC?3$1{yW0w2@UDpA zOagu!0c)UL0K9sn`20fvaCVO*<^%kB4~1i;(22Rzqknt5uObR)aiAjBo0fdmE)?HgDx0X# zFpd^ZmL2XjTOj`nisH)Mh6^=Y$y?k?HDk2%pV}FzC^gJrR2svC77Obly32bU>T@z&-$Qy<9e;-)MnfPhh_iU?6}DVD#m(69YeF zU**qj&tC`lg9k9~bVbtLX3wX1WBeP;Wc*!x59V#$6yKda`4#Rmf!rsx2=aWifoqxQdb3FJ#ONx893+O-hVAaDHolv+ zn7o676GD2Q0UjI%8mO4KrQ?}Njk@e4i&%iCxWYPqLo&!PdghNp;VlFz`;D^c3A-3? zO5%zHR-E9=ikIxf-b2%wcgiLVoz1YqYJ6E0B|2FJ(^=M}TGKv5c!hc(bGxiUJ&YA~ zo^gOo!-8QYgK{K-CX~G^r>4P6el_R-$x#MWG18S}hJ>14lm}F*B_|i2@}(L@lHQGK z9ZY87r^CWQFnu-i``!cUtJ|p;z?P&}2W0KY8a-=bR&EL{>;2f0IAo-YW=KYSUNM=C zOEldR<|&b49Bc*)l^>O{vQ?y)jFAmT6qC8iU&##|dFS$V0xlz;~J1OsP1HH>Y*>SOO+jJ~zPt zrPz?xRhOsqH&7F$(Ja)qwCj6xoE1v|I2wYPA_l$wmEBd#z^cjT=sukXlCy*pyk^?a z9+ZIZ2J@Q7Evy)Cz@&hSs&Gm7%X5v|UB$?PatlcT%1sH#wVIuK{ApiC$Ay3;lyCTX zJ`?3>#6-_U8E%jw)ghPUDiqc&ccq1a!Rk46Xs3)j?=n%+JHp8B#`+3b9up&uimVdL zemo(|rCsg>YeQtbLDq6?l*q_Lx;f%Z6l0=Y3nPV9pk8xp$XWz;nCy2aOMK-FC(=d& zt?N0z3Oc?GFtYVPWxL{r(QL#I(&d9Tf`o~yMmF|bZ0G;5uLWJSUd@`ekfq8oXAMnT zbs`#9EkDc1kUX*ug&CSGIuDwM6SN_&dCHFrG(JT;kog$z(8`%jxKf)GGE~x+^GI7o zRLWH(5nwaG7NwoPW8VsfQb+QCb=e~=Nn6a_=m6#x4oQf zN?gT+d1#fI8$=ni3wF}21lI49B*N5e0x<%a;QT-q#8p8s+xuaXHc19U*#U_!eB&i< z1|$sx0XqQ7Lw6%L6p=ej1)WK z!YDA`S)mcWVnH2}S>gQ1h&L1crV22XMaJ-o@lWXKj*+?NszWcpLSSHBB1jd%Y4aiU zabD+(hmQ`-*pJ>fGjN2JXqtdhMuye8#w8`^>s@?wjSEWBmu)fZ%l|E(eTrmU0sUqb zu*svvCz@XBE|6o~P1q?I4#ta2Flo4SbUO1bZW%qYucpL3H_428>l$NAR4=wcvqKw) zl{Eh8TxyQ9I+#EV% zZlXyGlCp^NJBvXnS}Ue5+v3&<21(V_KCWw>>P3Ch9`!UhgDi;MqyEFBO5Z{j!Frf) zJXkQLU=q4}V$2hhKh%&T`AV`+dAKQa(RlUv!~s;1#VO?m)eEV5t6E$Y03w?UJ2E=Y z_7R%;KrvlbrPLnn(`r(^7$x5WmT=SXjy1@&1Mix8x<_n7;9vwID%Lo0=Ad4%q11mztb#>jZ+-crI7UTGF zf#I1(1p6RKa>*BI1UYjumWnnJq}M#T5m5|OU1?B@i$UAuk5e!hA08Jg?QM;N-ey_% z^@#>r#8PUh4{vq_TD%?c6x=+n_v~H;waevkNYHFdaMM9 z0qB=(=P%iNfem%hu7Gcq<9p8D3+%`HZ9TQ1;i^HS{Z>wHqX^K`+i}gCeMQ@<50l%N ze=|vTrp@BmNFIS*LKWF|2Z ze_}LP*+=0!9p9hW!)+7^fUOvG8upshm#N1IlcY=-erM8qu6kv#;WjD4_b1i+-fQcn z-L4*H63QYqz8V{U6aV_w+rEd}{2|x-Rqh@<{O!KFLnWZc0fa~|sW1IGfPF)cR+fSR zHF8bqBsjc@HcP%(@yHW_k(Fp7VftdCm)w8sTX+9);89;VJ8Z}bHQXdcS(h7BU5W{E zC=z5T)-zyw>Lpv%Y4_e#m#AUE_h5SLA!Dm=lGBoN^^DI@Q`cSJ5rmuH_U)V17MJ9| z^Cmeb`Q}8Vrk0$}1c7e5NvC$G2D52MRV_J}Sxc_qL6a2;{bFk$_W_7m z+qaJCaoQZPbCKq|$A}F}r-J*k^`aStKQxakyGd>;gU{Y1MlN{A=wYX;;xsqOb-aIa zSGSwWT5_|r_Hit}Fj=lJ(o`lBJ7(BT=!d3^`yQH6A6?^|5~YTkYIMh;6Sp0Ey%X#< z#I%XHRL|3_z|rsY)tzk9TNng>Iq>}LQ6tMSeP!=d)4}|mZWG+pPj2`HRHrXL8q1rIE`oXhK~?mJ@PYpx^_xb9GnrT9&ym&S z=V-iHaKyQ~G}g@sO`f1V)uf+)LkBB6vg)%YG(%i3W?Fc2^B|2WIUVE7@}0(v3fnv3bJWnqT5be#+?U?OlDQN<|O zn+x#%EPq|MQfdQ)g2Yols;+T*N#O9ULOc700JW&dxIo2=Y!{tp?>8!9;8&{lIL$T+bldH=VWXW+tM+%*gw|hISd| znK}dMT!VAa&9Or3un^(vS?ie~JYh;W0|()$ zA)Wy&PKjS1*%ADxiaa(qL z$V$6Z6WLC7cB@mG2bbnn(gx??annW#jyJpD`_sC1t+iI0SsB$UyPJCf4?JD6mSJ#k z{xmIw*^HZ}Ne3>4EzIY-&!u9Jif%(z!M7OX;&KBO#|hRoX1ZJ3`0QrN4o_eQ=g?A< z@bKx~87-bWy*nFOiZ@P=V0z&4>D^@~ZLV6%Q_pL5ert=9w2)F|CBwCtGfP= zeSrU3n>QQn-GSb5 z1~{z)&}lC<;2H0xdVSN@P0ML|Iyyaq&%UeG)sWj}ak?ZAMb?=D3RF)rQFRiPp*!Z= zP}K;KdBWKQXwRfgM5y0WD#&rwjC_(henm#=lN*t+#VKnHbXz=HVdJetHLR1730J-N z!GHTOm1VU)9u}jkK&V&_8(IO#ctDjx6Qa@8jcnYS`^eq=;<9+df|_ALi&!p zRSY}v$>-*R`sWgB>aAi@49g+e2+CMVPsE^%tNksUVAQODDp1q-PEL5pTMs&Gj=%}! za6YKgEKsGA`eDaF-JRY9fP-fSd%RMszUy(~O#hIE)&$^~(!qwC&6M|-PUM*xMYc(v zr^gFscJ00t2<44*O5-$be1Cf%nAD*#sc|r=ZG3P1`ONNcR{dtCLTBTz*$>rAJXdJW zfk^mVrs6>r2UQwzAWrA()Cy%xD6#}B;IGW*Af;=JEJ1xM%_vIOxV*&IjO5)NN_lBX zf6d}{rJM(B&jp}cS1W8~r)+k6#}>94&LW#N0=kI}26Y&o&{t$g^kwha@R>QM z88^IWZg002Z6CsFXybe0FXm40+F?!9W@@4x%nrjo^Y(kGtzEQqU3y-#@p4=_Ptki_ zs|PSx0DkiA>OW1^Kb@Gg>O6mf*Td#$XhY>_bskP5XE@`D{OTomKm_q^)G4cM;Os+#<}ZmWqNmoFL_8_%tI zzQ+C6XK@AG^B(Rt{&Op%>7Uxh=iAH75A&VI;%YD!kC_kV*ECcMR+IgB;Nlc!Kh`Zy zQ5@rF*<0q^O1jvoF-DEB4uj17C;5;WGiIphls&@ri&wGNZ8&eq9Itq#jjwEGGy|cd zk8%By5N03tSvm|F9k)~tOv_&y9e(T_>NT`6r{ph(y+>#KyXzSV-(A0+(D(lDZ#bIt zWw1Ff8g55AwC`c4PC5MB;DEZW zUym9@sY97bDS7y-f}w0k8-898=A!59{4cFIU|A$knz*cM;6CM;oTG4|Ng29AFdFea%J$eo+E+#GYmQo-pk-Q^sz`7nX&OjZ)Az(CjJG>}53#djBB?NKAd;UQH$7R^H46r!WnBf1qrT@`z)^ z0z;ZQ4BGgv{*?e=v4-Rc*n!hFwk zYRj$!G1&D%h%e=~2ha${mk(IaBTcjhy)|d#to*F{9dKvBK^JU?YgYV*E)!((V_jF>lQu>ZlzP%E zSaz{sms`@4l>&hROgvagbb*6q1d7Ao^a*%LeCq@S^pr{0S7H9^ScNp-9~6YLLw0>C zoW#?)bN}gJ{3~SuX(rFt;?3lOw^L==g~RoIgX1M|Z5f-GzE{1(c&e#Tmjw1SNP}P{ z*@EZmj;=~pHzMGZbf?Mam3L+CvU(sI|4>L9t_&*HJBAe!i!E8`6 zVsj7I|0wuxm%UFLdy5?yW|M#}0S9{@n3D?FfYmZc>QMDlP3CpBb(FMM%`34-` zKZN;JnB)c99Av6qBXe6jncKX9&gk6L;Ol&tznZ9UkCoj$G|h4_jTnb2AGOk7w@-P< zT;3$p{bk$-VV17mxcilsqpF1|wOk*l_PL!@qVT6ssmW1E3|EitS|*3ymnY@yP`lk=a*}fNIRVK`oGQp2YHYOQ zjKVz8Z_110cYL*Qg6D5aB!{^2rWqWfeTwE$zv$kgAR3%0%INe+iSTBkj=2f%SWJ&M z`nB)_nsLx7<@6_YtH|T(Ka(#v=(}AaPwHGOuHLK2^J+MlcUwg)Q2L+hLz-@y^I%m8 zjpyrKeFCahk@~vJ4Xpfdz$)?r90;ypa;_o`N?G!i2AA+($-Yf1Nn@txQCBSnf zX~HF|x+(&vTqGf*)|Dm99cH;XZkRHx*c>Svu3sgc7cONi zLm4KfhJ;IR5G!0Njt&Bqom2zy7XI29h!_6%=7(N0F_Dzp;kUbu{D~Zsu2gg2tPdIy zJUqk{oZ8IC*kbcog=f_*V8JbNjBVj3HQypfSQOsE|En46S9j4JOC*)vfZFMQpyoSJ zTlgi-On61YFwJ` zEs$vlA8CgYsSu9bkdx~d+%uW*p)}7WIym?;DaFBS6s*9GQ`dy)EVd`XP%_HvsRtuU zJ*$aImL&s?M-P+WFpa9r2HAdHn9W{z2YSI`Q7pTkX82e72lMDiG&W>jvn?%0@#IHDoNimGozw z-qZV4t^5)zJ!bg~=QOv-_!uVk5`44s^_1vyJapJh-_=&2#_9!qIrmL)B7V-JGHs+$s+WB`v!q+^?I zdFp%3hX@!{3wZj&am6NqxxafEVxZ*z8r$GhPMk zLjCzZD$~RF{Vi=iE~cmXuI(EXb$5Q&RPEUK59(qovOkc+u6hmHg)0*9Yk$z9$dAgI zBuaYnqr41WetDY|c>;?!oDAJe3$&316LdkEYB$sqSuTt9^v2A;)Pk?R7YwTVRMT&| zkAOHu#p{04gSxD=F^0_!C(75xr}>kp`~?=y;*#@UXo7JP!rA?Acv{+xv+)O&NJV8X0wH@Qxly$mkxN3|9^JUl}ivrCFe zKV?z{b^i8KGEFtHUUfhidTxF=EBPgt^=%M}I$bqdy;5ztCxBAjK5z)S`xk@r2PuX& zCYPX|LmLxIQo-oR(V!lLpU~P}E0%Rn^Qw122yY<5T*ANEnggzaXDy6;ux5}ZM^i+? zz>ryEJ2(qsxwP4Ru?MGyn2+WMQ?9`kKoL2p>}=kpi#2#S2I3Dy^DQyvl|6yBzGfEu zRCy&V99S2X)RMKz0gj!3Zc9`s^=m`XZ>f01hi?tN*P@{At&i^zm*}6!p)4l$a)T)1 zDx?_s74lXLd(5uQw>c)z_NNo7=hnqWbEqh2erOS>#;semVAjI8R0uy_YfpOvK(*Cg$6Za=Tlpe{L*7R zp1-lD?pbq`W&#KTfpNE^wPVR!Gc@%?jXjm8njl-pAXNOEk(w(|Kw>%miutblzMW)3FbXl=E zcY*b>Iayi3vuU_5YZs)qlHZg?ghPWt;YgJVc(ou?Qr-A4>lRF-e9A2{HYOXsnK1{a zbk_z!xg1_JYy<2t2yb(TNH~N=+|*UDXG%wfrmNEvi%2B5mE^!Xh@KE`2i$0`Q#qL> zo4R@{NrPk$Zq}UNrhGXUANx2oc`o!nNZE0kq%%Y}&XaJfL+!081~yLu!(3)}(SR=v zp27<5Oz-BId{~X({;Ox6Qq#=;V8z~>0&;$H_+H_$4QGX2fi^@{HNC77Y1YBH?2eUD zdYO8q68Ioi`W?0gA2MM;)BMhUBQJANe+z4pv@*f8EqM zu%d;Q(UPCcEno%2eB<+D@oVHl_VfqB~xltVLbobe$nhH+nEO5IY@!?YW%e6Xq`}C6c zuzvvQ$u^vfBZNG^-j3(t5keauWXILGi|+kanR$5n39=2@`Rz8L21V)`gGyjfV7eA5 zLueO>@JrfUp=4;I7nF!HQJAWCWR)uXuv+)ht0X!w4g@5(jh4HVF#Q_Z>r85+tqpB# zJzh=(618^a%(9mHh8tN={&cpfrR5QT@E1iuOr$5g(dulZ1pIvbz)b%fxkW!l-neg! zf0ha77x&P~+8eB)_}s|GZHrdSoR}onmbJWSxR!OCHmmeYce;vJl1HHLm$V*qbXI+$ znP1Vi#}T*jsrKy-+>tNs3o&>wIst$5ZT_GV1>~bYso+xSr@~8BJ9<>#ovOQPo!v*g z6eOp$JBs_I`m0|iL;OGIzxrh(gb2|GYpgf}0Ik7-&moT*DXhZ%b_z5mb@r+`IrUEmIfVbZ)yb#v$5ntiq>ZXKd0PrCdwWFw}!JX+OTBXTYav! zM&=Pds7;)j{pWe0nhyCEgq~O0*9fp<4vb0$>4TT?&TWHr9C$)KSGs776|PMviw(2# z--8d08ZO`I=ciivPpoUnJ1R}ZX)-Iu$zynX5PJkt0*4CSPTt{utZ)U-vX%d-IX=%t zGg0AUiZtZQnXokk#WB*m=E=Z{DXp&3HzC|%>n>-*RzXRyP@B8>u>a(h{N#0JaQnjYzFAM?lVlmNNvwLg-?XLF#AN z-(11S_p?E+goLPi9;s46+THf2S&@u^(g`YoW~VtY6-5xfriBfIF+**?$*q1+{cH;r zxzjD(!6S|0SUIpunGQM=A*5V*2NW;BNq7Q=#7Nl(_&x?e2jB|jpFvm-a0h@s^LqiI z7rY3K1UQ2qY&Wsht@z}Q2=-VjzPDpAyf*B*a|-)*D=yeM#QWRU?YVbyMHU}q={|LQQ8ETPGZdq^Eq&k)Z*#8-X0WcZGwk`tAXx7 zs}-KdlnO<+iXi1@ErhR+b%Cqd7u?!4bRv_v~YoT?AW)z6s6D!4wns@N2JCmNg?nKm#!(^IdK?S9~=M21j&*-6C3lsXq z{dCQ`69-{x=&~3LEdCe36adQlg%D=KZw*v1PgGmLH)|Q>Ihp3QSFSsH8YcAtsw3rV zw81m!H3V9*Dr5Cn);q{^nMdg`plI5(^?YBL}%3mZ_zQIc1cxL63 zS_(iO;gUY45PnFqCKL>AHcy?GXyZ|{jW4#J1oeHA+?K#A404kkV{Cj5ya~YzEf zK?Gf`ol407YB>oQrk?|q^z@MvgQP`dfuEm&K6F%4)GZG>M4c)u$HQ(1)oewVNoj!3nTURzZ}e&c|LGA5=LzBl2`nU+S6a8`al z{8%6l&b#y?un1y8ILrr4A(e`pNprTRph%PP2QvzAzWna6zz%{WT?L@8ORT&QzqfCk zPXDb_DF<`{63w8G%ExBFdoBKJ+n5nN->bQq7dP|#k+x?3-$b6nND)WPeMTzJ5o>6S z@cmlSQh9!feH(cj9*L(wd_I_78VG0G={JX#Af7*MPlD7GyF4d&=JpgY4QMQUorj^B z4}nKmgKbnl*q}0W!`%gxL1}R2%d+x+Hsjp=k-7!8X1=mTo--+*R*3|3c}~ zBxM|w^?*J?p}AA!-{jb+acBQabEF&3ClXrAS?5v{2fil+xdTXf6Zg(z)8BCwf5%P9 zq^MHDBs?{l%*v|xnR1Iz5I^Obxx+4f0j!M$c4`5}0?-A0`?Ltrt^U%dpnIR8y6NAR zO+N5kD6`bCVt84Aj;Y}(IE1Z`7DCu*SVy{S-sdA2T`$P@f_%6Z;@~KX_FaJKdM!QV zBK*qnwRAP4-5`B)h!ejXyz8ayccgP6P21^6pZ-U=C$vw?&-Fo^2%&6rsKVJndj^U; z13#$*gvCk+0-6SC+CfM9bbI;9-r!Gx{2ZvyLfEQs;&YIu`N>hv^y$-h?-!HV##7k# zMGV{T9FF-ih83Q}Gro+GO*`kry&moy%=)jLOzKFV`?~DRmlqjb*m)=3$vF6V1hkzB zY08wv@y_)1_VTd<|DL|r!^v#V)6PM6q{l*m=y*q?P5X~+SCi?;nQWA zf#n&j_=|DC*O{z%kQNYq;XS%L{Oq+%da?)O_J@QOUjX3osPaYq(;zlm04wGne_9yu zD1Y#|>fzS~Ijndc#IO2*00RC)++6-{;6Ui+{s-{8-gkjZv=qSL&5FU?KlQQq28eBb zABb24zxegWeQLVkUSFqrB|!Ec%i+hvGr$PKE507+9SAvIkTVx@>b)F@_r4AYI_w4h zi2{IW@JnHc`vQajboMIqKCNa0m-)dj9`af7``Pf@UQcKYdS3$JgR+@t{=*CoPluoQ zj%CIBr?BFYkUial6@LXFg=%!9rnLWCdD)h8KQkd80l&U_54v0cKN|-A)w=-+koO&g zC1vZ*4`tlm7XvlxplNKX>gvsna58Y;YS1+*{HUs%1R*`uJMc#(I9GtZFLZG;(G>}Q zVmzg~2Ub-Vy_R#KT8oP=1mJ)Rp0DLfFWhx8Edd_qV)o+HzzSgK%(*a|F2FZ{t0EW` zgq!jE7i0SmAH|9nOactZEr)6S4qytFecXe_RvSY#0>hvyfuP@jKW%DfJ1e06B>>t^&!E4za|>|p$AWArS#cYb z4->E+FiN3{vK*d%{CIaBbFwV)o;^0YBFWj@6d-FqKyQGK=I#Pnj{!QGqhz&xvOvP5 z=sr5UaEP+ky`VJ9#%*=B_j0W?=D$iNVhTTAMQHXq$qEkUcI>TL7>mL&~t6GgT`i!-jMbE o-P7Mk)Sn*I=lsD$-~Q|O&JXy_{Pp*f13bx) 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 S)6;dxfufs-8TbFvum3+QCTKDM diff --git a/panda/board/obj/panda_remote.bin.signed b/panda/board/obj/panda_remote.bin.signed new file mode 100644 index 0000000000000000000000000000000000000000..bfffeef84d0fe4046f7016bab693b2cbafec5a2d GIT binary patch literal 61580 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
  • i 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 literal 0 HcmV?d00001 diff --git a/panda/board/safety/safety_gm.h b/panda/board/safety/safety_gm.h index 687461434..ddb4786c9 100644 --- a/panda/board/safety/safety_gm.h +++ b/panda/board/safety/safety_gm.h @@ -48,16 +48,16 @@ const CanMsg GM_ASCM_TX_MSGS[] = {{0x180, 0, 4}, {0x409, 0, 7}, {0x40A, 0, 7}, { {0xA1, 1, 7}, {0x306, 1, 8}, {0x308, 1, 7}, {0x310, 1, 2}, // obs bus {0x315, 2, 5}}; // ch bus -const CanMsg GM_CAM_TX_MSGS[] = {{0x180, 0, 4}, {0x200, 0, 6}, {0x1E1, 0, 7}, {0xBD, 0, 7}, {0x1F5, 0, 8}, // pt bus +const CanMsg GM_CAM_TX_MSGS[] = {{0x180, 0, 4}, {0x370, 0, 6}, {0x200, 0, 6}, {0x1E1, 0, 7}, {0x3D1, 0, 8}, {0xBD, 0, 7}, {0x1F5, 0, 8}, // pt bus {0x1E1, 2, 7}, {0x184, 2, 8}}; // camera bus -const CanMsg GM_CAM_LONG_TX_MSGS[] = {{0x180, 0, 4}, {0x315, 0, 5}, {0x2CB, 0, 8}, {0x370, 0, 6}, {0x200, 0, 6}, {0xBD, 0, 7}, {0x1F5, 0, 8}, // pt bus +const CanMsg GM_CAM_LONG_TX_MSGS[] = {{0x180, 0, 4}, {0x315, 0, 5}, {0x2CB, 0, 8}, {0x370, 0, 6}, {0x200, 0, 6}, {0x3D1, 0, 8}, {0xBD, 0, 7}, {0x1F5, 0, 8}, // pt bus {0x315, 2, 5}, {0x1E1, 2, 7}, {0x184, 2, 8}}; // camera bus const CanMsg GM_SDGM_TX_MSGS[] = {{0x180, 0, 4}, {0x1E1, 0, 7}, {0xBD, 0, 7}, {0x1F5, 0, 8}, // pt bus {0x184, 2, 8}}; // camera bus -const CanMsg GM_CC_LONG_TX_MSGS[] = {{0x180, 0, 4}, {0x1E1, 0, 7}, {0xBD, 0, 7}, {0x1F5, 0, 8}, // pt bus +const CanMsg GM_CC_LONG_TX_MSGS[] = {{0x180, 0, 4}, {0x370, 0, 6}, {0x1E1, 0, 7}, {0x3D1, 0, 8}, {0xBD, 0, 7}, {0x1F5, 0, 8}, // pt bus {0x184, 2, 8}, {0x1E1, 2, 7}}; // camera bus // TODO: do checksum and counter checks. Add correct timestep, 0.1s for now. @@ -86,6 +86,14 @@ const uint16_t GM_PARAM_HW_SDGM = 1024; const uint16_t GM_PARAM_BOLT_2017 = 2048; const uint16_t GM_PARAM_BOLT_2022_PEDAL = 4096; const uint16_t GM_PARAM_REMOTE_START_BOOTS_COMMA = 8192; +const uint16_t GM_PARAM_PANDA_3D1_SCHED = 16384; + +const uint32_t GM_3D1_PERIOD_US = 100000U; +const uint32_t GM_3D1_TX_OFFSET_US = 0U; +const uint32_t GM_3D1_LOCK_TOLERANCE_US = 20000U; + +void can_send(CANPacket_t *to_push, uint8_t bus_number, bool skip_tx_hook); +void can_set_checksum(CANPacket_t *packet); enum { GM_BTN_UNPRESS = 1, @@ -111,6 +119,41 @@ bool gm_bolt_2022_pedal = false; bool gm_ascm_int = false; bool gm_force_brake_c9 = false; bool gm_remote_start_boots_comma = false; +bool gm_panda_3d1_sched = false; + +bool gm_3d1_spoof_valid = false; +bool gm_3d1_internal_tx = false; +uint8_t gm_3d1_spoof_data[8] = {0U}; +uint32_t gm_3d1_next_tx_us = 0U; +uint32_t gm_3d1_expected_stock_us = 0U; +uint32_t gm_3d1_last_stock_us = 0U; +bool gm_3d1_phase_locked = false; + +static void gm_try_send_3d1_spoof(uint32_t now_us) { + if (!(gm_panda_3d1_sched && gm_3d1_spoof_valid && (gm_3d1_next_tx_us != 0U))) { + return; + } + + if ((int32_t)(now_us - gm_3d1_next_tx_us) < 0) { + return; + } + + CANPacket_t to_send = {0}; + to_send.returned = 0U; + to_send.rejected = 0U; + to_send.extended = 0U; + to_send.addr = 0x3D1U; + to_send.bus = 0U; + to_send.data_len_code = 8U; + (void)memcpy(to_send.data, gm_3d1_spoof_data, 8U); + can_set_checksum(&to_send); + + gm_3d1_internal_tx = true; + can_send(&to_send, 0U, false); + gm_3d1_internal_tx = false; + + gm_3d1_next_tx_us += GM_3D1_PERIOD_US; +} static void gm_rx_hook(const CANPacket_t *to_push) { if (GET_BUS(to_push) == 0U) { @@ -183,12 +226,35 @@ static void gm_rx_hook(const CANPacket_t *to_push) { // Cruise check for CC only cars if ((addr == 0x3D1) && !gm_has_acc) { + uint32_t now_us = microsecond_timer_get(); + gm_3d1_last_stock_us = now_us; bool cruise_engaged = (GET_BYTE(to_push, 4) >> 7) != 0U; if (gm_cc_long) { pcm_cruise_check(cruise_engaged); } else { cruise_engaged_prev = cruise_engaged; } + + if (gm_panda_3d1_sched) { + if (!gm_3d1_phase_locked) { + gm_3d1_phase_locked = true; + gm_3d1_expected_stock_us = now_us + GM_3D1_PERIOD_US; + } else { + int32_t phase_err_us = (int32_t)(now_us - gm_3d1_expected_stock_us); + if (phase_err_us < 0) { + phase_err_us = -phase_err_us; + } + + if ((uint32_t)phase_err_us <= GM_3D1_LOCK_TOLERANCE_US) { + gm_3d1_expected_stock_us += GM_3D1_PERIOD_US; + } else { + gm_3d1_expected_stock_us = now_us + GM_3D1_PERIOD_US; + } + } + + gm_3d1_next_tx_us = now_us + GM_3D1_TX_OFFSET_US; + gm_try_send_3d1_spoof(now_us); + } } if (addr == 0xBD) { @@ -291,6 +357,28 @@ static bool gm_tx_hook(const CANPacket_t *to_send) { } } + // Cruise status spoofing only for non-ACC (CC-only) paths + if (addr == 0x3D1) { + bool allowed_cruise_status = !gm_has_acc; + if (!allowed_cruise_status) { + tx = false; + } else if (gm_panda_3d1_sched) { + if (gm_3d1_internal_tx) { + tx = true; + } else { + uint32_t now_us = microsecond_timer_get(); + (void)memcpy(gm_3d1_spoof_data, to_send->data, 8U); + gm_3d1_spoof_valid = true; + if (gm_3d1_next_tx_us == 0U) { + gm_3d1_next_tx_us = now_us + GM_3D1_TX_OFFSET_US; + } + bool stock_stale = (gm_3d1_last_stock_us == 0U) || (get_ts_elapsed(now_us, gm_3d1_last_stock_us) > 300000U); + bool scheduler_ready = gm_3d1_phase_locked && !stock_stale; + tx = !scheduler_ready; + } + } + } + // REGEN PADDLE if (addr == 0xBD) { bool regen_apply = GET_BIT(to_send, 7) || GET_BIT(to_send, 6) || GET_BIT(to_send, 5) || GET_BIT(to_send, 4); @@ -317,26 +405,32 @@ static int gm_fwd_hook(int bus_num, int addr) { if (bus_num == 0) { // block PSCMStatus; forwarded through openpilot to hide an alert from the camera bool is_pscm_msg = (addr == 0x184); - if (!is_pscm_msg) { + // For non-ACC camera/SDGM paths, keep stock ECMCruiseControl off camera side + // so openpilot's spoofed 0x3D1 is the only cruise-status source there. + bool is_ecm_cruise_status_msg = (addr == 0x3D1) && !gm_has_acc; + if (!is_pscm_msg && !is_ecm_cruise_status_msg) { bus_fwd = 2; } } if (bus_num == 2) { bool is_lkas_msg = (addr == 0x180); - bool block_msg = false; - if (gm_bolt_2022_pedal) { - // Block 0x370 only for experimental long without pedal interceptor - bool is_acc_msg = (addr == 0x315) || (addr == 0x2CB); - if (gm_cam_long && !enable_gas_interceptor) { - is_acc_msg = is_acc_msg || (addr == 0x370); - } - block_msg = is_lkas_msg || (is_acc_msg && gm_cam_long); - } else { - // block lkas message and acc messages if gm_cam_long, forward all others - bool is_acc_msg = (addr == 0x315) || (addr == 0x2CB) || (addr == 0x370); - block_msg = is_lkas_msg || (is_acc_msg && gm_cam_long); + bool is_acc_status_msg = (addr == 0x370); + bool is_acc_actuation_msg = (addr == 0x315) || (addr == 0x2CB); + + // Block steering if we are controlling LKA + bool block_msg = is_lkas_msg; + + // Block Dashboard Status if we are in Native Long OR Pedal Long + if (gm_cam_long || gm_pedal_long) { + block_msg |= is_acc_status_msg; } + + // Block Native Actuation ONLY if we are in Native Long (not Pedal) + if (gm_cam_long) { + block_msg |= is_acc_actuation_msg; + } + if (!block_msg) { bus_fwd = 0; } @@ -376,6 +470,14 @@ static safety_config gm_init(uint16_t param) { gm_has_acc = !GET_FLAG(param, GM_PARAM_NO_ACC); gm_force_brake_c9 = GET_FLAG(param, GM_PARAM_FORCE_BRAKE_C9); gm_remote_start_boots_comma = GET_FLAG(param, GM_PARAM_REMOTE_START_BOOTS_COMMA); + gm_panda_3d1_sched = GET_FLAG(param, GM_PARAM_PANDA_3D1_SCHED) && gm_pedal_long && !gm_has_acc && !gm_bolt_2022_pedal; + + gm_3d1_spoof_valid = false; + gm_3d1_internal_tx = false; + gm_3d1_next_tx_us = 0U; + gm_3d1_expected_stock_us = 0U; + gm_3d1_last_stock_us = 0U; + gm_3d1_phase_locked = false; safety_config ret = BUILD_SAFETY_CFG(gm_rx_checks, GM_ASCM_TX_MSGS); if (gm_hw == GM_CAM) { diff --git a/panda/python/__init__.py b/panda/python/__init__.py index 088ee8689..4a99c58e7 100644 --- a/panda/python/__init__.py +++ b/panda/python/__init__.py @@ -243,6 +243,7 @@ class Panda: FLAG_GM_BOLT_2017 = 2048 FLAG_GM_BOLT_2022_PEDAL = 4096 FLAG_GM_REMOTE_START_BOOTS_COMMA = 8192 + FLAG_GM_PANDA_3D1_SCHED = 16384 FLAG_FORD_LONG_CONTROL = 1 FLAG_FORD_CANFD = 2 diff --git a/selfdrive/car/gm/carcontroller.py b/selfdrive/car/gm/carcontroller.py index 817b457f0..5be506e5b 100644 --- a/selfdrive/car/gm/carcontroller.py +++ b/selfdrive/car/gm/carcontroller.py @@ -368,7 +368,21 @@ class CarController(CarControllerBase): if now_nanos - self.last_steer_ts_ns >= flush_gap_ns: can_sends.extend(paddle_sends) + spoof_ecm_cruise_cars = { + CAR.CHEVROLET_BOLT_CC_2017, + CAR.CHEVROLET_BOLT_CC_2019_2021, + CAR.CHEVROLET_BOLT_CC_2022_2023, + CAR.CHEVROLET_MALIBU_HYBRID_CC, + } + non_acc_pedal_long = (self.CP.flags & GMFlags.PEDAL_LONG.value) and self.CP.carFingerprint in spoof_ecm_cruise_cars and self.CP.enableGasInterceptor + if non_acc_pedal_long and self.frame % 4 == 0: + spoof_enabled = True + spoof_set_speed_kph = hud_v_cruise * CV.MS_TO_KPH + can_sends.append(gmcan.create_ecm_cruise_control_command( + self.packer_pt, CanBus.POWERTRAIN, spoof_enabled, spoof_set_speed_kph)) + if self.CP.openpilotLongitudinalControl: + # Gas/regen, brakes, and UI commands - all at 25Hz if self.frame % 4 == 0: stopping = actuators.longControlState == LongCtrlState.stopping @@ -422,7 +436,7 @@ class CarController(CarControllerBase): accel = clip(actuators.accel + accel_due_to_pitch, self.params.ACCEL_MIN, accel_max) torque = self.tireRadius * ((self.mass*accel) + (0.5*self.coeffDrag*self.frontalArea*self.airDensity*CS.out.vEgo**2)) - + scaled_torque = torque + self.params.ZERO_GAS apply_gas_torque = clip(scaled_torque, self.params.MAX_ACC_REGEN, gas_max) BRAKE_SWITCH = int(round(interp(CS.out.vEgo, self.params.BRAKE_SWITCH_LOOKUP_BP, self.params.BRAKE_SWITCH_LOOKUP_V))) @@ -467,7 +481,7 @@ class CarController(CarControllerBase): friction_brake_bus = CanBus.CHASSIS # GM Camera exceptions # TODO: can we always check the longControlState? - if self.CP.networkLocation == NetworkLocation.fwdCamera and self.CP.carFingerprint not in CC_ONLY_CAR: + if self.CP.networkLocation == NetworkLocation.fwdCamera: at_full_stop = at_full_stop and stopping friction_brake_bus = CanBus.POWERTRAIN if self.CP.carFingerprint in SDGM_CAR: @@ -488,10 +502,11 @@ class CarController(CarControllerBase): can_sends.append(gmcan.create_friction_brake_command(self.packer_ch, friction_brake_bus, self.apply_brake, idx, CC.enabled, near_stop, at_full_stop, self.CP)) - # Send dashboard UI commands (ACC status) + is_bolt_acc_pedal = self.CP.carFingerprint == CAR.CHEVROLET_BOLT_ACC_2022_2023_PEDAL + if self.CP.carFingerprint not in CC_ONLY_CAR or is_bolt_acc_pedal: send_fcw = hud_alert == VisualAlert.fcw - can_sends.append(gmcan.create_acc_dashboard_command(self.packer_pt, CanBus.POWERTRAIN, CC.enabled, - hud_v_cruise * CV.MS_TO_KPH, hud_control, send_fcw)) + can_sends.append(gmcan.create_acc_dashboard_command( + self.packer_pt, CanBus.POWERTRAIN, CC.enabled, hud_v_cruise * CV.MS_TO_KPH, hud_control, send_fcw)) else: # to keep accel steady for logs when not sending gas accel += self.accel_g diff --git a/selfdrive/car/gm/carstate.py b/selfdrive/car/gm/carstate.py index f1e94af90..8958c5513 100644 --- a/selfdrive/car/gm/carstate.py +++ b/selfdrive/car/gm/carstate.py @@ -34,6 +34,8 @@ class CarState(CarStateBase): self.single_pedal_mode = False self.pedal_steady = 0. + self.ecm_cruise_control_ts_nanos = 0 + self.accelerator_pedal2_ts_nanos = 0 def update(self, pt_cp, cam_cp, loopback_cp, frogpilot_toggles): ret = car.CarState.new_message() @@ -193,6 +195,8 @@ class CarState(CarStateBase): if self.CP.pcmCruise and self.CP.carFingerprint not in ASCM_INT: ret.cruiseState.nonAdaptive = cam_cp.vl["ASCMActiveCruiseControlStatus"]["ACCCruiseState"] not in (2, 3) if self.CP.carFingerprint in CC_ONLY_CAR: + self.ecm_cruise_control_ts_nanos = pt_cp.ts_nanos["ECMCruiseControl"]["CruiseActive"] + self.accelerator_pedal2_ts_nanos = pt_cp.ts_nanos["AcceleratorPedal2"]["CruiseState"] ret.accFaulted = False ret.cruiseState.speed = pt_cp.vl["ECMCruiseControl"]["CruiseSetSpeed"] * CV.KPH_TO_MS if self.CP.carFingerprint == CAR.CHEVROLET_BOLT_ACC_2022_2023_PEDAL: @@ -206,6 +210,9 @@ class CarState(CarStateBase): ret.cruiseState.enabled = pt_cp.vl["ECMCruiseControl"]["CruiseActive"] != 0 except: ret.cruiseState.enabled = cam_cp.vl["ASCMActiveCruiseControlStatus"]["ACCCmdActive"] != 0 + else: + self.ecm_cruise_control_ts_nanos = 0 + self.accelerator_pedal2_ts_nanos = 0 if self.CP.enableBsm: if not sdgm_non_volt: diff --git a/selfdrive/car/gm/gmcan.py b/selfdrive/car/gm/gmcan.py index 565cf75fb..dc36bd2bb 100644 --- a/selfdrive/car/gm/gmcan.py +++ b/selfdrive/car/gm/gmcan.py @@ -185,6 +185,23 @@ def create_acc_dashboard_command(packer, bus, enabled, target_speed_kph, hud_con return packer.make_can_msg("ASCMActiveCruiseControlStatus", bus, values) +def create_ecm_cruise_control_command(packer, bus, enabled, target_speed_kph): + dat = bytearray(8) + dat[0] = 0x01 + # Match observed stock shape on non-ACC CC paths: byte4 is usually 0x00 + # (with occasional 0x80 from stock state transitions). Keep this spoofed + # path at 0x00 to avoid plausibility mismatch on non-speed bits. + dat[4] = 0x00 + + set_speed_raw = 0 + if enabled: + set_speed_raw = int(round(max(0., target_speed_kph) / 0.0625)) + set_speed_raw = max(0, min(set_speed_raw, 0x0FFF)) + + dat[2] = (set_speed_raw >> 8) & 0xFF + dat[3] = set_speed_raw & 0xFF + return make_can_msg(0x3D1, bytes(dat), bus) + def create_adas_time_status(bus, tt, idx): dat = [(tt >> 20) & 0xff, (tt >> 12) & 0xff, (tt >> 4) & 0xff, diff --git a/selfdrive/car/gm/interface.py b/selfdrive/car/gm/interface.py index 4e6d2b6f7..dfe8bad86 100644 --- a/selfdrive/car/gm/interface.py +++ b/selfdrive/car/gm/interface.py @@ -534,6 +534,16 @@ class CarInterface(CarInterfaceBase): if ACCELERATOR_POS_MSG not in fingerprint.get(CanBus.POWERTRAIN, {}): ret.flags |= GMFlags.NO_ACCELERATOR_POS_MSG.value + use_panda_3d1_sched = ( + ret.openpilotLongitudinalControl and + ret.enableGasInterceptor and + bool(ret.flags & GMFlags.PEDAL_LONG.value) and + candidate in CC_ONLY_CAR and + candidate != CAR.CHEVROLET_BOLT_ACC_2022_2023_PEDAL + ) + if use_panda_3d1_sched: + gm_safety_cfg.safetyParam |= Panda.FLAG_GM_PANDA_3D1_SCHED + return ret # returns a car.CarState