From eb72925045a5866f7ab90cf6fffbc099b0af6aaa Mon Sep 17 00:00:00 2001 From: Hamish Willee Date: Wed, 28 May 2025 12:23:02 +1000 Subject: [PATCH] Docs Metadata updates (#24929) * Failsafe metadata update * docs: update module reference metadata * docs: update parameter reference metadata * docs: metadata: update uORB graph JSONs * uorb message metadata updates * Add new uorb topics to sidebar * Remove uorb topics that no longer exist * fix up resulting docs links --------- Co-authored-by: PX4BuildBot --- .../pixhawk6c_mini/pixhawk6c_mini_hero.jpg | Bin 42510 -> 0 bytes .../pixhawk_6x_internal_Architecture.png | Bin 775954 -> 0 bytes .../toolchain/gazebo_classic_takeoff.png | Bin 176472 -> 0 bytes docs/en/SUMMARY.md | 19 +- .../en/advanced_config/parameter_reference.md | 853 +++++++++--------- docs/en/frames_plane/reptile_dragon_2.md | 2 +- docs/en/modules/modules_controller.md | 33 +- docs/en/modules/modules_driver.md | 4 +- docs/en/modules/modules_system.md | 1 + docs/en/msg_docs/AirspeedValidated.md | 26 +- docs/en/msg_docs/AirspeedValidatedV0.md | 27 + docs/en/msg_docs/Buffer128.md | 17 - docs/en/msg_docs/CellularStatus.md | 62 +- .../FixedWingLateralGuidanceStatus.md | 23 + docs/en/msg_docs/FixedWingLateralSetpoint.md | 22 + docs/en/msg_docs/FixedWingLateralStatus.md | 17 + .../msg_docs/FixedWingLongitudinalSetpoint.md | 26 + docs/en/msg_docs/FixedWingRunwayControl.md | 19 + .../msg_docs/LateralControlConfiguration.md | 18 + .../LongitudinalControlConfiguration.md | 28 + docs/en/msg_docs/NpfgStatus.md | 26 - docs/en/msg_docs/PurePursuitStatus.md | 2 - docs/en/msg_docs/RateCtrlStatus.md | 1 - docs/en/msg_docs/RoverAttitudeSetpoint.md | 2 - docs/en/msg_docs/RoverAttitudeStatus.md | 2 - .../en/msg_docs/RoverMecanumGuidanceStatus.md | 16 - docs/en/msg_docs/RoverMecanumSetpoint.md | 20 - docs/en/msg_docs/RoverMecanumStatus.md | 26 - docs/en/msg_docs/RoverPositionSetpoint.md | 17 + docs/en/msg_docs/RoverRateSetpoint.md | 2 - docs/en/msg_docs/RoverRateStatus.md | 2 - docs/en/msg_docs/RoverSteeringSetpoint.md | 5 +- docs/en/msg_docs/RoverThrottleSetpoint.md | 6 +- docs/en/msg_docs/RoverVelocitySetpoint.md | 14 + docs/en/msg_docs/RoverVelocityStatus.md | 10 +- docs/en/msg_docs/TrajectorySetpoint6dof.md | 23 + docs/en/msg_docs/VehicleAttitudeSetpoint.md | 6 +- docs/en/msg_docs/VehicleAttitudeSetpointV0.md | 27 + docs/en/msg_docs/VehicleCommand.md | 256 +++--- docs/en/msg_docs/index.md | 28 +- docs/en/telemetry/crsf_telemetry.md | 2 +- docs/en/tutorials/linux_sbus.md | 10 +- docs/public/config/failsafe/index.js | 2 +- docs/public/config/failsafe/index.wasm | Bin 96332 -> 96229 bytes docs/public/config/failsafe/parameters.json | 2 +- docs/public/middleware/graph_full.json | 2 +- .../middleware/graph_full_no_mavlink.json | 2 +- docs/public/middleware/graph_px4_fmu-v2.json | 2 +- docs/public/middleware/graph_px4_fmu-v4.json | 2 +- docs/public/middleware/graph_px4_fmu-v5.json | 2 +- docs/public/middleware/graph_px4_fmu-v5x.json | 2 +- docs/public/middleware/graph_px4_fmu-v6x.json | 2 +- docs/public/middleware/graph_px4_sitl.json | 2 +- 53 files changed, 937 insertions(+), 783 deletions(-) delete mode 100644 docs/assets/flight_controller/pixhawk6c_mini/pixhawk6c_mini_hero.jpg delete mode 100644 docs/assets/flight_controller/pixhawk6x/pixhawk_6x_internal_Architecture.png delete mode 100644 docs/assets/toolchain/gazebo_classic_takeoff.png create mode 100644 docs/en/msg_docs/AirspeedValidatedV0.md delete mode 100644 docs/en/msg_docs/Buffer128.md create mode 100644 docs/en/msg_docs/FixedWingLateralGuidanceStatus.md create mode 100644 docs/en/msg_docs/FixedWingLateralSetpoint.md create mode 100644 docs/en/msg_docs/FixedWingLateralStatus.md create mode 100644 docs/en/msg_docs/FixedWingLongitudinalSetpoint.md create mode 100644 docs/en/msg_docs/FixedWingRunwayControl.md create mode 100644 docs/en/msg_docs/LateralControlConfiguration.md create mode 100644 docs/en/msg_docs/LongitudinalControlConfiguration.md delete mode 100644 docs/en/msg_docs/NpfgStatus.md delete mode 100644 docs/en/msg_docs/RoverMecanumGuidanceStatus.md delete mode 100644 docs/en/msg_docs/RoverMecanumSetpoint.md delete mode 100644 docs/en/msg_docs/RoverMecanumStatus.md create mode 100644 docs/en/msg_docs/RoverPositionSetpoint.md create mode 100644 docs/en/msg_docs/RoverVelocitySetpoint.md create mode 100644 docs/en/msg_docs/TrajectorySetpoint6dof.md create mode 100644 docs/en/msg_docs/VehicleAttitudeSetpointV0.md diff --git a/docs/assets/flight_controller/pixhawk6c_mini/pixhawk6c_mini_hero.jpg b/docs/assets/flight_controller/pixhawk6c_mini/pixhawk6c_mini_hero.jpg deleted file mode 100644 index cdd3185e691c96a7e57eea948a3723d7fae5f56c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 42510 zcmeFZWmH^Ew=UWcG`LG3xVyUqch|<9#x+=w5G1&}ySsaW26wjvcY-^dCV9WT@4e&P zAN$W8mtUxz;_e`G06<-~ewR&;f72xj*H>AOO^#JOEDcfB*ms1|Wj(S-~Fw!2vjdd(HiO{ma0=4E)Q$ zzYP4#z`qRqAISi8^cw&q*mFz(05v=s>c8^Yu`z%0Ztyd2zs|DEjh?-%gtmM$(1 zyi81X&WuK;_Qqz6Cib>W?nVwwER4)d0Dd8N2O|?}GZ$iGGYgQN0M%(*7ZowcRDep8 zL!MdQLDb9=B<1O3rs}DnX5wjW!edG$B#88u-<{Xp*1^`y#faG5*2d16*Ij`0k9A&f z{#DFGD#-6-YR;=7Ch-pfd?!HqPg~sF+!)>1810=bm{@ptc$k=3nOIpFzz7Cs4?7nl zcLqCWvVRPSnK_#{fgD^w_IAXt291pEU0no7U0p$@yyiyc9LA=m91O-rY^Dq>ET%>b zMy6~m45n;srd%8>+^ps-#-#sgpsmAyRsX-G0$d;1C0G4Mz5l~M*~b_Nz! zwg1q}&-DMm@H4$O>i^P6!M_r)-{9PTu>_`!`2U0J-%9>RB>zj-zjXbN82BH7{~cZb z()B-L;C}@EcXa*#jIRHVw9M?l;guUWj(S-J1OVV*U|?aO;b385;o;%lB4Q#TA|N2* zp<|$665JIVP|J2qT&(YX60vOV`qhchlfW*K*U8t z!eu2PAYuIfjQh!lzKFl|NLZ*U6PEBgmS+iyCIE}qyqC+g7A9R^9ptvw# zzwom014H5NhDT}Fu7dfJYgK@gtWY5#7+ z(e>VnjZ`QBot``lUjcXH&Rea=1G<^MOb0%rs3D}u%F>&7us6{KXaUtN6*PJtVR z-1*GzF97}fYhkbo)Tb9f+s19sZl$77($(1P46~#AFbpr$J%(ueCU(8_$0^EPhB#wnt7b6 zO^y}c?00DZGrUAcx|lRaj!yx5LwPJMZ{>cHr52%1*wDmjn-meBH|iv)e!=UxuHGd=v8bNAwXCj<-Q7OL+uQI} z?Kkr3OuLt3lz3Lkbw&;gZ~CKd(xR}S^F2$cNfBMbkG<9^rAQ{onxXMwcf~YsUt+Kh zBtNWU$=T`}W7p8Gr=s9uRkU#FY`DJ39^TINAoW4I-LTi_T+IYWm*J1sDn9M+=^6C8 z@r`{+%M6cCM)jw!m*4ZFFTpk~qhdQee1*V{tXkK4%x%WaTwGW%*rKt?DqAs8r<91v zhtM`Kfx5U3mtSFUcUfb5EBo$?EsZI$4BQ2z#;R!0+NfV^td_2KpWF<=5C|eRk5v!7 zxC#e`@eq9kF%1fucqW+wZ2v})Ik}_G_UKnTcTwZjUcm^%E{k_fWu&CH^Ku_(qCC$8 z0Rh>Rc$AMXfGX2hn4sYv!3#ir+9Q5rhmz730$vUXYP+BBeYB&bVD?wlFrPkbdBve5 z-J_UaGBCxP^^L_2hJ3aP%RD>u%!;W7CYFz=*g`Ei9d)+-t=KE)#9K&m`%!nLm%$Q} zF+j)cYJleAG!X+@nS9my=()A})!?VDiM!6GoC^gQeZz(wG^}=XfvR?wF<;P~nKs5( zCbQGp`*UG1?#&MJmzFC+oa8g6;baA=ibE*5+{>d5TmD_R&th7&H_P6x#9$c2`3pd7 z)idbJi2InCxh-u0Iz8#z(WBBj@iLm)W#50CHP}m!GC%CJ2t%RZ3=wI>4w1r&M#E|W zHLf2nf{g&sz*bbexU?=9HOi8p7PU1dJu9>uKG=M05D7`cS@Hfefgy+(FYUNGUB@{# z9q(|^lS9yD7-~1pLUSkC&{WLN_^PVtUu_XFx&R&d3d?l*w|jeIKeNz@uC_JFpQidI z(-~u@Vl~8pfq%O|cdzDMWCx=ha5f|*ps+UCld162_JViS&XleCOnwC$TiZWWY(EET ztP48{OB*w&%-*2zUA+Jhr==J;azJSchlhi&wW1`o66!=CvJJ(?SD}l^Odblp04@wN z;F9HY{pV6v|9SwpbI$FlIpeYFdv2WtBt&Qb#6Q#xs`>Fcb z6~z^W(|qGq%=$t6;_C4s5EBWG6S))DAD(sZUJnt!lOWb2z>FPA;ypU3F+-#R)kfR+{ zZ0ZN)><^8CxqsY*9eUIi`h#0fs{2;26b4jEDC78SwKh3)Bw#=UI$R)~w-@|pE*n%F zbw*x9<{kPnI$4FS)f*5diB0Wm)amF{-}u;nZWPupcz~4^`yHwk@?j^>|1?Ik;KHZoe5`HHfMdJ5x?Dbnm=1xow|7K5r19pT z#UlRR^*L&vw{!DiokY7{>#H_(NJTCLLN?`;!oyz(+If;v0iT6*_)2Pi{2Ye+2Y9is ziRawS?ja4Oo&ROVGtk5%yOL2&yudQ;s7*-y=dnu+d2jD5LjfPG!`#(-E|f6VG<(5+ z79PoB^|nn%j+L(|VLb2NV?T57cDg}@Bm-!yHCVMN|EU-y$yHCgy|GLuU2gpS9kc$$ z=k$6xtU6@tU!4Tk10Kl@O<8(>m-N2j3puY&g8hq8MqsiBzrH9Hc6)qiWhskACa2D( zY5l^ww;M6I%U_os@87y!<*Au44&ocOECkQ`ky6-%1#^u$Unj0tvy>b) z5yHHF6MF^5vKWppvrWnyK9ju{HcyAeuJLn5h9|AIFymRh8&39pn?tr8_dDOfDi9Yq zPQMRq>%+Cpp#A3pDOExs)Ox?in(GB0dVz}pu*0iueW11p=G_vSupbHLQ@Zdfi-2*UhKet7|Q^35&HU}`6FMQzYVPWaWR0w|MN$zI1>v;ns_0)QZ1<}YsIwB z@Ku4|9}AJ28!>%jJu&X+nXWaa;|g|&sqAuPx=&q3-90Ppj}?LgVfuwX70vIL{?-`j zmd4$(;KcLkfFaJhY1x6xEiD|EI@MLJ`$@r zJrS|-82^~bX~Q*hwQAyK6(+dhD)stkRcQWGTg3jF`r5}%lY@2??voY$vO_|X;*aUx z_LGn29dU;t$?#w^umeDNM;=B&xy*;T_AJ{)UaC6RE`dv&EH6ePl2blKuIq8kzBOK< z?CU6;Bf_dtz9jSW$cy5`wTualhf%&-Z+pYnWtePhEjN;gB$#Z@W%W(7%b}aD9$(u* z>s2HE^LW9AUHxqV8=9eE6_YXOoKwnhg_Y;I0(|)>u{?di12H$xpgh%9`#T)%pQYz>z;5#NX>x>7VOQ z1C*(QbnxHIpJ98)#=>{tEYPpuHpiPRRt0J#1=IO=#X6w+xw zn^>(j$OQn16e244fDOpw1puUX*G0af7syJ0#c@3k-fxAW;}bFf0P^3@>tawekgz8NH-Gx26irM8Ga3M}vW6FjQ^NlSfE+aisOio|m;xYx-F{HnsXqXaO<%PQwV>sH zf<@nGvFTI8s0sl9{Im-t$Qa{MLjXic`JgbM1_)MeZKOErWLtL7=nbBg^Qg&B69$F5@K1XkvHZCky$c7+M$hFXbW*l};Y}<* z$SUw0PbC!fSr0oydC!tG_que=X78yUVv>^fd{2C0z>@#`GT6s+)&J`G0?0Sp+zUPI z*Ax8OS#P%fOYsw03B9hf5BhcEHVrgbSCTR-bHW?QhB9-)>qv&Z z--g#&fFlW!oHQBbn>V&?>O{%}D7HlR&!)(~C>y=L%m=<(-RKy*aV~;((4fN#?K5uv zlh&wWv8dvN>xcEz8rSHaX{j`{)S;z22-LN{y_R%{$lVph1QG6f$*DPhE#5>^-i52G zYOX~2q(OIhQnDfV;is26*RgfFo0yz-d8=SAOu~6^ieuo4BfCH|Mt%Bjcf=7oVonNY zWdse>{lh5ffqQ_lj!>IoHwPQ6EW?%YtQn%hWc?~MgxdStT0GG@&&wGKj(p>o9jafr zg?H?aWa#shQ31yITQRc{3ghIFqa zpcNMgU}a`Ue4yDIy)vFjvIE*s)QFXE1ETypJF!=a=5sj70E%2~lHidz(uDam-! z34Fl!SDZ{ekWh%b{P>I(XL<+KFB`iB+uJV_yXBLIM=Kk9KVn+KD0MZ9M=2XC;EeZP zaYR$MFNZ!wx*RA?TzKt%uJ~r@U40Y?jg6~BSAJ*EG9o!l4q9qn9*zw1V_f>Ja)-Z; zRoxNt2$P^z+C&q2zKs%{;@zz%9g5T@p`#_vY-SUvl7;p+ioAD?V?I>0y~aC_o$ZXy zw&6YsP*u9GR)0l^c87;bD!Vj)&qc6Gi&{Z%dxP~9Cbl&&RrJEWZBW#XTea}#LT_p4 zHl9j^ni4#>?Pw=2$&zu;vg|eU2uNDC5}M#Ub)j##U=dzy#eFkPrQiLPnUJfl!Ci@# zncEhw>tgI8nVAyZS%^bPVUl(*M`bDvtW=O%9^($Hku;n`*j>F?UegYd0v|!ZYHRs= zfJ}t~iJ3%~Wz9v8oo)ZUP(S(gCL!?&g|2FC1a}3k6eR|CyKZT5EM`E-x;p3uATY7C z;v!H5-?|T&_QcmY5nvwUR>!fd{%WR}&^eVMtwJNd5|sEmgTA7-*!a|3p6gf9+ZA^r z5;w_jL<2|-O#@YNQ^0zGpQSIxreMG`zD74ax>s1E|xT=F}kGi@dwYco6w$o=Avg5Nv% z!Z~T;miWn|o&$D-&ZB|e%ORdWWz?`L_-G|acH*xYH@<|@&J&{cn3a577L*b0u|2-L z6s_+IZq&VIZe32^S+(2GCJklZ2nm|IED>(SIge22kaoe`^sk!P>j3sJaQBwUL*;0S zBfBS>*;2UetJ9aUvo9^lTtMqANYQ*Je#A)9pwdJl(>REX0m;XRasCYif&_^ zg=;5u!m?4IyFhB>OpBs`9z!BJ^nX8C-j<_7$Zq zD#q=C_UnY8PaM)DkH_W4fMo5hvO4|3~;j0L!&VPCw zuS(W`RnCn`Kl)bG95qB$X?i0908k@#r``Uu9wIJIE0W&7o4X$+BOg0APzsL``0*sd zDt1G51viMX5;a3cu5c~{7V`~yi?GU_zKYq}!D5O(;yAunwA>#w+e$E4tmp(r{}rqK zK|8mD#gt=Cup4AlV<^8510fSooze1f#j`j!Ag8_)?~RdBD%|rNQeA{6@$C(iXN|Gy zp5}qAn*K>`PV=(9hG%g7pyhy?&uhUCwVqr#=n3bYbHfMnOiS4&y=S*=puZ2Wg71>h z1t*faR(M?!&cFTuZzb|lFWo$AN+`VvPjVt;+4fFd5v@R(A5JevtUytcUQcZJsU|*p zFM!Jt%=pq!sQ08Kypr5MJyzEw8^5Ng<9Q~9Mojp@cr8ydL)s`|?BxHHm~zf~>z2L8 z93$q(SN&naNTKnIcys(ka)n_909}omeK&x2ISm%Q%5=URDAHIPOt?bp+BnwHTi9;S zM0tGJo$lzagdcvUrE}CIdy>O3sczKpZE*MsZ5bOEKV`Zr{1Mh!S!N!>5gv<9ir}fQ z8K%VYEEl6_jnDnPn_J9rE+ogz*Y#3o&s+~^Y_F1syOy%g@1(~*QLlZe5!g@^U1iO2 z-vOK|N1m5W$u4|m>vO16`gq0mqP}mSw^;2TNX5(C}JrIj@FqCMB(*E+REWY^3@WB zlcl!Fr#%pH{#sY}gX3WI;=A>Ub^88s7>X6ol+PQ)liiU^nWK>7@sz!UMPzFjVk9el zkaSV1`rRCXY(yKc%K0(`_Y!5gK|UAd52JeSDQu-wwa{L_{A_t^R~f0Dx7@bt$m6v} zd?aJsVBaT?bCFGXMVtfXw=o!u>BIFNW(s|MplqplHuU1#L;UmPblifV_E9UM-0k!V z=L!mVxAEf;>|OwgH3u+Q^oum?G&DFLWJ*#|yLCij{d3&s8ph!*Dcmkf)Cv^c>)niW z_qz|_JOed9EBMEWzBQsV!7S?&tV5P1nUCHmQ**?1Qb*<|pisvgK{k=wAh4;r86%rX z6+wR|EFzB1hKSw2Q)0DeGaozaR@Z z9Na&Y&=-sZ2Z=9$p!-dx7XZ@LbIhNc7l7383!ul_H{a|9@T+U(iR?e6<9V;b(_hbB zQ>-t5-!A}Nvx~jg6f9~U-kp3d9v+w+03x-wni~;6C>;)aZ1Z-+1T04dOcX$!_3Qe^ z*|8q3q>?eVfg5s>?(YL`$PeUtvnx;TLvZB@;6{Oe&F*bhVI-#2*#@AZht9Lh0Fejt z3m_<{1l@=02-1AHhpWzQ`}MqH?N~3`L&3hJZ=s!qx9<{1)|>6}KwafAR>dd+Sr6`@ z9!(glq7{LZg_@k#EH0D6FqdSeJOlP`maO}hZXT!N-p)7Lr3O;5gh^Ubd-nesE#vSx zT`6?H51JgzR8ptG9YmP8XmyJ9;0d;{igf{(l;)&$$X4VHE2f~x`B*GNi>ct?R!s)t z8AnX0l)v6%%r-cBtfo?g;Q}jhgLQCtf*m6Acljx-gtcHzsU80BMdp|})>tCgIR|pG zT-Q+a_Iu3lq%0Zc8P^te{Ha0kXO4>-6}MtuqD`NVy{Ft(7eDK~L5F5o9L2zRD@~pk zO0^#;0~;Oi6{Z9=Ly%12U^qrPM%%^R@v^6)Bv@nVT8f>U>ruK3F3R%bZ-J^-MXxqy zxe5dk8Krq$Lzht{a z5AvxLz1L3YRu-IYfNI~*FR0R>Mw(L+bz~-rRn!tNi!ES+dl!F?KK!+pdGiqwV{QMWX5b)tmuc)g;=ziumI~si_xlj7fMuX>=zpj%1m! zuz-eT@v+u4(b@V9utpiKdOjY~{*GWESllo}0;07R}2iY$xg2&5p;Z0k$ zVb(}ny>L-VSEkT+*-K-rnvmlzmMOYM{`hW}+rmdi?`_#aJ$6xP%v`sJpe)D0b&wg= zEDB$wx56qs?U?Wxcw)uW7ji{0@VVFB4PYx#nZw9QDmHU7=c z97fR>it8Rd(!b`PR{im`MEA5Ou(Z-#_;c&$xv|OxIYNpsnGD(N#jf|{TtbgS{NKij zDm#*GzfpvdwGHwVyZ$Xu(Q5zD1_OO0$Hl{#Prj+dW=R{YFWY+gagG5pL9so5k2a9< zKuPcjDJgWHnZjIva4jd0eS=fJgnuI@tB;~__)i07SGn#6F2kYJR9JkPtY*B9ZmkV3J`TJho1+Vuw%0$I~f{q?POjQRTlEmiw-f&=rM+ zb%aWuADQxr06o7gIL9SPguCjadCMAmF=#W#*gpaqkK zRkIV&zB-FfGO~8tgyA_}m0azMh#rSBOka`Ki+G?|%Aj4n5{OazNy*tgy>ZbZ|4;80 zv5X1jyCKilMf!afI^+Ix8M90) zl3(n1KB@c%tvCG#O~H?mIb%hWa7%gih4ZVO_I5#!({b+_$HwQ{Ggrk?nsjAvO@0kc zo4P+$fR$Dk_(FtWb{nuglT%!g@@H~5l=9`Vb>fqya@E5~VSYH6RxbVZtgR5donGyR z?t|nr<1=o1b?N&xWJcf0WX9iQ=xoO{b!L7h?L-%WxOkFyZ=rXql1d+XiE(2ZI0e~0Y==@_AcYb3|1Qo&Ja`INbQxEEy^5(UAL zbz{z-vkpy5ms=xvoNm@_hRQTAKgB%U5S3!v#iJHxTZorr!#Rao+p%?1B5_tHmz%0a zhy4(5l-Rzl`Rj8^?*{ezULjZN61-wkAG0Eka2vID<5Bjq&LP{zKV!74Rna-}yZ?_> z<)h3WtqH7<^%ZGS6ufM=$d=OchBJj*7FGGEa{{xR;!=F-`yD&o z-!wzK4?Q8`*0zldGu-54J-b8Lm%4AEy{_xcop_F!?C@aHGTo?LKXhXEQH4_4?TY#_ z-x&j=c_HeO+xR!J**MynuwfDTOVWl8bXIdGOEMAm;;#wD<8q7W`wtrR`=i($`)P{k zQ!+zJ&`@kmJ4Y^2uBWm2)9jPpyTTLWL!F8y24)7LreKx^r9t(pCA({Gpkg01BTzt?0S4&0Q+C$)afupA|LXuynW|NPo9M6oDAlvk?E>d!Z4%^MDG+T z)L>5UiubcsgTN*8uw~Zp3h+O zT=s8if0-gUej@FbTxdT{FZCS{=i;F#i=RSSs*-v7q#kCcy}a-+q^hfLhk)01?XQ>& zA12|Nh#jj~O7j%5xcT6X_eg3=sK{}Id*0Str?sD$c99^} zFuJpt)QJ}1%)_r7M-G$n0w`f&C{8&xmGj18uS<6tPM3A+um8Xx9}hu$qyk!twmVaAH-F5k)Bw=OD&NPsbLUsV^mD z;&GKB^F-q@YhrEjJFf|wRw~X)#$c=D&WQYs?N!0T8~lEukkb69B^UD`(Qa?Vcswg9 z&f_VQMp7HQAe%}fJ~t=->@>N~meY(POd&AC)miLlGCfr_sL6$bUxeaVqu}UBM5)~t zx!JN@Bb6&B%oabHi*;(QR4IM&m!^H1e@La(nRo^-c_tkVEj0TmLW8LuS4N!5_?n0u zg2LE`Qd3KBDLEi^VYv-^048Yz$9j-$K%p`{A451mZ@Q2*KI^HbD_%jqfjOX{MPf0h zLUr{&YeY$_;zi_lxXu&@%SD+}n`n5!>2{z?;{*?Q1^nCR9^`Vu@#&*4#!ex^`PolK^7l6=DVs7fFR!l(_GrM8^=O2O?;1*+E zNFH6U8;E&{$<3?E?>sF=F%6h*%dLE~q)jOUiX0^Z)#n+oW8LFvZu`YS3?}NlX_>Ao ztJSj!jOQm!{0XU=K=9(1kAB<(VA zF}Co-V2ay{l8p4cXAY+q4~42Vu)A&oi9oasOomIzpHXeF`^c=FRy{8C3%1)U*HU?N zl&Eewd-t_{#~z&#%G>V8erp}O?tu#_4kKgD`FGaYM`$+DqnXohJ`j5aXi?7#?y?#W zYiXyaD~}XB256V{EuN0i+sqUU@XJNW8WyzQ!~)cBBrc8tdIfq`o>`Mmw3!i-vaYpSe~I!A?3!bXNj zzgGZmdZz9{v<7-wD-C*M+Ej$DEkg|OFo1E+LyjhTnOdX|X{Nu*P3b^}3}-Y;0kMs1 zr*2j#U4ER8S4FR_V$#LUDa|o6MxY%9bP~1#erbZI&}+cm2L$X|UL>c<&nvQPF)*~u zCgey%x6cwx@+TM*v5&e8Bz%uevyDvntM+({r)1@rq~@CQO^(ZQC^cV>OOI!iWVh!2 ze%=#}dl>=Hssps-#AR$(1Sy9}DQ9ffS84{cy4aUQn;N)ZY<1D!KsxV zUo!(Q<+R{9adH**sq$Ax?rB5t&?%YV*PL}27NJY`$E*I8qE;;O9tbOM>()@>l|t8P z?vS9V>3OAGRpAeUHCi$<@#v|shC_1X7Dgtk>;0suKlcSo;k3=O%#%Jm48i^mDOX@2 z!)~{oyPB`FMBOZ=b27eV%#k&G`*hUn6%xF?lGcfrL+!o1bc_`;8%&j@BL6|#??M<* zVw%b3t$rLF6YAZo(WC~R&&Q3tYS+K{pS?c30PLHsE!)Nsjl1KEbQl4g#8ZS)vOy;U zQso|czuu}~dGMO3%iYVaAK>bYm0Pa@gV)rJfuO=P5skoiQ6|pL=65}+3?)f;sr{%8 zn@nW##zr%(cPbdJ>=0x#(9F!)BRvYLhSkmzH(zHQe^s#e*@L^=HuAN*xmphj(=9`; zMcKmM7*{xXL}E9_wVzQ+IcjPwS*2S4`l<3u<}0}>ugMVM##x70=r?s|f&s{g1sX^A zPT_oe!+9p|NqF85)9VVZ1$_O4_Sleq`S#yO5ZM=0ti+9YQTQ!`ejuk#wao_8M9oc0 zc)IDF(KIgXV=R9=J(+*Ly#AVD_ZVkypC9c}3JR6@ZSSk7K{Ia8~nU3;~JF!hjy{+6N`K1zQ&C1M! z*Es@?!gshVUI6aL!RD@Vbw?#-+0d)%r)&s1%46eI^oWJ4zt z+E&sDyoJTuLKe=td09RjYznm7GvOY{MKc^-shz0H#X#64m2(1p(i5{?4VXIZL2|~O zLJhB_q20C3Ao+PsdVd9mRBN1%rNvZ2kCPZUHHTd~v*!u!kH#81WtPpt!s_zg+P@S? zCe&8OmnzbdlFE4!?!-4%>U+$F()K1w&u*qc^w0aPkp59^ZjEpD?95PDXNL=$WDeg= z3?~P(-vJLrqoz!rFi1RVPlJ}n4vABP0nAB32Z>mjbUGdDF5?DlLsm}aj0 zd1SS<35_5xc!C*^&~MNjUtDWRP1x*Sn|97Zd0qJ&UuO{V$&oM1(?zSOcwO035CZ?ffiU-M&Q@FF^4-{JgO$GeT;7h zt64j~t<(+DytxIK*lQi`r(e<#__WuYgNJ?&f_ELHxCy;#9>;IQzWD&hy*Xr-f%Wse z)(72Vb8decqvIMG?ZA6uau;pX+|C8Ib?%2{|XeIk!=gmaxD?g4GeQo~O$vO#!P<7_+X3|w^MK+9%Rt*4Y z3KG$^?}nno=VVX6HJYJ3U(!;t1g{$ zg)5eKnA}TI7x7+>jd80dxiL;%G*%U{7&v&}ec?lJeElUj#s>G?ebaDt*K*H}@Y#A{RAE;ox z2S47fs@2<6MuFxAtZ(p|*JDo6u!=p(WZ?cCa2VN+D;6u4M^m(HB7Sir6Y2}+7-SGb zYxV|LPbKC<0auA)a+q}EaxX=Gz$69vv^)|Wf(jN37gNa+QVv2}`55Er90B~09RQjI z2rG%KF!D|S%h|ku0yvp&9yGO77VeT4`n5yLu`Qe7ZRg^sXM7J?Q}Xq|n~X&;*}n$2 zN|kqdd~Kk+cWeWX$V@9g32I=H$g0omhpTYy;NQ}n`v zGBDn#!7-dolp-h#yt+5KkJC_x1xYe^DM9n+L?J=x5Oale*JBlkWkP7<3#7s(P}4NT z+>KWa?3LbVVSVr(n%Ds?lAkIfR59Rt7xzsopht}K&`YP;6)Whnyrqf#D@Y*<9rGos zQr4W(e@I1Wv-|e8%|~dm?W6b>8+Gd?%7!imu26-mauO;PPN8?tgfDHR_a?KUlz|Ug zx+b&H(UW8s6cD2dYozZ$oyRU0!!PF0jBibHnP`xRkJxlv(wZk+gm{?4TJ{p@BTckJ`#CZ-`F%jt(($Eoq;d;AG%JX#H(! zQc6Oy43Y+(x>Y)vbkDZYTVhn?41p<)e8ziBm7GrE3abJ&`IYV>F-Ef+Ro8)Ztqqkj zoQUNH_6iUn8m?r#kS@))L!Zm;RHI{CN(IXmL__8t4p&#WYIm=tK0W$YCOS9aEn2>z z-B7A)b$zy;Qt`ZKMMV;V9pyn>zTx0Bq_$!O4r&&k0v=%()A4Wq$u{0Qm;m0&1<)*; z=V`qEmk|lH0xh@Sbr$j?WVp-fig@fHA({nhZ+^7t;ZhvUo8uu<^b22=Qf}$SwuGx7 zJ>fXW{Gc_;Jx>>vN1;(>9hO_|8=*MZ&z}5TLgP#s61*d;Irv6fE5%L^nm6P8lu%X1 zux?vyrEfMiaVl+y8KnBLeytLQFiupMkGct`(|(G9$9%g`MCUEM3X{^Q@D!T{1yMqp zH|rfweV}~=>3d<@8&o6_HDSS9@#T#xyLkbUQK{|3XOghy26E_(nD1uQN#>XZdARRB zsE=`{vn2-_#Mu_!POXJwOZlqGAJ`+5w`tWoeFc%)%;MCkq&jFvl7e`(945JtbsUPog({ z0pELI%VO?eXmkeg@wbE2@f~J!`Ncvj9bOf#+N|cdq<4)c7L-{?MX}vL=B&~ngIQKU z74?Sgh*Y|fAih6dQzmyp6gLDEgx_cKq0~W2hIc#qg!1?%K_+giuZUDTCQ1Drbd9Ua zIyZTdIR%<)p-NeQ%QW@`eo4Vge@oE~QNg{y=3_5;5*6&~9lAixY5Y zX5o6pRY5-&$?j)trd*j_j?=G+oz&!%dWy{2GfN|QZH=ChtDm-MydkP_)>rxL#-4`q z3fu?c5R9N@E2{g$H_a}N|Mk^X@NA@cZ_YNE^VM)p6$By4DHVXe4stS`g3!X(+{F zvA+ozeot!WrN+L@P>&CKx7Ln+G0MjHPAv|Z+QTZOWu6K%wmLq*Tt>Ac(7vL7StLSb zA=iP!aw85V(~@&HaSfj)tw zyZB|_*fIasP>1K;T|7bOI6@=H(X@vz zkCSnf?K_(kBj*wQ(#hLtcl}asNs42vyd7lQctp2fW}i&R^1Qb{5o;ZtM@mR0ZMtnj z4kkXl0C44#=;L(tJVs=ifKutdR5jo9?gkfSGsAE z0P!a>a=IzOTpUpX)Xw_U`+Znc`%MJ##YtnN3g5n_`6@J+ zp(5u&-xB|DFnkKtm;A`Jim% z`1v=nQcOGT3nJYc0yu?|IE|K4-6 z1wO|%suW3@q*wP_E%*hXO}N436-njkJrT^e^+a+kF!u97DE&z&{we!t_3aBlgCPLN z>5)Lu?M>S)KKGQffM(p#Bg!CqT(gJRWT#pjBvlF}_NDBP%&k=TGlCKEL4Q5GnHVMs zSrMJc4T)1Lp77xhEL<&Pz`=?xH1nDc^TFS%+ zq|Oz->MIUgsOo7nERx12u(jH|k5;>?F??s#9Qlcq16^68@+Ycb~BWX5us8{raU$O%039wf3 zP2uZuBXE2)Meb!is7Q=~bZUgee%q%wu;s6HkpP^0IvfzLbCV;QF`UUP+EbYxD_Z+W|t;~WRn zcj>9>sSTTsjJp={sarhz_P{wzch-*1`Eqyb+p=xu>l<{k>XRMmLJo>}(-~efCwz!j zUIWN1_$8G@3NuR8JQK|#ZV`m@ccUfDPa2okZNEXomMY|zV%j3>Doo!esl&6%jPG^N zaCSC7ltc&^>Cd6Gug!*fyff}@RJe9*l=Vy%lwya2{u0Nvfi zUrXzqlm?Wak{Yk152W*KB+S!Li%pau)lC{IGbnZ-VO>T-zj{BD4L;Q3 zwClTa^^r z?%Tu;zk0|aN9)POrsJ>BKQ34pQ`&k2KO?tasVV%HRr&NwYZ4pTiQH;Ttg=f+g^E@+ zK{ENudLl4)73PpLHc>`KrzW3Ro}a}rr_3+aN;N^f0WmY`iAB-aLtyn8Ni1NQhpCaJ zlym@dew1@{3Czvt&%VG7lS;a~-sT{!NL-KSkP|)6xJlcTlCe;{CkU%&T%q;xM|>u0 zpr+9j>F|wyF8JVVsUA#HyFR+$ya>N(pH$(EHiBcy)A-F2ubR|PG)z}=e&@e5tL?(#R;l&nSKSdT-)gbP=%jHJk(W(8!F+5FJJd1w za4M%K=}!TqV72_T0Uk&nvwGTn2($VSAY?&`mWm(;3W5A(dppTD%P|5SEhrzn&iTfF zj_ct?Sv@uenqCh$drkP}KBqht+M(1vtI6@<{0z7kFNs>^DQ6WM>$eF zK-mNDS6z1nrsN5eEH@$yHVc8jS{5`++sg1G;9uJ{>s?7`4U-wDwN%{D|Y*u*_Ccu%s2(4veYQv=ls-ldUR!7n5!ycEjm=mQ9 z-!F`}h-Bm{@-+N3{j!sW$|)>DQNY-I4d1$vd`FcrpUw6toTQ8wTp1+2hFDX*uDf}Bf($aA`EskfIv{& z58*}}C3dVP-to=sHBrTp!4RY%CQ%?;)R)iI-K@pANp|0d8-9o!G74Drpl-BorIJ;Q z5W&RgjETo}9O1-$Y^MyYk}93qd_w0rBeRT6761I63aHsC!4iqE(}@1lQZ8cU+fUtL zJmv@}*+SDvuge4M1oE%amL#r{Ws^^y$Qm5nydStS;NwVVCLTFhnK#glW6WYXKk^k7D)L%Cy=#RNx4v& zn}YS*K$SMu`In zJgq#hSiZO_EOg%1$V?|!@7r3EfD;9VHsxj^l-88&oRk?+lx z=3GOcF_JlMCh)6T5&OzBts<_&x;bb(v;DJWxzR&Tn$v?U4~cg12NkM;@J~%(b3Jfd?6#M9k z{|lZ#VZW%e;N~tg(4GdTKP>H0;i>C53Pqt6RahAm(AGto#rzi-mPY-weT_=$y}6Rm zv=T;5rkcOgKcJj>W~R2L2g;jLO$2>XCr<>O=Wmte_rIaj9dUw9YK*g$H5M#;Q=KL$ zmT6~=2Wd*DV%sE3hMMfnQ%KE+#IbLsp~jM;CO8=uYl9vHO?0&|yW{0`6{NS0jbW;; zd^xd-K4LPlSCVal2{afToZEl0#5?b_z4mD%rlz9eX-+~PfpasZBF3K(*kNh_4Q@~;BK=3ML(81JJrLbr%X(puHLO5LLOcTw3n$#P0gA^!k|wCF{PWL$x5{}mFLZ|zZ9`L2X)mj8PksnO8}b=7xh8cm zL0rt6_e1{xB31P(4r;ZHPAoP)Izv|O1ieIJJS3L`7G}OSm#D}4{Y{*9YXXFOBU*#j zLmd>QUChkOOYHnIF2bUArTUDX94xvQf`zjogLU&3$0-qBGQ{uph<{x){bD0CZX5iK zSvIX$T9!D*$G)c)`}Z7nR`{HOS=6h~+9ml?fiu7SjOQvb*q7BZ>7_e9-zkM}C+00; z64bW+(t}tPfvmiYf)wM>OB+6cTlD1{_kU<>`&hn@k*(ZqUor_dNu$H? zj>5w9U+HiYlqR-Td>5V=`mOpVK2b;2^d9lRr0wcDqkZ(X#qlC$=Kla@@PC&ke#NTq z+#DsO?KE!2phL^~8W^NP;MFo#e zWg)ado;iMEpBASbFBMFjWrJccZT#Ce= z!wLu_myC|mlcSQ+B!=8fTfoHqfUwf=(ret;Y#qWCNvwoevo`%d$#y!Tm%|8=zI0SW z_WFFHQXoQiK{v|b$inS#x~Xvprwu!C)b5+2_oj_tMXJ0PgK-V))2Vf4yft_HMA(r) zolR`4Olmxgl3iW)G@5m$ZcLidBPx%@BwX$&?E8G7RqEb07P=;Eoa}gpiP`a)8%bM^ zv`~r^k3p^cF}-=3#M4apcdS)56N<$ya;y?{ZKmv5{u^O5w!$y51SCrc?)AdtXZJgo zTiCsIB<*{ApV-MoH16DB{{T+wj8@VTd}QKjD=|hF2mEZ&NTiD+vZNZ)<24b3l^LnH zsLoWou&AulX1xgD>B|=o5t1R_*pzPr)0gy?v?;+R`(pfG0+q_}LxP9sMWyANR>t+U zCY`r$llw2iro9n}aMA?rcOyxG*6OyT3X2r#W5BzDZQyYf*i4hw;5zt% z@IQt-goo2w4w)=;r#}VON6hAA){L;Jr-s^6U~;-U#yUX_lci5sBko#G zG1S-jo_~169YlSy& zQ6;pKu4@F8q5@7C1}Oq9){6&i+vNS%1>pCus;q08MR}aZBsJYNyHF{l+e6Mo$9?44 zBt4MO!(Ky#eS|>D5?O3~YLvGptu+-nj{_q94wQ9W%H1Di&gy>{gG3?|Wrq$nCCnv# z{RsA5nlw;lenp4~Y2;NIC{iDek7IPq-W*S`iM7e61T3BBZ}~`>38!l1ge6M@SM5XHN}=%b0YL29(O&T$Jq9gwv3-k|ka|uo}!|)7U7wEM4?$xpwMI_;u_&w&Lk+2ducdgv#KY@VL27gtxHOmby%pldbGRC9X#;b6-Ma)ALz|(k~n* z%})x~`VEeTBpDOs&H|wCRW^~@R|tLyBV)bn@^rax@X084MALA1^ccqV#rf7lTg%t>P!B=R>H;lwX2ZQJD07pG3?+ZN8HvG?4Mk zjV*EsE4Tb2Vn2Vg=EPq|lM+(uq-k(rYgyiQ;q4IQ<|;ytaxL= z+BSJVaN0Uri?xVr+;q<4@F&9Q)|VuLB+%HSk`ef0%{#``(@Ywg{{X{UX-#RRF-<7x zBmV%88v4~(M|I!H?CG1bNh>8i)t$)3d+l_1cz8I|uZu%U{L*eR^j-~oTzo2>w{dwh z-^vy1jPEl!qkB~*J@v`q;hzSy=Ug*-1ELhFo{2{qVpA`c6RVo1{Z8_{*8qnPAnR~Z~6`ixBSHK4_e+fxvU!w|SM(JuUj zJFgP3NyoUD-jwD!=-%XU5U+&&2&|=+J5vv4AEA%PQSgy6&oX=0-RvuTl5w)w-Mm?P zA}Mb+P_W-7GZ?+Em<5w;jta3Paw%WE1<6B#PL>GWO5lWg4%ijA=3tW_=n$2QEhV{V z)5E$n5*NxEm|lEshI6w20E9IX(Jg*UbMj0n&tT$PIcxL^r^Z>(Vt*n&+>0eXqQYai zwTL8Bwc~4TVie^m^u3Q!dviLaH@qO6Yo_n2^~T0(;{)mwUofVTY^C!O>d!9}Rp7AQ zw-dnDS&2j#d&Q9Rx-5&D-MWuDUe#VpiodYvtngbKmG;p0=mV{tgr@9u5l$4#DGhT{ zTV;)2d-+IeKX?`;iXNFXa^@~s5q>zC^|+F3_9kta^dNf>Um{5Q$Ku#9=NBcg+bof? z-GgT0eiaj$Vy+1foabJJoV&gO~uG76NlHNqzLLHol?#7oK zMU!@8`m{(_=JDq3>_trk;p%UDU%3Ynu;NfMdky&3396RtWoumqV*1KwqAt$pE#_;1 zheKHn-1`ZtG)UO?T+5L!*c^VB@N}lzYyKR^ZY@-jOGuH%%!-NNzugko)ntb~%eJj8 z;U)B0sAK}{e8Vp(mu25gY3^$9GEK)MB`AFy5KiGPe$FfFZjW6=t})puxwoaDah$DF7`0N!NLvqRIv~lk zbdOqIqruY*-hu;sNwZP~`&}ll1XoEaQH-ey5UX?)9KwgQW2BO&aWje9U}Z+sGK8SF zsVScC%{&gz6^ep6x@lHsN75603;Y*P{c44b@FX}Kd`~YUoFh$oDe^^7jR80ncYnRDk*p5D$zh%jG}GDX9?24Xa4{QX=A9D6EbZLIZYBi z+thP@;kM19|WTQ7d&KY)++{{RX90C)Iq`oDo{uaMmD>rEs5TRB0*moMR~OjRW6 z2==CGXXqrnl~5&wO_NJby$#kxd(`@!`E(lL}dcVpkzv+Gj z_^ft+*q2_H`!^W*A#VLq9$VA+BxwD(2(&<3e$FB|>q{07rDt+|3mNi42#-uc?8TyQ z`hu3MWEWJzgoGGH2P##RAhr!}CB~NmhegnV+;SW$8PfPEMVzrk*0GR-Je0o$s!XBE zTq-<*E|d{b1TG2W>qE%ZG$2TU6pAE`G_K>|cti4jJWgHkC3 z30R7v48QZA|HJ?(5CH%J0s;a80s;d70|5X40096IAu&NwVR36+P7d-4i0t1icfPk-33W6OzqMe&h|DQIo^+V>)Sup#HaxZSFn2SsdoVVx zK&s!%BNe~D;JT(_HOdZ)vOgwdfy?8R4sV$j(+?R{^ro!NVtR->mi6C^pj-IksXmN% z+v^GM;(^cfCy-u*^Z0`Y*?Ng(H+q~)6~Sysx|HCVyV0YTS19ct6#4Q#=M!P>HUxQ< z86R?f{rEMhUg@7IQzK{V;!@A)s?Qtt=Tg3+m70npykPIV^Lm20=2(%)*XmiNx`{Bn z_Xd_RR^DM!lpCR_Q8iI($HH2(l3@0k=^rd=Coe=+DcD}Bd7*li3uNouT}W7!&jc3> zq$Pl=T+Pi~=1;kEOfL+;C8^2jh(T!>~RX~&$e4P{XyK>ebX|{g;{F{ zoBo*0q&?S|t;^iQ%71di+@*|G-w*}UbAAd-#;@E^u)8)85Dn|8PiFdoltb>LLe-;| zIGY-{ed&Ut zR0i{Mm4M!8cM$+BH*f_oL7B@Fu&y%^-dJ7-mhIu*zvn2M^E!AFJE`{bXVb(dS{sn~?>)8R430fI7yQ`|7hc89p+y#E0A#9RLWyD$g+9;1M@ zcmAk8ceu5IZ*#no_<=EiLYH;Xc(0;YIh1k)r^3Q9#ar)cNBE^qqx3NwOVwt;y&pSxO6v{t<(v=KLCiK}Wc@xW$P70C=K`nhN&Itzra~hA7-<7{*(- z(J`py_r_e&R<7krEC^}^8VjUnmTmA={$06(U5nTFVf=8&YV6O1<}qk$>loEkb{(8p zm42%SaZLJA7i9^ZW#gR+ z@%f4@N*S z^N;D(Mln^Ky_c}cxh;S!AB+JZ9xj+%;x%X7UT0*vD(n1UGMKHgReG!ZwU~_EA(**4+l7T=PCpt>fI)~vf?8U=ZuhKu| zlnCCJ_+e2oh}P@+rhqaYI)mWGIF-#>Vm|G5%6cPM8-mc83>d(@ zn>Q;puS>Cbk9}OGL2=z<`B*NKt7?-N!)B_{h^d7bHDzT)52G>6qnR{|N4BR@E)q?W zD!j6zEHvbrkqxkSxV#jJ2XV$lqF04XfsS`@MpxRyt4mcrvrzt(=lHE^(cMSy^1Rdm z0B|g-?R&(-0=or2faQ*jjF`yA#%0GF%7s}_#c1~_Mb=*ybn^cI7Q9Qy{{R;JNuANe ztIgC=7wDNxs+=WVUfdl+)$3UWsvj|oVs?f&`kp&uz*%*+X+GJj_s+;&iABXe$pp`$ z$R6?lt6iS69<-&kLg0Wt!Y$r*QHkJ@{{Ys4f0SlQ%ha+|(RB$kG4b4ikH*6W9=ed% z;&qFsi>w8QOXCmeUCI{dyY3dkSWAu7`rA}OPr$(t7|^-2qVFO4G{kT%gBxjdST=;f+_OCEDHl- zN?P-R^t?GBY`WTl{Xfb|{!TvfHMhK}^)pv5tLej?a zG|c^Bd_LU4G9hAr1m0TovK$45FiHDC;%H-g_BBe4Z&1eQxj8UFko^aVmNJlpwA|`4$P#d-#ZI=^@T{i#;Wj>yZp#&R|@xm3pYJq$&{MhuUlRZW? zC4uWkx0@5l-9hAsoti=zQTWd1Xq0CLTHC9Hgs-Z22QYE!YoEpeG9g~(6aMwv{%&a_ zg44(E!ZkTGDiU`_Kj^LA-0dyUi^x-(F*v=={*Mpii9q!}?YpiNjCk zq5DQcsw{g#R|$rU&ki5+5i1^t6wKW1P39@x@~$E;^4q*XLb}KCa{mB@$0P%Tdy!jL zqrof`HY6!sg~H8pKaaH-VEo@no1S-NQUnUbQdy&h?-I@D@}epEh^4f4mD3JGLY+)vH>k#gWq zmx^hop6Q!J6^L1GR=H&#g&5avLLfbG;8Kz{92JNg94W5yw|ykUDht1A@~%~v{3^$o z*0|L*E+5kh{{XKrc*4yL4`Ry)qBl<-6xS0Oq{|^IhN$3qfOd<*tXe-Jpx7rhFwQ_c z%!@0FCW?j^U%AS)^&~3P_Jf<^QYrMzme2EsTK*q<^&FG;pSW=6ydOMuth*pzcapsN zEj8}eZ|Hz&88j3C2cRHJN?9@x>FQ+ea-6&3K~;}VC;s%h54#z2^0;`d_mE=?buC)U z&HnYGu}LsS--2zosQF)0DTQPqWm*30L;abeMzbdkT;RTKRhS61&kYahSU~egI-?21 z6xc90>fk#8dJ)tqn;-82D`5$@zGEsPsCzC^tc;Se5Yk#sikYLXWwXL12lRP>iDJ_Z zUM2;N6g8+`E#Gl&%6fnm{vmiDa21z*GJwsunuXr4+`R0sa3S$_%UBOndsb0O8|Dht zzC6pWaW0Hd-w*}4Wep5ew@hu*Yy}i+xa1CR9Vy zF;ntEN*^-}C^Be)wYNqhj+?|R#SSc)ctaF1h}hecv5pNp%%Gt5ie|smz}OSnTz>I$A_lfBENrudsvOYxa+4dS9WFW5}37ZHVBTR!)QcVp(J6c-AB zpsW2DX#SfI`>~(yE!3u?+rFJh?1va|k7Gkrp zVqVIxQ95Eg0<66T+tbM$wX9-WU~>_8XA9hX;g9(a`oTSbG z%IDZbZl{l|m_}PHZQ3;S5Jmx^$wOq(dAWC&I&LPZVp0pG^%l%-XOj52X4T>uV5vhe zSu(92WtNV+=38N#%E4-0JBRr0W~nLM3(Z9W*F+04{1CwJ_W)GhAPJW-1s;mbaxq`I zU!ihPvd=}K?IKhPuBQWfk9K^^w(joen`n+}Az+85Wf5SdV1=1!x)(=N2Vr@Ovl!7h z2U)9*L5ELL>m;IptMLjNI@AuxFCgBk4P}mU&mqY~^!}BK{2!|`P~Ex%_c6b3?Yu~o zUTY>-%FYF==Qr}kAlE+fr|zdqXXyq6SKP463wL^Na4RkNn^0oO)luW9p-bGOHuX3P z9|sbKvt32$3$)|R2CR6ED)IW4l^5zEL%5-Y4ZtOgx+rB7Q}@(B<660G`Ih%zomi>9 zvS=~Xcof9DYFW1R3<&X?iK(5@y9{G+SnAGPKc!;&C3q|%(wr7{iss*}0~cz)a0oT} zKvp2}!3CI*N>sQEUDRN&7y6kgbIAlK-x0txLA$C0iP)it+T|4QEw$6k$PADVWG*d- zCS-rO_0!bS@q9NNgtrh}oHBt+b%+I5EKn;7a}_{#z-{ji47d`|H2}~YLw8b*wZEu- z5x`aV3$x;;1Sl>LyT!^bdEM?`7lcg#J2NcWqAJEl4Q0=9YXjvju(#APq{ep!mw7sZ zE)iVDtZMkov8rZr0n8c(n5kr1r}|@YEc;;zO^r0lLnL={Z!Jax?C6+xq_i7`W|?f$5!yIm(ma7^^U; z9@=f@3!$*LH7_c}Mb0&&_Tp2vfE7Jlj zJY7pU=JXI8kJQ3vGkAYW&(Dc1oeOmWJ3_e79y1Pb@dvyD@7&J!Qtsd_FMIn%Wr3WY zrWtUo%NHlaEy*+g0Hhlj>2Ml$mt}q?Z3i2OXph?$X4?Ht-<-{$y3N2wTxE??v=P|z zt;^(f8aQGKxA9XMAa0xZ3uhtDN(v$7BB4?=DS-a~&+UrzIqF%w=ZT`KH(IHT;DcV> z#gtW`Pf?>~YU)*sc)3t2+zZ3%Di`pS5Ay_DD)@p6A9&0tt!aokCNA)-PCun(!+2sc zP<%n88oxC~N}ksL00~I6?EB0Mwk5*R6$&ex6YZ4&d9j?ls$2g6Nro!(scvxY7<kKS@f$Bu)ZeVZpyUCPCSl zZvy5YvzjGGiq=1gt-LjP1H6zsS#sM}pqXrARGmPo)^Uhaxss=2f&zlNfW~)lvXnex zI;An6GOtXL@`Vgzo}ikCRM)M%pki*O>QEWGyHMH!2)V8pB! zkCMqy-)%fbk_dWOYsy|rb1|{A#6TwLmt?#LPcq!1O6!R0qFo3h;^NUtUg9lGwlUz6 z@k{qCDRy3FjdhTen=1N)WmY!Cdv|`{eb|CtdO?|(CF^@Zm zTkoILyS5K!+~{MQfU4OV-tm|r#=OGTTg0<$`j@(C0^9MDZo0k4)n|w!qGy;i4tip1 znpQI!T6yB;G1W^DnXJmqucJ(-94_-SIcvFUc84r@)4REog1d-Sk)jIV>vVKXf8KOW z%c9pcOrtuspjk=^>MVxltrjpBpYns6?J>L^?hfD&aCT|jG*&CYxU|bcXNxcN`uv!J zqNR&EsMU>$HB{P@9U4DS1RRnB9`i-;xE5L{`ePz*k|zfo!nO;UXES#$s##B;aZL*g zU>cN(dW~xL3tF4TX4a;7nHKZhO_ho=cLY|Itg%tY9l_G;h!!3y3xDMoZswbo)0)O( zg)l%py2Mn=qbf)!?krQvnPAdj25S>Me$Qnvs);9*yTz(u)M0^!*X zU}XL|&n1Pm(7ur&(dRPGDq^dXGjA!Kg|Sh0WEAJz8l)5EC}QGtt}&TH$8v$ltPC9m z)Y)V+qdZwH%5j-Zmcw{?35b;ExpZc;zcFxyy^+&-_b$sDd8mw|+HTvaodup*i#y(@ z7S*qJF!J@xMQuD%N+{i1B(%Oq@e=o*rcgog3RPV0<5uDEEmZ_&tJD*jnr`c;k7e#G znKs#(+DpSv>CK2iJyrW5ov~=W8A}ZVTMdn~Ev{Y4)*kKE2jD^>tGu(qKsHm^9LbuAG4i-0vyqKk11 zuoUiQG$g^8Y1K5>L8kR2}AOwpIz-}%V6MT7%GiCZ#Oa~wYM+Z@w* zj-0w6ZpJ4C;td7gmK4E7;fT0#0dt3&nB&6${*{KLe18^^l#Lbf8?k?{;RNg-)Taer z*^4VKun20fL?p&I;UC*1C>&ZSG`HzMyGTMCEo>5x_MY zVzDVm9O45Yl)CB`?QE88QD&;B^kQJKzGf8l+h<0%J+X9X+YZ|FMu(pyZ!0p~#x1E$ z;Zzo|jG+eQd40{NFA?3ZJW2({JxrYy3VU5tu~Ug>BvuLSbqM9j)WFdami{N{@iqM~ zAH=*-h`3o-7+F;nD9WqQ{0uf^@ZD4*(D21aHyXRCw$hjl8)6DPT}<9Hd`-V=mCin4 z-LQ3Tt^~_|<9dC@?w@1|a2=#l#$uvXCI~%5Zr-?qK}2sPeN0k@cxFMt&DjF_}Lzf(yv%81t4|7;oDuw%>4xSkENEh9+4U zfYo?}cXI~oo}pzf$+N_C@GdHp-k=t)?jxtDh7MPalI@%Ed6_&S>8XKLszjz%Q(~dk zBGV1co*-4uQm?Bem@(i>7*N`oIfwD=y{r-AbBy)tuSr)z#70$?rT_(6>XsmS4hYrW z72;;9@bND!=hU|HE7Ye}FhJa3OT6O@rU3heQ0=~@-5HW-{+EaN6lBfI)fmw%h8k`& zO{iK*vp6T)hn@p4o*2V>1DK)3FjH?b?B{Tz&b2Kt>RDJnQQf$K%U7v&{^4rV$5BG7 ziiM8E&6lNKrsE!c?Xp}H*xmTzXAM7CmWfKg4L?hk8J+xY$ac$pOnv)D@Pg%;~RFSfMFNW6p2E1Dqx2{+3|NWkwh8xvj<0RMsl=F#cHu7KyT)O z#8PuR&`)(Y;+1zY!6=%kHoY>&$jC2t?u;tGCiD{I>EUI78kc#n*Po*gQGIV5&b`7+ z%(CjoaK)lmI+S6^&CO6|%_Dj-P1EE={J3?t=Wuzq$++0=(H79K7S3i{?HbKIl*@jj zM?XImvobGy9UG>Vq+3Qx#T>p1V`k>M&38ZSf99L~R|L!d0A$(E4?q%;*%~ZpY2Q(5 z-elL+H zK?jDGVBA=B6ukGxF?d9NV_b?3g6L+xu26&iV75$?1}|gHehD9)3o>DRSufq!5h|@v zuOg+9ba7jaMeCL&P#J_={+%A%_?h~r$AKF1Ub0IE35wj>uHyk4NzheW{{T}rc(@$% zsND|C%p6Q57$9)5wW^5V{EL6W<4`j(kiTrTcHRdZhd~w5axQG{Rv2E0vnP!soIco` zn|JOn_pjYDHHD!#H)u625y_xeJ;OhfHh6G6%LS>Z7{GYQzuT#2KX!*t-D=Q{@A&Qk z_LrvjJd9XsP8IO8!LM+sduJKiDvi0FAB$YEfdmPRWMJt`dS5;LIX6u-g&+GbZrfrShr7KKqFKV>~_z;y2-rXCAF^t`#KMeZ2D@)=E z>dY2NeM%GJV5zrPF?uh#L-qF%{6pN2ICZas7fKM$zIWm&%7yYq%@vM_mMsgowaN_~ zo=`(A`HJmg_fe|T?od+dROB!4!+39+WjBuH5Se?5Lfiq)=6yOLM%>?WsFn){54mA_ zyPNTzVi_3nABbrO4(5(EF11CQjkZ1WGk19Jxp=#3S&B;3DZv!k!3;b3Fl|)kZ}&Xk z^sc{-3a-_t<7-LO_RKwU*9$GJ^De2JT99rqIUU^90l2Sghj0-OG2xZ?ncA0K z5iAUHn=7>#rISXT+4;f`0_zaUUocckz)TvI#KYGydfMiHO6p}KC5!^Jzu+?uY~V>* ztv3k~81?37-bXCZlqbmz1H+Gq=D?^6e^7qOrSk)o#@L?Yf_@V!tTDPld`cc)64$mC zi{b<}%e{i}Y%_uJDxdKI)oU=o6AtC%AE*jjJW8VnFji9fiZ;@w9{wdzABYO4^O;EC zm)UB=c(a-#!2SJN%No9ED*2T5=sOPa1e>Ftwp6Ka(C!B@O`9dh%#{bJRkAiR*;l}Z zH4^F^u9M$lEYs#4KdTL8v&PF6K#54gUa2>R~rE6?>nwDQ49ddyUW><2&&Y3b)u!TY`heewO(QL87;!BZ#}K(_ zdV_-Z(+lU)Z5!a*$r@g3wl%Zulp7n^_>E2lB5Gw$X9UA36utlelMVHP>3 z8o65ATkW{ivGq2w_(-P^-TwgJB^F`x^g4KiaaunHDE|Pwto?Jd5H>dL{l*mS&5o)z z+w6DyOX*%ArE$!11;jScnJDgN?86R**r)WY%Lb>WDRWU|C3Le5U(RI=2OY1uly3At z!<`kUa8TXn5VQRf^t>^rw^6SwKwILaHDVf~QL(g*t&h<-Lnu8i7G{Do7&S9Z^i4HN zz)%n(-Hpbs%fB+-SdMCq_bFcSDn52ihk^+lL95RZCb-?CS1{VQ;P&<+^%hqL*`J zX5a@TS6IV{%>7*3E+z~>s(MsG9Y&0|a)@7MW2{$NiEe*_!i?@{syl)(^4&|*6{>@q zN~V030`WKjH+>Lns>YyQ97+mJYE=|W>Sx3N%+-3ZmdTZYPTrU%LPlNSXt zs$!hM$lbizG&{4_A!7_>K4q)XF2c~BwJwUfxmAm{8OdfY(m5ef>|t6$86|6pNPCFZ z?ivQ_SzxCSRg>?z&DdtD<8EZZrFt9F6!jEocl4$6P|yZ_Fq>xFEMT z>IyMJ>SQRZ;^1AT2pGi%vli1AbillKwhLBN&1L$6;XYZCto~-{#X}Tj$M6n+O6q0X z{)xd0w>#O6Jxl0}n2&GJ%d2H>;^?Ci1tl1@XPr!YHcMNi>KH{BZ|W8T@AD`$kxR-$ zHVVh^X>1@P&WMvQSV5%S=QCZexa_hu$4zE}- z`5}dHYb2*buH)a612^B(aSq~M```f&8{xYCZgFAm%#Z_CJv72({>`IH&0_%3uk~>Y zC6CuIvF&pP!O0NS*&JYV1#8do-;e27Z=?WaYCa=(8>!LEgehzEX^>nC7NrPQ3`evO zlovMKWo2V$%L_uJ<|}s&)%6C}^q66QLw5;GRxg~!vzG<~@5?$qmN%@G8Lz~oHTLc? zE^TBCL`)D{=rc+(IH(~Azz&1hBv%?TiHl3>JB1CXc)48j%mlhvQf`@(5wpK_DdBR4 z{-T*IT*-9o;u~H&Sz5w!w2tWCZ%`>u1ys3K4i*6_=E(Sha6+Mn#oQ>qR^8`0g@!}m zh3U6=s+r2LK|^1O=dSpOZwH!=;imrprF93y79TD;V|_#BEd0>Q#R?h~ zl*3}^QfrctMN7^;A)ILiYJ@RCP;TqF&>xsuTZw|i6|5~S$9crCvF(R|w!lVotwlEB z43fOlokF;XTt2H#Wo93mqU4BGH;CTEaJK;+joD zw`^{cQtQtTnajCFSVpg-xsy&e5jUHaO=e>SmUKTcQ?ud}xZTD>w3*Cy)`gqN0tz08ud#%G zO2Jw-&Itgn*ruCi#qI+SG38m0ll)UJeMb@K+u0&11X)mx?;^~!;_>k|x;@IEO!xlk zRV}#p63Rww49W>&m}831wV|B{03{WF@e2c_yHf3MYR~pXjIxl)@d5X65sk5s#jCt- zs#=D<&npLpUhQe?5o{opXM9S%X;oQN-S8fP2hD=Mm{$-ri_b|kKSx5A)rI~dC_kBh4>y5#u%&&i$ z`77}Y*%Z|)2zDO{p?~U-Q^ky?`@8)xh7AnDJ#!b88AijL)CzHU#I_kV&D;^C$@HMG zU(t$*YQ*dOMf8AtO50XP#M8~q1@2vy6RqA2*Qh5Muu&Qf3@Ev}Ev({sylc#UHAi-1 zykncpg>sQfxk=20g%mw%C*9Ep#%4EFaT1r~1wiBqJDlicHJrk(K8@0R2 zVx|cG9}T}zONVOI7vNviejXua{>egtnQHE0_#)CJCPQhuUD4w#wQkxp=(t9_ zSjTs`d3n!GRI9k-m4+2O=T8234APVm;V4)j7={{Yh|t7{O@b17qwa4S#K7S&cY3Zk8WrGDg^Hstf8B&N{VS-Pd&dT57VaSHWS&dRzH6Ct z{{Yq|+n5Zt?yvPO)bka(mg(~v3e6A~{{V9>f7cCdn!subx2RC8YV7)(CZMekoJ?UC zIm|-1-QmX(!uWw#)EL0Vg4ddgV5~5#TZ*bC7AVVkY^YGx7&R;Jso>k0Q!Ag zU!-U^b#;o4N*v8gEk|spixfVwGgD99{-Jjaj_Xw&xjMOvdYM^x4yD3^tMN15Ze%j% zSk->zWz=)^FNegejnVE6RHfV(OwLE|f5n<3)TA1iv^57d(fOY^BVbPAZK;C%HMp%+ z{V_woxNec|B@r(!^#+9{qp_V(*ATn?Bx<)n%1lE^l3(Tw4E1}c1s|p23!guwbttN9 z^dAw0q6A`VheUTo3tz9XBDYjJGk$%cu909>Sq>< zXD`I0NWJG!tI9#$HR26RFCj;WQEM2KF&F(}B)qicrYLXjS+o}K1T1EvAqAtwPR8$Y zqGtrB0}!_ayhOKOa_b;&SRKy-_*~;#C!h$Gdl<^+C{Er2Z^GOa_M2&Qt1hc z#m4lN=54j^A9Bxdz~<(58o9=wn~pA7mQ^HZxT;0&r~6cquK=9(YUx}Hq^DAYY~BSxyJ z@jH8YoF)t%SY_035XgkZo_?`1Sj05GZY>p4$(cz|tIh8+h1aO%>Ry1jng;U+o0Ou9 zxV8QW2xICg`)*mpy*Z8Nl-NHYnP#Z-HrV49Kw7iqhJ2!BQlK~LUDd(#aTMfIS@jzV zTB%vvUSQY6wcDK3roHh1-k{TcN>dH|K%-`55KGp7#H{}Ss4rU7yKQJ8y1O`xNU<~e zS5X2usY4yoQUiYLJA7^dWbup6*_xhdVfXnv;P2?)qMg>1HY^5-nLWE zZmqv|(gvmQg4++BQ>N0B?GHV0U&BNl`u5l!gCWFJYiYV=YGst z{{WtIG_N{&BI!5P%=;xSNGa5+xtP`8y?HiFNm5yzzdlaUf9pSX%pfq=bE%gb_Y5^Y zOn(&X>X~4;lZCQ=Wb?sgQDdL#bZ0Z)9e|i(EpE{}4R|;u#}r%%;c8qJI$GCPTDpO?!EmQb z%zDDg$E@SxrC4!wc+9FhdqqI3ZWPl&)X)=E?p3wi%KrcntP6cXvk%0i4;N1}>8NFs zECncA$Ef9Fd`d$u0TBuA_PZ`)cRe!3S}r*Zss*a(2#&bEya{V28;?1{P?C=$xYQ?0q0{{Y7S0H9;kr|Ab0 zH>S!(Onqb6OU~EKu$TG2%5`0-VAIqLAdc?cZRv1x%C%Cim}xfs$F}K>?kXniQY*+E zWm_#wWpi=pL1%1+pw+Mq;xqaQYau0oZRJ&1UE3XEIibcS_;Rs8H~Ojz2QoG3)?ga@&XI7 zFv3-QmlpBGRS~R0KO6r5Oe#4rg9{;I(G;%4FEGuiWmLp{{a2me=Wlc zB2zNF=Qe)?6Q*00@w`M@@pAdElu($+KF<$3{A-)#Os|b>(3Nr<;g8E3r%HfL=iRuOA!NyHq}kTc}E+b zX>iM*`CtD4y=4?^_AJrO7_a$`$+Mw4#(f||+=*(9LH_`z2b-wk zvEX-~tWv8CmuxEQsBduS$G@4rq_am0GNL5588_FbHz?+`LTmjJ$k7f%A;BoB86v@Q zZ&LAL1PatjF81137Y#z(9T{*&xqK9k#w_2Sj=rHRQ+^9-yI7ZQW^EFU*O=e_pg0RT ziD}3RJxtdT4#Le`b@dXhab(g}z_rWPC5yYScPODgOio%B0Uu$OG)d{F1Q}4DM^!mU{b^ zsD%!322!_XI>hknxP?@;)vzm0D>8;4Pm~#wE~>Jhg-a}x3-nC%54oWd;A9Dg!`e#s z=tO_X#T3KbwN$KX;JGhU{{RgiC)6bVlnF+zBG>2?eaZCEa`kEcAUsbonkVL%bw1Dc z3UTkkwZA097JOag<0o^CQh&45lZW_lQ!V}^5wqx$jWy|j<$=NZGYAL~FA?1_RdL!Q zLV{7(^l8}YU$k$%^ z32$ll2EP*K zOUy6Cqe;Bdsxe0R)VM*1^olL_C@PiQSHvw6mDEd%y+!VlE7|oDx0~t&U|b)gi1b4) zYIBiiF-dO`W)XtwD=n(mm^iJKIVp}3_#w6}QpW|{y;He{BQ!@m6%|UhWvGr}SzCr$ zV8I)7R6G-~nJyK$bs|?)>OIyLDJIkyHpc-|83G^C zr3|z{4j`3eq#BqE0Dxqgl?t^ml`Eafl2w3~xSJ(v;9Nw3L@RL#MDS;0sv(kjei|s{{ZCw!~iG}00IF51q1^C0|5X400000009vYKmr3XGC>3& zAutj%P!l6VVE@_x2mt~C0Y3orN%9^vi9DW9B)Z8Yl1(I%MCl}wNj8jwHF#8tM`U}V zoZ3m5qU@4MB%aA6n(|2`lU{9eG_3Z`WRg)Rku#D>B~=S`o2F)q-{Pya3w4{OW{cSL ztWgWK3w4_$%+Xc|Ac{c*5lA3{DFhIFNTS_l$TKuTw_B}qx`}@TVbX2+vvkMyGY*T` zy=!%wrZ2IWboS4wYi8*)n8l^PHn?}OTdi!}GkSG_e2}fywz->q%hk=UbBqGSnwx%X z-8zko&R@rkBr9%g*@?y(G3VmMpz40yBKEPGck^b zugpev)!XFrPb3lONP;eNwu;}IL}zUky4KCpJ7}%ewusK!D|M~pqDd#dX)c~>wY-W! z;f%KtPw~d5UC&VKmWu4ClLSw0RsdB0RRF60RR91000015fCvz0s|5-AR#hAA~O?1 zP+|Yt00;pC0RcY%=t@p3S{pc!LLh<;CliUpf(|DWiNt~##he+%oL(-PXvUg5VWJHl z5J3bHNFahd83YhTU&_N&(O7hbLm`mp(F}%rA&|(VG8ydlMIXw;LNs2!$tIKGEcQt( z_Io7v;Ui=DSZGFz_AAzE{GZCh(@iy!NhFeMB$G)dl1U_!NAj@rl4!n0ua$bhW#tzRn*2_Nc1?VhLdu+WG7Yp#1;mKvsw=d05l z@!gghri=EW^*dpzZT$^7jCX7`O|PRwYo0^CGqxHLqe4d2nD65hip3(gBP9yvpIRC= ztjE-=G(tZz5QXw>S&sfwfbi89$+c!aH4%lkMn^zt? zwi>lI?mTyFHEx(>5J4U&gV6{`X)3#6s~)_hl4&$_RDvdvSgW=g@k1m-x%oy|UI^4S zg+~YFKQQ#1NPQ9I4B|r}oLK}MPA3(MELx64qxhbWM3PA~mU3n3B>w=+eILD_|Jl_- B-~j*t diff --git a/docs/assets/flight_controller/pixhawk6x/pixhawk_6x_internal_Architecture.png b/docs/assets/flight_controller/pixhawk6x/pixhawk_6x_internal_Architecture.png deleted file mode 100644 index 90bf35d4e7de522368f374aaadca6ad49e9ea173..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 775954 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ð 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

x9`qtcy?XZb3@%wV1@rw zANURTnrYp0BF!5D{&UXCA~DZc@mCl^Ji74?QMzGi5b9p&n8qxzncoddYrUJ?qRO6L z8ZDIYOSx5LGcP0r+zIu<4#z0{eMM3*T(S3n(;x8lcViP4tEY-7Q~i&G4}{51`897Y z_1KM!HEyE|#1hol^QEtvCk}YXZ}gxiV#oUyO0pZmUKH8Y+-L5FJ8i6b-ia;mNqd{V z{lnElRoqfE6}mOOuJu3hAE6gw_xMyf&rsyC9a z>5w?lvb-u{w300Pd}EtD`6zP7_8Ts}XJ}ZmPW_DLltb1=T5EYNFu1+%cH5_;nZ>lT z;#r|f7vXYpQzL5iqEhKCM5V6gMv6PNyC@*wuaXmESz@1HU?c7P>H`5u&87*E^w3P? zcKZcI7G-h>o?%{x*OH|S{X6=KmTIepLdZrrM~)9;oqJD;1jMBqTJjG?h@I|nC$+${s3h`BXgz|NWs9J@39GINIHebD%y zle~_wLlcGn=pg??5LpViw)X2kE=bZOZ+w+ptWuF%#wt#PGXw)y#*AOjQtCmw?ITf& z`CYJZjGvxKI( z*-Lf?4=U8a<=@I^u|SAvE6z*1Kqth=vBu*eJlXn3jyHZ&G7rbX)8WSbVuDW-j$Dm! z*x>A=gff?Y;?>WVbL_%voDGA!CRptajhYI7 zGnmoBV>6^(-HybPyD6V}7jEMO2(aYuPMEhwAT~_$1YoVo;88ER2A4RS3l>(KWZF?W3=s*z7=CBqK0uq1eTUIwRTDBi}c%6b&8IM_9?Xt>{hOUqn6 zhQFOoZuW(IuF^j~FXeEK`hVkD={!XEr&HyB0$SJpNi2}0;C^aX#m}dhOGia8>QBH0 z#fjtj#mub%smfU{8K3N5O;)(Z{@Y`A1+mCq43~LjYg8j%RGaW?k9~HPvrq|IGBXS^ z%V7VLg}Eu>T=N{sf#Nl=m)2Pj-5wDTw6c-_-ICc3z3)6JuGT}EL&a-+l{B*`YYh>w zcsMynCT2oOlN5%kZw21Oc;&klk!=~1Og5)vMF;Z1!WHzpACDf~(A5742XB1SZ-AR_ zh}`_7HbHnHfD-~6-?kR_>J4}yzObtjk2OqE4aI#+$a1 zMG2but0@G`j*GJ`<4Epc;`_j3tT(fyBxTCJ+`W5q_ai5s)YDEMoHrG!9`Smi$&Gku z7aPcuV|B4eMNG=aJ2rsfLn&eXA{gyFPS~LRqct!~fdV2V5NU`hY#GBB-L)Pb3zP{@ z55A<3W-4FFCf_)>zQmZs)|McFy@g+NgbLE@3&RwQsuZ8Hcd7=FAhEb4A_FsX3WafUm zEKc%GMs*vb`P{_kH6?CjmRyH^O7Z(fa%8JajU&lhAo6=P(nQ{sk0h>d*~R_|&-vYr z;k>l_@4lmn)RVh8zhD(^ZcP5%+$B%yKdViab+D+D{Dl4GU#$ImO1N4WhjPAjW_^0m zMsm84UXk2wJNe#2r^qm}$8+_}1AiHQe0th;`~PwKBAt(J4WgK?jy+eOMLX@NBZ_y@ zk7KT`hkqS0$QR_5GYg;aIqf?_NG&qwlH$|=ypOLGhNbUAohOwfN+8RDxdq^dJJf3Qo5GN!abO<6 zxrbVGMW{zJ>E>hVJPI>1lWszfG_dn~?bNI$k2_i-cqy-Us}EElkW>!0WyF-Dkk4IT zVqbo781;guXBMzxN+0Cf!wf!?%F2uydlsyEoYMdjgHs2`tn~@V^8Wk0whwx%JhSfs z9BjL~*>X1UMHK6|%%_}P;xrpUn4^?GCtZ6T)ZDwZc+5pr;j z!YIF+U031w0Uaf|x&8{-Ngh3=o=@D0r(EhwEgF6)qFgXfuyP-+sPazwh?rq$QnTd!$z=$Ka}J?Nh7JN zSB9w*+(7MoSY7{qOQ5-v=?QTsc#Aik_$SNv@Goc(#VIv~t#wGD`09?fuNCP$!*=oy zBO7{Fg*v?qg*)YMuhQJt`ZP!TpR1XiJEtHsMmU`V-sb-Q{Lt<*ER%Yg;|Whc`r}mY zV%<8`5Dl6;?q=HIdKW~c$1%o?btSfmF&A_z%ijhda|+n2F-Nhe+K50#8V9Gsnr1KT z%xYg66gt+?4?AqVZ$->l?k|js2v_yK8s|MtvVWG=}Mp+@E!7Z8WZT*V!f8gjd5A z<_k@p(pHq2B7d?LaYmE11M1_s6}WEZ251OtRaLs}pGf;=PL)bq2OsH%j$QphrtYpe zjwVtS#?YE_y%vTW8yJ*LcZA)T=oQv-EEyeu2VIj6G#>JDm&>TMV$JdhU@R!slLf$p8P>Q@2zsOvnwhOn_?@Zh38L4 zhxXJr%>bHSD?$UFBSlxr=RthCoGlZAC3GdY4T^&j&I-SCQ8md-ult;C9$=Ml#MqVAPTtr)d~ zSC`5emd37}H$wd?HYpN<{EE3LDb_mY=!;XE_ayUW2xIbKg*Y|(tlBFPVVdJ2g^Rb8 z=eKHSr{0Kfyx4Tr;hgn3C_^o2erJiM=gBNT{$Phc93H?5Fv<@0%OAYrc%VO6+|VQb zRdQ@}oU8K0vD)nnQSTZZ%|(z(lRo03ehs*9gd{bw!^tah2KxqY9P#Z5m~TcV2}ww1 zxA=R*#d}7@@lzb-r|uu%?1PfEdMFkz?H7SH0qzNa(yK#HaR)DDoW~~*jm*80>`As5 z6SPM}mL3$y|*ZIi4=K5{9WC~DivKdGap1o1e zK$dG-w<$JNERO|MAgC0{ONu0LkEDw^Uo(O=`e*V?J2D&GdsIc|>CgFW5RXU$Uu6d< zT8r>(C5^ei`vahJ&m)`y_s3a}LzR8Y1tj#F_z|cu!Gk@S*$INJY&g(2_ySKf*r^z} z?eD&D{N^M(c(JZm8tyhxRy5OL3gRe4^m-orS~Q?{j?gpJ+HzsiGF6Je3GDgb50dEE zX+LQ`aXxQeXC1Wbsa`m&TgpJ}1-1$N>-p=eeH-wS?adU=AEn&jCWCLJAixXWnApdP zizn}tZY`c)UmN(U)b@{=dgnck_V3GAkz$uM=7L_sxO0LMlz%~CPQYF_;3HW~EbkY; z1yuc&y>!*TTHue@m9Wh=26ksOU*INWuRf^h#<68D!X;_05`&$NUKg6_TqT^Lqe-m8 zQEO-w{r23PvR(oJA^@3u>)=nM*K=&-LQTz&8(}%x7warr-V(Ng;ar|0wp)9hS(VNB z*{9he5PEM;S2=FqgVnK#ddp6~?b*^e%1!b<&N`W!EX*vTj@pnOiu{nM-sJJT=@Jjh zR*=yfG9E5WE*Y%m+e6!vN|u$C4+`%7nKRQKr78L~-3{!6H1ppXEqKoNN7&?fL`f-O zw{OlI`8FRe40>-&EjayghC)j`|GJk|y8bZ#Qp<+5!{i;$Wed{#6SL9)@oH?6(e$T&5T|i9S2GBtX#b0YF=}+`qe!2%dGxL3 zaOO2!zG0)?+ z=e-OKYDBT4usm_2{$k#Yi@B-Nx znFn+sD#Lv*eJf+eFKOkpNjp9M^Y9xNGo?K-Y84ph&xS^2pr%V-y@c9}J&y2Kemm00 zrZx58^8H+9JV-@hTH0^eIV;BXFA6<*c6__jsj5UU#Dtt8_s6v4ep#b zph7jy&O*+R7#2iX|h7r3SEmmBh!OQ z34ai!r*ov5=iko)uT|Sg(DWoVEH)v$@{hk1Zv-*8Aj!Qxh}HX2TI&?*p;(1{B7lKo zEJe#-#P-P=g_+xn){ffMUSDG!EUE;!P6`0V#iE5+0XJXyc5Zaqm@GYRv zSh2CM^2`=AP=x(Df;!xJ@-btyj=gxFi}bkwCLJX*FpX|N_4}{tBgkQi`t3BbLv?~X z36WCm8H~OINbNiC7sJo=W_Cs9CdL zjaZUOjpvqi2FvhQ5X@}Jt=hJFZS~Q>rwdNv>C9A?oFE(v32ut~zd&*-x>a}+(7E#n zxMOc;2_vmRxzd5sJS=DTNC2E(;^Ui9s{3%z^G8yMbIzG3Uw-4yAD-vU?yc3|HREO( zVvn?~sarJRlwm`-BZq`V@8(&8Ex;mJQ@So-J0R}JbkA5Y6jV=jMxdk$Nb-W%k`owR zT&Nu#97}7j-$li99a@#FL&wl=)IC^j3GBRXT#%n*>G_dL&DINU-{0abhl|qf;$F?w zY?5WV8?P}_p(+QuPIFFVF@AAbwIp~E0}IdvBgb4TlIY+Gz6@bt2!S&I{9oQL$TS#e(K=>K%LgrfGVL*=i-ML_KNPHgi*=HKBug~{%E$3;fT#Dq4(Iz1 zkz*;8`WuWlqZFhGRB;7?{Ez7dt^7CP=`CQ@+E3!8S-_!y7lBZn=m+CsDczPOoWJck zFfJc!Mw0wi&QaZqk7okF?2|!^?d7W338v_g&aHCFXdww?-zwk`y4a1MD5%XtA5OPy zu)$9ft3XA=M5-GKZY1V<_i^ujVwz%C-xU`7;Ir2s%ReiDgSZ_9uuewntD&+hoHm5% zYXCaxU0qgu#y%H$;(>-(wG?u5xx&BoydF;yJB;(s#`aVB5Q0B4sD%Y~@z||(i%brV zWE#Ai-m`?aY8AkKzU3jU$^Ivk_cs?nOA! z>zo)@2g^BxVi~;0|9aw5DFVi6sN}AgeILJaAEH?iJ5Y6XVj(tJmCZ>y>r@6@TKzD& zE!5$|6qEG|JR~fCpV+{g>*ywjnTwV{!p;pM^-4&o7AU@XX9j1%X7XlgASs{W<+$v< zQc)vueV}b=a*BlchKyE(1l%J@zmA2>WAet7G8dO7BjDa31HsZLx%dk%Pna|od%x2N z0bI9UOZTm^?#2#}c1(t{U-`?rV0@fA!CdWNzys(ZJ+yw?{Qinq@h6~6tOiJ|8Pa2l z6o-DT1hE0ddm9oNz|;X$7k=ihEANKtEeW_&KiVUH3*@u)~&lVD)^mKv%a+cu*7?AwXz9WA|U=7YbGPyYfsJ4K^D2vD~df#9g&a zitz;eI$TKKVZ|=`jecN6k|J^%8~{bT0V%Q>_+qJezx0G};Kq*Ho2@XP3axob8K>^a z^jL3z>=9HC?t@p)=vID3Xoxq?LK3YQ#f(Lhq>!)1=9X17SqH&}Q&%uM_|d7BW3gHm zttINQfkKpyZGm*pZeVk{x;!qwP^`RgSMgUR+^K_hu{K%0DN+PPon6=OHRYsUhFb7H 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≤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%0ALdb~AI1nXD}{(v>_GdsXIVB5CL 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�T_QdN$=Npt}y1UOYI>HRH#1#SQ3E38ExzCg6u%wHkgJJ#&#eKTX z9f}A)APp#|K5kh1J*eLNz;l1K5tA|FJX=XdBxJIA$@*~6_uocBKu$kLpoZVcdm}nN z$|kaOi_|7l_P^Qp(ms()PuuTrIt72X5l7mhV*0$tu(SGx1v^n|YKlhqtuj=&KPXil ze#F8$$3R{c5gR?!1Tz{Z$&RH)vmLy zNyjk%@K{0-X@DN$k-?vdBYnwG@`w$tKSah6cS$mtu#PKrZWMpjJ=$*&%iT5Rzh_c= zYL>dCtx$FD)Hd&1fU;};>vnT%R}7lBO2B;4EGm1cBTS{J_$nEL=?Z~34Gh->p{^;8 z>S}fr(fl(Z>n~iw^cCEqt~p3&dMM@RJ1+t$kj2l+@9zht@214F6<=8P`h8wDhg$g9 zuztCk8rZpBKcmf}GCwkxMr<|NHKY_^x7J9JxtJ7K;FlfMkZee=nM~-HFHc|!h; zyxhK)!wCuN_slYtn3;3WffHE!&4JOqzcKcZRIf347^b^Z^eI>#ix7URa5nFOX@HSb zwQk0N;9XGd;y21T+NuRL$3DpM(vDm(DF$NQcBUn-f_Wyv#eA(-)9+?~a_|DkrQg)6J}6XGdPQ}yXC=CY{$uDCLJ zJ2eyD3HWC^x0n+6i1$XD0Pj*#y_@(({Pe$W%WUCtyl64cXcvbzDfhoSEX&N25fV@q zx^aMTQixpjgyg`#oMgo|uu7p{+lPkeJ)hEcp&aoRp$qmVQ4J^h*MoHMj#8Q>uJ?{G zhzO2@)APSALB1swqpV{Xn{{FGqk?1mE4FWW^?`R-wd6S^?rqjCC2J*amp>&W<}r_q zTlDfn38CV$yM!f!6d-l_p&_Cig-0U)oPw+D2Ty*x?miKua^Q;Sp zvxU>k{?_W*@k9J2_hGImXSk|U#??L}z*Rs9DLv2@_DZI*pjPJR`rJNnYG-!NMAI5q zZ;T;ov_)&e__fGE`S?DJAFOG16aEu_fs_tDUPHV8;UEq|{*H9(C^w#@5~%;`ZO@dz zK4r?{MKkOES1wE(Fgw8tE7K7#bMA95%(HK&R(9DQjkk!=@Qargw@PFIgx|n$TN1uH?Z17?m1IMF`$7dDtLq5Gec)CFR&0o=%;X*Ff0OybA3#w(UJ zk9xm&=xh~244(O%@FoBG3xnq;XOee8zgdTt>HB@$#%f6bML^9(CYSh}xh1z;kIR}q z=*;9S%Qw8sp(d^WX2eloGTvurb7XgUpV;@XDxrv3j{&8qfxZX-*(zKi5b5;_X5;j4 zofX)vs znN~x~59)K{dw0*{5a-uCe{WuI*lET6pYbVN*i1MB>rc$l!ETJrFT-;aCRaHFk0C4Hwn z>bRwU-WmcQ�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�hVaj@x3Z|PQH8hM1SXpyhDXBrN)Dc~== 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辬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 z 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

8qH)b4zDy5p-voFKNrTh=LTkNwv9 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


gN{IqlKKi<~2xbIu=s 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 0m) +Spoiler landing setting. Reboot | minValue | maxValue | increment | default | unit --- | --- | --- | --- | --- | --- -  | 0.0 | | 1 | 0.5 | m +  | 0.0 | 1.0 | 0.01 | 0. | norm -### FW_WING_SPAN (`FLOAT`) {#FW_WING_SPAN} +## FW Auto Takeoff -The aircraft's wing span (length from tip to tip). +### FW_FLAPS_TO_SCL (`FLOAT`) {#FW_FLAPS_TO_SCL} -This is used for limiting the roll setpoint near the ground. (if multiple wings, take the longest span) +Flaps setting during take-off. + +Sets a fraction of full flaps during take-off. Also applies to flaperons if enabled in the mixer/allocation. Reboot | minValue | maxValue | increment | default | unit --- | --- | --- | --- | --- | --- -  | 0.1 | | 0.1 | 3.0 | m - -## FW Launch detection +  | 0.0 | 1.0 | 0.01 | 0.0 | norm ### FW_LAUN_AC_T (`FLOAT`) {#FW_LAUN_AC_T} @@ -17600,6 +17598,374 @@ Reboot | minValue | maxValue | increment | default | unit --- | --- | --- | --- | --- | ---   | 0.0 | 10.0 | 0.5 | 0.0 | s +### FW_TKO_AIRSPD (`FLOAT`) {#FW_TKO_AIRSPD} + +Takeoff Airspeed. + +The calibrated airspeed setpoint during the takeoff climbout. If set <= 0, FW_AIRSPD_MIN will be set by default. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | -1.0 | | 0.1 | -1.0 | m/s + +### FW_TKO_PITCH_MIN (`FLOAT`) {#FW_TKO_PITCH_MIN} + +Minimum pitch during takeoff. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | -5.0 | 30.0 | 0.5 | 10.0 | deg + +## FW General + +### FW_GPSF_LT (`INT32`) {#FW_GPSF_LT} + +GPS failure loiter time. + +The time the system should do open loop loiter and wait for GPS recovery before it starts descending. Set to 0 to disable. Roll angle is set to FW_GPSF_R. Does only apply for fixed-wing vehicles or VTOLs with NAV_FORCE_VT set to 0. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0 | 3600 | | 30 | s + +### FW_GPSF_R (`FLOAT`) {#FW_GPSF_R} + +GPS failure fixed roll angle. + +Roll angle in GPS failure loiter mode. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.0 | 30.0 | 0.5 | 15.0 | deg + +### FW_POS_STK_CONF (`INT32`) {#FW_POS_STK_CONF} + +Custom stick configuration. + +Applies in manual Position and Altitude flight modes. + +**Bitmask:** + +- `0`: Alternative stick configuration (height rate on throttle stick, airspeed on pitch stick) +- `1`: Enable airspeed setpoint via sticks in altitude and position flight mode + + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0 | 3 | | 2 | + +### FW_P_LIM_MAX (`FLOAT`) {#FW_P_LIM_MAX} + +Maximum pitch angle setpoint. + +Applies in any altitude controlled flight mode. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.0 | 60.0 | 0.5 | 30.0 | deg + +### FW_P_LIM_MIN (`FLOAT`) {#FW_P_LIM_MIN} + +Minimum pitch angle setpoint. + +Applies in any altitude controlled flight mode. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | -60.0 | 0.0 | 0.5 | -30.0 | deg + +### FW_R_LIM (`FLOAT`) {#FW_R_LIM} + +Maximum roll angle setpoint. + +Applies in any altitude controlled flight mode. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 35.0 | 65.0 | 0.5 | 50.0 | deg + +### FW_THR_IDLE (`FLOAT`) {#FW_THR_IDLE} + +Idle throttle. + +This is the minimum throttle while on the ground ("landed") in auto modes. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.0 | 0.4 | 0.01 | 0.0 | norm + +### FW_THR_MAX (`FLOAT`) {#FW_THR_MAX} + +Throttle limit max. + +Applies in any altitude controlled flight mode. Should be set accordingly to achieve FW_T_CLMB_MAX. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.0 | 1.0 | 0.01 | 1.0 | norm + +### FW_THR_MIN (`FLOAT`) {#FW_THR_MIN} + +Throttle limit min. + +Applies in any altitude controlled flight mode. Usually set to 0 but can be increased to prevent the motor from stopping when descending, which can increase achievable descent rates. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.0 | 1.0 | 0.01 | 0.0 | norm + +### FW_T_CLMB_R_SP (`FLOAT`) {#FW_T_CLMB_R_SP} + +Default target climbrate. + +In auto modes: default climb rate output by controller to achieve altitude setpoints. In manual modes: maximum climb rate setpoint. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.5 | 15 | 0.01 | 3.0 | m/s + +### FW_T_SINK_R_SP (`FLOAT`) {#FW_T_SINK_R_SP} + +Default target sinkrate. + +In auto modes: default sink rate output by controller to achieve altitude setpoints. In manual modes: maximum sink rate setpoint. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.5 | 15 | 0.01 | 2.0 | m/s + +### FW_T_SPDWEIGHT (`FLOAT`) {#FW_T_SPDWEIGHT} + +Speed <--> Altitude weight. + +Adjusts the amount of weighting that the pitch control applies to speed vs height errors. 0 -> control height only 2 -> control speed only (gliders) + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.0 | 2.0 | 1.0 | 1.0 | + +### FW_WING_HEIGHT (`FLOAT`) {#FW_WING_HEIGHT} + +Height (AGL) of the wings when the aircraft is on the ground. + +This is used to constrain a minimum altitude below which we keep wings level to avoid wing tip strike. It's safer to give a slight margin here (> 0m) + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.0 | | 1 | 0.5 | m + +### FW_WING_SPAN (`FLOAT`) {#FW_WING_SPAN} + +The aircraft's wing span (length from tip to tip). + +This is used for limiting the roll setpoint near the ground. (if multiple wings, take the longest span) + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.1 | | 0.1 | 3.0 | m + +## FW Lateral Control + +### FW_PN_R_SLEW_MAX (`FLOAT`) {#FW_PN_R_SLEW_MAX} + +Path navigation roll slew rate limit. + +Maximum change in roll angle setpoint per second. Applied in all Auto modes, plus manual Position & Altitude modes. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0 | | 1 | 90.0 | deg/s + +## FW Longitudinal Control + +### FW_GND_SPD_MIN (`FLOAT`) {#FW_GND_SPD_MIN} + +Minimum groundspeed. + +The controller will increase the commanded airspeed to maintain this minimum groundspeed to the next waypoint. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.0 | 40 | 0.5 | 5.0 | m/s + +### FW_THR_SLEW_MAX (`FLOAT`) {#FW_THR_SLEW_MAX} + +Throttle max slew rate. + +Maximum slew rate for the commanded throttle + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.0 | 1.0 | 0.01 | 0.0 | + +### FW_T_ALT_TC (`FLOAT`) {#FW_T_ALT_TC} + +Altitude error time constant. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 2.0 | | 0.5 | 5.0 | + +### FW_T_F_ALT_ERR (`FLOAT`) {#FW_T_F_ALT_ERR} + +Fast descend: minimum altitude error. + +Minimum altitude error needed to descend with max airspeed and minimal throttle. A negative value disables fast descend. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | -1.0 | | | -1.0 | + +### FW_T_HRATE_FF (`FLOAT`) {#FW_T_HRATE_FF} + +Height rate feed forward. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.0 | 1.0 | 0.05 | 0.3 | + +### FW_T_I_GAIN_PIT (`FLOAT`) {#FW_T_I_GAIN_PIT} + +Integrator gain pitch. + +Increase it to trim out speed and height offsets faster, with the downside of possible overshoots and oscillations. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.0 | 2.0 | 0.05 | 0.1 | + +### FW_T_PTCH_DAMP (`FLOAT`) {#FW_T_PTCH_DAMP} + +Pitch damping gain. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.0 | 2.0 | 0.1 | 0.1 | + +### FW_T_RLL2THR (`FLOAT`) {#FW_T_RLL2THR} + +Roll -> Throttle feedforward. + +Is used to compensate for the additional drag created by turning. Increase this gain if the aircraft initially loses energy in turns and reduce if the aircraft initially gains energy in turns. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.0 | 20.0 | 0.5 | 15.0 | + +### FW_T_SEB_R_FF (`FLOAT`) {#FW_T_SEB_R_FF} + +Specific total energy balance rate feedforward gain. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.5 | 3 | 0.01 | 1.0 | + +### FW_T_SINK_MAX (`FLOAT`) {#FW_T_SINK_MAX} + +Maximum descent rate. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 1.0 | 15.0 | 0.5 | 5.0 | m/s + +### FW_T_SPD_DEV_STD (`FLOAT`) {#FW_T_SPD_DEV_STD} + +Airspeed rate measurement standard deviation. + +For the airspeed filter in TECS. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.01 | 10.0 | 0.1 | 0.2 | m/s^2 + +### FW_T_SPD_PRC_STD (`FLOAT`) {#FW_T_SPD_PRC_STD} + +Process noise standard deviation for the airspeed rate. + +This is defining the noise in the airspeed rate for the constant airspeed rate model of the TECS airspeed filter. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.01 | 10.0 | 0.1 | 0.2 | m/s^2 + +### FW_T_SPD_STD (`FLOAT`) {#FW_T_SPD_STD} + +Airspeed measurement standard deviation. + +For the airspeed filter in TECS. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.01 | 10.0 | 0.1 | 0.07 | m/s + +### FW_T_STE_R_TC (`FLOAT`) {#FW_T_STE_R_TC} + +Specific total energy rate first order filter time constant. + +This filter is applied to the specific total energy rate used for throttle damping. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.0 | 2 | 0.01 | 0.4 | + +### FW_T_TAS_TC (`FLOAT`) {#FW_T_TAS_TC} + +True airspeed error time constant. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 2.0 | | 0.5 | 5.0 | + +### FW_T_THR_DAMPING (`FLOAT`) {#FW_T_THR_DAMPING} + +Throttle damping factor. + +This is the damping gain for the throttle demand loop. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.0 | 1.0 | 0.01 | 0.05 | + +### FW_T_THR_INTEG (`FLOAT`) {#FW_T_THR_INTEG} + +Integrator gain throttle. + +Increase it to trim out speed and height offsets faster, with the downside of possible overshoots and oscillations. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.0 | 1.0 | 0.005 | 0.02 | + +### FW_T_THR_LOW_HGT (`FLOAT`) {#FW_T_THR_LOW_HGT} + +Low-height threshold for tighter altitude tracking. + +Height above ground threshold below which tighter altitude tracking gets enabled (see FW_LND_THRTC_SC). Below this height, TECS smoothly (1 sec / sec) transitions the altitude tracking time constant from FW_T_ALT_TC to FW_LND_THRTC_SC*FW_T_ALT_TC. -1 to disable. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | -1 | | 1 | -1. | m + +### FW_T_VERT_ACC (`FLOAT`) {#FW_T_VERT_ACC} + +Maximum vertical acceleration. + +This is the maximum vertical acceleration either up or down that the controller will use to correct speed or height errors. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 1.0 | 10.0 | 0.5 | 7.0 | m/s^2 + +### FW_WIND_ARSP_SC (`FLOAT`) {#FW_WIND_ARSP_SC} + +Wind-based airspeed scaling factor. + +Multiplying this factor with the current absolute wind estimate gives the airspeed offset added to the minimum airspeed setpoint limit. This helps to make the system more robust against disturbances (turbulence) in high wind. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0 | | 0.01 | 0. | + ## FW NPFG Control ### NPFG_DAMPING (`FLOAT`) {#NPFG_DAMPING} @@ -17612,24 +17978,6 @@ Reboot | minValue | maxValue | increment | default | unit --- | --- | --- | --- | --- | ---   | 0.10 | 1.00 | 0.01 | 0.7 | -### NPFG_EN_MIN_GSP (`INT32`) {#NPFG_EN_MIN_GSP} - -Enable minimum forward ground speed maintaining excess wind handling logic. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | | | | Enabled (1) | - -### NPFG_GSP_MAX_TK (`FLOAT`) {#NPFG_GSP_MAX_TK} - -Maximum, minimum forward ground speed for track keeping in excess wind. - -The maximum value of the minimum forward ground speed that may be commanded by the track keeping excess wind handling logic. Commanded in full at the normalized track error fraction of the track error boundary and reduced to zero on track. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.0 | 10.0 | 0.5 | 5.0 | m/s - ### NPFG_LB_PERIOD (`INT32`) {#NPFG_LB_PERIOD} Enable automatic lower bound on the NPFG period. @@ -17680,14 +18028,6 @@ Reboot | minValue | maxValue | increment | default | unit --- | --- | --- | --- | --- | ---   | 0.1 | 1.0 | 0.01 | 0.32 | -### NPFG_TRACK_KEEP (`INT32`) {#NPFG_TRACK_KEEP} - -Enable track keeping excess wind handling logic. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | | | | Enabled (1) | - ### NPFG_UB_PERIOD (`INT32`) {#NPFG_UB_PERIOD} Enable automatic upper bound on the NPFG period. @@ -17698,64 +18038,18 @@ Reboot | minValue | maxValue | increment | default | unit --- | --- | --- | --- | --- | ---   | | | | Enabled (1) | -### NPFG_WIND_REG (`INT32`) {#NPFG_WIND_REG} - -Enable wind excess regulation. - -Disabling this parameter further disables all other airspeed incrementation options. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | | | | Enabled (1) | - -## FW Path Control - -### FW_PN_R_SLEW_MAX (`FLOAT`) {#FW_PN_R_SLEW_MAX} - -Path navigation roll slew rate limit. - -Maximum change in roll angle setpoint per second. Applied in all Auto modes, plus manual Position & Altitude modes. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0 | | 1 | 90.0 | deg/s - -### FW_POS_STK_CONF (`INT32`) {#FW_POS_STK_CONF} - -Custom stick configuration. - -Applies in manual Position and Altitude flight modes. - -**Bitmask:** - -- `0`: Alternative stick configuration (height rate on throttle stick, airspeed on pitch stick) -- `1`: Enable airspeed setpoint via sticks in altitude and position flight mode - - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0 | 3 | | 2 | - -### FW_R_LIM (`FLOAT`) {#FW_R_LIM} - -Maximum roll angle setpoint. - -Applies in any altitude controlled flight mode. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 35.0 | 65.0 | 0.5 | 50.0 | deg - -### FW_TKO_PITCH_MIN (`FLOAT`) {#FW_TKO_PITCH_MIN} - -Minimum pitch during takeoff. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | -5.0 | 30.0 | 0.5 | 10.0 | deg - ## FW Performance +### FW_AIRSPD_FLP_SC (`FLOAT`) {#FW_AIRSPD_FLP_SC} + +Airspeed scale with full flaps. + +Factor applied to the minimum and stall airspeed when flaps are fully deployed. + +Reboot | minValue | maxValue | increment | default | unit +--- | --- | --- | --- | --- | --- +  | 0.5 | 1 | 0.01 | 1. | + ### FW_AIRSPD_MAX (`FLOAT`) {#FW_AIRSPD_MAX} Maximum Airspeed (CAS). @@ -17992,26 +18286,6 @@ Reboot | minValue | maxValue | increment | default | unit --- | --- | --- | --- | --- | ---   | -0.5 | 0.5 | 0.01 | 0.0 | -### FW_FLAPS_LND_SCL (`FLOAT`) {#FW_FLAPS_LND_SCL} - -Flaps setting during landing. - -Sets a fraction of full flaps during landing. Also applies to flaperons if enabled in the mixer/allocation. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.0 | 1.0 | 0.01 | 1.0 | norm - -### FW_FLAPS_TO_SCL (`FLOAT`) {#FW_FLAPS_TO_SCL} - -Flaps setting during take-off. - -Sets a fraction of full flaps during take-off. Also applies to flaperons if enabled in the mixer/allocation. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.0 | 1.0 | 0.01 | 0.0 | norm - ### FW_MAN_P_SC (`FLOAT`) {#FW_MAN_P_SC} Manual pitch scale. @@ -18207,286 +18481,6 @@ Reboot | minValue | maxValue | increment | default | unit --- | --- | --- | --- | --- | ---   | 0.0 | 10 | 0.005 | 0.05 | %/rad/s -## FW TECS - -### FW_GND_SPD_MIN (`FLOAT`) {#FW_GND_SPD_MIN} - -Minimum groundspeed. - -The controller will increase the commanded airspeed to maintain this minimum groundspeed to the next waypoint. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.0 | 40 | 0.5 | 5.0 | m/s - -### FW_P_LIM_MAX (`FLOAT`) {#FW_P_LIM_MAX} - -Maximum pitch angle setpoint. - -Applies in any altitude controlled flight mode. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.0 | 60.0 | 0.5 | 30.0 | deg - -### FW_P_LIM_MIN (`FLOAT`) {#FW_P_LIM_MIN} - -Minimum pitch angle setpoint. - -Applies in any altitude controlled flight mode. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | -60.0 | 0.0 | 0.5 | -30.0 | deg - -### FW_THR_IDLE (`FLOAT`) {#FW_THR_IDLE} - -Idle throttle. - -This is the minimum throttle while on the ground ("landed") in auto modes. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.0 | 0.4 | 0.01 | 0.0 | norm - -### FW_THR_MAX (`FLOAT`) {#FW_THR_MAX} - -Throttle limit max. - -Applies in any altitude controlled flight mode. Should be set accordingly to achieve FW_T_CLMB_MAX. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.0 | 1.0 | 0.01 | 1.0 | norm - -### FW_THR_MIN (`FLOAT`) {#FW_THR_MIN} - -Throttle limit min. - -Applies in any altitude controlled flight mode. Usually set to 0 but can be increased to prevent the motor from stopping when descending, which can increase achievable descent rates. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.0 | 1.0 | 0.01 | 0.0 | norm - -### FW_THR_SLEW_MAX (`FLOAT`) {#FW_THR_SLEW_MAX} - -Throttle max slew rate. - -Maximum slew rate for the commanded throttle - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.0 | 1.0 | 0.01 | 0.0 | - -### FW_TKO_AIRSPD (`FLOAT`) {#FW_TKO_AIRSPD} - -Takeoff Airspeed. - -The calibrated airspeed setpoint during the takeoff climbout. If set <= 0, FW_AIRSPD_MIN will be set by default. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | -1.0 | | 0.1 | -1.0 | m/s - -### FW_T_ALT_TC (`FLOAT`) {#FW_T_ALT_TC} - -Altitude error time constant. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 2.0 | | 0.5 | 5.0 | - -### FW_T_CLMB_R_SP (`FLOAT`) {#FW_T_CLMB_R_SP} - -Default target climbrate. - -In auto modes: default climb rate output by controller to achieve altitude setpoints. In manual modes: maximum climb rate setpoint. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.5 | 15 | 0.01 | 3.0 | m/s - -### FW_T_F_ALT_ERR (`FLOAT`) {#FW_T_F_ALT_ERR} - -Fast descend: minimum altitude error. - -Minimum altitude error needed to descend with max airspeed and minimal throttle. A negative value disables fast descend. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | -1.0 | | | -1.0 | - -### FW_T_HRATE_FF (`FLOAT`) {#FW_T_HRATE_FF} - -Height rate feed forward. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.0 | 1.0 | 0.05 | 0.3 | - -### FW_T_I_GAIN_PIT (`FLOAT`) {#FW_T_I_GAIN_PIT} - -Integrator gain pitch. - -Increase it to trim out speed and height offsets faster, with the downside of possible overshoots and oscillations. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.0 | 2.0 | 0.05 | 0.1 | - -### FW_T_PTCH_DAMP (`FLOAT`) {#FW_T_PTCH_DAMP} - -Pitch damping gain. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.0 | 2.0 | 0.1 | 0.1 | - -### FW_T_RLL2THR (`FLOAT`) {#FW_T_RLL2THR} - -Roll -> Throttle feedforward. - -Is used to compensate for the additional drag created by turning. Increase this gain if the aircraft initially loses energy in turns and reduce if the aircraft initially gains energy in turns. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.0 | 20.0 | 0.5 | 15.0 | - -### FW_T_SEB_R_FF (`FLOAT`) {#FW_T_SEB_R_FF} - -Specific total energy balance rate feedforward gain. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.5 | 3 | 0.01 | 1.0 | - -### FW_T_SINK_MAX (`FLOAT`) {#FW_T_SINK_MAX} - -Maximum descent rate. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 1.0 | 15.0 | 0.5 | 5.0 | m/s - -### FW_T_SINK_R_SP (`FLOAT`) {#FW_T_SINK_R_SP} - -Default target sinkrate. - -In auto modes: default sink rate output by controller to achieve altitude setpoints. In manual modes: maximum sink rate setpoint. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.5 | 15 | 0.01 | 2.0 | m/s - -### FW_T_SPDWEIGHT (`FLOAT`) {#FW_T_SPDWEIGHT} - -Speed <--> Altitude weight. - -Adjusts the amount of weighting that the pitch control applies to speed vs height errors. 0 -> control height only 2 -> control speed only (gliders) - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.0 | 2.0 | 1.0 | 1.0 | - -### FW_T_SPD_DEV_STD (`FLOAT`) {#FW_T_SPD_DEV_STD} - -Airspeed rate measurement standard deviation. - -For the airspeed filter in TECS. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.01 | 10.0 | 0.1 | 0.2 | m/s^2 - -### FW_T_SPD_PRC_STD (`FLOAT`) {#FW_T_SPD_PRC_STD} - -Process noise standard deviation for the airspeed rate. - -This is defining the noise in the airspeed rate for the constant airspeed rate model of the TECS airspeed filter. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.01 | 10.0 | 0.1 | 0.2 | m/s^2 - -### FW_T_SPD_STD (`FLOAT`) {#FW_T_SPD_STD} - -Airspeed measurement standard deviation. - -For the airspeed filter in TECS. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.01 | 10.0 | 0.1 | 0.07 | m/s - -### FW_T_STE_R_TC (`FLOAT`) {#FW_T_STE_R_TC} - -Specific total energy rate first order filter time constant. - -This filter is applied to the specific total energy rate used for throttle damping. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.0 | 2 | 0.01 | 0.4 | - -### FW_T_TAS_TC (`FLOAT`) {#FW_T_TAS_TC} - -True airspeed error time constant. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 2.0 | | 0.5 | 5.0 | - -### FW_T_THR_DAMPING (`FLOAT`) {#FW_T_THR_DAMPING} - -Throttle damping factor. - -This is the damping gain for the throttle demand loop. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.0 | 1.0 | 0.01 | 0.05 | - -### FW_T_THR_INTEG (`FLOAT`) {#FW_T_THR_INTEG} - -Integrator gain throttle. - -Increase it to trim out speed and height offsets faster, with the downside of possible overshoots and oscillations. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.0 | 1.0 | 0.005 | 0.02 | - -### FW_T_THR_LOW_HGT (`FLOAT`) {#FW_T_THR_LOW_HGT} - -Low-height threshold for tighter altitude tracking. - -Height above ground threshold below which tighter altitude tracking gets enabled (see FW_LND_THRTC_SC). Below this height, TECS smoothly (1 sec / sec) transitions the altitude tracking time constant from FW_T_ALT_TC to FW_LND_THRTC_SC*FW_T_ALT_TC. -1 to disable. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | -1 | | 1 | -1. | m - -### FW_T_VERT_ACC (`FLOAT`) {#FW_T_VERT_ACC} - -Maximum vertical acceleration. - -This is the maximum vertical acceleration either up or down that the controller will use to correct speed or height errors. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 1.0 | 10.0 | 0.5 | 7.0 | m/s^2 - -### FW_WIND_ARSP_SC (`FLOAT`) {#FW_WIND_ARSP_SC} - -Wind-based airspeed scaling factor. - -Multiplying this factor with the current absolute wind estimate gives the airspeed offset added to the minimum airspeed setpoint limit. This helps to make the system more robust against disturbances (turbulence) in high wind. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0 | | 0.01 | 0. | - ## Failure Detector ### FD_ACT_EN (`INT32`) {#FD_ACT_EN} @@ -23288,26 +23282,6 @@ Reboot | minValue | maxValue | increment | default | unit ## Mission -### FW_GPSF_LT (`INT32`) {#FW_GPSF_LT} - -GPS failure loiter time. - -The time the system should do open loop loiter and wait for GPS recovery before it starts descending. Set to 0 to disable. Roll angle is set to FW_GPSF_R. Does only apply for fixed-wing vehicles or VTOLs with NAV_FORCE_VT set to 0. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0 | 3600 | | 30 | s - -### FW_GPSF_R (`FLOAT`) {#FW_GPSF_R} - -GPS failure fixed roll angle. - -Roll angle in GPS failure loiter mode. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0.0 | 30.0 | 0.5 | 15.0 | deg - ### MIS_COMMAND_TOUT (`FLOAT`) {#MIS_COMMAND_TOUT} Timeout to allow the payload to execute the mission command. @@ -23957,7 +23931,7 @@ Limits the acceleration of the yaw setpoint to avoid large control output and mi Reboot | minValue | maxValue | increment | default | unit --- | --- | --- | --- | --- | --- -  | 5 | 360 | 5 | 60. | deg/s^2 +  | 5 | 360 | 5 | 20. | deg/s^2 ### MPC_YAWRAUTO_MAX (`FLOAT`) {#MPC_YAWRAUTO_MAX} @@ -23967,7 +23941,7 @@ Limits the rate of change of the yaw setpoint to avoid large control output and Reboot | minValue | maxValue | increment | default | unit --- | --- | --- | --- | --- | --- -  | 5 | 360 | 5 | 45. | deg/s +  | 5 | 360 | 5 | 60. | deg/s ## Multicopter Position Control @@ -28072,38 +28046,14 @@ Reboot | minValue | maxValue | increment | default | unit ## Runway Takeoff -### RWTO_HDG (`INT32`) {#RWTO_HDG} - -Specifies which heading should be held during the runway takeoff ground roll. - -0: airframe heading when takeoff is initiated 1: position control along runway direction (bearing defined from vehicle position on takeoff initiation to MAV_CMD_TAKEOFF position defined by operator) - -**Values:** - -- `0`: Airframe -- `1`: Runway - - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 0 | 1 | | 0 | - ### RWTO_MAX_THR (`FLOAT`) {#RWTO_MAX_THR} -Max throttle during runway takeoff. +Throttle during runway takeoff. Reboot | minValue | maxValue | increment | default | unit --- | --- | --- | --- | --- | ---   | 0.0 | 1.0 | 0.01 | 1.0 | norm -### RWTO_NPFG_PERIOD (`FLOAT`) {#RWTO_NPFG_PERIOD} - -NPFG period while steering on runway. - -Reboot | minValue | maxValue | increment | default | unit ---- | --- | --- | --- | --- | --- -  | 1.0 | 100.0 | 0.1 | 5.0 | s - ### RWTO_NUDGE (`INT32`) {#RWTO_NUDGE} Enable use of yaw stick for nudging the wheel during runway ground roll. @@ -28274,11 +28224,12 @@ This integer bitmask controls the set and rates of logged topics. The default al - `8`: Raw FIFO high-rate IMU (Gyro) - `9`: Raw FIFO high-rate IMU (Accel) - `10`: Mavlink tunnel message logging +- `11`: High rate sensors Reboot | minValue | maxValue | increment | default | unit --- | --- | --- | --- | --- | --- -✓ | 0 | 2047 | | 1 | +✓ | 0 | 4095 | | 1 | ### SDLOG_UTC_OFFSET (`INT32`) {#SDLOG_UTC_OFFSET} diff --git a/docs/en/frames_plane/reptile_dragon_2.md b/docs/en/frames_plane/reptile_dragon_2.md index 0aaa509958..ceed4a5854 100644 --- a/docs/en/frames_plane/reptile_dragon_2.md +++ b/docs/en/frames_plane/reptile_dragon_2.md @@ -314,7 +314,7 @@ Access to this cable can be accomplished by simply removing the rear hatch and u ## Firmware Build -You can't use prebuilt PX4 release (or main) firmware for this vehicle, as it depends on PX4 modules [crsf_rc](../modules/modules_driver.md#crsf-rc) and [msp_osd](../modules/modules_driver.md#msp-osd) that are not included by default. +You can't use prebuilt PX4 release (or main) firmware for this vehicle, as it depends on PX4 modules [crsf_rc](../modules/modules_driver_radio_control.md#crsf-rc) and [msp_osd](../modules/modules_driver.md#msp-osd) that are not included by default. These require some custom configuration to enable. diff --git a/docs/en/modules/modules_controller.md b/docs/en/modules/modules_controller.md index e09206b296..049a5659df 100644 --- a/docs/en/modules/modules_controller.md +++ b/docs/en/modules/modules_controller.md @@ -95,19 +95,19 @@ fw_att_control [arguments...] status print status info ``` -## fw_pos_control +## fw_lat_lon_control -Source: [modules/fw_pos_control](https://github.com/PX4/PX4-Autopilot/tree/main/src/modules/fw_pos_control) +Source: [modules/fw_lateral_longitudinal_control](https://github.com/PX4/PX4-Autopilot/tree/main/src/modules/fw_lateral_longitudinal_control) ### Description -fw_pos_control is the fixed-wing position controller. +fw_lat_lon_control computes attitude and throttle setpoints from lateral and longitudinal control setpoints. -### Usage {#fw_pos_control_usage} +### Usage {#fw_lat_lon_control_usage} ``` -fw_pos_control [arguments...] +fw_lat_lon_control [arguments...] Commands: start [vtol] VTOL mode @@ -117,6 +117,29 @@ fw_pos_control [arguments...] status print status info ``` +## fw_mode_manager + +Source: [modules/fw_mode_manager](https://github.com/PX4/PX4-Autopilot/tree/main/src/modules/fw_mode_manager) + + +### Description +This implements the setpoint generation for all PX4-internal fixed-wing modes, height-rate control and higher. +It takes the current mode state of the vehicle as input and outputs setpoints consumed by the fixed-wing +lateral-longitudinal controller and and controllers below that (attitude, rate). + + +### Usage {#fw_mode_manager_usage} + +``` +fw_mode_manager [arguments...] + Commands: + start + + stop + + status print status info +``` + ## fw_rate_control Source: [modules/fw_rate_control](https://github.com/PX4/PX4-Autopilot/tree/main/src/modules/fw_rate_control) diff --git a/docs/en/modules/modules_driver.md b/docs/en/modules/modules_driver.md index 3c5f1966ff..1b8d7d6f2f 100644 --- a/docs/en/modules/modules_driver.md +++ b/docs/en/modules/modules_driver.md @@ -290,7 +290,9 @@ dshot [arguments...] start telemetry Enable Telemetry on a UART - UART device + -d UART device + values: + [-x] Swap RX/TX pins reverse Reverse motor direction [-m ] Motor index (1-based, default=all) diff --git a/docs/en/modules/modules_system.md b/docs/en/modules/modules_system.md index 3bd92fa971..051b7137db 100644 --- a/docs/en/modules/modules_system.md +++ b/docs/en/modules/modules_system.md @@ -330,6 +330,7 @@ i2c_launcher [arguments...] Commands: start -b Bus number + -t battery index for calibration values (1 or 3) stop diff --git a/docs/en/msg_docs/AirspeedValidated.md b/docs/en/msg_docs/AirspeedValidated.md index 78c57ce748..b5fe9191a5 100644 --- a/docs/en/msg_docs/AirspeedValidated.md +++ b/docs/en/msg_docs/AirspeedValidated.md @@ -2,22 +2,28 @@ -[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/AirspeedValidated.msg) +[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/versioned/AirspeedValidated.msg) ```c +uint32 MESSAGE_VERSION = 1 + uint64 timestamp # time since system start (microseconds) -float32 indicated_airspeed_m_s # indicated airspeed in m/s (IAS), set to NAN if invalid -float32 calibrated_airspeed_m_s # calibrated airspeed in m/s (CAS, accounts for instrumentation errors), set to NAN if invalid -float32 true_airspeed_m_s # true filtered airspeed in m/s (TAS), set to NAN if invalid +float32 indicated_airspeed_m_s # [m/s] Indicated airspeed (IAS), set to NAN if invalid +float32 calibrated_airspeed_m_s # [m/s] Calibrated airspeed (CAS), set to NAN if invalid +float32 true_airspeed_m_s # [m/s] True airspeed (TAS), set to NAN if invalid +int8 airspeed_source # Source of currently published airspeed values +int8 DISABLED = -1 +int8 GROUND_MINUS_WIND = 0 +int8 SENSOR_1 = 1 +int8 SENSOR_2 = 2 +int8 SENSOR_3 = 3 +int8 SYNTHETIC = 4 + +# debug states float32 calibrated_ground_minus_wind_m_s # CAS calculated from groundspeed - windspeed, where windspeed is estimated based on a zero-sideslip assumption, set to NAN if invalid -float32 true_ground_minus_wind_m_s # TAS calculated from groundspeed - windspeed, where windspeed is estimated based on a zero-sideslip assumption, set to NAN if invalid - -bool airspeed_sensor_measurement_valid # True if data from at least one airspeed sensor is declared valid. - -int8 selected_airspeed_index # 1-3: airspeed sensor index, 0: groundspeed-windspeed, -1: airspeed invalid - +float32 calibraded_airspeed_synth_m_s # synthetic airspeed in m/s, set to NAN if invalid float32 airspeed_derivative_filtered # filtered indicated airspeed derivative [m/s/s] float32 throttle_filtered # filtered fixed-wing throttle [-] float32 pitch_filtered # filtered pitch [rad] diff --git a/docs/en/msg_docs/AirspeedValidatedV0.md b/docs/en/msg_docs/AirspeedValidatedV0.md new file mode 100644 index 0000000000..9cd392a955 --- /dev/null +++ b/docs/en/msg_docs/AirspeedValidatedV0.md @@ -0,0 +1,27 @@ +# AirspeedValidatedV0 (UORB message) + + + +[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/px4_msgs_old/msg/AirspeedValidatedV0.msg) + +```c +uint32 MESSAGE_VERSION = 0 + +uint64 timestamp # time since system start (microseconds) + +float32 indicated_airspeed_m_s # indicated airspeed in m/s (IAS), set to NAN if invalid +float32 calibrated_airspeed_m_s # calibrated airspeed in m/s (CAS, accounts for instrumentation errors), set to NAN if invalid +float32 true_airspeed_m_s # true filtered airspeed in m/s (TAS), set to NAN if invalid + +float32 calibrated_ground_minus_wind_m_s # CAS calculated from groundspeed - windspeed, where windspeed is estimated based on a zero-sideslip assumption, set to NAN if invalid +float32 true_ground_minus_wind_m_s # TAS calculated from groundspeed - windspeed, where windspeed is estimated based on a zero-sideslip assumption, set to NAN if invalid + +bool airspeed_sensor_measurement_valid # True if data from at least one airspeed sensor is declared valid. + +int8 selected_airspeed_index # 1-3: airspeed sensor index, 0: groundspeed-windspeed, -1: airspeed invalid + +float32 airspeed_derivative_filtered # filtered indicated airspeed derivative [m/s/s] +float32 throttle_filtered # filtered fixed-wing throttle [-] +float32 pitch_filtered # filtered pitch [rad] + +``` diff --git a/docs/en/msg_docs/Buffer128.md b/docs/en/msg_docs/Buffer128.md deleted file mode 100644 index 2df2cf3673..0000000000 --- a/docs/en/msg_docs/Buffer128.md +++ /dev/null @@ -1,17 +0,0 @@ -# Buffer128 (UORB message) - - - -[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/Buffer128.msg) - -```c -uint64 timestamp # time since system start (microseconds) - -uint8 len # length of data -uint32 MAX_BUFLEN = 128 - -uint8[128] data # data - -# TOPICS voxl2_io_data - -``` diff --git a/docs/en/msg_docs/CellularStatus.md b/docs/en/msg_docs/CellularStatus.md index 87fda0b991..466a1272fe 100644 --- a/docs/en/msg_docs/CellularStatus.md +++ b/docs/en/msg_docs/CellularStatus.md @@ -1,37 +1,49 @@ # CellularStatus (UORB message) +Cellular status +This is currently used only for logging cell status from MAVLink. [source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/CellularStatus.msg) ```c -uint64 timestamp # time since system start (microseconds) +# Cellular status +# +# This is currently used only for logging cell status from MAVLink. -uint8 CELLULAR_STATUS_FLAG_UNKNOWN=0 # State unknown or not reportable -uint8 CELLULAR_STATUS_FLAG_FAILED=1 # velocity setpoint -uint8 CELLULAR_STATUS_FLAG_INITIALIZING=2 # Modem is being initialized -uint8 CELLULAR_STATUS_FLAG_LOCKED=3 # Modem is locked -uint8 CELLULAR_STATUS_FLAG_DISABLED=4 # Modem is not enabled and is powered down -uint8 CELLULAR_STATUS_FLAG_DISABLING=5 # Modem is currently transitioning to the CELLULAR_STATUS_FLAG_DISABLED state -uint8 CELLULAR_STATUS_FLAG_ENABLING=6 # Modem is currently transitioning to the CELLULAR_STATUS_FLAG_ENABLED state -uint8 CELLULAR_STATUS_FLAG_ENABLED=7 # Modem is enabled and powered on but not registered with a network provider and not available for data connections -uint8 CELLULAR_STATUS_FLAG_SEARCHING=8 # Modem is searching for a network provider to register -uint8 CELLULAR_STATUS_FLAG_REGISTERED=9 # Modem is registered with a network provider, and data connections and messaging may be available for use -uint8 CELLULAR_STATUS_FLAG_DISCONNECTING=10 # Modem is disconnecting and deactivating the last active packet data bearer. This state will not be entered if more than one packet data bearer is active and one of the active bearers is deactivated -uint8 CELLULAR_STATUS_FLAG_CONNECTING=11 # Modem is activating and connecting the first packet data bearer. Subsequent bearer activations when another bearer is already active do not cause this state to be entered -uint8 CELLULAR_STATUS_FLAG_CONNECTED=12 # One or more packet data bearers is active and connected +uint64 timestamp # [us] Time since system start. -uint8 CELLULAR_NETWORK_FAILED_REASON_NONE=0 # No error -uint8 CELLULAR_NETWORK_FAILED_REASON_UNKNOWN=1 # Error state is unknown -uint8 CELLULAR_NETWORK_FAILED_REASON_SIM_MISSING=2 # SIM is required for the modem but missing -uint8 CELLULAR_NETWORK_FAILED_REASON_SIM_ERROR=3 # SIM is available, but not usable for connection +uint16 status # [@enum STATUS_FLAG] Status bitmap. +uint16 STATUS_FLAG_UNKNOWN = 1 # State unknown or not reportable. +uint16 STATUS_FLAG_FAILED = 2 # Modem is unusable. +uint16 STATUS_FLAG_INITIALIZING = 4 # Modem is being initialized. +uint16 STATUS_FLAG_LOCKED = 8 # Modem is locked. +uint16 STATUS_FLAG_DISABLED = 16 # Modem is not enabled and is powered down. +uint16 STATUS_FLAG_DISABLING = 32 # Modem is currently transitioning to the STATUS_FLAG_DISABLED state. +uint16 STATUS_FLAG_ENABLING = 64 # Modem is currently transitioning to the STATUS_FLAG_ENABLED state. +uint16 STATUS_FLAG_ENABLED = 128 # Modem is enabled and powered on but not registered with a network provider and not available for data connections. +uint16 STATUS_FLAG_SEARCHING = 256 # Modem is searching for a network provider to register. +uint16 STATUS_FLAG_REGISTERED = 512 # Modem is registered with a network provider, and data connections and messaging may be available for use. +uint16 STATUS_FLAG_DISCONNECTING = 1024 # Modem is disconnecting and deactivating the last active packet data bearer. This state will not be entered if more than one packet data bearer is active and one of the active bearers is deactivated. +uint16 STATUS_FLAG_CONNECTING = 2048 # Modem is activating and connecting the first packet data bearer. Subsequent bearer activations when another bearer is already active do not cause this state to be entered. +uint16 STATUS_FLAG_CONNECTED = 4096 # One or more packet data bearers is active and connected. -uint16 status # Status bitmap 1: Roaming is active -uint8 failure_reason #Failure reason when status in in CELLUAR_STATUS_FAILED -uint8 type # Cellular network radio type 0: none 1: gsm 2: cdma 3: wcdma 4: lte -uint8 quality # Cellular network RSSI/RSRP in dBm, absolute value -uint16 mcc # Mobile country code. If unknown, set to: UINT16_MAX -uint16 mnc # Mobile network code. If unknown, set to: UINT16_MAX -uint16 lac # Location area code. If unknown, set to: 0 +uint8 failure_reason # [@enum FAILURE_REASON] Failure reason. +uint8 FAILURE_REASON_NONE = 0 # No error. +uint8 FAILURE_REASON_UNKNOWN = 1 # Error state is unknown. +uint8 FAILURE_REASON_SIM_MISSING = 2 # SIM is required for the modem but missing. +uint8 FAILURE_REASON_SIM_ERROR = 3 # SIM is available, but not usable for connection. + +uint8 type # [@enum CELLULAR_NETWORK_RADIO_TYPE] Cellular network radio type. +uint8 CELLULAR_NETWORK_RADIO_TYPE_NONE = 0 # None +uint8 CELLULAR_NETWORK_RADIO_TYPE_GSM = 1 # GSM +uint8 CELLULAR_NETWORK_RADIO_TYPE_CDMA = 2 # CDMA +uint8 CELLULAR_NETWORK_RADIO_TYPE_WCDMA = 3 # WCDMA +uint8 CELLULAR_NETWORK_RADIO_TYPE_LTE = 4 # LTE + +uint8 quality # [dBm] Cellular network RSSI/RSRP, absolute value. +uint16 mcc # [@invalid UINT16_MAX] Mobile country code. +uint16 mnc # [@invalid UINT16_MAX] Mobile network code. +uint16 lac # [@invalid 0] Location area code. ``` diff --git a/docs/en/msg_docs/FixedWingLateralGuidanceStatus.md b/docs/en/msg_docs/FixedWingLateralGuidanceStatus.md new file mode 100644 index 0000000000..02dc50b410 --- /dev/null +++ b/docs/en/msg_docs/FixedWingLateralGuidanceStatus.md @@ -0,0 +1,23 @@ +# FixedWingLateralGuidanceStatus (UORB message) + +Fixed Wing Lateral Guidance Status message +Published by fw_pos_control module to report the resultant lateral setpoints and NPFG debug outputs + +[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/FixedWingLateralGuidanceStatus.msg) + +```c +# Fixed Wing Lateral Guidance Status message +# Published by fw_pos_control module to report the resultant lateral setpoints and NPFG debug outputs + +uint64 timestamp # time since system start (microseconds) + +float32 course_setpoint # [rad] [@range -pi, pi] Desired direction of travel over ground w.r.t (true) North. Set by guidance law +float32 lateral_acceleration_ff # [m/s^2] [FRD] lateral acceleration demand only for maintaining curvature +float32 bearing_feas # [@range 0,1] bearing feasibility +float32 bearing_feas_on_track # [@range 0,1] on-track bearing feasibility +float32 signed_track_error # [m] signed track error +float32 track_error_bound # [m] track error bound +float32 adapted_period # [s] adapted period (if auto-tuning enabled) +uint8 wind_est_valid # [boolean] true = wind estimate is valid and/or being used by controller (also indicates if wind estimate usage is disabled despite being valid) + +``` diff --git a/docs/en/msg_docs/FixedWingLateralSetpoint.md b/docs/en/msg_docs/FixedWingLateralSetpoint.md new file mode 100644 index 0000000000..153167bb62 --- /dev/null +++ b/docs/en/msg_docs/FixedWingLateralSetpoint.md @@ -0,0 +1,22 @@ +# FixedWingLateralSetpoint (UORB message) + +Fixed Wing Lateral Setpoint message +Used by the fw_lateral_longitudinal_control module +At least one of course, airspeed_direction, or lateral_acceleration must be finite. + +[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/versioned/FixedWingLateralSetpoint.msg) + +```c +# Fixed Wing Lateral Setpoint message +# Used by the fw_lateral_longitudinal_control module +# At least one of course, airspeed_direction, or lateral_acceleration must be finite. + +uint32 MESSAGE_VERSION = 0 + +uint64 timestamp # time since system start (microseconds) + +float32 course # [rad] [@range -pi, pi] Desired direction of travel over ground w.r.t (true) North. NAN if not controlled directly. +float32 airspeed_direction # [rad] [@range -pi, pi] Desired horizontal angle of airspeed vector w.r.t. (true) North. Same as vehicle heading if in the absence of sideslip. NAN if not controlled directly, takes precedence over course if finite. +float32 lateral_acceleration # [m/s^2] [FRD] Lateral acceleration setpoint. NAN if not controlled directly, used as feedforward if either course setpoint or airspeed_direction is finite. + +``` diff --git a/docs/en/msg_docs/FixedWingLateralStatus.md b/docs/en/msg_docs/FixedWingLateralStatus.md new file mode 100644 index 0000000000..9214d1e9e0 --- /dev/null +++ b/docs/en/msg_docs/FixedWingLateralStatus.md @@ -0,0 +1,17 @@ +# FixedWingLateralStatus (UORB message) + +Fixed Wing Lateral Status message +Published by the fw_lateral_longitudinal_control module to report the resultant lateral setpoint + +[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/FixedWingLateralStatus.msg) + +```c +# Fixed Wing Lateral Status message +# Published by the fw_lateral_longitudinal_control module to report the resultant lateral setpoint + +uint64 timestamp # time since system start (microseconds) + +float32 lateral_acceleration_setpoint # [m/s^2] [FRD] resultant lateral acceleration setpoint +float32 can_run_factor # [norm] [@range 0, 1] estimate of certainty of the correct functionality of the npfg roll setpoint + +``` diff --git a/docs/en/msg_docs/FixedWingLongitudinalSetpoint.md b/docs/en/msg_docs/FixedWingLongitudinalSetpoint.md new file mode 100644 index 0000000000..6b8fb29e5b --- /dev/null +++ b/docs/en/msg_docs/FixedWingLongitudinalSetpoint.md @@ -0,0 +1,26 @@ +# FixedWingLongitudinalSetpoint (UORB message) + +Fixed Wing Longitudinal Setpoint message +Used by the fw_lateral_longitudinal_control module +If pitch_direct and throttle_direct are not both finite, then the controller relies on altitude/height_rate and equivalent_airspeed to control vertical motion. +If both altitude and height_rate are NAN, the controller maintains the current altitude. + +[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/versioned/FixedWingLongitudinalSetpoint.msg) + +```c +# Fixed Wing Longitudinal Setpoint message +# Used by the fw_lateral_longitudinal_control module +# If pitch_direct and throttle_direct are not both finite, then the controller relies on altitude/height_rate and equivalent_airspeed to control vertical motion. +# If both altitude and height_rate are NAN, the controller maintains the current altitude. + +uint32 MESSAGE_VERSION = 0 + +uint64 timestamp # time since system start (microseconds) + +float32 altitude # [m] Altitude setpoint AMSL, not controlled directly if NAN or if height_rate is finite +float32 height_rate # [m/s] [ENU] Scalar height rate setpoint. NAN if not controlled directly +float32 equivalent_airspeed # [m/s] [@range 0, inf] Scalar equivalent airspeed setpoint. NAN if system default should be used +float32 pitch_direct # [rad] [@range -pi, pi] [FRD] NAN if not controlled, overrides total energy controller +float32 throttle_direct # [norm] [@range 0,1] NAN if not controlled, overrides total energy controller + +``` diff --git a/docs/en/msg_docs/FixedWingRunwayControl.md b/docs/en/msg_docs/FixedWingRunwayControl.md new file mode 100644 index 0000000000..9e9f5ff428 --- /dev/null +++ b/docs/en/msg_docs/FixedWingRunwayControl.md @@ -0,0 +1,19 @@ +# FixedWingRunwayControl (UORB message) + +Auxiliary control fields for fixed-wing runway takeoff/landing + +Passes information from the FixedWingModeManager to the FixedWingAttitudeController + +[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/FixedWingRunwayControl.msg) + +```c +# Auxiliary control fields for fixed-wing runway takeoff/landing + +# Passes information from the FixedWingModeManager to the FixedWingAttitudeController + +uint64 timestamp # [us] time since system start + +bool wheel_steering_enabled # Flag that enables the wheel steering. +float32 wheel_steering_nudging_rate # [norm] [@range -1, 1] [FRD] Manual wheel nudging, added to controller output. NAN is interpreted as 0. + +``` diff --git a/docs/en/msg_docs/LateralControlConfiguration.md b/docs/en/msg_docs/LateralControlConfiguration.md new file mode 100644 index 0000000000..b0a03a6378 --- /dev/null +++ b/docs/en/msg_docs/LateralControlConfiguration.md @@ -0,0 +1,18 @@ +# LateralControlConfiguration (UORB message) + +Fixed Wing Lateral Control Configuration message +Used by the fw_lateral_longitudinal_control module to constrain FixedWingLateralSetpoint messages. + +[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/versioned/LateralControlConfiguration.msg) + +```c +# Fixed Wing Lateral Control Configuration message +# Used by the fw_lateral_longitudinal_control module to constrain FixedWingLateralSetpoint messages. + +uint32 MESSAGE_VERSION = 0 + +uint64 timestamp # time since system start (microseconds) + +float32 lateral_accel_max # [m/s^2] currently maps to a maximum roll angle, accel_max = tan(roll_max) * GRAVITY + +``` diff --git a/docs/en/msg_docs/LongitudinalControlConfiguration.md b/docs/en/msg_docs/LongitudinalControlConfiguration.md new file mode 100644 index 0000000000..901d5c23bc --- /dev/null +++ b/docs/en/msg_docs/LongitudinalControlConfiguration.md @@ -0,0 +1,28 @@ +# LongitudinalControlConfiguration (UORB message) + +Fixed Wing Longitudinal Control Configuration message +Used by the fw_lateral_longitudinal_control module and TECS to constrain FixedWingLongitudinalSetpoint messages +and configure the resultant setpoints. + +[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/versioned/LongitudinalControlConfiguration.msg) + +```c +# Fixed Wing Longitudinal Control Configuration message +# Used by the fw_lateral_longitudinal_control module and TECS to constrain FixedWingLongitudinalSetpoint messages +# and configure the resultant setpoints. + +uint32 MESSAGE_VERSION = 0 + +uint64 timestamp # time since system start (microseconds) + +float32 pitch_min # [rad][@range -pi, pi] defaults to FW_P_LIM_MIN if NAN. +float32 pitch_max # [rad][@range -pi, pi] defaults to FW_P_LIM_MAX if NAN. +float32 throttle_min # [norm] [@range 0,1] deaults to FW_THR_MIN if NAN. +float32 throttle_max # [norm] [@range 0,1] defaults to FW_THR_MAX if NAN. +float32 climb_rate_target # [m/s] target climbrate to change altitude. Defaults to FW_T_CLIMB_MAX if NAN. Not used if height_rate is directly set in FixedWingLongitudinalSetpoint. +float32 sink_rate_target # [m/s] target sinkrate to change altitude. Defaults to FW_T_SINK_MAX if NAN. Not used if height_rate is directly set in FixedWingLongitudinalSetpoint. +float32 speed_weight # [@range 0,2], 0=pitch controls altitude only, 2=pitch controls airspeed only +bool enforce_low_height_condition # [boolean] if true, the altitude controller is configured with an alternative timeconstant for tighter altitude tracking +bool disable_underspeed_protection # [boolean] if true, underspeed handling is disabled in the altitude controller + +``` diff --git a/docs/en/msg_docs/NpfgStatus.md b/docs/en/msg_docs/NpfgStatus.md deleted file mode 100644 index 281c27acab..0000000000 --- a/docs/en/msg_docs/NpfgStatus.md +++ /dev/null @@ -1,26 +0,0 @@ -# NpfgStatus (UORB message) - - - -[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/NpfgStatus.msg) - -```c -uint64 timestamp # time since system start (microseconds) - -uint8 wind_est_valid # (boolean) true = wind estimate is valid and/or being used by controller (also indicates if wind est usage is disabled despite being valid) -float32 lat_accel # resultant lateral acceleration reference [m/s^2] -float32 lat_accel_ff # lateral acceleration demand only for maintaining curvature [m/s^2] -float32 bearing_feas # bearing feasibility [0,1] -float32 bearing_feas_on_track # on-track bearing feasibility [0,1] -float32 signed_track_error # signed track error [m] -float32 track_error_bound # track error bound [m] -float32 airspeed_ref # (true) airspeed reference [m/s] -float32 bearing # bearing angle [rad] -float32 heading_ref # heading angle reference [rad] -float32 min_ground_speed_ref # minimum forward ground speed reference [m/s] -float32 adapted_period # adapted period (if auto-tuning enabled) [s] -float32 p_gain # controller proportional gain [rad/s] -float32 time_const # controller time constant [s] -float32 can_run_factor # estimate of certainty of the correct functionality of the npfg roll setpoint in [0, 1] - -``` diff --git a/docs/en/msg_docs/PurePursuitStatus.md b/docs/en/msg_docs/PurePursuitStatus.md index 41f4b9054f..c807b41165 100644 --- a/docs/en/msg_docs/PurePursuitStatus.md +++ b/docs/en/msg_docs/PurePursuitStatus.md @@ -13,6 +13,4 @@ float32 crosstrack_error # [m] Shortest distance from the vehicle to the pat float32 distance_to_waypoint # [m] Distance from the vehicle to the current waypoint float32 bearing_to_waypoint # [rad] Bearing towards current waypoint -# TOPICS pure_pursuit_status - ``` diff --git a/docs/en/msg_docs/RateCtrlStatus.md b/docs/en/msg_docs/RateCtrlStatus.md index 054a8aa9fd..28adaafbbd 100644 --- a/docs/en/msg_docs/RateCtrlStatus.md +++ b/docs/en/msg_docs/RateCtrlStatus.md @@ -11,6 +11,5 @@ uint64 timestamp # time since system start (microseconds) float32 rollspeed_integ float32 pitchspeed_integ float32 yawspeed_integ -float32 wheel_rate_integ # FW only and optional ``` diff --git a/docs/en/msg_docs/RoverAttitudeSetpoint.md b/docs/en/msg_docs/RoverAttitudeSetpoint.md index 922e5d05eb..c7b877c7f5 100644 --- a/docs/en/msg_docs/RoverAttitudeSetpoint.md +++ b/docs/en/msg_docs/RoverAttitudeSetpoint.md @@ -9,6 +9,4 @@ uint64 timestamp # time since system start (microseconds) float32 yaw_setpoint # [rad] Expressed in NED frame -# TOPICS rover_attitude_setpoint - ``` diff --git a/docs/en/msg_docs/RoverAttitudeStatus.md b/docs/en/msg_docs/RoverAttitudeStatus.md index 5b757b2e5c..3eae8b3f21 100644 --- a/docs/en/msg_docs/RoverAttitudeStatus.md +++ b/docs/en/msg_docs/RoverAttitudeStatus.md @@ -10,6 +10,4 @@ uint64 timestamp # time since system start (microseconds) float32 measured_yaw # [rad/s] Measured yaw rate float32 adjusted_yaw_setpoint # [rad/s] Yaw setpoint that is being tracked (Applied slew rates) -# TOPICS rover_attitude_status - ``` diff --git a/docs/en/msg_docs/RoverMecanumGuidanceStatus.md b/docs/en/msg_docs/RoverMecanumGuidanceStatus.md deleted file mode 100644 index 4a907f45b0..0000000000 --- a/docs/en/msg_docs/RoverMecanumGuidanceStatus.md +++ /dev/null @@ -1,16 +0,0 @@ -# RoverMecanumGuidanceStatus (UORB message) - - - -[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/RoverMecanumGuidanceStatus.msg) - -```c -uint64 timestamp # time since system start (microseconds) - -float32 lookahead_distance # [m] Lookahead distance of pure the pursuit controller -float32 heading_error # [rad] Heading error of the pure pursuit controller -float32 desired_speed # [m/s] Desired velocity magnitude (speed) - -# TOPICS rover_mecanum_guidance_status - -``` diff --git a/docs/en/msg_docs/RoverMecanumSetpoint.md b/docs/en/msg_docs/RoverMecanumSetpoint.md deleted file mode 100644 index 88a6f75ffe..0000000000 --- a/docs/en/msg_docs/RoverMecanumSetpoint.md +++ /dev/null @@ -1,20 +0,0 @@ -# RoverMecanumSetpoint (UORB message) - - - -[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/RoverMecanumSetpoint.msg) - -```c -uint64 timestamp # time since system start (microseconds) - -float32 forward_speed_setpoint # [m/s] Desired forward speed -float32 forward_speed_setpoint_normalized # [-1, 1] Desired normalized forward speed -float32 lateral_speed_setpoint # [m/s] Desired lateral speed -float32 lateral_speed_setpoint_normalized # [-1, 1] Desired normalized lateral speed -float32 yaw_rate_setpoint # [rad/s] Desired yaw rate -float32 speed_diff_setpoint_normalized # [-1, 1] Normalized speed difference between the left and right wheels -float32 yaw_setpoint # [rad] Desired yaw (heading) - -# TOPICS rover_mecanum_setpoint - -``` diff --git a/docs/en/msg_docs/RoverMecanumStatus.md b/docs/en/msg_docs/RoverMecanumStatus.md deleted file mode 100644 index 1330e7b923..0000000000 --- a/docs/en/msg_docs/RoverMecanumStatus.md +++ /dev/null @@ -1,26 +0,0 @@ -# RoverMecanumStatus (UORB message) - - - -[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/RoverMecanumStatus.msg) - -```c -uint64 timestamp # time since system start (microseconds) - -float32 measured_forward_speed # [m/s] Measured speed in body x direction. Positiv: forwards, Negativ: backwards -float32 adjusted_forward_speed_setpoint # [m/s] Speed setpoint after applying slew rate -float32 measured_lateral_speed # [m/s] Measured speed in body y direction. Positiv: right, Negativ: left -float32 adjusted_lateral_speed_setpoint # [m/s] Speed setpoint after applying slew rate -float32 measured_yaw_rate # [rad/s] Measured yaw rate -float32 clyaw_yaw_rate_setpoint # [rad/s] Yaw rate setpoint output by the closed loop yaw controller -float32 adjusted_yaw_rate_setpoint # [rad/s] Yaw rate setpoint from the closed loop yaw controller -float32 measured_yaw # [rad] Measured yaw -float32 adjusted_yaw_setpoint # [rad] Yaw setpoint after applying slew rate -float32 pid_yaw_rate_integral # Integral of the PID for the closed loop yaw rate controller -float32 pid_yaw_integral # Integral of the PID for the closed loop yaw controller -float32 pid_forward_throttle_integral # Integral of the PID for the closed loop forward speed controller -float32 pid_lateral_throttle_integral # Integral of the PID for the closed loop lateral speed controller - -# TOPICS rover_mecanum_status - -``` diff --git a/docs/en/msg_docs/RoverPositionSetpoint.md b/docs/en/msg_docs/RoverPositionSetpoint.md new file mode 100644 index 0000000000..ae9bd9435e --- /dev/null +++ b/docs/en/msg_docs/RoverPositionSetpoint.md @@ -0,0 +1,17 @@ +# RoverPositionSetpoint (UORB message) + + + +[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/RoverPositionSetpoint.msg) + +```c +uint64 timestamp # time since system start (microseconds) + +float32[2] position_ned # 2-dimensional position setpoint in NED frame [m] +float32[2] start_ned # (Optional) 2-dimensional start position in NED frame used to define the line that the rover will track to position_ned [m] (Defaults to vehicle position) +float32 cruising_speed # (Optional) Specify rover speed [m/s] (Defaults to maximum speed) +float32 arrival_speed # (Optional) Specify arrival speed [m/s] (Defaults to zero) + +float32 yaw # [rad] [-pi,pi] from North. Optional, NAN if not set. Mecanum only. (Defaults to vehicle yaw) + +``` diff --git a/docs/en/msg_docs/RoverRateSetpoint.md b/docs/en/msg_docs/RoverRateSetpoint.md index 68ddf65176..80673ec810 100644 --- a/docs/en/msg_docs/RoverRateSetpoint.md +++ b/docs/en/msg_docs/RoverRateSetpoint.md @@ -9,6 +9,4 @@ uint64 timestamp # time since system start (microseconds) float32 yaw_rate_setpoint # [rad/s] Expressed in NED frame -# TOPICS rover_rate_setpoint - ``` diff --git a/docs/en/msg_docs/RoverRateStatus.md b/docs/en/msg_docs/RoverRateStatus.md index e61ae29562..bf482738b3 100644 --- a/docs/en/msg_docs/RoverRateStatus.md +++ b/docs/en/msg_docs/RoverRateStatus.md @@ -11,6 +11,4 @@ float32 measured_yaw_rate # [rad/s] Measured yaw rate float32 adjusted_yaw_rate_setpoint # [rad/s] Yaw rate setpoint that is being tracked (Applied slew rates) float32 pid_yaw_rate_integral # Integral of the PID for the closed loop yaw rate controller -# TOPICS rover_rate_status - ``` diff --git a/docs/en/msg_docs/RoverSteeringSetpoint.md b/docs/en/msg_docs/RoverSteeringSetpoint.md index 0d74543ee9..fb21dba418 100644 --- a/docs/en/msg_docs/RoverSteeringSetpoint.md +++ b/docs/en/msg_docs/RoverSteeringSetpoint.md @@ -7,9 +7,8 @@ ```c uint64 timestamp # time since system start (microseconds) -float32 normalized_steering_angle # [-1, 1] Normalized steering angle (Only for Ackermann-steered rovers) -float32 normalized_speed_diff # [-1, 1] Normalized speed difference between the left and right wheels of the rover (Only for Differential/Mecanum rovers) +float32 normalized_steering_angle # [-1, 1] Normalized steering angle (Ackermann only, Positiv: Steer right, Negativ: Steer left) -# TOPICS rover_steering_setpoint +float32 normalized_speed_diff # [-1, 1] Normalized speed difference between the left and right wheels of the rover (Differential/Mecanum only, Positiv = Turn right, Negativ: Turn left) ``` diff --git a/docs/en/msg_docs/RoverThrottleSetpoint.md b/docs/en/msg_docs/RoverThrottleSetpoint.md index 6ba6bc1efc..8b4697eb13 100644 --- a/docs/en/msg_docs/RoverThrottleSetpoint.md +++ b/docs/en/msg_docs/RoverThrottleSetpoint.md @@ -8,9 +8,7 @@ uint64 timestamp # time since system start (microseconds) -float32 throttle_body_x # throttle setpoint along body X axis [-1, 1] -float32 throttle_body_y # throttle setpoint along body Y axis [-1, 1] - -# TOPICS rover_throttle_setpoint +float32 throttle_body_x # throttle setpoint along body X axis [-1, 1] (Positiv = forwards, Negativ = backwards) +float32 throttle_body_y # throttle setpoint along body Y axis [-1, 1] (Mecanum only, Positiv = right, Negativ = left) ``` diff --git a/docs/en/msg_docs/RoverVelocitySetpoint.md b/docs/en/msg_docs/RoverVelocitySetpoint.md new file mode 100644 index 0000000000..aa74dd065d --- /dev/null +++ b/docs/en/msg_docs/RoverVelocitySetpoint.md @@ -0,0 +1,14 @@ +# RoverVelocitySetpoint (UORB message) + + + +[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/RoverVelocitySetpoint.msg) + +```c +uint64 timestamp # time since system start (microseconds) + +float32 speed # [m/s] [-inf, inf] Speed setpoint (Backwards driving if negative) +float32 bearing # [rad] [-pi,pi] from North. [invalid: NAN, speed is defined in body x direction] +float32 yaw # [rad] [-pi, pi] (Mecanum only, Optional, defaults to current vehicle yaw) Vehicle yaw setpoint in NED frame + +``` diff --git a/docs/en/msg_docs/RoverVelocityStatus.md b/docs/en/msg_docs/RoverVelocityStatus.md index adb4480ac3..16a7e27684 100644 --- a/docs/en/msg_docs/RoverVelocityStatus.md +++ b/docs/en/msg_docs/RoverVelocityStatus.md @@ -8,14 +8,10 @@ uint64 timestamp # time since system start (microseconds) float32 measured_speed_body_x # [m/s] Measured speed in body x direction. Positiv: forwards, Negativ: backwards -float32 speed_body_x_setpoint # [m/s] Speed setpoint in body x direction. Positiv: forwards, Negativ: backwards float32 adjusted_speed_body_x_setpoint # [m/s] Post slew rate speed setpoint in body x direction. Positiv: forwards, Negativ: backwards -float32 measured_speed_body_y # [m/s] Measured speed in body y direction. Positiv: right, Negativ: left -float32 speed_body_y_setpoint # [m/s] Speed setpoint in body y direction. Positiv: right, Negativ: left (Only for mecanum rovers) -float32 adjusted_speed_body_y_setpoint # [m/s] Post slew rate speed setpoint in body y direction. Positiv: right, Negativ: left (Only for mecanum rovers) float32 pid_throttle_body_x_integral # Integral of the PID for the closed loop controller of the speed in body x direction -float32 pid_throttle_body_y_integral # Integral of the PID for the closed loop controller of the speed in body y direction - -# TOPICS rover_velocity_status +float32 measured_speed_body_y # [m/s] Measured speed in body y direction. Positiv: right, Negativ: left (Mecanum only) +float32 adjusted_speed_body_y_setpoint # [m/s] Post slew rate speed setpoint in body y direction. Positiv: right, Negativ: left (Mecanum only) +float32 pid_throttle_body_y_integral # Integral of the PID for the closed loop controller of the speed in body y direction (Mecanum only) ``` diff --git a/docs/en/msg_docs/TrajectorySetpoint6dof.md b/docs/en/msg_docs/TrajectorySetpoint6dof.md new file mode 100644 index 0000000000..f2629e19c4 --- /dev/null +++ b/docs/en/msg_docs/TrajectorySetpoint6dof.md @@ -0,0 +1,23 @@ +# TrajectorySetpoint6dof (UORB message) + +Trajectory setpoint in NED frame +Input to position controller. + +[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/TrajectorySetpoint6dof.msg) + +```c +# Trajectory setpoint in NED frame +# Input to position controller. + +uint64 timestamp # time since system start (microseconds) + +# NED local world frame +float32[3] position # in meters +float32[3] velocity # in meters/second +float32[3] acceleration # in meters/second^2 +float32[3] jerk # in meters/second^3 (for logging only) + +float32[4] quaternion # unit quaternion +float32[3] angular_velocity # angular velocity in radians/second + +``` diff --git a/docs/en/msg_docs/VehicleAttitudeSetpoint.md b/docs/en/msg_docs/VehicleAttitudeSetpoint.md index 4237390400..69552e23ef 100644 --- a/docs/en/msg_docs/VehicleAttitudeSetpoint.md +++ b/docs/en/msg_docs/VehicleAttitudeSetpoint.md @@ -5,7 +5,7 @@ [source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/versioned/VehicleAttitudeSetpoint.msg) ```c -uint32 MESSAGE_VERSION = 0 +uint32 MESSAGE_VERSION = 1 uint64 timestamp # time since system start (microseconds) @@ -18,10 +18,6 @@ float32[4] q_d # Desired quaternion for quaternion control # For fixed wings thrust_x is the throttle demand and thrust_y, thrust_z will usually be zero. float32[3] thrust_body # Normalized thrust command in body FRD frame [-1,1] -bool reset_integral # Reset roll/pitch/yaw integrals (navigation logic change) - -bool fw_control_yaw_wheel # control heading with steering wheel (used for auto takeoff on runway) - # TOPICS vehicle_attitude_setpoint mc_virtual_attitude_setpoint fw_virtual_attitude_setpoint ``` diff --git a/docs/en/msg_docs/VehicleAttitudeSetpointV0.md b/docs/en/msg_docs/VehicleAttitudeSetpointV0.md new file mode 100644 index 0000000000..9b3a8c655e --- /dev/null +++ b/docs/en/msg_docs/VehicleAttitudeSetpointV0.md @@ -0,0 +1,27 @@ +# VehicleAttitudeSetpointV0 (UORB message) + + + +[source file](https://github.com/PX4/PX4-Autopilot/blob/main/msg/px4_msgs_old/msg/VehicleAttitudeSetpointV0.msg) + +```c +uint32 MESSAGE_VERSION = 0 + +uint64 timestamp # time since system start (microseconds) + +float32 yaw_sp_move_rate # rad/s (commanded by user) + +# For quaternion-based attitude control +float32[4] q_d # Desired quaternion for quaternion control + +# For clarification: For multicopters thrust_body[0] and thrust[1] are usually 0 and thrust[2] is the negative throttle demand. +# For fixed wings thrust_x is the throttle demand and thrust_y, thrust_z will usually be zero. +float32[3] thrust_body # Normalized thrust command in body FRD frame [-1,1] + +bool reset_integral # Reset roll/pitch/yaw integrals (navigation logic change) + +bool fw_control_yaw_wheel # control heading with steering wheel (used for auto takeoff on runway) + +# TOPICS vehicle_attitude_setpoint mc_virtual_attitude_setpoint fw_virtual_attitude_setpoint + +``` diff --git a/docs/en/msg_docs/VehicleCommand.md b/docs/en/msg_docs/VehicleCommand.md index c2cc25f241..19557cf496 100644 --- a/docs/en/msg_docs/VehicleCommand.md +++ b/docs/en/msg_docs/VehicleCommand.md @@ -11,127 +11,127 @@ Follows the MAVLink COMMAND_INT / COMMAND_LONG definition uint32 MESSAGE_VERSION = 0 -uint64 timestamp # time since system start (microseconds) +uint64 timestamp # [us] Time since system start. -uint16 VEHICLE_CMD_CUSTOM_0 = 0 # test command -uint16 VEHICLE_CMD_CUSTOM_1 = 1 # test command -uint16 VEHICLE_CMD_CUSTOM_2 = 2 # test command -uint16 VEHICLE_CMD_NAV_WAYPOINT = 16 # Navigate to MISSION. |Hold time in decimal seconds. (ignored by fixed wing, time to stay at MISSION for rotary wing)| Acceptance radius in meters (if the sphere with this radius is hit, the MISSION counts as reached)| 0 to pass through the WP, if > 0 radius in meters to pass by WP. Positive value for clockwise orbit, negative value for counter-clockwise orbit. Allows trajectory control.| Desired yaw angle at MISSION (rotary wing)| Latitude| Longitude| Altitude| -uint16 VEHICLE_CMD_NAV_LOITER_UNLIM = 17 # Loiter around this MISSION an unlimited amount of time |Empty| Empty| Radius around MISSION, in meters. If positive loiter clockwise, else counter-clockwise| Desired yaw angle.| Latitude| Longitude| Altitude| -uint16 VEHICLE_CMD_NAV_LOITER_TURNS = 18 # Loiter around this MISSION for X turns |Turns| Empty| Radius around MISSION, in meters. If positive loiter clockwise, else counter-clockwise| Desired yaw angle.| Latitude| Longitude| Altitude| -uint16 VEHICLE_CMD_NAV_LOITER_TIME = 19 # Loiter around this MISSION for X seconds |Seconds (decimal)| Empty| Radius around MISSION, in meters. If positive loiter clockwise, else counter-clockwise| Desired yaw angle.| Latitude| Longitude| Altitude| -uint16 VEHICLE_CMD_NAV_RETURN_TO_LAUNCH = 20 # Return to launch location |Empty| Empty| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_NAV_LAND = 21 # Land at location |Empty| Empty| Empty| Desired yaw angle.| Latitude| Longitude| Altitude| -uint16 VEHICLE_CMD_NAV_TAKEOFF = 22 # Takeoff from ground / hand |Minimum pitch (if airspeed sensor present), desired pitch without sensor| Empty| Empty| Yaw angle (if magnetometer present), ignored without magnetometer| Latitude| Longitude| Altitude| -uint16 VEHICLE_CMD_NAV_PRECLAND = 23 # Attempt a precision landing -uint16 VEHICLE_CMD_DO_ORBIT = 34 # Start orbiting on the circumference of a circle defined by the parameters. |Radius [m] |Velocity [m/s] |Yaw behaviour |Empty |Latitude/X |Longitude/Y |Altitude/Z | -uint16 VEHICLE_CMD_DO_FIGUREEIGHT = 35 # Start flying on the outline of a figure eight defined by the parameters. |Major Radius [m] |Minor Radius [m] |Velocity [m/s] |Orientation |Latitude/X |Longitude/Y |Altitude/Z | -uint16 VEHICLE_CMD_NAV_ROI = 80 # Sets the region of interest (ROI) for a sensor set or the vehicle itself. This can then be used by the vehicles control system to control the vehicle attitude and the attitude of various sensors such as cameras. |Region of interest mode. (see MAV_ROI enum)| MISSION index/ target ID. (see MAV_ROI enum)| ROI index (allows a vehicle to manage multiple ROI's)| Empty| x the location of the fixed ROI (see MAV_FRAME)| y| z| -uint16 VEHICLE_CMD_NAV_PATHPLANNING = 81 # Control autonomous path planning on the MAV. |0: Disable local obstacle avoidance / local path planning (without resetting map), 1: Enable local path planning, 2: Enable and reset local path planning| 0: Disable full path planning (without resetting map), 1: Enable, 2: Enable and reset map/occupancy grid, 3: Enable and reset planned route, but not occupancy grid| Empty| Yaw angle at goal, in compass degrees, [0..360]| Latitude/X of goal| Longitude/Y of goal| Altitude/Z of goal| -uint16 VEHICLE_CMD_NAV_VTOL_TAKEOFF = 84 # Takeoff from ground / hand and transition to fixed wing |Minimum pitch (if airspeed sensor present), desired pitch without sensor| Empty| Empty| Yaw angle (if magnetometer present), ignored without magnetometer| Latitude| Longitude| Altitude| -uint16 VEHICLE_CMD_NAV_VTOL_LAND = 85 # Transition to MC and land at location |Empty| Empty| Empty| Desired yaw angle.| Latitude| Longitude| Altitude| -uint16 VEHICLE_CMD_NAV_GUIDED_LIMITS = 90 # set limits for external control |timeout - maximum time (in seconds) that external controller will be allowed to control vehicle. 0 means no timeout| absolute altitude min (in meters, AMSL) - if vehicle moves below this alt, the command will be aborted and the mission will continue. 0 means no lower altitude limit| absolute altitude max (in meters)- if vehicle moves above this alt, the command will be aborted and the mission will continue. 0 means no upper altitude limit| horizontal move limit (in meters, AMSL) - if vehicle moves more than this distance from it's location at the moment the command was executed, the command will be aborted and the mission will continue. 0 means no horizontal altitude limit| Empty| Empty| Empty| -uint16 VEHICLE_CMD_NAV_GUIDED_MASTER = 91 # set id of master controller |System ID| Component ID| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_NAV_DELAY = 93 # Delay the next navigation command a number of seconds or until a specified time |Delay in seconds (decimal, -1 to enable time-of-day fields)| hour (24h format, UTC, -1 to ignore)| minute (24h format, UTC, -1 to ignore)| second (24h format, UTC)| Empty| Empty| Empty| -uint16 VEHICLE_CMD_NAV_LAST = 95 # NOP - This command is only used to mark the upper limit of the NAV/ACTION commands in the enumeration |Empty| Empty| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_CONDITION_DELAY = 112 # Delay mission state machine. |Delay in seconds (decimal)| Empty| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_CONDITION_CHANGE_ALT = 113 # Ascend/descend at rate. Delay mission state machine until desired altitude reached. |Descent / Ascend rate (m/s)| Empty| Empty| Empty| Empty| Empty| Finish Altitude| -uint16 VEHICLE_CMD_CONDITION_DISTANCE = 114 # Delay mission state machine until within desired distance of next NAV point. |Distance (meters)| Empty| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_CONDITION_YAW = 115 # Reach a certain target angle. |target angle: [0-360], 0 is north| speed during yaw change:[deg per second]| direction: negative: counter clockwise, positive: clockwise [-1,1]| relative offset or absolute angle: [ 1,0]| Empty| Empty| Empty| -uint16 VEHICLE_CMD_CONDITION_LAST = 159 # NOP - This command is only used to mark the upper limit of the CONDITION commands in the enumeration |Empty| Empty| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_CONDITION_GATE = 4501 # Wait until passing a threshold |2D coord mode: 0: Orthogonal to planned route | Altitude mode: 0: Ignore altitude| Empty| Empty| Lat| Lon| Alt| -uint16 VEHICLE_CMD_DO_SET_MODE = 176 # Set system mode. |Mode, as defined by ENUM MAV_MODE| Empty| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_JUMP = 177 # Jump to the desired command in the mission list. Repeat this action only the specified number of times |Sequence number| Repeat count| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_CHANGE_SPEED = 178 # Change speed and/or throttle set points. |Speed type (0=Airspeed, 1=Ground Speed)| Speed (m/s, -1 indicates no change)| Throttle ( Percent, -1 indicates no change)| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_SET_HOME = 179 # Changes the home location either to the current location or a specified location. |Use current (1=use current location, 0=use specified location)| Empty| Empty| Empty| Latitude| Longitude| Altitude| -uint16 VEHICLE_CMD_DO_SET_PARAMETER = 180 # Set a system parameter. Caution! Use of this command requires knowledge of the numeric enumeration value of the parameter. |Parameter number| Parameter value| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_SET_RELAY = 181 # Set a relay to a condition. |Relay number| Setting (1=on, 0=off, others possible depending on system hardware)| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_REPEAT_RELAY = 182 # Cycle a relay on and off for a desired number of cycles with a desired period. |Relay number| Cycle count| Cycle time (seconds, decimal)| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_REPEAT_SERVO = 184 # Cycle a between its nominal setting and a desired PWM for a desired number of cycles with a desired period. |Servo number| PWM (microseconds, 1000 to 2000 typical)| Cycle count| Cycle time (seconds)| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_FLIGHTTERMINATION = 185 # Terminate flight immediately |Flight termination activated if > 0.5| Empty| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_CHANGE_ALTITUDE = 186 # Set the vehicle to Loiter mode and change the altitude to specified value |Altitude| Frame of new altitude | Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_SET_ACTUATOR = 187 # Sets actuators (e.g. servos) to a desired value. |Actuator 1| Actuator 2| Actuator 3| Actuator 4| Actuator 5| Actuator 6| Index| -uint16 VEHICLE_CMD_DO_LAND_START = 189 # Mission command to perform a landing. This is used as a marker in a mission to tell the autopilot where a sequence of mission items that represents a landing starts. It may also be sent via a COMMAND_LONG to trigger a landing, in which case the nearest (geographically) landing sequence in the mission will be used. The Latitude/Longitude is optional, and may be set to 0/0 if not needed. If specified then it will be used to help find the closest landing sequence. |Empty| Empty| Empty| Empty| Latitude| Longitude| Empty| -uint16 VEHICLE_CMD_DO_GO_AROUND = 191 # Mission command to safely abort an autonomous landing. |Altitude (meters)| Empty| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_REPOSITION = 192 # Reposition to specific WGS84 GPS position. |Ground speed [m/s] |Bitmask |Loiter radius [m] for planes |Yaw [deg] |Latitude |Longitude |Altitude | +uint16 VEHICLE_CMD_CUSTOM_0 = 0 # Test command. +uint16 VEHICLE_CMD_CUSTOM_1 = 1 # Test command. +uint16 VEHICLE_CMD_CUSTOM_2 = 2 # Test command. +uint16 VEHICLE_CMD_NAV_WAYPOINT = 16 # Navigate to MISSION. |[s] (decimal) Hold time. (ignored by fixed wing, time to stay at MISSION for rotary wing)|[m] Acceptance radius (if the sphere with this radius is hit, the MISSION counts as reached)|0 to pass through the WP, if > 0 radius [m] to pass by WP. Positive value for clockwise orbit, negative value for counter-clockwise orbit. Allows trajectory control.|Desired yaw angle at MISSION (rotary wing)|Latitude|Longitude|Altitude| +uint16 VEHICLE_CMD_NAV_LOITER_UNLIM = 17 # Loiter around this MISSION an unlimited amount of time. |Unused|Unused|[m] Radius around MISSION. If positive loiter clockwise, else counter-clockwise|Desired yaw angle.|Latitude|Longitude|Altitude| +uint16 VEHICLE_CMD_NAV_LOITER_TURNS = 18 # Loiter around this MISSION for X turns. |Turns|Unused|Radius around MISSION [m]. If positive loiter clockwise, else counter-clockwise|Desired yaw angle.|Latitude|Longitude|Altitude| +uint16 VEHICLE_CMD_NAV_LOITER_TIME = 19 # Loiter around this MISSION for time. |[s] Seconds (decimal)|Unused|Radius around MISSION [m]. If positive loiter clockwise, else counter-clockwise|Desired yaw angle.|Latitude|Longitude|Altitude| +uint16 VEHICLE_CMD_NAV_RETURN_TO_LAUNCH = 20 # Return to launch location. |Unused|Unused|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_NAV_LAND = 21 # Land at location. |Unused|Unused|Unused|Desired yaw angle.|Latitude|Longitude|Altitude| +uint16 VEHICLE_CMD_NAV_TAKEOFF = 22 # Takeoff from ground / hand. |Unused (FW pitch from FW_TKO_PITCH_MIN)|Unused|Unused|[deg] [@range 0,360] Yaw angle in NED if yaw source available, ignored otherwise|Latitude (WGS-84)|Longitude (WGS-84)|[m] Altitude AMSL| +uint16 VEHICLE_CMD_NAV_PRECLAND = 23 # Attempt a precision landing. +uint16 VEHICLE_CMD_DO_ORBIT = 34 # Start orbiting on the circumference of a circle defined by the parameters. |[m] Radius|[m/s] Velocity|[@enum ORBIT_YAW_BEHAVIOUR] Yaw behaviour|Unused|Latitude/X|Longitude/Y|Altitude/Z| +uint16 VEHICLE_CMD_DO_FIGUREEIGHT = 35 # Start flying on the outline of a figure eight defined by the parameters. |[m] Major radius|[m] Minor radius|[m/s] Velocity|Orientation|Latitude/X|Longitude/Y|Altitude/Z| +uint16 VEHICLE_CMD_NAV_ROI = 80 # Sets the region of interest (ROI) for a sensor set or the vehicle itself. This can then be used by the vehicles control system to control the vehicle attitude and the attitude of various sensors such as cameras. |[@enum VEHICLE_ROI] Region of interest mode.|MISSION index/ target ID.|ROI index (allows a vehicle to manage multiple ROI's)|Unused|x the location of the fixed ROI (see MAV_FRAME)|y|z| +uint16 VEHICLE_CMD_NAV_PATHPLANNING = 81 # Control autonomous path planning on the MAV. |0: Disable local obstacle avoidance / local path planning (without resetting map), 1: Enable local path planning, 2: Enable and reset local path planning|0: Disable full path planning (without resetting map), 1: Enable, 2: Enable and reset map/occupancy grid, 3: Enable and reset planned route, but not occupancy grid|Unused|[deg] [@range 0, 360] Yaw angle at goal, in compass degrees|Latitude/X of goal|Longitude/Y of goal|Altitude/Z of goal| +uint16 VEHICLE_CMD_NAV_VTOL_TAKEOFF = 84 # Takeoff from ground / hand and transition to fixed wing. |Minimum pitch (if airspeed sensor present), desired pitch without sensor|Unused|Unused|Yaw angle (if magnetometer present), ignored without magnetometer|Latitude|Longitude|Altitude| +uint16 VEHICLE_CMD_NAV_VTOL_LAND = 85 # Transition to MC and land at location. |Unused|Unused|Unused|Desired yaw angle.|Latitude|Longitude|Altitude| +uint16 VEHICLE_CMD_NAV_GUIDED_LIMITS = 90 # Set limits for external control. |[s] Timeout - maximum time that external controller will be allowed to control vehicle. 0 means no timeout|[m] Absolute altitude min AMSL - if vehicle moves below this alt, the command will be aborted and the mission will continue. 0 means no lower altitude limit|[m] Absolute altitude max - if vehicle moves above this alt, the command will be aborted and the mission will continue. 0 means no upper altitude limit|[m] Horizontal move limit (AMSL) - if vehicle moves more than this distance from it's location at the moment the command was executed, the command will be aborted and the mission will continue. 0 means no horizontal altitude limit|Unused|Unused|Unused| +uint16 VEHICLE_CMD_NAV_GUIDED_MASTER = 91 # Set id of master controller. |System ID|Component ID|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_NAV_DELAY = 93 # Delay the next navigation command a number of seconds or until a specified time. |[s] Delay (decimal, -1 to enable time-of-day fields)|[h] hour (24h format, UTC, -1 to ignore)|minute (24h format, UTC, -1 to ignore)|second (24h format, UTC)|Unused|Unused|Unused| +uint16 VEHICLE_CMD_NAV_LAST = 95 # NOP - This command is only used to mark the upper limit of the NAV/ACTION commands in the enumeration.|Unused|Unused|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_CONDITION_DELAY = 112 # Delay mission state machine. |[s] Delay (decimal seconds)|Unused|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_CONDITION_CHANGE_ALT = 113 # Ascend/descend at rate. Delay mission state machine until desired altitude reached.|Descent / Ascend rate (m/s)|Unused|Unused|Unused|Unused|Unused|Finish Altitude| +uint16 VEHICLE_CMD_CONDITION_DISTANCE = 114 # Delay mission state machine until within desired distance of next NAV point. |Distance [m]|Unused|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_CONDITION_YAW = 115 # Reach a certain target angle. |[deg] [@range 0,360] Target angle. 0 is north|[deg/s] Speed during yaw change|[@range -1,1] Direction: negative: counter clockwise, positive: clockwise |[ 1,0] Relative offset or absolute angle|Unused|Unused|Unused| +uint16 VEHICLE_CMD_CONDITION_LAST = 159 # NOP - This command is only used to mark the upper limit of the CONDITION commands in the enumeration. |Unused|Unused|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_CONDITION_GATE = 4501 # Wait until passing a threshold. |2D coord mode: 0: Orthogonal to planned route|Altitude mode: 0: Ignore altitude|Unused|Unused|Lat|Lon|Alt| +uint16 VEHICLE_CMD_DO_SET_MODE = 176 # Set system mode. |Mode, as defined by ENUM MAV_MODE|Unused|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_JUMP = 177 # Jump to the desired command in the mission list. Repeat this action only the specified number of times. |Sequence number|Repeat count|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_CHANGE_SPEED = 178 # Change speed and/or throttle set points. |[@enum SPEED_TYPE] Speed type (0=Airspeed, 1=Ground Speed)|Speed (m/s, -1 indicates no change)|[%] Throttle ( Percent, -1 indicates no change)|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_SET_HOME = 179 # Changes the home location either to the current location or a specified location. |Use current (1=use current location, 0=use specified location)|Unused|Unused|Unused|Latitude|Longitude|Altitude| +uint16 VEHICLE_CMD_DO_SET_PARAMETER = 180 # Set a system parameter. Caution! Use of this command requires knowledge of the numeric enumeration value of the parameter. |Parameter number|Parameter value|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_SET_RELAY = 181 # Set a relay to a condition. |Relay number|Setting (1=on, 0=off, others possible depending on system hardware)|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_REPEAT_RELAY = 182 # Cycle a relay on and off for a desired number of cycles with a desired period. |Relay number|Cycle count|[s] Cycle time (decimal seconds)|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_REPEAT_SERVO = 184 # Cycle a between its nominal setting and a desired PWM for a desired number of cycles with a desired period. |Servo number|[us] PWM rate (1000 to 2000 typical)|Cycle count|[s] Cycle time|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_FLIGHTTERMINATION = 185 # Terminate flight immediately. |Flight termination activated if > 0.5|Unused|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_CHANGE_ALTITUDE = 186 # Set the vehicle to Loiter mode and change the altitude to specified value. |Altitude|Frame of new altitude|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_SET_ACTUATOR = 187 # Sets actuators (e.g. servos) to a desired value. |Actuator 1|Actuator 2|Actuator 3|Actuator 4|Actuator 5|Actuator 6|Index| +uint16 VEHICLE_CMD_DO_LAND_START = 189 # Mission command to perform a landing. This is used as a marker in a mission to tell the autopilot where a sequence of mission items that represents a landing starts. It may also be sent via a COMMAND_LONG to trigger a landing, in which case the nearest (geographically) landing sequence in the mission will be used. The Latitude/Longitude is optional, and may be set to 0/0 if not needed. If specified then it will be used to help find the closest landing sequence. |Unused|Unused|Unused|Unused|Latitude|Longitude|Unused| +uint16 VEHICLE_CMD_DO_GO_AROUND = 191 # Mission command to safely abort an autonomous landing. |[m] Altitude|Unused|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_REPOSITION = 192 # Reposition to specific WGS84 GPS position. |[m/s] Ground speed|Bitmask|[m] Loiter radius for planes|[deg] Yaw|Latitude|Longitude|Altitude| uint16 VEHICLE_CMD_DO_PAUSE_CONTINUE = 193 -uint16 VEHICLE_CMD_DO_SET_ROI_LOCATION = 195 # Sets the region of interest (ROI) to a location. This can then be used by the vehicles control system to control the vehicle attitude and the attitude of various sensors such as cameras. |Empty| Empty| Empty| Empty| Latitude| Longitude| Altitude| -uint16 VEHICLE_CMD_DO_SET_ROI_WPNEXT_OFFSET = 196 # Sets the region of interest (ROI) to be toward next waypoint, with optional pitch/roll/yaw offset. This can then be used by the vehicles control system to control the vehicle attitude and the attitude of various sensors such as cameras. |Empty| Empty| Empty| Empty| pitch offset from next waypoint| roll offset from next waypoint| yaw offset from next waypoint| -uint16 VEHICLE_CMD_DO_SET_ROI_NONE = 197 # Cancels any previous ROI command returning the vehicle/sensors to default flight characteristics. This can then be used by the vehicles control system to control the vehicle attitude and the attitude of various sensors such as cameras. |Empty| Empty| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_CONTROL_VIDEO = 200 # Control onboard camera system. |Camera ID (-1 for all)| Transmission: 0: disabled, 1: enabled compressed, 2: enabled raw| Transmission mode: 0: video stream, >0: single images every n seconds (decimal)| Recording: 0: disabled, 1: enabled compressed, 2: enabled raw| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_SET_ROI = 201 # Sets the region of interest (ROI) for a sensor set or the vehicle itself. This can then be used by the vehicles control system to control the vehicle attitude and the attitude of various sensors such as cameras. |Region of interest mode. (see MAV_ROI enum)| MISSION index/ target ID. (see MAV_ROI enum)| ROI index (allows a vehicle to manage multiple ROI's)| Empty| x the location of the fixed ROI (see MAV_FRAME)| y| z| +uint16 VEHICLE_CMD_DO_SET_ROI_LOCATION = 195 # Sets the region of interest (ROI) to a location. This can then be used by the vehicles control system to control the vehicle attitude and the attitude of various sensors such as cameras. |Unused|Unused|Unused|Unused|Latitude|Longitude|Altitude| +uint16 VEHICLE_CMD_DO_SET_ROI_WPNEXT_OFFSET = 196 # Sets the region of interest (ROI) to be toward next waypoint, with optional pitch/roll/yaw offset. This can then be used by the vehicles control system to control the vehicle attitude and the attitude of various sensors such as cameras. |Unused|Unused|Unused|Unused|Pitch offset from next waypoint|Roll offset from next waypoint|Yaw offset from next waypoint| +uint16 VEHICLE_CMD_DO_SET_ROI_NONE = 197 # Cancels any previous ROI command returning the vehicle/sensors to default flight characteristics. This can then be used by the vehicles control system to control the vehicle attitude and the attitude of various sensors such as cameras. |Unused|Unused|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_CONTROL_VIDEO = 200 # Control onboard camera system. |Camera ID (-1 for all)|Transmission: 0: disabled, 1: enabled compressed, 2: enabled raw|Transmission mode: 0: video stream, >0: single images every n seconds (decimal seconds)|Recording: 0: disabled, 1: enabled compressed, 2: enabled raw|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_SET_ROI = 201 # Sets the region of interest (ROI) for a sensor set or the vehicle itself. This can then be used by the vehicles control system to control the vehicle attitude and the attitude of various sensors such as cameras. |[@enum VEHICLE_ROI] Region of interest mode.|MISSION index/ target ID.|ROI index (allows a vehicle to manage multiple ROI's)|Unused|x the location of the fixed ROI (see MAV_FRAME)|y|z| uint16 VEHICLE_CMD_DO_DIGICAM_CONTROL=203 -uint16 VEHICLE_CMD_DO_MOUNT_CONFIGURE=204 # Mission command to configure a camera or antenna mount |Mount operation mode (see MAV_MOUNT_MODE enum)| stabilize roll? (1 = yes, 0 = no)| stabilize pitch? (1 = yes, 0 = no)| stabilize yaw? (1 = yes, 0 = no)| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_MOUNT_CONTROL=205 # Mission command to control a camera or antenna mount |pitch or lat in degrees, depending on mount mode.| roll or lon in degrees depending on mount mode| yaw or alt (in meters) depending on mount mode| reserved| reserved| reserved| MAV_MOUNT_MODE enum value| -uint16 VEHICLE_CMD_DO_SET_CAM_TRIGG_DIST=206 # Mission command to set TRIG_DIST for this flight |Camera trigger distance (meters)| Shutter integration time (ms)| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_FENCE_ENABLE=207 # Mission command to enable the geofence |enable? (0=disable, 1=enable)| Empty| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_PARACHUTE=208 # Mission command to trigger a parachute |action (0=disable, 1=enable, 2=release, for some systems see PARACHUTE_ACTION enum, not in general message set.)| Empty| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_MOTOR_TEST=209 # motor test command |Instance (1, ...)| throttle type| throttle| timeout [s]| Motor count | Test order| Empty| -uint16 VEHICLE_CMD_DO_INVERTED_FLIGHT=210 # Change to/from inverted flight |inverted (0=normal, 1=inverted)| Empty| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_GRIPPER = 211 # Command to operate a gripper -uint16 VEHICLE_CMD_DO_SET_CAM_TRIGG_INTERVAL=214 # Mission command to set TRIG_INTERVAL for this flight |Camera trigger distance (meters)| Shutter integration time (ms)| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_MOUNT_CONTROL_QUAT=220 # Mission command to control a camera or antenna mount, using a quaternion as reference. |q1 - quaternion param #1, w (1 in null-rotation)| q2 - quaternion param #2, x (0 in null-rotation)| q3 - quaternion param #3, y (0 in null-rotation)| q4 - quaternion param #4, z (0 in null-rotation)| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_GUIDED_MASTER=221 # set id of master controller |System ID| Component ID| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_GUIDED_LIMITS=222 # set limits for external control |timeout - maximum time (in seconds) that external controller will be allowed to control vehicle. 0 means no timeout| absolute altitude min (in meters, AMSL) - if vehicle moves below this alt, the command will be aborted and the mission will continue. 0 means no lower altitude limit| absolute altitude max (in meters)- if vehicle moves above this alt, the command will be aborted and the mission will continue. 0 means no upper altitude limit| horizontal move limit (in meters, AMSL) - if vehicle moves more than this distance from it's location at the moment the command was executed, the command will be aborted and the mission will continue. 0 means no horizontal altitude limit| Empty| Empty| Empty| -uint16 VEHICLE_CMD_DO_LAST = 240 # NOP - This command is only used to mark the upper limit of the DO commands in the enumeration |Empty| Empty| Empty| Empty| Empty| Empty| Empty| -uint16 VEHICLE_CMD_PREFLIGHT_CALIBRATION = 241 # Trigger calibration. This command will be only accepted if in pre-flight mode. See mavlink spec MAV_CMD_PREFLIGHT_CALIBRATION -uint16 PREFLIGHT_CALIBRATION_TEMPERATURE_CALIBRATION = 3# param value for VEHICLE_CMD_PREFLIGHT_CALIBRATION to start temperature calibration -uint16 VEHICLE_CMD_PREFLIGHT_SET_SENSOR_OFFSETS = 242 # Set sensor offsets. This command will be only accepted if in pre-flight mode. |Sensor to adjust the offsets for: 0: gyros, 1: accelerometer, 2: magnetometer, 3: barometer, 4: optical flow| X axis offset (or generic dimension 1), in the sensor's raw units| Y axis offset (or generic dimension 2), in the sensor's raw units| Z axis offset (or generic dimension 3), in the sensor's raw units| Generic dimension 4, in the sensor's raw units| Generic dimension 5, in the sensor's raw units| Generic dimension 6, in the sensor's raw units| -uint16 VEHICLE_CMD_PREFLIGHT_UAVCAN = 243 # UAVCAN configuration. If param 1 == 1 actuator mapping and direction assignment should be started -uint16 VEHICLE_CMD_PREFLIGHT_STORAGE = 245 # Request storage of different parameter values and logs. This command will be only accepted if in pre-flight mode. |Parameter storage: 0: READ FROM FLASH/EEPROM, 1: WRITE CURRENT TO FLASH/EEPROM| Mission storage: 0: READ FROM FLASH/EEPROM, 1: WRITE CURRENT TO FLASH/EEPROM| Reserved| Reserved| Empty| Empty| Empty| -uint16 VEHICLE_CMD_PREFLIGHT_REBOOT_SHUTDOWN = 246 # Request the reboot or shutdown of system components. |0: Do nothing for autopilot, 1: Reboot autopilot, 2: Shutdown autopilot.| 0: Do nothing for onboard computer, 1: Reboot onboard computer, 2: Shutdown onboard computer.| Reserved| Reserved| Empty| Empty| Empty| -uint16 VEHICLE_CMD_OBLIQUE_SURVEY=260 # Mission command to set a Camera Auto Mount Pivoting Oblique Survey for this flight|Camera trigger distance (meters)| Shutter integration time (ms)| Camera minimum trigger interval| Number of positions| Roll| Pitch| Empty| -uint16 VEHICLE_CMD_DO_SET_STANDARD_MODE=262 # Enable the specified standard MAVLink mode |MAV_STANDARD_MODE| -uint16 VEHICLE_CMD_GIMBAL_DEVICE_INFORMATION = 283 # Command to ask information about a low level gimbal +uint16 VEHICLE_CMD_DO_MOUNT_CONFIGURE=204 # Mission command to configure a camera or antenna mount. |[@enum MAV_MOUNT_MODE] Mount operation mode|Stabilize roll? (1 = yes, 0 = no)|Stabilize pitch? (1 = yes, 0 = no)|stabilize yaw? (1 = yes, 0 = no)|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_MOUNT_CONTROL=205 # Mission command to control a camera or antenna mount. |[deg] Pitch or lat, depending on mount mode.|[deg] Roll or lon depending on mount mode|[deg]/[m] Yaw or alt depending on mount mode|Unused|Unused|Unused|[@enum MAV_MOUNT_MODE]| +uint16 VEHICLE_CMD_DO_SET_CAM_TRIGG_DIST=206 # Mission command to set TRIG_DIST for this flight. |[m] Camera trigger distance|[ms] Shutter integration time|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_FENCE_ENABLE=207 # Mission command to enable the geofence. |enable? (0=disable, 1=enable)|Unused|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_PARACHUTE=208 # Mission command to trigger a parachute. |action [@enum PARACHUTE_ACTION] (0=disable, 1=enable, 2=release, for some systems see [@enum PARACHUTE_ACTION], not in general message set.)|Unused|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_MOTOR_TEST=209 # Motor test command. |Instance (@range 1, )|throttle type|throttle|timeout [s]|Motor count|Test order|Unused| +uint16 VEHICLE_CMD_DO_INVERTED_FLIGHT=210 # Change to/from inverted flight. |inverted (0=normal, 1=inverted)|Unused|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_GRIPPER = 211 # Command to operate a gripper. +uint16 VEHICLE_CMD_DO_SET_CAM_TRIGG_INTERVAL=214 # Mission command to set TRIG_INTERVAL for this flight. |[m] Camera trigger distance|Shutter integration time (ms)|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_MOUNT_CONTROL_QUAT=220 # Mission command to control a camera or antenna mount, using a quaternion as reference. |q1 - quaternion param #1, w (1 in null-rotation)|q2 - quaternion param #2, x (0 in null-rotation)|q3 - quaternion param #3, y (0 in null-rotation)|q4 - quaternion param #4, z (0 in null-rotation)|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_GUIDED_MASTER=221 # Set id of master controller. |System ID|Component ID|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_GUIDED_LIMITS=222 # Set limits for external control. |[s] Timeout - maximum time that external controller will be allowed to control vehicle. 0 means no timeout|[m] Absolute altitude min(AMSL) - if vehicle moves below this alt, the command will be aborted and the mission will continue. 0 means no lower altitude limit|[m] Absolute altitude max - if vehicle moves above this alt, the command will be aborted and the mission will continue. 0 means no upper altitude limit|[m] Horizontal move limit (AMSL) - if vehicle moves more than this distance from it's location at the moment the command was executed, the command will be aborted and the mission will continue. 0 means no horizontal altitude limit|Unused|Unused|Unused| +uint16 VEHICLE_CMD_DO_LAST = 240 # NOP - This command is only used to mark the upper limit of the DO commands in the enumeration. |Unused|Unused|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_PREFLIGHT_CALIBRATION = 241 # Trigger calibration. This command will be only accepted if in pre-flight mode. See MAVLink spec MAV_CMD_PREFLIGHT_CALIBRATION. +uint16 PREFLIGHT_CALIBRATION_TEMPERATURE_CALIBRATION = 3# Param value for VEHICLE_CMD_PREFLIGHT_CALIBRATION to start temperature calibration. +uint16 VEHICLE_CMD_PREFLIGHT_SET_SENSOR_OFFSETS = 242 # Set sensor offsets. This command will be only accepted if in pre-flight mode. |Sensor to adjust the offsets for: 0: gyros, 1: accelerometer, 2: magnetometer, 3: barometer, 4: optical flow|X axis offset (or generic dimension 1), in the sensor's raw units|Y axis offset (or generic dimension 2), in the sensor's raw units|Z axis offset (or generic dimension 3), in the sensor's raw units|Generic dimension 4, in the sensor's raw units|Generic dimension 5, in the sensor's raw units|Generic dimension 6, in the sensor's raw units| +uint16 VEHICLE_CMD_PREFLIGHT_UAVCAN = 243 # UAVCAN configuration. If param 1 == 1 actuator mapping and direction assignment should be started. +uint16 VEHICLE_CMD_PREFLIGHT_STORAGE = 245 # Request storage of different parameter values and logs. This command will be only accepted if in pre-flight mode. |Parameter storage: 0: READ FROM FLASH/EEPROM, 1: WRITE CURRENT TO FLASH/EEPROM|Mission storage: 0: READ FROM FLASH/EEPROM, 1: WRITE CURRENT TO FLASH/EEPROM|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_PREFLIGHT_REBOOT_SHUTDOWN = 246 # Request the reboot or shutdown of system components. |0: Do nothing for autopilot, 1: Reboot autopilot, 2: Shutdown autopilot.|0: Do nothing for onboard computer, 1: Reboot onboard computer, 2: Shutdown onboard computer.|Unused|Unused|Unused|Unused|Unused| +uint16 VEHICLE_CMD_OBLIQUE_SURVEY=260 # Mission command to set a Camera Auto Mount Pivoting Oblique Survey for this flight. |[m] Camera trigger distance|[ms] Shutter integration time|Camera minimum trigger interval|Number of positions|Roll|Pitch|Unused| +uint16 VEHICLE_CMD_DO_SET_STANDARD_MODE=262 # Enable the specified standard MAVLink mode. |MAV_STANDARD_MODE| +uint16 VEHICLE_CMD_GIMBAL_DEVICE_INFORMATION = 283 # Command to ask information about a low level gimbal. -uint16 VEHICLE_CMD_MISSION_START = 300 # start running a mission |first_item: the first mission item to run| last_item: the last mission item to run (after this item is run, the mission ends)| -uint16 VEHICLE_CMD_ACTUATOR_TEST = 310 # Actuator testing command|value [-1,1]|timeout [s]|Empty|Empty|output function| -uint16 VEHICLE_CMD_CONFIGURE_ACTUATOR = 311 # Actuator configuration command|configuration|Empty|Empty|Empty|output function| -uint16 VEHICLE_CMD_COMPONENT_ARM_DISARM = 400 # Arms / Disarms a component |1 to arm, 0 to disarm -uint16 VEHICLE_CMD_RUN_PREARM_CHECKS = 401 # Instructs a target system to run pre-arm checks. -uint16 VEHICLE_CMD_INJECT_FAILURE = 420 # Inject artificial failure for testing purposes -uint16 VEHICLE_CMD_START_RX_PAIR = 500 # Starts receiver pairing |0:Spektrum| 0:Spektrum DSM2, 1:Spektrum DSMX| -uint16 VEHICLE_CMD_REQUEST_MESSAGE = 512 # Request to send a single instance of the specified message -uint16 VEHICLE_CMD_REQUEST_CAMERA_INFORMATION = 521 # Request camera information (CAMERA_INFORMATION). |0: No action 1: Request camera capabilities| Reserved (all remaining params)| Reserved (default:0)| Reserved (default:0)| Reserved (default:0)| Reserved (default:0)| Reserved (default:0)| -uint16 VEHICLE_CMD_SET_CAMERA_MODE = 530 # Set camera capture mode (photo, video, etc.) -uint16 VEHICLE_CMD_SET_CAMERA_ZOOM = 531 # Set camera zoom +uint16 VEHICLE_CMD_MISSION_START = 300 # Start running a mission. |first_item: the first mission item to run|last_item: the last mission item to run (after this item is run, the mission ends)| +uint16 VEHICLE_CMD_ACTUATOR_TEST = 310 # Actuator testing command. |[@range -1,1] value|[s] timeout|Unused|Unused|output function| +uint16 VEHICLE_CMD_CONFIGURE_ACTUATOR = 311 # Actuator configuration command. |configuration|Unused|Unused|Unused|output function| +uint16 VEHICLE_CMD_COMPONENT_ARM_DISARM = 400 # Arms / Disarms a component. |1 to arm, 0 to disarm. +uint16 VEHICLE_CMD_RUN_PREARM_CHECKS = 401 # Instructs a target system to run pre-arm checks. +uint16 VEHICLE_CMD_INJECT_FAILURE = 420 # Inject artificial failure for testing purposes. +uint16 VEHICLE_CMD_START_RX_PAIR = 500 # Starts receiver pairing. |0:Spektrum|0:Spektrum DSM2, 1:Spektrum DSMX| +uint16 VEHICLE_CMD_REQUEST_MESSAGE = 512 # Request to send a single instance of the specified message. +uint16 VEHICLE_CMD_REQUEST_CAMERA_INFORMATION = 521 # Request camera information (CAMERA_INFORMATION). |0: No action 1: Request camera capabilities|Reserved (all remaining params)|Reserved (default:0)|Reserved (default:0)|Reserved (default:0)|Reserved (default:0)|Reserved (default:0)| +uint16 VEHICLE_CMD_SET_CAMERA_MODE = 530 # Set camera capture mode (photo, video, etc.). +uint16 VEHICLE_CMD_SET_CAMERA_ZOOM = 531 # Set camera zoom. uint16 VEHICLE_CMD_SET_CAMERA_FOCUS = 532 -uint16 VEHICLE_CMD_DO_GIMBAL_MANAGER_PITCHYAW = 1000 # Setpoint to be sent to a gimbal manager to set a gimbal pitch and yaw -uint16 VEHICLE_CMD_DO_GIMBAL_MANAGER_CONFIGURE = 1001 # Gimbal configuration to set which sysid/compid is in primary and secondary control -uint16 VEHICLE_CMD_IMAGE_START_CAPTURE = 2000 # Start image capture sequence. -uint16 VEHICLE_CMD_DO_TRIGGER_CONTROL = 2003 # Enable or disable on-board camera triggering system -uint16 VEHICLE_CMD_VIDEO_START_CAPTURE = 2500 # Start a video capture. -uint16 VEHICLE_CMD_VIDEO_STOP_CAPTURE = 2501 # Stop the current video capture. -uint16 VEHICLE_CMD_LOGGING_START = 2510 # start streaming ULog data -uint16 VEHICLE_CMD_LOGGING_STOP = 2511 # stop streaming ULog data -uint16 VEHICLE_CMD_CONTROL_HIGH_LATENCY = 2600 # control starting/stopping transmitting data over the high latency link -uint16 VEHICLE_CMD_DO_VTOL_TRANSITION = 3000 # Command VTOL transition -uint16 VEHICLE_CMD_ARM_AUTHORIZATION_REQUEST = 3001 # Request arm authorization -uint16 VEHICLE_CMD_PAYLOAD_PREPARE_DEPLOY = 30001 # Prepare a payload deployment in the flight plan -uint16 VEHICLE_CMD_PAYLOAD_CONTROL_DEPLOY = 30002 # Control a pre-programmed payload deployment -uint16 VEHICLE_CMD_FIXED_MAG_CAL_YAW = 42006 # Magnetometer calibration based on provided known yaw. This allows for fast calibration using WMM field tables in the vehicle, given only the known yaw of the vehicle. If Latitude and longitude are both zero then use the current vehicle location. -uint16 VEHICLE_CMD_DO_WINCH = 42600 # Command to operate winch. +uint16 VEHICLE_CMD_DO_GIMBAL_MANAGER_PITCHYAW = 1000 # Setpoint to be sent to a gimbal manager to set a gimbal pitch and yaw. +uint16 VEHICLE_CMD_DO_GIMBAL_MANAGER_CONFIGURE = 1001 # Gimbal configuration to set which sysid/compid is in primary and secondary control. +uint16 VEHICLE_CMD_IMAGE_START_CAPTURE = 2000 # Start image capture sequence. +uint16 VEHICLE_CMD_DO_TRIGGER_CONTROL = 2003 # Enable or disable on-board camera triggering system. +uint16 VEHICLE_CMD_VIDEO_START_CAPTURE = 2500 # Start a video capture. +uint16 VEHICLE_CMD_VIDEO_STOP_CAPTURE = 2501 # Stop the current video capture. +uint16 VEHICLE_CMD_LOGGING_START = 2510 # Start streaming ULog data. +uint16 VEHICLE_CMD_LOGGING_STOP = 2511 # Stop streaming ULog data. +uint16 VEHICLE_CMD_CONTROL_HIGH_LATENCY = 2600 # Control starting/stopping transmitting data over the high latency link. +uint16 VEHICLE_CMD_DO_VTOL_TRANSITION = 3000 # Command VTOL transition. +uint16 VEHICLE_CMD_ARM_AUTHORIZATION_REQUEST = 3001 # Request arm authorization. +uint16 VEHICLE_CMD_PAYLOAD_PREPARE_DEPLOY = 30001 # Prepare a payload deployment in the flight plan. +uint16 VEHICLE_CMD_PAYLOAD_CONTROL_DEPLOY = 30002 # Control a pre-programmed payload deployment. +uint16 VEHICLE_CMD_FIXED_MAG_CAL_YAW = 42006 # Magnetometer calibration based on provided known yaw. This allows for fast calibration using WMM field tables in the vehicle, given only the known yaw of the vehicle. If Latitude and longitude are both zero then use the current vehicle location. +uint16 VEHICLE_CMD_DO_WINCH = 42600 # Command to operate winch. -uint16 VEHICLE_CMD_EXTERNAL_POSITION_ESTIMATE = 43003 # external reset of estimator global position when deadreckoning +uint16 VEHICLE_CMD_EXTERNAL_POSITION_ESTIMATE = 43003 # External reset of estimator global position when dead reckoning. uint16 VEHICLE_CMD_EXTERNAL_WIND_ESTIMATE = 43004 -# PX4 vehicle commands (beyond 16 bit mavlink commands) -uint32 VEHICLE_CMD_PX4_INTERNAL_START = 65537 # start of PX4 internal only vehicle commands (> UINT16_MAX) -uint32 VEHICLE_CMD_SET_GPS_GLOBAL_ORIGIN = 100000 # Sets the GPS coordinates of the vehicle local origin (0,0,0) position. |Empty|Empty|Empty|Empty|Latitude|Longitude|Altitude| -uint32 VEHICLE_CMD_SET_NAV_STATE = 100001 # Change mode by specifying nav_state directly. |nav_state|Empty|Empty|Empty|Empty|Empty|Empty| +# PX4 vehicle commands (beyond 16 bit MAVLink commands). +uint32 VEHICLE_CMD_PX4_INTERNAL_START = 65537 # Start of PX4 internal only vehicle commands (> UINT16_MAX). +uint32 VEHICLE_CMD_SET_GPS_GLOBAL_ORIGIN = 100000 # Sets the GPS coordinates of the vehicle local origin (0,0,0) position. |Unused|Unused|Unused|Unused|Latitude (WGS-84)|Longitude (WGS-84)|[m] Altitude (AMSL from GNSS, positive above ground)| +uint32 VEHICLE_CMD_SET_NAV_STATE = 100001 # Change mode by specifying nav_state directly. |nav_state|Unused|Unused|Unused|Unused|Unused|Unused| -uint8 VEHICLE_MOUNT_MODE_RETRACT = 0 # Load and keep safe position (Roll,Pitch,Yaw) from permanent memory and stop stabilization | -uint8 VEHICLE_MOUNT_MODE_NEUTRAL = 1 # Load and keep neutral position (Roll,Pitch,Yaw) from permanent memory. | -uint8 VEHICLE_MOUNT_MODE_MAVLINK_TARGETING = 2 # Load neutral position and start MAVLink Roll,Pitch,Yaw control with stabilization | -uint8 VEHICLE_MOUNT_MODE_RC_TARGETING = 3 # Load neutral position and start RC Roll,Pitch,Yaw control with stabilization | -uint8 VEHICLE_MOUNT_MODE_GPS_POINT = 4 # Load neutral position and start to point to Lat,Lon,Alt | -uint8 VEHICLE_MOUNT_MODE_ENUM_END = 5 # +uint8 VEHICLE_MOUNT_MODE_RETRACT = 0 # Load and keep safe position (Roll,Pitch,Yaw) from permanent memory and stop stabilization. +uint8 VEHICLE_MOUNT_MODE_NEUTRAL = 1 # Load and keep neutral position (Roll,Pitch,Yaw) from permanent memory. +uint8 VEHICLE_MOUNT_MODE_MAVLINK_TARGETING = 2 # Load neutral position and start MAVLink Roll,Pitch,Yaw control with stabilization. +uint8 VEHICLE_MOUNT_MODE_RC_TARGETING = 3 # Load neutral position and start RC Roll,Pitch,Yaw control with stabilization. +uint8 VEHICLE_MOUNT_MODE_GPS_POINT = 4 # Load neutral position and start to point to Lat,Lon,Alt. +uint8 VEHICLE_MOUNT_MODE_ENUM_END = 5 # -uint8 VEHICLE_ROI_NONE = 0 # No region of interest | -uint8 VEHICLE_ROI_WPNEXT = 1 # Point toward next MISSION | -uint8 VEHICLE_ROI_WPINDEX = 2 # Point toward given MISSION | -uint8 VEHICLE_ROI_LOCATION = 3 # Point toward fixed location | -uint8 VEHICLE_ROI_TARGET = 4 # Point toward target +uint8 VEHICLE_ROI_NONE = 0 # No region of interest. +uint8 VEHICLE_ROI_WPNEXT = 1 # Point toward next MISSION. +uint8 VEHICLE_ROI_WPINDEX = 2 # Point toward given MISSION. +uint8 VEHICLE_ROI_LOCATION = 3 # Point toward fixed location. +uint8 VEHICLE_ROI_TARGET = 4 # Point toward target. uint8 VEHICLE_ROI_ENUM_END = 5 uint8 PARACHUTE_ACTION_DISABLE = 0 @@ -163,13 +163,13 @@ uint8 FAILURE_TYPE_SLOW = 5 uint8 FAILURE_TYPE_DELAYED = 6 uint8 FAILURE_TYPE_INTERMITTENT = 7 -# used as param1 in DO_CHANGE_SPEED command +# Used as param1 in DO_CHANGE_SPEED command. uint8 SPEED_TYPE_AIRSPEED = 0 uint8 SPEED_TYPE_GROUNDSPEED = 1 uint8 SPEED_TYPE_CLIMB_SPEED = 2 uint8 SPEED_TYPE_DESCEND_SPEED = 3 -# used as param3 in CMD_DO_ORBIT +# Used as param3 in CMD_DO_ORBIT. uint8 ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TO_CIRCLE_CENTER = 0 uint8 ORBIT_YAW_BEHAVIOUR_HOLD_INITIAL_HEADING = 1 uint8 ORBIT_YAW_BEHAVIOUR_UNCONTROLLED = 2 @@ -177,29 +177,29 @@ uint8 ORBIT_YAW_BEHAVIOUR_HOLD_FRONT_TANGENT_TO_CIRCLE = 3 uint8 ORBIT_YAW_BEHAVIOUR_RC_CONTROLLED = 4 uint8 ORBIT_YAW_BEHAVIOUR_UNCHANGED = 5 -# used as param1 in ARM_DISARM command +# Used as param1 in ARM_DISARM command. int8 ARMING_ACTION_DISARM = 0 int8 ARMING_ACTION_ARM = 1 -# param2 in VEHICLE_CMD_DO_GRIPPER +# param2 in VEHICLE_CMD_DO_GRIPPER. uint8 GRIPPER_ACTION_RELEASE = 0 uint8 GRIPPER_ACTION_GRAB = 1 uint8 ORB_QUEUE_LENGTH = 8 -float32 param1 # Parameter 1, as defined by MAVLink uint16 VEHICLE_CMD enum. -float32 param2 # Parameter 2, as defined by MAVLink uint16 VEHICLE_CMD enum. -float32 param3 # Parameter 3, as defined by MAVLink uint16 VEHICLE_CMD enum. -float32 param4 # Parameter 4, as defined by MAVLink uint16 VEHICLE_CMD enum. -float64 param5 # Parameter 5, as defined by MAVLink uint16 VEHICLE_CMD enum. -float64 param6 # Parameter 6, as defined by MAVLink uint16 VEHICLE_CMD enum. -float32 param7 # Parameter 7, as defined by MAVLink uint16 VEHICLE_CMD enum. -uint32 command # Command ID -uint8 target_system # System which should execute the command -uint8 target_component # Component which should execute the command, 0 for all components -uint8 source_system # System sending the command -uint16 source_component # Component / mode executor sending the command -uint8 confirmation # 0: First transmission of this command. 1-255: Confirmation transmissions (e.g. for kill command) +float32 param1 # Parameter 1, as defined by MAVLink uint16 VEHICLE_CMD enum. +float32 param2 # Parameter 2, as defined by MAVLink uint16 VEHICLE_CMD enum. +float32 param3 # Parameter 3, as defined by MAVLink uint16 VEHICLE_CMD enum. +float32 param4 # Parameter 4, as defined by MAVLink uint16 VEHICLE_CMD enum. +float64 param5 # Parameter 5, as defined by MAVLink uint16 VEHICLE_CMD enum. +float64 param6 # Parameter 6, as defined by MAVLink uint16 VEHICLE_CMD enum. +float32 param7 # Parameter 7, as defined by MAVLink uint16 VEHICLE_CMD enum. +uint32 command # Command ID. +uint8 target_system # System which should execute the command. +uint8 target_component # Component which should execute the command, 0 for all components. +uint8 source_system # System sending the command. +uint16 source_component # Component / mode executor sending the command. +uint8 confirmation # 0: First transmission of this command. 1-255: Confirmation transmissions (e.g. for kill command). bool from_external uint16 COMPONENT_MODE_EXECUTOR_START = 1000 diff --git a/docs/en/msg_docs/index.md b/docs/en/msg_docs/index.md index fdfe25731b..0904013766 100644 --- a/docs/en/msg_docs/index.md +++ b/docs/en/msg_docs/index.md @@ -15,10 +15,18 @@ Graphs showing how these are used [can be found here](../middleware/uorb_graph.m - [ActuatorMotors](ActuatorMotors.md) — Motor control message - [ActuatorServos](ActuatorServos.md) — Servo control message +- [AirspeedValidated](AirspeedValidated.md) - [ArmingCheckReply](ArmingCheckReply.md) - [ArmingCheckRequest](ArmingCheckRequest.md) - [BatteryStatus](BatteryStatus.md) - [ConfigOverrides](ConfigOverrides.md) — Configurable overrides by (external) modes or mode executors +- [FixedWingLateralSetpoint](FixedWingLateralSetpoint.md) — Fixed Wing Lateral Setpoint message +Used by the fw_lateral_longitudinal_control module +At least one of course, airspeed_direction, or lateral_acceleration must be finite. +- [FixedWingLongitudinalSetpoint](FixedWingLongitudinalSetpoint.md) — Fixed Wing Longitudinal Setpoint message +Used by the fw_lateral_longitudinal_control module +If pitch_direct and throttle_direct are not both finite, then the controller relies on altitude/height_rate and equivalent_airspeed to control vertical motion. +If both altitude and height_rate are NAN, the controller maintains the current altitude. - [GotoSetpoint](GotoSetpoint.md) — Position and (optional) heading setpoints with corresponding speed constraints Setpoints are intended as inputs to position and heading smoothers, respectively Setpoints do not need to be kinematically consistent @@ -26,6 +34,11 @@ Optional heading setpoints may be specified as controlled by the respective flag Unset optional setpoints are not controlled Unset optional constraints default to vehicle specifications - [HomePosition](HomePosition.md) — GPS home position in WGS84 coordinates. +- [LateralControlConfiguration](LateralControlConfiguration.md) — Fixed Wing Lateral Control Configuration message +Used by the fw_lateral_longitudinal_control module to constrain FixedWingLateralSetpoint messages. +- [LongitudinalControlConfiguration](LongitudinalControlConfiguration.md) — Fixed Wing Longitudinal Control Configuration message +Used by the fw_lateral_longitudinal_control module and TECS to constrain FixedWingLongitudinalSetpoint messages +and configure the resultant setpoints. - [ManualControlSetpoint](ManualControlSetpoint.md) - [ModeCompleted](ModeCompleted.md) — Mode completion result, published by an active mode. The possible values of nav_state are defined in the VehicleStatus msg. @@ -72,7 +85,6 @@ The coordinate system origin is the vehicle position at the time when the EKF2-m - [ActuatorTest](ActuatorTest.md) - [AdcReport](AdcReport.md) - [Airspeed](Airspeed.md) -- [AirspeedValidated](AirspeedValidated.md) - [AirspeedWind](AirspeedWind.md) - [AutotuneAttitudeControlStatus](AutotuneAttitudeControlStatus.md) - [ButtonEvent](ButtonEvent.md) @@ -80,7 +92,7 @@ The coordinate system origin is the vehicle position at the time when the EKF2-m - [CameraStatus](CameraStatus.md) - [CameraTrigger](CameraTrigger.md) - [CanInterfaceStatus](CanInterfaceStatus.md) -- [CellularStatus](CellularStatus.md) +- [CellularStatus](CellularStatus.md) — Cellular status - [CollisionConstraints](CollisionConstraints.md) — Local setpoint constraints in NED frame setting something to NaN means that no limit is provided - [ControlAllocatorStatus](ControlAllocatorStatus.md) @@ -116,6 +128,11 @@ scale errors, in-run bias and thermal drift (if thermal compensation is enabled - [FailsafeFlags](FailsafeFlags.md) — Input flags for the failsafe state machine set by the arming & health checks. - [FailureDetectorStatus](FailureDetectorStatus.md) - [FigureEightStatus](FigureEightStatus.md) +- [FixedWingLateralGuidanceStatus](FixedWingLateralGuidanceStatus.md) — Fixed Wing Lateral Guidance Status message +Published by fw_pos_control module to report the resultant lateral setpoints and NPFG debug outputs +- [FixedWingLateralStatus](FixedWingLateralStatus.md) — Fixed Wing Lateral Status message +Published by the fw_lateral_longitudinal_control module to report the resultant lateral setpoint +- [FixedWingRunwayControl](FixedWingRunwayControl.md) — Auxiliary control fields for fixed-wing runway takeoff/landing - [FlightPhaseEstimation](FlightPhaseEstimation.md) - [FollowTarget](FollowTarget.md) - [FollowTargetEstimator](FollowTargetEstimator.md) @@ -170,7 +187,6 @@ These are the externally visible LED's, not the board LED's - [NavigatorStatus](NavigatorStatus.md) — Current status of a Navigator mode The possible values of nav_state are defined in the VehicleStatus msg. - [NormalizedUnsignedSetpoint](NormalizedUnsignedSetpoint.md) -- [NpfgStatus](NpfgStatus.md) - [ObstacleDistance](ObstacleDistance.md) — Obstacle distances in front of the sensor. - [OffboardControlMode](OffboardControlMode.md) — Off-board control mode - [OnboardComputerStatus](OnboardComputerStatus.md) — ONBOARD_COMPUTER_STATUS message data @@ -207,10 +223,12 @@ This are the three next waypoints (or just the next two or one). - [RcParameterMap](RcParameterMap.md) - [RoverAttitudeSetpoint](RoverAttitudeSetpoint.md) - [RoverAttitudeStatus](RoverAttitudeStatus.md) +- [RoverPositionSetpoint](RoverPositionSetpoint.md) - [RoverRateSetpoint](RoverRateSetpoint.md) - [RoverRateStatus](RoverRateStatus.md) - [RoverSteeringSetpoint](RoverSteeringSetpoint.md) - [RoverThrottleSetpoint](RoverThrottleSetpoint.md) +- [RoverVelocitySetpoint](RoverVelocitySetpoint.md) - [RoverVelocityStatus](RoverVelocityStatus.md) - [Rpm](Rpm.md) - [RtlStatus](RtlStatus.md) @@ -248,6 +266,8 @@ such as Pozyx or NXP Rddrone. - [TelemetryStatus](TelemetryStatus.md) - [TiltrotorExtraControls](TiltrotorExtraControls.md) - [TimesyncStatus](TimesyncStatus.md) +- [TrajectorySetpoint6dof](TrajectorySetpoint6dof.md) — Trajectory setpoint in NED frame +Input to position controller. - [TransponderReport](TransponderReport.md) - [TuneControl](TuneControl.md) — This message is used to control the tunes, when the tune_id is set to CUSTOM then the frequency, duration are used otherwise those values are ignored. @@ -277,6 +297,8 @@ NaN means the state was not controlled - [WheelEncoders](WheelEncoders.md) - [Wind](Wind.md) - [YawEstimatorStatus](YawEstimatorStatus.md) +- [AirspeedValidatedV0](AirspeedValidatedV0.md) +- [VehicleAttitudeSetpointV0](VehicleAttitudeSetpointV0.md) - [VehicleStatusV0](VehicleStatusV0.md) — Encodes the system state of the vehicle published by commander \ No newline at end of file diff --git a/docs/en/telemetry/crsf_telemetry.md b/docs/en/telemetry/crsf_telemetry.md index a691778921..98f1e4507e 100644 --- a/docs/en/telemetry/crsf_telemetry.md +++ b/docs/en/telemetry/crsf_telemetry.md @@ -71,7 +71,7 @@ For ExpressLRS receivers wire to the flight controller UART as shown below (wiri ### Firmware Configuration/Build CRSF telemetry support is not included in any PX4 firmware by default. -To use this feature you must build and upload custom firmware that includes [crsf-rc](../modules/modules_driver.md#crsf-rc) and removes [rc_input](../modules/modules_driver.md#rc-input). +To use this feature you must build and upload custom firmware that includes [crsf-rc](../modules/modules_driver_radio_control.md#crsf-rc) and removes [rc_input](../modules/modules_driver_radio_control.md#rc-input). The steps are: diff --git a/docs/en/tutorials/linux_sbus.md b/docs/en/tutorials/linux_sbus.md index 0569f7111e..6df65ca508 100644 --- a/docs/en/tutorials/linux_sbus.md +++ b/docs/en/tutorials/linux_sbus.md @@ -10,9 +10,7 @@ For an S.Bus receiver (or encoder - e.g. from Futaba, RadioLink, etc.) you will Then [Start the PX4 RC Driver](#start_driver) on the device, as shown below. - - -## Starting the Driver +## Starting the Driver {#start_driver} To start the RC driver on a particular UART (e.g. in this case `/dev/ttyS2`): @@ -20,11 +18,9 @@ To start the RC driver on a particular UART (e.g. in this case `/dev/ttyS2`): rc_input start -d /dev/ttyS2 ``` -For other driver usage information see: [rc_input](../modules/modules_driver.md#rc-input). +For other driver usage information see: [rc_input](../modules/modules_driver_radio_control.md#rc-input). - - -## Signal Inverter Circuit (S.Bus only) +## Signal Inverter Circuit (S.Bus only) {#signal_inverter_circuit} S.Bus is an _inverted_ UART communication signal. diff --git a/docs/public/config/failsafe/index.js b/docs/public/config/failsafe/index.js index b557d6fc05..5702f7fec6 100644 --- a/docs/public/config/failsafe/index.js +++ b/docs/public/config/failsafe/index.js @@ -1 +1 @@ -var Module=typeof Module!="undefined"?Module:{};var ENVIRONMENT_IS_WEB=typeof window=="object";var ENVIRONMENT_IS_WORKER=typeof WorkerGlobalScope!="undefined";var ENVIRONMENT_IS_NODE=typeof process=="object"&&process.versions?.node&&process.type!="renderer";if(ENVIRONMENT_IS_NODE){}var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var _scriptName=typeof document!="undefined"?document.currentScript?.src:undefined;if(typeof __filename!="undefined"){_scriptName=__filename}else if(ENVIRONMENT_IS_WORKER){_scriptName=self.location.href}var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var readAsync,readBinary;if(ENVIRONMENT_IS_NODE){var fs=require("fs");var nodePath=require("path");scriptDirectory=__dirname+"/";readBinary=filename=>{filename=isFileURI(filename)?new URL(filename):filename;var ret=fs.readFileSync(filename);return ret};readAsync=async(filename,binary=true)=>{filename=isFileURI(filename)?new URL(filename):filename;var ret=fs.readFileSync(filename,binary?undefined:"utf8");return ret};if(process.argv.length>1){thisProgram=process.argv[1].replace(/\\/g,"/")}arguments_=process.argv.slice(2);if(typeof module!="undefined"){module["exports"]=Module}quit_=(status,toThrow)=>{process.exitCode=status;throw toThrow}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){try{scriptDirectory=new URL(".",_scriptName).href}catch{}{if(ENVIRONMENT_IS_WORKER){readBinary=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=async url=>{if(isFileURI(url)){return new Promise((resolve,reject)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=()=>{if(xhr.status==200||xhr.status==0&&xhr.response){resolve(xhr.response);return}reject(xhr.status)};xhr.onerror=reject;xhr.send(null)})}var response=await fetch(url,{credentials:"same-origin"});if(response.ok){return response.arrayBuffer()}throw new Error(response.status+" : "+response.url)}}}else{}var out=console.log.bind(console);var err=console.error.bind(console);var wasmBinary;var wasmMemory;var ABORT=false;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAP64,HEAPU64,HEAPF64;var runtimeInitialized=false;var isFileURI=filename=>filename.startsWith("file://");function updateMemoryViews(){var b=wasmMemory.buffer;HEAP8=new Int8Array(b);HEAP16=new Int16Array(b);HEAPU8=new Uint8Array(b);HEAPU16=new Uint16Array(b);HEAP32=new Int32Array(b);HEAPU32=new Uint32Array(b);HEAPF32=new Float32Array(b);HEAPF64=new Float64Array(b);HEAP64=new BigInt64Array(b);HEAPU64=new BigUint64Array(b)}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(onPreRuns)}function initRuntime(){runtimeInitialized=true;wasmExports["v"]()}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(onPostRuns)}var runDependencies=0;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;Module["monitorRunDependencies"]?.(runDependencies)}function removeRunDependency(id){runDependencies--;Module["monitorRunDependencies"]?.(runDependencies);if(runDependencies==0){if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){Module["onAbort"]?.(what);what="Aborted("+what+")";err(what);ABORT=true;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);throw e}var wasmBinaryFile;function findWasmBinary(){return locateFile("index.wasm")}function getBinarySync(file){if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw"both async and sync fetching of the wasm failed"}async function getWasmBinary(binaryFile){if(!wasmBinary){try{var response=await readAsync(binaryFile);return new Uint8Array(response)}catch{}}return getBinarySync(binaryFile)}async function instantiateArrayBuffer(binaryFile,imports){try{var binary=await getWasmBinary(binaryFile);var instance=await WebAssembly.instantiate(binary,imports);return instance}catch(reason){err(`failed to asynchronously prepare wasm: ${reason}`);abort(reason)}}async function instantiateAsync(binary,binaryFile,imports){if(!binary&&typeof WebAssembly.instantiateStreaming=="function"&&!isFileURI(binaryFile)&&!ENVIRONMENT_IS_NODE){try{var response=fetch(binaryFile,{credentials:"same-origin"});var instantiationResult=await WebAssembly.instantiateStreaming(response,imports);return instantiationResult}catch(reason){err(`wasm streaming compile failed: ${reason}`);err("falling back to ArrayBuffer instantiation")}}return instantiateArrayBuffer(binaryFile,imports)}function getWasmImports(){return{a:wasmImports}}async function createWasm(){function receiveInstance(instance,module){wasmExports=instance.exports;wasmMemory=wasmExports["u"];updateMemoryViews();wasmTable=wasmExports["A"];removeRunDependency("wasm-instantiate");return wasmExports}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){return receiveInstance(result["instance"])}var info=getWasmImports();if(Module["instantiateWasm"]){return new Promise((resolve,reject)=>{Module["instantiateWasm"](info,(mod,inst)=>{resolve(receiveInstance(mod,inst))})})}wasmBinaryFile??=findWasmBinary();var result=await instantiateAsync(wasmBinary,wasmBinaryFile,info);var exports=receiveInstantiationResult(result);return exports}class ExitStatus{name="ExitStatus";constructor(status){this.message=`Program terminated with exit(${status})`;this.status=status}}var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};var onPostRuns=[];var addOnPostRun=cb=>onPostRuns.push(cb);var onPreRuns=[];var addOnPreRun=cb=>onPreRuns.push(cb);var noExitRuntime=true;class ExceptionInfo{constructor(excPtr){this.excPtr=excPtr;this.ptr=excPtr-24}set_type(type){HEAPU32[this.ptr+4>>2]=type}get_type(){return HEAPU32[this.ptr+4>>2]}set_destructor(destructor){HEAPU32[this.ptr+8>>2]=destructor}get_destructor(){return HEAPU32[this.ptr+8>>2]}set_caught(caught){caught=caught?1:0;HEAP8[this.ptr+12]=caught}get_caught(){return HEAP8[this.ptr+12]!=0}set_rethrown(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13]=rethrown}get_rethrown(){return HEAP8[this.ptr+13]!=0}init(type,destructor){this.set_adjusted_ptr(0);this.set_type(type);this.set_destructor(destructor)}set_adjusted_ptr(adjustedPtr){HEAPU32[this.ptr+16>>2]=adjustedPtr}get_adjusted_ptr(){return HEAPU32[this.ptr+16>>2]}}var exceptionLast=0;var uncaughtExceptionCount=0;var ___cxa_throw=(ptr,type,destructor)=>{var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw exceptionLast};var __abort_js=()=>abort("");var embind_init_charCodes=()=>{var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes};var embind_charCodes;var readLatin1String=ptr=>{var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret};var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var BindingError=class BindingError extends Error{constructor(message){super(message);this.name="BindingError"}};var throwBindingError=message=>{throw new BindingError(message)};function sharedRegisterType(rawType,registeredInstance,options={}){var name=registeredInstance.name;if(!rawType){throwBindingError(`type "${name}" must have a positive integer typeid pointer`)}if(registeredTypes.hasOwnProperty(rawType)){if(options.ignoreDuplicateRegistrations){return}else{throwBindingError(`Cannot register type '${name}' twice`)}}registeredTypes[rawType]=registeredInstance;delete typeDependencies[rawType];if(awaitingDependencies.hasOwnProperty(rawType)){var callbacks=awaitingDependencies[rawType];delete awaitingDependencies[rawType];callbacks.forEach(cb=>cb())}}function registerType(rawType,registeredInstance,options={}){return sharedRegisterType(rawType,registeredInstance,options)}var integerReadValueFromPointer=(name,width,signed)=>{switch(width){case 1:return signed?pointer=>HEAP8[pointer]:pointer=>HEAPU8[pointer];case 2:return signed?pointer=>HEAP16[pointer>>1]:pointer=>HEAPU16[pointer>>1];case 4:return signed?pointer=>HEAP32[pointer>>2]:pointer=>HEAPU32[pointer>>2];case 8:return signed?pointer=>HEAP64[pointer>>3]:pointer=>HEAPU64[pointer>>3];default:throw new TypeError(`invalid integer width (${width}): ${name}`)}};var __embind_register_bigint=(primitiveType,name,size,minRange,maxRange)=>{name=readLatin1String(name);const isUnsignedType=minRange===0n;let fromWireType=value=>value;if(isUnsignedType){const bitSize=size*8;fromWireType=value=>BigInt.asUintN(bitSize,value);maxRange=fromWireType(maxRange)}registerType(primitiveType,{name,fromWireType,toWireType:(destructors,value)=>{if(typeof value=="number"){value=BigInt(value)}return value},argPackAdvance:GenericWireTypeSize,readValueFromPointer:integerReadValueFromPointer(name,size,!isUnsignedType),destructorFunction:null})};var GenericWireTypeSize=8;var __embind_register_bool=(rawType,name,trueValue,falseValue)=>{name=readLatin1String(name);registerType(rawType,{name,fromWireType:function(wt){return!!wt},toWireType:function(destructors,o){return o?trueValue:falseValue},argPackAdvance:GenericWireTypeSize,readValueFromPointer:function(pointer){return this["fromWireType"](HEAPU8[pointer])},destructorFunction:null})};var shallowCopyInternalPointer=o=>({count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType});var throwInstanceAlreadyDeleted=obj=>{function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")};var finalizationRegistry=false;var detachFinalizer=handle=>{};var runDestructor=$$=>{if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}};var releaseClassHandle=$$=>{$$.count.value-=1;var toDelete=0===$$.count.value;if(toDelete){runDestructor($$)}};var attachFinalizer=handle=>{if("undefined"===typeof FinalizationRegistry){attachFinalizer=handle=>handle;return handle}finalizationRegistry=new FinalizationRegistry(info=>{releaseClassHandle(info.$$)});attachFinalizer=handle=>{var $$=handle.$$;var hasSmartPtr=!!$$.smartPtr;if(hasSmartPtr){var info={$$};finalizationRegistry.register(handle,info,handle)}return handle};detachFinalizer=handle=>finalizationRegistry.unregister(handle);return attachFinalizer(handle)};var deletionQueue=[];var flushPendingDeletes=()=>{while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}};var delayFunction;var init_ClassHandle=()=>{let proto=ClassHandle.prototype;Object.assign(proto,{isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;other.$$=other.$$;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right},clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=attachFinalizer(Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}}));clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}},delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}detachFinalizer(this);releaseClassHandle(this.$$);if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}},isDeleted(){return!this.$$.ptr},deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}});const symbolDispose=Symbol.dispose;if(symbolDispose){proto[symbolDispose]=proto["delete"]}};function ClassHandle(){}var createNamedFunction=(name,func)=>Object.defineProperty(func,"name",{value:name});var registeredPointers={};var ensureOverloadTable=(proto,methodName,humanName)=>{if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=function(...args){if(!proto[methodName].overloadTable.hasOwnProperty(args.length)){throwBindingError(`Function '${humanName}' called with an invalid number of arguments (${args.length}) - expects one of (${proto[methodName].overloadTable})!`)}return proto[methodName].overloadTable[args.length].apply(this,args)};proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}};var exposePublicSymbol=(name,value,numArguments)=>{if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError(`Cannot register public name '${name}' twice`)}ensureOverloadTable(Module,name,name);if(Module[name].overloadTable.hasOwnProperty(numArguments)){throwBindingError(`Cannot register multiple overloads of a function with the same number of arguments (${numArguments})!`)}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}};var char_0=48;var char_9=57;var makeLegalFunctionName=name=>{name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return`_${name}`}return name};function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}var upcastPointer=(ptr,ptrClass,desiredClass)=>{while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError(`Expected null or instance of ${desiredClass.name}, got an instance of ${ptrClass.name}`)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr};var embindRepr=v=>{if(v===null){return"null"}var t=typeof v;if(t==="object"||t==="array"||t==="function"){return v.toString()}else{return""+v}};function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError(`null is not a valid ${this.name}`)}return 0}if(!handle.$$){throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`)}if(!handle.$$.ptr){throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError(`null is not a valid ${this.name}`)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle||!handle.$$){throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`)}if(!handle.$$.ptr){throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name} to parameter type ${this.name}`)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name} to parameter type ${this.name}`)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,Emval.toHandle(()=>clonedHandle["delete"]()));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError(`null is not a valid ${this.name}`)}return 0}if(!handle.$$){throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`)}if(!handle.$$.ptr){throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`)}if(handle.$$.ptrType.isConst){throwBindingError(`Cannot convert argument of type ${handle.$$.ptrType.name} to parameter type ${this.name}`)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function readPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}var downcastPointer=(ptr,ptrClass,desiredClass)=>{if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)};var registeredInstances={};var getBasestPointer=(class_,ptr)=>{if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr};var getInheritedInstance=(class_,ptr)=>{ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]};var InternalError=class InternalError extends Error{constructor(message){super(message);this.name="InternalError"}};var throwInternalError=message=>{throw new InternalError(message)};var makeClassHandle=(prototype,record)=>{if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return attachFinalizer(Object.create(prototype,{$$:{value:record,writable:true}}))};function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}var init_RegisteredPointer=()=>{Object.assign(RegisteredPointer.prototype,{getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr},destructor(ptr){this.rawDestructor?.(ptr)},argPackAdvance:GenericWireTypeSize,readValueFromPointer:readPointer,fromWireType:RegisteredPointer_fromWireType})};function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}var replacePublicSymbol=(name,value,numArguments)=>{if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistent public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}};var wasmTableMirror=[];var wasmTable;var getWasmTableEntry=funcPtr=>{var func=wasmTableMirror[funcPtr];if(!func){wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func};var embind__requireFunction=(signature,rawFunction,isAsync=false)=>{signature=readLatin1String(signature);function makeDynCaller(){var rtn=getWasmTableEntry(rawFunction);return rtn}var fp=makeDynCaller();if(typeof fp!="function"){throwBindingError(`unknown function pointer with signature ${signature}: ${rawFunction}`)}return fp};class UnboundTypeError extends Error{}var getTypeName=type=>{var ptr=___getTypeName(type);var rv=readLatin1String(ptr);_free(ptr);return rv};var throwUnboundTypeError=(message,types)=>{var unboundTypes=[];var seen={};function visit(type){if(seen[type]){return}if(registeredTypes[type]){return}if(typeDependencies[type]){typeDependencies[type].forEach(visit);return}unboundTypes.push(type);seen[type]=true}types.forEach(visit);throw new UnboundTypeError(`${message}: `+unboundTypes.map(getTypeName).join([", "]))};var whenDependentTypesAreResolved=(myTypes,dependentTypes,getTypeConverters)=>{myTypes.forEach(type=>typeDependencies[type]=dependentTypes);function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i{if(registeredTypes.hasOwnProperty(dt)){typeConverters[i]=registeredTypes[dt]}else{unregisteredTypes.push(dt);if(!awaitingDependencies.hasOwnProperty(dt)){awaitingDependencies[dt]=[]}awaitingDependencies[dt].push(()=>{typeConverters[i]=registeredTypes[dt];++registered;if(registered===unregisteredTypes.length){onComplete(typeConverters)}})}});if(0===unregisteredTypes.length){onComplete(typeConverters)}};var __embind_register_class=(rawType,rawPointerType,rawConstPointerType,baseClassRawType,getActualTypeSignature,getActualType,upcastSignature,upcast,downcastSignature,downcast,name,destructorSignature,rawDestructor)=>{name=readLatin1String(name);getActualType=embind__requireFunction(getActualTypeSignature,getActualType);upcast&&=embind__requireFunction(upcastSignature,upcast);downcast&&=embind__requireFunction(downcastSignature,downcast);rawDestructor=embind__requireFunction(destructorSignature,rawDestructor);var legalFunctionName=makeLegalFunctionName(name);exposePublicSymbol(legalFunctionName,function(){throwUnboundTypeError(`Cannot construct ${name} due to unbound types`,[baseClassRawType])});whenDependentTypesAreResolved([rawType,rawPointerType,rawConstPointerType],baseClassRawType?[baseClassRawType]:[],base=>{base=base[0];var baseClass;var basePrototype;if(baseClassRawType){baseClass=base.registeredClass;basePrototype=baseClass.instancePrototype}else{basePrototype=ClassHandle.prototype}var constructor=createNamedFunction(name,function(...args){if(Object.getPrototypeOf(this)!==instancePrototype){throw new BindingError(`Use 'new' to construct ${name}`)}if(undefined===registeredClass.constructor_body){throw new BindingError(`${name} has no accessible constructor`)}var body=registeredClass.constructor_body[args.length];if(undefined===body){throw new BindingError(`Tried to invoke ctor of ${name} with invalid number of parameters (${args.length}) - expected (${Object.keys(registeredClass.constructor_body).toString()}) parameters instead!`)}return body.apply(this,args)});var instancePrototype=Object.create(basePrototype,{constructor:{value:constructor}});constructor.prototype=instancePrototype;var registeredClass=new RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast);if(registeredClass.baseClass){registeredClass.baseClass.__derivedClasses??=[];registeredClass.baseClass.__derivedClasses.push(registeredClass)}var referenceConverter=new RegisteredPointer(name,registeredClass,true,false,false);var pointerConverter=new RegisteredPointer(name+"*",registeredClass,false,false,false);var constPointerConverter=new RegisteredPointer(name+" const*",registeredClass,false,true,false);registeredPointers[rawType]={pointerType:pointerConverter,constPointerType:constPointerConverter};replacePublicSymbol(legalFunctionName,constructor);return[referenceConverter,pointerConverter,constPointerConverter]})};var heap32VectorToArray=(count,firstElement)=>{var array=[];for(var i=0;i>2])}return array};var runDestructors=destructors=>{while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}};function usesDestructorStack(argTypes){for(var i=1;i{var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],classType=>{classType=classType[0];var humanName=`constructor ${classType.name}`;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError(`Cannot register multiple constructors with identical number of parameters (${argCount-1}) for class '${classType.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`)}classType.registeredClass.constructor_body[argCount-1]=()=>{throwUnboundTypeError(`Cannot construct ${classType.name} due to unbound types`,rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,argTypes=>{argTypes.splice(1,0,null);classType.registeredClass.constructor_body[argCount-1]=craftInvokerFunction(humanName,argTypes,null,invoker,rawConstructor);return[]});return[]})};var getFunctionName=signature=>{signature=signature.trim();const argsIndex=signature.indexOf("(");if(argsIndex===-1)return signature;return signature.slice(0,argsIndex)};var __embind_register_class_function=(rawClassType,methodName,argCount,rawArgTypesAddr,invokerSignature,rawInvoker,context,isPureVirtual,isAsync,isNonnullReturn)=>{var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);methodName=readLatin1String(methodName);methodName=getFunctionName(methodName);rawInvoker=embind__requireFunction(invokerSignature,rawInvoker,isAsync);whenDependentTypesAreResolved([],[rawClassType],classType=>{classType=classType[0];var humanName=`${classType.name}.${methodName}`;if(methodName.startsWith("@@")){methodName=Symbol[methodName.substring(2)]}if(isPureVirtual){classType.registeredClass.pureVirtualFunctions.push(methodName)}function unboundTypesHandler(){throwUnboundTypeError(`Cannot call ${humanName} due to unbound types`,rawArgTypes)}var proto=classType.registeredClass.instancePrototype;var method=proto[methodName];if(undefined===method||undefined===method.overloadTable&&method.className!==classType.name&&method.argCount===argCount-2){unboundTypesHandler.argCount=argCount-2;unboundTypesHandler.className=classType.name;proto[methodName]=unboundTypesHandler}else{ensureOverloadTable(proto,methodName,humanName);proto[methodName].overloadTable[argCount-2]=unboundTypesHandler}whenDependentTypesAreResolved([],rawArgTypes,argTypes=>{var memberFunction=craftInvokerFunction(humanName,argTypes,classType,rawInvoker,context,isAsync);if(undefined===proto[methodName].overloadTable){memberFunction.argCount=argCount-2;proto[methodName]=memberFunction}else{proto[methodName].overloadTable[argCount-2]=memberFunction}return[]});return[]})};var validateThis=(this_,classType,humanName)=>{if(!(this_ instanceof Object)){throwBindingError(`${humanName} with invalid "this": ${this_}`)}if(!(this_ instanceof classType.registeredClass.constructor)){throwBindingError(`${humanName} incompatible with "this" of type ${this_.constructor.name}`)}if(!this_.$$.ptr){throwBindingError(`cannot call emscripten binding method ${humanName} on deleted object`)}return upcastPointer(this_.$$.ptr,this_.$$.ptrType.registeredClass,classType.registeredClass)};var __embind_register_class_property=(classType,fieldName,getterReturnType,getterSignature,getter,getterContext,setterArgumentType,setterSignature,setter,setterContext)=>{fieldName=readLatin1String(fieldName);getter=embind__requireFunction(getterSignature,getter);whenDependentTypesAreResolved([],[classType],classType=>{classType=classType[0];var humanName=`${classType.name}.${fieldName}`;var desc={get(){throwUnboundTypeError(`Cannot access ${humanName} due to unbound types`,[getterReturnType,setterArgumentType])},enumerable:true,configurable:true};if(setter){desc.set=()=>throwUnboundTypeError(`Cannot access ${humanName} due to unbound types`,[getterReturnType,setterArgumentType])}else{desc.set=v=>throwBindingError(humanName+" is a read-only property")}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);whenDependentTypesAreResolved([],setter?[getterReturnType,setterArgumentType]:[getterReturnType],types=>{var getterReturnType=types[0];var desc={get(){var ptr=validateThis(this,classType,humanName+" getter");return getterReturnType["fromWireType"](getter(getterContext,ptr))},enumerable:true};if(setter){setter=embind__requireFunction(setterSignature,setter);var setterArgumentType=types[1];desc.set=function(v){var ptr=validateThis(this,classType,humanName+" setter");var destructors=[];setter(setterContext,ptr,setterArgumentType["toWireType"](destructors,v));runDestructors(destructors)}}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);return[]});return[]})};var emval_freelist=[];var emval_handles=[0,1,,1,null,1,true,1,false,1];var __emval_decref=handle=>{if(handle>9&&0===--emval_handles[handle+1]){emval_handles[handle]=undefined;emval_freelist.push(handle)}};var Emval={toValue:handle=>{if(!handle){throwBindingError(`Cannot use deleted val. handle = ${handle}`)}return emval_handles[handle]},toHandle:value=>{switch(value){case undefined:return 2;case null:return 4;case true:return 6;case false:return 8;default:{const handle=emval_freelist.pop()||emval_handles.length;emval_handles[handle]=value;emval_handles[handle+1]=1;return handle}}}};var EmValType={name:"emscripten::val",fromWireType:handle=>{var rv=Emval.toValue(handle);__emval_decref(handle);return rv},toWireType:(destructors,value)=>Emval.toHandle(value),argPackAdvance:GenericWireTypeSize,readValueFromPointer:readPointer,destructorFunction:null};var __embind_register_emval=rawType=>registerType(rawType,EmValType);var floatReadValueFromPointer=(name,width)=>{switch(width){case 4:return function(pointer){return this["fromWireType"](HEAPF32[pointer>>2])};case 8:return function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])};default:throw new TypeError(`invalid float width (${width}): ${name}`)}};var __embind_register_float=(rawType,name,size)=>{name=readLatin1String(name);registerType(rawType,{name,fromWireType:value=>value,toWireType:(destructors,value)=>value,argPackAdvance:GenericWireTypeSize,readValueFromPointer:floatReadValueFromPointer(name,size),destructorFunction:null})};var __embind_register_function=(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn,isAsync,isNonnullReturn)=>{var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);name=getFunctionName(name);rawInvoker=embind__requireFunction(signature,rawInvoker,isAsync);exposePublicSymbol(name,function(){throwUnboundTypeError(`Cannot call ${name} due to unbound types`,argTypes)},argCount-1);whenDependentTypesAreResolved([],argTypes,argTypes=>{var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn,isAsync),argCount-1);return[]})};var __embind_register_integer=(primitiveType,name,size,minRange,maxRange)=>{name=readLatin1String(name);const isUnsignedType=minRange===0;let fromWireType=value=>value;if(isUnsignedType){var bitshift=32-8*size;fromWireType=value=>value<>>bitshift;maxRange=fromWireType(maxRange)}registerType(primitiveType,{name,fromWireType,toWireType:(destructors,value)=>value,argPackAdvance:GenericWireTypeSize,readValueFromPointer:integerReadValueFromPointer(name,size,minRange!==0),destructorFunction:null})};var __embind_register_memory_view=(rawType,dataTypeIndex,name)=>{var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){var size=HEAPU32[handle>>2];var data=HEAPU32[handle+4>>2];return new TA(HEAP8.buffer,data,size)}name=readLatin1String(name);registerType(rawType,{name,fromWireType:decodeMemoryView,argPackAdvance:GenericWireTypeSize,readValueFromPointer:decodeMemoryView},{ignoreDuplicateRegistrations:true})};var stringToUTF8Array=(str,heap,outIdx,maxBytesToWrite)=>{if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx};var stringToUTF8=(str,outPtr,maxBytesToWrite)=>stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite);var lengthBytesUTF8=str=>{var len=0;for(var i=0;i=55296&&c<=57343){len+=4;++i}else{len+=3}}return len};var UTF8Decoder=typeof TextDecoder!="undefined"?new TextDecoder:undefined;var UTF8ArrayToString=(heapOrArray,idx=0,maxBytesToRead=NaN)=>{var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}var str="";while(idx>10,56320|ch&1023)}}return str};var UTF8ToString=(ptr,maxBytesToRead)=>ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):"";var __embind_register_std_string=(rawType,name)=>{name=readLatin1String(name);var stdStringIsUTF8=true;registerType(rawType,{name,fromWireType(value){var length=HEAPU32[value>>2];var payload=value+4;var str;if(stdStringIsUTF8){var decodeStartPtr=payload;for(var i=0;i<=length;++i){var currentBytePtr=payload+i;if(i==length||HEAPU8[currentBytePtr]==0){var maxRead=currentBytePtr-decodeStartPtr;var stringSegment=UTF8ToString(decodeStartPtr,maxRead);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+1}}}else{var a=new Array(length);for(var i=0;i>2]=length;if(valueIsOfTypeString){if(stdStringIsUTF8){stringToUTF8(value,ptr,length+1)}else{for(var i=0;i255){_free(base);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+i]=charCode}}}else{HEAPU8.set(value,ptr)}if(destructors!==null){destructors.push(_free,base)}return base},argPackAdvance:GenericWireTypeSize,readValueFromPointer:readPointer,destructorFunction(ptr){_free(ptr)}})};var UTF16Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf-16le"):undefined;var UTF16ToString=(ptr,maxBytesToRead)=>{var idx=ptr>>1;var maxIdx=idx+maxBytesToRead/2;var endIdx=idx;while(!(endIdx>=maxIdx)&&HEAPU16[endIdx])++endIdx;if(endIdx-idx>16&&UTF16Decoder)return UTF16Decoder.decode(HEAPU16.subarray(idx,endIdx));var str="";for(var i=idx;!(i>=maxIdx);++i){var codeUnit=HEAPU16[i];if(codeUnit==0)break;str+=String.fromCharCode(codeUnit)}return str};var stringToUTF16=(str,outPtr,maxBytesToWrite)=>{maxBytesToWrite??=2147483647;if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr};var lengthBytesUTF16=str=>str.length*2;var UTF32ToString=(ptr,maxBytesToRead)=>{var i=0;var str="";while(!(i>=maxBytesToRead/4)){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)break;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}return str};var stringToUTF32=(str,outPtr,maxBytesToWrite)=>{maxBytesToWrite??=2147483647;if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr};var lengthBytesUTF32=str=>{var len=0;for(var i=0;i=55296&&codeUnit<=57343)++i;len+=4}return len};var __embind_register_std_wstring=(rawType,charSize,name)=>{name=readLatin1String(name);var decodeString,encodeString,readCharAt,lengthBytesUTF;if(charSize===2){decodeString=UTF16ToString;encodeString=stringToUTF16;lengthBytesUTF=lengthBytesUTF16;readCharAt=pointer=>HEAPU16[pointer>>1]}else if(charSize===4){decodeString=UTF32ToString;encodeString=stringToUTF32;lengthBytesUTF=lengthBytesUTF32;readCharAt=pointer=>HEAPU32[pointer>>2]}registerType(rawType,{name,fromWireType:value=>{var length=HEAPU32[value>>2];var str;var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i*charSize;if(i==length||readCharAt(currentBytePtr)==0){var maxReadBytes=currentBytePtr-decodeStartPtr;var stringSegment=decodeString(decodeStartPtr,maxReadBytes);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+charSize}}_free(value);return str},toWireType:(destructors,value)=>{if(!(typeof value=="string")){throwBindingError(`Cannot pass non-string to C++ string type ${name}`)}var length=lengthBytesUTF(value);var ptr=_malloc(4+length+charSize);HEAPU32[ptr>>2]=length/charSize;encodeString(value,ptr+4,length+charSize);if(destructors!==null){destructors.push(_free,ptr)}return ptr},argPackAdvance:GenericWireTypeSize,readValueFromPointer:readPointer,destructorFunction(ptr){_free(ptr)}})};var __embind_register_void=(rawType,name)=>{name=readLatin1String(name);registerType(rawType,{isVoid:true,name,argPackAdvance:0,fromWireType:()=>undefined,toWireType:(destructors,o)=>undefined})};var requireRegisteredType=(rawType,humanName)=>{var impl=registeredTypes[rawType];if(undefined===impl){throwBindingError(`${humanName} has unknown type ${getTypeName(rawType)}`)}return impl};var __emval_take_value=(type,arg)=>{type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](arg);return Emval.toHandle(v)};var _emscripten_date_now=()=>Date.now();var abortOnCannotGrowMemory=requestedSize=>{abort("OOM")};var _emscripten_resize_heap=requestedSize=>{var oldSize=HEAPU8.length;requestedSize>>>=0;abortOnCannotGrowMemory(requestedSize)};var printCharBuffers=[null,[],[]];var printChar=(stream,curr)=>{var buffer=printCharBuffers[stream];if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer));buffer.length=0}else{buffer.push(curr)}};var _fd_write=(fd,iov,iovcnt,pnum)=>{var num=0;for(var i=0;i>2];var len=HEAPU32[iov+4>>2];iov+=8;for(var j=0;j>2]=num;return 0};embind_init_charCodes();init_ClassHandle();init_RegisteredPointer();{if(Module["noExitRuntime"])noExitRuntime=Module["noExitRuntime"];if(Module["print"])out=Module["print"];if(Module["printErr"])err=Module["printErr"];if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"]}var wasmImports={f:___cxa_throw,p:__abort_js,k:__embind_register_bigint,m:__embind_register_bool,l:__embind_register_class,h:__embind_register_class_constructor,e:__embind_register_class_function,a:__embind_register_class_property,r:__embind_register_emval,j:__embind_register_float,c:__embind_register_function,d:__embind_register_integer,b:__embind_register_memory_view,s:__embind_register_std_string,g:__embind_register_std_wstring,n:__embind_register_void,o:__emval_take_value,t:_emscripten_date_now,q:_emscripten_resize_heap,i:_fd_write};var wasmExports;createWasm();var ___wasm_call_ctors=()=>(___wasm_call_ctors=wasmExports["v"])();var _param_get=Module["_param_get"]=(a0,a1)=>(_param_get=Module["_param_get"]=wasmExports["w"])(a0,a1);var _param_set_used=Module["_param_set_used"]=a0=>(_param_set_used=Module["_param_set_used"]=wasmExports["x"])(a0);var __Znwm=Module["__Znwm"]=a0=>(__Znwm=Module["__Znwm"]=wasmExports["y"])(a0);var __ZdlPvm=Module["__ZdlPvm"]=(a0,a1)=>(__ZdlPvm=Module["__ZdlPvm"]=wasmExports["z"])(a0,a1);var _malloc=a0=>(_malloc=wasmExports["B"])(a0);var __ZNSt12length_errorD1Ev=Module["__ZNSt12length_errorD1Ev"]=a0=>(__ZNSt12length_errorD1Ev=Module["__ZNSt12length_errorD1Ev"]=wasmExports["C"])(a0);var ___cxa_allocate_exception=Module["___cxa_allocate_exception"]=a0=>(___cxa_allocate_exception=Module["___cxa_allocate_exception"]=wasmExports["D"])(a0);var __ZNSt20bad_array_new_lengthD1Ev=Module["__ZNSt20bad_array_new_lengthD1Ev"]=a0=>(__ZNSt20bad_array_new_lengthD1Ev=Module["__ZNSt20bad_array_new_lengthD1Ev"]=wasmExports["E"])(a0);var __ZNSt20bad_array_new_lengthC1Ev=Module["__ZNSt20bad_array_new_lengthC1Ev"]=a0=>(__ZNSt20bad_array_new_lengthC1Ev=Module["__ZNSt20bad_array_new_lengthC1Ev"]=wasmExports["F"])(a0);var __ZNSt12out_of_rangeD1Ev=Module["__ZNSt12out_of_rangeD1Ev"]=a0=>(__ZNSt12out_of_rangeD1Ev=Module["__ZNSt12out_of_rangeD1Ev"]=wasmExports["G"])(a0);var ___cxa_pure_virtual=Module["___cxa_pure_virtual"]=()=>(___cxa_pure_virtual=Module["___cxa_pure_virtual"]=wasmExports["H"])();var ___getTypeName=a0=>(___getTypeName=wasmExports["I"])(a0);var __ZNSt9exceptionD2Ev=Module["__ZNSt9exceptionD2Ev"]=a0=>(__ZNSt9exceptionD2Ev=Module["__ZNSt9exceptionD2Ev"]=wasmExports["J"])(a0);var __emscripten_memcpy_bulkmem=Module["__emscripten_memcpy_bulkmem"]=(a0,a1,a2)=>(__emscripten_memcpy_bulkmem=Module["__emscripten_memcpy_bulkmem"]=wasmExports["K"])(a0,a1,a2);var _emscripten_stack_get_end=Module["_emscripten_stack_get_end"]=()=>(_emscripten_stack_get_end=Module["_emscripten_stack_get_end"]=wasmExports["L"])();var _emscripten_stack_get_base=Module["_emscripten_stack_get_base"]=()=>(_emscripten_stack_get_base=Module["_emscripten_stack_get_base"]=wasmExports["M"])();var _free=a0=>(_free=wasmExports["N"])(a0);var _emscripten_stack_init=Module["_emscripten_stack_init"]=()=>(_emscripten_stack_init=Module["_emscripten_stack_init"]=wasmExports["O"])();var _emscripten_stack_set_limits=Module["_emscripten_stack_set_limits"]=(a0,a1)=>(_emscripten_stack_set_limits=Module["_emscripten_stack_set_limits"]=wasmExports["P"])(a0,a1);var _emscripten_stack_get_free=Module["_emscripten_stack_get_free"]=()=>(_emscripten_stack_get_free=Module["_emscripten_stack_get_free"]=wasmExports["Q"])();var __ZSt15get_new_handlerv=Module["__ZSt15get_new_handlerv"]=()=>(__ZSt15get_new_handlerv=Module["__ZSt15get_new_handlerv"]=wasmExports["R"])();var __Znam=Module["__Znam"]=a0=>(__Znam=Module["__Znam"]=wasmExports["S"])(a0);var __ZdlPv=Module["__ZdlPv"]=a0=>(__ZdlPv=Module["__ZdlPv"]=wasmExports["T"])(a0);var __ZdaPv=Module["__ZdaPv"]=a0=>(__ZdaPv=Module["__ZdaPv"]=wasmExports["U"])(a0);var __ZdaPvm=Module["__ZdaPvm"]=(a0,a1)=>(__ZdaPvm=Module["__ZdaPvm"]=wasmExports["V"])(a0,a1);var __ZnwmSt11align_val_t=Module["__ZnwmSt11align_val_t"]=(a0,a1)=>(__ZnwmSt11align_val_t=Module["__ZnwmSt11align_val_t"]=wasmExports["W"])(a0,a1);var __ZnamSt11align_val_t=Module["__ZnamSt11align_val_t"]=(a0,a1)=>(__ZnamSt11align_val_t=Module["__ZnamSt11align_val_t"]=wasmExports["X"])(a0,a1);var __ZdlPvSt11align_val_t=Module["__ZdlPvSt11align_val_t"]=(a0,a1)=>(__ZdlPvSt11align_val_t=Module["__ZdlPvSt11align_val_t"]=wasmExports["Y"])(a0,a1);var __ZdlPvmSt11align_val_t=Module["__ZdlPvmSt11align_val_t"]=(a0,a1,a2)=>(__ZdlPvmSt11align_val_t=Module["__ZdlPvmSt11align_val_t"]=wasmExports["Z"])(a0,a1,a2);var __ZdaPvSt11align_val_t=Module["__ZdaPvSt11align_val_t"]=(a0,a1)=>(__ZdaPvSt11align_val_t=Module["__ZdaPvSt11align_val_t"]=wasmExports["_"])(a0,a1);var __ZdaPvmSt11align_val_t=Module["__ZdaPvmSt11align_val_t"]=(a0,a1,a2)=>(__ZdaPvmSt11align_val_t=Module["__ZdaPvmSt11align_val_t"]=wasmExports["$"])(a0,a1,a2);var __ZSt14set_unexpectedPFvvE=Module["__ZSt14set_unexpectedPFvvE"]=a0=>(__ZSt14set_unexpectedPFvvE=Module["__ZSt14set_unexpectedPFvvE"]=wasmExports["aa"])(a0);var __ZSt13set_terminatePFvvE=Module["__ZSt13set_terminatePFvvE"]=a0=>(__ZSt13set_terminatePFvvE=Module["__ZSt13set_terminatePFvvE"]=wasmExports["ba"])(a0);var __ZSt15set_new_handlerPFvvE=Module["__ZSt15set_new_handlerPFvvE"]=a0=>(__ZSt15set_new_handlerPFvvE=Module["__ZSt15set_new_handlerPFvvE"]=wasmExports["ca"])(a0);var __ZSt14get_unexpectedv=Module["__ZSt14get_unexpectedv"]=()=>(__ZSt14get_unexpectedv=Module["__ZSt14get_unexpectedv"]=wasmExports["da"])();var __ZSt10unexpectedv=Module["__ZSt10unexpectedv"]=()=>(__ZSt10unexpectedv=Module["__ZSt10unexpectedv"]=wasmExports["ea"])();var __ZSt13get_terminatev=Module["__ZSt13get_terminatev"]=()=>(__ZSt13get_terminatev=Module["__ZSt13get_terminatev"]=wasmExports["fa"])();var __ZSt9terminatev=Module["__ZSt9terminatev"]=()=>(__ZSt9terminatev=Module["__ZSt9terminatev"]=wasmExports["ga"])();var ___cxa_current_primary_exception=Module["___cxa_current_primary_exception"]=()=>(___cxa_current_primary_exception=Module["___cxa_current_primary_exception"]=wasmExports["ha"])();var ___cxa_rethrow_primary_exception=Module["___cxa_rethrow_primary_exception"]=a0=>(___cxa_rethrow_primary_exception=Module["___cxa_rethrow_primary_exception"]=wasmExports["ia"])(a0);var ___cxa_uncaught_exception=Module["___cxa_uncaught_exception"]=()=>(___cxa_uncaught_exception=Module["___cxa_uncaught_exception"]=wasmExports["ja"])();var ___cxa_uncaught_exceptions=Module["___cxa_uncaught_exceptions"]=()=>(___cxa_uncaught_exceptions=Module["___cxa_uncaught_exceptions"]=wasmExports["ka"])();var ___cxa_free_exception=Module["___cxa_free_exception"]=a0=>(___cxa_free_exception=Module["___cxa_free_exception"]=wasmExports["la"])(a0);var ___cxa_init_primary_exception=Module["___cxa_init_primary_exception"]=(a0,a1,a2)=>(___cxa_init_primary_exception=Module["___cxa_init_primary_exception"]=wasmExports["ma"])(a0,a1,a2);var ___cxa_deleted_virtual=Module["___cxa_deleted_virtual"]=()=>(___cxa_deleted_virtual=Module["___cxa_deleted_virtual"]=wasmExports["na"])();var ___dynamic_cast=Module["___dynamic_cast"]=(a0,a1,a2,a3)=>(___dynamic_cast=Module["___dynamic_cast"]=wasmExports["oa"])(a0,a1,a2,a3);var __ZNSt9type_infoD2Ev=Module["__ZNSt9type_infoD2Ev"]=a0=>(__ZNSt9type_infoD2Ev=Module["__ZNSt9type_infoD2Ev"]=wasmExports["pa"])(a0);var __ZNSt9exceptionD0Ev=Module["__ZNSt9exceptionD0Ev"]=a0=>(__ZNSt9exceptionD0Ev=Module["__ZNSt9exceptionD0Ev"]=wasmExports["qa"])(a0);var __ZNSt9exceptionD1Ev=Module["__ZNSt9exceptionD1Ev"]=a0=>(__ZNSt9exceptionD1Ev=Module["__ZNSt9exceptionD1Ev"]=wasmExports["ra"])(a0);var __ZNKSt9exception4whatEv=Module["__ZNKSt9exception4whatEv"]=a0=>(__ZNKSt9exception4whatEv=Module["__ZNKSt9exception4whatEv"]=wasmExports["sa"])(a0);var __ZNSt13bad_exceptionD0Ev=Module["__ZNSt13bad_exceptionD0Ev"]=a0=>(__ZNSt13bad_exceptionD0Ev=Module["__ZNSt13bad_exceptionD0Ev"]=wasmExports["ta"])(a0);var __ZNSt13bad_exceptionD1Ev=Module["__ZNSt13bad_exceptionD1Ev"]=a0=>(__ZNSt13bad_exceptionD1Ev=Module["__ZNSt13bad_exceptionD1Ev"]=wasmExports["ua"])(a0);var __ZNKSt13bad_exception4whatEv=Module["__ZNKSt13bad_exception4whatEv"]=a0=>(__ZNKSt13bad_exception4whatEv=Module["__ZNKSt13bad_exception4whatEv"]=wasmExports["va"])(a0);var __ZNSt9bad_allocC2Ev=Module["__ZNSt9bad_allocC2Ev"]=a0=>(__ZNSt9bad_allocC2Ev=Module["__ZNSt9bad_allocC2Ev"]=wasmExports["wa"])(a0);var __ZNSt9bad_allocD0Ev=Module["__ZNSt9bad_allocD0Ev"]=a0=>(__ZNSt9bad_allocD0Ev=Module["__ZNSt9bad_allocD0Ev"]=wasmExports["xa"])(a0);var __ZNSt9bad_allocD1Ev=Module["__ZNSt9bad_allocD1Ev"]=a0=>(__ZNSt9bad_allocD1Ev=Module["__ZNSt9bad_allocD1Ev"]=wasmExports["ya"])(a0);var __ZNKSt9bad_alloc4whatEv=Module["__ZNKSt9bad_alloc4whatEv"]=a0=>(__ZNKSt9bad_alloc4whatEv=Module["__ZNKSt9bad_alloc4whatEv"]=wasmExports["za"])(a0);var __ZNSt20bad_array_new_lengthC2Ev=Module["__ZNSt20bad_array_new_lengthC2Ev"]=a0=>(__ZNSt20bad_array_new_lengthC2Ev=Module["__ZNSt20bad_array_new_lengthC2Ev"]=wasmExports["Aa"])(a0);var __ZNSt20bad_array_new_lengthD0Ev=Module["__ZNSt20bad_array_new_lengthD0Ev"]=a0=>(__ZNSt20bad_array_new_lengthD0Ev=Module["__ZNSt20bad_array_new_lengthD0Ev"]=wasmExports["Ba"])(a0);var __ZNKSt20bad_array_new_length4whatEv=Module["__ZNKSt20bad_array_new_length4whatEv"]=a0=>(__ZNKSt20bad_array_new_length4whatEv=Module["__ZNKSt20bad_array_new_length4whatEv"]=wasmExports["Ca"])(a0);var __ZNSt13bad_exceptionD2Ev=Module["__ZNSt13bad_exceptionD2Ev"]=a0=>(__ZNSt13bad_exceptionD2Ev=Module["__ZNSt13bad_exceptionD2Ev"]=wasmExports["Da"])(a0);var __ZNSt9bad_allocC1Ev=Module["__ZNSt9bad_allocC1Ev"]=a0=>(__ZNSt9bad_allocC1Ev=Module["__ZNSt9bad_allocC1Ev"]=wasmExports["Ea"])(a0);var __ZNSt9bad_allocD2Ev=Module["__ZNSt9bad_allocD2Ev"]=a0=>(__ZNSt9bad_allocD2Ev=Module["__ZNSt9bad_allocD2Ev"]=wasmExports["Fa"])(a0);var __ZNSt20bad_array_new_lengthD2Ev=Module["__ZNSt20bad_array_new_lengthD2Ev"]=a0=>(__ZNSt20bad_array_new_lengthD2Ev=Module["__ZNSt20bad_array_new_lengthD2Ev"]=wasmExports["Ga"])(a0);var __ZNSt11logic_errorD2Ev=Module["__ZNSt11logic_errorD2Ev"]=a0=>(__ZNSt11logic_errorD2Ev=Module["__ZNSt11logic_errorD2Ev"]=wasmExports["Ha"])(a0);var __ZNSt11logic_errorD0Ev=Module["__ZNSt11logic_errorD0Ev"]=a0=>(__ZNSt11logic_errorD0Ev=Module["__ZNSt11logic_errorD0Ev"]=wasmExports["Ia"])(a0);var __ZNSt11logic_errorD1Ev=Module["__ZNSt11logic_errorD1Ev"]=a0=>(__ZNSt11logic_errorD1Ev=Module["__ZNSt11logic_errorD1Ev"]=wasmExports["Ja"])(a0);var __ZNKSt11logic_error4whatEv=Module["__ZNKSt11logic_error4whatEv"]=a0=>(__ZNKSt11logic_error4whatEv=Module["__ZNKSt11logic_error4whatEv"]=wasmExports["Ka"])(a0);var __ZNSt13runtime_errorD2Ev=Module["__ZNSt13runtime_errorD2Ev"]=a0=>(__ZNSt13runtime_errorD2Ev=Module["__ZNSt13runtime_errorD2Ev"]=wasmExports["La"])(a0);var __ZNSt13runtime_errorD0Ev=Module["__ZNSt13runtime_errorD0Ev"]=a0=>(__ZNSt13runtime_errorD0Ev=Module["__ZNSt13runtime_errorD0Ev"]=wasmExports["Ma"])(a0);var __ZNSt13runtime_errorD1Ev=Module["__ZNSt13runtime_errorD1Ev"]=a0=>(__ZNSt13runtime_errorD1Ev=Module["__ZNSt13runtime_errorD1Ev"]=wasmExports["Na"])(a0);var __ZNKSt13runtime_error4whatEv=Module["__ZNKSt13runtime_error4whatEv"]=a0=>(__ZNKSt13runtime_error4whatEv=Module["__ZNKSt13runtime_error4whatEv"]=wasmExports["Oa"])(a0);var __ZNSt12domain_errorD0Ev=Module["__ZNSt12domain_errorD0Ev"]=a0=>(__ZNSt12domain_errorD0Ev=Module["__ZNSt12domain_errorD0Ev"]=wasmExports["Pa"])(a0);var __ZNSt12domain_errorD1Ev=Module["__ZNSt12domain_errorD1Ev"]=a0=>(__ZNSt12domain_errorD1Ev=Module["__ZNSt12domain_errorD1Ev"]=wasmExports["Qa"])(a0);var __ZNSt16invalid_argumentD0Ev=Module["__ZNSt16invalid_argumentD0Ev"]=a0=>(__ZNSt16invalid_argumentD0Ev=Module["__ZNSt16invalid_argumentD0Ev"]=wasmExports["Ra"])(a0);var __ZNSt16invalid_argumentD1Ev=Module["__ZNSt16invalid_argumentD1Ev"]=a0=>(__ZNSt16invalid_argumentD1Ev=Module["__ZNSt16invalid_argumentD1Ev"]=wasmExports["Sa"])(a0);var __ZNSt12length_errorD0Ev=Module["__ZNSt12length_errorD0Ev"]=a0=>(__ZNSt12length_errorD0Ev=Module["__ZNSt12length_errorD0Ev"]=wasmExports["Ta"])(a0);var __ZNSt12out_of_rangeD0Ev=Module["__ZNSt12out_of_rangeD0Ev"]=a0=>(__ZNSt12out_of_rangeD0Ev=Module["__ZNSt12out_of_rangeD0Ev"]=wasmExports["Ua"])(a0);var __ZNSt11range_errorD0Ev=Module["__ZNSt11range_errorD0Ev"]=a0=>(__ZNSt11range_errorD0Ev=Module["__ZNSt11range_errorD0Ev"]=wasmExports["Va"])(a0);var __ZNSt11range_errorD1Ev=Module["__ZNSt11range_errorD1Ev"]=a0=>(__ZNSt11range_errorD1Ev=Module["__ZNSt11range_errorD1Ev"]=wasmExports["Wa"])(a0);var __ZNSt14overflow_errorD0Ev=Module["__ZNSt14overflow_errorD0Ev"]=a0=>(__ZNSt14overflow_errorD0Ev=Module["__ZNSt14overflow_errorD0Ev"]=wasmExports["Xa"])(a0);var __ZNSt14overflow_errorD1Ev=Module["__ZNSt14overflow_errorD1Ev"]=a0=>(__ZNSt14overflow_errorD1Ev=Module["__ZNSt14overflow_errorD1Ev"]=wasmExports["Ya"])(a0);var __ZNSt15underflow_errorD0Ev=Module["__ZNSt15underflow_errorD0Ev"]=a0=>(__ZNSt15underflow_errorD0Ev=Module["__ZNSt15underflow_errorD0Ev"]=wasmExports["Za"])(a0);var __ZNSt15underflow_errorD1Ev=Module["__ZNSt15underflow_errorD1Ev"]=a0=>(__ZNSt15underflow_errorD1Ev=Module["__ZNSt15underflow_errorD1Ev"]=wasmExports["_a"])(a0);var __ZNSt12domain_errorD2Ev=Module["__ZNSt12domain_errorD2Ev"]=a0=>(__ZNSt12domain_errorD2Ev=Module["__ZNSt12domain_errorD2Ev"]=wasmExports["$a"])(a0);var __ZNSt16invalid_argumentD2Ev=Module["__ZNSt16invalid_argumentD2Ev"]=a0=>(__ZNSt16invalid_argumentD2Ev=Module["__ZNSt16invalid_argumentD2Ev"]=wasmExports["ab"])(a0);var __ZNSt12length_errorD2Ev=Module["__ZNSt12length_errorD2Ev"]=a0=>(__ZNSt12length_errorD2Ev=Module["__ZNSt12length_errorD2Ev"]=wasmExports["bb"])(a0);var __ZNSt12out_of_rangeD2Ev=Module["__ZNSt12out_of_rangeD2Ev"]=a0=>(__ZNSt12out_of_rangeD2Ev=Module["__ZNSt12out_of_rangeD2Ev"]=wasmExports["cb"])(a0);var __ZNSt11range_errorD2Ev=Module["__ZNSt11range_errorD2Ev"]=a0=>(__ZNSt11range_errorD2Ev=Module["__ZNSt11range_errorD2Ev"]=wasmExports["db"])(a0);var __ZNSt14overflow_errorD2Ev=Module["__ZNSt14overflow_errorD2Ev"]=a0=>(__ZNSt14overflow_errorD2Ev=Module["__ZNSt14overflow_errorD2Ev"]=wasmExports["eb"])(a0);var __ZNSt15underflow_errorD2Ev=Module["__ZNSt15underflow_errorD2Ev"]=a0=>(__ZNSt15underflow_errorD2Ev=Module["__ZNSt15underflow_errorD2Ev"]=wasmExports["fb"])(a0);var __ZNSt9type_infoD0Ev=Module["__ZNSt9type_infoD0Ev"]=a0=>(__ZNSt9type_infoD0Ev=Module["__ZNSt9type_infoD0Ev"]=wasmExports["gb"])(a0);var __ZNSt9type_infoD1Ev=Module["__ZNSt9type_infoD1Ev"]=a0=>(__ZNSt9type_infoD1Ev=Module["__ZNSt9type_infoD1Ev"]=wasmExports["hb"])(a0);var __ZNSt8bad_castC2Ev=Module["__ZNSt8bad_castC2Ev"]=a0=>(__ZNSt8bad_castC2Ev=Module["__ZNSt8bad_castC2Ev"]=wasmExports["ib"])(a0);var __ZNSt8bad_castD2Ev=Module["__ZNSt8bad_castD2Ev"]=a0=>(__ZNSt8bad_castD2Ev=Module["__ZNSt8bad_castD2Ev"]=wasmExports["jb"])(a0);var __ZNSt8bad_castD0Ev=Module["__ZNSt8bad_castD0Ev"]=a0=>(__ZNSt8bad_castD0Ev=Module["__ZNSt8bad_castD0Ev"]=wasmExports["kb"])(a0);var __ZNSt8bad_castD1Ev=Module["__ZNSt8bad_castD1Ev"]=a0=>(__ZNSt8bad_castD1Ev=Module["__ZNSt8bad_castD1Ev"]=wasmExports["lb"])(a0);var __ZNKSt8bad_cast4whatEv=Module["__ZNKSt8bad_cast4whatEv"]=a0=>(__ZNKSt8bad_cast4whatEv=Module["__ZNKSt8bad_cast4whatEv"]=wasmExports["mb"])(a0);var __ZNSt10bad_typeidC2Ev=Module["__ZNSt10bad_typeidC2Ev"]=a0=>(__ZNSt10bad_typeidC2Ev=Module["__ZNSt10bad_typeidC2Ev"]=wasmExports["nb"])(a0);var __ZNSt10bad_typeidD2Ev=Module["__ZNSt10bad_typeidD2Ev"]=a0=>(__ZNSt10bad_typeidD2Ev=Module["__ZNSt10bad_typeidD2Ev"]=wasmExports["ob"])(a0);var __ZNSt10bad_typeidD0Ev=Module["__ZNSt10bad_typeidD0Ev"]=a0=>(__ZNSt10bad_typeidD0Ev=Module["__ZNSt10bad_typeidD0Ev"]=wasmExports["pb"])(a0);var __ZNSt10bad_typeidD1Ev=Module["__ZNSt10bad_typeidD1Ev"]=a0=>(__ZNSt10bad_typeidD1Ev=Module["__ZNSt10bad_typeidD1Ev"]=wasmExports["qb"])(a0);var __ZNKSt10bad_typeid4whatEv=Module["__ZNKSt10bad_typeid4whatEv"]=a0=>(__ZNKSt10bad_typeid4whatEv=Module["__ZNKSt10bad_typeid4whatEv"]=wasmExports["rb"])(a0);var __ZNSt8bad_castC1Ev=Module["__ZNSt8bad_castC1Ev"]=a0=>(__ZNSt8bad_castC1Ev=Module["__ZNSt8bad_castC1Ev"]=wasmExports["sb"])(a0);var __ZNSt10bad_typeidC1Ev=Module["__ZNSt10bad_typeidC1Ev"]=a0=>(__ZNSt10bad_typeidC1Ev=Module["__ZNSt10bad_typeidC1Ev"]=wasmExports["tb"])(a0);var __ZTIPK16failsafe_flags_s=Module["__ZTIPK16failsafe_flags_s"]=47520;var __ZTIP16failsafe_flags_s=Module["__ZTIP16failsafe_flags_s"]=47504;var __ZTI16failsafe_flags_s=Module["__ZTI16failsafe_flags_s"]=47496;var __ZTIb=Module["__ZTIb"]=30340;var __ZTIh=Module["__ZTIh"]=30496;var __ZTIPKNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE=Module["__ZTIPKNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE"]=47676;var __ZTIPNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE=Module["__ZTIPNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE"]=47660;var __ZTINSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE=Module["__ZTINSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE"]=47608;var __ZTISt12length_error=Module["__ZTISt12length_error"]=32440;var __ZTVSt12length_error=Module["__ZTVSt12length_error"]=32420;var __ZTISt20bad_array_new_length=Module["__ZTISt20bad_array_new_length"]=32204;var __ZTINSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE=Module["__ZTINSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE"]=47596;var __ZTISt12out_of_range=Module["__ZTISt12out_of_range"]=32492;var __ZTVSt12out_of_range=Module["__ZTVSt12out_of_range"]=32472;var __ZTVN10__cxxabiv120__si_class_type_infoE=Module["__ZTVN10__cxxabiv120__si_class_type_infoE"]=31772;var __ZTVN10__cxxabiv121__vmi_class_type_infoE=Module["__ZTVN10__cxxabiv121__vmi_class_type_infoE"]=31864;var __ZTVN10__cxxabiv117__class_type_infoE=Module["__ZTVN10__cxxabiv117__class_type_infoE"]=31732;var __ZTS16failsafe_flags_s=Module["__ZTS16failsafe_flags_s"]=28075;var __ZTVN10__cxxabiv119__pointer_type_infoE=Module["__ZTVN10__cxxabiv119__pointer_type_infoE"]=31984;var __ZTSP16failsafe_flags_s=Module["__ZTSP16failsafe_flags_s"]=28094;var __ZTSPK16failsafe_flags_s=Module["__ZTSPK16failsafe_flags_s"]=28114;var __ZTIi=Module["__ZTIi"]=30704;var __ZTSNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE=Module["__ZTSNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE"]=28163;var __ZTSNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE=Module["__ZTSNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE"]=28230;var __ZTIv=Module["__ZTIv"]=30232;var __ZTIf=Module["__ZTIf"]=31176;var __ZTSPNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE=Module["__ZTSPNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE"]=28328;var __ZTSPKNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE=Module["__ZTSPKNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE"]=28415;var __ZTIm=Module["__ZTIm"]=30860;var __ZTIN10emscripten3valE=Module["__ZTIN10emscripten3valE"]=47748;var __ZTSN10emscripten3valE=Module["__ZTSN10emscripten3valE"]=28518;var __ZTIc=Module["__ZTIc"]=30444;var __ZTIa=Module["__ZTIa"]=30548;var __ZTIs=Module["__ZTIs"]=30600;var __ZTIt=Module["__ZTIt"]=30652;var __ZTIj=Module["__ZTIj"]=30756;var __ZTIl=Module["__ZTIl"]=30808;var __ZTIx=Module["__ZTIx"]=30912;var __ZTIy=Module["__ZTIy"]=30964;var __ZTId=Module["__ZTId"]=31228;var __ZTINSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEEE=Module["__ZTINSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEEE"]=28572;var __ZTINSt3__212basic_stringIDsNS_11char_traitsIDsEENS_9allocatorIDsEEEE=Module["__ZTINSt3__212basic_stringIDsNS_11char_traitsIDsEENS_9allocatorIDsEEEE"]=28644;var __ZTINSt3__212basic_stringIDiNS_11char_traitsIDiEENS_9allocatorIDiEEEE=Module["__ZTINSt3__212basic_stringIDiNS_11char_traitsIDiEENS_9allocatorIDiEEEE"]=28720;var __ZTIN10emscripten11memory_viewIcEE=Module["__ZTIN10emscripten11memory_viewIcEE"]=28796;var __ZTIN10emscripten11memory_viewIaEE=Module["__ZTIN10emscripten11memory_viewIaEE"]=28836;var __ZTIN10emscripten11memory_viewIhEE=Module["__ZTIN10emscripten11memory_viewIhEE"]=28876;var __ZTIN10emscripten11memory_viewIsEE=Module["__ZTIN10emscripten11memory_viewIsEE"]=28916;var __ZTIN10emscripten11memory_viewItEE=Module["__ZTIN10emscripten11memory_viewItEE"]=28956;var __ZTIN10emscripten11memory_viewIiEE=Module["__ZTIN10emscripten11memory_viewIiEE"]=28996;var __ZTIN10emscripten11memory_viewIjEE=Module["__ZTIN10emscripten11memory_viewIjEE"]=29036;var __ZTIN10emscripten11memory_viewIlEE=Module["__ZTIN10emscripten11memory_viewIlEE"]=29076;var __ZTIN10emscripten11memory_viewImEE=Module["__ZTIN10emscripten11memory_viewImEE"]=29116;var __ZTIN10emscripten11memory_viewIxEE=Module["__ZTIN10emscripten11memory_viewIxEE"]=29156;var __ZTIN10emscripten11memory_viewIyEE=Module["__ZTIN10emscripten11memory_viewIyEE"]=29196;var __ZTIN10emscripten11memory_viewIfEE=Module["__ZTIN10emscripten11memory_viewIfEE"]=29236;var __ZTIN10emscripten11memory_viewIdEE=Module["__ZTIN10emscripten11memory_viewIdEE"]=29276;var __ZTSNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEEE=Module["__ZTSNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEEE"]=28580;var __ZTSNSt3__212basic_stringIDsNS_11char_traitsIDsEENS_9allocatorIDsEEEE=Module["__ZTSNSt3__212basic_stringIDsNS_11char_traitsIDsEENS_9allocatorIDsEEEE"]=28652;var __ZTSNSt3__212basic_stringIDiNS_11char_traitsIDiEENS_9allocatorIDiEEEE=Module["__ZTSNSt3__212basic_stringIDiNS_11char_traitsIDiEENS_9allocatorIDiEEEE"]=28728;var __ZTSN10emscripten11memory_viewIcEE=Module["__ZTSN10emscripten11memory_viewIcEE"]=28804;var __ZTSN10emscripten11memory_viewIaEE=Module["__ZTSN10emscripten11memory_viewIaEE"]=28844;var __ZTSN10emscripten11memory_viewIhEE=Module["__ZTSN10emscripten11memory_viewIhEE"]=28884;var __ZTSN10emscripten11memory_viewIsEE=Module["__ZTSN10emscripten11memory_viewIsEE"]=28924;var __ZTSN10emscripten11memory_viewItEE=Module["__ZTSN10emscripten11memory_viewItEE"]=28964;var __ZTSN10emscripten11memory_viewIiEE=Module["__ZTSN10emscripten11memory_viewIiEE"]=29004;var __ZTSN10emscripten11memory_viewIjEE=Module["__ZTSN10emscripten11memory_viewIjEE"]=29044;var __ZTSN10emscripten11memory_viewIlEE=Module["__ZTSN10emscripten11memory_viewIlEE"]=29084;var __ZTSN10emscripten11memory_viewImEE=Module["__ZTSN10emscripten11memory_viewImEE"]=29124;var __ZTSN10emscripten11memory_viewIxEE=Module["__ZTSN10emscripten11memory_viewIxEE"]=29164;var __ZTSN10emscripten11memory_viewIyEE=Module["__ZTSN10emscripten11memory_viewIyEE"]=29204;var __ZTSN10emscripten11memory_viewIfEE=Module["__ZTSN10emscripten11memory_viewIfEE"]=29244;var __ZTSN10emscripten11memory_viewIdEE=Module["__ZTSN10emscripten11memory_viewIdEE"]=29284;var __ZTVSt11logic_error=Module["__ZTVSt11logic_error"]=32244;var __ZTVSt9exception=Module["__ZTVSt9exception"]=32080;var __ZTVSt13runtime_error=Module["__ZTVSt13runtime_error"]=32264;var __ZTISt9exception=Module["__ZTISt9exception"]=32100;var ___cxa_unexpected_handler=Module["___cxa_unexpected_handler"]=47976;var ___cxa_terminate_handler=Module["___cxa_terminate_handler"]=47972;var ___cxa_new_handler=Module["___cxa_new_handler"]=50220;var __ZTIN10__cxxabiv116__shim_type_infoE=Module["__ZTIN10__cxxabiv116__shim_type_infoE"]=29808;var __ZTIN10__cxxabiv117__class_type_infoE=Module["__ZTIN10__cxxabiv117__class_type_infoE"]=29856;var __ZTIN10__cxxabiv117__pbase_type_infoE=Module["__ZTIN10__cxxabiv117__pbase_type_infoE"]=29904;var __ZTIDn=Module["__ZTIDn"]=30284;var __ZTIN10__cxxabiv119__pointer_type_infoE=Module["__ZTIN10__cxxabiv119__pointer_type_infoE"]=29952;var __ZTIN10__cxxabiv120__function_type_infoE=Module["__ZTIN10__cxxabiv120__function_type_infoE"]=3e4;var __ZTIN10__cxxabiv129__pointer_to_member_type_infoE=Module["__ZTIN10__cxxabiv129__pointer_to_member_type_infoE"]=30052;var __ZTISt9type_info=Module["__ZTISt9type_info"]=32764;var __ZTSN10__cxxabiv116__shim_type_infoE=Module["__ZTSN10__cxxabiv116__shim_type_infoE"]=29820;var __ZTSN10__cxxabiv117__class_type_infoE=Module["__ZTSN10__cxxabiv117__class_type_infoE"]=29868;var __ZTSN10__cxxabiv117__pbase_type_infoE=Module["__ZTSN10__cxxabiv117__pbase_type_infoE"]=29916;var __ZTSN10__cxxabiv119__pointer_type_infoE=Module["__ZTSN10__cxxabiv119__pointer_type_infoE"]=29964;var __ZTSN10__cxxabiv120__function_type_infoE=Module["__ZTSN10__cxxabiv120__function_type_infoE"]=30012;var __ZTSN10__cxxabiv129__pointer_to_member_type_infoE=Module["__ZTSN10__cxxabiv129__pointer_to_member_type_infoE"]=30064;var __ZTVN10__cxxabiv116__shim_type_infoE=Module["__ZTVN10__cxxabiv116__shim_type_infoE"]=30124;var __ZTVN10__cxxabiv123__fundamental_type_infoE=Module["__ZTVN10__cxxabiv123__fundamental_type_infoE"]=30152;var __ZTIN10__cxxabiv123__fundamental_type_infoE=Module["__ZTIN10__cxxabiv123__fundamental_type_infoE"]=30180;var __ZTSN10__cxxabiv123__fundamental_type_infoE=Module["__ZTSN10__cxxabiv123__fundamental_type_infoE"]=30192;var __ZTSv=Module["__ZTSv"]=30240;var __ZTIPv=Module["__ZTIPv"]=30244;var __ZTSPv=Module["__ZTSPv"]=30260;var __ZTIPKv=Module["__ZTIPKv"]=30264;var __ZTSPKv=Module["__ZTSPKv"]=30280;var __ZTSDn=Module["__ZTSDn"]=30292;var __ZTIPDn=Module["__ZTIPDn"]=30296;var __ZTSPDn=Module["__ZTSPDn"]=30312;var __ZTIPKDn=Module["__ZTIPKDn"]=30316;var __ZTSPKDn=Module["__ZTSPKDn"]=30332;var __ZTSb=Module["__ZTSb"]=30348;var __ZTIPb=Module["__ZTIPb"]=30352;var __ZTSPb=Module["__ZTSPb"]=30368;var __ZTIPKb=Module["__ZTIPKb"]=30372;var __ZTSPKb=Module["__ZTSPKb"]=30388;var __ZTIw=Module["__ZTIw"]=30392;var __ZTSw=Module["__ZTSw"]=30400;var __ZTIPw=Module["__ZTIPw"]=30404;var __ZTSPw=Module["__ZTSPw"]=30420;var __ZTIPKw=Module["__ZTIPKw"]=30424;var __ZTSPKw=Module["__ZTSPKw"]=30440;var __ZTSc=Module["__ZTSc"]=30452;var __ZTIPc=Module["__ZTIPc"]=30456;var __ZTSPc=Module["__ZTSPc"]=30472;var __ZTIPKc=Module["__ZTIPKc"]=30476;var __ZTSPKc=Module["__ZTSPKc"]=30492;var __ZTSh=Module["__ZTSh"]=30504;var __ZTIPh=Module["__ZTIPh"]=30508;var __ZTSPh=Module["__ZTSPh"]=30524;var __ZTIPKh=Module["__ZTIPKh"]=30528;var __ZTSPKh=Module["__ZTSPKh"]=30544;var __ZTSa=Module["__ZTSa"]=30556;var __ZTIPa=Module["__ZTIPa"]=30560;var __ZTSPa=Module["__ZTSPa"]=30576;var __ZTIPKa=Module["__ZTIPKa"]=30580;var __ZTSPKa=Module["__ZTSPKa"]=30596;var __ZTSs=Module["__ZTSs"]=30608;var __ZTIPs=Module["__ZTIPs"]=30612;var __ZTSPs=Module["__ZTSPs"]=30628;var __ZTIPKs=Module["__ZTIPKs"]=30632;var __ZTSPKs=Module["__ZTSPKs"]=30648;var __ZTSt=Module["__ZTSt"]=30660;var __ZTIPt=Module["__ZTIPt"]=30664;var __ZTSPt=Module["__ZTSPt"]=30680;var __ZTIPKt=Module["__ZTIPKt"]=30684;var __ZTSPKt=Module["__ZTSPKt"]=30700;var __ZTSi=Module["__ZTSi"]=30712;var __ZTIPi=Module["__ZTIPi"]=30716;var __ZTSPi=Module["__ZTSPi"]=30732;var __ZTIPKi=Module["__ZTIPKi"]=30736;var __ZTSPKi=Module["__ZTSPKi"]=30752;var __ZTSj=Module["__ZTSj"]=30764;var __ZTIPj=Module["__ZTIPj"]=30768;var __ZTSPj=Module["__ZTSPj"]=30784;var __ZTIPKj=Module["__ZTIPKj"]=30788;var __ZTSPKj=Module["__ZTSPKj"]=30804;var __ZTSl=Module["__ZTSl"]=30816;var __ZTIPl=Module["__ZTIPl"]=30820;var __ZTSPl=Module["__ZTSPl"]=30836;var __ZTIPKl=Module["__ZTIPKl"]=30840;var __ZTSPKl=Module["__ZTSPKl"]=30856;var __ZTSm=Module["__ZTSm"]=30868;var __ZTIPm=Module["__ZTIPm"]=30872;var __ZTSPm=Module["__ZTSPm"]=30888;var __ZTIPKm=Module["__ZTIPKm"]=30892;var __ZTSPKm=Module["__ZTSPKm"]=30908;var __ZTSx=Module["__ZTSx"]=30920;var __ZTIPx=Module["__ZTIPx"]=30924;var __ZTSPx=Module["__ZTSPx"]=30940;var __ZTIPKx=Module["__ZTIPKx"]=30944;var __ZTSPKx=Module["__ZTSPKx"]=30960;var __ZTSy=Module["__ZTSy"]=30972;var __ZTIPy=Module["__ZTIPy"]=30976;var __ZTSPy=Module["__ZTSPy"]=30992;var __ZTIPKy=Module["__ZTIPKy"]=30996;var __ZTSPKy=Module["__ZTSPKy"]=31012;var __ZTIn=Module["__ZTIn"]=31016;var __ZTSn=Module["__ZTSn"]=31024;var __ZTIPn=Module["__ZTIPn"]=31028;var __ZTSPn=Module["__ZTSPn"]=31044;var __ZTIPKn=Module["__ZTIPKn"]=31048;var __ZTSPKn=Module["__ZTSPKn"]=31064;var __ZTIo=Module["__ZTIo"]=31068;var __ZTSo=Module["__ZTSo"]=31076;var __ZTIPo=Module["__ZTIPo"]=31080;var __ZTSPo=Module["__ZTSPo"]=31096;var __ZTIPKo=Module["__ZTIPKo"]=31100;var __ZTSPKo=Module["__ZTSPKo"]=31116;var __ZTIDh=Module["__ZTIDh"]=31120;var __ZTSDh=Module["__ZTSDh"]=31128;var __ZTIPDh=Module["__ZTIPDh"]=31132;var __ZTSPDh=Module["__ZTSPDh"]=31148;var __ZTIPKDh=Module["__ZTIPKDh"]=31152;var __ZTSPKDh=Module["__ZTSPKDh"]=31168;var __ZTSf=Module["__ZTSf"]=31184;var __ZTIPf=Module["__ZTIPf"]=31188;var __ZTSPf=Module["__ZTSPf"]=31204;var __ZTIPKf=Module["__ZTIPKf"]=31208;var __ZTSPKf=Module["__ZTSPKf"]=31224;var __ZTSd=Module["__ZTSd"]=31236;var __ZTIPd=Module["__ZTIPd"]=31240;var __ZTSPd=Module["__ZTSPd"]=31256;var __ZTIPKd=Module["__ZTIPKd"]=31260;var __ZTSPKd=Module["__ZTSPKd"]=31276;var __ZTIe=Module["__ZTIe"]=31280;var __ZTSe=Module["__ZTSe"]=31288;var __ZTIPe=Module["__ZTIPe"]=31292;var __ZTSPe=Module["__ZTSPe"]=31308;var __ZTIPKe=Module["__ZTIPKe"]=31312;var __ZTSPKe=Module["__ZTSPKe"]=31328;var __ZTIg=Module["__ZTIg"]=31332;var __ZTSg=Module["__ZTSg"]=31340;var __ZTIPg=Module["__ZTIPg"]=31344;var __ZTSPg=Module["__ZTSPg"]=31360;var __ZTIPKg=Module["__ZTIPKg"]=31364;var __ZTSPKg=Module["__ZTSPKg"]=31380;var __ZTIDu=Module["__ZTIDu"]=31384;var __ZTSDu=Module["__ZTSDu"]=31392;var __ZTIPDu=Module["__ZTIPDu"]=31396;var __ZTSPDu=Module["__ZTSPDu"]=31412;var __ZTIPKDu=Module["__ZTIPKDu"]=31416;var __ZTSPKDu=Module["__ZTSPKDu"]=31432;var __ZTIDs=Module["__ZTIDs"]=31440;var __ZTSDs=Module["__ZTSDs"]=31448;var __ZTIPDs=Module["__ZTIPDs"]=31452;var __ZTSPDs=Module["__ZTSPDs"]=31468;var __ZTIPKDs=Module["__ZTIPKDs"]=31472;var __ZTSPKDs=Module["__ZTSPKDs"]=31488;var __ZTIDi=Module["__ZTIDi"]=31496;var __ZTSDi=Module["__ZTSDi"]=31504;var __ZTIPDi=Module["__ZTIPDi"]=31508;var __ZTSPDi=Module["__ZTSPDi"]=31524;var __ZTIPKDi=Module["__ZTIPKDi"]=31528;var __ZTSPKDi=Module["__ZTSPKDi"]=31544;var __ZTVN10__cxxabiv117__array_type_infoE=Module["__ZTVN10__cxxabiv117__array_type_infoE"]=31552;var __ZTIN10__cxxabiv117__array_type_infoE=Module["__ZTIN10__cxxabiv117__array_type_infoE"]=31580;var __ZTSN10__cxxabiv117__array_type_infoE=Module["__ZTSN10__cxxabiv117__array_type_infoE"]=31592;var __ZTVN10__cxxabiv120__function_type_infoE=Module["__ZTVN10__cxxabiv120__function_type_infoE"]=31628;var __ZTVN10__cxxabiv116__enum_type_infoE=Module["__ZTVN10__cxxabiv116__enum_type_infoE"]=31656;var __ZTIN10__cxxabiv116__enum_type_infoE=Module["__ZTIN10__cxxabiv116__enum_type_infoE"]=31684;var __ZTSN10__cxxabiv116__enum_type_infoE=Module["__ZTSN10__cxxabiv116__enum_type_infoE"]=31696;var __ZTIN10__cxxabiv120__si_class_type_infoE=Module["__ZTIN10__cxxabiv120__si_class_type_infoE"]=31812;var __ZTSN10__cxxabiv120__si_class_type_infoE=Module["__ZTSN10__cxxabiv120__si_class_type_infoE"]=31824;var __ZTIN10__cxxabiv121__vmi_class_type_infoE=Module["__ZTIN10__cxxabiv121__vmi_class_type_infoE"]=31904;var __ZTSN10__cxxabiv121__vmi_class_type_infoE=Module["__ZTSN10__cxxabiv121__vmi_class_type_infoE"]=31916;var __ZTVN10__cxxabiv117__pbase_type_infoE=Module["__ZTVN10__cxxabiv117__pbase_type_infoE"]=31956;var __ZTVN10__cxxabiv129__pointer_to_member_type_infoE=Module["__ZTVN10__cxxabiv129__pointer_to_member_type_infoE"]=32012;var __ZTVSt9bad_alloc=Module["__ZTVSt9bad_alloc"]=32040;var __ZTVSt20bad_array_new_length=Module["__ZTVSt20bad_array_new_length"]=32060;var __ZTISt9bad_alloc=Module["__ZTISt9bad_alloc"]=32176;var __ZTSSt9exception=Module["__ZTSSt9exception"]=32108;var __ZTVSt13bad_exception=Module["__ZTVSt13bad_exception"]=32124;var __ZTISt13bad_exception=Module["__ZTISt13bad_exception"]=32144;var __ZTSSt13bad_exception=Module["__ZTSSt13bad_exception"]=32156;var __ZTSSt9bad_alloc=Module["__ZTSSt9bad_alloc"]=32188;var __ZTSSt20bad_array_new_length=Module["__ZTSSt20bad_array_new_length"]=32216;var __ZTISt11logic_error=Module["__ZTISt11logic_error"]=32336;var __ZTISt13runtime_error=Module["__ZTISt13runtime_error"]=32572;var __ZTVSt12domain_error=Module["__ZTVSt12domain_error"]=32284;var __ZTISt12domain_error=Module["__ZTISt12domain_error"]=32304;var __ZTSSt12domain_error=Module["__ZTSSt12domain_error"]=32316;var __ZTSSt11logic_error=Module["__ZTSSt11logic_error"]=32348;var __ZTVSt16invalid_argument=Module["__ZTVSt16invalid_argument"]=32364;var __ZTISt16invalid_argument=Module["__ZTISt16invalid_argument"]=32384;var __ZTSSt16invalid_argument=Module["__ZTSSt16invalid_argument"]=32396;var __ZTSSt12length_error=Module["__ZTSSt12length_error"]=32452;var __ZTSSt12out_of_range=Module["__ZTSSt12out_of_range"]=32504;var __ZTVSt11range_error=Module["__ZTVSt11range_error"]=32524;var __ZTISt11range_error=Module["__ZTISt11range_error"]=32544;var __ZTSSt11range_error=Module["__ZTSSt11range_error"]=32556;var __ZTSSt13runtime_error=Module["__ZTSSt13runtime_error"]=32584;var __ZTVSt14overflow_error=Module["__ZTVSt14overflow_error"]=32604;var __ZTISt14overflow_error=Module["__ZTISt14overflow_error"]=32624;var __ZTSSt14overflow_error=Module["__ZTSSt14overflow_error"]=32636;var __ZTVSt15underflow_error=Module["__ZTVSt15underflow_error"]=32656;var __ZTISt15underflow_error=Module["__ZTISt15underflow_error"]=32676;var __ZTSSt15underflow_error=Module["__ZTSSt15underflow_error"]=32688;var __ZTVSt8bad_cast=Module["__ZTVSt8bad_cast"]=32708;var __ZTVSt10bad_typeid=Module["__ZTVSt10bad_typeid"]=32728;var __ZTISt8bad_cast=Module["__ZTISt8bad_cast"]=32788;var __ZTISt10bad_typeid=Module["__ZTISt10bad_typeid"]=32812;var __ZTVSt9type_info=Module["__ZTVSt9type_info"]=32748;var __ZTSSt9type_info=Module["__ZTSSt9type_info"]=32772;var __ZTSSt8bad_cast=Module["__ZTSSt8bad_cast"]=32800;var __ZTSSt10bad_typeid=Module["__ZTSSt10bad_typeid"]=32824;function run(){if(runDependencies>0){dependenciesFulfilled=run;return}preRun();if(runDependencies>0){dependenciesFulfilled=run;return}function doRun(){Module["calledRun"]=true;if(ABORT)return;initRuntime();Module["onRuntimeInitialized"]?.();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(()=>{setTimeout(()=>Module["setStatus"](""),1);doRun()},1)}else{doRun()}}function preInit(){if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].shift()()}}}preInit();run(); +var Module=typeof Module!="undefined"?Module:{};var ENVIRONMENT_IS_WEB=typeof window=="object";var ENVIRONMENT_IS_WORKER=typeof WorkerGlobalScope!="undefined";var ENVIRONMENT_IS_NODE=typeof process=="object"&&process.versions?.node&&process.type!="renderer";if(ENVIRONMENT_IS_NODE){}var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var _scriptName=typeof document!="undefined"?document.currentScript?.src:undefined;if(typeof __filename!="undefined"){_scriptName=__filename}else if(ENVIRONMENT_IS_WORKER){_scriptName=self.location.href}var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var readAsync,readBinary;if(ENVIRONMENT_IS_NODE){var fs=require("fs");var nodePath=require("path");scriptDirectory=__dirname+"/";readBinary=filename=>{filename=isFileURI(filename)?new URL(filename):filename;var ret=fs.readFileSync(filename);return ret};readAsync=async(filename,binary=true)=>{filename=isFileURI(filename)?new URL(filename):filename;var ret=fs.readFileSync(filename,binary?undefined:"utf8");return ret};if(process.argv.length>1){thisProgram=process.argv[1].replace(/\\/g,"/")}arguments_=process.argv.slice(2);if(typeof module!="undefined"){module["exports"]=Module}quit_=(status,toThrow)=>{process.exitCode=status;throw toThrow}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){try{scriptDirectory=new URL(".",_scriptName).href}catch{}{if(ENVIRONMENT_IS_WORKER){readBinary=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=async url=>{if(isFileURI(url)){return new Promise((resolve,reject)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=()=>{if(xhr.status==200||xhr.status==0&&xhr.response){resolve(xhr.response);return}reject(xhr.status)};xhr.onerror=reject;xhr.send(null)})}var response=await fetch(url,{credentials:"same-origin"});if(response.ok){return response.arrayBuffer()}throw new Error(response.status+" : "+response.url)}}}else{}var out=console.log.bind(console);var err=console.error.bind(console);var wasmBinary;var wasmMemory;var ABORT=false;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAP64,HEAPU64,HEAPF64;var runtimeInitialized=false;var isFileURI=filename=>filename.startsWith("file://");function updateMemoryViews(){var b=wasmMemory.buffer;HEAP8=new Int8Array(b);HEAP16=new Int16Array(b);HEAPU8=new Uint8Array(b);HEAPU16=new Uint16Array(b);HEAP32=new Int32Array(b);HEAPU32=new Uint32Array(b);HEAPF32=new Float32Array(b);HEAPF64=new Float64Array(b);HEAP64=new BigInt64Array(b);HEAPU64=new BigUint64Array(b)}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(onPreRuns)}function initRuntime(){runtimeInitialized=true;wasmExports["v"]()}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(onPostRuns)}var runDependencies=0;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;Module["monitorRunDependencies"]?.(runDependencies)}function removeRunDependency(id){runDependencies--;Module["monitorRunDependencies"]?.(runDependencies);if(runDependencies==0){if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){Module["onAbort"]?.(what);what="Aborted("+what+")";err(what);ABORT=true;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);throw e}var wasmBinaryFile;function findWasmBinary(){return locateFile("index.wasm")}function getBinarySync(file){if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw"both async and sync fetching of the wasm failed"}async function getWasmBinary(binaryFile){if(!wasmBinary){try{var response=await readAsync(binaryFile);return new Uint8Array(response)}catch{}}return getBinarySync(binaryFile)}async function instantiateArrayBuffer(binaryFile,imports){try{var binary=await getWasmBinary(binaryFile);var instance=await WebAssembly.instantiate(binary,imports);return instance}catch(reason){err(`failed to asynchronously prepare wasm: ${reason}`);abort(reason)}}async function instantiateAsync(binary,binaryFile,imports){if(!binary&&typeof WebAssembly.instantiateStreaming=="function"&&!isFileURI(binaryFile)&&!ENVIRONMENT_IS_NODE){try{var response=fetch(binaryFile,{credentials:"same-origin"});var instantiationResult=await WebAssembly.instantiateStreaming(response,imports);return instantiationResult}catch(reason){err(`wasm streaming compile failed: ${reason}`);err("falling back to ArrayBuffer instantiation")}}return instantiateArrayBuffer(binaryFile,imports)}function getWasmImports(){return{a:wasmImports}}async function createWasm(){function receiveInstance(instance,module){wasmExports=instance.exports;wasmMemory=wasmExports["u"];updateMemoryViews();wasmTable=wasmExports["A"];removeRunDependency("wasm-instantiate");return wasmExports}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){return receiveInstance(result["instance"])}var info=getWasmImports();if(Module["instantiateWasm"]){return new Promise((resolve,reject)=>{Module["instantiateWasm"](info,(mod,inst)=>{resolve(receiveInstance(mod,inst))})})}wasmBinaryFile??=findWasmBinary();var result=await instantiateAsync(wasmBinary,wasmBinaryFile,info);var exports=receiveInstantiationResult(result);return exports}class ExitStatus{name="ExitStatus";constructor(status){this.message=`Program terminated with exit(${status})`;this.status=status}}var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};var onPostRuns=[];var addOnPostRun=cb=>onPostRuns.push(cb);var onPreRuns=[];var addOnPreRun=cb=>onPreRuns.push(cb);var noExitRuntime=true;class ExceptionInfo{constructor(excPtr){this.excPtr=excPtr;this.ptr=excPtr-24}set_type(type){HEAPU32[this.ptr+4>>2]=type}get_type(){return HEAPU32[this.ptr+4>>2]}set_destructor(destructor){HEAPU32[this.ptr+8>>2]=destructor}get_destructor(){return HEAPU32[this.ptr+8>>2]}set_caught(caught){caught=caught?1:0;HEAP8[this.ptr+12]=caught}get_caught(){return HEAP8[this.ptr+12]!=0}set_rethrown(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13]=rethrown}get_rethrown(){return HEAP8[this.ptr+13]!=0}init(type,destructor){this.set_adjusted_ptr(0);this.set_type(type);this.set_destructor(destructor)}set_adjusted_ptr(adjustedPtr){HEAPU32[this.ptr+16>>2]=adjustedPtr}get_adjusted_ptr(){return HEAPU32[this.ptr+16>>2]}}var exceptionLast=0;var uncaughtExceptionCount=0;var ___cxa_throw=(ptr,type,destructor)=>{var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw exceptionLast};var __abort_js=()=>abort("");var embind_init_charCodes=()=>{var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes};var embind_charCodes;var readLatin1String=ptr=>{var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret};var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var BindingError=class BindingError extends Error{constructor(message){super(message);this.name="BindingError"}};var throwBindingError=message=>{throw new BindingError(message)};function sharedRegisterType(rawType,registeredInstance,options={}){var name=registeredInstance.name;if(!rawType){throwBindingError(`type "${name}" must have a positive integer typeid pointer`)}if(registeredTypes.hasOwnProperty(rawType)){if(options.ignoreDuplicateRegistrations){return}else{throwBindingError(`Cannot register type '${name}' twice`)}}registeredTypes[rawType]=registeredInstance;delete typeDependencies[rawType];if(awaitingDependencies.hasOwnProperty(rawType)){var callbacks=awaitingDependencies[rawType];delete awaitingDependencies[rawType];callbacks.forEach(cb=>cb())}}function registerType(rawType,registeredInstance,options={}){return sharedRegisterType(rawType,registeredInstance,options)}var integerReadValueFromPointer=(name,width,signed)=>{switch(width){case 1:return signed?pointer=>HEAP8[pointer]:pointer=>HEAPU8[pointer];case 2:return signed?pointer=>HEAP16[pointer>>1]:pointer=>HEAPU16[pointer>>1];case 4:return signed?pointer=>HEAP32[pointer>>2]:pointer=>HEAPU32[pointer>>2];case 8:return signed?pointer=>HEAP64[pointer>>3]:pointer=>HEAPU64[pointer>>3];default:throw new TypeError(`invalid integer width (${width}): ${name}`)}};var __embind_register_bigint=(primitiveType,name,size,minRange,maxRange)=>{name=readLatin1String(name);const isUnsignedType=minRange===0n;let fromWireType=value=>value;if(isUnsignedType){const bitSize=size*8;fromWireType=value=>BigInt.asUintN(bitSize,value);maxRange=fromWireType(maxRange)}registerType(primitiveType,{name,fromWireType,toWireType:(destructors,value)=>{if(typeof value=="number"){value=BigInt(value)}return value},argPackAdvance:GenericWireTypeSize,readValueFromPointer:integerReadValueFromPointer(name,size,!isUnsignedType),destructorFunction:null})};var GenericWireTypeSize=8;var __embind_register_bool=(rawType,name,trueValue,falseValue)=>{name=readLatin1String(name);registerType(rawType,{name,fromWireType:function(wt){return!!wt},toWireType:function(destructors,o){return o?trueValue:falseValue},argPackAdvance:GenericWireTypeSize,readValueFromPointer:function(pointer){return this["fromWireType"](HEAPU8[pointer])},destructorFunction:null})};var shallowCopyInternalPointer=o=>({count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType});var throwInstanceAlreadyDeleted=obj=>{function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")};var finalizationRegistry=false;var detachFinalizer=handle=>{};var runDestructor=$$=>{if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}};var releaseClassHandle=$$=>{$$.count.value-=1;var toDelete=0===$$.count.value;if(toDelete){runDestructor($$)}};var attachFinalizer=handle=>{if("undefined"===typeof FinalizationRegistry){attachFinalizer=handle=>handle;return handle}finalizationRegistry=new FinalizationRegistry(info=>{releaseClassHandle(info.$$)});attachFinalizer=handle=>{var $$=handle.$$;var hasSmartPtr=!!$$.smartPtr;if(hasSmartPtr){var info={$$};finalizationRegistry.register(handle,info,handle)}return handle};detachFinalizer=handle=>finalizationRegistry.unregister(handle);return attachFinalizer(handle)};var deletionQueue=[];var flushPendingDeletes=()=>{while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}};var delayFunction;var init_ClassHandle=()=>{let proto=ClassHandle.prototype;Object.assign(proto,{isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;other.$$=other.$$;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right},clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=attachFinalizer(Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}}));clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}},delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}detachFinalizer(this);releaseClassHandle(this.$$);if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}},isDeleted(){return!this.$$.ptr},deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}});const symbolDispose=Symbol.dispose;if(symbolDispose){proto[symbolDispose]=proto["delete"]}};function ClassHandle(){}var createNamedFunction=(name,func)=>Object.defineProperty(func,"name",{value:name});var registeredPointers={};var ensureOverloadTable=(proto,methodName,humanName)=>{if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=function(...args){if(!proto[methodName].overloadTable.hasOwnProperty(args.length)){throwBindingError(`Function '${humanName}' called with an invalid number of arguments (${args.length}) - expects one of (${proto[methodName].overloadTable})!`)}return proto[methodName].overloadTable[args.length].apply(this,args)};proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}};var exposePublicSymbol=(name,value,numArguments)=>{if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError(`Cannot register public name '${name}' twice`)}ensureOverloadTable(Module,name,name);if(Module[name].overloadTable.hasOwnProperty(numArguments)){throwBindingError(`Cannot register multiple overloads of a function with the same number of arguments (${numArguments})!`)}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}};var char_0=48;var char_9=57;var makeLegalFunctionName=name=>{name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return`_${name}`}return name};function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}var upcastPointer=(ptr,ptrClass,desiredClass)=>{while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError(`Expected null or instance of ${desiredClass.name}, got an instance of ${ptrClass.name}`)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr};var embindRepr=v=>{if(v===null){return"null"}var t=typeof v;if(t==="object"||t==="array"||t==="function"){return v.toString()}else{return""+v}};function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError(`null is not a valid ${this.name}`)}return 0}if(!handle.$$){throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`)}if(!handle.$$.ptr){throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError(`null is not a valid ${this.name}`)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle||!handle.$$){throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`)}if(!handle.$$.ptr){throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name} to parameter type ${this.name}`)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name} to parameter type ${this.name}`)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,Emval.toHandle(()=>clonedHandle["delete"]()));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError(`null is not a valid ${this.name}`)}return 0}if(!handle.$$){throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`)}if(!handle.$$.ptr){throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`)}if(handle.$$.ptrType.isConst){throwBindingError(`Cannot convert argument of type ${handle.$$.ptrType.name} to parameter type ${this.name}`)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function readPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}var downcastPointer=(ptr,ptrClass,desiredClass)=>{if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)};var registeredInstances={};var getBasestPointer=(class_,ptr)=>{if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr};var getInheritedInstance=(class_,ptr)=>{ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]};var InternalError=class InternalError extends Error{constructor(message){super(message);this.name="InternalError"}};var throwInternalError=message=>{throw new InternalError(message)};var makeClassHandle=(prototype,record)=>{if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return attachFinalizer(Object.create(prototype,{$$:{value:record,writable:true}}))};function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}var init_RegisteredPointer=()=>{Object.assign(RegisteredPointer.prototype,{getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr},destructor(ptr){this.rawDestructor?.(ptr)},argPackAdvance:GenericWireTypeSize,readValueFromPointer:readPointer,fromWireType:RegisteredPointer_fromWireType})};function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}var replacePublicSymbol=(name,value,numArguments)=>{if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistent public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}};var wasmTableMirror=[];var wasmTable;var getWasmTableEntry=funcPtr=>{var func=wasmTableMirror[funcPtr];if(!func){wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func};var embind__requireFunction=(signature,rawFunction,isAsync=false)=>{signature=readLatin1String(signature);function makeDynCaller(){var rtn=getWasmTableEntry(rawFunction);return rtn}var fp=makeDynCaller();if(typeof fp!="function"){throwBindingError(`unknown function pointer with signature ${signature}: ${rawFunction}`)}return fp};class UnboundTypeError extends Error{}var getTypeName=type=>{var ptr=___getTypeName(type);var rv=readLatin1String(ptr);_free(ptr);return rv};var throwUnboundTypeError=(message,types)=>{var unboundTypes=[];var seen={};function visit(type){if(seen[type]){return}if(registeredTypes[type]){return}if(typeDependencies[type]){typeDependencies[type].forEach(visit);return}unboundTypes.push(type);seen[type]=true}types.forEach(visit);throw new UnboundTypeError(`${message}: `+unboundTypes.map(getTypeName).join([", "]))};var whenDependentTypesAreResolved=(myTypes,dependentTypes,getTypeConverters)=>{myTypes.forEach(type=>typeDependencies[type]=dependentTypes);function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i{if(registeredTypes.hasOwnProperty(dt)){typeConverters[i]=registeredTypes[dt]}else{unregisteredTypes.push(dt);if(!awaitingDependencies.hasOwnProperty(dt)){awaitingDependencies[dt]=[]}awaitingDependencies[dt].push(()=>{typeConverters[i]=registeredTypes[dt];++registered;if(registered===unregisteredTypes.length){onComplete(typeConverters)}})}});if(0===unregisteredTypes.length){onComplete(typeConverters)}};var __embind_register_class=(rawType,rawPointerType,rawConstPointerType,baseClassRawType,getActualTypeSignature,getActualType,upcastSignature,upcast,downcastSignature,downcast,name,destructorSignature,rawDestructor)=>{name=readLatin1String(name);getActualType=embind__requireFunction(getActualTypeSignature,getActualType);upcast&&=embind__requireFunction(upcastSignature,upcast);downcast&&=embind__requireFunction(downcastSignature,downcast);rawDestructor=embind__requireFunction(destructorSignature,rawDestructor);var legalFunctionName=makeLegalFunctionName(name);exposePublicSymbol(legalFunctionName,function(){throwUnboundTypeError(`Cannot construct ${name} due to unbound types`,[baseClassRawType])});whenDependentTypesAreResolved([rawType,rawPointerType,rawConstPointerType],baseClassRawType?[baseClassRawType]:[],base=>{base=base[0];var baseClass;var basePrototype;if(baseClassRawType){baseClass=base.registeredClass;basePrototype=baseClass.instancePrototype}else{basePrototype=ClassHandle.prototype}var constructor=createNamedFunction(name,function(...args){if(Object.getPrototypeOf(this)!==instancePrototype){throw new BindingError(`Use 'new' to construct ${name}`)}if(undefined===registeredClass.constructor_body){throw new BindingError(`${name} has no accessible constructor`)}var body=registeredClass.constructor_body[args.length];if(undefined===body){throw new BindingError(`Tried to invoke ctor of ${name} with invalid number of parameters (${args.length}) - expected (${Object.keys(registeredClass.constructor_body).toString()}) parameters instead!`)}return body.apply(this,args)});var instancePrototype=Object.create(basePrototype,{constructor:{value:constructor}});constructor.prototype=instancePrototype;var registeredClass=new RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast);if(registeredClass.baseClass){registeredClass.baseClass.__derivedClasses??=[];registeredClass.baseClass.__derivedClasses.push(registeredClass)}var referenceConverter=new RegisteredPointer(name,registeredClass,true,false,false);var pointerConverter=new RegisteredPointer(name+"*",registeredClass,false,false,false);var constPointerConverter=new RegisteredPointer(name+" const*",registeredClass,false,true,false);registeredPointers[rawType]={pointerType:pointerConverter,constPointerType:constPointerConverter};replacePublicSymbol(legalFunctionName,constructor);return[referenceConverter,pointerConverter,constPointerConverter]})};var heap32VectorToArray=(count,firstElement)=>{var array=[];for(var i=0;i>2])}return array};var runDestructors=destructors=>{while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}};function usesDestructorStack(argTypes){for(var i=1;i{var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],classType=>{classType=classType[0];var humanName=`constructor ${classType.name}`;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError(`Cannot register multiple constructors with identical number of parameters (${argCount-1}) for class '${classType.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`)}classType.registeredClass.constructor_body[argCount-1]=()=>{throwUnboundTypeError(`Cannot construct ${classType.name} due to unbound types`,rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,argTypes=>{argTypes.splice(1,0,null);classType.registeredClass.constructor_body[argCount-1]=craftInvokerFunction(humanName,argTypes,null,invoker,rawConstructor);return[]});return[]})};var getFunctionName=signature=>{signature=signature.trim();const argsIndex=signature.indexOf("(");if(argsIndex===-1)return signature;return signature.slice(0,argsIndex)};var __embind_register_class_function=(rawClassType,methodName,argCount,rawArgTypesAddr,invokerSignature,rawInvoker,context,isPureVirtual,isAsync,isNonnullReturn)=>{var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);methodName=readLatin1String(methodName);methodName=getFunctionName(methodName);rawInvoker=embind__requireFunction(invokerSignature,rawInvoker,isAsync);whenDependentTypesAreResolved([],[rawClassType],classType=>{classType=classType[0];var humanName=`${classType.name}.${methodName}`;if(methodName.startsWith("@@")){methodName=Symbol[methodName.substring(2)]}if(isPureVirtual){classType.registeredClass.pureVirtualFunctions.push(methodName)}function unboundTypesHandler(){throwUnboundTypeError(`Cannot call ${humanName} due to unbound types`,rawArgTypes)}var proto=classType.registeredClass.instancePrototype;var method=proto[methodName];if(undefined===method||undefined===method.overloadTable&&method.className!==classType.name&&method.argCount===argCount-2){unboundTypesHandler.argCount=argCount-2;unboundTypesHandler.className=classType.name;proto[methodName]=unboundTypesHandler}else{ensureOverloadTable(proto,methodName,humanName);proto[methodName].overloadTable[argCount-2]=unboundTypesHandler}whenDependentTypesAreResolved([],rawArgTypes,argTypes=>{var memberFunction=craftInvokerFunction(humanName,argTypes,classType,rawInvoker,context,isAsync);if(undefined===proto[methodName].overloadTable){memberFunction.argCount=argCount-2;proto[methodName]=memberFunction}else{proto[methodName].overloadTable[argCount-2]=memberFunction}return[]});return[]})};var validateThis=(this_,classType,humanName)=>{if(!(this_ instanceof Object)){throwBindingError(`${humanName} with invalid "this": ${this_}`)}if(!(this_ instanceof classType.registeredClass.constructor)){throwBindingError(`${humanName} incompatible with "this" of type ${this_.constructor.name}`)}if(!this_.$$.ptr){throwBindingError(`cannot call emscripten binding method ${humanName} on deleted object`)}return upcastPointer(this_.$$.ptr,this_.$$.ptrType.registeredClass,classType.registeredClass)};var __embind_register_class_property=(classType,fieldName,getterReturnType,getterSignature,getter,getterContext,setterArgumentType,setterSignature,setter,setterContext)=>{fieldName=readLatin1String(fieldName);getter=embind__requireFunction(getterSignature,getter);whenDependentTypesAreResolved([],[classType],classType=>{classType=classType[0];var humanName=`${classType.name}.${fieldName}`;var desc={get(){throwUnboundTypeError(`Cannot access ${humanName} due to unbound types`,[getterReturnType,setterArgumentType])},enumerable:true,configurable:true};if(setter){desc.set=()=>throwUnboundTypeError(`Cannot access ${humanName} due to unbound types`,[getterReturnType,setterArgumentType])}else{desc.set=v=>throwBindingError(humanName+" is a read-only property")}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);whenDependentTypesAreResolved([],setter?[getterReturnType,setterArgumentType]:[getterReturnType],types=>{var getterReturnType=types[0];var desc={get(){var ptr=validateThis(this,classType,humanName+" getter");return getterReturnType["fromWireType"](getter(getterContext,ptr))},enumerable:true};if(setter){setter=embind__requireFunction(setterSignature,setter);var setterArgumentType=types[1];desc.set=function(v){var ptr=validateThis(this,classType,humanName+" setter");var destructors=[];setter(setterContext,ptr,setterArgumentType["toWireType"](destructors,v));runDestructors(destructors)}}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);return[]});return[]})};var emval_freelist=[];var emval_handles=[0,1,,1,null,1,true,1,false,1];var __emval_decref=handle=>{if(handle>9&&0===--emval_handles[handle+1]){emval_handles[handle]=undefined;emval_freelist.push(handle)}};var Emval={toValue:handle=>{if(!handle){throwBindingError(`Cannot use deleted val. handle = ${handle}`)}return emval_handles[handle]},toHandle:value=>{switch(value){case undefined:return 2;case null:return 4;case true:return 6;case false:return 8;default:{const handle=emval_freelist.pop()||emval_handles.length;emval_handles[handle]=value;emval_handles[handle+1]=1;return handle}}}};var EmValType={name:"emscripten::val",fromWireType:handle=>{var rv=Emval.toValue(handle);__emval_decref(handle);return rv},toWireType:(destructors,value)=>Emval.toHandle(value),argPackAdvance:GenericWireTypeSize,readValueFromPointer:readPointer,destructorFunction:null};var __embind_register_emval=rawType=>registerType(rawType,EmValType);var floatReadValueFromPointer=(name,width)=>{switch(width){case 4:return function(pointer){return this["fromWireType"](HEAPF32[pointer>>2])};case 8:return function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])};default:throw new TypeError(`invalid float width (${width}): ${name}`)}};var __embind_register_float=(rawType,name,size)=>{name=readLatin1String(name);registerType(rawType,{name,fromWireType:value=>value,toWireType:(destructors,value)=>value,argPackAdvance:GenericWireTypeSize,readValueFromPointer:floatReadValueFromPointer(name,size),destructorFunction:null})};var __embind_register_function=(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn,isAsync,isNonnullReturn)=>{var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=readLatin1String(name);name=getFunctionName(name);rawInvoker=embind__requireFunction(signature,rawInvoker,isAsync);exposePublicSymbol(name,function(){throwUnboundTypeError(`Cannot call ${name} due to unbound types`,argTypes)},argCount-1);whenDependentTypesAreResolved([],argTypes,argTypes=>{var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn,isAsync),argCount-1);return[]})};var __embind_register_integer=(primitiveType,name,size,minRange,maxRange)=>{name=readLatin1String(name);const isUnsignedType=minRange===0;let fromWireType=value=>value;if(isUnsignedType){var bitshift=32-8*size;fromWireType=value=>value<>>bitshift;maxRange=fromWireType(maxRange)}registerType(primitiveType,{name,fromWireType,toWireType:(destructors,value)=>value,argPackAdvance:GenericWireTypeSize,readValueFromPointer:integerReadValueFromPointer(name,size,minRange!==0),destructorFunction:null})};var __embind_register_memory_view=(rawType,dataTypeIndex,name)=>{var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){var size=HEAPU32[handle>>2];var data=HEAPU32[handle+4>>2];return new TA(HEAP8.buffer,data,size)}name=readLatin1String(name);registerType(rawType,{name,fromWireType:decodeMemoryView,argPackAdvance:GenericWireTypeSize,readValueFromPointer:decodeMemoryView},{ignoreDuplicateRegistrations:true})};var stringToUTF8Array=(str,heap,outIdx,maxBytesToWrite)=>{if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx};var stringToUTF8=(str,outPtr,maxBytesToWrite)=>stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite);var lengthBytesUTF8=str=>{var len=0;for(var i=0;i=55296&&c<=57343){len+=4;++i}else{len+=3}}return len};var UTF8Decoder=typeof TextDecoder!="undefined"?new TextDecoder:undefined;var UTF8ArrayToString=(heapOrArray,idx=0,maxBytesToRead=NaN)=>{var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}var str="";while(idx>10,56320|ch&1023)}}return str};var UTF8ToString=(ptr,maxBytesToRead)=>ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):"";var __embind_register_std_string=(rawType,name)=>{name=readLatin1String(name);var stdStringIsUTF8=true;registerType(rawType,{name,fromWireType(value){var length=HEAPU32[value>>2];var payload=value+4;var str;if(stdStringIsUTF8){var decodeStartPtr=payload;for(var i=0;i<=length;++i){var currentBytePtr=payload+i;if(i==length||HEAPU8[currentBytePtr]==0){var maxRead=currentBytePtr-decodeStartPtr;var stringSegment=UTF8ToString(decodeStartPtr,maxRead);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+1}}}else{var a=new Array(length);for(var i=0;i>2]=length;if(valueIsOfTypeString){if(stdStringIsUTF8){stringToUTF8(value,ptr,length+1)}else{for(var i=0;i255){_free(base);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+i]=charCode}}}else{HEAPU8.set(value,ptr)}if(destructors!==null){destructors.push(_free,base)}return base},argPackAdvance:GenericWireTypeSize,readValueFromPointer:readPointer,destructorFunction(ptr){_free(ptr)}})};var UTF16Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf-16le"):undefined;var UTF16ToString=(ptr,maxBytesToRead)=>{var idx=ptr>>1;var maxIdx=idx+maxBytesToRead/2;var endIdx=idx;while(!(endIdx>=maxIdx)&&HEAPU16[endIdx])++endIdx;if(endIdx-idx>16&&UTF16Decoder)return UTF16Decoder.decode(HEAPU16.subarray(idx,endIdx));var str="";for(var i=idx;!(i>=maxIdx);++i){var codeUnit=HEAPU16[i];if(codeUnit==0)break;str+=String.fromCharCode(codeUnit)}return str};var stringToUTF16=(str,outPtr,maxBytesToWrite)=>{maxBytesToWrite??=2147483647;if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr};var lengthBytesUTF16=str=>str.length*2;var UTF32ToString=(ptr,maxBytesToRead)=>{var i=0;var str="";while(!(i>=maxBytesToRead/4)){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)break;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}return str};var stringToUTF32=(str,outPtr,maxBytesToWrite)=>{maxBytesToWrite??=2147483647;if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr};var lengthBytesUTF32=str=>{var len=0;for(var i=0;i=55296&&codeUnit<=57343)++i;len+=4}return len};var __embind_register_std_wstring=(rawType,charSize,name)=>{name=readLatin1String(name);var decodeString,encodeString,readCharAt,lengthBytesUTF;if(charSize===2){decodeString=UTF16ToString;encodeString=stringToUTF16;lengthBytesUTF=lengthBytesUTF16;readCharAt=pointer=>HEAPU16[pointer>>1]}else if(charSize===4){decodeString=UTF32ToString;encodeString=stringToUTF32;lengthBytesUTF=lengthBytesUTF32;readCharAt=pointer=>HEAPU32[pointer>>2]}registerType(rawType,{name,fromWireType:value=>{var length=HEAPU32[value>>2];var str;var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i*charSize;if(i==length||readCharAt(currentBytePtr)==0){var maxReadBytes=currentBytePtr-decodeStartPtr;var stringSegment=decodeString(decodeStartPtr,maxReadBytes);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+charSize}}_free(value);return str},toWireType:(destructors,value)=>{if(!(typeof value=="string")){throwBindingError(`Cannot pass non-string to C++ string type ${name}`)}var length=lengthBytesUTF(value);var ptr=_malloc(4+length+charSize);HEAPU32[ptr>>2]=length/charSize;encodeString(value,ptr+4,length+charSize);if(destructors!==null){destructors.push(_free,ptr)}return ptr},argPackAdvance:GenericWireTypeSize,readValueFromPointer:readPointer,destructorFunction(ptr){_free(ptr)}})};var __embind_register_void=(rawType,name)=>{name=readLatin1String(name);registerType(rawType,{isVoid:true,name,argPackAdvance:0,fromWireType:()=>undefined,toWireType:(destructors,o)=>undefined})};var requireRegisteredType=(rawType,humanName)=>{var impl=registeredTypes[rawType];if(undefined===impl){throwBindingError(`${humanName} has unknown type ${getTypeName(rawType)}`)}return impl};var __emval_take_value=(type,arg)=>{type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](arg);return Emval.toHandle(v)};var _emscripten_date_now=()=>Date.now();var abortOnCannotGrowMemory=requestedSize=>{abort("OOM")};var _emscripten_resize_heap=requestedSize=>{var oldSize=HEAPU8.length;requestedSize>>>=0;abortOnCannotGrowMemory(requestedSize)};var printCharBuffers=[null,[],[]];var printChar=(stream,curr)=>{var buffer=printCharBuffers[stream];if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer));buffer.length=0}else{buffer.push(curr)}};var _fd_write=(fd,iov,iovcnt,pnum)=>{var num=0;for(var i=0;i>2];var len=HEAPU32[iov+4>>2];iov+=8;for(var j=0;j>2]=num;return 0};embind_init_charCodes();init_ClassHandle();init_RegisteredPointer();{if(Module["noExitRuntime"])noExitRuntime=Module["noExitRuntime"];if(Module["print"])out=Module["print"];if(Module["printErr"])err=Module["printErr"];if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"]}var wasmImports={f:___cxa_throw,p:__abort_js,k:__embind_register_bigint,m:__embind_register_bool,l:__embind_register_class,h:__embind_register_class_constructor,e:__embind_register_class_function,a:__embind_register_class_property,r:__embind_register_emval,j:__embind_register_float,c:__embind_register_function,d:__embind_register_integer,b:__embind_register_memory_view,s:__embind_register_std_string,g:__embind_register_std_wstring,n:__embind_register_void,o:__emval_take_value,t:_emscripten_date_now,q:_emscripten_resize_heap,i:_fd_write};var wasmExports;createWasm();var ___wasm_call_ctors=()=>(___wasm_call_ctors=wasmExports["v"])();var _param_get=Module["_param_get"]=(a0,a1)=>(_param_get=Module["_param_get"]=wasmExports["w"])(a0,a1);var _param_set_used=Module["_param_set_used"]=a0=>(_param_set_used=Module["_param_set_used"]=wasmExports["x"])(a0);var __Znwm=Module["__Znwm"]=a0=>(__Znwm=Module["__Znwm"]=wasmExports["y"])(a0);var __ZdlPvm=Module["__ZdlPvm"]=(a0,a1)=>(__ZdlPvm=Module["__ZdlPvm"]=wasmExports["z"])(a0,a1);var _malloc=a0=>(_malloc=wasmExports["B"])(a0);var __ZNSt12length_errorD1Ev=Module["__ZNSt12length_errorD1Ev"]=a0=>(__ZNSt12length_errorD1Ev=Module["__ZNSt12length_errorD1Ev"]=wasmExports["C"])(a0);var ___cxa_allocate_exception=Module["___cxa_allocate_exception"]=a0=>(___cxa_allocate_exception=Module["___cxa_allocate_exception"]=wasmExports["D"])(a0);var __ZNSt20bad_array_new_lengthD1Ev=Module["__ZNSt20bad_array_new_lengthD1Ev"]=a0=>(__ZNSt20bad_array_new_lengthD1Ev=Module["__ZNSt20bad_array_new_lengthD1Ev"]=wasmExports["E"])(a0);var __ZNSt20bad_array_new_lengthC1Ev=Module["__ZNSt20bad_array_new_lengthC1Ev"]=a0=>(__ZNSt20bad_array_new_lengthC1Ev=Module["__ZNSt20bad_array_new_lengthC1Ev"]=wasmExports["F"])(a0);var __ZNSt12out_of_rangeD1Ev=Module["__ZNSt12out_of_rangeD1Ev"]=a0=>(__ZNSt12out_of_rangeD1Ev=Module["__ZNSt12out_of_rangeD1Ev"]=wasmExports["G"])(a0);var ___cxa_pure_virtual=Module["___cxa_pure_virtual"]=()=>(___cxa_pure_virtual=Module["___cxa_pure_virtual"]=wasmExports["H"])();var ___getTypeName=a0=>(___getTypeName=wasmExports["I"])(a0);var __ZNSt9exceptionD2Ev=Module["__ZNSt9exceptionD2Ev"]=a0=>(__ZNSt9exceptionD2Ev=Module["__ZNSt9exceptionD2Ev"]=wasmExports["J"])(a0);var __emscripten_memcpy_bulkmem=Module["__emscripten_memcpy_bulkmem"]=(a0,a1,a2)=>(__emscripten_memcpy_bulkmem=Module["__emscripten_memcpy_bulkmem"]=wasmExports["K"])(a0,a1,a2);var _emscripten_stack_get_end=Module["_emscripten_stack_get_end"]=()=>(_emscripten_stack_get_end=Module["_emscripten_stack_get_end"]=wasmExports["L"])();var _emscripten_stack_get_base=Module["_emscripten_stack_get_base"]=()=>(_emscripten_stack_get_base=Module["_emscripten_stack_get_base"]=wasmExports["M"])();var _free=a0=>(_free=wasmExports["N"])(a0);var _emscripten_stack_init=Module["_emscripten_stack_init"]=()=>(_emscripten_stack_init=Module["_emscripten_stack_init"]=wasmExports["O"])();var _emscripten_stack_set_limits=Module["_emscripten_stack_set_limits"]=(a0,a1)=>(_emscripten_stack_set_limits=Module["_emscripten_stack_set_limits"]=wasmExports["P"])(a0,a1);var _emscripten_stack_get_free=Module["_emscripten_stack_get_free"]=()=>(_emscripten_stack_get_free=Module["_emscripten_stack_get_free"]=wasmExports["Q"])();var __ZSt15get_new_handlerv=Module["__ZSt15get_new_handlerv"]=()=>(__ZSt15get_new_handlerv=Module["__ZSt15get_new_handlerv"]=wasmExports["R"])();var __Znam=Module["__Znam"]=a0=>(__Znam=Module["__Znam"]=wasmExports["S"])(a0);var __ZdlPv=Module["__ZdlPv"]=a0=>(__ZdlPv=Module["__ZdlPv"]=wasmExports["T"])(a0);var __ZdaPv=Module["__ZdaPv"]=a0=>(__ZdaPv=Module["__ZdaPv"]=wasmExports["U"])(a0);var __ZdaPvm=Module["__ZdaPvm"]=(a0,a1)=>(__ZdaPvm=Module["__ZdaPvm"]=wasmExports["V"])(a0,a1);var __ZnwmSt11align_val_t=Module["__ZnwmSt11align_val_t"]=(a0,a1)=>(__ZnwmSt11align_val_t=Module["__ZnwmSt11align_val_t"]=wasmExports["W"])(a0,a1);var __ZnamSt11align_val_t=Module["__ZnamSt11align_val_t"]=(a0,a1)=>(__ZnamSt11align_val_t=Module["__ZnamSt11align_val_t"]=wasmExports["X"])(a0,a1);var __ZdlPvSt11align_val_t=Module["__ZdlPvSt11align_val_t"]=(a0,a1)=>(__ZdlPvSt11align_val_t=Module["__ZdlPvSt11align_val_t"]=wasmExports["Y"])(a0,a1);var __ZdlPvmSt11align_val_t=Module["__ZdlPvmSt11align_val_t"]=(a0,a1,a2)=>(__ZdlPvmSt11align_val_t=Module["__ZdlPvmSt11align_val_t"]=wasmExports["Z"])(a0,a1,a2);var __ZdaPvSt11align_val_t=Module["__ZdaPvSt11align_val_t"]=(a0,a1)=>(__ZdaPvSt11align_val_t=Module["__ZdaPvSt11align_val_t"]=wasmExports["_"])(a0,a1);var __ZdaPvmSt11align_val_t=Module["__ZdaPvmSt11align_val_t"]=(a0,a1,a2)=>(__ZdaPvmSt11align_val_t=Module["__ZdaPvmSt11align_val_t"]=wasmExports["$"])(a0,a1,a2);var __ZSt14set_unexpectedPFvvE=Module["__ZSt14set_unexpectedPFvvE"]=a0=>(__ZSt14set_unexpectedPFvvE=Module["__ZSt14set_unexpectedPFvvE"]=wasmExports["aa"])(a0);var __ZSt13set_terminatePFvvE=Module["__ZSt13set_terminatePFvvE"]=a0=>(__ZSt13set_terminatePFvvE=Module["__ZSt13set_terminatePFvvE"]=wasmExports["ba"])(a0);var __ZSt15set_new_handlerPFvvE=Module["__ZSt15set_new_handlerPFvvE"]=a0=>(__ZSt15set_new_handlerPFvvE=Module["__ZSt15set_new_handlerPFvvE"]=wasmExports["ca"])(a0);var __ZSt14get_unexpectedv=Module["__ZSt14get_unexpectedv"]=()=>(__ZSt14get_unexpectedv=Module["__ZSt14get_unexpectedv"]=wasmExports["da"])();var __ZSt10unexpectedv=Module["__ZSt10unexpectedv"]=()=>(__ZSt10unexpectedv=Module["__ZSt10unexpectedv"]=wasmExports["ea"])();var __ZSt13get_terminatev=Module["__ZSt13get_terminatev"]=()=>(__ZSt13get_terminatev=Module["__ZSt13get_terminatev"]=wasmExports["fa"])();var __ZSt9terminatev=Module["__ZSt9terminatev"]=()=>(__ZSt9terminatev=Module["__ZSt9terminatev"]=wasmExports["ga"])();var ___cxa_current_primary_exception=Module["___cxa_current_primary_exception"]=()=>(___cxa_current_primary_exception=Module["___cxa_current_primary_exception"]=wasmExports["ha"])();var ___cxa_rethrow_primary_exception=Module["___cxa_rethrow_primary_exception"]=a0=>(___cxa_rethrow_primary_exception=Module["___cxa_rethrow_primary_exception"]=wasmExports["ia"])(a0);var ___cxa_uncaught_exception=Module["___cxa_uncaught_exception"]=()=>(___cxa_uncaught_exception=Module["___cxa_uncaught_exception"]=wasmExports["ja"])();var ___cxa_uncaught_exceptions=Module["___cxa_uncaught_exceptions"]=()=>(___cxa_uncaught_exceptions=Module["___cxa_uncaught_exceptions"]=wasmExports["ka"])();var ___cxa_free_exception=Module["___cxa_free_exception"]=a0=>(___cxa_free_exception=Module["___cxa_free_exception"]=wasmExports["la"])(a0);var ___cxa_init_primary_exception=Module["___cxa_init_primary_exception"]=(a0,a1,a2)=>(___cxa_init_primary_exception=Module["___cxa_init_primary_exception"]=wasmExports["ma"])(a0,a1,a2);var ___cxa_deleted_virtual=Module["___cxa_deleted_virtual"]=()=>(___cxa_deleted_virtual=Module["___cxa_deleted_virtual"]=wasmExports["na"])();var ___dynamic_cast=Module["___dynamic_cast"]=(a0,a1,a2,a3)=>(___dynamic_cast=Module["___dynamic_cast"]=wasmExports["oa"])(a0,a1,a2,a3);var __ZNSt9type_infoD2Ev=Module["__ZNSt9type_infoD2Ev"]=a0=>(__ZNSt9type_infoD2Ev=Module["__ZNSt9type_infoD2Ev"]=wasmExports["pa"])(a0);var __ZNSt9exceptionD0Ev=Module["__ZNSt9exceptionD0Ev"]=a0=>(__ZNSt9exceptionD0Ev=Module["__ZNSt9exceptionD0Ev"]=wasmExports["qa"])(a0);var __ZNSt9exceptionD1Ev=Module["__ZNSt9exceptionD1Ev"]=a0=>(__ZNSt9exceptionD1Ev=Module["__ZNSt9exceptionD1Ev"]=wasmExports["ra"])(a0);var __ZNKSt9exception4whatEv=Module["__ZNKSt9exception4whatEv"]=a0=>(__ZNKSt9exception4whatEv=Module["__ZNKSt9exception4whatEv"]=wasmExports["sa"])(a0);var __ZNSt13bad_exceptionD0Ev=Module["__ZNSt13bad_exceptionD0Ev"]=a0=>(__ZNSt13bad_exceptionD0Ev=Module["__ZNSt13bad_exceptionD0Ev"]=wasmExports["ta"])(a0);var __ZNSt13bad_exceptionD1Ev=Module["__ZNSt13bad_exceptionD1Ev"]=a0=>(__ZNSt13bad_exceptionD1Ev=Module["__ZNSt13bad_exceptionD1Ev"]=wasmExports["ua"])(a0);var __ZNKSt13bad_exception4whatEv=Module["__ZNKSt13bad_exception4whatEv"]=a0=>(__ZNKSt13bad_exception4whatEv=Module["__ZNKSt13bad_exception4whatEv"]=wasmExports["va"])(a0);var __ZNSt9bad_allocC2Ev=Module["__ZNSt9bad_allocC2Ev"]=a0=>(__ZNSt9bad_allocC2Ev=Module["__ZNSt9bad_allocC2Ev"]=wasmExports["wa"])(a0);var __ZNSt9bad_allocD0Ev=Module["__ZNSt9bad_allocD0Ev"]=a0=>(__ZNSt9bad_allocD0Ev=Module["__ZNSt9bad_allocD0Ev"]=wasmExports["xa"])(a0);var __ZNSt9bad_allocD1Ev=Module["__ZNSt9bad_allocD1Ev"]=a0=>(__ZNSt9bad_allocD1Ev=Module["__ZNSt9bad_allocD1Ev"]=wasmExports["ya"])(a0);var __ZNKSt9bad_alloc4whatEv=Module["__ZNKSt9bad_alloc4whatEv"]=a0=>(__ZNKSt9bad_alloc4whatEv=Module["__ZNKSt9bad_alloc4whatEv"]=wasmExports["za"])(a0);var __ZNSt20bad_array_new_lengthC2Ev=Module["__ZNSt20bad_array_new_lengthC2Ev"]=a0=>(__ZNSt20bad_array_new_lengthC2Ev=Module["__ZNSt20bad_array_new_lengthC2Ev"]=wasmExports["Aa"])(a0);var __ZNSt20bad_array_new_lengthD0Ev=Module["__ZNSt20bad_array_new_lengthD0Ev"]=a0=>(__ZNSt20bad_array_new_lengthD0Ev=Module["__ZNSt20bad_array_new_lengthD0Ev"]=wasmExports["Ba"])(a0);var __ZNKSt20bad_array_new_length4whatEv=Module["__ZNKSt20bad_array_new_length4whatEv"]=a0=>(__ZNKSt20bad_array_new_length4whatEv=Module["__ZNKSt20bad_array_new_length4whatEv"]=wasmExports["Ca"])(a0);var __ZNSt13bad_exceptionD2Ev=Module["__ZNSt13bad_exceptionD2Ev"]=a0=>(__ZNSt13bad_exceptionD2Ev=Module["__ZNSt13bad_exceptionD2Ev"]=wasmExports["Da"])(a0);var __ZNSt9bad_allocC1Ev=Module["__ZNSt9bad_allocC1Ev"]=a0=>(__ZNSt9bad_allocC1Ev=Module["__ZNSt9bad_allocC1Ev"]=wasmExports["Ea"])(a0);var __ZNSt9bad_allocD2Ev=Module["__ZNSt9bad_allocD2Ev"]=a0=>(__ZNSt9bad_allocD2Ev=Module["__ZNSt9bad_allocD2Ev"]=wasmExports["Fa"])(a0);var __ZNSt20bad_array_new_lengthD2Ev=Module["__ZNSt20bad_array_new_lengthD2Ev"]=a0=>(__ZNSt20bad_array_new_lengthD2Ev=Module["__ZNSt20bad_array_new_lengthD2Ev"]=wasmExports["Ga"])(a0);var __ZNSt11logic_errorD2Ev=Module["__ZNSt11logic_errorD2Ev"]=a0=>(__ZNSt11logic_errorD2Ev=Module["__ZNSt11logic_errorD2Ev"]=wasmExports["Ha"])(a0);var __ZNSt11logic_errorD0Ev=Module["__ZNSt11logic_errorD0Ev"]=a0=>(__ZNSt11logic_errorD0Ev=Module["__ZNSt11logic_errorD0Ev"]=wasmExports["Ia"])(a0);var __ZNSt11logic_errorD1Ev=Module["__ZNSt11logic_errorD1Ev"]=a0=>(__ZNSt11logic_errorD1Ev=Module["__ZNSt11logic_errorD1Ev"]=wasmExports["Ja"])(a0);var __ZNKSt11logic_error4whatEv=Module["__ZNKSt11logic_error4whatEv"]=a0=>(__ZNKSt11logic_error4whatEv=Module["__ZNKSt11logic_error4whatEv"]=wasmExports["Ka"])(a0);var __ZNSt13runtime_errorD2Ev=Module["__ZNSt13runtime_errorD2Ev"]=a0=>(__ZNSt13runtime_errorD2Ev=Module["__ZNSt13runtime_errorD2Ev"]=wasmExports["La"])(a0);var __ZNSt13runtime_errorD0Ev=Module["__ZNSt13runtime_errorD0Ev"]=a0=>(__ZNSt13runtime_errorD0Ev=Module["__ZNSt13runtime_errorD0Ev"]=wasmExports["Ma"])(a0);var __ZNSt13runtime_errorD1Ev=Module["__ZNSt13runtime_errorD1Ev"]=a0=>(__ZNSt13runtime_errorD1Ev=Module["__ZNSt13runtime_errorD1Ev"]=wasmExports["Na"])(a0);var __ZNKSt13runtime_error4whatEv=Module["__ZNKSt13runtime_error4whatEv"]=a0=>(__ZNKSt13runtime_error4whatEv=Module["__ZNKSt13runtime_error4whatEv"]=wasmExports["Oa"])(a0);var __ZNSt12domain_errorD0Ev=Module["__ZNSt12domain_errorD0Ev"]=a0=>(__ZNSt12domain_errorD0Ev=Module["__ZNSt12domain_errorD0Ev"]=wasmExports["Pa"])(a0);var __ZNSt12domain_errorD1Ev=Module["__ZNSt12domain_errorD1Ev"]=a0=>(__ZNSt12domain_errorD1Ev=Module["__ZNSt12domain_errorD1Ev"]=wasmExports["Qa"])(a0);var __ZNSt16invalid_argumentD0Ev=Module["__ZNSt16invalid_argumentD0Ev"]=a0=>(__ZNSt16invalid_argumentD0Ev=Module["__ZNSt16invalid_argumentD0Ev"]=wasmExports["Ra"])(a0);var __ZNSt16invalid_argumentD1Ev=Module["__ZNSt16invalid_argumentD1Ev"]=a0=>(__ZNSt16invalid_argumentD1Ev=Module["__ZNSt16invalid_argumentD1Ev"]=wasmExports["Sa"])(a0);var __ZNSt12length_errorD0Ev=Module["__ZNSt12length_errorD0Ev"]=a0=>(__ZNSt12length_errorD0Ev=Module["__ZNSt12length_errorD0Ev"]=wasmExports["Ta"])(a0);var __ZNSt12out_of_rangeD0Ev=Module["__ZNSt12out_of_rangeD0Ev"]=a0=>(__ZNSt12out_of_rangeD0Ev=Module["__ZNSt12out_of_rangeD0Ev"]=wasmExports["Ua"])(a0);var __ZNSt11range_errorD0Ev=Module["__ZNSt11range_errorD0Ev"]=a0=>(__ZNSt11range_errorD0Ev=Module["__ZNSt11range_errorD0Ev"]=wasmExports["Va"])(a0);var __ZNSt11range_errorD1Ev=Module["__ZNSt11range_errorD1Ev"]=a0=>(__ZNSt11range_errorD1Ev=Module["__ZNSt11range_errorD1Ev"]=wasmExports["Wa"])(a0);var __ZNSt14overflow_errorD0Ev=Module["__ZNSt14overflow_errorD0Ev"]=a0=>(__ZNSt14overflow_errorD0Ev=Module["__ZNSt14overflow_errorD0Ev"]=wasmExports["Xa"])(a0);var __ZNSt14overflow_errorD1Ev=Module["__ZNSt14overflow_errorD1Ev"]=a0=>(__ZNSt14overflow_errorD1Ev=Module["__ZNSt14overflow_errorD1Ev"]=wasmExports["Ya"])(a0);var __ZNSt15underflow_errorD0Ev=Module["__ZNSt15underflow_errorD0Ev"]=a0=>(__ZNSt15underflow_errorD0Ev=Module["__ZNSt15underflow_errorD0Ev"]=wasmExports["Za"])(a0);var __ZNSt15underflow_errorD1Ev=Module["__ZNSt15underflow_errorD1Ev"]=a0=>(__ZNSt15underflow_errorD1Ev=Module["__ZNSt15underflow_errorD1Ev"]=wasmExports["_a"])(a0);var __ZNSt12domain_errorD2Ev=Module["__ZNSt12domain_errorD2Ev"]=a0=>(__ZNSt12domain_errorD2Ev=Module["__ZNSt12domain_errorD2Ev"]=wasmExports["$a"])(a0);var __ZNSt16invalid_argumentD2Ev=Module["__ZNSt16invalid_argumentD2Ev"]=a0=>(__ZNSt16invalid_argumentD2Ev=Module["__ZNSt16invalid_argumentD2Ev"]=wasmExports["ab"])(a0);var __ZNSt12length_errorD2Ev=Module["__ZNSt12length_errorD2Ev"]=a0=>(__ZNSt12length_errorD2Ev=Module["__ZNSt12length_errorD2Ev"]=wasmExports["bb"])(a0);var __ZNSt12out_of_rangeD2Ev=Module["__ZNSt12out_of_rangeD2Ev"]=a0=>(__ZNSt12out_of_rangeD2Ev=Module["__ZNSt12out_of_rangeD2Ev"]=wasmExports["cb"])(a0);var __ZNSt11range_errorD2Ev=Module["__ZNSt11range_errorD2Ev"]=a0=>(__ZNSt11range_errorD2Ev=Module["__ZNSt11range_errorD2Ev"]=wasmExports["db"])(a0);var __ZNSt14overflow_errorD2Ev=Module["__ZNSt14overflow_errorD2Ev"]=a0=>(__ZNSt14overflow_errorD2Ev=Module["__ZNSt14overflow_errorD2Ev"]=wasmExports["eb"])(a0);var __ZNSt15underflow_errorD2Ev=Module["__ZNSt15underflow_errorD2Ev"]=a0=>(__ZNSt15underflow_errorD2Ev=Module["__ZNSt15underflow_errorD2Ev"]=wasmExports["fb"])(a0);var __ZNSt9type_infoD0Ev=Module["__ZNSt9type_infoD0Ev"]=a0=>(__ZNSt9type_infoD0Ev=Module["__ZNSt9type_infoD0Ev"]=wasmExports["gb"])(a0);var __ZNSt9type_infoD1Ev=Module["__ZNSt9type_infoD1Ev"]=a0=>(__ZNSt9type_infoD1Ev=Module["__ZNSt9type_infoD1Ev"]=wasmExports["hb"])(a0);var __ZNSt8bad_castC2Ev=Module["__ZNSt8bad_castC2Ev"]=a0=>(__ZNSt8bad_castC2Ev=Module["__ZNSt8bad_castC2Ev"]=wasmExports["ib"])(a0);var __ZNSt8bad_castD2Ev=Module["__ZNSt8bad_castD2Ev"]=a0=>(__ZNSt8bad_castD2Ev=Module["__ZNSt8bad_castD2Ev"]=wasmExports["jb"])(a0);var __ZNSt8bad_castD0Ev=Module["__ZNSt8bad_castD0Ev"]=a0=>(__ZNSt8bad_castD0Ev=Module["__ZNSt8bad_castD0Ev"]=wasmExports["kb"])(a0);var __ZNSt8bad_castD1Ev=Module["__ZNSt8bad_castD1Ev"]=a0=>(__ZNSt8bad_castD1Ev=Module["__ZNSt8bad_castD1Ev"]=wasmExports["lb"])(a0);var __ZNKSt8bad_cast4whatEv=Module["__ZNKSt8bad_cast4whatEv"]=a0=>(__ZNKSt8bad_cast4whatEv=Module["__ZNKSt8bad_cast4whatEv"]=wasmExports["mb"])(a0);var __ZNSt10bad_typeidC2Ev=Module["__ZNSt10bad_typeidC2Ev"]=a0=>(__ZNSt10bad_typeidC2Ev=Module["__ZNSt10bad_typeidC2Ev"]=wasmExports["nb"])(a0);var __ZNSt10bad_typeidD2Ev=Module["__ZNSt10bad_typeidD2Ev"]=a0=>(__ZNSt10bad_typeidD2Ev=Module["__ZNSt10bad_typeidD2Ev"]=wasmExports["ob"])(a0);var __ZNSt10bad_typeidD0Ev=Module["__ZNSt10bad_typeidD0Ev"]=a0=>(__ZNSt10bad_typeidD0Ev=Module["__ZNSt10bad_typeidD0Ev"]=wasmExports["pb"])(a0);var __ZNSt10bad_typeidD1Ev=Module["__ZNSt10bad_typeidD1Ev"]=a0=>(__ZNSt10bad_typeidD1Ev=Module["__ZNSt10bad_typeidD1Ev"]=wasmExports["qb"])(a0);var __ZNKSt10bad_typeid4whatEv=Module["__ZNKSt10bad_typeid4whatEv"]=a0=>(__ZNKSt10bad_typeid4whatEv=Module["__ZNKSt10bad_typeid4whatEv"]=wasmExports["rb"])(a0);var __ZNSt8bad_castC1Ev=Module["__ZNSt8bad_castC1Ev"]=a0=>(__ZNSt8bad_castC1Ev=Module["__ZNSt8bad_castC1Ev"]=wasmExports["sb"])(a0);var __ZNSt10bad_typeidC1Ev=Module["__ZNSt10bad_typeidC1Ev"]=a0=>(__ZNSt10bad_typeidC1Ev=Module["__ZNSt10bad_typeidC1Ev"]=wasmExports["tb"])(a0);var __ZTIPK16failsafe_flags_s=Module["__ZTIPK16failsafe_flags_s"]=47416;var __ZTIP16failsafe_flags_s=Module["__ZTIP16failsafe_flags_s"]=47400;var __ZTI16failsafe_flags_s=Module["__ZTI16failsafe_flags_s"]=47392;var __ZTIb=Module["__ZTIb"]=30276;var __ZTIh=Module["__ZTIh"]=30432;var __ZTIPKNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE=Module["__ZTIPKNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE"]=47564;var __ZTIPNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE=Module["__ZTIPNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE"]=47548;var __ZTINSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE=Module["__ZTINSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE"]=47496;var __ZTISt12length_error=Module["__ZTISt12length_error"]=32376;var __ZTVSt12length_error=Module["__ZTVSt12length_error"]=32356;var __ZTISt20bad_array_new_length=Module["__ZTISt20bad_array_new_length"]=32140;var __ZTINSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE=Module["__ZTINSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE"]=47484;var __ZTISt12out_of_range=Module["__ZTISt12out_of_range"]=32428;var __ZTVSt12out_of_range=Module["__ZTVSt12out_of_range"]=32408;var __ZTVN10__cxxabiv120__si_class_type_infoE=Module["__ZTVN10__cxxabiv120__si_class_type_infoE"]=31708;var __ZTVN10__cxxabiv121__vmi_class_type_infoE=Module["__ZTVN10__cxxabiv121__vmi_class_type_infoE"]=31800;var __ZTVN10__cxxabiv117__class_type_infoE=Module["__ZTVN10__cxxabiv117__class_type_infoE"]=31668;var __ZTS16failsafe_flags_s=Module["__ZTS16failsafe_flags_s"]=28016;var __ZTVN10__cxxabiv119__pointer_type_infoE=Module["__ZTVN10__cxxabiv119__pointer_type_infoE"]=31920;var __ZTSP16failsafe_flags_s=Module["__ZTSP16failsafe_flags_s"]=28035;var __ZTSPK16failsafe_flags_s=Module["__ZTSPK16failsafe_flags_s"]=28055;var __ZTIi=Module["__ZTIi"]=30640;var __ZTSNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE=Module["__ZTSNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE"]=28104;var __ZTSNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE=Module["__ZTSNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE"]=28171;var __ZTIv=Module["__ZTIv"]=30168;var __ZTIf=Module["__ZTIf"]=31112;var __ZTSPNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE=Module["__ZTSPNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE"]=28269;var __ZTSPKNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE=Module["__ZTSPKNSt3__26vectorINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS4_IS6_EEEE"]=28356;var __ZTIm=Module["__ZTIm"]=30796;var __ZTIN10emscripten3valE=Module["__ZTIN10emscripten3valE"]=47636;var __ZTSN10emscripten3valE=Module["__ZTSN10emscripten3valE"]=28459;var __ZTIc=Module["__ZTIc"]=30380;var __ZTIa=Module["__ZTIa"]=30484;var __ZTIs=Module["__ZTIs"]=30536;var __ZTIt=Module["__ZTIt"]=30588;var __ZTIj=Module["__ZTIj"]=30692;var __ZTIl=Module["__ZTIl"]=30744;var __ZTIx=Module["__ZTIx"]=30848;var __ZTIy=Module["__ZTIy"]=30900;var __ZTId=Module["__ZTId"]=31164;var __ZTINSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEEE=Module["__ZTINSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEEE"]=28516;var __ZTINSt3__212basic_stringIDsNS_11char_traitsIDsEENS_9allocatorIDsEEEE=Module["__ZTINSt3__212basic_stringIDsNS_11char_traitsIDsEENS_9allocatorIDsEEEE"]=28588;var __ZTINSt3__212basic_stringIDiNS_11char_traitsIDiEENS_9allocatorIDiEEEE=Module["__ZTINSt3__212basic_stringIDiNS_11char_traitsIDiEENS_9allocatorIDiEEEE"]=28664;var __ZTIN10emscripten11memory_viewIcEE=Module["__ZTIN10emscripten11memory_viewIcEE"]=28740;var __ZTIN10emscripten11memory_viewIaEE=Module["__ZTIN10emscripten11memory_viewIaEE"]=28780;var __ZTIN10emscripten11memory_viewIhEE=Module["__ZTIN10emscripten11memory_viewIhEE"]=28820;var __ZTIN10emscripten11memory_viewIsEE=Module["__ZTIN10emscripten11memory_viewIsEE"]=28860;var __ZTIN10emscripten11memory_viewItEE=Module["__ZTIN10emscripten11memory_viewItEE"]=28900;var __ZTIN10emscripten11memory_viewIiEE=Module["__ZTIN10emscripten11memory_viewIiEE"]=28940;var __ZTIN10emscripten11memory_viewIjEE=Module["__ZTIN10emscripten11memory_viewIjEE"]=28980;var __ZTIN10emscripten11memory_viewIlEE=Module["__ZTIN10emscripten11memory_viewIlEE"]=29020;var __ZTIN10emscripten11memory_viewImEE=Module["__ZTIN10emscripten11memory_viewImEE"]=29060;var __ZTIN10emscripten11memory_viewIxEE=Module["__ZTIN10emscripten11memory_viewIxEE"]=29100;var __ZTIN10emscripten11memory_viewIyEE=Module["__ZTIN10emscripten11memory_viewIyEE"]=29140;var __ZTIN10emscripten11memory_viewIfEE=Module["__ZTIN10emscripten11memory_viewIfEE"]=29180;var __ZTIN10emscripten11memory_viewIdEE=Module["__ZTIN10emscripten11memory_viewIdEE"]=29220;var __ZTSNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEEE=Module["__ZTSNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEEE"]=28524;var __ZTSNSt3__212basic_stringIDsNS_11char_traitsIDsEENS_9allocatorIDsEEEE=Module["__ZTSNSt3__212basic_stringIDsNS_11char_traitsIDsEENS_9allocatorIDsEEEE"]=28596;var __ZTSNSt3__212basic_stringIDiNS_11char_traitsIDiEENS_9allocatorIDiEEEE=Module["__ZTSNSt3__212basic_stringIDiNS_11char_traitsIDiEENS_9allocatorIDiEEEE"]=28672;var __ZTSN10emscripten11memory_viewIcEE=Module["__ZTSN10emscripten11memory_viewIcEE"]=28748;var __ZTSN10emscripten11memory_viewIaEE=Module["__ZTSN10emscripten11memory_viewIaEE"]=28788;var __ZTSN10emscripten11memory_viewIhEE=Module["__ZTSN10emscripten11memory_viewIhEE"]=28828;var __ZTSN10emscripten11memory_viewIsEE=Module["__ZTSN10emscripten11memory_viewIsEE"]=28868;var __ZTSN10emscripten11memory_viewItEE=Module["__ZTSN10emscripten11memory_viewItEE"]=28908;var __ZTSN10emscripten11memory_viewIiEE=Module["__ZTSN10emscripten11memory_viewIiEE"]=28948;var __ZTSN10emscripten11memory_viewIjEE=Module["__ZTSN10emscripten11memory_viewIjEE"]=28988;var __ZTSN10emscripten11memory_viewIlEE=Module["__ZTSN10emscripten11memory_viewIlEE"]=29028;var __ZTSN10emscripten11memory_viewImEE=Module["__ZTSN10emscripten11memory_viewImEE"]=29068;var __ZTSN10emscripten11memory_viewIxEE=Module["__ZTSN10emscripten11memory_viewIxEE"]=29108;var __ZTSN10emscripten11memory_viewIyEE=Module["__ZTSN10emscripten11memory_viewIyEE"]=29148;var __ZTSN10emscripten11memory_viewIfEE=Module["__ZTSN10emscripten11memory_viewIfEE"]=29188;var __ZTSN10emscripten11memory_viewIdEE=Module["__ZTSN10emscripten11memory_viewIdEE"]=29228;var __ZTVSt11logic_error=Module["__ZTVSt11logic_error"]=32180;var __ZTVSt9exception=Module["__ZTVSt9exception"]=32016;var __ZTVSt13runtime_error=Module["__ZTVSt13runtime_error"]=32200;var __ZTISt9exception=Module["__ZTISt9exception"]=32036;var ___cxa_unexpected_handler=Module["___cxa_unexpected_handler"]=47864;var ___cxa_terminate_handler=Module["___cxa_terminate_handler"]=47860;var ___cxa_new_handler=Module["___cxa_new_handler"]=50108;var __ZTIN10__cxxabiv116__shim_type_infoE=Module["__ZTIN10__cxxabiv116__shim_type_infoE"]=29744;var __ZTIN10__cxxabiv117__class_type_infoE=Module["__ZTIN10__cxxabiv117__class_type_infoE"]=29792;var __ZTIN10__cxxabiv117__pbase_type_infoE=Module["__ZTIN10__cxxabiv117__pbase_type_infoE"]=29840;var __ZTIDn=Module["__ZTIDn"]=30220;var __ZTIN10__cxxabiv119__pointer_type_infoE=Module["__ZTIN10__cxxabiv119__pointer_type_infoE"]=29888;var __ZTIN10__cxxabiv120__function_type_infoE=Module["__ZTIN10__cxxabiv120__function_type_infoE"]=29936;var __ZTIN10__cxxabiv129__pointer_to_member_type_infoE=Module["__ZTIN10__cxxabiv129__pointer_to_member_type_infoE"]=29988;var __ZTISt9type_info=Module["__ZTISt9type_info"]=32700;var __ZTSN10__cxxabiv116__shim_type_infoE=Module["__ZTSN10__cxxabiv116__shim_type_infoE"]=29756;var __ZTSN10__cxxabiv117__class_type_infoE=Module["__ZTSN10__cxxabiv117__class_type_infoE"]=29804;var __ZTSN10__cxxabiv117__pbase_type_infoE=Module["__ZTSN10__cxxabiv117__pbase_type_infoE"]=29852;var __ZTSN10__cxxabiv119__pointer_type_infoE=Module["__ZTSN10__cxxabiv119__pointer_type_infoE"]=29900;var __ZTSN10__cxxabiv120__function_type_infoE=Module["__ZTSN10__cxxabiv120__function_type_infoE"]=29948;var __ZTSN10__cxxabiv129__pointer_to_member_type_infoE=Module["__ZTSN10__cxxabiv129__pointer_to_member_type_infoE"]=3e4;var __ZTVN10__cxxabiv116__shim_type_infoE=Module["__ZTVN10__cxxabiv116__shim_type_infoE"]=30060;var __ZTVN10__cxxabiv123__fundamental_type_infoE=Module["__ZTVN10__cxxabiv123__fundamental_type_infoE"]=30088;var __ZTIN10__cxxabiv123__fundamental_type_infoE=Module["__ZTIN10__cxxabiv123__fundamental_type_infoE"]=30116;var __ZTSN10__cxxabiv123__fundamental_type_infoE=Module["__ZTSN10__cxxabiv123__fundamental_type_infoE"]=30128;var __ZTSv=Module["__ZTSv"]=30176;var __ZTIPv=Module["__ZTIPv"]=30180;var __ZTSPv=Module["__ZTSPv"]=30196;var __ZTIPKv=Module["__ZTIPKv"]=30200;var __ZTSPKv=Module["__ZTSPKv"]=30216;var __ZTSDn=Module["__ZTSDn"]=30228;var __ZTIPDn=Module["__ZTIPDn"]=30232;var __ZTSPDn=Module["__ZTSPDn"]=30248;var __ZTIPKDn=Module["__ZTIPKDn"]=30252;var __ZTSPKDn=Module["__ZTSPKDn"]=30268;var __ZTSb=Module["__ZTSb"]=30284;var __ZTIPb=Module["__ZTIPb"]=30288;var __ZTSPb=Module["__ZTSPb"]=30304;var __ZTIPKb=Module["__ZTIPKb"]=30308;var __ZTSPKb=Module["__ZTSPKb"]=30324;var __ZTIw=Module["__ZTIw"]=30328;var __ZTSw=Module["__ZTSw"]=30336;var __ZTIPw=Module["__ZTIPw"]=30340;var __ZTSPw=Module["__ZTSPw"]=30356;var __ZTIPKw=Module["__ZTIPKw"]=30360;var __ZTSPKw=Module["__ZTSPKw"]=30376;var __ZTSc=Module["__ZTSc"]=30388;var __ZTIPc=Module["__ZTIPc"]=30392;var __ZTSPc=Module["__ZTSPc"]=30408;var __ZTIPKc=Module["__ZTIPKc"]=30412;var __ZTSPKc=Module["__ZTSPKc"]=30428;var __ZTSh=Module["__ZTSh"]=30440;var __ZTIPh=Module["__ZTIPh"]=30444;var __ZTSPh=Module["__ZTSPh"]=30460;var __ZTIPKh=Module["__ZTIPKh"]=30464;var __ZTSPKh=Module["__ZTSPKh"]=30480;var __ZTSa=Module["__ZTSa"]=30492;var __ZTIPa=Module["__ZTIPa"]=30496;var __ZTSPa=Module["__ZTSPa"]=30512;var __ZTIPKa=Module["__ZTIPKa"]=30516;var __ZTSPKa=Module["__ZTSPKa"]=30532;var __ZTSs=Module["__ZTSs"]=30544;var __ZTIPs=Module["__ZTIPs"]=30548;var __ZTSPs=Module["__ZTSPs"]=30564;var __ZTIPKs=Module["__ZTIPKs"]=30568;var __ZTSPKs=Module["__ZTSPKs"]=30584;var __ZTSt=Module["__ZTSt"]=30596;var __ZTIPt=Module["__ZTIPt"]=30600;var __ZTSPt=Module["__ZTSPt"]=30616;var __ZTIPKt=Module["__ZTIPKt"]=30620;var __ZTSPKt=Module["__ZTSPKt"]=30636;var __ZTSi=Module["__ZTSi"]=30648;var __ZTIPi=Module["__ZTIPi"]=30652;var __ZTSPi=Module["__ZTSPi"]=30668;var __ZTIPKi=Module["__ZTIPKi"]=30672;var __ZTSPKi=Module["__ZTSPKi"]=30688;var __ZTSj=Module["__ZTSj"]=30700;var __ZTIPj=Module["__ZTIPj"]=30704;var __ZTSPj=Module["__ZTSPj"]=30720;var __ZTIPKj=Module["__ZTIPKj"]=30724;var __ZTSPKj=Module["__ZTSPKj"]=30740;var __ZTSl=Module["__ZTSl"]=30752;var __ZTIPl=Module["__ZTIPl"]=30756;var __ZTSPl=Module["__ZTSPl"]=30772;var __ZTIPKl=Module["__ZTIPKl"]=30776;var __ZTSPKl=Module["__ZTSPKl"]=30792;var __ZTSm=Module["__ZTSm"]=30804;var __ZTIPm=Module["__ZTIPm"]=30808;var __ZTSPm=Module["__ZTSPm"]=30824;var __ZTIPKm=Module["__ZTIPKm"]=30828;var __ZTSPKm=Module["__ZTSPKm"]=30844;var __ZTSx=Module["__ZTSx"]=30856;var __ZTIPx=Module["__ZTIPx"]=30860;var __ZTSPx=Module["__ZTSPx"]=30876;var __ZTIPKx=Module["__ZTIPKx"]=30880;var __ZTSPKx=Module["__ZTSPKx"]=30896;var __ZTSy=Module["__ZTSy"]=30908;var __ZTIPy=Module["__ZTIPy"]=30912;var __ZTSPy=Module["__ZTSPy"]=30928;var __ZTIPKy=Module["__ZTIPKy"]=30932;var __ZTSPKy=Module["__ZTSPKy"]=30948;var __ZTIn=Module["__ZTIn"]=30952;var __ZTSn=Module["__ZTSn"]=30960;var __ZTIPn=Module["__ZTIPn"]=30964;var __ZTSPn=Module["__ZTSPn"]=30980;var __ZTIPKn=Module["__ZTIPKn"]=30984;var __ZTSPKn=Module["__ZTSPKn"]=31e3;var __ZTIo=Module["__ZTIo"]=31004;var __ZTSo=Module["__ZTSo"]=31012;var __ZTIPo=Module["__ZTIPo"]=31016;var __ZTSPo=Module["__ZTSPo"]=31032;var __ZTIPKo=Module["__ZTIPKo"]=31036;var __ZTSPKo=Module["__ZTSPKo"]=31052;var __ZTIDh=Module["__ZTIDh"]=31056;var __ZTSDh=Module["__ZTSDh"]=31064;var __ZTIPDh=Module["__ZTIPDh"]=31068;var __ZTSPDh=Module["__ZTSPDh"]=31084;var __ZTIPKDh=Module["__ZTIPKDh"]=31088;var __ZTSPKDh=Module["__ZTSPKDh"]=31104;var __ZTSf=Module["__ZTSf"]=31120;var __ZTIPf=Module["__ZTIPf"]=31124;var __ZTSPf=Module["__ZTSPf"]=31140;var __ZTIPKf=Module["__ZTIPKf"]=31144;var __ZTSPKf=Module["__ZTSPKf"]=31160;var __ZTSd=Module["__ZTSd"]=31172;var __ZTIPd=Module["__ZTIPd"]=31176;var __ZTSPd=Module["__ZTSPd"]=31192;var __ZTIPKd=Module["__ZTIPKd"]=31196;var __ZTSPKd=Module["__ZTSPKd"]=31212;var __ZTIe=Module["__ZTIe"]=31216;var __ZTSe=Module["__ZTSe"]=31224;var __ZTIPe=Module["__ZTIPe"]=31228;var __ZTSPe=Module["__ZTSPe"]=31244;var __ZTIPKe=Module["__ZTIPKe"]=31248;var __ZTSPKe=Module["__ZTSPKe"]=31264;var __ZTIg=Module["__ZTIg"]=31268;var __ZTSg=Module["__ZTSg"]=31276;var __ZTIPg=Module["__ZTIPg"]=31280;var __ZTSPg=Module["__ZTSPg"]=31296;var __ZTIPKg=Module["__ZTIPKg"]=31300;var __ZTSPKg=Module["__ZTSPKg"]=31316;var __ZTIDu=Module["__ZTIDu"]=31320;var __ZTSDu=Module["__ZTSDu"]=31328;var __ZTIPDu=Module["__ZTIPDu"]=31332;var __ZTSPDu=Module["__ZTSPDu"]=31348;var __ZTIPKDu=Module["__ZTIPKDu"]=31352;var __ZTSPKDu=Module["__ZTSPKDu"]=31368;var __ZTIDs=Module["__ZTIDs"]=31376;var __ZTSDs=Module["__ZTSDs"]=31384;var __ZTIPDs=Module["__ZTIPDs"]=31388;var __ZTSPDs=Module["__ZTSPDs"]=31404;var __ZTIPKDs=Module["__ZTIPKDs"]=31408;var __ZTSPKDs=Module["__ZTSPKDs"]=31424;var __ZTIDi=Module["__ZTIDi"]=31432;var __ZTSDi=Module["__ZTSDi"]=31440;var __ZTIPDi=Module["__ZTIPDi"]=31444;var __ZTSPDi=Module["__ZTSPDi"]=31460;var __ZTIPKDi=Module["__ZTIPKDi"]=31464;var __ZTSPKDi=Module["__ZTSPKDi"]=31480;var __ZTVN10__cxxabiv117__array_type_infoE=Module["__ZTVN10__cxxabiv117__array_type_infoE"]=31488;var __ZTIN10__cxxabiv117__array_type_infoE=Module["__ZTIN10__cxxabiv117__array_type_infoE"]=31516;var __ZTSN10__cxxabiv117__array_type_infoE=Module["__ZTSN10__cxxabiv117__array_type_infoE"]=31528;var __ZTVN10__cxxabiv120__function_type_infoE=Module["__ZTVN10__cxxabiv120__function_type_infoE"]=31564;var __ZTVN10__cxxabiv116__enum_type_infoE=Module["__ZTVN10__cxxabiv116__enum_type_infoE"]=31592;var __ZTIN10__cxxabiv116__enum_type_infoE=Module["__ZTIN10__cxxabiv116__enum_type_infoE"]=31620;var __ZTSN10__cxxabiv116__enum_type_infoE=Module["__ZTSN10__cxxabiv116__enum_type_infoE"]=31632;var __ZTIN10__cxxabiv120__si_class_type_infoE=Module["__ZTIN10__cxxabiv120__si_class_type_infoE"]=31748;var __ZTSN10__cxxabiv120__si_class_type_infoE=Module["__ZTSN10__cxxabiv120__si_class_type_infoE"]=31760;var __ZTIN10__cxxabiv121__vmi_class_type_infoE=Module["__ZTIN10__cxxabiv121__vmi_class_type_infoE"]=31840;var __ZTSN10__cxxabiv121__vmi_class_type_infoE=Module["__ZTSN10__cxxabiv121__vmi_class_type_infoE"]=31852;var __ZTVN10__cxxabiv117__pbase_type_infoE=Module["__ZTVN10__cxxabiv117__pbase_type_infoE"]=31892;var __ZTVN10__cxxabiv129__pointer_to_member_type_infoE=Module["__ZTVN10__cxxabiv129__pointer_to_member_type_infoE"]=31948;var __ZTVSt9bad_alloc=Module["__ZTVSt9bad_alloc"]=31976;var __ZTVSt20bad_array_new_length=Module["__ZTVSt20bad_array_new_length"]=31996;var __ZTISt9bad_alloc=Module["__ZTISt9bad_alloc"]=32112;var __ZTSSt9exception=Module["__ZTSSt9exception"]=32044;var __ZTVSt13bad_exception=Module["__ZTVSt13bad_exception"]=32060;var __ZTISt13bad_exception=Module["__ZTISt13bad_exception"]=32080;var __ZTSSt13bad_exception=Module["__ZTSSt13bad_exception"]=32092;var __ZTSSt9bad_alloc=Module["__ZTSSt9bad_alloc"]=32124;var __ZTSSt20bad_array_new_length=Module["__ZTSSt20bad_array_new_length"]=32152;var __ZTISt11logic_error=Module["__ZTISt11logic_error"]=32272;var __ZTISt13runtime_error=Module["__ZTISt13runtime_error"]=32508;var __ZTVSt12domain_error=Module["__ZTVSt12domain_error"]=32220;var __ZTISt12domain_error=Module["__ZTISt12domain_error"]=32240;var __ZTSSt12domain_error=Module["__ZTSSt12domain_error"]=32252;var __ZTSSt11logic_error=Module["__ZTSSt11logic_error"]=32284;var __ZTVSt16invalid_argument=Module["__ZTVSt16invalid_argument"]=32300;var __ZTISt16invalid_argument=Module["__ZTISt16invalid_argument"]=32320;var __ZTSSt16invalid_argument=Module["__ZTSSt16invalid_argument"]=32332;var __ZTSSt12length_error=Module["__ZTSSt12length_error"]=32388;var __ZTSSt12out_of_range=Module["__ZTSSt12out_of_range"]=32440;var __ZTVSt11range_error=Module["__ZTVSt11range_error"]=32460;var __ZTISt11range_error=Module["__ZTISt11range_error"]=32480;var __ZTSSt11range_error=Module["__ZTSSt11range_error"]=32492;var __ZTSSt13runtime_error=Module["__ZTSSt13runtime_error"]=32520;var __ZTVSt14overflow_error=Module["__ZTVSt14overflow_error"]=32540;var __ZTISt14overflow_error=Module["__ZTISt14overflow_error"]=32560;var __ZTSSt14overflow_error=Module["__ZTSSt14overflow_error"]=32572;var __ZTVSt15underflow_error=Module["__ZTVSt15underflow_error"]=32592;var __ZTISt15underflow_error=Module["__ZTISt15underflow_error"]=32612;var __ZTSSt15underflow_error=Module["__ZTSSt15underflow_error"]=32624;var __ZTVSt8bad_cast=Module["__ZTVSt8bad_cast"]=32644;var __ZTVSt10bad_typeid=Module["__ZTVSt10bad_typeid"]=32664;var __ZTISt8bad_cast=Module["__ZTISt8bad_cast"]=32724;var __ZTISt10bad_typeid=Module["__ZTISt10bad_typeid"]=32748;var __ZTVSt9type_info=Module["__ZTVSt9type_info"]=32684;var __ZTSSt9type_info=Module["__ZTSSt9type_info"]=32708;var __ZTSSt8bad_cast=Module["__ZTSSt8bad_cast"]=32736;var __ZTSSt10bad_typeid=Module["__ZTSSt10bad_typeid"]=32760;function run(){if(runDependencies>0){dependenciesFulfilled=run;return}preRun();if(runDependencies>0){dependenciesFulfilled=run;return}function doRun(){Module["calledRun"]=true;if(ABORT)return;initRuntime();Module["onRuntimeInitialized"]?.();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(()=>{setTimeout(()=>Module["setStatus"](""),1);doRun()},1)}else{doRun()}}function preInit(){if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].shift()()}}}preInit();run(); diff --git a/docs/public/config/failsafe/index.wasm b/docs/public/config/failsafe/index.wasm index decc623efa0ca9bc62eeabb4a58a2085dd9eeb61..b9b4fa1a6c8facd6d789f17a7a24dcedee46ab84 100644 GIT binary patch delta 26334 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 1347957792 For CALLSIGN shorter than 8 characters use the null terminator at the end '\\0'.", "name": "ADSB_CALLSIGN_1", "rebootRequired": true, "shortDesc": "First 4 characters of CALLSIGN", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "ADSB", "longDesc": "Sets second 4 characters of a total of 8. Valid characters are A-Z, 0-9, \" \" only. Example \"TEST\" -> 1413829460 For CALLSIGN shorter than 8 characters use the null terminator at the end '\\0'.", "name": "ADSB_CALLSIGN_2", "rebootRequired": true, "shortDesc": "Second 4 characters of CALLSIGN", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "ADSB", "longDesc": "Sets the vehicle emergency state", "max": 6, "min": 0, "name": "ADSB_EMERGC", "rebootRequired": true, "shortDesc": "ADSB-Out Emergency State", "type": "Int32", "values": [{"description": "NoEmergency", "value": 0}, {"description": "General", "value": 1}, {"description": "Medical", "value": 2}, {"description": "LowFuel", "value": 3}, {"description": "NoCommunications", "value": 4}, {"description": "Interference", "value": 5}, {"description": "Downed", "value": 6}]}, {"category": "Standard", "default": 14, "group": "ADSB", "longDesc": "Configure the emitter type of the vehicle.", "max": 15, "min": 0, "name": "ADSB_EMIT_TYPE", "rebootRequired": true, "shortDesc": "ADSB-Out Vehicle Emitter Type", "type": "Int32", "values": [{"description": "Unknown", "value": 0}, {"description": "Light", "value": 1}, {"description": "Small", "value": 2}, {"description": "Large", "value": 3}, {"description": "HighVortex", "value": 4}, {"description": "Heavy", "value": 5}, {"description": "Performance", "value": 6}, {"description": "Rotorcraft", "value": 7}, {"description": "RESERVED", "value": 8}, {"description": "Glider", "value": 9}, {"description": "LightAir", "value": 10}, {"description": "Parachute", "value": 11}, {"description": "UltraLight", "value": 12}, {"description": "RESERVED", "value": 13}, {"description": "UAV", "value": 14}, {"description": "Space", "value": 15}, {"description": "RESERVED", "value": 16}, {"description": "EmergencySurf", "value": 17}, {"description": "ServiceSurf", "value": 18}, {"description": "PointObstacle", "value": 19}]}, {"category": "Standard", "default": 0, "group": "ADSB", "longDesc": "Sets GPS lataral offset encoding", "max": 7, "min": 0, "name": "ADSB_GPS_OFF_LAT", "rebootRequired": true, "shortDesc": "ADSB-Out GPS Offset lat", "type": "Int32", "values": [{"description": "NoData", "value": 0}, {"description": "LatLeft2M", "value": 1}, {"description": "LatLeft4M", "value": 2}, {"description": "LatLeft6M", "value": 3}, {"description": "LatRight0M", "value": 4}, {"description": "LatRight2M", "value": 5}, {"description": "LatRight4M", "value": 6}, {"description": "LatRight6M", "value": 7}]}, {"category": "Standard", "default": 0, "group": "ADSB", "longDesc": "Sets GPS longitudinal offset encoding", "max": 1, "min": 0, "name": "ADSB_GPS_OFF_LON", "rebootRequired": true, "shortDesc": "ADSB-Out GPS Offset lon", "type": "Int32", "values": [{"description": "NoData", "value": 0}, {"description": "AppliedBySensor", "value": 1}]}, {"category": "Standard", "default": 1194684, "group": "ADSB", "longDesc": "Defines the ICAO ID of the vehicle", "max": 16777215, "min": -1, "name": "ADSB_ICAO_ID", "rebootRequired": true, "shortDesc": "ADSB-Out ICAO configuration", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "ADSB", "longDesc": "This vehicle is always tracked. Use 0 to disable.", "max": 16777215, "min": 0, "name": "ADSB_ICAO_SPECL", "rebootRequired": true, "shortDesc": "ADSB-In Special ICAO configuration", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "ADSB", "longDesc": "Enable Identification of Position feature", "name": "ADSB_IDENT", "rebootRequired": true, "shortDesc": "ADSB-Out Ident Configuration", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "ADSB", "longDesc": "Report the length and width of the vehicle in meters. In most cases, use '1' for the smallest vehicle size.", "max": 15, "min": 0, "name": "ADSB_LEN_WIDTH", "rebootRequired": true, "shortDesc": "ADSB-Out Vehicle Size Configuration", "type": "Int32", "values": [{"description": "SizeUnknown", "value": 0}, {"description": "Len15_Wid23", "value": 1}, {"description": "Len25_Wid28", "value": 2}, {"description": "Len25_Wid34", "value": 3}, {"description": "Len35_Wid33", "value": 4}, {"description": "Len35_Wid38", "value": 5}, {"description": "Len45_Wid39", "value": 6}, {"description": "Len45_Wid45", "value": 7}, {"description": "Len55_Wid45", "value": 8}, {"description": "Len55_Wid52", "value": 9}, {"description": "Len65_Wid59", "value": 10}, {"description": "Len65_Wid67", "value": 11}, {"description": "Len75_Wid72", "value": 12}, {"description": "Len75_Wid80", "value": 13}, {"description": "Len85_Wid80", "value": 14}, {"description": "Len85_Wid90", "value": 15}]}, {"category": "Standard", "default": 25, "group": "ADSB", "longDesc": "Change number of targets to track", "max": 50, "min": 0, "name": "ADSB_LIST_MAX", "rebootRequired": true, "shortDesc": "ADSB-In Vehicle List Size", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "ADSB", "longDesc": "Informs ADSB vehicles of this vehicle's max speed capability", "max": 6, "min": 0, "name": "ADSB_MAX_SPEED", "rebootRequired": true, "shortDesc": "ADSB-Out Vehicle Max Speed", "type": "Int32", "values": [{"description": "UnknownMaxSpeed", "value": 0}, {"description": "75Kts", "value": 1}, {"description": "150Kts", "value": 2}, {"description": "300Kts", "value": 3}, {"description": "600Kts", "value": 4}, {"description": "1200Kts", "value": 5}, {"description": "Over1200Kts", "value": 6}]}, {"category": "Standard", "default": 1200, "group": "ADSB", "longDesc": "This parameter defines the squawk code. Value should be between 0000 and 7777.", "max": 7777, "min": 0, "name": "ADSB_SQUAWK", "rebootRequired": true, "shortDesc": "ADSB-Out squawk code configuration", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 1. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC1", "shortDesc": "SIM Channel 1 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 10. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC10", "shortDesc": "SIM Channel 10 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 11. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC11", "shortDesc": "SIM Channel 11 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 12. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC12", "shortDesc": "SIM Channel 12 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 13. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC13", "shortDesc": "SIM Channel 13 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 14. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC14", "shortDesc": "SIM Channel 14 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 15. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC15", "shortDesc": "SIM Channel 15 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 16. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC16", "shortDesc": "SIM Channel 16 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 2. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC2", "shortDesc": "SIM Channel 2 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 3. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC3", "shortDesc": "SIM Channel 3 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 4. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC4", "shortDesc": "SIM Channel 4 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 5. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC5", "shortDesc": "SIM Channel 5 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 6. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC6", "shortDesc": "SIM Channel 6 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 7. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC7", "shortDesc": "SIM Channel 7 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 8. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC8", "shortDesc": "SIM Channel 8 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 9. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC9", "shortDesc": "SIM Channel 9 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"bitmask": [{"description": "SIM Channel 1", "index": 0}, {"description": "SIM Channel 2", "index": 1}, {"description": "SIM Channel 3", "index": 2}, {"description": "SIM Channel 4", "index": 3}, {"description": "SIM Channel 5", "index": 4}, {"description": "SIM Channel 6", "index": 5}, {"description": "SIM Channel 7", "index": 6}, {"description": "SIM Channel 8", "index": 7}, {"description": "SIM Channel 9", "index": 8}, {"description": "SIM Channel 10", "index": 9}, {"description": "SIM Channel 11", "index": 10}, {"description": "SIM Channel 12", "index": 11}, {"description": "SIM Channel 13", "index": 12}, {"description": "SIM Channel 14", "index": 13}, {"description": "SIM Channel 15", "index": 14}, {"description": "SIM Channel 16", "index": 15}], "category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Allows to reverse the output range for each channel. Note: this is only useful for servos.", "max": 65535, "min": 0, "name": "PWM_MAIN_REV", "shortDesc": "Reverse Output Range for SIM", "type": "Int32"}, {"category": "Standard", "default": 1, "group": "Airspeed Validator", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "max": 5, "min": 1, "name": "ASPD_BETA_GATE", "shortDesc": "Gate size for sideslip angle fusion", "type": "Int32", "units": "SD"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.15, "group": "Airspeed Validator", "longDesc": "Sideslip measurement noise of the internal wind estimator(s) of the airspeed selector.", "max": 1.0, "min": 0.0, "name": "ASPD_BETA_NOISE", "shortDesc": "Wind estimator sideslip measurement noise", "type": "Float", "units": "rad"}, {"bitmask": [{"description": "Only data missing check (triggers if more than 1s no data)", "index": 0}, {"description": "Data stuck (triggers if data is exactly constant for 2s in FW mode)", "index": 1}, {"description": "Innovation check (see ASPD_FS_INNOV)", "index": 2}, {"description": "Load factor check (triggers if measurement is below stall speed)", "index": 3}, {"description": "First principle check (airspeed change vs. throttle and pitch)", "index": 4}], "category": "Standard", "default": 7, "group": "Airspeed Validator", "longDesc": "Controls which checks are run to check airspeed data for validity. Only applied if ASPD_PRIMARY > 0.", "max": 31, "min": 0, "name": "ASPD_DO_CHECKS", "shortDesc": "Enable checks on airspeed sensors", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "Airspeed Validator", "name": "ASPD_FALLBACK", "shortDesc": "Fallback options", "type": "Int32", "values": [{"description": "Fallback only to other airspeed sensors", "value": 0}, {"description": "Fallback to groundspeed-minus-windspeed airspeed estimation", "value": 1}, {"description": "Fallback to thrust based airspeed estimation", "value": 2}]}, {"category": "Standard", "decimalPlaces": 1, "default": 2.0, "group": "Airspeed Validator", "longDesc": "Window for comparing airspeed change to throttle and pitch change. Triggers when the airspeed change within this window is negative while throttle increases and the vehicle pitches down. Is meant to catch degrading airspeed blockages as can happen when flying through icing conditions. Relies on FW_THR_TRIM being set accurately.", "min": 0.0, "name": "ASPD_FP_T_WINDOW", "shortDesc": "First principle airspeed check time window", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Airspeed Validator", "longDesc": "This specifies the minimum airspeed innovation required to trigger a failsafe. Larger values make the check less sensitive, smaller values make it more sensitive. Large innovations indicate an inconsistency between predicted (groundspeed - windspeeed) and measured airspeed. The time required to detect a fault when the threshold is exceeded depends on the size of the exceedance and is controlled by the ASPD_FS_INTEG parameter.", "max": 10.0, "min": 0.5, "name": "ASPD_FS_INNOV", "shortDesc": "Airspeed failure innovation threshold", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Airspeed Validator", "longDesc": "This sets the time integral of airspeed innovation exceedance above ASPD_FS_INNOV required to trigger a failsafe. Larger values make the check less sensitive, smaller positive values make it more sensitive.", "max": 50.0, "min": 0.0, "name": "ASPD_FS_INTEG", "shortDesc": "Airspeed failure innovation integral threshold", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "Airspeed Validator", "longDesc": "Delay before switching back to using airspeed sensor if checks indicate sensor is good. Set to a negative value to disable the re-enabling in flight.", "min": -1.0, "name": "ASPD_FS_T_START", "shortDesc": "Airspeed failsafe start delay", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Airspeed Validator", "longDesc": "Delay before stopping use of airspeed sensor if checks indicate sensor is bad.", "min": 0.0, "name": "ASPD_FS_T_STOP", "shortDesc": "Airspeed failsafe stop delay", "type": "Float", "units": "s"}, {"category": "Standard", "default": 1, "group": "Airspeed Validator", "name": "ASPD_PRIMARY", "rebootRequired": true, "shortDesc": "Index or primary airspeed measurement source", "type": "Int32", "values": [{"description": "Groundspeed minus windspeed", "value": 0}, {"description": "First airspeed sensor", "value": 1}, {"description": "Second airspeed sensor", "value": 2}, {"description": "Third airspeed sensor", "value": 3}, {"description": "Thrust based airspeed", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Airspeed Validator", "longDesc": "This is the scale IAS --> CAS of the first airspeed sensor instance", "max": 2.0, "min": 0.5, "name": "ASPD_SCALE_1", "rebootRequired": true, "shortDesc": "Scale of airspeed sensor 1", "type": "Float", "volatile": true}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Airspeed Validator", "longDesc": "This is the scale IAS --> CAS of the second airspeed sensor instance", "max": 2.0, "min": 0.5, "name": "ASPD_SCALE_2", "rebootRequired": true, "shortDesc": "Scale of airspeed sensor 2", "type": "Float", "volatile": true}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Airspeed Validator", "longDesc": "This is the scale IAS --> CAS of the third airspeed sensor instance", "max": 2.0, "min": 0.5, "name": "ASPD_SCALE_3", "rebootRequired": true, "shortDesc": "Scale of airspeed sensor 3", "type": "Float", "volatile": true}, {"category": "Standard", "default": 2, "group": "Airspeed Validator", "name": "ASPD_SCALE_APPLY", "shortDesc": "Controls when to apply the new estimated airspeed scale(s)", "type": "Int32", "values": [{"description": "Do not automatically apply the estimated scale", "value": 0}, {"description": "Apply the estimated scale after disarm", "value": 1}, {"description": "Apply the estimated scale in air", "value": 2}]}, {"category": "Standard", "decimalPlaces": 5, "default": 0.0001, "group": "Airspeed Validator", "longDesc": "Airspeed scale process noise of the internal wind estimator(s) of the airspeed selector. When unaided, the scale uncertainty (1-sigma, unitless) increases by this amount every second.", "max": 0.1, "min": 0.0, "name": "ASPD_SCALE_NSD", "shortDesc": "Wind estimator true airspeed scale process noise spectral density", "type": "Float", "units": "1/s/sqrt(Hz)"}, {"category": "Standard", "default": 4, "group": "Airspeed Validator", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "max": 5, "min": 1, "name": "ASPD_TAS_GATE", "shortDesc": "Gate size for true airspeed fusion", "type": "Int32", "units": "SD"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.4, "group": "Airspeed Validator", "longDesc": "True airspeed measurement noise of the internal wind estimator(s) of the airspeed selector.", "max": 4.0, "min": 0.0, "name": "ASPD_TAS_NOISE", "shortDesc": "Wind estimator true airspeed measurement noise", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.55, "group": "Airspeed Validator", "longDesc": "The synthetic airspeed estimate (from groundspeed and heading) will be declared valid as soon and as long the horizontal wind uncertainty is below this value.", "max": 5.0, "min": 0.001, "name": "ASPD_WERR_THR", "shortDesc": "Horizontal wind uncertainty threshold for synthetic airspeed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Airspeed Validator", "longDesc": "Wind process noise of the internal wind estimator(s) of the airspeed selector. When unaided, the wind estimate uncertainty (1-sigma, in m/s) increases by this amount every second.", "max": 1.0, "min": 0.0, "name": "ASPD_WIND_NSD", "shortDesc": "Wind estimator wind process noise spectral density", "type": "Float", "units": "m/s^2/sqrt(Hz)"}, {"category": "Standard", "default": 0, "group": "Attitude Q estimator", "name": "ATT_ACC_COMP", "shortDesc": "Acceleration compensation based on GPS velocity", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Attitude Q estimator", "max": 2.0, "min": 0.0, "name": "ATT_BIAS_MAX", "shortDesc": "Gyro bias limit", "type": "Float", "units": "rad/s"}, {"category": "Standard", "default": 0, "group": "Attitude Q estimator", "longDesc": "Enable standalone quaternion based attitude estimator.", "name": "ATT_EN", "shortDesc": "standalone attitude estimator enable (unsupported)", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Attitude Q estimator", "longDesc": "Set to 1 to use heading estimate from vision. Set to 2 to use heading from motion capture.", "max": 2, "min": 0, "name": "ATT_EXT_HDG_M", "shortDesc": "External heading usage mode (from Motion capture/Vision)", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Vision", "value": 1}, {"description": "Motion Capture", "value": 2}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Attitude Q estimator", "longDesc": "This parameter is not used in normal operation, as the declination is looked up based on the GPS coordinates of the vehicle.", "name": "ATT_MAG_DECL", "shortDesc": "Magnetic declination, in degrees", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 1, "group": "Attitude Q estimator", "name": "ATT_MAG_DECL_A", "shortDesc": "Automatic GPS based declination compensation", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "Attitude Q estimator", "max": 1.0, "min": 0.0, "name": "ATT_W_ACC", "shortDesc": "Complimentary filter accelerometer weight", "type": "Float"}, {"category": "Standard", "default": 0.1, "group": "Attitude Q estimator", "max": 1.0, "min": 0.0, "name": "ATT_W_EXT_HDG", "shortDesc": "Complimentary filter external heading weight", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Attitude Q estimator", "max": 1.0, "min": 0.0, "name": "ATT_W_GYRO_BIAS", "shortDesc": "Complimentary filter gyroscope bias weight", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Attitude Q estimator", "longDesc": "Set to 0 to avoid using the magnetometer.", "max": 1.0, "min": 0.0, "name": "ATT_W_MAG", "shortDesc": "Complimentary filter magnetometer weight", "type": "Float"}, {"category": "Standard", "default": 2, "group": "Autotune", "longDesc": "After the auto-tuning sequence is completed, a new set of gains is available and can be applied immediately or after landing.", "name": "FW_AT_APPLY", "shortDesc": "Controls when to apply the new gains", "type": "Int32", "values": [{"description": "Do not apply the new gains (logging only)", "value": 0}, {"description": "Apply the new gains after disarm", "value": 1}, {"description": "Apply the new gains in air", "value": 2}]}, {"bitmask": [{"description": "roll", "index": 0}, {"description": "pitch", "index": 1}, {"description": "yaw", "index": 2}], "category": "Standard", "default": 3, "group": "Autotune", "longDesc": "Defines which axes will be tuned during the auto-tuning sequence Set bits in the following positions to enable: 0 : Roll 1 : Pitch 2 : Yaw", "max": 7, "min": 1, "name": "FW_AT_AXES", "shortDesc": "Tuning axes selection", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "Autotune", "longDesc": "Defines which RC_MAP_AUXn parameter maps the RC channel used to enable/disable auto tuning.", "max": 6, "min": 0, "name": "FW_AT_MAN_AUX", "shortDesc": "Enable/disable auto tuning using an RC AUX input", "type": "Int32", "values": [{"description": "Disable", "value": 0}, {"description": "Aux1", "value": 1}, {"description": "Aux2", "value": 2}, {"description": "Aux3", "value": 3}, {"description": "Aux4", "value": 4}, {"description": "Aux5", "value": 5}, {"description": "Aux6", "value": 6}]}, {"category": "Standard", "default": 0, "group": "Autotune", "longDesc": "WARNING: this will inject steps to the rate controller and can be dangerous. Only activate if you know what you are doing, and in a safe environment. Any motion of the remote stick will abort the signal injection and reset this parameter Best is to perform the identification in position or hold mode. Increase the amplitude of the injected signal using FW_AT_SYSID_AMP for more signal/noise ratio", "name": "FW_AT_START", "shortDesc": "Start the autotuning sequence", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Autotune", "longDesc": "This parameter scales the signal sent to the rate controller during system identification.", "max": 6.0, "min": 0.1, "name": "FW_AT_SYSID_AMP", "shortDesc": "Amplitude of the injected signal", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Autotune", "longDesc": "Can be set lower or higher than the end frequency", "max": 30.0, "min": 0.1, "name": "FW_AT_SYSID_F0", "shortDesc": "Start frequency of the injected signal", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 20.0, "group": "Autotune", "longDesc": "Can be set lower or higher than the start frequency", "max": 30.0, "min": 0.1, "name": "FW_AT_SYSID_F1", "shortDesc": "End frequency of the injected signal", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 0, "default": 10.0, "group": "Autotune", "longDesc": "Duration of the input signal sent on each axis during system identification", "max": 120.0, "min": 5.0, "name": "FW_AT_SYSID_TIME", "shortDesc": "Maneuver time for each axis", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Autotune", "longDesc": "Type of signal used during system identification to excite the system.", "name": "FW_AT_SYSID_TYPE", "shortDesc": "Input signal type", "type": "Int32", "values": [{"description": "Step", "value": 0}, {"description": "Linear sine sweep", "value": 1}, {"description": "Logarithmic sine sweep", "value": 2}]}, {"category": "Standard", "default": 1, "group": "Autotune", "longDesc": "After the auto-tuning sequence is completed, a new set of gains is available and can be applied immediately or after landing. WARNING Applying the gains in air is dangerous as there is no guarantee that those new gains will be able to stabilize the drone properly.", "name": "MC_AT_APPLY", "shortDesc": "Controls when to apply the new gains", "type": "Int32", "values": [{"description": "Do not apply the new gains (logging only)", "value": 0}, {"description": "Apply the new gains after disarm", "value": 1}, {"description": "WARNING Apply the new gains in air", "value": 2}]}, {"category": "Standard", "default": 0, "group": "Autotune", "name": "MC_AT_EN", "shortDesc": "Multicopter autotune module enable", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.14, "group": "Autotune", "max": 0.5, "min": 0.01, "name": "MC_AT_RISE_TIME", "shortDesc": "Desired angular rate closed-loop rise time", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Autotune", "longDesc": "WARNING: this will inject steps to the rate controller and can be dangerous. Only activate if you know what you are doing, and in a safe environment. Any motion of the remote stick will abort the signal injection and reset this parameter Best is to perform the identification in position or hold mode. Increase the amplitude of the injected signal using MC_AT_SYSID_AMP for more signal/noise ratio", "name": "MC_AT_START", "shortDesc": "Start the autotuning sequence", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 0.7, "group": "Autotune", "max": 6.0, "min": 0.1, "name": "MC_AT_SYSID_AMP", "shortDesc": "Amplitude of the injected signal", "type": "Float"}, {"category": "Standard", "decimalPlaces": 0, "default": -1.0, "group": "Battery Calibration", "increment": 50.0, "longDesc": "Defines the capacity of battery 1 in mAh.", "max": 100000.0, "min": -1.0, "name": "BAT1_CAPACITY", "rebootRequired": true, "shortDesc": "Battery 1 capacity", "type": "Float", "units": "mAh"}, {"category": "Standard", "default": 0, "group": "Battery Calibration", "longDesc": "Defines the number of cells the attached battery consists of.", "name": "BAT1_N_CELLS", "shortDesc": "Number of cells for battery 1", "type": "Int32", "values": [{"description": "Unknown", "value": 0}, {"description": "1S Battery", "value": 1}, {"description": "2S Battery", "value": 2}, {"description": "3S Battery", "value": 3}, {"description": "4S Battery", "value": 4}, {"description": "5S Battery", "value": 5}, {"description": "6S Battery", "value": 6}, {"description": "7S Battery", "value": 7}, {"description": "8S Battery", "value": 8}, {"description": "9S Battery", "value": 9}, {"description": "10S Battery", "value": 10}, {"description": "11S Battery", "value": 11}, {"description": "12S Battery", "value": 12}, {"description": "13S Battery", "value": 13}, {"description": "14S Battery", "value": 14}, {"description": "15S Battery", "value": 15}, {"description": "16S Battery", "value": 16}]}, {"category": "Standard", "decimalPlaces": 4, "default": -1.0, "group": "Battery Calibration", "increment": 0.0005, "longDesc": "If non-negative, then this will be used instead of the online estimated internal resistance.", "max": 0.2, "min": -1.0, "name": "BAT1_R_INTERNAL", "rebootRequired": true, "shortDesc": "Explicitly defines the per cell internal resistance for battery 1", "type": "Float", "units": "Ohm"}, {"category": "Standard", "default": 0, "group": "Battery Calibration", "longDesc": "This parameter controls the source of battery data. The value 'Power Module' means that measurements are expected to come from a power module. If the value is set to 'External' then the system expects to receive mavlink battery status messages. If the value is set to 'ESCs', the battery information are taken from the esc_status message. This requires the ESC to provide both voltage as well as current.", "name": "BAT1_SOURCE", "rebootRequired": true, "shortDesc": "Battery 1 monitoring source", "type": "Int32", "values": [{"description": "Disabled", "value": -1}, {"description": "Power Module", "value": 0}, {"description": "External", "value": 1}, {"description": "ESCs", "value": 2}]}, {"category": "Standard", "decimalPlaces": 2, "default": 4.05, "group": "Battery Calibration", "increment": 0.01, "longDesc": "Defines the voltage where a single cell of the battery is considered full. For a more accurate estimate set this below the nominal voltage of e.g. 4.2V", "name": "BAT1_V_CHARGED", "rebootRequired": true, "shortDesc": "Full cell voltage", "type": "Float", "units": "V"}, {"category": "Standard", "decimalPlaces": 2, "default": 3.6, "group": "Battery Calibration", "increment": 0.01, "longDesc": "Defines the voltage where a single cell of the battery is considered empty. The voltage should be chosen above the steep dropoff at 3.5V. A typical lithium battery can only be discharged under high load down to 10% before it drops off to a voltage level damaging the cells.", "name": "BAT1_V_EMPTY", "rebootRequired": true, "shortDesc": "Empty cell voltage", "type": "Float", "units": "V"}, {"category": "Standard", "decimalPlaces": 0, "default": -1.0, "group": "Battery Calibration", "increment": 50.0, "longDesc": "Defines the capacity of battery 2 in mAh.", "max": 100000.0, "min": -1.0, "name": "BAT2_CAPACITY", "rebootRequired": true, "shortDesc": "Battery 2 capacity", "type": "Float", "units": "mAh"}, {"category": "Standard", "default": 0, "group": "Battery Calibration", "longDesc": "Defines the number of cells the attached battery consists of.", "name": "BAT2_N_CELLS", "shortDesc": "Number of cells for battery 2", "type": "Int32", "values": [{"description": "Unknown", "value": 0}, {"description": "1S Battery", "value": 1}, {"description": "2S Battery", "value": 2}, {"description": "3S Battery", "value": 3}, {"description": "4S Battery", "value": 4}, {"description": "5S Battery", "value": 5}, {"description": "6S Battery", "value": 6}, {"description": "7S Battery", "value": 7}, {"description": "8S Battery", "value": 8}, {"description": "9S Battery", "value": 9}, {"description": "10S Battery", "value": 10}, {"description": "11S Battery", "value": 11}, {"description": "12S Battery", "value": 12}, {"description": "13S Battery", "value": 13}, {"description": "14S Battery", "value": 14}, {"description": "15S Battery", "value": 15}, {"description": "16S Battery", "value": 16}]}, {"category": "Standard", "decimalPlaces": 4, "default": -1.0, "group": "Battery Calibration", "increment": 0.0005, "longDesc": "If non-negative, then this will be used instead of the online estimated internal resistance.", "max": 0.2, "min": -1.0, "name": "BAT2_R_INTERNAL", "rebootRequired": true, "shortDesc": "Explicitly defines the per cell internal resistance for battery 2", "type": "Float", "units": "Ohm"}, {"category": "Standard", "default": -1, "group": "Battery Calibration", "longDesc": "This parameter controls the source of battery data. The value 'Power Module' means that measurements are expected to come from a power module. If the value is set to 'External' then the system expects to receive mavlink battery status messages. If the value is set to 'ESCs', the battery information are taken from the esc_status message. This requires the ESC to provide both voltage as well as current.", "name": "BAT2_SOURCE", "rebootRequired": true, "shortDesc": "Battery 2 monitoring source", "type": "Int32", "values": [{"description": "Disabled", "value": -1}, {"description": "Power Module", "value": 0}, {"description": "External", "value": 1}, {"description": "ESCs", "value": 2}]}, {"category": "Standard", "decimalPlaces": 2, "default": 4.05, "group": "Battery Calibration", "increment": 0.01, "longDesc": "Defines the voltage where a single cell of the battery is considered full. For a more accurate estimate set this below the nominal voltage of e.g. 4.2V", "name": "BAT2_V_CHARGED", "rebootRequired": true, "shortDesc": "Full cell voltage", "type": "Float", "units": "V"}, {"category": "Standard", "decimalPlaces": 2, "default": 3.6, "group": "Battery Calibration", "increment": 0.01, "longDesc": "Defines the voltage where a single cell of the battery is considered empty. The voltage should be chosen above the steep dropoff at 3.5V. A typical lithium battery can only be discharged under high load down to 10% before it drops off to a voltage level damaging the cells.", "name": "BAT2_V_EMPTY", "rebootRequired": true, "shortDesc": "Empty cell voltage", "type": "Float", "units": "V"}, {"category": "Standard", "decimalPlaces": 0, "default": -1.0, "group": "Battery Calibration", "increment": 50.0, "longDesc": "Defines the capacity of battery 3 in mAh.", "max": 100000.0, "min": -1.0, "name": "BAT3_CAPACITY", "rebootRequired": true, "shortDesc": "Battery 3 capacity", "type": "Float", "units": "mAh"}, {"category": "Standard", "default": 0, "group": "Battery Calibration", "longDesc": "Defines the number of cells the attached battery consists of.", "name": "BAT3_N_CELLS", "shortDesc": "Number of cells for battery 3", "type": "Int32", "values": [{"description": "Unknown", "value": 0}, {"description": "1S Battery", "value": 1}, {"description": "2S Battery", "value": 2}, {"description": "3S Battery", "value": 3}, {"description": "4S Battery", "value": 4}, {"description": "5S Battery", "value": 5}, {"description": "6S Battery", "value": 6}, {"description": "7S Battery", "value": 7}, {"description": "8S Battery", "value": 8}, {"description": "9S Battery", "value": 9}, {"description": "10S Battery", "value": 10}, {"description": "11S Battery", "value": 11}, {"description": "12S Battery", "value": 12}, {"description": "13S Battery", "value": 13}, {"description": "14S Battery", "value": 14}, {"description": "15S Battery", "value": 15}, {"description": "16S Battery", "value": 16}]}, {"category": "Standard", "decimalPlaces": 4, "default": -1.0, "group": "Battery Calibration", "increment": 0.0005, "longDesc": "If non-negative, then this will be used instead of the online estimated internal resistance.", "max": 0.2, "min": -1.0, "name": "BAT3_R_INTERNAL", "rebootRequired": true, "shortDesc": "Explicitly defines the per cell internal resistance for battery 3", "type": "Float", "units": "Ohm"}, {"category": "Standard", "default": -1, "group": "Battery Calibration", "longDesc": "This parameter controls the source of battery data. The value 'Power Module' means that measurements are expected to come from a power module. If the value is set to 'External' then the system expects to receive mavlink battery status messages. If the value is set to 'ESCs', the battery information are taken from the esc_status message. This requires the ESC to provide both voltage as well as current.", "name": "BAT3_SOURCE", "rebootRequired": true, "shortDesc": "Battery 3 monitoring source", "type": "Int32", "values": [{"description": "Disabled", "value": -1}, {"description": "Power Module", "value": 0}, {"description": "External", "value": 1}, {"description": "ESCs", "value": 2}]}, {"category": "Standard", "decimalPlaces": 2, "default": 4.05, "group": "Battery Calibration", "increment": 0.01, "longDesc": "Defines the voltage where a single cell of the battery is considered full. For a more accurate estimate set this below the nominal voltage of e.g. 4.2V", "name": "BAT3_V_CHARGED", "rebootRequired": true, "shortDesc": "Full cell voltage", "type": "Float", "units": "V"}, {"category": "Standard", "decimalPlaces": 2, "default": 3.6, "group": "Battery Calibration", "increment": 0.01, "longDesc": "Defines the voltage where a single cell of the battery is considered empty. The voltage should be chosen above the steep dropoff at 3.5V. A typical lithium battery can only be discharged under high load down to 10% before it drops off to a voltage level damaging the cells.", "name": "BAT3_V_EMPTY", "rebootRequired": true, "shortDesc": "Empty cell voltage", "type": "Float", "units": "V"}, {"category": "Standard", "decimalPlaces": 2, "default": 15.0, "group": "Battery Calibration", "increment": 0.1, "longDesc": "This value is used to initialize the in-flight average current estimation, which in turn is used for estimating remaining flight time and RTL triggering.", "max": 500.0, "min": 0.0, "name": "BAT_AVRG_CURRENT", "shortDesc": "Expected battery current in flight", "type": "Float", "units": "A"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.07, "group": "Battery Calibration", "increment": 0.01, "longDesc": "Sets the threshold when the battery will be reported as critically low. This has to be lower than the low threshold. This threshold commonly will trigger RTL.", "max": 0.5, "min": 0.05, "name": "BAT_CRIT_THR", "shortDesc": "Critical threshold", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.05, "group": "Battery Calibration", "increment": 0.01, "longDesc": "Sets the threshold when the battery will be reported as dangerously low. This has to be lower than the critical threshold. This threshold commonly will trigger landing.", "max": 0.5, "min": 0.03, "name": "BAT_EMERGEN_THR", "shortDesc": "Emergency threshold", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.15, "group": "Battery Calibration", "increment": 0.01, "longDesc": "Sets the threshold when the battery will be reported as low. This has to be higher than the critical threshold.", "max": 0.5, "min": 0.12, "name": "BAT_LOW_THR", "shortDesc": "Low threshold", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 1, "default": 40.0, "group": "Camera trigger", "longDesc": "This parameter sets the time the trigger needs to pulled high or low.", "max": 3000.0, "min": 0.1, "name": "TRIG_ACT_TIME", "rebootRequired": true, "shortDesc": "Camera trigger activation time", "type": "Float", "units": "ms"}, {"category": "Standard", "decimalPlaces": 1, "default": 25.0, "group": "Camera trigger", "increment": 1.0, "longDesc": "Sets the distance at which to trigger the camera.", "min": 0.0, "name": "TRIG_DISTANCE", "rebootRequired": true, "shortDesc": "Camera trigger distance", "type": "Float", "units": "m"}, {"category": "Standard", "default": 4, "group": "Camera trigger", "longDesc": "Selects the trigger interface", "name": "TRIG_INTERFACE", "rebootRequired": true, "shortDesc": "Camera trigger Interface", "type": "Int32", "values": [{"description": "GPIO", "value": 1}, {"description": "Seagull MAP2 (over PWM)", "value": 2}, {"description": "MAVLink (Camera Protocol v1)", "value": 3}, {"description": "Generic PWM (IR trigger, servo)", "value": 4}]}, {"category": "Standard", "decimalPlaces": 1, "default": 40.0, "group": "Camera trigger", "longDesc": "This parameter sets the time between two consecutive trigger events", "max": 10000.0, "min": 4.0, "name": "TRIG_INTERVAL", "rebootRequired": true, "shortDesc": "Camera trigger interval", "type": "Float", "units": "ms"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Camera trigger", "longDesc": "This parameter sets the minimum time between two consecutive trigger events the specific camera setup is supporting.", "max": 10000.0, "min": 1.0, "name": "TRIG_MIN_INTERVA", "rebootRequired": true, "shortDesc": "Minimum camera trigger interval", "type": "Float", "units": "ms"}, {"category": "Standard", "default": 0, "group": "Camera trigger", "max": 4, "min": 0, "name": "TRIG_MODE", "rebootRequired": true, "shortDesc": "Camera trigger mode", "type": "Int32", "values": [{"description": "Disable", "value": 0}, {"description": "Time based, on command", "value": 1}, {"description": "Time based, always on", "value": 2}, {"description": "Distance based, always on", "value": 3}, {"description": "Distance based, on command (Survey mode)", "value": 4}]}, {"category": "Standard", "default": 0, "group": "Camera trigger", "longDesc": "This parameter sets the polarity of the trigger (0 = active low, 1 = active high )", "max": 1, "min": 0, "name": "TRIG_POLARITY", "rebootRequired": true, "shortDesc": "Camera trigger polarity", "type": "Int32", "values": [{"description": "Active low", "value": 0}, {"description": "Active high", "value": 1}]}, {"category": "Standard", "default": 1500, "group": "Camera trigger", "max": 2000, "min": 1000, "name": "TRIG_PWM_NEUTRAL", "rebootRequired": true, "shortDesc": "PWM neutral output on trigger pin", "type": "Int32", "units": "us"}, {"category": "Standard", "default": 1900, "group": "Camera trigger", "max": 2000, "min": 1000, "name": "TRIG_PWM_SHOOT", "rebootRequired": true, "shortDesc": "PWM output to trigger shot", "type": "Int32", "units": "us"}, {"category": "Developer", "default": 0, "group": "Circuit Breaker", "longDesc": "Setting this parameter to 782097 will disable the buzzer audio notification. Setting this parameter to 782090 will disable the startup tune, while keeping all others enabled.", "max": 782097, "min": 0, "name": "CBRK_BUZZER", "rebootRequired": true, "shortDesc": "Circuit breaker for disabling buzzer", "type": "Int32"}, {"category": "Developer", "default": 121212, "group": "Circuit Breaker", "longDesc": "Setting this parameter to 121212 will disable the flight termination action if triggered by the FailureDetector logic or if FMU is lost. This circuit breaker does not affect the RC loss, data link loss, geofence, and takeoff failure detection safety logic.", "max": 121212, "min": 0, "name": "CBRK_FLIGHTTERM", "rebootRequired": true, "shortDesc": "Circuit breaker for flight termination", "type": "Int32"}, {"category": "Developer", "default": 22027, "group": "Circuit Breaker", "longDesc": "Setting this parameter to 22027 will disable IO safety. WARNING: ENABLING THIS CIRCUIT BREAKER IS AT OWN RISK", "max": 22027, "min": 0, "name": "CBRK_IO_SAFETY", "shortDesc": "Circuit breaker for IO safety", "type": "Int32"}, {"category": "Developer", "default": 0, "group": "Circuit Breaker", "longDesc": "Setting this parameter to 894281 will disable the power valid checks in the commander. WARNING: ENABLING THIS CIRCUIT BREAKER IS AT OWN RISK", "max": 894281, "min": 0, "name": "CBRK_SUPPLY_CHK", "shortDesc": "Circuit breaker for power supply check", "type": "Int32"}, {"category": "Developer", "default": 197848, "group": "Circuit Breaker", "longDesc": "Setting this parameter to 197848 will disable the USB connected checks in the commander, setting it to 0 keeps them enabled (recommended). We are generally recommending to not fly with the USB link connected and production vehicles should set this parameter to zero to prevent users from flying USB powered. However, for R&D purposes it has proven over the years to work just fine.", "max": 197848, "min": 0, "name": "CBRK_USB_CHK", "shortDesc": "Circuit breaker for USB link check", "type": "Int32"}, {"category": "Developer", "default": 0, "group": "Circuit Breaker", "longDesc": "Setting this parameter to 159753 will enable arming in fixed-wing mode for VTOLs. WARNING: ENABLING THIS CIRCUIT BREAKER IS AT OWN RISK", "max": 159753, "min": 0, "name": "CBRK_VTOLARMING", "shortDesc": "Circuit breaker for arming in fixed-wing mode check", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "Note: actuator failure needs to be enabled and configured via FD_ACT_* parameters.", "max": 3, "min": 0, "name": "COM_ACT_FAIL_ACT", "shortDesc": "Set the actuator failure failsafe mode", "type": "Int32", "values": [{"description": "Warning only", "value": 0}, {"description": "Hold mode", "value": 1}, {"description": "Land mode", "value": 2}, {"description": "Return mode", "value": 3}, {"description": "Terminate", "value": 4}]}, {"category": "Standard", "default": 1, "group": "Commander", "longDesc": "Set 0 to prevent accidental use of the vehicle e.g. for safety or maintenance reasons.", "name": "COM_ARMABLE", "shortDesc": "Flag to allow arming", "type": "Int32", "values": [{"description": "Disallow arming", "value": 0}, {"description": "Allow arming", "value": 1}]}, {"category": "Standard", "default": 10, "group": "Commander", "longDesc": "Used if arm authorization is requested by COM_ARM_AUTH_REQ.", "name": "COM_ARM_AUTH_ID", "shortDesc": "Arm authorizer system id", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "Methods: - one arm: request authorization and arm when authorization is received - two step arm: 1st arm command request an authorization and 2nd arm command arm the drone if authorized Used if arm authorization is requested by COM_ARM_AUTH_REQ.", "name": "COM_ARM_AUTH_MET", "shortDesc": "Arm authorization method", "type": "Int32", "values": [{"description": "one arm", "value": 0}, {"description": "two step arm", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "By default off. The default allows to arm the vehicle without a arm authorization.", "name": "COM_ARM_AUTH_REQ", "shortDesc": "Require arm authorization to arm", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Commander", "increment": 0.1, "longDesc": "Timeout for authorizer answer. Used if arm authorization is requested by COM_ARM_AUTH_REQ.", "name": "COM_ARM_AUTH_TO", "shortDesc": "Arm authorization timeout", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Commander", "increment": 0.01, "longDesc": "Threshold for battery percentage below arming is prohibited. A negative value means BAT_CRIT_THR is the threshold.", "max": 0.9, "min": -1.0, "name": "COM_ARM_BAT_MIN", "shortDesc": "Minimum battery level for arming", "type": "Float", "units": "norm"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "If this parameter is set, the system will check ESC's online status and failures. This param is specific for ESCs reporting status. It shall be used only if ESCs support telemetry.", "name": "COM_ARM_CHK_ESCS", "shortDesc": "Enable checks on ESCs that report telemetry", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "Commander", "longDesc": "This check detects if there are hardfault files present on the SD card. If so, and the parameter is enabled, arming is prevented.", "name": "COM_ARM_HFLT_CHK", "shortDesc": "Enable FMU SD card hardfault detection check", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.7, "group": "Commander", "increment": 0.05, "max": 1.0, "min": 0.1, "name": "COM_ARM_IMU_ACC", "shortDesc": "Maximum accelerometer inconsistency between IMU units that will allow arming", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.25, "group": "Commander", "increment": 0.01, "max": 0.3, "min": 0.02, "name": "COM_ARM_IMU_GYR", "shortDesc": "Maximum rate gyro inconsistency between IMU units that will allow arming", "type": "Float", "units": "rad/s"}, {"category": "Standard", "default": 60, "group": "Commander", "longDesc": "Set -1 to disable the check.", "max": 180, "min": 3, "name": "COM_ARM_MAG_ANG", "shortDesc": "Maximum magnetic field inconsistency between units that will allow arming", "type": "Int32", "units": "deg"}, {"category": "Standard", "default": 2, "group": "Commander", "longDesc": "Check if the estimator detects a strong magnetic disturbance (check enabled by EKF2_MAG_CHECK)", "name": "COM_ARM_MAG_STR", "shortDesc": "Enable mag strength preflight check", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Deny arming", "value": 1}, {"description": "Warning only", "value": 2}]}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "The default allows to arm the vehicle without a valid mission.", "name": "COM_ARM_MIS_REQ", "shortDesc": "Require valid mission to arm", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "This check detects if the Open Drone ID system is missing. Depending on the value of the parameter, the check can be disabled, warn only or deny arming.", "name": "COM_ARM_ODID", "shortDesc": "Enable Drone ID system detection and health check", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Warning only", "value": 1}, {"description": "Enforce Open Drone ID system presence", "value": 2}]}, {"category": "Standard", "default": 1, "group": "Commander", "longDesc": "This check detects if the FMU SD card is missing. Depending on the value of the parameter, the check can be disabled, warn only or deny arming.", "name": "COM_ARM_SDCARD", "shortDesc": "Enable FMU SD card detection check", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Warning only", "value": 1}, {"description": "Enforce SD card presence", "value": 2}]}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "0: Arming/disarming triggers on switch transition. 1: Arming/disarming triggers when holding the momentary button down for COM_RC_ARM_HYST like the stick gesture.", "name": "COM_ARM_SWISBTN", "shortDesc": "Arm switch is a momentary button", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "Commander", "longDesc": "Measures taken when a check defined by EKF2_GPS_CHECK is failing.", "name": "COM_ARM_WO_GPS", "shortDesc": "GPS preflight check", "type": "Int32", "values": [{"description": "Deny arming", "value": 0}, {"description": "Warning only", "value": 1}, {"description": "Disabled", "value": 2}]}, {"category": "Standard", "default": 95.0, "group": "Commander", "increment": 1.0, "longDesc": "The check fails if the CPU load is above this threshold for 2s. A negative value disables the check.", "max": 100.0, "min": -1.0, "name": "COM_CPU_MAX", "shortDesc": "Maximum allowed CPU load to still arm", "type": "Float", "units": "%"}, {"category": "Standard", "decimalPlaces": 1, "default": 2.0, "group": "Commander", "increment": 0.1, "longDesc": "A non-zero, positive value specifies the time-out period in seconds after which the vehicle will be automatically disarmed in case a landing situation has been detected during this period. A zero or negative value means that automatic disarming triggered by landing detection is disabled.", "name": "COM_DISARM_LAND", "shortDesc": "Time-out for auto disarm after landing", "type": "Float", "units": "s"}, {"category": "Standard", "default": 1, "group": "Commander", "longDesc": "0: Disallow disarming when not landed 1: Allow disarming in multicopter flight in modes where the thrust is directly controlled by thr throttle stick e.g. Stabilized, Acro", "name": "COM_DISARM_MAN", "shortDesc": "Allow disarming via switch/stick/button on multicopters in manual thrust modes", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Commander", "increment": 0.1, "longDesc": "A non-zero, positive value specifies the time in seconds, within which the vehicle is expected to take off after arming. In case the vehicle didn't takeoff within the timeout it disarms again. A negative value disables autmoatic disarming triggered by a pre-takeoff timeout.", "name": "COM_DISARM_PRFLT", "shortDesc": "Time-out for auto disarm if not taking off", "type": "Float", "units": "s"}, {"bitmask": [{"description": "Mission", "index": 0}, {"description": "Hold", "index": 1}, {"description": "Offboard", "index": 2}], "category": "Standard", "default": 0, "group": "Commander", "longDesc": "Specify modes in which datalink loss is ignored and the failsafe action not triggered.", "max": 7, "min": 0, "name": "COM_DLL_EXCEPT", "shortDesc": "Datalink loss exceptions", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 10, "group": "Commander", "increment": 1, "longDesc": "After this amount of seconds without datalink, the GCS connection lost mode triggers", "max": 300, "min": 5, "name": "COM_DL_LOSS_T", "shortDesc": "GCS connection loss time threshold", "type": "Int32", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Commander", "longDesc": "Before entering failsafe (RTL, Land, Hold), wait COM_FAIL_ACT_T seconds in Hold mode for the user to realize. During that time the user cannot take over control via the stick override feature (see COM_RC_OVERRIDE). Afterwards the configured failsafe action is triggered and the user may use stick override. A zero value disables the delay and the user cannot take over via stick movements (switching modes is still allowed).", "max": 25.0, "min": 0.0, "name": "COM_FAIL_ACT_T", "shortDesc": "Delay between failsafe condition triggered and failsafe reaction", "type": "Float", "units": "s"}, {"category": "System", "default": 0, "group": "Commander", "longDesc": "This number is incremented automatically after every flight on disarming in order to remember the next flight UUID. The first flight is 0.", "min": 0, "name": "COM_FLIGHT_UUID", "shortDesc": "Next flight UUID", "type": "Int32", "volatile": true}, {"category": "Standard", "default": -1, "group": "Commander", "longDesc": "If the main switch channel is in this range the selected flight mode will be applied.", "name": "COM_FLTMODE1", "shortDesc": "Mode slot 1", "type": "Int32", "values": [{"description": "Unassigned", "value": -1}, {"description": "Manual", "value": 0}, {"description": "Altitude", "value": 1}, {"description": "Position", "value": 2}, {"description": "Mission", "value": 3}, {"description": "Hold", "value": 4}, {"description": "Return", "value": 5}, {"description": "Acro", "value": 6}, {"description": "Offboard", "value": 7}, {"description": "Stabilized", "value": 8}, {"description": "Position Slow", "value": 9}, {"description": "Takeoff", "value": 10}, {"description": "Land", "value": 11}, {"description": "Follow Me", "value": 12}, {"description": "Precision Land", "value": 13}, {"description": "External Mode 1", "value": 100}, {"description": "External Mode 2", "value": 101}, {"description": "External Mode 3", "value": 102}, {"description": "External Mode 4", "value": 103}, {"description": "External Mode 5", "value": 104}, {"description": "External Mode 6", "value": 105}, {"description": "External Mode 7", "value": 106}, {"description": "External Mode 8", "value": 107}]}, {"category": "Standard", "default": -1, "group": "Commander", "longDesc": "If the main switch channel is in this range the selected flight mode will be applied.", "name": "COM_FLTMODE2", "shortDesc": "Mode slot 2", "type": "Int32", "values": [{"description": "Unassigned", "value": -1}, {"description": "Manual", "value": 0}, {"description": "Altitude", "value": 1}, {"description": "Position", "value": 2}, {"description": "Mission", "value": 3}, {"description": "Hold", "value": 4}, {"description": "Return", "value": 5}, {"description": "Acro", "value": 6}, {"description": "Offboard", "value": 7}, {"description": "Stabilized", "value": 8}, {"description": "Position Slow", "value": 9}, {"description": "Takeoff", "value": 10}, {"description": "Land", "value": 11}, {"description": "Follow Me", "value": 12}, {"description": "Precision Land", "value": 13}, {"description": "External Mode 1", "value": 100}, {"description": "External Mode 2", "value": 101}, {"description": "External Mode 3", "value": 102}, {"description": "External Mode 4", "value": 103}, {"description": "External Mode 5", "value": 104}, {"description": "External Mode 6", "value": 105}, {"description": "External Mode 7", "value": 106}, {"description": "External Mode 8", "value": 107}]}, {"category": "Standard", "default": -1, "group": "Commander", "longDesc": "If the main switch channel is in this range the selected flight mode will be applied.", "name": "COM_FLTMODE3", "shortDesc": "Mode slot 3", "type": "Int32", "values": [{"description": "Unassigned", "value": -1}, {"description": "Manual", "value": 0}, {"description": "Altitude", "value": 1}, {"description": "Position", "value": 2}, {"description": "Mission", "value": 3}, {"description": "Hold", "value": 4}, {"description": "Return", "value": 5}, {"description": "Acro", "value": 6}, {"description": "Offboard", "value": 7}, {"description": "Stabilized", "value": 8}, {"description": "Position Slow", "value": 9}, {"description": "Takeoff", "value": 10}, {"description": "Land", "value": 11}, {"description": "Follow Me", "value": 12}, {"description": "Precision Land", "value": 13}, {"description": "External Mode 1", "value": 100}, {"description": "External Mode 2", "value": 101}, {"description": "External Mode 3", "value": 102}, {"description": "External Mode 4", "value": 103}, {"description": "External Mode 5", "value": 104}, {"description": "External Mode 6", "value": 105}, {"description": "External Mode 7", "value": 106}, {"description": "External Mode 8", "value": 107}]}, {"category": "Standard", "default": -1, "group": "Commander", "longDesc": "If the main switch channel is in this range the selected flight mode will be applied.", "name": "COM_FLTMODE4", "shortDesc": "Mode slot 4", "type": "Int32", "values": [{"description": "Unassigned", "value": -1}, {"description": "Manual", "value": 0}, {"description": "Altitude", "value": 1}, {"description": "Position", "value": 2}, {"description": "Mission", "value": 3}, {"description": "Hold", "value": 4}, {"description": "Return", "value": 5}, {"description": "Acro", "value": 6}, {"description": "Offboard", "value": 7}, {"description": "Stabilized", "value": 8}, {"description": "Position Slow", "value": 9}, {"description": "Takeoff", "value": 10}, {"description": "Land", "value": 11}, {"description": "Follow Me", "value": 12}, {"description": "Precision Land", "value": 13}, {"description": "External Mode 1", "value": 100}, {"description": "External Mode 2", "value": 101}, {"description": "External Mode 3", "value": 102}, {"description": "External Mode 4", "value": 103}, {"description": "External Mode 5", "value": 104}, {"description": "External Mode 6", "value": 105}, {"description": "External Mode 7", "value": 106}, {"description": "External Mode 8", "value": 107}]}, {"category": "Standard", "default": -1, "group": "Commander", "longDesc": "If the main switch channel is in this range the selected flight mode will be applied.", "name": "COM_FLTMODE5", "shortDesc": "Mode slot 5", "type": "Int32", "values": [{"description": "Unassigned", "value": -1}, {"description": "Manual", "value": 0}, {"description": "Altitude", "value": 1}, {"description": "Position", "value": 2}, {"description": "Mission", "value": 3}, {"description": "Hold", "value": 4}, {"description": "Return", "value": 5}, {"description": "Acro", "value": 6}, {"description": "Offboard", "value": 7}, {"description": "Stabilized", "value": 8}, {"description": "Position Slow", "value": 9}, {"description": "Takeoff", "value": 10}, {"description": "Land", "value": 11}, {"description": "Follow Me", "value": 12}, {"description": "Precision Land", "value": 13}, {"description": "External Mode 1", "value": 100}, {"description": "External Mode 2", "value": 101}, {"description": "External Mode 3", "value": 102}, {"description": "External Mode 4", "value": 103}, {"description": "External Mode 5", "value": 104}, {"description": "External Mode 6", "value": 105}, {"description": "External Mode 7", "value": 106}, {"description": "External Mode 8", "value": 107}]}, {"category": "Standard", "default": -1, "group": "Commander", "longDesc": "If the main switch channel is in this range the selected flight mode will be applied.", "name": "COM_FLTMODE6", "shortDesc": "Mode slot 6", "type": "Int32", "values": [{"description": "Unassigned", "value": -1}, {"description": "Manual", "value": 0}, {"description": "Altitude", "value": 1}, {"description": "Position", "value": 2}, {"description": "Mission", "value": 3}, {"description": "Hold", "value": 4}, {"description": "Return", "value": 5}, {"description": "Acro", "value": 6}, {"description": "Offboard", "value": 7}, {"description": "Stabilized", "value": 8}, {"description": "Position Slow", "value": 9}, {"description": "Takeoff", "value": 10}, {"description": "Land", "value": 11}, {"description": "Follow Me", "value": 12}, {"description": "Precision Land", "value": 13}, {"description": "External Mode 1", "value": 100}, {"description": "External Mode 2", "value": 101}, {"description": "External Mode 3", "value": 102}, {"description": "External Mode 4", "value": 103}, {"description": "External Mode 5", "value": 104}, {"description": "External Mode 6", "value": 105}, {"description": "External Mode 7", "value": 106}, {"description": "External Mode 8", "value": 107}]}, {"category": "Standard", "default": 3, "group": "Commander", "increment": 1, "longDesc": "Action the system takes when the remaining flight time is below the estimated time it takes to reach the RTL destination.", "name": "COM_FLTT_LOW_ACT", "shortDesc": "Remaining flight time low failsafe", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Warning", "value": 1}, {"description": "Return", "value": 3}]}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "Describes the intended use of the vehicle. Can be used by ground control software or log post processing. This param does not influence the behavior within the firmware. This means for example the control logic is independent of the setting of this param (but depends on other params).", "name": "COM_FLT_PROFILE", "shortDesc": "User Flight Profile", "type": "Int32", "values": [{"description": "Default", "value": 0}, {"description": "Pro User", "value": 100}, {"description": "Flight Tester", "value": 200}, {"description": "Developer", "value": 300}]}, {"category": "Standard", "default": -1, "group": "Commander", "longDesc": "The vehicle aborts the current operation and returns to launch when the time since takeoff is above this value. It is not possible to resume the mission or switch to any auto mode other than RTL or Land. Taking over in any manual mode is still possible. Starting from 90% of the maximum flight time, a warning message will be sent every 1 minute with the remaining time until automatic RTL. Set to -1 to disable.", "min": -1, "name": "COM_FLT_TIME_MAX", "shortDesc": "Maximum allowed flight time", "type": "Int32", "units": "s"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "Force safety when the vehicle disarms", "name": "COM_FORCE_SAFETY", "shortDesc": "Enable force safety", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 120, "group": "Commander", "longDesc": "After this amount of seconds without datalink the data link lost mode triggers", "max": 3600, "min": 60, "name": "COM_HLDL_LOSS_T", "shortDesc": "High Latency Datalink loss time threshold", "type": "Int32", "units": "s"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "After a data link loss: after this number of seconds with a healthy datalink the 'datalink loss' flag is set back to false", "max": 60, "min": 0, "name": "COM_HLDL_REG_T", "shortDesc": "High Latency Datalink regain time threshold", "type": "Int32", "units": "s"}, {"category": "Standard", "default": 1, "group": "Commander", "longDesc": "Set home position automatically if possible.", "name": "COM_HOME_EN", "rebootRequired": true, "shortDesc": "Home position enabled", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "If set to true, the autopilot is allowed to set its home position after takeoff The true home position is back-computed if a local position is estimate if available. If no local position is available, home is set to the current position.", "name": "COM_HOME_IN_AIR", "shortDesc": "Allows setting the home position after takeoff", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Commander", "increment": 1, "longDesc": "Action the system takes when an imbalanced propeller is detected by the failure detector. See also FD_IMB_PROP_THR to set the failure threshold.", "name": "COM_IMB_PROP_ACT", "shortDesc": "Imbalanced propeller failsafe mode", "type": "Int32", "values": [{"description": "Disabled", "value": -1}, {"description": "Warning", "value": 0}, {"description": "Return", "value": 1}, {"description": "Land", "value": 2}]}, {"category": "Standard", "default": 5.0, "group": "Commander", "increment": 0.1, "max": 30.0, "min": 0.0, "name": "COM_KILL_DISARM", "shortDesc": "Timeout value for disarming when kill switch is engaged", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 3, "default": 3.0, "group": "Commander", "longDesc": "A non-zero, positive value specifies the timeframe in seconds within failure detector is allowed to disarm the vehicle if attitude exceeds the limits defined in FD_FAIL_P and FD_FAIL_R. The check is not executed for flight modes that do support acrobatic maneuvers, e.g: Acro (MC/FW) and Manual (FW). A zero or negative value means that the check is disabled.", "max": 5.0, "min": -1.0, "name": "COM_LKDOWN_TKO", "shortDesc": "Timeout for detecting a failure after takeoff", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "Action the system takes at critical battery. See also BAT_CRIT_THR and BAT_EMERGEN_THR for definition of battery states.", "name": "COM_LOW_BAT_ACT", "shortDesc": "Battery failsafe mode", "type": "Int32", "values": [{"description": "Warning", "value": 0}, {"description": "Land mode", "value": 2}, {"description": "Return at critical level, land at emergency level", "value": 3}]}, {"category": "System", "default": 0, "group": "Commander", "longDesc": "This parameter is automatically set to identify external modes. It ensures that modes get assigned to the same index independent from their startup order, which is required when mapping an external mode to an RC switch.", "name": "COM_MODE0_HASH", "shortDesc": "External mode identifier 0", "type": "Int32", "volatile": true}, {"category": "System", "default": 0, "group": "Commander", "longDesc": "This parameter is automatically set to identify external modes. It ensures that modes get assigned to the same index independent from their startup order, which is required when mapping an external mode to an RC switch.", "name": "COM_MODE1_HASH", "shortDesc": "External mode identifier 1", "type": "Int32", "volatile": true}, {"category": "System", "default": 0, "group": "Commander", "longDesc": "This parameter is automatically set to identify external modes. It ensures that modes get assigned to the same index independent from their startup order, which is required when mapping an external mode to an RC switch.", "name": "COM_MODE2_HASH", "shortDesc": "External mode identifier 2", "type": "Int32", "volatile": true}, {"category": "System", "default": 0, "group": "Commander", "longDesc": "This parameter is automatically set to identify external modes. It ensures that modes get assigned to the same index independent from their startup order, which is required when mapping an external mode to an RC switch.", "name": "COM_MODE3_HASH", "shortDesc": "External mode identifier 3", "type": "Int32", "volatile": true}, {"category": "System", "default": 0, "group": "Commander", "longDesc": "This parameter is automatically set to identify external modes. It ensures that modes get assigned to the same index independent from their startup order, which is required when mapping an external mode to an RC switch.", "name": "COM_MODE4_HASH", "shortDesc": "External mode identifier 4", "type": "Int32", "volatile": true}, {"category": "System", "default": 0, "group": "Commander", "longDesc": "This parameter is automatically set to identify external modes. It ensures that modes get assigned to the same index independent from their startup order, which is required when mapping an external mode to an RC switch.", "name": "COM_MODE5_HASH", "shortDesc": "External mode identifier 5", "type": "Int32", "volatile": true}, {"category": "System", "default": 0, "group": "Commander", "longDesc": "This parameter is automatically set to identify external modes. It ensures that modes get assigned to the same index independent from their startup order, which is required when mapping an external mode to an RC switch.", "name": "COM_MODE6_HASH", "shortDesc": "External mode identifier 6", "type": "Int32", "volatile": true}, {"category": "System", "default": 0, "group": "Commander", "longDesc": "This parameter is automatically set to identify external modes. It ensures that modes get assigned to the same index independent from their startup order, which is required when mapping an external mode to an RC switch.", "name": "COM_MODE7_HASH", "shortDesc": "External mode identifier 7", "type": "Int32", "volatile": true}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "By default disabled for safety reasons", "name": "COM_MODE_ARM_CHK", "shortDesc": "Allow external mode registration while armed", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "Commander", "longDesc": "If set, enables the actuator test interface via MAVLink (ACTUATOR_TEST), that allows spinning the motors and moving the servos for testing purposes.", "name": "COM_MOT_TEST_EN", "shortDesc": "Enable Actuator Testing", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 5.0, "group": "Commander", "increment": 0.01, "max": 60.0, "min": 0.0, "name": "COM_OBC_LOSS_T", "shortDesc": "Time-out to wait when onboard computer connection is lost before warning about loss connection", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "The offboard loss failsafe will only be entered after a timeout, set by COM_OF_LOSS_T in seconds.", "name": "COM_OBL_RC_ACT", "shortDesc": "Set offboard loss failsafe mode", "type": "Int32", "values": [{"description": "Position mode", "value": 0}, {"description": "Altitude mode", "value": 1}, {"description": "Stabilized", "value": 2}, {"description": "Return mode", "value": 3}, {"description": "Land mode", "value": 4}, {"description": "Hold mode", "value": 5}, {"description": "Terminate", "value": 6}, {"description": "Disarm", "value": 7}]}, {"category": "Standard", "default": 1.0, "group": "Commander", "increment": 0.01, "longDesc": "See COM_OBL_RC_ACT to configure action.", "max": 60.0, "min": 0.0, "name": "COM_OF_LOSS_T", "shortDesc": "Time-out to wait when offboard connection is lost before triggering offboard lost action", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Commander", "name": "COM_PARACHUTE", "shortDesc": "Expect and require a healthy MAVLink parachute system", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "This sets the flight mode that will be used if navigation accuracy is no longer adequate for position control in manual Position mode.", "name": "COM_POSCTL_NAVL", "shortDesc": "Position mode navigation loss response", "type": "Int32", "values": [{"description": "Altitude mode", "value": 0}, {"description": "Land mode (descend)", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Commander", "longDesc": "This is the horizontal position error (EPH) threshold that will trigger a failsafe. The default is appropriate for a multicopter. Can be increased for a fixed-wing. If the previous position error was below this threshold, there is an additional factor of 2.5 applied (threshold for invalidation 2.5 times the one for validation). Set to -1 to disable.", "max": 400.0, "min": -1.0, "name": "COM_POS_FS_EPH", "shortDesc": "Horizontal position error threshold", "type": "Float", "units": "m"}, {"category": "Standard", "default": 3, "group": "Commander", "increment": 1, "longDesc": "Action the system takes when the estimated position has an accuracy below the specified threshold. See COM_POS_LOW_EPH to set the failsafe threshold. The failsafe action is only executed if the vehicle is in auto mission or auto loiter mode, otherwise it is only a warning.", "name": "COM_POS_LOW_ACT", "shortDesc": "Low position accuracy action", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Warning", "value": 1}, {"description": "Hold", "value": 2}, {"description": "Return", "value": 3}, {"description": "Terminate", "value": 4}, {"description": "Land", "value": 5}]}, {"category": "Standard", "default": -1.0, "group": "Commander", "longDesc": "This triggers the action specified in COM_POS_LOW_ACT if the estimated position accuracy is below this threshold. Local position has to be still declared valid, which requires some kind of velocity aiding or large dead-reckoning time (EKF2_NOAID_TOUT), and a high failsafe threshold (COM_POS_FS_EPH). Set to -1 to disable.", "max": 1000.0, "min": -1.0, "name": "COM_POS_LOW_EPH", "shortDesc": "Low position accuracy failsafe threshold", "type": "Float", "units": "m"}, {"category": "Standard", "default": 1, "group": "Commander", "longDesc": "This configures a check to verify the expected number of 5V rail power supplies are present. By default only one is expected. Note: CBRK_SUPPLY_CHK disables all power checks including this one.", "max": 4, "min": 0, "name": "COM_POWER_COUNT", "shortDesc": "Required number of redundant power modules", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "Condition to enter the prearmed state, an intermediate state between disarmed and armed in which non-throttling actuators are active.", "name": "COM_PREARM_MODE", "shortDesc": "Condition to enter prearmed mode", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Safety button", "value": 1}, {"description": "Always", "value": 2}]}, {"category": "Standard", "default": 0, "group": "Commander", "name": "COM_QC_ACT", "shortDesc": "Set action after a quadchute", "type": "Int32", "values": [{"description": "Warning only", "value": -1}, {"description": "Return mode", "value": 0}, {"description": "Land mode", "value": 1}, {"description": "Hold mode", "value": 2}]}, {"category": "Standard", "default": 95.0, "group": "Commander", "increment": 1.0, "longDesc": "The check fails if the RAM usage is above this threshold. A negative value disables the check.", "max": 100.0, "min": -1.0, "name": "COM_RAM_MAX", "shortDesc": "Maximum allowed RAM usage to pass checks", "type": "Float", "units": "%"}, {"bitmask": [{"description": "Mission", "index": 0}, {"description": "Hold", "index": 1}, {"description": "Offboard", "index": 2}], "category": "Standard", "default": 0, "group": "Commander", "longDesc": "Specify modes in which RC loss is ignored and the failsafe action not triggered.", "max": 7, "min": 0, "name": "COM_RCL_EXCEPT", "shortDesc": "RC loss exceptions", "type": "Int32"}, {"category": "Standard", "default": 1000, "group": "Commander", "longDesc": "The default value of 1000 requires the stick to be held in the arm or disarm position for 1 second.", "max": 1500, "min": 100, "name": "COM_RC_ARM_HYST", "shortDesc": "RC input arm/disarm command duration", "type": "Int32", "units": "ms"}, {"category": "Standard", "default": 3, "group": "Commander", "longDesc": "A value of 0 enables RC transmitter control (only). A valid RC transmitter calibration is required. A value of 1 allows joystick control only. RC input handling and the associated checks are disabled. A value of 2 allows either RC Transmitter or Joystick input. The first valid input is used, will fallback to other sources if the input stream becomes invalid. A value of 3 allows either input from RC or joystick. The first available source is selected and used until reboot. A value of 4 ignores any stick input.", "max": 4, "min": 0, "name": "COM_RC_IN_MODE", "shortDesc": "RC control input mode", "type": "Int32", "values": [{"description": "RC Transmitter only", "value": 0}, {"description": "Joystick only", "value": 1}, {"description": "RC and Joystick with fallback", "value": 2}, {"description": "RC or Joystick keep first", "value": 3}, {"description": "Stick input disabled", "value": 4}]}, {"category": "Standard", "decimalPlaces": 1, "default": 0.5, "group": "Commander", "increment": 0.1, "longDesc": "The time in seconds without a new setpoint from RC or Joystick, after which the connection is considered lost. This must be kept short as the vehicle will use the last supplied setpoint until the timeout triggers.", "max": 35.0, "min": 0.0, "name": "COM_RC_LOSS_T", "shortDesc": "Manual control loss timeout", "type": "Float", "units": "s"}, {"bitmask": [{"description": "Enable override during auto modes (except for in critical battery reaction)", "index": 0}, {"description": "Enable override during offboard mode", "index": 1}], "category": "Standard", "default": 1, "group": "Commander", "longDesc": "When RC stick override is enabled, moving the RC sticks more than COM_RC_STICK_OV immediately gives control back to the pilot by switching to Position mode and if position is unavailable Altitude mode. Note: Only has an effect on multicopters, and VTOLs in multicopter mode.", "max": 3, "min": 0, "name": "COM_RC_OVERRIDE", "shortDesc": "Enable RC stick override of auto and/or offboard modes", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 0, "default": 30.0, "group": "Commander", "increment": 0.05, "longDesc": "If COM_RC_OVERRIDE is enabled and the joystick input is moved more than this threshold the autopilot the pilot takes over control.", "max": 80.0, "min": 5.0, "name": "COM_RC_STICK_OV", "shortDesc": "RC stick override threshold", "type": "Float", "units": "%"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Commander", "increment": 0.1, "longDesc": "The minimal time from arming the motors until moving the vehicle is possible is COM_SPOOLUP_TIME seconds. Goal: - Motors and propellers spool up to idle speed before getting commanded to spin faster - Timeout for ESCs and smart batteries to successfulyy do failure checks e.g. for stuck rotors before the vehicle is off the ground", "max": 30.0, "min": 0.0, "name": "COM_SPOOLUP_TIME", "shortDesc": "Enforced delay between arming and further navigation", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "The mode transition after TAKEOFF has completed successfully.", "name": "COM_TAKEOFF_ACT", "shortDesc": "Action after TAKEOFF has been accepted", "type": "Int32", "values": [{"description": "Hold", "value": 0}, {"description": "Mission (if valid)", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "Allows to start the vehicle by throwing it into the air.", "name": "COM_THROW_EN", "shortDesc": "Enable throw-start", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Commander", "increment": 0.1, "longDesc": "When the throw launch is enabled, the drone will only allow motors to spin after this speed is exceeded before detecting the freefall. This is a safety feature to ensure the drone does not turn on after accidental drop or a rapid movement before the throw. Set to 0 to disable.", "min": 0.0, "name": "COM_THROW_SPEED", "shortDesc": "Minimum speed for the throw start", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Commander", "longDesc": "This is the horizontal velocity error (EVH) threshold that will trigger a failsafe. The default is appropriate for a multicopter. Can be increased for a fixed-wing. If the previous velocity error was below this threshold, there is an additional factor of 2.5 applied (threshold for invalidation 2.5 times the one for validation).", "min": 0.0, "name": "COM_VEL_FS_EVH", "shortDesc": "Horizontal velocity error threshold", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "Commander", "increment": 0.1, "longDesc": "Wind speed threshold above which an automatic failsafe action is triggered. Failsafe action can be specified with COM_WIND_MAX_ACT.", "min": -1.0, "name": "COM_WIND_MAX", "shortDesc": "High wind speed failsafe threshold", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 0, "group": "Commander", "increment": 1, "longDesc": "Action the system takes when a wind speed above the specified threshold is detected. See COM_WIND_MAX to set the failsafe threshold. If enabled, it is not possible to resume the mission or switch to any auto mode other than RTL or Land if this threshold is exceeded. Taking over in any manual mode is still possible.", "name": "COM_WIND_MAX_ACT", "shortDesc": "High wind failsafe mode", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Warning", "value": 1}, {"description": "Hold", "value": 2}, {"description": "Return", "value": 3}, {"description": "Terminate", "value": 4}, {"description": "Land", "value": 5}]}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "Commander", "increment": 0.1, "longDesc": "A warning is triggered if the currently estimated wind speed is above this value. Warning is sent periodically (every 1 minute). Set to -1 to disable.", "min": -1.0, "name": "COM_WIND_WARN", "shortDesc": "Wind speed warning threshold", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "The GCS connection loss failsafe will only be entered after a timeout, set by COM_DL_LOSS_T in seconds. Once the timeout occurs the selected action will be executed.", "max": 6, "min": 0, "name": "NAV_DLL_ACT", "shortDesc": "Set GCS connection loss failsafe mode", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Hold mode", "value": 1}, {"description": "Return mode", "value": 2}, {"description": "Land mode", "value": 3}, {"description": "Terminate", "value": 5}, {"description": "Disarm", "value": 6}]}, {"category": "Standard", "default": 2, "group": "Commander", "longDesc": "The RC loss failsafe will only be entered after a timeout, set by COM_RC_LOSS_T in seconds. If RC input checks have been disabled by setting the COM_RC_IN_MODE param it will not be triggered.", "max": 6, "min": 1, "name": "NAV_RCL_ACT", "shortDesc": "Set RC loss failsafe mode", "type": "Int32", "values": [{"description": "Hold mode", "value": 1}, {"description": "Return mode", "value": 2}, {"description": "Land mode", "value": 3}, {"description": "Terminate", "value": 5}, {"description": "Disarm", "value": 6}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "EKF2", "max": 0.5, "min": 0.0, "name": "EKF2_ABIAS_INIT", "rebootRequired": true, "shortDesc": "1-sigma IMU accelerometer switch-on bias", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 1, "default": 25.0, "group": "EKF2", "longDesc": "If the magnitude of the IMU accelerometer vector exceeds this value, the EKF accel bias state estimation will be inhibited. This reduces the adverse effect of high manoeuvre accelerations and IMU nonlinerity and scale factor errors on the accel bias estimates.", "max": 200.0, "min": 20.0, "name": "EKF2_ABL_ACCLIM", "shortDesc": "Maximum IMU accel magnitude that allows IMU bias learning", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "EKF2", "longDesc": "If the magnitude of the IMU angular rate vector exceeds this value, the EKF accel bias state estimation will be inhibited. This reduces the adverse effect of rapid rotation rates and associated errors on the accel bias estimates.", "max": 20.0, "min": 2.0, "name": "EKF2_ABL_GYRLIM", "shortDesc": "Maximum IMU gyro angular rate magnitude that allows IMU bias learning", "type": "Float", "units": "rad/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.4, "group": "EKF2", "longDesc": "The ekf accel bias states will be limited to within a range equivalent to +- of this value.", "max": 0.8, "min": 0.0, "name": "EKF2_ABL_LIM", "shortDesc": "Accelerometer bias learning limit", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "EKF2", "longDesc": "The vector magnitude of angular rate and acceleration used to check if learning should be inhibited has a peak hold filter applied to it with an exponential decay. This parameter controls the time constant of the decay.", "max": 1.0, "min": 0.1, "name": "EKF2_ABL_TAU", "shortDesc": "Accel bias learning inhibit time constant", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 6, "default": 0.003, "group": "EKF2", "max": 0.01, "min": 0.0, "name": "EKF2_ACC_B_NOISE", "shortDesc": "Process noise for IMU accelerometer bias prediction", "type": "Float", "units": "m/s^3"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.35, "group": "EKF2", "max": 1.0, "min": 0.01, "name": "EKF2_ACC_NOISE", "shortDesc": "Accelerometer noise for covariance prediction", "type": "Float", "units": "m/s^2"}, {"bitmask": [{"description": "Horizontal position", "index": 0}, {"description": "Vertical position", "index": 1}], "category": "Standard", "default": 0, "group": "EKF2", "longDesc": "Set bits in the following positions to enable: 0 : Horizontal position fusion 1 : Vertical position fusion", "max": 3, "min": 0, "name": "EKF2_AGP_CTRL", "shortDesc": "Aux global position (AGP) sensor aiding", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "EKF2", "max": 300.0, "min": 0.0, "name": "EKF2_AGP_DELAY", "rebootRequired": true, "shortDesc": "Aux global position estimator delay relative to IMU measurements", "type": "Float", "units": "ms"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_AGP_GATE", "shortDesc": "Gate size for aux global position fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.9, "group": "EKF2", "longDesc": "Used to lower bound or replace the uncertainty included in the message", "min": 0.01, "name": "EKF2_AGP_NOISE", "shortDesc": "Measurement noise for aux global position measurements", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.1, "group": "EKF2", "max": 0.5, "min": 0.0, "name": "EKF2_ANGERR_INIT", "rebootRequired": true, "shortDesc": "1-sigma tilt angle uncertainty after gravity vector alignment", "type": "Float", "units": "rad"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "EKF2", "longDesc": "Airspeed data is fused for wind estimation if above this threshold. Set to 0 to disable airspeed fusion. For reliable wind estimation both sideslip (see EKF2_FUSE_BETA) and airspeed fusion should be enabled. Only applies to fixed-wing vehicles (or VTOLs in fixed-wing mode).", "min": 0.0, "name": "EKF2_ARSP_THR", "shortDesc": "Airspeed fusion threshold", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 20.0, "group": "EKF2", "max": 50.0, "min": 5.0, "name": "EKF2_ASPD_MAX", "shortDesc": "Maximum airspeed used for baro static pressure compensation", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 100.0, "group": "EKF2", "max": 300.0, "min": 0.0, "name": "EKF2_ASP_DELAY", "rebootRequired": true, "shortDesc": "Airspeed measurement delay relative to IMU measurements", "type": "Float", "units": "ms"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "max": 300.0, "min": 0.0, "name": "EKF2_AVEL_DELAY", "rebootRequired": true, "shortDesc": "Auxiliary Velocity Estimate delay relative to IMU measurements", "type": "Float", "units": "ms"}, {"category": "Standard", "default": 1, "group": "EKF2", "longDesc": "If this parameter is enabled then the estimator will make use of the barometric height measurements to estimate its height in addition to other height sources (if activated).", "name": "EKF2_BARO_CTRL", "shortDesc": "Barometric sensor height aiding", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "EKF2", "max": 300.0, "min": 0.0, "name": "EKF2_BARO_DELAY", "rebootRequired": true, "shortDesc": "Barometer measurement delay relative to IMU measurements", "type": "Float", "units": "ms"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_BARO_GATE", "shortDesc": "Gate size for barometric and GPS height fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 3.5, "group": "EKF2", "max": 15.0, "min": 0.01, "name": "EKF2_BARO_NOISE", "shortDesc": "Measurement noise for barometric altitude", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 100.0, "group": "EKF2", "longDesc": "This parameter controls the prediction of drag produced by bluff body drag along the forward/reverse axis when flying a multi-copter which enables estimation of wind drift when enabled by the EKF2_DRAG_CTRL parameter. The drag produced by this effect scales with speed squared. The predicted drag from the rotors is specified separately by the EKF2_MCOEF parameter. Set this parameter to zero to turn off the bluff body drag model for this axis.", "max": 200.0, "min": 0.0, "name": "EKF2_BCOEF_X", "shortDesc": "X-axis ballistic coefficient used for multi-rotor wind estimation", "type": "Float", "units": "kg/m^2"}, {"category": "Standard", "decimalPlaces": 1, "default": 100.0, "group": "EKF2", "longDesc": "This parameter controls the prediction of drag produced by bluff body drag along the right/left axis when flying a multi-copter, which enables estimation of wind drift when enabled by the EKF2_DRAG_CTRL parameter. The drag produced by this effect scales with speed squared. The predicted drag from the rotors is specified separately by the EKF2_MCOEF parameter. Set this parameter to zero to turn off the bluff body drag model for this axis.", "max": 200.0, "min": 0.0, "name": "EKF2_BCOEF_Y", "shortDesc": "Y-axis ballistic coefficient used for multi-rotor wind estimation", "type": "Float", "units": "kg/m^2"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_BETA_GATE", "shortDesc": "Gate size for synthetic sideslip fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "EKF2", "max": 1.0, "min": 0.1, "name": "EKF2_BETA_NOISE", "shortDesc": "Noise for synthetic sideslip fusion", "type": "Float", "units": "m/s"}, {"bitmask": [{"description": "use geo_lookup declination", "index": 0}, {"description": "save EKF2_MAG_DECL on disarm", "index": 1}], "category": "Standard", "default": 3, "group": "EKF2", "longDesc": "Set bits in the following positions to enable functions. 0 : Set to true to use the declination from the geo_lookup library when the GPS position becomes available, set to false to always use the EKF2_MAG_DECL value. 1 : Set to true to save the EKF2_MAG_DECL parameter to the value returned by the EKF when the vehicle disarms.", "max": 3, "min": 0, "name": "EKF2_DECL_TYPE", "rebootRequired": true, "shortDesc": "Integer bitmask controlling handling of magnetic declination", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 200.0, "group": "EKF2", "longDesc": "Defines the delay between the current time and the delayed-time horizon. This value should be at least as large as the largest EKF2_XXX_DELAY parameter.", "max": 1000.0, "min": 0.0, "name": "EKF2_DELAY_MAX", "rebootRequired": true, "shortDesc": "Maximum delay of all the aiding sensors", "type": "Float", "units": "ms"}, {"category": "Standard", "default": 0, "group": "EKF2", "longDesc": "Activate wind speed estimation using specific-force measurements and a drag model defined by EKF2_BCOEF_[XY] and EKF2_MCOEF. Only use on vehicles that have their thrust aligned with the Z axis and no thrust in the XY plane.", "name": "EKF2_DRAG_CTRL", "shortDesc": "Multirotor wind estimation selection", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 2.5, "group": "EKF2", "longDesc": "Used by the multi-rotor specific drag force model. Increasing this makes the multi-rotor wind estimates adjust more slowly.", "max": 10.0, "min": 0.5, "name": "EKF2_DRAG_NOISE", "shortDesc": "Specific drag force observation noise variance", "type": "Float", "units": "(m/s^2)^2"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.4, "group": "EKF2", "max": 5.0, "min": 0.5, "name": "EKF2_EAS_NOISE", "shortDesc": "Measurement noise for airspeed fusion", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 1, "group": "EKF2", "name": "EKF2_EN", "shortDesc": "EKF2 enable", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "EKF2", "longDesc": "Used to lower bound or replace the uncertainty included in the message", "min": 0.05, "name": "EKF2_EVA_NOISE", "shortDesc": "Measurement noise for vision angle measurements", "type": "Float", "units": "rad"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_EVP_GATE", "shortDesc": "Gate size for vision position fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "EKF2", "longDesc": "Used to lower bound or replace the uncertainty included in the message", "min": 0.01, "name": "EKF2_EVP_NOISE", "shortDesc": "Measurement noise for vision position measurements", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_EVV_GATE", "shortDesc": "Gate size for vision velocity estimate fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "EKF2", "longDesc": "Used to lower bound or replace the uncertainty included in the message", "min": 0.01, "name": "EKF2_EVV_NOISE", "shortDesc": "Measurement noise for vision velocity measurements", "type": "Float", "units": "m/s"}, {"bitmask": [{"description": "Horizontal position", "index": 0}, {"description": "Vertical position", "index": 1}, {"description": "3D velocity", "index": 2}, {"description": "Yaw", "index": 3}], "category": "Standard", "default": 0, "group": "EKF2", "longDesc": "Set bits in the following positions to enable: 0 : Horizontal position fusion 1 : Vertical position fusion 2 : 3D velocity fusion 3 : Yaw", "max": 15, "min": 0, "name": "EKF2_EV_CTRL", "shortDesc": "External vision (EV) sensor aiding", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "EKF2", "max": 300.0, "min": 0.0, "name": "EKF2_EV_DELAY", "rebootRequired": true, "shortDesc": "Vision Position Estimator delay relative to IMU measurements", "type": "Float", "units": "ms"}, {"category": "Standard", "default": 0, "group": "EKF2", "longDesc": "If set to 0 (default) the measurement noise is taken from the vision message and the EV noise parameters are used as a lower bound. If set to 1 the observation noise is set from the parameters directly,", "name": "EKF2_EV_NOISE_MD", "shortDesc": "External vision (EV) noise mode", "type": "Int32", "values": [{"description": "EV reported variance (parameter lower bound)", "value": 0}, {"description": "EV noise parameters", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_EV_POS_X", "shortDesc": "X position of VI sensor focal point in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_EV_POS_Y", "shortDesc": "Y position of VI sensor focal point in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_EV_POS_Z", "shortDesc": "Z position of VI sensor focal point in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 0, "group": "EKF2", "longDesc": "External vision will only be started and fused if the quality metric is above this threshold. The quality metric is a completely optional field provided by some VIO systems.", "max": 100, "min": 0, "name": "EKF2_EV_QMIN", "shortDesc": "External vision (EV) minimum quality (optional)", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "EKF2", "longDesc": "For reliable wind estimation both sideslip and airspeed fusion (see EKF2_ARSP_THR) should be enabled. Only applies to vehicles in fixed-wing mode or with airspeed fusion active. Note: side slip fusion is currently not supported for tailsitters.", "name": "EKF2_FUSE_BETA", "shortDesc": "Enable synthetic sideslip fusion", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "EKF2", "max": 0.2, "min": 0.0, "name": "EKF2_GBIAS_INIT", "rebootRequired": true, "shortDesc": "1-sigma IMU gyro switch-on bias", "type": "Float", "units": "rad/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 4.0, "group": "EKF2", "longDesc": "Sets the value of deadzone applied to negative baro innovations. Deadzone is enabled when EKF2_GND_EFF_DZ > 0.", "max": 10.0, "min": 0.0, "name": "EKF2_GND_EFF_DZ", "shortDesc": "Baro deadzone range for height fusion", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.5, "group": "EKF2", "longDesc": "Sets the maximum distance to the ground level where negative baro innovations are expected.", "max": 5.0, "min": 0.0, "name": "EKF2_GND_MAX_HGT", "shortDesc": "Height above ground level for ground effect zone", "type": "Float", "units": "m"}, {"bitmask": [{"description": "Sat count (EKF2_REQ_NSATS)", "index": 0}, {"description": "PDOP (EKF2_REQ_PDOP)", "index": 1}, {"description": "EPH (EKF2_REQ_EPH)", "index": 2}, {"description": "EPV (EKF2_REQ_EPV)", "index": 3}, {"description": "Speed accuracy (EKF2_REQ_SACC)", "index": 4}, {"description": "Horizontal position drift (EKF2_REQ_HDRIFT)", "index": 5}, {"description": "Vertical position drift (EKF2_REQ_VDRIFT)", "index": 6}, {"description": "Horizontal speed offset (EKF2_REQ_HDRIFT)", "index": 7}, {"description": "Vertical speed offset (EKF2_REQ_VDRIFT)", "index": 8}, {"description": "Spoofing", "index": 9}], "category": "Standard", "default": 1023, "group": "EKF2", "longDesc": "Each threshold value is defined by the parameter indicated next to the check. Drift and offset checks only run when the vehicle is on ground and stationary.", "max": 1023, "min": 0, "name": "EKF2_GPS_CHECK", "shortDesc": "Integer bitmask controlling GPS checks", "type": "Int32"}, {"bitmask": [{"description": "Lon/lat", "index": 0}, {"description": "Altitude", "index": 1}, {"description": "3D velocity", "index": 2}, {"description": "Dual antenna heading", "index": 3}], "category": "Standard", "default": 7, "group": "EKF2", "longDesc": "Set bits in the following positions to enable: 0 : Longitude and latitude fusion 1 : Altitude fusion 2 : 3D velocity fusion 3 : Dual antenna heading fusion", "max": 15, "min": 0, "name": "EKF2_GPS_CTRL", "shortDesc": "GNSS sensor aiding", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 110.0, "group": "EKF2", "max": 300.0, "min": 0.0, "name": "EKF2_GPS_DELAY", "rebootRequired": true, "shortDesc": "GPS measurement delay relative to IMU measurements", "type": "Float", "units": "ms"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_GPS_POS_X", "shortDesc": "X position of GPS antenna in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_GPS_POS_Y", "shortDesc": "Y position of GPS antenna in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_GPS_POS_Z", "shortDesc": "Z position of GPS antenna in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_GPS_P_GATE", "shortDesc": "Gate size for GNSS position fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "EKF2", "max": 10.0, "min": 0.01, "name": "EKF2_GPS_P_NOISE", "shortDesc": "Measurement noise for GNSS position", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_GPS_V_GATE", "shortDesc": "Gate size for GNSS velocity fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "EKF2", "max": 5.0, "min": 0.01, "name": "EKF2_GPS_V_NOISE", "shortDesc": "Measurement noise for GNSS velocity", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "EKF2", "max": 360.0, "min": 0.0, "name": "EKF2_GPS_YAW_OFF", "shortDesc": "Heading/Yaw offset for dual antenna GPS", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "EKF2", "max": 10.0, "min": 0.1, "name": "EKF2_GRAV_NOISE", "shortDesc": "Accelerometer measurement noise for gravity based observations", "type": "Float", "units": "g0"}, {"category": "Standard", "decimalPlaces": 1, "default": 15.0, "group": "EKF2", "longDesc": "If no airspeed measurements are available, the EKF-GSF AHRS calculation will assume this value of true airspeed when compensating for centripetal acceleration during turns. Set to zero to disable centripetal acceleration compensation during fixed wing flight modes.", "max": 100.0, "min": 0.0, "name": "EKF2_GSF_TAS", "shortDesc": "Default value of true airspeed used in EKF-GSF AHRS calculation", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.15, "group": "EKF2", "longDesc": "The ekf gyro bias states will be limited to within a range equivalent to +- of this value.", "max": 0.4, "min": 0.0, "name": "EKF2_GYR_B_LIM", "shortDesc": "Gyro bias learning limit", "type": "Float", "units": "rad/s"}, {"category": "Standard", "decimalPlaces": 6, "default": 0.001, "group": "EKF2", "max": 0.01, "min": 0.0, "name": "EKF2_GYR_B_NOISE", "shortDesc": "Process noise for IMU rate gyro bias prediction", "type": "Float", "units": "rad/s^2"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.015, "group": "EKF2", "max": 0.1, "min": 0.0001, "name": "EKF2_GYR_NOISE", "shortDesc": "Rate gyro noise for covariance prediction", "type": "Float", "units": "rad/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 2.6, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_HDG_GATE", "shortDesc": "Gate size for heading fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "EKF2", "max": 1.0, "min": 0.01, "name": "EKF2_HEAD_NOISE", "shortDesc": "Measurement noise for magnetic heading fusion", "type": "Float", "units": "rad"}, {"category": "Standard", "default": 1, "group": "EKF2", "longDesc": "When multiple height sources are enabled at the same time, the height estimate will always converge towards the reference height source selected by this parameter. The range sensor and vision options should only be used when for operation over a flat surface as the local NED origin will move up and down with ground level. If GPS is set as reference but altitude fusion is disabled in EKF2_GPS_CTRL, the GPS altitude is still used to initiaize the bias of the other height sensors.", "name": "EKF2_HGT_REF", "rebootRequired": true, "shortDesc": "Determines the reference source of height data used by the EKF", "type": "Int32", "values": [{"description": "Barometric pressure", "value": 0}, {"description": "GPS", "value": 1}, {"description": "Range sensor", "value": 2}, {"description": "Vision", "value": 3}]}, {"bitmask": [{"description": "Gyro Bias", "index": 0}, {"description": "Accel Bias", "index": 1}, {"description": "Gravity vector fusion", "index": 2}], "category": "Standard", "default": 7, "group": "EKF2", "max": 7, "min": 0, "name": "EKF2_IMU_CTRL", "shortDesc": "IMU control", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_IMU_POS_X", "shortDesc": "X position of IMU in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_IMU_POS_Y", "shortDesc": "Y position of IMU in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_IMU_POS_Z", "shortDesc": "Z position of IMU in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "default": 1, "group": "EKF2", "name": "EKF2_LOG_VERBOSE", "shortDesc": "Verbose logging", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "EKF2", "longDesc": "The heading is assumed to be observable when the body acceleration is greater than this parameter when a global position/velocity aiding source is active.", "max": 5.0, "min": 0.0, "name": "EKF2_MAG_ACCLIM", "shortDesc": "Horizontal acceleration threshold used for heading observability check", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 6, "default": 0.0001, "group": "EKF2", "max": 0.1, "min": 0.0, "name": "EKF2_MAG_B_NOISE", "shortDesc": "Process noise for body magnetic field prediction", "type": "Float", "units": "gauss/s"}, {"bitmask": [{"description": "Strength (EKF2_MAG_CHK_STR)", "index": 0}, {"description": "Inclination (EKF2_MAG_CHK_INC)", "index": 1}, {"description": "Wait for WMM", "index": 2}], "category": "Standard", "default": 1, "group": "EKF2", "longDesc": "Bitmask to set which check is used to decide whether the magnetometer data is valid. If GNSS data is received, the magnetic field is compared to a World Magnetic Model (WMM), otherwise an average value is used. This check is useful to reject occasional hard iron disturbance. Set bits to 1 to enable checks. Checks enabled by the following bit positions 0 : Magnetic field strength. Set tolerance using EKF2_MAG_CHK_STR 1 : Magnetic field inclination. Set tolerance using EKF2_MAG_CHK_INC 2 : Wait for GNSS to find the theoretical strength and inclination using the WMM", "max": 7, "min": 0, "name": "EKF2_MAG_CHECK", "shortDesc": "Magnetic field strength test selection", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 20.0, "group": "EKF2", "longDesc": "Maximum allowed deviation from the expected magnetic field inclination to pass the check.", "max": 90.0, "min": 0.0, "name": "EKF2_MAG_CHK_INC", "shortDesc": "Magnetic field inclination check tolerance", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "EKF2", "longDesc": "Maximum allowed deviation from the expected magnetic field strength to pass the check.", "max": 1.0, "min": 0.0, "name": "EKF2_MAG_CHK_STR", "shortDesc": "Magnetic field strength check tolerance", "type": "Float", "units": "gauss"}, {"category": "System", "decimalPlaces": 1, "default": 0.0, "group": "EKF2", "name": "EKF2_MAG_DECL", "shortDesc": "Magnetic declination", "type": "Float", "units": "deg", "volatile": true}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "EKF2", "max": 300.0, "min": 0.0, "name": "EKF2_MAG_DELAY", "rebootRequired": true, "shortDesc": "Magnetometer measurement delay relative to IMU measurements", "type": "Float", "units": "ms"}, {"category": "Standard", "decimalPlaces": 6, "default": 0.001, "group": "EKF2", "max": 0.1, "min": 0.0, "name": "EKF2_MAG_E_NOISE", "shortDesc": "Process noise for earth magnetic field prediction", "type": "Float", "units": "gauss/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_MAG_GATE", "shortDesc": "Gate size for magnetometer XYZ component fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "EKF2", "max": 1.0, "min": 0.001, "name": "EKF2_MAG_NOISE", "shortDesc": "Measurement noise for magnetometer 3-axis fusion", "type": "Float", "units": "gauss"}, {"category": "Standard", "default": 0, "group": "EKF2", "longDesc": "Integer controlling the type of magnetometer fusion used - magnetic heading or 3-component vector. The fusion of magnetometer data as a three component vector enables vehicle body fixed hard iron errors to be learned, but requires a stable earth field. If set to 'Automatic' magnetic heading fusion is used when on-ground and 3-axis magnetic field fusion in-flight. If set to 'Magnetic heading' magnetic heading fusion is used at all times. If set to 'None' the magnetometer will not be used under any circumstance. If no external source of yaw is available, it is possible to use post-takeoff horizontal movement combined with GNSS velocity measurements to align the yaw angle. If set to 'Init' the magnetometer is only used to initalize the heading.", "name": "EKF2_MAG_TYPE", "rebootRequired": true, "shortDesc": "Type of magnetometer fusion", "type": "Int32", "values": [{"description": "Automatic", "value": 0}, {"description": "Magnetic heading", "value": 1}, {"description": "None", "value": 5}, {"description": "Init", "value": 6}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.15, "group": "EKF2", "longDesc": "This parameter controls the prediction of drag produced by the propellers when flying a multi-copter, which enables estimation of wind drift when enabled by the EKF2_DRAG_CTRL parameter. The drag produced by this effect scales with speed not speed squared and is produced because some of the air velocity normal to the propeller axis of rotation is lost when passing through the rotor disc. This changes the momentum of the flow which creates a drag reaction force. When comparing un-ducted propellers of the same diameter, the effect is roughly proportional to the area of the propeller blades when viewed side on and changes with propeller selection. Momentum drag is significantly higher for ducted rotors. To account for the drag produced by the body which scales with speed squared, see documentation for the EKF2_BCOEF_X and EKF2_BCOEF_Y parameters. Set this parameter to zero to turn off the momentum drag model for both axis.", "max": 1.0, "min": 0.0, "name": "EKF2_MCOEF", "shortDesc": "Propeller momentum drag coefficient for multi-rotor wind estimation", "type": "Float", "units": "1/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "EKF2", "longDesc": "If the vehicle is on ground, is not moving as determined by the motion test and the range finder is returning invalid or no data, then an assumed range value of EKF2_MIN_RNG will be used by the terrain estimator so that a terrain height estimate is available at the start of flight in situations where the range finder may be inside its minimum measurements distance when on ground.", "min": 0.01, "name": "EKF2_MIN_RNG", "shortDesc": "Expected range finder reading when on ground", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "EKF2", "longDesc": "Maximum number of IMUs to use for Multi-EKF. Set 0 to disable. Requires SENS_IMU_MODE 0.", "max": 4, "min": 0, "name": "EKF2_MULTI_IMU", "rebootRequired": true, "shortDesc": "Multi-EKF IMUs", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "EKF2", "longDesc": "Maximum number of magnetometers to use for Multi-EKF. Set 0 to disable. Requires SENS_MAG_MODE 0.", "max": 4, "min": 0, "name": "EKF2_MULTI_MAG", "rebootRequired": true, "shortDesc": "Multi-EKF Magnetometers", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "EKF2", "max": 50.0, "min": 0.5, "name": "EKF2_NOAID_NOISE", "shortDesc": "Measurement noise for non-aiding position hold", "type": "Float", "units": "m"}, {"category": "Standard", "default": 5000000, "group": "EKF2", "longDesc": "Maximum lapsed time from last fusion of measurements that constrain velocity drift before the EKF will report the horizontal nav solution as invalid", "max": 10000000, "min": 500000, "name": "EKF2_NOAID_TOUT", "shortDesc": "Maximum inertial dead-reckoning time", "type": "Int32", "units": "us"}, {"category": "Standard", "default": 1, "group": "EKF2", "longDesc": "Enable optical flow fusion.", "name": "EKF2_OF_CTRL", "shortDesc": "Optical flow aiding", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 20.0, "group": "EKF2", "longDesc": "Assumes measurement is timestamped at trailing edge of integration period", "max": 300.0, "min": 0.0, "name": "EKF2_OF_DELAY", "rebootRequired": true, "shortDesc": "Optical flow measurement delay relative to IMU measurements", "type": "Float", "units": "ms"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_OF_GATE", "shortDesc": "Gate size for optical flow fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "default": 0, "group": "EKF2", "longDesc": "Auto: use gyro from optical flow message if available, internal gyro otherwise. Internal: always use internal gyro", "name": "EKF2_OF_GYR_SRC", "shortDesc": "Optical flow angular rate compensation source", "type": "Int32", "values": [{"description": "Auto", "value": 0}, {"description": "Internal", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "EKF2", "longDesc": "Measurement noise for the optical flow sensor when it's reported quality metric is at the minimum", "min": 0.05, "name": "EKF2_OF_N_MAX", "shortDesc": "Optical flow maximum noise", "type": "Float", "units": "rad/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.15, "group": "EKF2", "longDesc": "Measurement noise for the optical flow sensor when it's reported quality metric is at the maximum", "min": 0.05, "name": "EKF2_OF_N_MIN", "shortDesc": "Optical flow minimum noise", "type": "Float", "units": "rad/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_OF_POS_X", "shortDesc": "X position of optical flow focal point in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_OF_POS_Y", "shortDesc": "Y position of optical flow focal point in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_OF_POS_Z", "shortDesc": "Z position of optical flow focal point in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "default": 1, "group": "EKF2", "longDesc": "Optical Flow data will only be used in air if the sensor reports a quality metric >= EKF2_OF_QMIN", "max": 255, "min": 0, "name": "EKF2_OF_QMIN", "shortDesc": "In air optical flow minimum quality", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "EKF2", "longDesc": "Optical Flow data will only be used on the ground if the sensor reports a quality metric >= EKF2_OF_QMIN_GND", "max": 255, "min": 0, "name": "EKF2_OF_QMIN_GND", "shortDesc": "On ground optical flow minimum quality", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "EKF2", "longDesc": "This is the ratio of static pressure error to dynamic pressure generated by a negative wind relative velocity along the X body axis. If the baro height estimate rises during backwards flight, then this will be a negative number.", "max": 0.5, "min": -0.5, "name": "EKF2_PCOEF_XN", "shortDesc": "Static pressure position error coefficient for the negative X axis", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "EKF2", "longDesc": "This is the ratio of static pressure error to dynamic pressure generated by a positive wind relative velocity along the X body axis. If the baro height estimate rises during forward flight, then this will be a negative number.", "max": 0.5, "min": -0.5, "name": "EKF2_PCOEF_XP", "shortDesc": "Static pressure position error coefficient for the positive X axis", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "EKF2", "longDesc": "This is the ratio of static pressure error to dynamic pressure generated by a wind relative velocity along the negative Y (LH) body axis. If the baro height estimate rises during sideways flight to the left, then this will be a negative number.", "max": 0.5, "min": -0.5, "name": "EKF2_PCOEF_YN", "shortDesc": "Pressure position error coefficient for the negative Y axis", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "EKF2", "longDesc": "This is the ratio of static pressure error to dynamic pressure generated by a wind relative velocity along the positive Y (RH) body axis. If the baro height estimate rises during sideways flight to the right, then this will be a negative number.", "max": 0.5, "min": -0.5, "name": "EKF2_PCOEF_YP", "shortDesc": "Pressure position error coefficient for the positive Y axis", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "EKF2", "longDesc": "This is the ratio of static pressure error to dynamic pressure generated by a wind relative velocity along the Z body axis.", "max": 0.5, "min": -0.5, "name": "EKF2_PCOEF_Z", "shortDesc": "Static pressure position error coefficient for the Z axis", "type": "Float"}, {"category": "Standard", "default": 10000, "group": "EKF2", "longDesc": "EKF prediction period in microseconds. This should ideally be an integer multiple of the IMU time delta. Actual filter update will be an integer multiple of IMU update.", "max": 20000, "min": 1000, "name": "EKF2_PREDICT_US", "shortDesc": "EKF prediction period", "type": "Int32", "units": "us"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "EKF2", "max": 100.0, "min": 2.0, "name": "EKF2_REQ_EPH", "shortDesc": "Required EPH to use GPS", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "max": 100.0, "min": 2.0, "name": "EKF2_REQ_EPV", "shortDesc": "Required EPV to use GPS", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "EKF2", "longDesc": "Minimum continuous period without GPS failure required to mark a healthy GPS status. It can be reduced to speed up initialization, but it's recommended to keep this unchanged for a vehicle.", "min": 0.1, "name": "EKF2_REQ_GPS_H", "rebootRequired": true, "shortDesc": "Required GPS health time on startup", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "EKF2", "max": 1.0, "min": 0.1, "name": "EKF2_REQ_HDRIFT", "shortDesc": "Maximum horizontal drift speed to use GPS", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 6, "group": "EKF2", "max": 12, "min": 4, "name": "EKF2_REQ_NSATS", "shortDesc": "Required satellite count to use GPS", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 2.5, "group": "EKF2", "max": 5.0, "min": 1.5, "name": "EKF2_REQ_PDOP", "shortDesc": "Maximum PDOP to use GPS", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "EKF2", "max": 5.0, "min": 0.5, "name": "EKF2_REQ_SACC", "shortDesc": "Required speed accuracy to use GPS", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "EKF2", "max": 1.5, "min": 0.1, "name": "EKF2_REQ_VDRIFT", "shortDesc": "Maximum vertical drift speed to use GPS", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 5.0, "group": "EKF2", "longDesc": "If the vehicle absolute altitude exceeds this value then the estimator will not fuse range measurements to estimate its height. This only applies when conditional range aid mode is activated (EKF2_RNG_CTRL = 1).", "max": 10.0, "min": 1.0, "name": "EKF2_RNG_A_HMAX", "shortDesc": "Maximum height above ground allowed for conditional range aid mode", "type": "Float", "units": "m"}, {"category": "Standard", "default": 1.0, "group": "EKF2", "longDesc": "A lower value means HAGL needs to be more stable in order to use range finder for height estimation in range aid mode", "max": 5.0, "min": 0.1, "name": "EKF2_RNG_A_IGATE", "shortDesc": "Gate size used for innovation consistency checks for range aid fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "default": 1.0, "group": "EKF2", "longDesc": "If the vehicle horizontal speed exceeds this value then the estimator will not fuse range measurements to estimate its height. This only applies when conditional range aid mode is activated (EKF2_RNG_CTRL = 1).", "max": 2.0, "min": 0.1, "name": "EKF2_RNG_A_VMAX", "shortDesc": "Maximum horizontal velocity allowed for conditional range aid mode", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 1, "group": "EKF2", "longDesc": "WARNING: Range finder measurements are less reliable and can experience unexpected errors. For these reasons, if accurate control of height relative to ground is required, it is recommended to use the MPC_ALT_MODE parameter instead, unless baro errors are severe enough to cause problems with landing and takeoff. If this parameter is enabled then the estimator will make use of the range finder measurements to estimate its height in addition to other height sources (if activated). Range sensor aiding can be enabled (i.e.: always use) or set in \"conditional\" mode. Conditional mode: This enables the range finder to be used during low speed (< EKF2_RNG_A_VMAX) and low altitude (< EKF2_RNG_A_HMAX) operation, eg takeoff and landing, where baro interference from rotor wash is excessive and can corrupt EKF state estimates. It is intended to be used where a vertical takeoff and landing is performed, and horizontal flight does not occur until above EKF2_RNG_A_HMAX.", "name": "EKF2_RNG_CTRL", "shortDesc": "Range sensor height aiding", "type": "Int32", "values": [{"description": "Disable range fusion", "value": 0}, {"description": "Enabled (conditional mode)", "value": 1}, {"description": "Enabled", "value": 2}]}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "max": 300.0, "min": 0.0, "name": "EKF2_RNG_DELAY", "rebootRequired": true, "shortDesc": "Range finder measurement delay relative to IMU measurements", "type": "Float", "units": "ms"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "EKF2", "longDesc": "Limit for fog detection. If the range finder measures a distance greater than this value, the measurement is considered to not be blocked by fog or rain. If there's a jump from larger than RNG_FOG to smaller than EKF2_RNG_FOG, the measurement may gets rejected. 0 - disabled", "max": 20.0, "min": 0.0, "name": "EKF2_RNG_FOG", "shortDesc": "Maximum distance at which the range finder could detect fog (m)", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_RNG_GATE", "shortDesc": "Gate size for range finder fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "default": 1.0, "group": "EKF2", "longDesc": "To be used, the time derivative of the distance sensor measurements projected on the vertical axis needs to be statistically consistent with the estimated vertical velocity of the drone. Decrease this value to make the filter more robust against range finder faulty data (stuck, reflections, ...). Note: tune the range finder noise parameters (EKF2_RNG_NOISE and EKF2_RNG_SFE) before tuning this gate.", "max": 5.0, "min": 0.1, "name": "EKF2_RNG_K_GATE", "shortDesc": "Gate size used for range finder kinematic consistency check", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "EKF2", "min": 0.01, "name": "EKF2_RNG_NOISE", "shortDesc": "Measurement noise for range finder fusion", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "max": 0.75, "min": -0.75, "name": "EKF2_RNG_PITCH", "shortDesc": "Range sensor pitch offset", "type": "Float", "units": "rad"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_RNG_POS_X", "shortDesc": "X position of range finder origin in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_RNG_POS_Y", "shortDesc": "Y position of range finder origin in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_RNG_POS_Z", "shortDesc": "Z position of range finder origin in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "default": 1.0, "group": "EKF2", "longDesc": "Minimum duration during which the reported range finder signal quality needs to be non-zero in order to be declared valid (s)", "max": 5.0, "min": 0.1, "name": "EKF2_RNG_QLTY_T", "shortDesc": "Minumum range validity period", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0.05, "group": "EKF2", "longDesc": "Specifies the increase in range finder noise with range.", "max": 0.2, "min": 0.0, "name": "EKF2_RNG_SFE", "shortDesc": "Range finder range dependent noise scaler", "type": "Float", "units": "m/m"}, {"category": "Standard", "default": 0.2, "group": "EKF2", "longDesc": "EKF2 instances have to be better than the selected by at least this amount before their relative score can be reduced.", "name": "EKF2_SEL_ERR_RED", "shortDesc": "Selector error reduce threshold", "type": "Float"}, {"category": "Standard", "default": 1.0, "group": "EKF2", "longDesc": "EKF2 selector acceleration error threshold for comparing accelerometers. Acceleration vector differences larger than this will result in accumulated velocity error.", "name": "EKF2_SEL_IMU_ACC", "shortDesc": "Selector acceleration threshold", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "default": 15.0, "group": "EKF2", "longDesc": "EKF2 selector maximum accumulated angular error threshold for comparing gyros. Accumulated angular error larger than this will result in the sensor being declared faulty.", "name": "EKF2_SEL_IMU_ANG", "shortDesc": "Selector angular threshold", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 7.0, "group": "EKF2", "longDesc": "EKF2 selector angular rate error threshold for comparing gyros. Angular rate vector differences larger than this will result in accumulated angular error.", "name": "EKF2_SEL_IMU_RAT", "shortDesc": "Selector angular rate threshold", "type": "Float", "units": "deg/s"}, {"category": "Standard", "default": 2.0, "group": "EKF2", "longDesc": "EKF2 selector maximum accumulated velocity threshold for comparing accelerometers. Accumulated velocity error larger than this will result in the sensor being declared faulty.", "name": "EKF2_SEL_IMU_VEL", "shortDesc": "Selector angular threshold", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 0, "group": "EKF2", "longDesc": "Use for vehicles where the measured body Z magnetic field is subject to strong magnetic interference. For magnetic heading fusion the magnetometer Z measurement will be replaced by a synthetic value calculated using the knowledge of the 3D magnetic field vector at the location of the drone. Therefore, this parameter will only have an effect if the global position of the drone is known. For 3D mag fusion the magnetometer Z measurement will simply be ignored instead of fusing the synthetic value.", "name": "EKF2_SYNT_MAG_Z", "shortDesc": "Enable synthetic magnetometer Z component measurement", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_TAS_GATE", "shortDesc": "Gate size for TAS fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.25, "group": "EKF2", "longDesc": "Controls how tightly the output track the EKF states", "max": 1.0, "min": 0.1, "name": "EKF2_TAU_POS", "shortDesc": "Output predictor position time constant", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.25, "group": "EKF2", "max": 1.0, "name": "EKF2_TAU_VEL", "shortDesc": "Time constant of the velocity output prediction and smoothing filter", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "EKF2", "min": 0.0, "name": "EKF2_TERR_GRAD", "shortDesc": "Magnitude of terrain gradient", "type": "Float", "units": "m/m"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "min": 0.5, "name": "EKF2_TERR_NOISE", "shortDesc": "Terrain altitude process noise", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 100.0, "group": "EKF2", "max": 299792458.0, "name": "EKF2_VEL_LIM", "shortDesc": "Velocity limit", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "EKF2", "longDesc": "When unaided, the wind estimate uncertainty (1-sigma, in m/s) increases by this amount every second.", "max": 1.0, "min": 0.0, "name": "EKF2_WIND_NSD", "shortDesc": "Process noise spectral density for wind velocity prediction", "type": "Float", "units": "m/s^2/sqrt(Hz)"}, {"category": "Standard", "default": 0, "group": "Events", "longDesc": "Enable/disable event task for RC Loss. When enabled, an alarm tune will be played via buzzer or ESCs, if supported. The alarm will sound after a disarm, if the vehicle was previously armed and only if the vehicle had RC signal at some point. Particularly useful for locating crashed drones without a GPS sensor.", "name": "EV_TSK_RC_LOSS", "rebootRequired": true, "shortDesc": "RC Loss Alarm", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Events", "longDesc": "Enable/disable event task for displaying the vehicle status using arm-mounted LEDs. When enabled and if the vehicle supports it, LEDs will flash indicating various vehicle status changes. Currently PX4 has not implemented any specific status events. -", "name": "EV_TSK_STAT_DIS", "rebootRequired": true, "shortDesc": "Status Display", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 30.0, "group": "FW Attitude Control", "increment": 0.5, "longDesc": "Applies to both directions in all manual modes with attitude stabilization but without altitude control", "max": 90.0, "min": 0.0, "name": "FW_MAN_P_MAX", "shortDesc": "Maximum manual pitch angle", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 45.0, "group": "FW Attitude Control", "increment": 0.5, "longDesc": "Applies to both directions in all manual modes with attitude stabilization", "max": 90.0, "min": 0.0, "name": "FW_MAN_R_MAX", "shortDesc": "Maximum manual roll angle", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 30.0, "group": "FW Attitude Control", "increment": 0.5, "longDesc": "This is the maximally added yaw rate setpoint from the yaw stick in any attitude controlled flight mode. It is added to the yaw rate setpoint generated by the controller for turn coordination.", "min": 0.0, "name": "FW_MAN_YR_MAX", "shortDesc": "Maximum manually added yaw rate", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "FW Attitude Control", "increment": 0.5, "longDesc": "An airframe specific offset of the pitch setpoint in degrees, the value is added to the pitch setpoint and should correspond to the pitch at typical cruise speed of the airframe.", "max": 90.0, "min": -90.0, "name": "FW_PSP_OFF", "shortDesc": "Pitch setpoint offset (pitch at level flight)", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 60.0, "group": "FW Attitude Control", "increment": 0.5, "max": 180.0, "min": 0.0, "name": "FW_P_RMAX_NEG", "shortDesc": "Maximum negative / down pitch rate setpoint", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 60.0, "group": "FW Attitude Control", "increment": 0.5, "max": 180.0, "min": 0.0, "name": "FW_P_RMAX_POS", "shortDesc": "Maximum positive / up pitch rate setpoint", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.4, "group": "FW Attitude Control", "increment": 0.05, "longDesc": "This defines the latency between a pitch step input and the achieved setpoint (inverse to a P gain). Smaller systems may require smaller values.", "max": 1.0, "min": 0.2, "name": "FW_P_TC", "shortDesc": "Attitude pitch time constant", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 70.0, "group": "FW Attitude Control", "increment": 0.5, "max": 180.0, "min": 0.0, "name": "FW_R_RMAX", "shortDesc": "Maximum roll rate setpoint", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.4, "group": "FW Attitude Control", "increment": 0.05, "longDesc": "This defines the latency between a roll step input and the achieved setpoint (inverse to a P gain). Smaller systems may require smaller values.", "max": 1.0, "min": 0.2, "name": "FW_R_TC", "shortDesc": "Attitude Roll Time Constant", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Attitude Control", "increment": 0.01, "max": 1.0, "min": 0.0, "name": "FW_SPOILERS_LND", "shortDesc": "Spoiler landing setting", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "FW Attitude Control", "increment": 0.05, "max": 10.0, "min": 0.0, "name": "FW_WR_FF", "shortDesc": "Wheel steering rate feed forward", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.1, "group": "FW Attitude Control", "increment": 0.005, "longDesc": "This gain defines how much control response will result out of a steady state error. It trims any constant error.", "max": 10.0, "min": 0.0, "name": "FW_WR_I", "shortDesc": "Wheel steering rate integrator gain", "type": "Float", "units": "%/rad"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.4, "group": "FW Attitude Control", "increment": 0.05, "max": 1.0, "min": 0.0, "name": "FW_WR_IMAX", "shortDesc": "Wheel steering rate integrator limit", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.5, "group": "FW Attitude Control", "increment": 0.005, "longDesc": "This defines how much the wheel steering input will be commanded depending on the current body angular rate error.", "max": 10.0, "min": 0.0, "name": "FW_WR_P", "shortDesc": "Wheel steering rate proportional gain", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "default": 0, "group": "FW Attitude Control", "longDesc": "Only enabled during automatic runway takeoff and landing. In all manual modes the wheel is directly controlled with yaw stick.", "name": "FW_W_EN", "shortDesc": "Enable wheel steering controller", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 30.0, "group": "FW Attitude Control", "increment": 0.5, "longDesc": "This limits the maximum wheel steering rate the controller will output (in degrees per second).", "max": 90.0, "min": 0.0, "name": "FW_W_RMAX", "shortDesc": "Maximum wheel steering rate", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 50.0, "group": "FW Attitude Control", "increment": 0.5, "max": 180.0, "min": 0.0, "name": "FW_Y_RMAX", "shortDesc": "Maximum yaw rate setpoint", "type": "Float", "units": "deg/s"}, {"bitmask": [{"description": "Abort if terrain is not found (only applies to mission landings)", "index": 0}, {"description": "Abort if terrain times out (after a first successful measurement)", "index": 1}], "category": "Standard", "default": 3, "group": "FW Auto Landing", "longDesc": "Terrain estimation: bit 0: Abort if terrain is not found bit 1: Abort if terrain times out (after a first successful measurement) The last estimate is always used as ground, whether the last valid measurement or the land waypoint, depending on the selected abort criteria, until an abort condition is entered. If FW_LND_USETER == 0, these bits are ignored. TODO: Extend automatic abort conditions e.g. glide slope tracking error (horizontal and vertical)", "max": 3, "min": 0, "name": "FW_LND_ABORT", "shortDesc": "Bit mask to set the automatic landing abort conditions", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "FW Auto Landing", "increment": 0.1, "longDesc": "The calibrated airspeed setpoint during landing. If set <= 0, landing airspeed = FW_AIRSPD_MIN by default.", "min": -1.0, "name": "FW_LND_AIRSPD", "shortDesc": "Landing airspeed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "FW Auto Landing", "increment": 0.5, "longDesc": "Typically the desired landing slope angle when landing configuration (flaps, airspeed) is enabled. Set this value within the vehicle's performance limits.", "max": 15.0, "min": 1.0, "name": "FW_LND_ANG", "shortDesc": "Maximum landing slope angle", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0, "group": "FW Auto Landing", "longDesc": "Allows to deploy the landing configuration (flaps, landing airspeed, etc.) already in the loiter-down waypoint before the final approach. Otherwise is enabled only in the final approach.", "name": "FW_LND_EARLYCFG", "shortDesc": "Early landing configuration deployment", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 0.5, "group": "FW Auto Landing", "increment": 0.5, "longDesc": "NOTE: max(FW_LND_FLALT, FW_LND_FL_TIME * |z-velocity|) is taken as the flare altitude", "min": 0.0, "name": "FW_LND_FLALT", "shortDesc": "Landing flare altitude (relative to landing altitude)", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 15.0, "group": "FW Auto Landing", "increment": 0.5, "longDesc": "Maximum pitch during landing flare.", "max": 45.0, "min": 0.0, "name": "FW_LND_FL_PMAX", "shortDesc": "Flare, maximum pitch", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 2.5, "group": "FW Auto Landing", "increment": 0.5, "longDesc": "Minimum pitch during landing flare.", "max": 15.0, "min": -5.0, "name": "FW_LND_FL_PMIN", "shortDesc": "Flare, minimum pitch", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.25, "group": "FW Auto Landing", "increment": 0.1, "longDesc": "TECS will attempt to control the aircraft to this sink rate via pitch angle (throttle killed during flare)", "max": 2.0, "min": 0.0, "name": "FW_LND_FL_SINK", "shortDesc": "Landing flare sink rate", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "FW Auto Landing", "increment": 0.1, "longDesc": "Multiplied by the descent rate to calculate a dynamic altitude at which to trigger the flare. NOTE: max(FW_LND_FLALT, FW_LND_FL_TIME * descent rate) is taken as the flare altitude", "max": 5.0, "min": 0.1, "name": "FW_LND_FL_TIME", "shortDesc": "Landing flare time", "type": "Float", "units": "s"}, {"category": "Standard", "default": 2, "group": "FW Auto Landing", "longDesc": "Approach angle nudging: shifts the touchdown point laterally while keeping the approach entrance point constant Approach path nudging: shifts the touchdown point laterally along with the entire approach path This is useful for manually adjusting the landing point in real time when map or GNSS errors cause an offset from the desired landing vector. Nudging is done with yaw stick, constrained to FW_LND_TD_OFF (in meters) and the direction is relative to the vehicle heading (stick deflection to the right = land point moves to the right as seen by the vehicle).", "max": 2, "min": 0, "name": "FW_LND_NUDGE", "shortDesc": "Landing touchdown nudging option", "type": "Int32", "values": [{"description": "Disable nudging", "value": 0}, {"description": "Nudge approach angle", "value": 1}, {"description": "Nudge approach path", "value": 2}]}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "FW Auto Landing", "increment": 1.0, "max": 10.0, "min": 0.0, "name": "FW_LND_TD_OFF", "shortDesc": "Maximum lateral position offset for the touchdown point", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "FW Auto Landing", "increment": 0.1, "longDesc": "This is the time after the start of flaring that we expect the vehicle to touch the runway. At this time, a 0.5s clamp down ramp will engage, constraining the pitch setpoint to RWTO_PSP. If enabled, ensure that RWTO_PSP is configured appropriately for full gear contact on ground roll. Set to -1.0 to disable touchdown clamping. E.g. it may not be desirable to clamp on belly landings. The touchdown time will be constrained to be greater than or equal to the flare time (FW_LND_FL_TIME).", "max": 5.0, "min": -1.0, "name": "FW_LND_TD_TIME", "shortDesc": "Landing touchdown time (since flare start)", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "FW Auto Landing", "increment": 0.1, "longDesc": "The TECS altitude time constant (FW_T_ALT_TC) is multiplied by this value.", "max": 1.0, "min": 0.2, "name": "FW_LND_THRTC_SC", "shortDesc": "Altitude time constant factor for landing and low-height flight", "type": "Float", "units": ""}, {"category": "Standard", "default": 1, "group": "FW Auto Landing", "longDesc": "This is critical for detecting when to flare, and should be enabled if possible. If enabled and no measurement is found within a given timeout, the landing waypoint altitude will be used OR the landing will be aborted, depending on the criteria set in FW_LND_ABORT. If disabled, FW_LND_ABORT terrain based criteria are ignored.", "max": 2, "min": 0, "name": "FW_LND_USETER", "shortDesc": "Use terrain estimation during landing", "type": "Int32", "values": [{"description": "Disable the terrain estimate", "value": 0}, {"description": "Use the terrain estimate to trigger the flare (only)", "value": 1}, {"description": "Calculate landing glide slope relative to the terrain estimate", "value": 2}]}, {"category": "Standard", "decimalPlaces": 1, "default": 0.5, "group": "FW Geometry", "increment": 1.0, "longDesc": "This is used to constrain a minimum altitude below which we keep wings level to avoid wing tip strike. It's safer to give a slight margin here (> 0m)", "min": 0.0, "name": "FW_WING_HEIGHT", "shortDesc": "Height (AGL) of the wings when the aircraft is on the ground", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "FW Geometry", "increment": 0.1, "longDesc": "This is used for limiting the roll setpoint near the ground. (if multiple wings, take the longest span)", "min": 0.1, "name": "FW_WING_SPAN", "shortDesc": "The aircraft's wing span (length from tip to tip)", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.05, "group": "FW Launch detection", "increment": 0.05, "longDesc": "Launch is detected when acceleration in body forward direction is above FW_LAUN_AC_THLD for FW_LAUN_AC_T seconds.", "max": 5.0, "min": 0.0, "name": "FW_LAUN_AC_T", "shortDesc": "Trigger time", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 30.0, "group": "FW Launch detection", "increment": 0.5, "longDesc": "Launch is detected when acceleration in body forward direction is above FW_LAUN_AC_THLD for FW_LAUN_AC_T seconds.", "min": 0.0, "name": "FW_LAUN_AC_THLD", "shortDesc": "Trigger acceleration threshold", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "default": 0, "group": "FW Launch detection", "longDesc": "Enables automatic launch detection based on measured acceleration. Use for hand- or catapult-launched vehicles. Not compatible with runway takeoff.", "name": "FW_LAUN_DETCN_ON", "shortDesc": "Fixed-wing launch detection", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "FW Launch detection", "increment": 0.5, "longDesc": "Start the motor(s) this amount of seconds after launch is detected.", "max": 10.0, "min": 0.0, "name": "FW_LAUN_MOT_DEL", "shortDesc": "Motor delay", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.7, "group": "FW NPFG Control", "increment": 0.01, "longDesc": "Damping ratio of NPFG control law.", "max": 1.0, "min": 0.1, "name": "NPFG_DAMPING", "shortDesc": "NPFG damping ratio", "type": "Float"}, {"category": "Standard", "default": 1, "group": "FW NPFG Control", "name": "NPFG_EN_MIN_GSP", "shortDesc": "Enable minimum forward ground speed maintaining excess wind handling logic", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "FW NPFG Control", "increment": 0.5, "longDesc": "The maximum value of the minimum forward ground speed that may be commanded by the track keeping excess wind handling logic. Commanded in full at the normalized track error fraction of the track error boundary and reduced to zero on track.", "max": 10.0, "min": 0.0, "name": "NPFG_GSP_MAX_TK", "shortDesc": "Maximum, minimum forward ground speed for track keeping in excess wind", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 1, "group": "FW NPFG Control", "longDesc": "Avoids limit cycling from a too aggressively tuned period/damping combination. If false, also disables upper bound NPFG_PERIOD_UB.", "name": "NPFG_LB_PERIOD", "shortDesc": "Enable automatic lower bound on the NPFG period", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "FW NPFG Control", "increment": 0.1, "longDesc": "Period of NPFG control law.", "max": 100.0, "min": 1.0, "name": "NPFG_PERIOD", "shortDesc": "NPFG period", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.5, "group": "FW NPFG Control", "increment": 0.1, "longDesc": "Multiplied by period for conservative minimum period bounding (when period lower bounding is enabled). 1.0 bounds at marginal stability.", "max": 10.0, "min": 1.0, "name": "NPFG_PERIOD_SF", "shortDesc": "Period safety factor", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "FW NPFG Control", "increment": 0.05, "longDesc": "Time constant of roll controller command / response, modeled as first order delay. Used to determine lower period bound. Setting zero disables automatic period bounding.", "max": 2.0, "min": 0.0, "name": "NPFG_ROLL_TC", "shortDesc": "Roll time constant", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.32, "group": "FW NPFG Control", "increment": 0.01, "longDesc": "Multiplied by the track error boundary to determine when the aircraft switches to the next waypoint and/or path segment. Should be less than 1.", "max": 1.0, "min": 0.1, "name": "NPFG_SW_DST_MLT", "shortDesc": "NPFG switch distance multiplier", "type": "Float"}, {"category": "Standard", "default": 1, "group": "FW NPFG Control", "name": "NPFG_TRACK_KEEP", "shortDesc": "Enable track keeping excess wind handling logic", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "FW NPFG Control", "longDesc": "Adapts period to maintain track keeping in variable winds and path curvature.", "name": "NPFG_UB_PERIOD", "shortDesc": "Enable automatic upper bound on the NPFG period", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "FW NPFG Control", "longDesc": "Disabling this parameter further disables all other airspeed incrementation options.", "name": "NPFG_WIND_REG", "shortDesc": "Enable wind excess regulation", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 0, "default": 90.0, "group": "FW Path Control", "increment": 1.0, "longDesc": "Maximum change in roll angle setpoint per second. Applied in all Auto modes, plus manual Position & Altitude modes.", "min": 0.0, "name": "FW_PN_R_SLEW_MAX", "shortDesc": "Path navigation roll slew rate limit", "type": "Float", "units": "deg/s"}, {"bitmask": [{"description": "Alternative stick configuration (height rate on throttle stick, airspeed on pitch stick)", "index": 0}, {"description": "Enable airspeed setpoint via sticks in altitude and position flight mode", "index": 1}], "category": "Standard", "default": 2, "group": "FW Path Control", "longDesc": "Applies in manual Position and Altitude flight modes.", "max": 3, "min": 0, "name": "FW_POS_STK_CONF", "shortDesc": "Custom stick configuration", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 50.0, "group": "FW Path Control", "increment": 0.5, "longDesc": "Applies in any altitude controlled flight mode.", "max": 65.0, "min": 35.0, "name": "FW_R_LIM", "shortDesc": "Maximum roll angle setpoint", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "FW Path Control", "increment": 0.5, "max": 30.0, "min": -5.0, "name": "FW_TKO_PITCH_MIN", "shortDesc": "Minimum pitch during takeoff", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 20.0, "group": "FW Performance", "increment": 0.5, "longDesc": "The maximal airspeed (calibrated airspeed) the user is able to command.", "min": 0.5, "name": "FW_AIRSPD_MAX", "shortDesc": "Maximum Airspeed (CAS)", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "FW Performance", "increment": 0.5, "longDesc": "The minimal airspeed (calibrated airspeed) the user is able to command. Further, if the airspeed falls below this value, the TECS controller will try to increase airspeed more aggressively. Has to be set according to the vehicle's stall speed (which should be set in FW_AIRSPD_STALL), with some margin between the stall speed and minimum airspeed. This value corresponds to the desired minimum speed with the default load factor (level flight, default weight), and is automatically adpated to the current load factor (calculated from roll setpoint and WEIGHT_GROSS/WEIGHT_BASE).", "min": 0.5, "name": "FW_AIRSPD_MIN", "shortDesc": "Minimum Airspeed (CAS)", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 7.0, "group": "FW Performance", "increment": 0.5, "longDesc": "The stall airspeed (calibrated airspeed) of the vehicle. It is used for airspeed sensor failure detection and for the control surface scaling airspeed limits.", "min": 0.5, "name": "FW_AIRSPD_STALL", "shortDesc": "Stall Airspeed (CAS)", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 15.0, "group": "FW Performance", "increment": 0.5, "longDesc": "The trim CAS (calibrated airspeed) of the vehicle. If an airspeed controller is active, this is the default airspeed setpoint that the controller will try to achieve. This value corresponds to the trim airspeed with the default load factor (level flight, default weight).", "min": 0.5, "name": "FW_AIRSPD_TRIM", "shortDesc": "Trim (Cruise) Airspeed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 0, "default": -1.0, "group": "FW Performance", "increment": 1.0, "longDesc": "Altitude in standard atmosphere at which the vehicle in normal configuration (WEIGHT_BASE) is still able to achieve a maximum climb rate of 0.5m/s at maximum throttle (FW_THR_MAX). Used to compensate for air density in FW_T_CLMB_MAX. Set negative to disable.", "min": -1.0, "name": "FW_SERVICE_CEIL", "shortDesc": "Service ceiling", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Performance", "increment": 0.01, "longDesc": "Required throttle (at sea level, standard atmosphere) for level flight at maximum airspeed FW_AIRSPD_MAX Set to 0 to disable mapping of airspeed to trim throttle.", "max": 1.0, "min": 0.0, "name": "FW_THR_ASPD_MAX", "shortDesc": "Throttle at max airspeed", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Performance", "increment": 0.01, "longDesc": "Required throttle (at sea level, standard atmosphere) for level flight at minimum airspeed FW_AIRSPD_MIN Set to 0 to disable mapping of airspeed to trim throttle below FW_AIRSPD_TRIM.", "max": 1.0, "min": 0.0, "name": "FW_THR_ASPD_MIN", "shortDesc": "Throttle at min airspeed", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.6, "group": "FW Performance", "increment": 0.01, "longDesc": "Required throttle (at sea level, standard atmosphere) for level flight at FW_AIRSPD_TRIM", "max": 1.0, "min": 0.0, "name": "FW_THR_TRIM", "shortDesc": "Trim throttle", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "FW Performance", "increment": 0.5, "longDesc": "This is the maximum calibrated climb rate that the aircraft can achieve with the throttle set to FW_THR_MAX and the airspeed set to the trim value. For electric aircraft make sure this number can be achieved towards the end of flight when the battery voltage has reduced.", "max": 15.0, "min": 1.0, "name": "FW_T_CLMB_MAX", "shortDesc": "Maximum climb rate", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 2.0, "group": "FW Performance", "increment": 0.5, "longDesc": "This is the minimum calibrated sink rate of the aircraft with the throttle set to THR_MIN and flown at the same airspeed as used to measure FW_T_CLMB_MAX.", "max": 5.0, "min": 1.0, "name": "FW_T_SINK_MIN", "shortDesc": "Minimum descent rate", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "FW Performance", "increment": 0.5, "longDesc": "This is the weight of the vehicle at which it's performance limits were derived. A zero or negative value disables trim throttle and minimum airspeed compensation based on weight.", "name": "WEIGHT_BASE", "shortDesc": "Vehicle base weight", "type": "Float", "units": "kg"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "FW Performance", "increment": 0.1, "longDesc": "This is the actual weight of the vehicle at any time. This value will differ from WEIGHT_BASE in case weight was added or removed from the base weight. Examples are the addition of payloads or larger batteries. A zero or negative value disables trim throttle and minimum airspeed compensation based on weight.", "name": "WEIGHT_GROSS", "shortDesc": "Vehicle gross weight", "type": "Float", "units": "kg"}, {"category": "Standard", "default": 90.0, "group": "FW Rate Control", "max": 720.0, "min": 10.0, "name": "FW_ACRO_X_MAX", "shortDesc": "Acro body roll max rate setpoint", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0, "group": "FW Rate Control", "longDesc": "If this parameter is set to 1, the yaw rate controller is enabled in Fixed-wing Acro mode. Otherwise the pilot commands directly the yaw actuator. It is disabled by default because an active yaw rate controller will fight against the natural turn coordination of the plane.", "name": "FW_ACRO_YAW_EN", "shortDesc": "Enable yaw rate controller in Acro", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 90.0, "group": "FW Rate Control", "max": 720.0, "min": 10.0, "name": "FW_ACRO_Y_MAX", "shortDesc": "Acro body pitch max rate setpoint", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 45.0, "group": "FW Rate Control", "max": 720.0, "min": 10.0, "name": "FW_ACRO_Z_MAX", "shortDesc": "Acro body yaw max rate setpoint", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 1, "group": "FW Rate Control", "longDesc": "This enables a logic that automatically adjusts the output of the rate controller to take into account the real torque produced by an aerodynamic control surface given the current deviation from the trim airspeed (FW_AIRSPD_TRIM). Enable when using aerodynamic control surfaces (e.g.: plane) Disable when using rotor wings (e.g.: autogyro)", "name": "FW_ARSP_SCALE_EN", "shortDesc": "Enable airspeed scaling", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "FW Rate Control", "longDesc": "This compensates for voltage drop of the battery over time by attempting to normalize performance across the operating range of the battery.", "name": "FW_BAT_SCALE_EN", "shortDesc": "Enable throttle scale by battery level", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "This increment is added to TRIM_PITCH when airspeed is FW_AIRSPD_MAX.", "max": 0.5, "min": -0.5, "name": "FW_DTRIM_P_VMAX", "shortDesc": "Pitch trim increment at maximum airspeed", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "This increment is added to TRIM_PITCH when airspeed is FW_AIRSPD_MIN.", "max": 0.5, "min": -0.5, "name": "FW_DTRIM_P_VMIN", "shortDesc": "Pitch trim increment at minimum airspeed", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "This increment is added to TRIM_ROLL when airspeed is FW_AIRSPD_MAX.", "max": 0.5, "min": -0.5, "name": "FW_DTRIM_R_VMAX", "shortDesc": "Roll trim increment at maximum airspeed", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "This increment is added to TRIM_ROLL when airspeed is FW_AIRSPD_MIN.", "max": 0.5, "min": -0.5, "name": "FW_DTRIM_R_VMIN", "shortDesc": "Roll trim increment at minimum airspeed", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "This increment is added to TRIM_YAW when airspeed is FW_AIRSPD_MAX.", "max": 0.5, "min": -0.5, "name": "FW_DTRIM_Y_VMAX", "shortDesc": "Yaw trim increment at maximum airspeed", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "This increment is added to TRIM_YAW when airspeed is FW_AIRSPD_MIN.", "max": 0.5, "min": -0.5, "name": "FW_DTRIM_Y_VMIN", "shortDesc": "Yaw trim increment at minimum airspeed", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "Sets a fraction of full flaps during landing. Also applies to flaperons if enabled in the mixer/allocation.", "max": 1.0, "min": 0.0, "name": "FW_FLAPS_LND_SCL", "shortDesc": "Flaps setting during landing", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "Sets a fraction of full flaps during take-off. Also applies to flaperons if enabled in the mixer/allocation.", "max": 1.0, "min": 0.0, "name": "FW_FLAPS_TO_SCL", "shortDesc": "Flaps setting during take-off", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "Scale factor applied to the desired pitch actuator command in full manual mode. This parameter allows to adjust the throws of the control surfaces.", "min": 0.0, "name": "FW_MAN_P_SC", "shortDesc": "Manual pitch scale", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "Scale factor applied to the desired roll actuator command in full manual mode. This parameter allows to adjust the throws of the control surfaces.", "max": 1.0, "min": 0.0, "name": "FW_MAN_R_SC", "shortDesc": "Manual roll scale", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "Scale factor applied to the desired yaw actuator command in full manual mode. This parameter allows to adjust the throws of the control surfaces.", "min": 0.0, "name": "FW_MAN_Y_SC", "shortDesc": "Manual yaw scale", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "FW Rate Control", "increment": 0.005, "longDesc": "Pitch rate differential gain.", "max": 10.0, "min": 0.0, "name": "FW_PR_D", "shortDesc": "Pitch rate derivative gain", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "FW Rate Control", "increment": 0.05, "longDesc": "Direct feed forward from rate setpoint to control surface output", "max": 10.0, "min": 0.0, "name": "FW_PR_FF", "shortDesc": "Pitch rate feed forward", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.1, "group": "FW Rate Control", "increment": 0.005, "max": 10.0, "min": 0.0, "name": "FW_PR_I", "shortDesc": "Pitch rate integrator gain", "type": "Float", "units": "%/rad"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.4, "group": "FW Rate Control", "increment": 0.05, "max": 1.0, "min": 0.0, "name": "FW_PR_IMAX", "shortDesc": "Pitch rate integrator limit", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.08, "group": "FW Rate Control", "increment": 0.005, "max": 10.0, "min": 0.0, "name": "FW_PR_P", "shortDesc": "Pitch rate proportional gain", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "This gain can be used to counteract the \"adverse yaw\" effect for fixed wings. When the plane enters a roll it will tend to yaw the nose out of the turn. This gain enables the use of a yaw actuator to counteract this effect.", "min": 0.0, "name": "FW_RLL_TO_YAW_FF", "shortDesc": "Roll control to yaw control feedforward gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "FW Rate Control", "increment": 0.005, "max": 10.0, "min": 0.0, "name": "FW_RR_D", "shortDesc": "Roll rate derivative gain", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "FW Rate Control", "increment": 0.05, "longDesc": "Direct feed forward from rate setpoint to control surface output.", "max": 10.0, "min": 0.0, "name": "FW_RR_FF", "shortDesc": "Roll rate feed forward", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "FW Rate Control", "increment": 0.01, "max": 10.0, "min": 0.0, "name": "FW_RR_I", "shortDesc": "Roll rate integrator gain", "type": "Float", "units": "%/rad"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "FW Rate Control", "increment": 0.05, "max": 1.0, "min": 0.0, "name": "FW_RR_IMAX", "shortDesc": "Roll integrator limit", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "FW Rate Control", "increment": 0.005, "max": 10.0, "min": 0.0, "name": "FW_RR_P", "shortDesc": "Roll rate proportional gain", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "default": 0, "group": "FW Rate Control", "longDesc": "Chose source for manual setting of spoilers in manual flight modes.", "name": "FW_SPOILERS_MAN", "shortDesc": "Spoiler input in manual flight", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Flaps channel", "value": 1}, {"description": "Aux1", "value": 2}]}, {"category": "Standard", "default": 1, "group": "FW Rate Control", "longDesc": "If set to 1, the airspeed measurement data, if valid, is used in the following controllers: - Rate controller: output scaling - Attitude controller: coordinated turn controller - Position controller: airspeed setpoint tracking, takeoff logic - VTOL: transition logic", "name": "FW_USE_AIRSPD", "shortDesc": "Use airspeed for control", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "FW Rate Control", "increment": 0.005, "max": 10.0, "min": 0.0, "name": "FW_YR_D", "shortDesc": "Yaw rate derivative gain", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "FW Rate Control", "increment": 0.05, "longDesc": "Direct feed forward from rate setpoint to control surface output", "max": 10.0, "min": 0.0, "name": "FW_YR_FF", "shortDesc": "Yaw rate feed forward", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.1, "group": "FW Rate Control", "increment": 0.5, "max": 10.0, "min": 0.0, "name": "FW_YR_I", "shortDesc": "Yaw rate integrator gain", "type": "Float", "units": "%/rad"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "FW Rate Control", "increment": 0.05, "max": 1.0, "min": 0.0, "name": "FW_YR_IMAX", "shortDesc": "Yaw rate integrator limit", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "FW Rate Control", "increment": 0.005, "max": 10.0, "min": 0.0, "name": "FW_YR_P", "shortDesc": "Yaw rate proportional gain", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "FW TECS", "increment": 0.5, "longDesc": "The controller will increase the commanded airspeed to maintain this minimum groundspeed to the next waypoint.", "max": 40.0, "min": 0.0, "name": "FW_GND_SPD_MIN", "shortDesc": "Minimum groundspeed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 30.0, "group": "FW TECS", "increment": 0.5, "longDesc": "Applies in any altitude controlled flight mode.", "max": 60.0, "min": 0.0, "name": "FW_P_LIM_MAX", "shortDesc": "Maximum pitch angle setpoint", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": -30.0, "group": "FW TECS", "increment": 0.5, "longDesc": "Applies in any altitude controlled flight mode.", "max": 0.0, "min": -60.0, "name": "FW_P_LIM_MIN", "shortDesc": "Minimum pitch angle setpoint", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW TECS", "increment": 0.01, "longDesc": "This is the minimum throttle while on the ground (\"landed\") in auto modes.", "max": 0.4, "min": 0.0, "name": "FW_THR_IDLE", "shortDesc": "Idle throttle", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "FW TECS", "increment": 0.01, "longDesc": "Applies in any altitude controlled flight mode. Should be set accordingly to achieve FW_T_CLMB_MAX.", "max": 1.0, "min": 0.0, "name": "FW_THR_MAX", "shortDesc": "Throttle limit max", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW TECS", "increment": 0.01, "longDesc": "Applies in any altitude controlled flight mode. Usually set to 0 but can be increased to prevent the motor from stopping when descending, which can increase achievable descent rates.", "max": 1.0, "min": 0.0, "name": "FW_THR_MIN", "shortDesc": "Throttle limit min", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW TECS", "increment": 0.01, "longDesc": "Maximum slew rate for the commanded throttle", "max": 1.0, "min": 0.0, "name": "FW_THR_SLEW_MAX", "shortDesc": "Throttle max slew rate", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "FW TECS", "increment": 0.1, "longDesc": "The calibrated airspeed setpoint during the takeoff climbout. If set <= 0, FW_AIRSPD_MIN will be set by default.", "min": -1.0, "name": "FW_TKO_AIRSPD", "shortDesc": "Takeoff Airspeed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 5.0, "group": "FW TECS", "increment": 0.5, "min": 2.0, "name": "FW_T_ALT_TC", "shortDesc": "Altitude error time constant", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 3.0, "group": "FW TECS", "increment": 0.01, "longDesc": "In auto modes: default climb rate output by controller to achieve altitude setpoints. In manual modes: maximum climb rate setpoint.", "max": 15.0, "min": 0.5, "name": "FW_T_CLMB_R_SP", "shortDesc": "Default target climbrate", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 0, "default": -1.0, "group": "FW TECS", "longDesc": "Minimum altitude error needed to descend with max airspeed and minimal throttle. A negative value disables fast descend.", "min": -1.0, "name": "FW_T_F_ALT_ERR", "shortDesc": "Fast descend: minimum altitude error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "FW TECS", "increment": 0.05, "max": 1.0, "min": 0.0, "name": "FW_T_HRATE_FF", "shortDesc": "Height rate feed forward", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "FW TECS", "increment": 0.05, "longDesc": "Increase it to trim out speed and height offsets faster, with the downside of possible overshoots and oscillations.", "max": 2.0, "min": 0.0, "name": "FW_T_I_GAIN_PIT", "shortDesc": "Integrator gain pitch", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "FW TECS", "increment": 0.1, "max": 2.0, "min": 0.0, "name": "FW_T_PTCH_DAMP", "shortDesc": "Pitch damping gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 15.0, "group": "FW TECS", "increment": 0.5, "longDesc": "Is used to compensate for the additional drag created by turning. Increase this gain if the aircraft initially loses energy in turns and reduce if the aircraft initially gains energy in turns.", "max": 20.0, "min": 0.0, "name": "FW_T_RLL2THR", "shortDesc": "Roll -> Throttle feedforward", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "FW TECS", "increment": 0.01, "max": 3.0, "min": 0.5, "name": "FW_T_SEB_R_FF", "shortDesc": "Specific total energy balance rate feedforward gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "FW TECS", "increment": 0.5, "max": 15.0, "min": 1.0, "name": "FW_T_SINK_MAX", "shortDesc": "Maximum descent rate", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 2.0, "group": "FW TECS", "increment": 0.01, "longDesc": "In auto modes: default sink rate output by controller to achieve altitude setpoints. In manual modes: maximum sink rate setpoint.", "max": 15.0, "min": 0.5, "name": "FW_T_SINK_R_SP", "shortDesc": "Default target sinkrate", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "FW TECS", "increment": 1.0, "longDesc": "Adjusts the amount of weighting that the pitch control applies to speed vs height errors. 0 -> control height only 2 -> control speed only (gliders)", "max": 2.0, "min": 0.0, "name": "FW_T_SPDWEIGHT", "shortDesc": "Speed <--> Altitude weight", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "FW TECS", "increment": 0.1, "longDesc": "For the airspeed filter in TECS.", "max": 10.0, "min": 0.01, "name": "FW_T_SPD_DEV_STD", "shortDesc": "Airspeed rate measurement standard deviation", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "FW TECS", "increment": 0.1, "longDesc": "This is defining the noise in the airspeed rate for the constant airspeed rate model of the TECS airspeed filter.", "max": 10.0, "min": 0.01, "name": "FW_T_SPD_PRC_STD", "shortDesc": "Process noise standard deviation for the airspeed rate", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.07, "group": "FW TECS", "increment": 0.1, "longDesc": "For the airspeed filter in TECS.", "max": 10.0, "min": 0.01, "name": "FW_T_SPD_STD", "shortDesc": "Airspeed measurement standard deviation", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.4, "group": "FW TECS", "increment": 0.01, "longDesc": "This filter is applied to the specific total energy rate used for throttle damping.", "max": 2.0, "min": 0.0, "name": "FW_T_STE_R_TC", "shortDesc": "Specific total energy rate first order filter time constant", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 5.0, "group": "FW TECS", "increment": 0.5, "min": 2.0, "name": "FW_T_TAS_TC", "shortDesc": "True airspeed error time constant", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "FW TECS", "increment": 0.01, "longDesc": "This is the damping gain for the throttle demand loop.", "max": 1.0, "min": 0.0, "name": "FW_T_THR_DAMPING", "shortDesc": "Throttle damping factor", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.02, "group": "FW TECS", "increment": 0.005, "longDesc": "Increase it to trim out speed and height offsets faster, with the downside of possible overshoots and oscillations.", "max": 1.0, "min": 0.0, "name": "FW_T_THR_INTEG", "shortDesc": "Integrator gain throttle", "type": "Float"}, {"category": "Standard", "decimalPlaces": 0, "default": -1.0, "group": "FW TECS", "increment": 1.0, "longDesc": "Height above ground threshold below which tighter altitude tracking gets enabled (see FW_LND_THRTC_SC). Below this height, TECS smoothly (1 sec / sec) transitions the altitude tracking time constant from FW_T_ALT_TC to FW_LND_THRTC_SC*FW_T_ALT_TC. -1 to disable.", "min": -1.0, "name": "FW_T_THR_LOW_HGT", "shortDesc": "Low-height threshold for tighter altitude tracking", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 7.0, "group": "FW TECS", "increment": 0.5, "longDesc": "This is the maximum vertical acceleration either up or down that the controller will use to correct speed or height errors.", "max": 10.0, "min": 1.0, "name": "FW_T_VERT_ACC", "shortDesc": "Maximum vertical acceleration", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW TECS", "increment": 0.01, "longDesc": "Multiplying this factor with the current absolute wind estimate gives the airspeed offset added to the minimum airspeed setpoint limit. This helps to make the system more robust against disturbances (turbulence) in high wind.", "min": 0.0, "name": "FW_WIND_ARSP_SC", "shortDesc": "Wind-based airspeed scaling factor", "type": "Float"}, {"category": "Standard", "default": 1, "group": "Failure Detector", "longDesc": "If enabled, failure detector will verify that for motors, a minimum amount of ESC current per throttle level is being consumed. Otherwise this indicates an motor failure.", "name": "FD_ACT_EN", "rebootRequired": true, "shortDesc": "Enable Actuator Failure check", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 2.0, "group": "Failure Detector", "increment": 1.0, "longDesc": "Motor failure triggers only below this current value", "max": 50.0, "min": 0.0, "name": "FD_ACT_MOT_C2T", "shortDesc": "Motor Failure Current/Throttle Threshold", "type": "Float", "units": "A/%"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "Failure Detector", "increment": 0.01, "longDesc": "Motor failure triggers only above this throttle value.", "max": 1.0, "min": 0.0, "name": "FD_ACT_MOT_THR", "shortDesc": "Motor Failure Throttle Threshold", "type": "Float", "units": "norm"}, {"category": "Standard", "default": 100, "group": "Failure Detector", "increment": 100, "longDesc": "Motor failure triggers only if the throttle threshold and the current to throttle threshold are violated for this time.", "max": 10000, "min": 10, "name": "FD_ACT_MOT_TOUT", "shortDesc": "Motor Failure Time Threshold", "type": "Int32", "units": "ms"}, {"category": "Standard", "default": 1, "group": "Failure Detector", "longDesc": "If enabled, failure detector will verify that all the ESCs have successfully armed when the vehicle has transitioned to the armed state. Timeout for receiving an acknowledgement from the ESCs is 0.3s, if no feedback is received the failure detector will auto disarm the vehicle.", "name": "FD_ESCS_EN", "shortDesc": "Enable checks on ESCs that report their arming state", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Failure Detector", "longDesc": "Enabled on either AUX5 or MAIN5 depending on board. External ATS is required by ASTM F3322-18.", "name": "FD_EXT_ATS_EN", "rebootRequired": true, "shortDesc": "Enable PWM input on for engaging failsafe from an external automatic trigger system (ATS)", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 1900, "group": "Failure Detector", "longDesc": "External ATS is required by ASTM F3322-18.", "name": "FD_EXT_ATS_TRIG", "shortDesc": "The PWM threshold from external automatic trigger system for engaging failsafe", "type": "Int32", "units": "us"}, {"category": "Standard", "default": 60, "group": "Failure Detector", "longDesc": "Maximum pitch angle before FailureDetector triggers the attitude_failure flag. The flag triggers flight termination (if @CBRK_FLIGHTTERM = 0), which sets outputs to their failsafe values. On takeoff the flag triggers lockdown (irrespective of @CBRK_FLIGHTTERM), which disarms motors but does not set outputs to failsafe values. Setting this parameter to 0 disables the check", "max": 180, "min": 0, "name": "FD_FAIL_P", "shortDesc": "FailureDetector Max Pitch", "type": "Int32", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "Failure Detector", "longDesc": "Seconds (decimal) that pitch has to exceed FD_FAIL_P before being considered as a failure.", "max": 5.0, "min": 0.02, "name": "FD_FAIL_P_TTRI", "shortDesc": "Pitch failure trigger time", "type": "Float", "units": "s"}, {"category": "Standard", "default": 60, "group": "Failure Detector", "longDesc": "Maximum roll angle before FailureDetector triggers the attitude_failure flag. The flag triggers flight termination (if @CBRK_FLIGHTTERM = 0), which sets outputs to their failsafe values. On takeoff the flag triggers lockdown (irrespective of @CBRK_FLIGHTTERM), which disarms motors but does not set outputs to failsafe values. Setting this parameter to 0 disables the check", "max": 180, "min": 0, "name": "FD_FAIL_R", "shortDesc": "FailureDetector Max Roll", "type": "Int32", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "Failure Detector", "longDesc": "Seconds (decimal) that roll has to exceed FD_FAIL_R before being considered as a failure.", "max": 5.0, "min": 0.02, "name": "FD_FAIL_R_TTRI", "shortDesc": "Roll failure trigger time", "type": "Float", "units": "s"}, {"category": "Standard", "default": 30, "group": "Failure Detector", "increment": 1, "longDesc": "Value at which the imbalanced propeller metric (based on horizontal and vertical acceleration variance) triggers a failure Setting this value to 0 disables the feature.", "max": 1000, "min": 0, "name": "FD_IMB_PROP_THR", "shortDesc": "Imbalanced propeller check threshold", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 1000.0, "group": "Flight Task Orbit", "increment": 0.5, "max": 10000.0, "min": 1.0, "name": "MC_ORBIT_RAD_MAX", "shortDesc": "Maximum radius of orbit", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Flight Task Orbit", "name": "MC_ORBIT_YAW_MOD", "shortDesc": "Yaw behaviour during orbit flight", "type": "Int32", "values": [{"description": "Front to Circle Center", "value": 0}, {"description": "Hold Initial Heading", "value": 1}, {"description": "Uncontrolled", "value": 2}, {"description": "Hold Front Tangent to Circle", "value": 3}, {"description": "RC Controlled", "value": 4}]}, {"category": "Standard", "default": 0, "group": "Follow target", "longDesc": "Maintain altitude or track target's altitude. When maintaining the altitude, the drone can crash into terrain when the target moves uphill. When tracking the target's altitude, the follow altitude FLW_TGT_HT should be high enough to prevent terrain collisions due to GPS inaccuracies of the target.", "name": "FLW_TGT_ALT_M", "shortDesc": "Altitude control mode", "type": "Int32", "values": [{"description": "2D Tracking: Maintain constant altitude relative to home and track XY position only", "value": 0}, {"description": "2D + Terrain: Maintain constant altitude relative to terrain below and track XY position", "value": 1}, {"description": "3D Tracking: Track target's altitude (be aware that GPS altitude bias usually makes this useless)", "value": 2}]}, {"category": "Standard", "default": 8.0, "group": "Follow target", "longDesc": "The distance in meters to follow the target at", "min": 1.0, "name": "FLW_TGT_DST", "shortDesc": "Distance to follow target from", "type": "Float", "units": "m"}, {"category": "Standard", "default": 180.0, "group": "Follow target", "longDesc": "Angle to follow the target from. 0.0 Equals straight in front of the target's course (direction of motion) and the angle increases in clockwise direction, meaning Right-side would be 90.0 degrees while Left-side is -90.0 degrees Note: When the user force sets the angle out of the min/max range, it will be wrapped (e.g. 480 -> 120) in the range to gracefully handle the out of range.", "max": 180.0, "min": -180.0, "name": "FLW_TGT_FA", "shortDesc": "Follow Angle setting in degrees", "type": "Float"}, {"category": "Standard", "default": 8.0, "group": "Follow target", "longDesc": "Following height above the target", "min": 8.0, "name": "FLW_TGT_HT", "shortDesc": "Follow target height", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Follow target", "longDesc": "This is the maximum tangential velocity the drone will circle around the target whenever an orbit angle setpoint changes. Higher value means more aggressive follow behavior.", "max": 20.0, "min": 0.0, "name": "FLW_TGT_MAX_VEL", "shortDesc": "Maximum tangential velocity setting for generating the follow orbit trajectory", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Follow target", "longDesc": "lower values increase the responsiveness to changing position, but also ignore less noise", "max": 1.0, "min": 0.0, "name": "FLW_TGT_RS", "shortDesc": "Responsiveness to target movement in Target Estimator", "type": "Float"}, {"bitmask": [{"description": "GPS (with QZSS)", "index": 0}, {"description": "SBAS", "index": 1}, {"description": "Galileo", "index": 2}, {"description": "BeiDou", "index": 3}, {"description": "GLONASS", "index": 4}, {"description": "NAVIC", "index": 5}], "category": "Standard", "default": 0, "group": "GPS", "longDesc": "This integer bitmask controls the set of GNSS systems used by the receiver. Check your receiver's documentation on how many systems are supported to be used in parallel. Currently this functionality is just implemented for u-blox receivers. When no bits are set, the receiver's default configuration should be used. Set bits true to enable: 0 : Use GPS (with QZSS) 1 : Use SBAS (multiple GPS augmentation systems) 2 : Use Galileo 3 : Use BeiDou 4 : Use GLONASS 5 : Use NAVIC", "max": 63, "min": 0, "name": "GPS_1_GNSS", "rebootRequired": true, "shortDesc": "GNSS Systems for Primary GPS (integer bitmask)", "type": "Int32"}, {"category": "Standard", "default": 1, "group": "GPS", "longDesc": "Select the GPS protocol over serial. Auto-detection will probe all protocols, and thus is a bit slower.", "max": 7, "min": 0, "name": "GPS_1_PROTOCOL", "rebootRequired": true, "shortDesc": "Protocol for Main GPS", "type": "Int32", "values": [{"description": "Auto detect", "value": 0}, {"description": "u-blox", "value": 1}, {"description": "MTK", "value": 2}, {"description": "Ashtech / Trimble", "value": 3}, {"description": "Emlid Reach", "value": 4}, {"description": "Femtomes", "value": 5}, {"description": "NMEA (generic)", "value": 6}]}, {"bitmask": [{"description": "GPS (with QZSS)", "index": 0}, {"description": "SBAS", "index": 1}, {"description": "Galileo", "index": 2}, {"description": "BeiDou", "index": 3}, {"description": "GLONASS", "index": 4}, {"description": "NAVIC", "index": 5}], "category": "Standard", "default": 0, "group": "GPS", "longDesc": "This integer bitmask controls the set of GNSS systems used by the receiver. Check your receiver's documentation on how many systems are supported to be used in parallel. Currently this functionality is just implemented for u-blox receivers. When no bits are set, the receiver's default configuration should be used. Set bits true to enable: 0 : Use GPS (with QZSS) 1 : Use SBAS (multiple GPS augmentation systems) 2 : Use Galileo 3 : Use BeiDou 4 : Use GLONASS 5 : Use NAVIC", "max": 63, "min": 0, "name": "GPS_2_GNSS", "rebootRequired": true, "shortDesc": "GNSS Systems for Secondary GPS (integer bitmask)", "type": "Int32"}, {"category": "Standard", "default": 1, "group": "GPS", "longDesc": "Select the GPS protocol over serial. Auto-detection will probe all protocols, and thus is a bit slower.", "max": 6, "min": 0, "name": "GPS_2_PROTOCOL", "rebootRequired": true, "shortDesc": "Protocol for Secondary GPS", "type": "Int32", "values": [{"description": "Auto detect", "value": 0}, {"description": "u-blox", "value": 1}, {"description": "MTK", "value": 2}, {"description": "Ashtech / Trimble", "value": 3}, {"description": "Emlid Reach", "value": 4}, {"description": "Femtomes", "value": 5}, {"description": "NMEA (generic)", "value": 6}]}, {"category": "Standard", "default": 0, "group": "GPS", "longDesc": "If this is set to 1, all GPS communication data will be published via uORB, and written to the log file as gps_dump message. If this is set to 2, the main GPS is configured to output RTCM data, which is then logged as gps_dump and can be used for PPK.", "max": 2, "min": 0, "name": "GPS_DUMP_COMM", "shortDesc": "Log GPS communication data", "type": "Int32", "values": [{"description": "Disable", "value": 0}, {"description": "Full communication", "value": 1}, {"description": "RTCM output (PPK)", "value": 2}]}, {"category": "Standard", "default": 0, "group": "GPS", "longDesc": "Enable publication of satellite info (ORB_ID(satellite_info)) if possible. Not available on MTK.", "name": "GPS_SAT_INFO", "rebootRequired": true, "shortDesc": "Enable sat info (if available)", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 230400, "group": "GPS", "longDesc": "Select a baudrate for the F9P's UART2 port. In GPS_UBX_MODE 1, 2, and 3, the F9P's UART2 port is configured to send/receive RTCM corrections. Set this to 57600 if you want to attach a telemetry radio on UART2.", "min": 0, "name": "GPS_UBX_BAUD2", "rebootRequired": true, "shortDesc": "u-blox F9P UART2 Baudrate", "type": "Int32", "units": "B/s"}, {"bitmask": [{"description": "Enable I2C input protocol UBX", "index": 0}, {"description": "Enable I2C input protocol NMEA", "index": 1}, {"description": "Enable I2C input protocol RTCM3X", "index": 2}, {"description": "Enable I2C output protocol UBX", "index": 3}, {"description": "Enable I2C output protocol NMEA", "index": 4}, {"description": "Enable I2C output protocol RTCM3X", "index": 5}], "category": "Standard", "default": 0, "group": "GPS", "max": 32, "min": 0, "name": "GPS_UBX_CFG_INTF", "rebootRequired": true, "shortDesc": "u-blox protocol configuration for interfaces", "type": "Int32"}, {"category": "Standard", "default": 7, "group": "GPS", "longDesc": "u-blox receivers support different dynamic platform models to adjust the navigation engine to the expected application environment.", "max": 9, "min": 0, "name": "GPS_UBX_DYNMODEL", "rebootRequired": true, "shortDesc": "u-blox GPS dynamic platform model", "type": "Int32", "values": [{"description": "stationary", "value": 2}, {"description": "automotive", "value": 4}, {"description": "airborne with <1g acceleration", "value": 6}, {"description": "airborne with <2g acceleration", "value": 7}, {"description": "airborne with <4g acceleration", "value": 8}]}, {"category": "Standard", "default": 0, "group": "GPS", "longDesc": "Select the u-blox configuration setup. Most setups will use the default, including RTK and dual GPS without heading. If rover has RTCM corrections from a static base (or other static correction source) coming in on UART2, then select Mode 5. The Heading mode requires 2 F9P devices to be attached. The main GPS will act as rover and output heading information, whereas the secondary will act as moving base. Modes 1 and 2 require each F9P UART1 to be connected to the Autopilot. In addition, UART2 on the F9P units are connected to each other. Modes 3 and 4 only require UART1 on each F9P connected to the Autopilot or Can Node. UART RX DMA is required. RTK is still possible with this setup.", "max": 1, "min": 0, "name": "GPS_UBX_MODE", "rebootRequired": true, "shortDesc": "u-blox GPS Mode", "type": "Int32", "values": [{"description": "Default", "value": 0}, {"description": "Heading (Rover With Moving Base UART1 Connected To Autopilot, UART2 Connected To Moving Base)", "value": 1}, {"description": "Moving Base (UART1 Connected To Autopilot, UART2 Connected To Rover)", "value": 2}, {"description": "Heading (Rover With Moving Base UART1 Connected to Autopilot Or Can Node At 921600)", "value": 3}, {"description": "Moving Base (Moving Base UART1 Connected to Autopilot Or Can Node At 921600)", "value": 4}, {"description": "Rover with Static Base on UART2 (similar to Default, except coming in on UART2)", "value": 5}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "GPS", "longDesc": "Heading offset angle for dual antenna GPS setups that support heading estimation. Set this to 0 if the antennas are parallel to the forward-facing direction of the vehicle and the rover (or Unicore primary) antenna is in front. The offset angle increases clockwise. Set this to 90 if the rover (or Unicore primary, or Septentrio Mosaic Aux) antenna is placed on the right side of the vehicle and the moving base antenna is on the left side. (Note: the Unicore primary antenna is the one connected on the right as seen from the top).", "max": 360.0, "min": 0.0, "name": "GPS_YAW_OFFSET", "rebootRequired": true, "shortDesc": "Heading/Yaw offset for dual antenna GPS", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 2, "group": "Geofence", "longDesc": "Note: Setting this value to 4 enables flight termination, which will kill the vehicle on violation of the fence.", "max": 5, "min": 0, "name": "GF_ACTION", "shortDesc": "Geofence violation action", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Warning", "value": 1}, {"description": "Hold mode", "value": 2}, {"description": "Return mode", "value": 3}, {"description": "Terminate", "value": 4}, {"description": "Land mode", "value": 5}]}, {"category": "Standard", "default": 0.0, "group": "Geofence", "increment": 1.0, "longDesc": "Maximum horizontal distance in meters the vehicle can be from Home before triggering a geofence action. Disabled if 0.", "max": 10000.0, "min": 0.0, "name": "GF_MAX_HOR_DIST", "shortDesc": "Max horizontal distance from Home", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0.0, "group": "Geofence", "increment": 1.0, "longDesc": "Maximum vertical distance in meters the vehicle can be from Home before triggering a geofence action. Disabled if 0.", "max": 10000.0, "min": 0.0, "name": "GF_MAX_VER_DIST", "shortDesc": "Max vertical distance from Home", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geofence", "longDesc": "WARNING: This experimental feature may cause flyaways. Use at your own risk. Predict the motion of the vehicle and trigger the breach if it is determined that the current trajectory would result in a breach happening before the vehicle can make evasive maneuvers. The vehicle is then re-routed to a safe hold position (stop for multirotor, loiter for fixed wing).", "name": "GF_PREDICT", "shortDesc": "[EXPERIMENTAL] Use Pre-emptive geofence triggering", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Geofence", "longDesc": "Select which position source should be used. Selecting GPS instead of global position makes sure that there is no dependence on the position estimator 0 = global position, 1 = GPS", "max": 1, "min": 0, "name": "GF_SOURCE", "shortDesc": "Geofence source", "type": "Int32", "values": [{"description": "GPOS", "value": 0}, {"description": "GPS", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "Defines which mixer implementation to use. Some are generic, while others are specifically fit to a certain vehicle with a fixed set of actuators. 'Custom' should only be used if noting else can be used.", "name": "CA_AIRFRAME", "shortDesc": "Airframe selection", "type": "Int32", "values": [{"description": "Multirotor", "value": 0}, {"description": "Fixed-wing", "value": 1}, {"description": "Standard VTOL", "value": 2}, {"description": "Tiltrotor VTOL", "value": 3}, {"description": "Tailsitter VTOL", "value": 4}, {"description": "Rover (Ackermann)", "value": 5}, {"description": "Rover (Differential)", "value": 6}, {"description": "Motors (6DOF)", "value": 7}, {"description": "Multirotor with Tilt", "value": 8}, {"description": "Custom", "value": 9}, {"description": "Helicopter (tail ESC)", "value": 10}, {"description": "Helicopter (tail Servo)", "value": 11}, {"description": "Helicopter (Coaxial)", "value": 12}, {"description": "Rover (Mecanum)", "value": 13}, {"description": "Spacecraft 2D", "value": 14}, {"description": "Spacecraft 3D", "value": 15}]}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "This is used to specify how to handle motor failures reported by failure detector.", "name": "CA_FAILURE_MODE", "shortDesc": "Motor failure handling mode", "type": "Int32", "values": [{"description": "Ignore", "value": 0}, {"description": "Remove first failed motor from effectiveness", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": -0.05, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the collective pitch at the interval position 0 for a given thrust setpoint. Use negative values if the swash plate needs to move down to provide upwards thrust.", "max": 1.0, "min": -1.0, "name": "CA_HELI_PITCH_C0", "shortDesc": "Collective pitch curve at position 0", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0725, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the collective pitch at the interval position 1 for a given thrust setpoint. Use negative values if the swash plate needs to move down to provide upwards thrust.", "max": 1.0, "min": -1.0, "name": "CA_HELI_PITCH_C1", "shortDesc": "Collective pitch curve at position 1", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.2, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the collective pitch at the interval position 2 for a given thrust setpoint. Use negative values if the swash plate needs to move down to provide upwards thrust.", "max": 1.0, "min": -1.0, "name": "CA_HELI_PITCH_C2", "shortDesc": "Collective pitch curve at position 2", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.325, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the collective pitch at the interval position 3 for a given thrust setpoint. Use negative values if the swash plate needs to move down to provide upwards thrust.", "max": 1.0, "min": -1.0, "name": "CA_HELI_PITCH_C3", "shortDesc": "Collective pitch curve at position 3", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.45, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the collective pitch at the interval position 4 for a given thrust setpoint. Use negative values if the swash plate needs to move down to provide upwards thrust.", "max": 1.0, "min": -1.0, "name": "CA_HELI_PITCH_C4", "shortDesc": "Collective pitch curve at position 4", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Same definition as the proportional gain but for integral.", "max": 10.0, "min": 0.0, "name": "CA_HELI_RPM_I", "shortDesc": "Integral gain for rpm control", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Ratio between rpm error devided by 1000 to how much normalized output gets added to correct for it. motor_command = throttle_curve + CA_HELI_RPM_P * (rpm_setpoint - rpm_measurement) / 1000", "max": 10.0, "min": 0.0, "name": "CA_HELI_RPM_P", "shortDesc": "Proportional gain for rpm control", "type": "Float"}, {"category": "Standard", "decimalPlaces": 0, "default": 1500.0, "group": "Geometry", "increment": 1.0, "longDesc": "Requires rpm feedback for the controller.", "max": 10000.0, "min": 100.0, "name": "CA_HELI_RPM_SP", "shortDesc": "Setpoint for main rotor rpm", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the output throttle at the interval position 0.", "max": 1.0, "min": 0.0, "name": "CA_HELI_THR_C0", "shortDesc": "Throttle curve at position 0", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the output throttle at the interval position 1.", "max": 1.0, "min": 0.0, "name": "CA_HELI_THR_C1", "shortDesc": "Throttle curve at position 1", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the output throttle at the interval position 2.", "max": 1.0, "min": 0.0, "name": "CA_HELI_THR_C2", "shortDesc": "Throttle curve at position 2", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the output throttle at the interval position 3.", "max": 1.0, "min": 0.0, "name": "CA_HELI_THR_C3", "shortDesc": "Throttle curve at position 3", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the output throttle at the interval position 4.", "max": 1.0, "min": 0.0, "name": "CA_HELI_THR_C4", "shortDesc": "Throttle curve at position 4", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "Default configuration is for a clockwise turning main rotor and positive thrust of the tail rotor is expected to rotate the vehicle clockwise. Set this parameter to true if the tail rotor provides thrust in counter-clockwise direction which is mostly the case when the main rotor turns counter-clockwise.", "name": "CA_HELI_YAW_CCW", "shortDesc": "Main rotor turns counter-clockwise", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "This allows to specify which collective pitch command results in the least amount of rotor drag. This is used to increase the accuracy of the yaw drag torque compensation based on collective pitch by aligning the lowest rotor drag with zero compensation. For symmetric profile blades this is the command that results in exactly 0\u00b0 collective blade angle. For lift profile blades this is typically a command resulting in slightly negative collective blade angle. tail_output += CA_HELI_YAW_CP_S * abs(collective_pitch - CA_HELI_YAW_CP_O)", "max": 2.0, "min": -2.0, "name": "CA_HELI_YAW_CP_O", "shortDesc": "Offset for yaw compensation based on collective pitch", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "This allows to add a proportional factor of the collective pitch command to the yaw command. A negative value is needed when positive thrust of the tail rotor rotates the vehicle opposite to the main rotor turn direction. tail_output += CA_HELI_YAW_CP_S * abs(collective_pitch - CA_HELI_YAW_CP_O)", "max": 2.0, "min": -2.0, "name": "CA_HELI_YAW_CP_S", "shortDesc": "Scale for yaw compensation based on collective pitch", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "This allows to add a proportional factor of the throttle command to the yaw command. A negative value is needed when positive thrust of the tail rotor rotates the vehicle opposite to the main rotor turn direction. tail_output += CA_HELI_YAW_TH_S * throttle", "max": 2.0, "min": -2.0, "name": "CA_HELI_YAW_TH_S", "shortDesc": "Scale for yaw compensation based on throttle", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Used to linearize mechanical output of swashplate servos to avoid axis coupling and binding with 4 servo redundancy. This requires a symmetric setup where the servo horn is exactly centered with a 0 command. Setting to zero disables feature.", "max": 75.0, "min": 0.0, "name": "CA_MAX_SVO_THROW", "shortDesc": "Throw angle of swashplate servo at maximum commands for linearization", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 2, "group": "Geometry", "longDesc": "Selects the algorithm and desaturation method. If set to Automatic, the selection is based on the airframe (CA_AIRFRAME).", "name": "CA_METHOD", "shortDesc": "Control allocation method", "type": "Int32", "values": [{"description": "Pseudo-inverse with output clipping", "value": 0}, {"description": "Pseudo-inverse with sequential desaturation technique", "value": 1}, {"description": "Automatic", "value": 2}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R0_SLEW", "shortDesc": "Motor 0 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R10_SLEW", "shortDesc": "Motor 10 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R11_SLEW", "shortDesc": "Motor 11 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R1_SLEW", "shortDesc": "Motor 1 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R2_SLEW", "shortDesc": "Motor 2 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R3_SLEW", "shortDesc": "Motor 3 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R4_SLEW", "shortDesc": "Motor 4 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R5_SLEW", "shortDesc": "Motor 5 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R6_SLEW", "shortDesc": "Motor 6 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R7_SLEW", "shortDesc": "Motor 7 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R8_SLEW", "shortDesc": "Motor 8 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R9_SLEW", "shortDesc": "Motor 9 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR0_AX", "shortDesc": "Axis of rotor 0 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR0_AY", "shortDesc": "Axis of rotor 0 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR0_AZ", "shortDesc": "Axis of rotor 0 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR0_CT", "shortDesc": "Thrust coefficient of rotor 0", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR0_KM", "shortDesc": "Moment coefficient of rotor 0", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR0_PX", "shortDesc": "Position of rotor 0 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR0_PY", "shortDesc": "Position of rotor 0 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR0_PZ", "shortDesc": "Position of rotor 0 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR0_TILT", "shortDesc": "Rotor 0 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR10_AX", "shortDesc": "Axis of rotor 10 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR10_AY", "shortDesc": "Axis of rotor 10 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR10_AZ", "shortDesc": "Axis of rotor 10 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR10_CT", "shortDesc": "Thrust coefficient of rotor 10", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR10_KM", "shortDesc": "Moment coefficient of rotor 10", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR10_PX", "shortDesc": "Position of rotor 10 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR10_PY", "shortDesc": "Position of rotor 10 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR10_PZ", "shortDesc": "Position of rotor 10 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR10_TILT", "shortDesc": "Rotor 10 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR11_AX", "shortDesc": "Axis of rotor 11 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR11_AY", "shortDesc": "Axis of rotor 11 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR11_AZ", "shortDesc": "Axis of rotor 11 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR11_CT", "shortDesc": "Thrust coefficient of rotor 11", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR11_KM", "shortDesc": "Moment coefficient of rotor 11", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR11_PX", "shortDesc": "Position of rotor 11 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR11_PY", "shortDesc": "Position of rotor 11 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR11_PZ", "shortDesc": "Position of rotor 11 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR11_TILT", "shortDesc": "Rotor 11 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR1_AX", "shortDesc": "Axis of rotor 1 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR1_AY", "shortDesc": "Axis of rotor 1 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR1_AZ", "shortDesc": "Axis of rotor 1 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR1_CT", "shortDesc": "Thrust coefficient of rotor 1", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR1_KM", "shortDesc": "Moment coefficient of rotor 1", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR1_PX", "shortDesc": "Position of rotor 1 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR1_PY", "shortDesc": "Position of rotor 1 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR1_PZ", "shortDesc": "Position of rotor 1 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR1_TILT", "shortDesc": "Rotor 1 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR2_AX", "shortDesc": "Axis of rotor 2 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR2_AY", "shortDesc": "Axis of rotor 2 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR2_AZ", "shortDesc": "Axis of rotor 2 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR2_CT", "shortDesc": "Thrust coefficient of rotor 2", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR2_KM", "shortDesc": "Moment coefficient of rotor 2", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR2_PX", "shortDesc": "Position of rotor 2 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR2_PY", "shortDesc": "Position of rotor 2 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR2_PZ", "shortDesc": "Position of rotor 2 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR2_TILT", "shortDesc": "Rotor 2 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR3_AX", "shortDesc": "Axis of rotor 3 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR3_AY", "shortDesc": "Axis of rotor 3 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR3_AZ", "shortDesc": "Axis of rotor 3 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR3_CT", "shortDesc": "Thrust coefficient of rotor 3", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR3_KM", "shortDesc": "Moment coefficient of rotor 3", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR3_PX", "shortDesc": "Position of rotor 3 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR3_PY", "shortDesc": "Position of rotor 3 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR3_PZ", "shortDesc": "Position of rotor 3 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR3_TILT", "shortDesc": "Rotor 3 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR4_AX", "shortDesc": "Axis of rotor 4 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR4_AY", "shortDesc": "Axis of rotor 4 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR4_AZ", "shortDesc": "Axis of rotor 4 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR4_CT", "shortDesc": "Thrust coefficient of rotor 4", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR4_KM", "shortDesc": "Moment coefficient of rotor 4", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR4_PX", "shortDesc": "Position of rotor 4 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR4_PY", "shortDesc": "Position of rotor 4 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR4_PZ", "shortDesc": "Position of rotor 4 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR4_TILT", "shortDesc": "Rotor 4 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR5_AX", "shortDesc": "Axis of rotor 5 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR5_AY", "shortDesc": "Axis of rotor 5 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR5_AZ", "shortDesc": "Axis of rotor 5 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR5_CT", "shortDesc": "Thrust coefficient of rotor 5", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR5_KM", "shortDesc": "Moment coefficient of rotor 5", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR5_PX", "shortDesc": "Position of rotor 5 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR5_PY", "shortDesc": "Position of rotor 5 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR5_PZ", "shortDesc": "Position of rotor 5 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR5_TILT", "shortDesc": "Rotor 5 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR6_AX", "shortDesc": "Axis of rotor 6 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR6_AY", "shortDesc": "Axis of rotor 6 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR6_AZ", "shortDesc": "Axis of rotor 6 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR6_CT", "shortDesc": "Thrust coefficient of rotor 6", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR6_KM", "shortDesc": "Moment coefficient of rotor 6", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR6_PX", "shortDesc": "Position of rotor 6 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR6_PY", "shortDesc": "Position of rotor 6 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR6_PZ", "shortDesc": "Position of rotor 6 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR6_TILT", "shortDesc": "Rotor 6 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR7_AX", "shortDesc": "Axis of rotor 7 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR7_AY", "shortDesc": "Axis of rotor 7 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR7_AZ", "shortDesc": "Axis of rotor 7 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR7_CT", "shortDesc": "Thrust coefficient of rotor 7", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR7_KM", "shortDesc": "Moment coefficient of rotor 7", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR7_PX", "shortDesc": "Position of rotor 7 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR7_PY", "shortDesc": "Position of rotor 7 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR7_PZ", "shortDesc": "Position of rotor 7 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR7_TILT", "shortDesc": "Rotor 7 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR8_AX", "shortDesc": "Axis of rotor 8 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR8_AY", "shortDesc": "Axis of rotor 8 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR8_AZ", "shortDesc": "Axis of rotor 8 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR8_CT", "shortDesc": "Thrust coefficient of rotor 8", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR8_KM", "shortDesc": "Moment coefficient of rotor 8", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR8_PX", "shortDesc": "Position of rotor 8 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR8_PY", "shortDesc": "Position of rotor 8 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR8_PZ", "shortDesc": "Position of rotor 8 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR8_TILT", "shortDesc": "Rotor 8 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR9_AX", "shortDesc": "Axis of rotor 9 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR9_AY", "shortDesc": "Axis of rotor 9 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR9_AZ", "shortDesc": "Axis of rotor 9 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR9_CT", "shortDesc": "Thrust coefficient of rotor 9", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR9_KM", "shortDesc": "Moment coefficient of rotor 9", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR9_PX", "shortDesc": "Position of rotor 9 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR9_PY", "shortDesc": "Position of rotor 9 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR9_PZ", "shortDesc": "Position of rotor 9 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR9_TILT", "shortDesc": "Rotor 9 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_ROTOR_COUNT", "shortDesc": "Total number of rotors", "type": "Int32", "values": [{"description": "0", "value": 0}, {"description": "1", "value": 1}, {"description": "2", "value": 2}, {"description": "3", "value": 3}, {"description": "4", "value": 4}, {"description": "5", "value": 5}, {"description": "6", "value": 6}, {"description": "7", "value": 7}, {"description": "8", "value": 8}, {"description": "9", "value": 9}, {"description": "10", "value": 10}, {"description": "11", "value": 11}, {"description": "12", "value": 12}]}, {"bitmask": [{"description": "Motor 1", "index": 0}, {"description": "Motor 2", "index": 1}, {"description": "Motor 3", "index": 2}, {"description": "Motor 4", "index": 3}, {"description": "Motor 5", "index": 4}, {"description": "Motor 6", "index": 5}, {"description": "Motor 7", "index": 6}, {"description": "Motor 8", "index": 7}, {"description": "Motor 9", "index": 8}, {"description": "Motor 10", "index": 9}, {"description": "Motor 11", "index": 10}, {"description": "Motor 12", "index": 11}], "category": "Standard", "default": 0, "group": "Geometry", "longDesc": "Configure motors to be bidirectional/reversible. Note that the output driver needs to support this as well.", "max": 4095, "min": 0, "name": "CA_R_REV", "shortDesc": "Bidirectional/Reversible motors", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 0, "default": 0.0, "group": "Geometry", "increment": 10.0, "longDesc": "The angle is measured clockwise (as seen from top), with 0 pointing forwards (X axis).", "max": 360.0, "min": 0.0, "name": "CA_SP0_ANG0", "shortDesc": "Angle for swash plate servo 0", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 0, "default": 140.0, "group": "Geometry", "increment": 10.0, "longDesc": "The angle is measured clockwise (as seen from top), with 0 pointing forwards (X axis).", "max": 360.0, "min": 0.0, "name": "CA_SP0_ANG1", "shortDesc": "Angle for swash plate servo 1", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 0, "default": 220.0, "group": "Geometry", "increment": 10.0, "longDesc": "The angle is measured clockwise (as seen from top), with 0 pointing forwards (X axis).", "max": 360.0, "min": 0.0, "name": "CA_SP0_ANG2", "shortDesc": "Angle for swash plate servo 2", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 0, "default": 0.0, "group": "Geometry", "increment": 10.0, "longDesc": "The angle is measured clockwise (as seen from top), with 0 pointing forwards (X axis).", "max": 360.0, "min": 0.0, "name": "CA_SP0_ANG3", "shortDesc": "Angle for swash plate servo 3", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Geometry", "increment": 0.1, "longDesc": "This is relative to the other arm lengths.", "max": 10.0, "min": 0.0, "name": "CA_SP0_ARM_L0", "shortDesc": "Arm length for swash plate servo 0", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Geometry", "increment": 0.1, "longDesc": "This is relative to the other arm lengths.", "max": 10.0, "min": 0.0, "name": "CA_SP0_ARM_L1", "shortDesc": "Arm length for swash plate servo 1", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Geometry", "increment": 0.1, "longDesc": "This is relative to the other arm lengths.", "max": 10.0, "min": 0.0, "name": "CA_SP0_ARM_L2", "shortDesc": "Arm length for swash plate servo 2", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Geometry", "increment": 0.1, "longDesc": "This is relative to the other arm lengths.", "max": 10.0, "min": 0.0, "name": "CA_SP0_ARM_L3", "shortDesc": "Arm length for swash plate servo 3", "type": "Float"}, {"category": "Standard", "default": 3, "group": "Geometry", "name": "CA_SP0_COUNT", "shortDesc": "Number of swash plates servos", "type": "Int32", "values": [{"description": "2", "value": 2}, {"description": "3", "value": 3}, {"description": "4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.05, "longDesc": "Forces the servo output signal to take at least the configured time (in seconds) to traverse its full range [-100%, 100%]. Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_SV0_SLEW", "shortDesc": "Servo 0 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.05, "longDesc": "Forces the servo output signal to take at least the configured time (in seconds) to traverse its full range [-100%, 100%]. Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_SV1_SLEW", "shortDesc": "Servo 1 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.05, "longDesc": "Forces the servo output signal to take at least the configured time (in seconds) to traverse its full range [-100%, 100%]. Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_SV2_SLEW", "shortDesc": "Servo 2 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.05, "longDesc": "Forces the servo output signal to take at least the configured time (in seconds) to traverse its full range [-100%, 100%]. Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_SV3_SLEW", "shortDesc": "Servo 3 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.05, "longDesc": "Forces the servo output signal to take at least the configured time (in seconds) to traverse its full range [-100%, 100%]. Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_SV4_SLEW", "shortDesc": "Servo 4 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.05, "longDesc": "Forces the servo output signal to take at least the configured time (in seconds) to traverse its full range [-100%, 100%]. Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_SV5_SLEW", "shortDesc": "Servo 5 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.05, "longDesc": "Forces the servo output signal to take at least the configured time (in seconds) to traverse its full range [-100%, 100%]. Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_SV6_SLEW", "shortDesc": "Servo 6 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.05, "longDesc": "Forces the servo output signal to take at least the configured time (in seconds) to traverse its full range [-100%, 100%]. Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_SV7_SLEW", "shortDesc": "Servo 7 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS0_FLAP", "shortDesc": "Control Surface 0 configuration as flap", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS0_SPOIL", "shortDesc": "Control Surface 0 configuration as spoiler", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "longDesc": "Can be used to add an offset to the servo control.", "max": 1.0, "min": -1.0, "name": "CA_SV_CS0_TRIM", "shortDesc": "Control Surface 0 trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS0_TRQ_P", "shortDesc": "Control Surface 0 pitch torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS0_TRQ_R", "shortDesc": "Control Surface 0 roll torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS0_TRQ_Y", "shortDesc": "Control Surface 0 yaw torque scaling", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_CS0_TYPE", "shortDesc": "Control Surface 0 type", "type": "Int32", "values": [{"description": "(Not set)", "value": 0}, {"description": "Left Aileron", "value": 1}, {"description": "Right Aileron", "value": 2}, {"description": "Elevator", "value": 3}, {"description": "Rudder", "value": 4}, {"description": "Left Elevon", "value": 5}, {"description": "Right Elevon", "value": 6}, {"description": "Left V-Tail", "value": 7}, {"description": "Right V-Tail", "value": 8}, {"description": "Left Flap", "value": 9}, {"description": "Right Flap", "value": 10}, {"description": "Airbrake", "value": 11}, {"description": "Custom", "value": 12}, {"description": "Left A-tail", "value": 13}, {"description": "Right A-tail", "value": 14}, {"description": "Single Channel Aileron", "value": 15}, {"description": "Steering Wheel", "value": 16}, {"description": "Left Spoiler", "value": 17}, {"description": "Right Spoiler", "value": 18}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS1_FLAP", "shortDesc": "Control Surface 1 configuration as flap", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS1_SPOIL", "shortDesc": "Control Surface 1 configuration as spoiler", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "longDesc": "Can be used to add an offset to the servo control.", "max": 1.0, "min": -1.0, "name": "CA_SV_CS1_TRIM", "shortDesc": "Control Surface 1 trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS1_TRQ_P", "shortDesc": "Control Surface 1 pitch torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS1_TRQ_R", "shortDesc": "Control Surface 1 roll torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS1_TRQ_Y", "shortDesc": "Control Surface 1 yaw torque scaling", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_CS1_TYPE", "shortDesc": "Control Surface 1 type", "type": "Int32", "values": [{"description": "(Not set)", "value": 0}, {"description": "Left Aileron", "value": 1}, {"description": "Right Aileron", "value": 2}, {"description": "Elevator", "value": 3}, {"description": "Rudder", "value": 4}, {"description": "Left Elevon", "value": 5}, {"description": "Right Elevon", "value": 6}, {"description": "Left V-Tail", "value": 7}, {"description": "Right V-Tail", "value": 8}, {"description": "Left Flap", "value": 9}, {"description": "Right Flap", "value": 10}, {"description": "Airbrake", "value": 11}, {"description": "Custom", "value": 12}, {"description": "Left A-tail", "value": 13}, {"description": "Right A-tail", "value": 14}, {"description": "Single Channel Aileron", "value": 15}, {"description": "Steering Wheel", "value": 16}, {"description": "Left Spoiler", "value": 17}, {"description": "Right Spoiler", "value": 18}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS2_FLAP", "shortDesc": "Control Surface 2 configuration as flap", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS2_SPOIL", "shortDesc": "Control Surface 2 configuration as spoiler", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "longDesc": "Can be used to add an offset to the servo control.", "max": 1.0, "min": -1.0, "name": "CA_SV_CS2_TRIM", "shortDesc": "Control Surface 2 trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS2_TRQ_P", "shortDesc": "Control Surface 2 pitch torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS2_TRQ_R", "shortDesc": "Control Surface 2 roll torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS2_TRQ_Y", "shortDesc": "Control Surface 2 yaw torque scaling", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_CS2_TYPE", "shortDesc": "Control Surface 2 type", "type": "Int32", "values": [{"description": "(Not set)", "value": 0}, {"description": "Left Aileron", "value": 1}, {"description": "Right Aileron", "value": 2}, {"description": "Elevator", "value": 3}, {"description": "Rudder", "value": 4}, {"description": "Left Elevon", "value": 5}, {"description": "Right Elevon", "value": 6}, {"description": "Left V-Tail", "value": 7}, {"description": "Right V-Tail", "value": 8}, {"description": "Left Flap", "value": 9}, {"description": "Right Flap", "value": 10}, {"description": "Airbrake", "value": 11}, {"description": "Custom", "value": 12}, {"description": "Left A-tail", "value": 13}, {"description": "Right A-tail", "value": 14}, {"description": "Single Channel Aileron", "value": 15}, {"description": "Steering Wheel", "value": 16}, {"description": "Left Spoiler", "value": 17}, {"description": "Right Spoiler", "value": 18}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS3_FLAP", "shortDesc": "Control Surface 3 configuration as flap", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS3_SPOIL", "shortDesc": "Control Surface 3 configuration as spoiler", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "longDesc": "Can be used to add an offset to the servo control.", "max": 1.0, "min": -1.0, "name": "CA_SV_CS3_TRIM", "shortDesc": "Control Surface 3 trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS3_TRQ_P", "shortDesc": "Control Surface 3 pitch torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS3_TRQ_R", "shortDesc": "Control Surface 3 roll torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS3_TRQ_Y", "shortDesc": "Control Surface 3 yaw torque scaling", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_CS3_TYPE", "shortDesc": "Control Surface 3 type", "type": "Int32", "values": [{"description": "(Not set)", "value": 0}, {"description": "Left Aileron", "value": 1}, {"description": "Right Aileron", "value": 2}, {"description": "Elevator", "value": 3}, {"description": "Rudder", "value": 4}, {"description": "Left Elevon", "value": 5}, {"description": "Right Elevon", "value": 6}, {"description": "Left V-Tail", "value": 7}, {"description": "Right V-Tail", "value": 8}, {"description": "Left Flap", "value": 9}, {"description": "Right Flap", "value": 10}, {"description": "Airbrake", "value": 11}, {"description": "Custom", "value": 12}, {"description": "Left A-tail", "value": 13}, {"description": "Right A-tail", "value": 14}, {"description": "Single Channel Aileron", "value": 15}, {"description": "Steering Wheel", "value": 16}, {"description": "Left Spoiler", "value": 17}, {"description": "Right Spoiler", "value": 18}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS4_FLAP", "shortDesc": "Control Surface 4 configuration as flap", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS4_SPOIL", "shortDesc": "Control Surface 4 configuration as spoiler", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "longDesc": "Can be used to add an offset to the servo control.", "max": 1.0, "min": -1.0, "name": "CA_SV_CS4_TRIM", "shortDesc": "Control Surface 4 trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS4_TRQ_P", "shortDesc": "Control Surface 4 pitch torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS4_TRQ_R", "shortDesc": "Control Surface 4 roll torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS4_TRQ_Y", "shortDesc": "Control Surface 4 yaw torque scaling", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_CS4_TYPE", "shortDesc": "Control Surface 4 type", "type": "Int32", "values": [{"description": "(Not set)", "value": 0}, {"description": "Left Aileron", "value": 1}, {"description": "Right Aileron", "value": 2}, {"description": "Elevator", "value": 3}, {"description": "Rudder", "value": 4}, {"description": "Left Elevon", "value": 5}, {"description": "Right Elevon", "value": 6}, {"description": "Left V-Tail", "value": 7}, {"description": "Right V-Tail", "value": 8}, {"description": "Left Flap", "value": 9}, {"description": "Right Flap", "value": 10}, {"description": "Airbrake", "value": 11}, {"description": "Custom", "value": 12}, {"description": "Left A-tail", "value": 13}, {"description": "Right A-tail", "value": 14}, {"description": "Single Channel Aileron", "value": 15}, {"description": "Steering Wheel", "value": 16}, {"description": "Left Spoiler", "value": 17}, {"description": "Right Spoiler", "value": 18}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS5_FLAP", "shortDesc": "Control Surface 5 configuration as flap", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS5_SPOIL", "shortDesc": "Control Surface 5 configuration as spoiler", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "longDesc": "Can be used to add an offset to the servo control.", "max": 1.0, "min": -1.0, "name": "CA_SV_CS5_TRIM", "shortDesc": "Control Surface 5 trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS5_TRQ_P", "shortDesc": "Control Surface 5 pitch torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS5_TRQ_R", "shortDesc": "Control Surface 5 roll torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS5_TRQ_Y", "shortDesc": "Control Surface 5 yaw torque scaling", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_CS5_TYPE", "shortDesc": "Control Surface 5 type", "type": "Int32", "values": [{"description": "(Not set)", "value": 0}, {"description": "Left Aileron", "value": 1}, {"description": "Right Aileron", "value": 2}, {"description": "Elevator", "value": 3}, {"description": "Rudder", "value": 4}, {"description": "Left Elevon", "value": 5}, {"description": "Right Elevon", "value": 6}, {"description": "Left V-Tail", "value": 7}, {"description": "Right V-Tail", "value": 8}, {"description": "Left Flap", "value": 9}, {"description": "Right Flap", "value": 10}, {"description": "Airbrake", "value": 11}, {"description": "Custom", "value": 12}, {"description": "Left A-tail", "value": 13}, {"description": "Right A-tail", "value": 14}, {"description": "Single Channel Aileron", "value": 15}, {"description": "Steering Wheel", "value": 16}, {"description": "Left Spoiler", "value": 17}, {"description": "Right Spoiler", "value": 18}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS6_FLAP", "shortDesc": "Control Surface 6 configuration as flap", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS6_SPOIL", "shortDesc": "Control Surface 6 configuration as spoiler", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "longDesc": "Can be used to add an offset to the servo control.", "max": 1.0, "min": -1.0, "name": "CA_SV_CS6_TRIM", "shortDesc": "Control Surface 6 trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS6_TRQ_P", "shortDesc": "Control Surface 6 pitch torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS6_TRQ_R", "shortDesc": "Control Surface 6 roll torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS6_TRQ_Y", "shortDesc": "Control Surface 6 yaw torque scaling", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_CS6_TYPE", "shortDesc": "Control Surface 6 type", "type": "Int32", "values": [{"description": "(Not set)", "value": 0}, {"description": "Left Aileron", "value": 1}, {"description": "Right Aileron", "value": 2}, {"description": "Elevator", "value": 3}, {"description": "Rudder", "value": 4}, {"description": "Left Elevon", "value": 5}, {"description": "Right Elevon", "value": 6}, {"description": "Left V-Tail", "value": 7}, {"description": "Right V-Tail", "value": 8}, {"description": "Left Flap", "value": 9}, {"description": "Right Flap", "value": 10}, {"description": "Airbrake", "value": 11}, {"description": "Custom", "value": 12}, {"description": "Left A-tail", "value": 13}, {"description": "Right A-tail", "value": 14}, {"description": "Single Channel Aileron", "value": 15}, {"description": "Steering Wheel", "value": 16}, {"description": "Left Spoiler", "value": 17}, {"description": "Right Spoiler", "value": 18}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS7_FLAP", "shortDesc": "Control Surface 7 configuration as flap", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS7_SPOIL", "shortDesc": "Control Surface 7 configuration as spoiler", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "longDesc": "Can be used to add an offset to the servo control.", "max": 1.0, "min": -1.0, "name": "CA_SV_CS7_TRIM", "shortDesc": "Control Surface 7 trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS7_TRQ_P", "shortDesc": "Control Surface 7 pitch torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS7_TRQ_R", "shortDesc": "Control Surface 7 roll torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS7_TRQ_Y", "shortDesc": "Control Surface 7 yaw torque scaling", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_CS7_TYPE", "shortDesc": "Control Surface 7 type", "type": "Int32", "values": [{"description": "(Not set)", "value": 0}, {"description": "Left Aileron", "value": 1}, {"description": "Right Aileron", "value": 2}, {"description": "Elevator", "value": 3}, {"description": "Rudder", "value": 4}, {"description": "Left Elevon", "value": 5}, {"description": "Right Elevon", "value": 6}, {"description": "Left V-Tail", "value": 7}, {"description": "Right V-Tail", "value": 8}, {"description": "Left Flap", "value": 9}, {"description": "Right Flap", "value": 10}, {"description": "Airbrake", "value": 11}, {"description": "Custom", "value": 12}, {"description": "Left A-tail", "value": 13}, {"description": "Right A-tail", "value": 14}, {"description": "Single Channel Aileron", "value": 15}, {"description": "Steering Wheel", "value": 16}, {"description": "Left Spoiler", "value": 17}, {"description": "Right Spoiler", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_CS_COUNT", "shortDesc": "Total number of Control Surfaces", "type": "Int32", "values": [{"description": "0", "value": 0}, {"description": "1", "value": 1}, {"description": "2", "value": 2}, {"description": "3", "value": 3}, {"description": "4", "value": 4}, {"description": "5", "value": 5}, {"description": "6", "value": 6}, {"description": "7", "value": 7}, {"description": "8", "value": 8}]}, {"category": "Standard", "default": 1, "group": "Geometry", "longDesc": "Define if this servo is used for additional control.", "name": "CA_SV_TL0_CT", "shortDesc": "Tilt 0 is used for control", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Yaw", "value": 1}, {"description": "Pitch", "value": 2}, {"description": "Yaw and Pitch", "value": 3}]}, {"category": "Standard", "decimalPlaces": 0, "default": 90.0, "group": "Geometry", "longDesc": "Defines the tilt angle when the servo is at the maximum. An angle of zero means upwards.", "max": 90.0, "min": -90.0, "name": "CA_SV_TL0_MAXA", "shortDesc": "Tilt Servo 0 Tilt Angle at Maximum", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 0, "default": 0.0, "group": "Geometry", "longDesc": "Defines the tilt angle when the servo is at the minimum. An angle of zero means upwards.", "max": 90.0, "min": -90.0, "name": "CA_SV_TL0_MINA", "shortDesc": "Tilt Servo 0 Tilt Angle at Minimum", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "Defines the direction the servo tilts towards when moving towards the maximum tilt angle. For example if the minimum tilt angle is -90, the maximum 90, and the direction 'Towards Front', the motor axis aligns with the XZ-plane, points towards -X at the minimum and +X at the maximum tilt.", "max": 359, "min": 0, "name": "CA_SV_TL0_TD", "shortDesc": "Tilt Servo 0 Tilt Direction", "type": "Int32", "values": [{"description": "Towards Front", "value": 0}, {"description": "Towards Right", "value": 90}]}, {"category": "Standard", "default": 1, "group": "Geometry", "longDesc": "Define if this servo is used for additional control.", "name": "CA_SV_TL1_CT", "shortDesc": "Tilt 1 is used for control", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Yaw", "value": 1}, {"description": "Pitch", "value": 2}, {"description": "Yaw and Pitch", "value": 3}]}, {"category": "Standard", "decimalPlaces": 0, "default": 90.0, "group": "Geometry", "longDesc": "Defines the tilt angle when the servo is at the maximum. An angle of zero means upwards.", "max": 90.0, "min": -90.0, "name": "CA_SV_TL1_MAXA", "shortDesc": "Tilt Servo 1 Tilt Angle at Maximum", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 0, "default": 0.0, "group": "Geometry", "longDesc": "Defines the tilt angle when the servo is at the minimum. An angle of zero means upwards.", "max": 90.0, "min": -90.0, "name": "CA_SV_TL1_MINA", "shortDesc": "Tilt Servo 1 Tilt Angle at Minimum", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "Defines the direction the servo tilts towards when moving towards the maximum tilt angle. For example if the minimum tilt angle is -90, the maximum 90, and the direction 'Towards Front', the motor axis aligns with the XZ-plane, points towards -X at the minimum and +X at the maximum tilt.", "max": 359, "min": 0, "name": "CA_SV_TL1_TD", "shortDesc": "Tilt Servo 1 Tilt Direction", "type": "Int32", "values": [{"description": "Towards Front", "value": 0}, {"description": "Towards Right", "value": 90}]}, {"category": "Standard", "default": 1, "group": "Geometry", "longDesc": "Define if this servo is used for additional control.", "name": "CA_SV_TL2_CT", "shortDesc": "Tilt 2 is used for control", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Yaw", "value": 1}, {"description": "Pitch", "value": 2}, {"description": "Yaw and Pitch", "value": 3}]}, {"category": "Standard", "decimalPlaces": 0, "default": 90.0, "group": "Geometry", "longDesc": "Defines the tilt angle when the servo is at the maximum. An angle of zero means upwards.", "max": 90.0, "min": -90.0, "name": "CA_SV_TL2_MAXA", "shortDesc": "Tilt Servo 2 Tilt Angle at Maximum", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 0, "default": 0.0, "group": "Geometry", "longDesc": "Defines the tilt angle when the servo is at the minimum. An angle of zero means upwards.", "max": 90.0, "min": -90.0, "name": "CA_SV_TL2_MINA", "shortDesc": "Tilt Servo 2 Tilt Angle at Minimum", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "Defines the direction the servo tilts towards when moving towards the maximum tilt angle. For example if the minimum tilt angle is -90, the maximum 90, and the direction 'Towards Front', the motor axis aligns with the XZ-plane, points towards -X at the minimum and +X at the maximum tilt.", "max": 359, "min": 0, "name": "CA_SV_TL2_TD", "shortDesc": "Tilt Servo 2 Tilt Direction", "type": "Int32", "values": [{"description": "Towards Front", "value": 0}, {"description": "Towards Right", "value": 90}]}, {"category": "Standard", "default": 1, "group": "Geometry", "longDesc": "Define if this servo is used for additional control.", "name": "CA_SV_TL3_CT", "shortDesc": "Tilt 3 is used for control", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Yaw", "value": 1}, {"description": "Pitch", "value": 2}, {"description": "Yaw and Pitch", "value": 3}]}, {"category": "Standard", "decimalPlaces": 0, "default": 90.0, "group": "Geometry", "longDesc": "Defines the tilt angle when the servo is at the maximum. An angle of zero means upwards.", "max": 90.0, "min": -90.0, "name": "CA_SV_TL3_MAXA", "shortDesc": "Tilt Servo 3 Tilt Angle at Maximum", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 0, "default": 0.0, "group": "Geometry", "longDesc": "Defines the tilt angle when the servo is at the minimum. An angle of zero means upwards.", "max": 90.0, "min": -90.0, "name": "CA_SV_TL3_MINA", "shortDesc": "Tilt Servo 3 Tilt Angle at Minimum", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "Defines the direction the servo tilts towards when moving towards the maximum tilt angle. For example if the minimum tilt angle is -90, the maximum 90, and the direction 'Towards Front', the motor axis aligns with the XZ-plane, points towards -X at the minimum and +X at the maximum tilt.", "max": 359, "min": 0, "name": "CA_SV_TL3_TD", "shortDesc": "Tilt Servo 3 Tilt Direction", "type": "Int32", "values": [{"description": "Towards Front", "value": 0}, {"description": "Towards Right", "value": 90}]}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_TL_COUNT", "shortDesc": "Total number of Tilt Servos", "type": "Int32", "values": [{"description": "0", "value": 0}, {"description": "1", "value": 1}, {"description": "2", "value": 2}, {"description": "3", "value": 3}, {"description": "4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "Hover Thrust Estimator", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "max": 10.0, "min": 1.0, "name": "HTE_ACC_GATE", "shortDesc": "Gate size for acceleration fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.1, "group": "Hover Thrust Estimator", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "max": 1.0, "min": 0.0, "name": "HTE_HT_ERR_INIT", "shortDesc": "1-sigma initial hover thrust uncertainty", "type": "Float", "units": "normalized_thrust"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.0036, "group": "Hover Thrust Estimator", "longDesc": "Reduce to make the hover thrust estimate more stable, increase if the real hover thrust is expected to change quickly over time.", "max": 1.0, "min": 0.0001, "name": "HTE_HT_NOISE", "shortDesc": "Hover thrust process noise", "type": "Float", "units": "normalized_thrust/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "Hover Thrust Estimator", "longDesc": "Defines the range of the hover thrust estimate around MPC_THR_HOVER. A value of 0.2 with MPC_THR_HOVER at 0.5 results in a range of [0.3, 0.7]. Set to a large value if the vehicle operates in varying physical conditions that affect the required hover thrust strongly (e.g. differently sized payloads).", "max": 0.4, "min": 0.01, "name": "HTE_THR_RANGE", "shortDesc": "Max deviation from MPC_THR_HOVER", "type": "Float", "units": "normalized_thrust"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Hover Thrust Estimator", "longDesc": "Above this speed, the measurement noise is linearly increased to reduce the sensitivity of the estimator from biased measurement. Set to a low value on vehicles with large lifting surfaces.", "max": 20.0, "min": 1.0, "name": "HTE_VXY_THR", "shortDesc": "Horizontal velocity threshold for sensitivity reduction", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 2.0, "group": "Hover Thrust Estimator", "longDesc": "Above this speed, the measurement noise is linearly increased to reduce the sensitivity of the estimator from biased measurement. Set to a low value on vehicles affected by air drag when climbing or descending.", "max": 10.0, "min": 1.0, "name": "HTE_VZ_THR", "shortDesc": "Vertical velocity threshold for sensitivity reduction", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.0, "group": "Land Detector", "longDesc": "Maximum airspeed allowed in the landed state", "max": 30.0, "min": 2.0, "name": "LNDFW_AIRSPD_MAX", "shortDesc": "Fixed-wing land detector: Max airspeed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.5, "group": "Land Detector", "longDesc": "Maximum allowed norm of the angular velocity in the landed state. Only used if neither airspeed nor groundspeed can be used for landing detection.", "name": "LNDFW_ROT_MAX", "shortDesc": "Fixed-wing land detector: max rotational speed", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 2.0, "group": "Land Detector", "longDesc": "Time the land conditions (speeds and acceleration) have to be satisfied to detect a landing.", "min": 0.1, "name": "LNDFW_TRIG_TIME", "rebootRequired": true, "shortDesc": "Fixed-wing land detection trigger time", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Land Detector", "longDesc": "Maximum horizontal velocity allowed in the landed state. A factor of 0.7 is applied in case of airspeed-less flying (either because no sensor is present or sensor data got invalid in flight).", "max": 20.0, "min": 0.5, "name": "LNDFW_VEL_XY_MAX", "shortDesc": "Fixed-wing land detector: Max horizontal velocity threshold", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Land Detector", "longDesc": "Maximum vertical velocity allowed in the landed state.", "max": 20.0, "min": 0.1, "name": "LNDFW_VEL_Z_MAX", "shortDesc": "Fixed-wing land detector: Max vertiacal velocity threshold", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 8.0, "group": "Land Detector", "longDesc": "Maximum horizontal (x,y body axes) acceleration allowed in the landed state", "max": 30.0, "min": 2.0, "name": "LNDFW_XYACC_MAX", "shortDesc": "Fixed-wing land detector: Max horizontal acceleration", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": 2.0, "group": "Land Detector", "longDesc": "The height above ground below which ground effect creates barometric altitude errors. A negative value indicates no ground effect.", "min": -1.0, "name": "LNDMC_ALT_GND", "shortDesc": "Ground effect altitude for multicopters", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 20.0, "group": "Land Detector", "longDesc": "Maximum allowed norm of the angular velocity (roll, pitch) in the landed state.", "name": "LNDMC_ROT_MAX", "shortDesc": "Multicopter max rotational speed", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Land Detector", "longDesc": "Total time it takes to go through all three land detection stages: ground contact, maybe landed, landed when all necessary conditions are constantly met.", "max": 10.0, "min": 0.1, "name": "LNDMC_TRIG_TIME", "shortDesc": "Multicopter land detection trigger time", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.5, "group": "Land Detector", "longDesc": "Maximum horizontal velocity allowed in the landed state", "name": "LNDMC_XY_VEL_MAX", "shortDesc": "Multicopter max horizontal velocity", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.25, "group": "Land Detector", "longDesc": "Vertical velocity threshold to detect landing. Has to be set lower than the expected minimal speed for landing, which is either MPC_LAND_SPEED or MPC_LAND_CRWL. This is enforced by an automatic check.", "min": 0.0, "name": "LNDMC_Z_VEL_MAX", "shortDesc": "Multicopter vertical velocity threshold", "type": "Float", "units": "m/s"}, {"category": "System", "default": 0, "group": "Land Detector", "longDesc": "Total flight time of this autopilot. Higher 32 bits of the value. Flight time in microseconds = (LND_FLIGHT_T_HI << 32) | LND_FLIGHT_T_LO.", "min": 0, "name": "LND_FLIGHT_T_HI", "shortDesc": "Total flight time in microseconds", "type": "Int32", "volatile": true}, {"category": "System", "default": 0, "group": "Land Detector", "longDesc": "Total flight time of this autopilot. Lower 32 bits of the value. Flight time in microseconds = (LND_FLIGHT_T_HI << 32) | LND_FLIGHT_T_LO.", "min": 0, "name": "LND_FLIGHT_T_LO", "shortDesc": "Total flight time in microseconds", "type": "Int32", "volatile": true}, {"category": "Standard", "decimalPlaces": 2, "default": 10.0, "group": "Landing Target Estimator", "longDesc": "Variance of acceleration measurement used for landing target position prediction. Higher values results in tighter following of the measurements and more lenient outlier rejection", "min": 0.01, "name": "LTEST_ACC_UNC", "shortDesc": "Acceleration uncertainty", "type": "Float", "units": "(m/s^2)^2"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.005, "group": "Landing Target Estimator", "longDesc": "Variance of the landing target measurement from the driver. Higher values result in less aggressive following of the measurement and a smoother output as well as fewer rejected measurements.", "name": "LTEST_MEAS_UNC", "shortDesc": "Landing target measurement uncertainty", "type": "Float", "units": "tan(rad)^2"}, {"category": "Standard", "default": 0, "group": "Landing Target Estimator", "longDesc": "Configure the mode of the landing target. Depending on the mode, the landing target observations are used differently to aid position estimation. Mode Moving: The landing target may be moving around while in the field of view of the vehicle. Landing target measurements are not used to aid positioning. Mode Stationary: The landing target is stationary. Measured velocity w.r.t. the landing target is used to aid velocity estimation.", "max": 1, "min": 0, "name": "LTEST_MODE", "shortDesc": "Landing target mode", "type": "Int32", "values": [{"description": "Moving", "value": 0}, {"description": "Stationary", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.1, "group": "Landing Target Estimator", "longDesc": "Initial variance of the relative landing target position in x and y direction", "min": 0.001, "name": "LTEST_POS_UNC_IN", "shortDesc": "Initial landing target position uncertainty", "type": "Float", "units": "m^2"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Landing Target Estimator", "longDesc": "Landing target x measurements are scaled by this factor before being used", "min": 0.01, "name": "LTEST_SCALE_X", "shortDesc": "Scale factor for sensor measurements in sensor x axis", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Landing Target Estimator", "longDesc": "Landing target y measurements are scaled by this factor before being used", "min": 0.01, "name": "LTEST_SCALE_Y", "shortDesc": "Scale factor for sensor measurements in sensor y axis", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Landing Target Estimator", "name": "LTEST_SENS_POS_X", "rebootRequired": true, "shortDesc": "X Position of IRLOCK in body frame (forward)", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Landing Target Estimator", "name": "LTEST_SENS_POS_Y", "rebootRequired": true, "shortDesc": "Y Position of IRLOCK in body frame (right)", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Landing Target Estimator", "name": "LTEST_SENS_POS_Z", "rebootRequired": true, "shortDesc": "Z Position of IRLOCK in body frame (downward)", "type": "Float", "units": "m"}, {"category": "Standard", "default": 2, "group": "Landing Target Estimator", "longDesc": "Default orientation of Yaw 90\u00b0", "max": 40, "min": -1, "name": "LTEST_SENS_ROT", "rebootRequired": true, "shortDesc": "Rotation of IRLOCK sensor relative to airframe", "type": "Int32", "values": [{"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.1, "group": "Landing Target Estimator", "longDesc": "Initial variance of the relative landing target velocity in x and y directions", "min": 0.001, "name": "LTEST_VEL_UNC_IN", "shortDesc": "Initial landing target velocity uncertainty", "type": "Float", "units": "(m/s)^2"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.012, "group": "Local Position Estimator", "longDesc": "Data sheet noise density = 150ug/sqrt(Hz) = 0.0015 m/s^2/sqrt(Hz) Larger than data sheet to account for tilt error.", "max": 2.0, "min": 1e-05, "name": "LPE_ACC_XY", "shortDesc": "Accelerometer xy noise density", "type": "Float", "units": "m/s^2/sqrt(Hz)"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.02, "group": "Local Position Estimator", "longDesc": "Data sheet noise density = 150ug/sqrt(Hz) = 0.0015 m/s^2/sqrt(Hz)", "max": 2.0, "min": 1e-05, "name": "LPE_ACC_Z", "shortDesc": "Accelerometer z noise density", "type": "Float", "units": "m/s^2/sqrt(Hz)"}, {"category": "Standard", "decimalPlaces": 2, "default": 3.0, "group": "Local Position Estimator", "max": 100.0, "min": 0.01, "name": "LPE_BAR_Z", "shortDesc": "Barometric presssure altitude z standard deviation", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Local Position Estimator", "name": "LPE_EN", "shortDesc": "Local position estimator enable (unsupported)", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": 3.0, "group": "Local Position Estimator", "max": 5.0, "min": 1.0, "name": "LPE_EPH_MAX", "shortDesc": "Max EPH allowed for GPS initialization", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 5.0, "group": "Local Position Estimator", "max": 5.0, "min": 1.0, "name": "LPE_EPV_MAX", "shortDesc": "Max EPV allowed for GPS initialization", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Local Position Estimator", "longDesc": "By initializing the estimator to the LPE_LAT/LON parameters when global information is unavailable", "max": 1, "min": 0, "name": "LPE_FAKE_ORIGIN", "shortDesc": "Enable publishing of a fake global position (e.g for AUTO missions using Optical Flow)", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.001, "group": "Local Position Estimator", "max": 2.0, "min": 0.0, "name": "LPE_FGYRO_HP", "shortDesc": "Flow gyro high pass filter cut off frequency", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Local Position Estimator", "max": 1.0, "min": -1.0, "name": "LPE_FLW_OFF_Z", "shortDesc": "Optical flow z offset from center", "type": "Float", "units": "m"}, {"category": "Standard", "default": 150, "group": "Local Position Estimator", "max": 255, "min": 0, "name": "LPE_FLW_QMIN", "shortDesc": "Optical flow minimum quality threshold", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 3, "default": 7.0, "group": "Local Position Estimator", "max": 10.0, "min": 0.1, "name": "LPE_FLW_R", "shortDesc": "Optical flow rotation (roll/pitch) noise gain", "type": "Float", "units": "m/s/rad"}, {"category": "Standard", "decimalPlaces": 3, "default": 7.0, "group": "Local Position Estimator", "max": 10.0, "min": 0.0, "name": "LPE_FLW_RR", "shortDesc": "Optical flow angular velocity noise gain", "type": "Float", "units": "m/rad"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.3, "group": "Local Position Estimator", "max": 10.0, "min": 0.1, "name": "LPE_FLW_SCALE", "shortDesc": "Optical flow scale", "type": "Float", "units": "m"}, {"bitmask": [{"description": "fuse GPS, requires GPS for alt. init", "index": 0}, {"description": "fuse optical flow", "index": 1}, {"description": "fuse vision position", "index": 2}, {"description": "fuse landing target", "index": 3}, {"description": "fuse land detector", "index": 4}, {"description": "pub agl as lpos down", "index": 5}, {"description": "flow gyro compensation", "index": 6}, {"description": "fuse baro", "index": 7}], "category": "Standard", "default": 145, "group": "Local Position Estimator", "longDesc": "Set bits in the following positions to enable: 0 : Set to true to fuse GPS data if available, also requires GPS for altitude init 1 : Set to true to fuse optical flow data if available 2 : Set to true to fuse vision position 3 : Set to true to enable landing target 4 : Set to true to fuse land detector 5 : Set to true to publish AGL as local position down component 6 : Set to true to enable flow gyro compensation 7 : Set to true to enable baro fusion default (145 - GPS, baro, land detector)", "max": 255, "min": 0, "name": "LPE_FUSION", "shortDesc": "Integer bitmask controlling data fusion", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.29, "group": "Local Position Estimator", "max": 0.4, "min": 0.0, "name": "LPE_GPS_DELAY", "shortDesc": "GPS delay compensaton", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.25, "group": "Local Position Estimator", "longDesc": "EPV used if greater than this value.", "max": 2.0, "min": 0.01, "name": "LPE_GPS_VXY", "shortDesc": "GPS xy velocity standard deviation", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.25, "group": "Local Position Estimator", "max": 2.0, "min": 0.01, "name": "LPE_GPS_VZ", "shortDesc": "GPS z velocity standard deviation", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Local Position Estimator", "max": 5.0, "min": 0.01, "name": "LPE_GPS_XY", "shortDesc": "Minimum GPS xy standard deviation, uses reported EPH if greater", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 3.0, "group": "Local Position Estimator", "max": 200.0, "min": 0.01, "name": "LPE_GPS_Z", "shortDesc": "Minimum GPS z standard deviation, uses reported EPV if greater", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Local Position Estimator", "max": 10.0, "min": 0.01, "name": "LPE_LAND_VXY", "shortDesc": "Land detector xy velocity standard deviation", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.03, "group": "Local Position Estimator", "max": 10.0, "min": 0.001, "name": "LPE_LAND_Z", "shortDesc": "Land detector z standard deviation", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 8, "default": 47.397742, "group": "Local Position Estimator", "max": 90.0, "min": -90.0, "name": "LPE_LAT", "shortDesc": "Local origin latitude for nav w/o GPS", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Local Position Estimator", "max": 1.0, "min": -1.0, "name": "LPE_LDR_OFF_Z", "shortDesc": "Lidar z offset from center of vehicle +down", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.03, "group": "Local Position Estimator", "max": 1.0, "min": 0.01, "name": "LPE_LDR_Z", "shortDesc": "Lidar z standard deviation", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 8, "default": 8.545594, "group": "Local Position Estimator", "max": 180.0, "min": -180.0, "name": "LPE_LON", "shortDesc": "Local origin longitude for nav w/o GPS", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0001, "group": "Local Position Estimator", "max": 10.0, "min": 0.0, "name": "LPE_LT_COV", "shortDesc": "Minimum landing target standard covariance, uses reported covariance if greater", "type": "Float", "units": "m^2"}, {"category": "Standard", "decimalPlaces": 8, "default": 0.001, "group": "Local Position Estimator", "max": 1.0, "min": 0.0, "name": "LPE_PN_B", "shortDesc": "Accel bias propagation noise density", "type": "Float", "units": "m/s^3/sqrt(Hz)"}, {"category": "Standard", "decimalPlaces": 8, "default": 0.1, "group": "Local Position Estimator", "longDesc": "Increase to trust measurements more. Decrease to trust model more.", "max": 1.0, "min": 0.0, "name": "LPE_PN_P", "shortDesc": "Position propagation noise density", "type": "Float", "units": "m/s/sqrt(Hz)"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.001, "group": "Local Position Estimator", "max": 1.0, "min": 0.0, "name": "LPE_PN_T", "shortDesc": "Terrain random walk noise density, hilly/outdoor (0.1), flat/Indoor (0.001)", "type": "Float", "units": "m/s/sqrt(Hz)"}, {"category": "Standard", "decimalPlaces": 8, "default": 0.1, "group": "Local Position Estimator", "longDesc": "Increase to trust measurements more. Decrease to trust model more.", "max": 1.0, "min": 0.0, "name": "LPE_PN_V", "shortDesc": "Velocity propagation noise density", "type": "Float", "units": "m/s^2/sqrt(Hz)"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Local Position Estimator", "max": 1.0, "min": -1.0, "name": "LPE_SNR_OFF_Z", "shortDesc": "Sonar z offset from center of vehicle +down", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Local Position Estimator", "max": 1.0, "min": 0.01, "name": "LPE_SNR_Z", "shortDesc": "Sonar z standard deviation", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Local Position Estimator", "longDesc": "Used to calculate increased terrain random walk nosie due to movement.", "max": 100.0, "min": 0.0, "name": "LPE_T_MAX_GRADE", "shortDesc": "Terrain maximum percent grade, hilly/outdoor (100 = 45 deg), flat/Indoor (0 = 0 deg)", "type": "Float", "units": "%"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.001, "group": "Local Position Estimator", "max": 1.0, "min": 0.0001, "name": "LPE_VIC_P", "shortDesc": "Vicon position standard deviation", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Local Position Estimator", "longDesc": "Set to zero to enable automatic compensation from measurement timestamps", "max": 0.1, "min": 0.0, "name": "LPE_VIS_DELAY", "shortDesc": "Vision delay compensation", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.1, "group": "Local Position Estimator", "max": 1.0, "min": 0.01, "name": "LPE_VIS_XY", "shortDesc": "Vision xy standard deviation", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.5, "group": "Local Position Estimator", "max": 100.0, "min": 0.01, "name": "LPE_VIS_Z", "shortDesc": "Vision z standard deviation", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.3, "group": "Local Position Estimator", "max": 1.0, "min": 0.01, "name": "LPE_VXY_PUB", "shortDesc": "Required velocity xy standard deviation to publish position", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 0, "default": 5.0, "group": "Local Position Estimator", "max": 1000.0, "min": 5.0, "name": "LPE_X_LP", "shortDesc": "Cut frequency for state publication", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Local Position Estimator", "max": 5.0, "min": 0.3, "name": "LPE_Z_PUB", "shortDesc": "Required z standard deviation to publish altitude/ terrain", "type": "Float", "units": "m"}, {"category": "Standard", "default": 1, "group": "MAVLink", "longDesc": "This allows a ground control station to automatically find the drone on the local network.", "name": "MAV_0_BROADCAST", "shortDesc": "Broadcast heartbeats on local network for MAVLink instance 0", "type": "Int32", "values": [{"description": "Never broadcast", "value": 0}, {"description": "Always broadcast", "value": 1}, {"description": "Only multicast", "value": 2}]}, {"category": "Standard", "default": 2, "group": "MAVLink", "longDesc": "This is used to force flow control on or off for the the mavlink instance. By default it is auto detected. Use when auto detection fails.", "name": "MAV_0_FLOW_CTRL", "rebootRequired": true, "shortDesc": "Enable serial flow control for instance 0", "type": "Int32", "values": [{"description": "Force off", "value": 0}, {"description": "Force on", "value": 1}, {"description": "Auto-detected", "value": 2}]}, {"category": "Standard", "default": 1, "group": "MAVLink", "longDesc": "If enabled, forward incoming MAVLink messages to other MAVLink ports if the message is either broadcast or the target is not the autopilot. This allows for example a GCS to talk to a camera that is connected to the autopilot via MAVLink (on a different link than the GCS).", "name": "MAV_0_FORWARD", "rebootRequired": true, "shortDesc": "Enable MAVLink Message forwarding for instance 0", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.015, "group": "MAVLink", "increment": 0.001, "longDesc": "Positive real value that configures the transmission frequency of the HIGH_LATENCY2 stream for instance 0, configured in iridium mode. This parameter has no effect if the instance mode is different from iridium.", "max": 50.0, "min": 0.0, "name": "MAV_0_HL_FREQ", "rebootRequired": true, "shortDesc": "Configures the frequency of HIGH_LATENCY2 stream for instance 0", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "The MAVLink Mode defines the set of streamed messages (for example the vehicle's attitude) and their sending rates.", "name": "MAV_0_MODE", "rebootRequired": true, "shortDesc": "MAVLink Mode for instance 0", "type": "Int32", "values": [{"description": "Normal", "value": 0}, {"description": "Custom", "value": 1}, {"description": "Onboard", "value": 2}, {"description": "OSD", "value": 3}, {"description": "Magic", "value": 4}, {"description": "Config", "value": 5}, {"description": "Minimal", "value": 7}, {"description": "External Vision", "value": 8}, {"description": "Gimbal", "value": 10}, {"description": "Onboard Low Bandwidth", "value": 11}, {"description": "uAvionix", "value": 12}, {"description": "Low Bandwidth", "value": 13}]}, {"category": "Standard", "default": 1, "group": "MAVLink", "longDesc": "If enabled, MAVLink messages will be throttled according to `txbuf` field reported by radio_status. Requires a radio to send the mavlink message RADIO_STATUS.", "name": "MAV_0_RADIO_CTL", "rebootRequired": true, "shortDesc": "Enable software throttling of mavlink on instance 0", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1200, "group": "MAVLink", "longDesc": "Configure the maximum sending rate for the MAVLink streams in Bytes/sec. If the configured streams exceed the maximum rate, the sending rate of each stream is automatically decreased. If this is set to 0 a value of half of the theoretical maximum bandwidth is used. This corresponds to baudrate/20 Bytes/s (baudrate/10 = maximum data rate on 8N1-configured links).", "min": 0, "name": "MAV_0_RATE", "rebootRequired": true, "shortDesc": "Maximum MAVLink sending rate for instance 0", "type": "Int32", "units": "B/s"}, {"category": "Standard", "default": 14550, "group": "MAVLink", "longDesc": "If ethernet enabled and selected as configuration for MAVLink instance 0, selected remote port will be set and used in MAVLink instance 0.", "name": "MAV_0_REMOTE_PRT", "rebootRequired": true, "shortDesc": "MAVLink Remote Port for instance 0", "type": "Int32"}, {"category": "Standard", "default": 14556, "group": "MAVLink", "longDesc": "If ethernet enabled and selected as configuration for MAVLink instance 0, selected udp port will be set and used in MAVLink instance 0.", "name": "MAV_0_UDP_PRT", "rebootRequired": true, "shortDesc": "MAVLink Network Port for instance 0", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "This allows a ground control station to automatically find the drone on the local network.", "name": "MAV_1_BROADCAST", "shortDesc": "Broadcast heartbeats on local network for MAVLink instance 1", "type": "Int32", "values": [{"description": "Never broadcast", "value": 0}, {"description": "Always broadcast", "value": 1}, {"description": "Only multicast", "value": 2}]}, {"category": "Standard", "default": 2, "group": "MAVLink", "longDesc": "This is used to force flow control on or off for the the mavlink instance. By default it is auto detected. Use when auto detection fails.", "name": "MAV_1_FLOW_CTRL", "rebootRequired": true, "shortDesc": "Enable serial flow control for instance 1", "type": "Int32", "values": [{"description": "Force off", "value": 0}, {"description": "Force on", "value": 1}, {"description": "Auto-detected", "value": 2}]}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "If enabled, forward incoming MAVLink messages to other MAVLink ports if the message is either broadcast or the target is not the autopilot. This allows for example a GCS to talk to a camera that is connected to the autopilot via MAVLink (on a different link than the GCS).", "name": "MAV_1_FORWARD", "rebootRequired": true, "shortDesc": "Enable MAVLink Message forwarding for instance 1", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.015, "group": "MAVLink", "increment": 0.001, "longDesc": "Positive real value that configures the transmission frequency of the HIGH_LATENCY2 stream for instance 1, configured in iridium mode. This parameter has no effect if the instance mode is different from iridium.", "max": 50.0, "min": 0.0, "name": "MAV_1_HL_FREQ", "rebootRequired": true, "shortDesc": "Configures the frequency of HIGH_LATENCY2 stream for instance 1", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 2, "group": "MAVLink", "longDesc": "The MAVLink Mode defines the set of streamed messages (for example the vehicle's attitude) and their sending rates.", "name": "MAV_1_MODE", "rebootRequired": true, "shortDesc": "MAVLink Mode for instance 1", "type": "Int32", "values": [{"description": "Normal", "value": 0}, {"description": "Custom", "value": 1}, {"description": "Onboard", "value": 2}, {"description": "OSD", "value": 3}, {"description": "Magic", "value": 4}, {"description": "Config", "value": 5}, {"description": "Minimal", "value": 7}, {"description": "External Vision", "value": 8}, {"description": "Gimbal", "value": 10}, {"description": "Onboard Low Bandwidth", "value": 11}, {"description": "uAvionix", "value": 12}, {"description": "Low Bandwidth", "value": 13}]}, {"category": "Standard", "default": 1, "group": "MAVLink", "longDesc": "If enabled, MAVLink messages will be throttled according to `txbuf` field reported by radio_status. Requires a radio to send the mavlink message RADIO_STATUS.", "name": "MAV_1_RADIO_CTL", "rebootRequired": true, "shortDesc": "Enable software throttling of mavlink on instance 1", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "Configure the maximum sending rate for the MAVLink streams in Bytes/sec. If the configured streams exceed the maximum rate, the sending rate of each stream is automatically decreased. If this is set to 0 a value of half of the theoretical maximum bandwidth is used. This corresponds to baudrate/20 Bytes/s (baudrate/10 = maximum data rate on 8N1-configured links).", "min": 0, "name": "MAV_1_RATE", "rebootRequired": true, "shortDesc": "Maximum MAVLink sending rate for instance 1", "type": "Int32", "units": "B/s"}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "If ethernet enabled and selected as configuration for MAVLink instance 1, selected remote port will be set and used in MAVLink instance 1.", "name": "MAV_1_REMOTE_PRT", "rebootRequired": true, "shortDesc": "MAVLink Remote Port for instance 1", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "If ethernet enabled and selected as configuration for MAVLink instance 1, selected udp port will be set and used in MAVLink instance 1.", "name": "MAV_1_UDP_PRT", "rebootRequired": true, "shortDesc": "MAVLink Network Port for instance 1", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "This allows a ground control station to automatically find the drone on the local network.", "name": "MAV_2_BROADCAST", "shortDesc": "Broadcast heartbeats on local network for MAVLink instance 2", "type": "Int32", "values": [{"description": "Never broadcast", "value": 0}, {"description": "Always broadcast", "value": 1}, {"description": "Only multicast", "value": 2}]}, {"category": "Standard", "default": 2, "group": "MAVLink", "longDesc": "This is used to force flow control on or off for the the mavlink instance. By default it is auto detected. Use when auto detection fails.", "name": "MAV_2_FLOW_CTRL", "rebootRequired": true, "shortDesc": "Enable serial flow control for instance 2", "type": "Int32", "values": [{"description": "Force off", "value": 0}, {"description": "Force on", "value": 1}, {"description": "Auto-detected", "value": 2}]}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "If enabled, forward incoming MAVLink messages to other MAVLink ports if the message is either broadcast or the target is not the autopilot. This allows for example a GCS to talk to a camera that is connected to the autopilot via MAVLink (on a different link than the GCS).", "name": "MAV_2_FORWARD", "rebootRequired": true, "shortDesc": "Enable MAVLink Message forwarding for instance 2", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.015, "group": "MAVLink", "increment": 0.001, "longDesc": "Positive real value that configures the transmission frequency of the HIGH_LATENCY2 stream for instance 2, configured in iridium mode. This parameter has no effect if the instance mode is different from iridium.", "max": 50.0, "min": 0.0, "name": "MAV_2_HL_FREQ", "rebootRequired": true, "shortDesc": "Configures the frequency of HIGH_LATENCY2 stream for instance 2", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "The MAVLink Mode defines the set of streamed messages (for example the vehicle's attitude) and their sending rates.", "name": "MAV_2_MODE", "rebootRequired": true, "shortDesc": "MAVLink Mode for instance 2", "type": "Int32", "values": [{"description": "Normal", "value": 0}, {"description": "Custom", "value": 1}, {"description": "Onboard", "value": 2}, {"description": "OSD", "value": 3}, {"description": "Magic", "value": 4}, {"description": "Config", "value": 5}, {"description": "Minimal", "value": 7}, {"description": "External Vision", "value": 8}, {"description": "Gimbal", "value": 10}, {"description": "Onboard Low Bandwidth", "value": 11}, {"description": "uAvionix", "value": 12}, {"description": "Low Bandwidth", "value": 13}]}, {"category": "Standard", "default": 1, "group": "MAVLink", "longDesc": "If enabled, MAVLink messages will be throttled according to `txbuf` field reported by radio_status. Requires a radio to send the mavlink message RADIO_STATUS.", "name": "MAV_2_RADIO_CTL", "rebootRequired": true, "shortDesc": "Enable software throttling of mavlink on instance 2", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "Configure the maximum sending rate for the MAVLink streams in Bytes/sec. If the configured streams exceed the maximum rate, the sending rate of each stream is automatically decreased. If this is set to 0 a value of half of the theoretical maximum bandwidth is used. This corresponds to baudrate/20 Bytes/s (baudrate/10 = maximum data rate on 8N1-configured links).", "min": 0, "name": "MAV_2_RATE", "rebootRequired": true, "shortDesc": "Maximum MAVLink sending rate for instance 2", "type": "Int32", "units": "B/s"}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "If ethernet enabled and selected as configuration for MAVLink instance 2, selected remote port will be set and used in MAVLink instance 2.", "name": "MAV_2_REMOTE_PRT", "rebootRequired": true, "shortDesc": "MAVLink Remote Port for instance 2", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "If ethernet enabled and selected as configuration for MAVLink instance 2, selected udp port will be set and used in MAVLink instance 2.", "name": "MAV_2_UDP_PRT", "rebootRequired": true, "shortDesc": "MAVLink Network Port for instance 2", "type": "Int32"}, {"category": "Standard", "default": 1, "group": "MAVLink", "max": 250, "min": 1, "name": "MAV_COMP_ID", "rebootRequired": true, "shortDesc": "MAVLink component ID", "type": "Int32"}, {"category": "Standard", "default": 1, "group": "MAVLink", "longDesc": "If set to 1 incoming external setpoint messages will be directly forwarded to the controllers if in offboard control mode", "name": "MAV_FWDEXTSP", "shortDesc": "Forward external setpoint messages", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "MAVLink", "longDesc": "Disabling the parameter hash check functionality will make the mavlink instance stream parameters continuously.", "name": "MAV_HASH_CHK_EN", "shortDesc": "Parameter hash check", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "MAVLink", "longDesc": "The mavlink heartbeat message will not be forwarded if this parameter is set to 'disabled'. The main reason for disabling heartbeats to be forwarded is because they confuse dronekit.", "name": "MAV_HB_FORW_EN", "shortDesc": "Heartbeat message forwarding", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "MAVLink", "name": "MAV_PROTO_VER", "shortDesc": "MAVLink protocol version", "type": "Int32", "values": [{"description": "Default to 1, switch to 2 if GCS sends version 2", "value": 0}, {"description": "Always use version 1", "value": 1}, {"description": "Always use version 2", "value": 2}]}, {"category": "Standard", "default": 5, "group": "MAVLink", "longDesc": "If the connected radio stops reporting RADIO_STATUS for a certain time, a warning is triggered and, if MAV_X_RADIO_CTL is enabled, the software-flow control is reset.", "max": 250, "min": 1, "name": "MAV_RADIO_TOUT", "shortDesc": "Timeout in seconds for the RADIO_STATUS reports coming in", "type": "Int32", "units": "s"}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "When non-zero the MAVLink app will attempt to configure the SiK radio to this ID and re-set the parameter to 0. If the value is negative it will reset the complete radio config to factory defaults. Only applies if this mavlink instance is going through a SiK radio", "max": 240, "min": -1, "name": "MAV_SIK_RADIO_ID", "shortDesc": "MAVLink SiK Radio ID", "type": "Int32"}, {"category": "Standard", "default": 1, "group": "MAVLink", "max": 250, "min": 1, "name": "MAV_SYS_ID", "rebootRequired": true, "shortDesc": "MAVLink system ID", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "MAVLink", "max": 22, "min": 0, "name": "MAV_TYPE", "shortDesc": "MAVLink airframe type", "type": "Int32", "values": [{"description": "Generic micro air vehicle", "value": 0}, {"description": "Fixed wing aircraft", "value": 1}, {"description": "Quadrotor", "value": 2}, {"description": "Coaxial helicopter", "value": 3}, {"description": "Normal helicopter with tail rotor", "value": 4}, {"description": "Airship, controlled", "value": 7}, {"description": "Free balloon, uncontrolled", "value": 8}, {"description": "Ground rover", "value": 10}, {"description": "Surface vessel, boat, ship", "value": 11}, {"description": "Submarine", "value": 12}, {"description": "Hexarotor", "value": 13}, {"description": "Octorotor", "value": 14}, {"description": "Tricopter", "value": 15}, {"description": "VTOL Two-rotor Tailsitter", "value": 19}, {"description": "VTOL Quad-rotor Tailsitter", "value": 20}, {"description": "VTOL Tiltrotor", "value": 21}, {"description": "VTOL Standard (separate fixed rotors for hover and cruise flight)", "value": 22}, {"description": "VTOL Tailsitter", "value": 23}]}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "If set to 1 incoming HIL GPS messages are parsed.", "name": "MAV_USEHILGPS", "shortDesc": "Use/Accept HIL GPS message even if not in HIL mode", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "Magnetometer Bias Estimator", "longDesc": "This enables continuous calibration of the magnetometers before takeoff using gyro data.", "name": "MBE_ENABLE", "rebootRequired": true, "shortDesc": "Enable online mag bias calibration", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 18.0, "group": "Magnetometer Bias Estimator", "increment": 0.1, "longDesc": "Increase to make the estimator more responsive Decrease to make the estimator more robust to noise", "max": 100.0, "min": 0.1, "name": "MBE_LEARN_GAIN", "shortDesc": "Mag bias estimator learning gain", "type": "Float"}, {"category": "Standard", "default": 1, "group": "Manual Control", "longDesc": "This determines if moving the left stick to the lower right arms and to the lower left disarms the vehicle.", "name": "MAN_ARM_GESTURE", "shortDesc": "Enable arm/disarm stick gesture", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Manual Control", "longDesc": "The timeout for holding the left stick to the lower left and the right stick to the lower right at the same time until the gesture kills the actuators one-way. A negative value disables the feature.", "max": 15.0, "min": -1.0, "name": "MAN_KILL_GEST_T", "shortDesc": "Trigger time for kill stick gesture", "type": "Float", "units": "s"}, {"category": "Standard", "default": 30, "group": "Mission", "longDesc": "The time the system should do open loop loiter and wait for GPS recovery before it starts descending. Set to 0 to disable. Roll angle is set to FW_GPSF_R. Does only apply for fixed-wing vehicles or VTOLs with NAV_FORCE_VT set to 0.", "max": 3600, "min": 0, "name": "FW_GPSF_LT", "shortDesc": "GPS failure loiter time", "type": "Int32", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 15.0, "group": "Mission", "increment": 0.5, "longDesc": "Roll angle in GPS failure loiter mode.", "max": 30.0, "min": 0.0, "name": "FW_GPSF_R", "shortDesc": "GPS failure fixed roll angle", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Mission", "longDesc": "Ensure: gripper: NAV_CMD_DO_GRIPPER has released before continuing mission. winch: CMD_DO_WINCH has delivered before continuing mission. gimbal: CMD_DO_GIMBAL_MANAGER_PITCHYAW has reached the commanded orientation before beginning to take pictures.", "min": 0.0, "name": "MIS_COMMAND_TOUT", "shortDesc": "Timeout to allow the payload to execute the mission command", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 10000.0, "group": "Mission", "increment": 100.0, "longDesc": "There will be a warning message if the current waypoint is more distant than MIS_DIST_1WP from Home. Has no effect on mission validity. Set a value of zero or less to disable.", "max": 100000.0, "min": -1.0, "name": "MIS_DIST_1WP", "shortDesc": "Maximal horizontal distance from Home to first waypoint", "type": "Float", "units": "m"}, {"category": "Standard", "default": 30, "group": "Mission", "longDesc": "Minimum altitude above landing point that the vehicle will climb to after an aborted landing. Then vehicle will loiter in this altitude until further command is received. Only applies to fixed-wing vehicles.", "min": 0, "name": "MIS_LND_ABRT_ALT", "shortDesc": "Landing abort min altitude", "type": "Int32", "units": "m"}, {"category": "Standard", "default": 0, "group": "Mission", "longDesc": "If enabled, yaw commands will be sent to the mount and the vehicle will follow its heading towards the flight direction. If disabled, the vehicle will yaw towards the ROI.", "max": 1, "min": 0, "name": "MIS_MNT_YAW_CTL", "shortDesc": "Enable yaw control of the mount. (Only affects multicopters and ROI mission items)", "type": "Int32", "values": [{"description": "Disable", "value": 0}, {"description": "Enable", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 2.5, "group": "Mission", "increment": 0.5, "longDesc": "This is the relative altitude the system will take off to if not otherwise specified.", "min": 0.0, "name": "MIS_TAKEOFF_ALT", "shortDesc": "Default take-off altitude", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Mission", "longDesc": "Specifies if a mission has to contain a takeoff and/or mission landing. Validity of configured takeoffs/landings is checked independently of the setting here.", "name": "MIS_TKO_LAND_REQ", "shortDesc": "Mission takeoff/landing required", "type": "Int32", "values": [{"description": "No requirements", "value": 0}, {"description": "Require a takeoff", "value": 1}, {"description": "Require a landing", "value": 2}, {"description": "Require a takeoff and a landing", "value": 3}, {"description": "Require both a takeoff and a landing, or neither", "value": 4}, {"description": "Same as previous when landed, in-air require landing only if no valid VTOL approach is present", "value": 5}]}, {"category": "Standard", "decimalPlaces": 1, "default": 12.0, "group": "Mission", "increment": 1.0, "max": 90.0, "min": 0.0, "name": "MIS_YAW_ERR", "shortDesc": "Max yaw error in degrees needed for waypoint heading acceptance", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "Mission", "increment": 1.0, "longDesc": "If set > 0 it will ignore the target heading for normal waypoint acceptance. If the waypoint forces the heading the timeout will matter. For example on VTOL forwards transition. Mainly useful for VTOLs that have less yaw authority and might not reach target yaw in wind. Disabled by default.", "max": 20.0, "min": -1.0, "name": "MIS_YAW_TMT", "shortDesc": "Time in seconds we wait on reaching target heading at a waypoint if it is forced", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Mission", "max": 4, "min": 0, "name": "MPC_YAW_MODE", "shortDesc": "Heading behavior in autonomous modes", "type": "Int32", "values": [{"description": "towards waypoint", "value": 0}, {"description": "towards home", "value": 1}, {"description": "away from home", "value": 2}, {"description": "along trajectory", "value": 3}, {"description": "towards waypoint (yaw first)", "value": 4}, {"description": "yaw fixed", "value": 5}]}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Mission", "increment": 0.5, "longDesc": "Default acceptance radius, overridden by acceptance radius of waypoint if set. For fixed wing the npfg switch distance is used for horizontal acceptance.", "max": 200.0, "min": 0.05, "name": "NAV_ACC_RAD", "shortDesc": "Acceptance Radius", "type": "Float", "units": "m"}, {"category": "Standard", "default": 1, "group": "Mission", "name": "NAV_FORCE_VT", "shortDesc": "Force VTOL mode takeoff and land", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Mission", "longDesc": "Altitude acceptance used for the last waypoint before a fixed-wing landing. This is usually smaller than the standard vertical acceptance because close to the ground higher accuracy is required.", "max": 200.0, "min": 0.05, "name": "NAV_FW_ALTL_RAD", "shortDesc": "FW Altitude Acceptance Radius before a landing", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Mission", "increment": 0.5, "longDesc": "Acceptance radius for fixedwing altitude.", "max": 200.0, "min": 0.05, "name": "NAV_FW_ALT_RAD", "shortDesc": "FW Altitude Acceptance Radius", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 80.0, "group": "Mission", "increment": 0.5, "longDesc": "Default value of loiter radius in FW mode (e.g. for Loiter mode).", "max": 1000.0, "min": 25.0, "name": "NAV_LOITER_RAD", "shortDesc": "Loiter radius (FW only)", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.8, "group": "Mission", "increment": 0.5, "longDesc": "Acceptance radius for multicopter altitude.", "max": 200.0, "min": 0.05, "name": "NAV_MC_ALT_RAD", "shortDesc": "MC Altitude Acceptance Radius", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "Mission", "increment": 1.0, "longDesc": "Minimum height above ground the vehicle is allowed to descend to during Mission and RTL, excluding landing commands. Requires a distance sensor to be set up. Note: only prevents the vehicle from descending further, but does not force it to climb. Set to a negative value to disable.", "min": -1.0, "name": "NAV_MIN_GND_DIST", "shortDesc": "Minimum height above ground during Mission and RTL", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "Mission", "increment": 0.5, "longDesc": "This is the minimum altitude above Home the system will always obey in Loiter (Hold) mode if switched into this mode without specifying an altitude (e.g. through Loiter switch on RC). Doesn't affect Loiters that are part of Missions or that are entered through a reposition setpoint (\"Go to\"). Set to a negative value to disable.", "min": -1.0, "name": "NAV_MIN_LTR_ALT", "shortDesc": "Minimum Loiter altitude", "type": "Float", "units": "m"}, {"category": "Standard", "default": 1, "group": "Mission", "longDesc": "Enabling this will allow the system to respond to transponder data from e.g. ADSB transponders", "name": "NAV_TRAFF_AVOID", "shortDesc": "Set traffic avoidance mode", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Warn only", "value": 1}, {"description": "Return mode", "value": 2}, {"description": "Land mode", "value": 3}, {"description": "Position Hold mode", "value": 4}]}, {"category": "Standard", "default": 500.0, "group": "Mission", "longDesc": "Defines a crosstrack horizontal distance", "min": 500.0, "name": "NAV_TRAFF_A_HOR", "shortDesc": "Set NAV TRAFFIC AVOID horizontal distance", "type": "Float", "units": "m"}, {"category": "Standard", "default": 500.0, "group": "Mission", "max": 500.0, "min": 10.0, "name": "NAV_TRAFF_A_VER", "shortDesc": "Set NAV TRAFFIC AVOID vertical distance", "type": "Float", "units": "m"}, {"category": "Standard", "default": 60, "group": "Mission", "longDesc": "Minimum acceptable time until collsion. Assumes constant speed over 3d distance.", "max": 900000000, "min": 1, "name": "NAV_TRAFF_COLL_T", "shortDesc": "Estimated time until collision", "type": "Int32", "units": "s"}, {"category": "Standard", "default": 0, "group": "Mixer Output", "longDesc": "The air-mode enables the mixer to increase the total thrust of the multirotor in order to keep attitude and rate control even at low and high throttle. This function should be disabled during tuning as it will help the controller to diverge if the closed-loop is unstable (i.e. the vehicle is not tuned yet). Enabling air-mode for yaw requires the use of an arming switch.", "name": "MC_AIRMODE", "shortDesc": "Multicopter air-mode", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Roll/Pitch", "value": 1}, {"description": "Roll/Pitch/Yaw", "value": 2}]}, {"category": "Standard", "default": 0, "group": "Mount", "longDesc": "Set to true for servo gimbal, false for passthrough. This is required for a gimbal which is not capable of stabilizing itself and relies on the IMU's attitude estimation.", "max": 2, "min": 0, "name": "MNT_DO_STAB", "shortDesc": "Stabilize the mount", "type": "Int32", "values": [{"description": "Disable", "value": 0}, {"description": "Stabilize all axis", "value": 1}, {"description": "Stabilize yaw for absolute/lock mode.", "value": 2}]}, {"category": "Standard", "decimalPlaces": 1, "default": 90.0, "group": "Mount", "max": 90.0, "min": -90.0, "name": "MNT_LND_P_MAX", "shortDesc": "Pitch maximum when landed", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": -90.0, "group": "Mount", "max": 90.0, "min": -90.0, "name": "MNT_LND_P_MIN", "shortDesc": "Pitch minimum when landed", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0, "group": "Mount", "max": 6, "min": 0, "name": "MNT_MAN_PITCH", "shortDesc": "Auxiliary channel to control pitch (in AUX input or manual mode)", "type": "Int32", "values": [{"description": "Disable", "value": 0}, {"description": "AUX1", "value": 1}, {"description": "AUX2", "value": 2}, {"description": "AUX3", "value": 3}, {"description": "AUX4", "value": 4}, {"description": "AUX5", "value": 5}, {"description": "AUX6", "value": 6}]}, {"category": "Standard", "default": 0, "group": "Mount", "max": 6, "min": 0, "name": "MNT_MAN_ROLL", "shortDesc": "Auxiliary channel to control roll (in AUX input or manual mode)", "type": "Int32", "values": [{"description": "Disable", "value": 0}, {"description": "AUX1", "value": 1}, {"description": "AUX2", "value": 2}, {"description": "AUX3", "value": 3}, {"description": "AUX4", "value": 4}, {"description": "AUX5", "value": 5}, {"description": "AUX6", "value": 6}]}, {"category": "Standard", "default": 0, "group": "Mount", "max": 6, "min": 0, "name": "MNT_MAN_YAW", "shortDesc": "Auxiliary channel to control yaw (in AUX input or manual mode)", "type": "Int32", "values": [{"description": "Disable", "value": 0}, {"description": "AUX1", "value": 1}, {"description": "AUX2", "value": 2}, {"description": "AUX3", "value": 3}, {"description": "AUX4", "value": 4}, {"description": "AUX5", "value": 5}, {"description": "AUX6", "value": 6}]}, {"category": "Standard", "default": 154, "group": "Mount", "longDesc": "If MNT_MODE_OUT is MAVLink protocol v2, mount configure/control commands will be sent with this component ID.", "name": "MNT_MAV_COMPID", "shortDesc": "Mavlink Component ID of the mount", "type": "Int32"}, {"category": "Standard", "default": 1, "group": "Mount", "longDesc": "If MNT_MODE_OUT is MAVLink gimbal protocol v1, mount configure/control commands will be sent with this target ID.", "name": "MNT_MAV_SYSID", "shortDesc": "Mavlink System ID of the mount", "type": "Int32"}, {"category": "Standard", "default": -1, "group": "Mount", "longDesc": "This is the protocol used between the ground station and the autopilot. Recommended is Auto, RC only or MAVLink gimbal protocol v2. The rest will be deprecated.", "max": 4, "min": -1, "name": "MNT_MODE_IN", "rebootRequired": true, "shortDesc": "Mount input mode", "type": "Int32", "values": [{"description": "DISABLED", "value": -1}, {"description": "Auto (RC and MAVLink gimbal protocol v2)", "value": 0}, {"description": "RC", "value": 1}, {"description": "MAVLINK_ROI (protocol v1, to be deprecated)", "value": 2}, {"description": "MAVLINK_DO_MOUNT (protocol v1, to be deprecated)", "value": 3}, {"description": "MAVlink gimbal protocol v2", "value": 4}]}, {"category": "Standard", "default": 0, "group": "Mount", "longDesc": "This is the protocol used between the autopilot and a connected gimbal. Recommended is the MAVLink gimbal protocol v2 if the gimbal supports it.", "max": 2, "min": 0, "name": "MNT_MODE_OUT", "rebootRequired": true, "shortDesc": "Mount output mode", "type": "Int32", "values": [{"description": "AUX", "value": 0}, {"description": "MAVLink gimbal protocol v1", "value": 1}, {"description": "MAVLink gimbal protocol v2", "value": 2}]}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Mount", "max": 360.0, "min": -360.0, "name": "MNT_OFF_PITCH", "shortDesc": "Offset for pitch channel output in degrees", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Mount", "max": 360.0, "min": -360.0, "name": "MNT_OFF_ROLL", "shortDesc": "Offset for roll channel output in degrees", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Mount", "max": 360.0, "min": -360.0, "name": "MNT_OFF_YAW", "shortDesc": "Offset for yaw channel output in degrees", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 90.0, "group": "Mount", "max": 720.0, "min": 1.0, "name": "MNT_RANGE_PITCH", "shortDesc": "Range of pitch channel output in degrees (only in AUX output mode)", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 90.0, "group": "Mount", "max": 720.0, "min": 1.0, "name": "MNT_RANGE_ROLL", "shortDesc": "Range of roll channel output in degrees (only in AUX output mode)", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 360.0, "group": "Mount", "max": 720.0, "min": 1.0, "name": "MNT_RANGE_YAW", "shortDesc": "Range of yaw channel output in degrees (only in AUX output mode)", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 30.0, "group": "Mount", "longDesc": "Full stick input [-1..1] translats to [-pitch rate..pitch rate].", "max": 90.0, "min": 1.0, "name": "MNT_RATE_PITCH", "shortDesc": "Angular pitch rate for manual input in degrees/second", "type": "Float", "units": "deg/s"}, {"category": "Standard", "default": 30.0, "group": "Mount", "longDesc": "Full stick input [-1..1] translats to [-yaw rate..yaw rate].", "max": 90.0, "min": 1.0, "name": "MNT_RATE_YAW", "shortDesc": "Angular yaw rate for manual input in degrees/second", "type": "Float", "units": "deg/s"}, {"category": "Standard", "default": 1, "group": "Mount", "max": 1, "min": 0, "name": "MNT_RC_IN_MODE", "shortDesc": "Input mode for RC gimbal input", "type": "Int32", "values": [{"description": "Angle", "value": 0}, {"description": "Angular rate", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Multicopter Acro Mode", "longDesc": "Exponential factor for tuning the input curve shape. 0 Purely linear input curve 1 Purely cubic input curve", "max": 1.0, "min": 0.0, "name": "MC_ACRO_EXPO", "shortDesc": "Acro mode roll, pitch expo factor", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Multicopter Acro Mode", "longDesc": "Exponential factor for tuning the input curve shape. 0 Purely linear input curve 1 Purely cubic input curve", "max": 1.0, "min": 0.0, "name": "MC_ACRO_EXPO_Y", "shortDesc": "Acro mode yaw expo factor", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 100.0, "group": "Multicopter Acro Mode", "increment": 5.0, "longDesc": "Full stick deflection leads to this rate.", "max": 1800.0, "min": 0.0, "name": "MC_ACRO_P_MAX", "shortDesc": "Acro mode maximum pitch rate", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 100.0, "group": "Multicopter Acro Mode", "increment": 5.0, "longDesc": "Full stick deflection leads to this rate.", "max": 1800.0, "min": 0.0, "name": "MC_ACRO_R_MAX", "shortDesc": "Acro mode maximum roll rate", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Multicopter Acro Mode", "longDesc": "\"Superexponential\" factor for refining the input curve shape tuned using MC_ACRO_EXPO. 0 Pure Expo function 0.7 reasonable shape enhancement for intuitive stick feel 0.95 very strong bent input curve only near maxima have effect", "max": 0.95, "min": 0.0, "name": "MC_ACRO_SUPEXPO", "shortDesc": "Acro mode roll, pitch super expo factor", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Multicopter Acro Mode", "longDesc": "\"Superexponential\" factor for refining the input curve shape tuned using MC_ACRO_EXPO_Y. 0 Pure Expo function 0.7 reasonable shape enhancement for intuitive stick feel 0.95 very strong bent input curve only near maxima have effect", "max": 0.95, "min": 0.0, "name": "MC_ACRO_SUPEXPOY", "shortDesc": "Acro mode yaw super expo factor", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 100.0, "group": "Multicopter Acro Mode", "increment": 5.0, "longDesc": "Full stick deflection leads to this rate.", "max": 1800.0, "min": 0.0, "name": "MC_ACRO_Y_MAX", "shortDesc": "Acro mode maximum yaw rate", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 220.0, "group": "Multicopter Attitude Control", "increment": 5.0, "longDesc": "Limit for pitch rate in manual and auto modes (except acro). Has effect for large rotations in autonomous mode, to avoid large control output and mixer saturation. This is not only limited by the vehicle's properties, but also by the maximum measurement rate of the gyro.", "max": 1800.0, "min": 0.0, "name": "MC_PITCHRATE_MAX", "shortDesc": "Max pitch rate", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 6.5, "group": "Multicopter Attitude Control", "increment": 0.1, "longDesc": "Pitch proportional gain, i.e. desired angular speed in rad/s for error 1 rad.", "max": 12.0, "min": 0.0, "name": "MC_PITCH_P", "shortDesc": "Pitch P gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 220.0, "group": "Multicopter Attitude Control", "increment": 5.0, "longDesc": "Limit for roll rate in manual and auto modes (except acro). Has effect for large rotations in autonomous mode, to avoid large control output and mixer saturation. This is not only limited by the vehicle's properties, but also by the maximum measurement rate of the gyro.", "max": 1800.0, "min": 0.0, "name": "MC_ROLLRATE_MAX", "shortDesc": "Max roll rate", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 6.5, "group": "Multicopter Attitude Control", "increment": 0.1, "longDesc": "Roll proportional gain, i.e. desired angular speed in rad/s for error 1 rad.", "max": 12.0, "min": 0.0, "name": "MC_ROLL_P", "shortDesc": "Roll P gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 200.0, "group": "Multicopter Attitude Control", "increment": 5.0, "max": 1800.0, "min": 0.0, "name": "MC_YAWRATE_MAX", "shortDesc": "Max yaw rate", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 2.8, "group": "Multicopter Attitude Control", "increment": 0.1, "longDesc": "Yaw proportional gain, i.e. desired angular speed in rad/s for error 1 rad.", "max": 5.0, "min": 0.0, "name": "MC_YAW_P", "shortDesc": "Yaw P gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.4, "group": "Multicopter Attitude Control", "increment": 0.1, "longDesc": "A fraction [0,1] deprioritizing yaw compared to roll and pitch in non-linear attitude control. Deprioritizing yaw is necessary because multicopters have much less control authority in yaw compared to the other axes and it makes sense because yaw is not critical for stable hovering or 3D navigation. For yaw control tuning use MC_YAW_P. This ratio has no impact on the yaw gain.", "max": 1.0, "min": 0.0, "name": "MC_YAW_WEIGHT", "shortDesc": "Yaw weight", "type": "Float"}, {"category": "Standard", "decimalPlaces": 0, "default": 60.0, "group": "Multicopter Attitude Control", "increment": 5.0, "longDesc": "Limits the acceleration of the yaw setpoint to avoid large control output and mixer saturation.", "max": 360.0, "min": 5.0, "name": "MPC_YAWRAUTO_ACC", "shortDesc": "Maximum yaw acceleration in autonomous modes", "type": "Float", "units": "deg/s^2"}, {"category": "Standard", "decimalPlaces": 0, "default": 45.0, "group": "Multicopter Attitude Control", "increment": 5.0, "longDesc": "Limits the rate of change of the yaw setpoint to avoid large control output and mixer saturation.", "max": 360.0, "min": 5.0, "name": "MPC_YAWRAUTO_MAX", "shortDesc": "Maximum yaw rate in autonomous modes", "type": "Float", "units": "deg/s"}, {"category": "Standard", "default": 0.4, "group": "Multicopter Position Control", "longDesc": "Only used in Position mode.", "max": 1.0, "min": 0.0, "name": "CP_DELAY", "shortDesc": "Average delay of the range sensor message plus the tracking delay of the position controller in seconds", "type": "Float", "units": "s"}, {"category": "Standard", "default": -1.0, "group": "Multicopter Position Control", "longDesc": "Only used in Position mode. Collision avoidance is disabled by setting this parameter to a negative value", "max": 15.0, "min": -1.0, "name": "CP_DIST", "shortDesc": "Minimum distance the vehicle should keep to all obstacles", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Multicopter Position Control", "longDesc": "Only used in Position mode.", "name": "CP_GO_NO_DATA", "shortDesc": "Boolean to allow moving into directions where there is no sensor data (outside FOV)", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 30.0, "group": "Multicopter Position Control", "longDesc": "Only used in Position mode.", "max": 90.0, "min": 0.0, "name": "CP_GUIDE_ANG", "shortDesc": "Angle left/right from the commanded setpoint by which the collision prevention algorithm can choose to change the setpoint direction", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Multicopter Position Control", "longDesc": "Setting this parameter to 0 disables the filter", "max": 2.0, "min": 0.0, "name": "MC_MAN_TILT_TAU", "shortDesc": "Manual tilt input filter time constant", "type": "Float", "units": "s"}, {"category": "Standard", "default": 1, "group": "Multicopter Position Control", "longDesc": "Set to decouple tilt from vertical acceleration. This provides smoother flight but slightly worse tracking in position and auto modes. Unset if accurate position tracking during dynamic maneuvers is more important than a smooth flight.", "name": "MPC_ACC_DECOUPLE", "shortDesc": "Acceleration to tilt coupling", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "Multicopter Position Control", "increment": 1.0, "max": 15.0, "min": 2.0, "name": "MPC_ACC_DOWN_MAX", "shortDesc": "Maximum downwards acceleration in climb rate controlled modes", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "When piloting manually, this parameter is only used in MPC_POS_MODE Acceleration based.", "max": 15.0, "min": 2.0, "name": "MPC_ACC_HOR", "shortDesc": "Acceleration for autonomous and for manual modes", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": 5.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "MPC_POS_MODE 1 just deceleration 4 not used, use MPC_ACC_HOR instead", "max": 15.0, "min": 2.0, "name": "MPC_ACC_HOR_MAX", "shortDesc": "Maximum horizontal acceleration", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 1, "default": 4.0, "group": "Multicopter Position Control", "increment": 1.0, "max": 15.0, "min": 2.0, "name": "MPC_ACC_UP_MAX", "shortDesc": "Maximum upwards acceleration in climb rate controlled modes", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "default": 2, "group": "Multicopter Position Control", "longDesc": "Control height 0: relative earth frame origin which may drift due to sensors 1: relative to ground (requires distance sensor) which changes with terrain variation. It will revert to relative earth frame if the distance to ground estimate becomes invalid. 2: relative to ground (requires distance sensor) when stationary and relative to earth frame when moving horizontally. The speed threshold is MPC_HOLD_MAX_XY", "max": 2, "min": 0, "name": "MPC_ALT_MODE", "shortDesc": "Altitude reference mode", "type": "Int32", "values": [{"description": "Altitude following", "value": 0}, {"description": "Terrain following", "value": 1}, {"description": "Terrain hold", "value": 2}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Multicopter Position Control", "increment": 0.01, "longDesc": "Does not apply to manual throttle and direct attitude piloting by stick.", "max": 1.0, "min": 0.0, "name": "MPC_HOLD_DZ", "shortDesc": "Deadzone for sticks in manual piloted modes", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.8, "group": "Multicopter Position Control", "longDesc": "Only used with MPC_POS_MODE Direct velocity or MPC_ALT_MODE 2", "max": 3.0, "min": 0.0, "name": "MPC_HOLD_MAX_XY", "shortDesc": "Maximum horizontal velocity for which position hold is enabled (use 0 to disable check)", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.6, "group": "Multicopter Position Control", "longDesc": "Only used with MPC_ALT_MODE 1", "max": 3.0, "min": 0.0, "name": "MPC_HOLD_MAX_Z", "shortDesc": "Maximum vertical velocity for which position hold is enabled (use 0 to disable check)", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 4.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "Limit the maximum jerk of the vehicle (how fast the acceleration can change). A lower value leads to smoother vehicle motions but also limited agility.", "max": 80.0, "min": 1.0, "name": "MPC_JERK_AUTO", "shortDesc": "Jerk limit in autonomous modes", "type": "Float", "units": "m/s^3"}, {"category": "Standard", "decimalPlaces": 0, "default": 8.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "Limit the maximum jerk (acceleration change) of the vehicle. A lower value leads to smoother motions but limits agility. Setting this to the maximum value essentially disables the limit. Only used with MPC_POS_MODE Acceleration based.", "max": 500.0, "min": 0.5, "name": "MPC_JERK_MAX", "shortDesc": "Maximum horizontal and vertical jerk in Position/Altitude mode", "type": "Float", "units": "m/s^3"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Multicopter Position Control", "longDesc": "Below this altitude descending velocity gets limited to a value between \"MPC_Z_VEL_MAX_DN\" (or \"MPC_Z_V_AUTO_DN\") and \"MPC_LAND_SPEED\" Value needs to be higher than \"MPC_LAND_ALT2\"", "max": 122.0, "min": 0.0, "name": "MPC_LAND_ALT1", "shortDesc": "Altitude for 1. step of slow landing (descend)", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Multicopter Position Control", "longDesc": "Below this altitude descending velocity gets limited to \"MPC_LAND_SPEED\" Value needs to be lower than \"MPC_LAND_ALT1\"", "max": 122.0, "min": 0.0, "name": "MPC_LAND_ALT2", "shortDesc": "Altitude for 2. step of slow landing (landing)", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Multicopter Position Control", "longDesc": "If a valid distance sensor measurement to the ground is available, limit descending velocity to \"MPC_LAND_CRWL\" below this altitude.", "max": 122.0, "min": 0.0, "name": "MPC_LAND_ALT3", "shortDesc": "Altitude for 3. step of slow landing", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.3, "group": "Multicopter Position Control", "longDesc": "Used below MPC_LAND_ALT3 if distance sensor data is availabe.", "min": 0.1, "name": "MPC_LAND_CRWL", "shortDesc": "Land crawl descend rate", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 0, "default": 1000.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "When nudging is enabled (see MPC_LAND_RC_HELP), this controls the maximum allowed horizontal displacement from the original landing point.", "min": 0.0, "name": "MPC_LAND_RADIUS", "shortDesc": "User assisted landing radius", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Multicopter Position Control", "longDesc": "Using stick input the vehicle can be moved horizontally and yawed. The descend speed is amended: stick full up - 0 stick centered - MPC_LAND_SPEED stick full down - 2 * MPC_LAND_SPEED Manual override during auto modes has to be disabled to use this feature (see COM_RC_OVERRIDE).", "max": 1, "min": 0, "name": "MPC_LAND_RC_HELP", "shortDesc": "Enable nudging based on user input during autonomous land routine", "type": "Int32", "values": [{"description": "Nudging disabled", "value": 0}, {"description": "Nudging enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 0.7, "group": "Multicopter Position Control", "min": 0.6, "name": "MPC_LAND_SPEED", "shortDesc": "Landing descend rate", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.08, "group": "Multicopter Position Control", "increment": 0.01, "longDesc": "The value is mapped to the lowest throttle stick position in Stabilized mode. Too low collective thrust leads to loss of roll/pitch/yaw torque control authority. Airmode is used to keep torque authority with zero thrust (see MC_AIRMODE).", "max": 1.0, "min": 0.0, "name": "MPC_MANTHR_MIN", "shortDesc": "Minimum collective thrust in Stabilized mode", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 0, "default": 35.0, "group": "Multicopter Position Control", "increment": 1.0, "max": 70.0, "min": 1.0, "name": "MPC_MAN_TILT_MAX", "shortDesc": "Maximal tilt angle in Stabilized or Altitude mode", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 0, "default": 150.0, "group": "Multicopter Position Control", "increment": 10.0, "max": 400.0, "min": 0.0, "name": "MPC_MAN_Y_MAX", "shortDesc": "Max manual yaw rate for Stabilized, Altitude, Position mode", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.08, "group": "Multicopter Position Control", "increment": 0.01, "longDesc": "Not used in Stabilized mode Setting this parameter to 0 disables the filter", "max": 5.0, "min": 0.0, "name": "MPC_MAN_Y_TAU", "shortDesc": "Manual yaw rate input filter time constant", "type": "Float", "units": "s"}, {"category": "Standard", "default": 4, "group": "Multicopter Position Control", "longDesc": "The supported sub-modes are: Direct velocity: Sticks directly map to velocity setpoints without smoothing. Also applies to vertical direction and Altitude mode. Useful for velocity control tuning. Acceleration based: Sticks map to acceleration and there's a virtual brake drag", "name": "MPC_POS_MODE", "shortDesc": "Position/Altitude mode variant", "type": "Int32", "values": [{"description": "Direct velocity", "value": 0}, {"description": "Acceleration based", "value": 4}]}, {"category": "Standard", "default": 0, "group": "Multicopter Position Control", "longDesc": "Defines how the throttle stick is mapped to collective thrust in Stabilized mode. Rescale to hover thrust estimate: Stick input is linearly rescaled, such that a centered throttle stick corresponds to the hover thrust estimator's output. No rescale: Directly map the stick 1:1 to the output. Can be useful with very low hover thrust which leads to much distortion and the upper half getting sensitive. Rescale to hover thrust parameter: Similar to rescaling to the hover thrust estimate, but it uses the hover thrust parameter value (see MPC_THR_HOVER) instead of estimated value. With MPC_THR_HOVER 0.5 it's equivalent to No rescale.", "name": "MPC_THR_CURVE", "shortDesc": "Thrust curve mapping in Stabilized Mode", "type": "Int32", "values": [{"description": "Rescale to estimate", "value": 0}, {"description": "No rescale", "value": 1}, {"description": "Rescale to parameter", "value": 2}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "Multicopter Position Control", "increment": 0.01, "longDesc": "Mapped to center throttle stick in Stabilized mode (see MPC_THR_CURVE). Used for initialization of the hover thrust estimator (see MPC_USE_HTE). The estimated hover thrust is used as base for zero vertical acceleration in altitude control. The hover thrust is important for land detection to work correctly.", "max": 0.8, "min": 0.1, "name": "MPC_THR_HOVER", "shortDesc": "Vertical thrust required to hover", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Multicopter Position Control", "increment": 0.05, "longDesc": "Limit allowed thrust e.g. for indoor test of overpowered vehicle.", "max": 1.0, "min": 0.0, "name": "MPC_THR_MAX", "shortDesc": "Maximum collective thrust in climb rate controlled modes", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.12, "group": "Multicopter Position Control", "increment": 0.01, "longDesc": "Too low thrust leads to loss of roll/pitch/yaw torque control authority. With airmode enabled this parameters can be set to 0 while still keeping torque authority (see MC_AIRMODE).", "max": 0.5, "min": 0.05, "name": "MPC_THR_MIN", "shortDesc": "Minimum collective thrust in climb rate controlled modes", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "Multicopter Position Control", "increment": 0.01, "longDesc": "Margin that is kept for horizontal control when higher priority vertical thrust is saturated. To avoid completely starving horizontal control with high vertical error.", "max": 0.5, "min": 0.0, "name": "MPC_THR_XY_MARG", "shortDesc": "Horizontal thrust margin", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 0, "default": 45.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "Absolute maximum for all velocity or acceleration controlled modes. Any higher value is truncated.", "max": 89.0, "min": 20.0, "name": "MPC_TILTMAX_AIR", "shortDesc": "Maximum tilt angle in air", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 0, "default": 12.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "Tighter tilt limit during takeoff to avoid tip over.", "max": 89.0, "min": 5.0, "name": "MPC_TILTMAX_LND", "shortDesc": "Maximum tilt during inital takeoff ramp", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 3.0, "group": "Multicopter Position Control", "longDesc": "Increasing this value will make climb rate controlled takeoff slower. If it's too slow the drone might scratch the ground and tip over. A time constant of 0 disables the ramp", "max": 5.0, "min": 0.0, "name": "MPC_TKO_RAMP_T", "shortDesc": "Smooth takeoff ramp time constant", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.5, "group": "Multicopter Position Control", "max": 5.0, "min": 1.0, "name": "MPC_TKO_SPEED", "shortDesc": "Takeoff climb rate", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 1, "group": "Multicopter Position Control", "longDesc": "Disable to use the fixed parameter MPC_THR_HOVER instead of the hover thrust estimate in the position controller. This parameter does not influence Stabilized mode throttle curve (see MPC_THR_CURVE).", "name": "MPC_USE_HTE", "shortDesc": "Use hover thrust estimate for altitude control", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Multicopter Position Control", "increment": 0.5, "longDesc": "A value of 0 disables the filter.", "max": 50.0, "min": 0.0, "name": "MPC_VELD_LP", "shortDesc": "Velocity derivative low pass cutoff frequency", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Multicopter Position Control", "increment": 0.5, "longDesc": "A value of 0 disables the filter.", "max": 50.0, "min": 0.0, "name": "MPC_VEL_LP", "shortDesc": "Velocity low pass cutoff frequency", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "Must be smaller than MPC_XY_VEL_MAX. The maximum sideways and backward speed can be set differently using MPC_VEL_MAN_SIDE and MPC_VEL_MAN_BACK, respectively.", "max": 20.0, "min": 3.0, "name": "MPC_VEL_MANUAL", "shortDesc": "Maximum horizontal velocity setpoint in Position mode", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "If set to a negative value or larger than MPC_VEL_MANUAL then MPC_VEL_MANUAL is used.", "max": 20.0, "min": -1.0, "name": "MPC_VEL_MAN_BACK", "shortDesc": "Maximum backward velocity in Position mode", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "If set to a negative value or larger than MPC_VEL_MANUAL then MPC_VEL_MANUAL is used.", "max": 20.0, "min": -1.0, "name": "MPC_VEL_MAN_SIDE", "shortDesc": "Maximum sideways velocity in Position mode", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Multicopter Position Control", "increment": 0.5, "longDesc": "A value of 0 disables the filter.", "max": 50.0, "min": 0.0, "name": "MPC_VEL_NF_BW", "shortDesc": "Velocity notch filter bandwidth", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Multicopter Position Control", "increment": 0.5, "longDesc": "The center frequency for the 2nd order notch filter on the velocity. A value of 0 disables the filter.", "max": 50.0, "min": 0.0, "name": "MPC_VEL_NF_FRQ", "shortDesc": "Velocity notch filter frequency", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 0, "default": 5.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "e.g. in Missions, RTL, Goto if the waypoint does not specify differently", "max": 20.0, "min": 3.0, "name": "MPC_XY_CRUISE", "shortDesc": "Default horizontal velocity in autonomous modes", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 2.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "The integration speed of the trajectory setpoint is linearly reduced with the horizontal position tracking error. When the error is above this parameter, the integration of the trajectory is stopped to wait for the drone. This value can be adjusted depending on the tracking capabilities of the vehicle.", "max": 10.0, "min": 0.1, "name": "MPC_XY_ERR_MAX", "shortDesc": "Maximum horizontal error allowed by the trajectory generator", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.6, "group": "Multicopter Position Control", "increment": 0.01, "longDesc": "The higher the value the less sensitivity the stick has around zero while still reaching the maximum value with full stick deflection. 0 Purely linear input curve 1 Purely cubic input curve", "max": 1.0, "min": 0.0, "name": "MPC_XY_MAN_EXPO", "shortDesc": "Manual position control stick exponential curve sensitivity", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.95, "group": "Multicopter Position Control", "increment": 0.1, "longDesc": "Defined as corrective velocity in m/s per m position error", "max": 2.0, "min": 0.0, "name": "MPC_XY_P", "shortDesc": "Proportional gain for horizontal position error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.5, "group": "Multicopter Position Control", "increment": 0.1, "max": 1.0, "min": 0.1, "name": "MPC_XY_TRAJ_P", "shortDesc": "Proportional gain for horizontal trajectory position error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": -10.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "If set to a value greater than zero, other parameters are automatically set (such as MPC_XY_VEL_MAX or MPC_VEL_MANUAL). If set to a negative value, the existing individual parameters are used.", "max": 20.0, "min": -20.0, "name": "MPC_XY_VEL_ALL", "shortDesc": "Overall Horizontal Velocity Limit", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "Multicopter Position Control", "increment": 0.02, "longDesc": "Defined as corrective acceleration in m/s^2 per m/s^2 velocity derivative", "max": 2.0, "min": 0.1, "name": "MPC_XY_VEL_D_ACC", "shortDesc": "Differential gain for horizontal velocity error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.4, "group": "Multicopter Position Control", "increment": 0.02, "longDesc": "Defined as correction acceleration in m/s^2 per m velocity integral Allows to eliminate steady state errors in disturbances like wind.", "max": 60.0, "min": 0.0, "name": "MPC_XY_VEL_I_ACC", "shortDesc": "Integral gain for horizontal velocity error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 12.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "Absolute maximum for all velocity controlled modes. Any higher value is truncated.", "max": 20.0, "min": 0.0, "name": "MPC_XY_VEL_MAX", "shortDesc": "Maximum horizontal velocity", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.8, "group": "Multicopter Position Control", "increment": 0.1, "longDesc": "Defined as corrective acceleration in m/s^2 per m/s velocity error", "max": 5.0, "min": 1.2, "name": "MPC_XY_VEL_P_ACC", "shortDesc": "Proportional gain for horizontal velocity error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.6, "group": "Multicopter Position Control", "increment": 0.01, "longDesc": "The higher the value the less sensitivity the stick has around zero while still reaching the maximum value with full stick deflection. 0 Purely linear input curve 1 Purely cubic input curve", "max": 1.0, "min": 0.0, "name": "MPC_YAW_EXPO", "shortDesc": "Manual control stick yaw rotation exponential curve", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.6, "group": "Multicopter Position Control", "increment": 0.01, "longDesc": "The higher the value the less sensitivity the stick has around zero while still reaching the maximum value with full stick deflection. 0 Purely linear input curve 1 Purely cubic input curve", "max": 1.0, "min": 0.0, "name": "MPC_Z_MAN_EXPO", "shortDesc": "Manual control stick vertical exponential curve", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Multicopter Position Control", "increment": 0.1, "longDesc": "Defined as corrective velocity in m/s per m position error", "max": 1.5, "min": 0.1, "name": "MPC_Z_P", "shortDesc": "Proportional gain for vertical position error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": -3.0, "group": "Multicopter Position Control", "increment": 0.5, "longDesc": "If set to a value greater than zero, other parameters are automatically set (such as MPC_Z_VEL_MAX_UP or MPC_LAND_SPEED). If set to a negative value, the existing individual parameters are used.", "max": 8.0, "min": -3.0, "name": "MPC_Z_VEL_ALL", "shortDesc": "Overall Vertical Velocity Limit", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Multicopter Position Control", "increment": 0.02, "longDesc": "Defined as corrective acceleration in m/s^2 per m/s^2 velocity derivative", "max": 2.0, "min": 0.0, "name": "MPC_Z_VEL_D_ACC", "shortDesc": "Differential gain for vertical velocity error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 2.0, "group": "Multicopter Position Control", "increment": 0.1, "longDesc": "Defined as corrective acceleration in m/s^2 per m velocity integral", "max": 3.0, "min": 0.2, "name": "MPC_Z_VEL_I_ACC", "shortDesc": "Integral gain for vertical velocity error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.5, "group": "Multicopter Position Control", "increment": 0.1, "longDesc": "Absolute maximum for all climb rate controlled modes. In manually piloted modes full stick deflection commands this velocity. For default autonomous velocity see MPC_Z_V_AUTO_UP", "max": 4.0, "min": 0.5, "name": "MPC_Z_VEL_MAX_DN", "shortDesc": "Maximum descent velocity", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "Multicopter Position Control", "increment": 0.1, "longDesc": "Absolute maximum for all climb rate controlled modes. In manually piloted modes full stick deflection commands this velocity. For default autonomous velocity see MPC_Z_V_AUTO_UP", "max": 8.0, "min": 0.5, "name": "MPC_Z_VEL_MAX_UP", "shortDesc": "Maximum ascent velocity", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 4.0, "group": "Multicopter Position Control", "increment": 0.1, "longDesc": "Defined as corrective acceleration in m/s^2 per m/s velocity error", "max": 15.0, "min": 2.0, "name": "MPC_Z_VEL_P_ACC", "shortDesc": "Proportional gain for vertical velocity error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.5, "group": "Multicopter Position Control", "increment": 0.5, "longDesc": "For manual modes and offboard, see MPC_Z_VEL_MAX_DN", "max": 4.0, "min": 0.5, "name": "MPC_Z_V_AUTO_DN", "shortDesc": "Descent velocity in autonomous modes", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "Multicopter Position Control", "increment": 0.5, "longDesc": "For manually controlled modes and offboard see MPC_Z_VEL_MAX_UP", "max": 8.0, "min": 0.5, "name": "MPC_Z_V_AUTO_UP", "shortDesc": "Ascent velocity in autonomous modes", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": -0.4, "group": "Multicopter Position Control", "increment": 0.05, "longDesc": "Changes the overall responsiveness of the vehicle. The higher the value, the faster the vehicle will react. If set to a value greater than zero, other parameters are automatically set (such as the acceleration or jerk limits). If set to a negative value, the existing individual parameters are used.", "max": 1.0, "min": -1.0, "name": "SYS_VEHICLE_RESP", "shortDesc": "Responsiveness", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Multicopter Position Control", "name": "WV_EN", "shortDesc": "Enable weathervane", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1.0, "group": "Multicopter Position Control", "max": 5.0, "min": 0.0, "name": "WV_ROLL_MIN", "shortDesc": "Minimum roll angle setpoint for weathervane controller to demand a yaw-rate", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 90.0, "group": "Multicopter Position Control", "max": 120.0, "min": 0.0, "name": "WV_YRATE_MAX", "shortDesc": "Maximum yawrate the weathervane controller is allowed to demand", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 3.0, "group": "Multicopter Position Slow Mode", "increment": 0.1, "longDesc": "This value is used in slow mode if no aux channel is mapped and no limit is commanded through MAVLink.", "min": 0.1, "name": "MC_SLOW_DEF_HVEL", "shortDesc": "Default horizontal velocity limit", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Multicopter Position Slow Mode", "increment": 0.1, "longDesc": "This value is used in slow mode if no aux channel is mapped and no limit is commanded through MAVLink.", "min": 0.1, "name": "MC_SLOW_DEF_VVEL", "shortDesc": "Default vertical velocity limit", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 0, "default": 45.0, "group": "Multicopter Position Slow Mode", "increment": 0.1, "longDesc": "This value is used in slow mode if no aux channel is mapped and no limit is commanded through MAVLink.", "min": 1.0, "name": "MC_SLOW_DEF_YAWR", "shortDesc": "Default yaw rate limit", "type": "Float", "units": "deg/s"}, {"category": "Standard", "default": 0, "group": "Multicopter Position Slow Mode", "name": "MC_SLOW_MAP_HVEL", "shortDesc": "Manual input mapped to scale horizontal velocity in position slow mode", "type": "Int32", "values": [{"description": "No rescaling", "value": 0}, {"description": "AUX1", "value": 1}, {"description": "AUX2", "value": 2}, {"description": "AUX3", "value": 3}, {"description": "AUX4", "value": 4}, {"description": "AUX5", "value": 5}, {"description": "AUX6", "value": 6}]}, {"category": "Standard", "default": 0, "group": "Multicopter Position Slow Mode", "name": "MC_SLOW_MAP_PTCH", "shortDesc": "RC_MAP_AUX{N} to allow for gimbal pitch rate control in position slow mode", "type": "Int32", "values": [{"description": "No pitch rate input", "value": 0}, {"description": "AUX1", "value": 1}, {"description": "AUX2", "value": 2}, {"description": "AUX3", "value": 3}, {"description": "AUX4", "value": 4}, {"description": "AUX5", "value": 5}, {"description": "AUX6", "value": 6}]}, {"category": "Standard", "default": 0, "group": "Multicopter Position Slow Mode", "name": "MC_SLOW_MAP_VVEL", "shortDesc": "Manual input mapped to scale vertical velocity in position slow mode", "type": "Int32", "values": [{"description": "No rescaling", "value": 0}, {"description": "AUX1", "value": 1}, {"description": "AUX2", "value": 2}, {"description": "AUX3", "value": 3}, {"description": "AUX4", "value": 4}, {"description": "AUX5", "value": 5}, {"description": "AUX6", "value": 6}]}, {"category": "Standard", "default": 0, "group": "Multicopter Position Slow Mode", "name": "MC_SLOW_MAP_YAWR", "shortDesc": "Manual input mapped to scale yaw rate in position slow mode", "type": "Int32", "values": [{"description": "No rescaling", "value": 0}, {"description": "AUX1", "value": 1}, {"description": "AUX2", "value": 2}, {"description": "AUX3", "value": 3}, {"description": "AUX4", "value": 4}, {"description": "AUX5", "value": 5}, {"description": "AUX6", "value": 6}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "Multicopter Position Slow Mode", "increment": 0.1, "longDesc": "The lowest input maps and is clamped to this velocity.", "min": 0.1, "name": "MC_SLOW_MIN_HVEL", "shortDesc": "Horizontal velocity lower limit", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "Multicopter Position Slow Mode", "increment": 0.1, "longDesc": "The lowest input maps and is clamped to this velocity.", "min": 0.1, "name": "MC_SLOW_MIN_VVEL", "shortDesc": "Vertical velocity lower limit", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 0, "default": 3.0, "group": "Multicopter Position Slow Mode", "increment": 0.1, "longDesc": "The lowest input maps and is clamped to this rate.", "min": 1.0, "name": "MC_SLOW_MIN_YAWR", "shortDesc": "Yaw rate lower limit", "type": "Float", "units": "deg/s"}, {"category": "Standard", "default": 0, "group": "Multicopter Rate Control", "longDesc": "This compensates for voltage drop of the battery over time by attempting to normalize performance across the operating range of the battery. The copter should constantly behave as if it was fully charged with reduced max acceleration at lower battery percentages. i.e. if hover is at 0.5 throttle at 100% battery, it will still be 0.5 at 60% battery.", "name": "MC_BAT_SCALE_EN", "shortDesc": "Battery power level scaler", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 4, "default": 0.003, "group": "Multicopter Rate Control", "increment": 0.0005, "longDesc": "Pitch rate differential gain. Small values help reduce fast oscillations. If value is too big oscillations will appear again.", "min": 0.0, "name": "MC_PITCHRATE_D", "shortDesc": "Pitch rate D gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.0, "group": "Multicopter Rate Control", "longDesc": "Improves tracking performance.", "min": 0.0, "name": "MC_PITCHRATE_FF", "shortDesc": "Pitch rate feedforward", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.2, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Pitch rate integral gain. Can be set to compensate static thrust difference or gravity center offset.", "min": 0.0, "name": "MC_PITCHRATE_I", "shortDesc": "Pitch rate I gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 4, "default": 1.0, "group": "Multicopter Rate Control", "increment": 0.0005, "longDesc": "Global gain of the controller. This gain scales the P, I and D terms of the controller: output = MC_PITCHRATE_K * (MC_PITCHRATE_P * error + MC_PITCHRATE_I * error_integral + MC_PITCHRATE_D * error_derivative) Set MC_PITCHRATE_P=1 to implement a PID in the ideal form. Set MC_PITCHRATE_K=1 to implement a PID in the parallel form.", "max": 5.0, "min": 0.01, "name": "MC_PITCHRATE_K", "shortDesc": "Pitch rate controller gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.15, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Pitch rate proportional gain, i.e. control output for angular speed error 1 rad/s.", "max": 0.6, "min": 0.01, "name": "MC_PITCHRATE_P", "shortDesc": "Pitch rate P gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Pitch rate integrator limit. Can be set to increase the amount of integrator available to counteract disturbances or reduced to improve settling time after large pitch moment trim changes.", "min": 0.0, "name": "MC_PR_INT_LIM", "shortDesc": "Pitch rate integrator limit", "type": "Float"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.003, "group": "Multicopter Rate Control", "increment": 0.0005, "longDesc": "Roll rate differential gain. Small values help reduce fast oscillations. If value is too big oscillations will appear again.", "max": 0.01, "min": 0.0, "name": "MC_ROLLRATE_D", "shortDesc": "Roll rate D gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.0, "group": "Multicopter Rate Control", "longDesc": "Improves tracking performance.", "min": 0.0, "name": "MC_ROLLRATE_FF", "shortDesc": "Roll rate feedforward", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.2, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Roll rate integral gain. Can be set to compensate static thrust difference or gravity center offset.", "min": 0.0, "name": "MC_ROLLRATE_I", "shortDesc": "Roll rate I gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 4, "default": 1.0, "group": "Multicopter Rate Control", "increment": 0.0005, "longDesc": "Global gain of the controller. This gain scales the P, I and D terms of the controller: output = MC_ROLLRATE_K * (MC_ROLLRATE_P * error + MC_ROLLRATE_I * error_integral + MC_ROLLRATE_D * error_derivative) Set MC_ROLLRATE_P=1 to implement a PID in the ideal form. Set MC_ROLLRATE_K=1 to implement a PID in the parallel form.", "max": 5.0, "min": 0.01, "name": "MC_ROLLRATE_K", "shortDesc": "Roll rate controller gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.15, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Roll rate proportional gain, i.e. control output for angular speed error 1 rad/s.", "max": 0.5, "min": 0.01, "name": "MC_ROLLRATE_P", "shortDesc": "Roll rate P gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Roll rate integrator limit. Can be set to increase the amount of integrator available to counteract disturbances or reduced to improve settling time after large roll moment trim changes.", "min": 0.0, "name": "MC_RR_INT_LIM", "shortDesc": "Roll rate integrator limit", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Yaw rate differential gain. Small values help reduce fast oscillations. If value is too big oscillations will appear again.", "min": 0.0, "name": "MC_YAWRATE_D", "shortDesc": "Yaw rate D gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.0, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Improves tracking performance.", "min": 0.0, "name": "MC_YAWRATE_FF", "shortDesc": "Yaw rate feedforward", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Yaw rate integral gain. Can be set to compensate static thrust difference or gravity center offset.", "min": 0.0, "name": "MC_YAWRATE_I", "shortDesc": "Yaw rate I gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 4, "default": 1.0, "group": "Multicopter Rate Control", "increment": 0.0005, "longDesc": "Global gain of the controller. This gain scales the P, I and D terms of the controller: output = MC_YAWRATE_K * (MC_YAWRATE_P * error + MC_YAWRATE_I * error_integral + MC_YAWRATE_D * error_derivative) Set MC_YAWRATE_P=1 to implement a PID in the ideal form. Set MC_YAWRATE_K=1 to implement a PID in the parallel form.", "max": 5.0, "min": 0.0, "name": "MC_YAWRATE_K", "shortDesc": "Yaw rate controller gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Yaw rate proportional gain, i.e. control output for angular speed error 1 rad/s.", "max": 0.6, "min": 0.0, "name": "MC_YAWRATE_P", "shortDesc": "Yaw rate P gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 2.0, "group": "Multicopter Rate Control", "longDesc": "Reduces vibrations by lowering high frequency torque caused by rotor acceleration. 0 disables the filter", "max": 10.0, "min": 0.0, "name": "MC_YAW_TQ_CUTOFF", "shortDesc": "Low pass filter cutoff frequency for yaw torque setpoint", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Yaw rate integrator limit. Can be set to increase the amount of integrator available to counteract disturbances or reduced to improve settling time after large yaw moment trim changes.", "min": 0.0, "name": "MC_YR_INT_LIM", "shortDesc": "Yaw rate integrator limit", "type": "Float"}, {"category": "Standard", "default": 0, "group": "OSD", "longDesc": "Controls the vertical position of the crosshair display. Resolution is limited by OSD to 15 discrete values. Negative values will display the crosshairs below the horizon", "max": 8, "min": -8, "name": "OSD_CH_HEIGHT", "shortDesc": "OSD Crosshairs Height", "type": "Int32"}, {"category": "Standard", "default": 500, "group": "OSD", "longDesc": "Amount of time in milliseconds to dwell at the beginning of the display, when scrolling.", "max": 10000, "min": 100, "name": "OSD_DWELL_TIME", "shortDesc": "OSD Dwell Time (ms)", "type": "Int32"}, {"category": "Standard", "default": 3, "group": "OSD", "longDesc": "Minimum security of log level to display on the OSD.", "name": "OSD_LOG_LEVEL", "shortDesc": "OSD Warning Level", "type": "Int32"}, {"category": "Standard", "default": 125, "group": "OSD", "longDesc": "Scroll rate in milliseconds for OSD messages longer than available character width. This is lower-bounded by the nominal loop rate of this module.", "max": 1000, "min": 100, "name": "OSD_SCROLL_RATE", "shortDesc": "OSD Scroll Rate (ms)", "type": "Int32"}, {"bitmask": [{"description": "CRAFT_NAME", "index": 0}, {"description": "DISARMED", "index": 1}, {"description": "GPS_LAT", "index": 2}, {"description": "GPS_LON", "index": 3}, {"description": "GPS_SATS", "index": 4}, {"description": "GPS_SPEED", "index": 5}, {"description": "HOME_DIST", "index": 6}, {"description": "HOME_DIR", "index": 7}, {"description": "MAIN_BATT_VOLTAGE", "index": 8}, {"description": "CURRENT_DRAW", "index": 9}, {"description": "MAH_DRAWN", "index": 10}, {"description": "RSSI_VALUE", "index": 11}, {"description": "ALTITUDE", "index": 12}, {"description": "NUMERICAL_VARIO", "index": 13}, {"description": "(unused) FLYMODE", "index": 14}, {"description": "(unused) ESC_TMP", "index": 15}, {"description": "(unused) PITCH_ANGLE", "index": 16}, {"description": "(unused) ROLL_ANGLE", "index": 17}, {"description": "CROSSHAIRS", "index": 18}, {"description": "AVG_CELL_VOLTAGE", "index": 19}, {"description": "(unused) HORIZON_SIDEBARS", "index": 20}, {"description": "POWER", "index": 21}], "category": "Standard", "default": 16383, "group": "OSD", "longDesc": "Configure / toggle support display options.", "max": 4194303, "min": 0, "name": "OSD_SYMBOLS", "shortDesc": "OSD Symbol Selection", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "PWM Outputs", "increment": 0.1, "longDesc": "Parameter used to model the nonlinear relationship between motor control signal (e.g. PWM) and static thrust. The model is: rel_thrust = factor * rel_signal^2 + (1-factor) * rel_signal, where rel_thrust is the normalized thrust between 0 and 1, and rel_signal is the relative motor control signal between 0 and 1.", "max": 1.0, "min": 0.0, "name": "THR_MDL_FAC", "shortDesc": "Thrust to motor control signal model parameter", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Payload Deliverer", "name": "PD_GRIPPER_EN", "rebootRequired": true, "shortDesc": "Enable Gripper actuation in Payload Deliverer", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 3.0, "group": "Payload Deliverer", "longDesc": "Maximum time Gripper will wait while the successful griper actuation isn't recognised. If the gripper has no feedback sensor, it will simply wait for this time before considering gripper actuation successful and publish a 'VehicleCommandAck' signaling successful gripper action", "min": 0.0, "name": "PD_GRIPPER_TO", "shortDesc": "Timeout for successful gripper actuation acknowledgement", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Payload Deliverer", "max": 0, "min": -1, "name": "PD_GRIPPER_TYPE", "shortDesc": "Type of Gripper (Servo, etc.)", "type": "Int32", "values": [{"description": "Undefined", "value": -1}, {"description": "Servo", "value": 0}]}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Precision Land", "increment": 0.5, "longDesc": "Time after which the landing target is considered lost without any new measurements.", "max": 50.0, "min": 0.0, "name": "PLD_BTOUT", "shortDesc": "Landing Target Timeout", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Precision Land", "increment": 0.1, "longDesc": "Allow final approach (without horizontal positioning) if losing landing target closer than this to the ground.", "max": 10.0, "min": 0.0, "name": "PLD_FAPPR_ALT", "shortDesc": "Final approach altitude", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "Precision Land", "increment": 0.1, "longDesc": "Start descending if closer above landing target than this.", "max": 10.0, "min": 0.0, "name": "PLD_HACC_RAD", "shortDesc": "Horizontal acceptance radius", "type": "Float", "units": "m"}, {"category": "Standard", "default": 3, "group": "Precision Land", "longDesc": "Maximum number of times to search for the landing target if it is lost during the precision landing.", "max": 100, "min": 0, "name": "PLD_MAX_SRCH", "shortDesc": "Maximum number of search attempts", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Precision Land", "increment": 0.1, "longDesc": "Altitude above home to which to climb when searching for the landing target.", "max": 100.0, "min": 0.0, "name": "PLD_SRCH_ALT", "shortDesc": "Search altitude", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Precision Land", "increment": 0.1, "longDesc": "Time allowed to search for the landing target before falling back to normal landing.", "max": 100.0, "min": 0.0, "name": "PLD_SRCH_TOUT", "shortDesc": "Search timeout", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Pure Pursuit", "increment": 0.01, "longDesc": "Lower value -> More aggressive controller (beware overshoot/oscillations)", "max": 100.0, "min": 0.1, "name": "PP_LOOKAHD_GAIN", "shortDesc": "Tuning parameter for the pure pursuit controller", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 10.0, "group": "Pure Pursuit", "increment": 0.01, "max": 100.0, "min": 0.1, "name": "PP_LOOKAHD_MAX", "shortDesc": "Maximum lookahead distance for the pure pursuit controller", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Pure Pursuit", "increment": 0.01, "max": 100.0, "min": 0.1, "name": "PP_LOOKAHD_MIN", "shortDesc": "Minimum lookahead distance for the pure pursuit controller", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC10_DZ", "shortDesc": "RC channel 10 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC10_MAX", "shortDesc": "RC channel 10 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC10_MIN", "shortDesc": "RC channel 10 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC10_REV", "shortDesc": "RC channel 10 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC10_TRIM", "shortDesc": "RC channel 10 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC11_DZ", "shortDesc": "RC channel 11 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC11_MAX", "shortDesc": "RC channel 11 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC11_MIN", "shortDesc": "RC channel 11 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC11_REV", "shortDesc": "RC channel 11 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC11_TRIM", "shortDesc": "RC channel 11 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC12_DZ", "shortDesc": "RC channel 12 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC12_MAX", "shortDesc": "RC channel 12 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC12_MIN", "shortDesc": "RC channel 12 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC12_REV", "shortDesc": "RC channel 12 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC12_TRIM", "shortDesc": "RC channel 12 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC13_DZ", "shortDesc": "RC channel 13 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC13_MAX", "shortDesc": "RC channel 13 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC13_MIN", "shortDesc": "RC channel 13 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC13_REV", "shortDesc": "RC channel 13 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC13_TRIM", "shortDesc": "RC channel 13 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC14_DZ", "shortDesc": "RC channel 14 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC14_MAX", "shortDesc": "RC channel 14 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC14_MIN", "shortDesc": "RC channel 14 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC14_REV", "shortDesc": "RC channel 14 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC14_TRIM", "shortDesc": "RC channel 14 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC15_DZ", "shortDesc": "RC channel 15 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC15_MAX", "shortDesc": "RC channel 15 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC15_MIN", "shortDesc": "RC channel 15 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC15_REV", "shortDesc": "RC channel 15 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC15_TRIM", "shortDesc": "RC channel 15 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC16_DZ", "shortDesc": "RC channel 16 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC16_MAX", "shortDesc": "RC channel 16 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC16_MIN", "shortDesc": "RC channel 16 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC16_REV", "shortDesc": "RC channel 16 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC16_TRIM", "shortDesc": "RC channel 16 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC17_DZ", "shortDesc": "RC channel 17 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC17_MAX", "shortDesc": "RC channel 17 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC17_MIN", "shortDesc": "RC channel 17 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC17_REV", "shortDesc": "RC channel 17 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC17_TRIM", "shortDesc": "RC channel 17 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC18_DZ", "shortDesc": "RC channel 18 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC18_MAX", "shortDesc": "RC channel 18 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC18_MIN", "shortDesc": "RC channel 18 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC18_REV", "shortDesc": "RC channel 18 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC18_TRIM", "shortDesc": "RC channel 18 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 10.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC1_DZ", "shortDesc": "RC channel 1 dead zone", "type": "Float", "units": "us"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for RC channel 1", "max": 2200.0, "min": 1500.0, "name": "RC1_MAX", "shortDesc": "RC channel 1 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for RC channel 1", "max": 1500.0, "min": 800.0, "name": "RC1_MIN", "shortDesc": "RC channel 1 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC1_REV", "shortDesc": "RC channel 1 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC1_TRIM", "shortDesc": "RC channel 1 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 10.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC2_DZ", "shortDesc": "RC channel 2 dead zone", "type": "Float", "units": "us"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC2_MAX", "shortDesc": "RC channel 2 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC2_MIN", "shortDesc": "RC channel 2 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC2_REV", "shortDesc": "RC channel 2 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC2_TRIM", "shortDesc": "RC channel 2 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 10.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC3_DZ", "shortDesc": "RC channel 3 dead zone", "type": "Float", "units": "us"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC3_MAX", "shortDesc": "RC channel 3 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC3_MIN", "shortDesc": "RC channel 3 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC3_REV", "shortDesc": "RC channel 3 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC3_TRIM", "shortDesc": "RC channel 3 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 10.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC4_DZ", "shortDesc": "RC channel 4 dead zone", "type": "Float", "units": "us"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC4_MAX", "shortDesc": "RC channel 4 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC4_MIN", "shortDesc": "RC channel 4 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC4_REV", "shortDesc": "RC channel 4 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC4_TRIM", "shortDesc": "RC channel 4 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 10.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC5_DZ", "shortDesc": "RC channel 5 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC5_MAX", "shortDesc": "RC channel 5 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC5_MIN", "shortDesc": "RC channel 5 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC5_REV", "shortDesc": "RC channel 5 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC5_TRIM", "shortDesc": "RC channel 5 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 10.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC6_DZ", "shortDesc": "RC channel 6 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC6_MAX", "shortDesc": "RC channel 6 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC6_MIN", "shortDesc": "RC channel 6 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC6_REV", "shortDesc": "RC channel 6 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC6_TRIM", "shortDesc": "RC channel 6 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 10.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC7_DZ", "shortDesc": "RC channel 7 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC7_MAX", "shortDesc": "RC channel 7 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC7_MIN", "shortDesc": "RC channel 7 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC7_REV", "shortDesc": "RC channel 7 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC7_TRIM", "shortDesc": "RC channel 7 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 10.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC8_DZ", "shortDesc": "RC channel 8 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC8_MAX", "shortDesc": "RC channel 8 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC8_MIN", "shortDesc": "RC channel 8 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC8_REV", "shortDesc": "RC channel 8 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC8_TRIM", "shortDesc": "RC channel 8 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC9_DZ", "shortDesc": "RC channel 9 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC9_MAX", "shortDesc": "RC channel 9 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC9_MIN", "shortDesc": "RC channel 9 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC9_REV", "shortDesc": "RC channel 9 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC9_TRIM", "shortDesc": "RC channel 9 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "This parameter is used by Ground Station software to save the number of channels which were used during RC calibration. It is only meant for ground station use.", "max": 18, "min": 0, "name": "RC_CHAN_CNT", "shortDesc": "RC channel count", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "Use RC_MAP_FAILSAFE to specify which channel is used to indicate RC loss via this threshold. By default this is the throttle channel. Set to a PWM value slightly above the PWM value for the channel (e.g. throttle) in a failsafe event, but below the minimum PWM value for the channel during normal operation. Note: The default value of 0 disables the feature (it is below the expected range).", "max": 2200, "min": 0, "name": "RC_FAILS_THR", "shortDesc": "Failsafe channel PWM threshold", "type": "Int32", "units": "us"}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "max": 18, "min": 0, "name": "RC_MAP_AUX1", "shortDesc": "AUX1 Passthrough RC channel", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "max": 18, "min": 0, "name": "RC_MAP_AUX2", "shortDesc": "AUX2 Passthrough RC channel", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "max": 18, "min": 0, "name": "RC_MAP_AUX3", "shortDesc": "AUX3 Passthrough RC channel", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "max": 18, "min": 0, "name": "RC_MAP_AUX4", "shortDesc": "AUX4 Passthrough RC channel", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "max": 18, "min": 0, "name": "RC_MAP_AUX5", "shortDesc": "AUX5 Passthrough RC channel", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "max": 18, "min": 0, "name": "RC_MAP_AUX6", "shortDesc": "AUX6 Passthrough RC channel", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "max": 18, "min": 0, "name": "RC_MAP_ENG_MOT", "shortDesc": "RC channel to engage the main motor (for helicopters)", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "Configures which RC channel is used by the receiver to indicate the signal was lost (on receivers that use output a fixed signal value to report lost signal). If set to 0, the channel mapped to throttle is used. Use RC_FAILS_THR to set the threshold indicating lost signal. By default it's below the expected range and hence disabled.", "max": 18, "min": 0, "name": "RC_MAP_FAILSAFE", "shortDesc": "Failsafe channel mapping", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "Can be used for parameter tuning with the RC. This one is further referenced as the 1st parameter channel. Set to 0 to deactivate *", "max": 18, "min": 0, "name": "RC_MAP_PARAM1", "shortDesc": "PARAM1 tuning channel", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "Can be used for parameter tuning with the RC. This one is further referenced as the 2nd parameter channel. Set to 0 to deactivate *", "max": 18, "min": 0, "name": "RC_MAP_PARAM2", "shortDesc": "PARAM2 tuning channel", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "Can be used for parameter tuning with the RC. This one is further referenced as the 3th parameter channel. Set to 0 to deactivate *", "max": 18, "min": 0, "name": "RC_MAP_PARAM3", "shortDesc": "PARAM3 tuning channel", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "The channel index (starting from 1 for channel 1) indicates which channel should be used for reading pitch inputs from. A value of zero indicates the switch is not assigned.", "max": 18, "min": 0, "name": "RC_MAP_PITCH", "shortDesc": "Pitch control channel mapping", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "The channel index (starting from 1 for channel 1) indicates which channel should be used for reading roll inputs from. A value of zero indicates the switch is not assigned.", "max": 18, "min": 0, "name": "RC_MAP_ROLL", "shortDesc": "Roll control channel mapping", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "The channel index (starting from 1 for channel 1) indicates which channel should be used for reading throttle inputs from. A value of zero indicates the switch is not assigned.", "max": 18, "min": 0, "name": "RC_MAP_THROTTLE", "shortDesc": "Throttle control channel mapping", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "The channel index (starting from 1 for channel 1) indicates which channel should be used for reading yaw inputs from. A value of zero indicates the switch is not assigned.", "max": 18, "min": 0, "name": "RC_MAP_YAW", "shortDesc": "Yaw control channel mapping", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "0: do not read RSSI from input channel 1-18: read RSSI from specified input channel Specify the range for RSSI input with RC_RSSI_PWM_MIN and RC_RSSI_PWM_MAX parameters.", "max": 18, "min": 0, "name": "RC_RSSI_PWM_CHAN", "shortDesc": "PWM input channel that provides RSSI", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 2000, "group": "Radio Calibration", "longDesc": "Only used if RC_RSSI_PWM_CHAN > 0", "max": 2000, "min": 0, "name": "RC_RSSI_PWM_MAX", "shortDesc": "Max input value for RSSI reading", "type": "Int32"}, {"category": "Standard", "default": 1000, "group": "Radio Calibration", "longDesc": "Only used if RC_RSSI_PWM_CHAN > 0", "max": 2000, "min": 0, "name": "RC_RSSI_PWM_MIN", "shortDesc": "Min input value for RSSI reading", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Radio Calibration", "increment": 0.01, "longDesc": "The trim value is the actuator control value the system needs for straight and level flight.", "max": 0.5, "min": -0.5, "name": "TRIM_PITCH", "shortDesc": "Pitch trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Radio Calibration", "increment": 0.01, "longDesc": "The trim value is the actuator control value the system needs for straight and level flight.", "max": 0.5, "min": -0.5, "name": "TRIM_ROLL", "shortDesc": "Roll trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Radio Calibration", "increment": 0.01, "longDesc": "The trim value is the actuator control value the system needs for straight and level flight.", "max": 0.5, "min": -0.5, "name": "TRIM_YAW", "shortDesc": "Yaw trim", "type": "Float"}, {"category": "Standard", "default": 0.75, "group": "Radio Switches", "longDesc": "0-1 indicate where in the full channel range the threshold sits 0 : min 1 : max sign indicates polarity of comparison positive : true when channel>th negative : true when channelth negative : true when channelth negative : true when channelth negative : true when channelth negative : true when channelth negative : true when channelth negative : true when channelth negative : true when channelth negative : true when channel The rover starts to cut the corner earlier.", "max": 100.0, "min": 1.0, "name": "RA_ACC_RAD_GAIN", "shortDesc": "Tuning parameter for corner cutting", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Ackermann", "increment": 0.01, "longDesc": "The controller scales the acceptance radius based on the angle between the previous, current and next waypoint. Higher value -> smoother trajectory at the cost of how close the rover gets to the waypoint (Set to -1 to disable corner cutting).", "max": 100.0, "min": -1.0, "name": "RA_ACC_RAD_MAX", "shortDesc": "Maximum acceptance radius for the waypoints", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Rover Ackermann", "increment": 0.01, "max": 1.5708, "min": 0.0, "name": "RA_MAX_STR_ANG", "shortDesc": "Maximum steering angle", "type": "Float", "units": "rad"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Ackermann", "increment": 0.01, "longDesc": "Set to -1 to disable.", "max": 1000.0, "min": -1.0, "name": "RA_STR_RATE_LIM", "shortDesc": "Steering rate limit", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Rover Ackermann", "increment": 0.001, "longDesc": "Distance from the front to the rear axle.", "max": 100.0, "min": 0.0, "name": "RA_WHEEL_BASE", "shortDesc": "Wheel base", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Rover Attitude Control", "increment": 0.01, "max": 100.0, "min": 0.0, "name": "RO_YAW_P", "shortDesc": "Proportional gain for closed loop yaw controller", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Rover Differential", "increment": 0.01, "longDesc": "This parameter is used to calculate the feedforward term of the closed loop yaw rate control. The controller first calculates the required speed difference between the left and right motor to achieve the desired yaw rate. This desired speed difference is then linearly mapped to normalized motor commands. A good starting point is half the speed the rover drives at maximum throttle (RD_MAX_THR_SPD)). Increase this parameter if the rover turns faster than the setpoint, and decrease if the rover turns slower.", "max": 100.0, "min": 0.0, "name": "RD_MAX_THR_YAW_R", "shortDesc": "Yaw rate turning left/right wheels at max speed in opposite directions", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Differential", "increment": 0.01, "longDesc": "The waypoint transition speed is calculated as: Transition_speed = Maximum_speed * (1 - normalized_transition_angle * RM_MISS_VEL_GAIN) The normalized transition angle is the angle between the line segment from prev-curr WP and curr-next WP interpolated from [0, 180] -> [0, 1]. Higher value -> More speed reduction during waypoint transitions. Set to -1 to disable any speed reduction during waypoint transition.", "max": 100.0, "min": -1.0, "name": "RD_MISS_SPD_GAIN", "shortDesc": "Tuning parameter for the speed reduction during waypoint transition", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.174533, "group": "Rover Differential", "increment": 0.01, "longDesc": "This threshold is used for the state machine to switch from driving to turning based on the error between the desired and actual yaw. It is also used as the threshold whether the rover should come to a smooth stop at the next waypoint. This slow down effect is active if the angle between the line segments from prevWP-currWP and currWP-nextWP is smaller then 180 - RD_TRANS_DRV_TRN.", "max": 3.14159, "min": 0.001, "name": "RD_TRANS_DRV_TRN", "shortDesc": "Yaw error threshhold to switch from driving to spot turning", "type": "Float", "units": "rad"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0872665, "group": "Rover Differential", "increment": 0.01, "longDesc": "This threshold is used for the state machine to switch from turning to driving based on the error between the desired and actual yaw.", "max": 3.14159, "min": 0.001, "name": "RD_TRANS_TRN_DRV", "shortDesc": "Yaw error threshhold to switch from spot turning to driving", "type": "Float", "units": "rad"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Rover Differential", "increment": 0.001, "longDesc": "Distance from the center of the right wheel to the center of the left wheel.", "max": 100.0, "min": 0.0, "name": "RD_WHEEL_TRACK", "shortDesc": "Wheel track", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.17, "group": "Rover Mecanum", "increment": 0.01, "longDesc": "Threshold for the angle between the active cruise direction and the cruise direction given by the stick inputs. This can be understood as a deadzone for the combined stick inputs for forward/backwards and lateral speed which defines a course direction.", "max": 3.14, "min": 0.0, "name": "RM_COURSE_CTL_TH", "shortDesc": "Threshold to update course control in manual position mode", "type": "Float", "units": "rad"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Rover Mecanum", "increment": 0.01, "longDesc": "This parameter is used to calculate the feedforward term of the closed loop yaw rate control. The controller first calculates the required speed difference between the left and right motor to achieve the desired yaw rate. This desired speed difference is then linearly mapped to normalized motor commands. A good starting point is half the speed the rover drives at maximum throttle (RD_MAX_THR_SPD)). Increase this parameter if the rover turns faster than the setpoint, and decrease if the rover turns slower.", "max": 100.0, "min": 0.0, "name": "RM_MAX_THR_YAW_R", "shortDesc": "Yaw rate turning left/right wheels at max speed in opposite directions", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Mecanum", "increment": 0.01, "longDesc": "The waypoint transition speed is calculated as: Transition_speed = Maximum_speed * (1 - normalized_transition_angle * RM_MISS_VEL_GAIN) The normalized transition angle is the angle between the line segment from prev-curr waypoint and curr-next waypoint interpolated from [0, 180] -> [0, 1]. Higher value -> More speed reduction during waypoint transitions. Set to -1 to disable any speed reduction during waypoint transition.", "max": 100.0, "min": -1.0, "name": "RM_MISS_SPD_GAIN", "shortDesc": "Tuning parameter for the speed reduction during waypoint transition", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Rover Mecanum", "increment": 0.001, "longDesc": "Distance from the center of the right wheel to the center of the left wheel.", "max": 100.0, "min": 0.0, "name": "RM_WHEEL_TRACK", "shortDesc": "Wheel track", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.75, "group": "Rover Position Control (Deprecated)", "increment": 0.05, "longDesc": "Damping factor for L1 control.", "max": 0.9, "min": 0.6, "name": "GND_L1_DAMPING", "shortDesc": "L1 damping", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Rover Position Control (Deprecated)", "increment": 0.1, "longDesc": "This is the distance at which the next waypoint is activated. This should be set to about 2-4x of GND_WHEEL_BASE and not smaller than one meter (due to GPS accuracy).", "max": 50.0, "min": 1.0, "name": "GND_L1_DIST", "shortDesc": "L1 distance", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Rover Position Control (Deprecated)", "increment": 0.5, "longDesc": "This is the L1 distance and defines the tracking point ahead of the rover it's following. Use values around 2-5m for a 0.3m wheel base. Tuning instructions: Shorten slowly during tuning until response is sharp without oscillation.", "max": 50.0, "min": 0.5, "name": "GND_L1_PERIOD", "shortDesc": "L1 period", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 150.0, "group": "Rover Position Control (Deprecated)", "max": 400.0, "min": 0.0, "name": "GND_MAN_Y_MAX", "shortDesc": "Max manual yaw rate", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.7854, "group": "Rover Position Control (Deprecated)", "increment": 0.01, "longDesc": "At a control output of 0, the steering wheels are at 0 radians. At a control output of 1, the steering wheels are at GND_MAX_ANG radians.", "max": 3.14159, "min": 0.0, "name": "GND_MAX_ANG", "shortDesc": "Maximum turn angle for Ackerman steering", "type": "Float", "units": "rad"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.001, "group": "Rover Position Control (Deprecated)", "increment": 0.005, "longDesc": "This is the derivative gain for the speed closed loop controller", "max": 50.0, "min": 0.0, "name": "GND_SPEED_D", "shortDesc": "Speed proportional gain", "type": "Float", "units": "%m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 3.0, "group": "Rover Position Control (Deprecated)", "increment": 0.005, "longDesc": "This is the integral gain for the speed closed loop controller", "max": 50.0, "min": 0.0, "name": "GND_SPEED_I", "shortDesc": "Speed Integral gain", "type": "Float", "units": "%m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Rover Position Control (Deprecated)", "increment": 0.005, "longDesc": "This is the maxim value the integral can reach to prevent wind-up.", "max": 50.0, "min": 0.005, "name": "GND_SPEED_IMAX", "shortDesc": "Speed integral maximum value", "type": "Float", "units": "%m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Rover Position Control (Deprecated)", "increment": 0.5, "max": 40.0, "min": 0.0, "name": "GND_SPEED_MAX", "shortDesc": "Maximum ground speed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 2.0, "group": "Rover Position Control (Deprecated)", "increment": 0.005, "longDesc": "This is the proportional gain for the speed closed loop controller", "max": 50.0, "min": 0.005, "name": "GND_SPEED_P", "shortDesc": "Speed proportional gain", "type": "Float", "units": "%m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Rover Position Control (Deprecated)", "increment": 0.005, "longDesc": "This is a gain to map the speed control output to the throttle linearly.", "max": 50.0, "min": 0.005, "name": "GND_SPEED_THR_SC", "shortDesc": "Speed to throttle scaler", "type": "Float", "units": "%m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "Rover Position Control (Deprecated)", "increment": 0.5, "max": 40.0, "min": 0.0, "name": "GND_SPEED_TRIM", "shortDesc": "Trim ground speed", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 1, "group": "Rover Position Control (Deprecated)", "longDesc": "This allows the user to choose between closed loop gps speed or open loop cruise throttle speed", "max": 1, "min": 0, "name": "GND_SP_CTRL_MODE", "shortDesc": "Control mode for speed", "type": "Int32", "values": [{"description": "open loop control", "value": 0}, {"description": "close the loop with gps speed", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Rover Position Control (Deprecated)", "increment": 0.01, "longDesc": "This is the throttle setting required to achieve the desired cruise speed. 10% is ok for a traxxas stampede vxl with ESC set to training mode", "max": 1.0, "min": 0.0, "name": "GND_THR_CRUISE", "shortDesc": "Cruise throttle", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "Rover Position Control (Deprecated)", "increment": 0.01, "longDesc": "This is the maximum throttle % that can be used by the controller. For a Traxxas stampede vxl with the ESC set to training, 30 % is enough", "max": 1.0, "min": 0.0, "name": "GND_THR_MAX", "shortDesc": "Throttle limit max", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Rover Position Control (Deprecated)", "increment": 0.01, "longDesc": "This is the minimum throttle % that can be used by the controller. Set to 0 for rover", "max": 1.0, "min": 0.0, "name": "GND_THR_MIN", "shortDesc": "Throttle limit min", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.31, "group": "Rover Position Control (Deprecated)", "increment": 0.01, "longDesc": "A value of 0.31 is typical for 1/10 RC cars.", "min": 0.0, "name": "GND_WHEEL_BASE", "shortDesc": "Distance from front axle to rear axle", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Rate Control", "increment": 0.01, "longDesc": "Used to cap how quickly the magnitude of yaw rate setpoints can increase. Set to -1 to disable.", "max": 10000.0, "min": -1.0, "name": "RO_YAW_ACCEL_LIM", "shortDesc": "Yaw acceleration limit", "type": "Float", "units": "deg/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Rate Control", "increment": 0.01, "longDesc": "Used to cap how quickly the magnitude of yaw rate setpoints can decrease. Set to -1 to disable.", "max": 10000.0, "min": -1.0, "name": "RO_YAW_DECEL_LIM", "shortDesc": "Yaw deceleration limit", "type": "Float", "units": "deg/s^2"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Rover Rate Control", "increment": 0.01, "max": 100.0, "min": 0.0, "name": "RO_YAW_RATE_I", "shortDesc": "Integral gain for closed loop yaw rate controller", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Rover Rate Control", "increment": 0.01, "longDesc": "Used to cap yaw rate setpoints and map controller inputs to yaw rate setpoints in Acro, Stabilized and Position mode.", "max": 10000.0, "min": 0.0, "name": "RO_YAW_RATE_LIM", "shortDesc": "Yaw rate limit", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Rover Rate Control", "increment": 0.01, "max": 100.0, "min": 0.0, "name": "RO_YAW_RATE_P", "shortDesc": "Proportional gain for closed loop yaw rate controller", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 3.0, "group": "Rover Rate Control", "increment": 0.01, "longDesc": "The minimum threshold for the yaw rate measurement not to be interpreted as zero.", "max": 100.0, "min": 0.0, "name": "RO_YAW_RATE_TH", "shortDesc": "Yaw rate measurement threshold", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Rover Rate Control", "increment": 0.01, "longDesc": "Percentage of stick input range that will be interpreted as zero around the stick centered value.", "max": 1.0, "min": 0.0, "name": "RO_YAW_STICK_DZ", "shortDesc": "Yaw stick deadzone", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Velocity Control", "increment": 0.01, "longDesc": "Set to -1 to disable. For mecanum rovers this limit is used for longitudinal and lateral acceleration.", "max": 100.0, "min": -1.0, "name": "RO_ACCEL_LIM", "shortDesc": "Acceleration limit", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Velocity Control", "increment": 0.01, "longDesc": "Set to -1 to disable. Note that if it is disabled the rover will not slow down when approaching waypoints in auto modes. For mecanum rovers this limit is used for longitudinal and lateral deceleration.", "max": 100.0, "min": -1.0, "name": "RO_DECEL_LIM", "shortDesc": "Deceleration limit", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Velocity Control", "increment": 0.01, "longDesc": "Set to -1 to disable. Note that if it is disabled the rover will not slow down when approaching waypoints in auto modes. For mecanum rovers this limit is used for longitudinal and lateral jerk.", "max": 100.0, "min": -1.0, "name": "RO_JERK_LIM", "shortDesc": "Jerk limit", "type": "Float", "units": "m/s^3"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Rover Velocity Control", "increment": 0.01, "longDesc": "Used to linearly map speeds [m/s] to throttle values [-1. 1].", "max": 100.0, "min": 0.0, "name": "RO_MAX_THR_SPEED", "shortDesc": "Speed the rover drives at maximum throttle", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Rover Velocity Control", "increment": 0.001, "max": 100.0, "min": 0.0, "name": "RO_SPEED_I", "shortDesc": "Integral gain for ground speed controller", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Velocity Control", "increment": 0.01, "longDesc": "Used to cap speed setpoints and map controller inputs to speed setpoints in Position mode.", "max": 100.0, "min": -1.0, "name": "RO_SPEED_LIM", "shortDesc": "Speed limit", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Rover Velocity Control", "increment": 0.01, "max": 100.0, "min": 0.0, "name": "RO_SPEED_P", "shortDesc": "Proportional gain for ground speed controller", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Rover Velocity Control", "increment": 0.01, "longDesc": "Set to -1 to disable. The minimum threshold for the speed measurement not to be interpreted as zero.", "max": 100.0, "min": 0.0, "name": "RO_SPEED_TH", "shortDesc": "Speed measurement threshold", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 0, "group": "Runway Takeoff", "longDesc": "0: airframe heading when takeoff is initiated 1: position control along runway direction (bearing defined from vehicle position on takeoff initiation to MAV_CMD_TAKEOFF position defined by operator)", "max": 1, "min": 0, "name": "RWTO_HDG", "shortDesc": "Specifies which heading should be held during the runway takeoff ground roll", "type": "Int32", "values": [{"description": "Airframe", "value": 0}, {"description": "Runway", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Runway Takeoff", "increment": 0.01, "max": 1.0, "min": 0.0, "name": "RWTO_MAX_THR", "shortDesc": "Max throttle during runway takeoff", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Runway Takeoff", "increment": 0.1, "max": 100.0, "min": 1.0, "name": "RWTO_NPFG_PERIOD", "shortDesc": "NPFG period while steering on runway", "type": "Float", "units": "s"}, {"category": "Standard", "default": 1, "group": "Runway Takeoff", "longDesc": "This is useful when map, GNSS, or yaw errors on ground are misaligned with what the operator intends for takeoff course. Particularly useful for skinny runways or if the wheel servo is a bit off trim.", "name": "RWTO_NUDGE", "shortDesc": "Enable use of yaw stick for nudging the wheel during runway ground roll", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Runway Takeoff", "increment": 0.5, "longDesc": "A taildragger with steerable wheel might need to pitch up a little to keep its wheel on the ground before airspeed to takeoff is reached.", "max": 20.0, "min": -10.0, "name": "RWTO_PSP", "shortDesc": "Pitch setpoint during taxi / before takeoff rotation airspeed is reached", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 2.0, "group": "Runway Takeoff", "increment": 0.1, "max": 15.0, "min": 1.0, "name": "RWTO_RAMP_TIME", "shortDesc": "Throttle ramp up time for runway takeoff", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "Runway Takeoff", "increment": 0.1, "longDesc": "The calibrated airspeed threshold during the takeoff ground roll when the plane should start rotating (pitching up). Must be less than the takeoff airspeed, will otherwise be capped at the takeoff airpeed (see FW_TKO_AIRSPD). If set <= 0.0, defaults to 0.9 * takeoff airspeed (see FW_TKO_AIRSPD)", "min": -1.0, "name": "RWTO_ROT_AIRSPD", "shortDesc": "Takeoff rotation airspeed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Runway Takeoff", "increment": 0.1, "longDesc": "This is the time desired to linearly ramp in takeoff pitch constraints during the takeoff rotation", "min": 0.1, "name": "RWTO_ROT_TIME", "shortDesc": "Takeoff rotation time", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Runway Takeoff", "name": "RWTO_TKOFF", "shortDesc": "Runway takeoff with landing gear", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 2, "group": "SD Logging", "longDesc": "Selects the algorithm used for logfile encryption", "name": "SDLOG_ALGORITHM", "shortDesc": "Logfile Encryption algorithm", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "XChaCha20", "value": 2}]}, {"category": "Standard", "default": 0, "group": "SD Logging", "longDesc": "When enabled, logging will not start from boot if battery power is not detected (e.g. powered via USB on a test bench). This prevents extraneous flight logs from being created during bench testing. Note that this only applies to log-from-boot modes. This has no effect on arm-based modes.", "name": "SDLOG_BOOT_BAT", "shortDesc": "Battery-only Logging", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "SD Logging", "longDesc": "If there are more log directories than this value, the system will delete the oldest directories during startup. In addition, the system will delete old logs if there is not enough free space left. The minimum amount is 300 MB. If this is set to 0, old directories will only be removed if the free space falls below the minimum. Note: this does not apply to mission log files.", "max": 1000, "min": 0, "name": "SDLOG_DIRS_MAX", "rebootRequired": true, "shortDesc": "Maximum number of log directories to keep", "type": "Int32"}, {"category": "Standard", "default": 1, "group": "SD Logging", "longDesc": "If the logfile is encrypted using a symmetric key algorithm, the used encryption key is generated at logging start and stored on the sdcard RSA2048 encrypted using this key.", "max": 255, "min": 0, "name": "SDLOG_EXCH_KEY", "shortDesc": "Logfile Encryption key exchange key", "type": "Int32"}, {"category": "Standard", "default": 2, "group": "SD Logging", "longDesc": "Selects the key in keystore, used for encrypting the log. When using a symmetric encryption algorithm, the key is generated at logging start and kept stored in this index. For symmetric algorithms, the key is volatile and valid only for the duration of logging. The key is stored in encrypted format on the sdcard alongside the logfile, using an RSA2048 key defined by the SDLOG_EXCHANGE_KEY", "max": 255, "min": 0, "name": "SDLOG_KEY", "shortDesc": "Logfile Encryption key index", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "SD Logging", "longDesc": "If enabled, a small additional \"mission\" log file will be written to the SD card. The log contains just those messages that are useful for tasks like generating flight statistics and geotagging. The different modes can be used to further reduce the logged data (and thus the log file size). For example, choose geotagging mode to only log data required for geotagging. Note that the normal/full log is still created, and contains all the data in the mission log (and more).", "name": "SDLOG_MISSION", "rebootRequired": true, "shortDesc": "Mission Log", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "All mission messages", "value": 1}, {"description": "Geotagging messages", "value": 2}]}, {"category": "Standard", "default": 0, "group": "SD Logging", "longDesc": "Determines when to start and stop logging. By default, logging is started when arming the system, and stopped when disarming.", "name": "SDLOG_MODE", "rebootRequired": true, "shortDesc": "Logging Mode", "type": "Int32", "values": [{"description": "disabled", "value": -1}, {"description": "when armed until disarm (default)", "value": 0}, {"description": "from boot until disarm", "value": 1}, {"description": "from boot until shutdown", "value": 2}, {"description": "while manual input AUX1 >30%", "value": 3}, {"description": "from 1st armed until shutdown", "value": 4}]}, {"bitmask": [{"description": "Default set (general log analysis)", "index": 0}, {"description": "Estimator replay (EKF2)", "index": 1}, {"description": "Thermal calibration", "index": 2}, {"description": "System identification", "index": 3}, {"description": "High rate", "index": 4}, {"description": "Debug", "index": 5}, {"description": "Sensor comparison", "index": 6}, {"description": "Computer Vision and Avoidance", "index": 7}, {"description": "Raw FIFO high-rate IMU (Gyro)", "index": 8}, {"description": "Raw FIFO high-rate IMU (Accel)", "index": 9}, {"description": "Mavlink tunnel message logging", "index": 10}], "category": "Standard", "default": 1, "group": "SD Logging", "longDesc": "This integer bitmask controls the set and rates of logged topics. The default allows for general log analysis while keeping the log file size reasonably small. Enabling multiple sets leads to higher bandwidth requirements and larger log files. Set bits true to enable: 0 : Default set (used for general log analysis) 1 : Full rate estimator (EKF2) replay topics 2 : Topics for thermal calibration (high rate raw IMU and Baro sensor data) 3 : Topics for system identification (high rate actuator control and IMU data) 4 : Full rates for analysis of fast maneuvers (RC, attitude, rates and actuators) 5 : Debugging topics (debug_*.msg topics, for custom code) 6 : Topics for sensor comparison (low rate raw IMU, Baro and magnetometer data) 7 : Topics for computer vision and collision prevention 8 : Raw FIFO high-rate IMU (Gyro) 9 : Raw FIFO high-rate IMU (Accel) 10: Logging of mavlink tunnel message (useful for payload communication debugging)", "max": 2047, "min": 0, "name": "SDLOG_PROFILE", "rebootRequired": true, "shortDesc": "Logging topic profile (integer bitmask)", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "SD Logging", "longDesc": "the difference in hours and minutes from Coordinated Universal Time (UTC) for a your place and date. for example, In case of South Korea(UTC+09:00), UTC offset is 540 min (9*60) refer to https://en.wikipedia.org/wiki/List_of_UTC_time_offsets", "max": 1000, "min": -1000, "name": "SDLOG_UTC_OFFSET", "shortDesc": "UTC offset (unit: min)", "type": "Int32", "units": "min"}, {"category": "Standard", "default": 1, "group": "SD Logging", "longDesc": "If set to 1, add an ID to the log, which uniquely identifies the vehicle", "name": "SDLOG_UUID", "shortDesc": "Log UUID", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 60.0, "group": "SITL", "increment": 1.0, "max": 86400.0, "min": 1.0, "name": "SIM_BAT_DRAIN", "shortDesc": "Simulator Battery drain interval", "type": "Float", "units": "s"}, {"category": "Standard", "default": 1, "group": "SITL", "longDesc": "Enable or disable the internal battery simulation. This is useful when the battery is simulated externally and interfaced with PX4 through MAVLink for example.", "name": "SIM_BAT_ENABLE", "shortDesc": "Simulator Battery enabled", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 50.0, "group": "SITL", "increment": 0.1, "longDesc": "Can be used to alter the battery level during SITL- or HITL-simulation on the fly. Particularly useful for testing different low-battery behaviour.", "max": 100.0, "min": 0.0, "name": "SIM_BAT_MIN_PCT", "shortDesc": "Simulator Battery minimal percentage", "type": "Float", "units": "%"}, {"category": "System", "decimalPlaces": 3, "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the accelerometer this calibration applies to.", "name": "CAL_ACC0_ID", "shortDesc": "Accelerometer 0 calibration device ID", "type": "Int32"}, {"category": "System", "decimalPlaces": 3, "default": -1, "group": "Sensor Calibration", "name": "CAL_ACC0_PRIO", "shortDesc": "Accelerometer 0 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero.", "max": 40, "min": -1, "name": "CAL_ACC0_ROT", "shortDesc": "Accelerometer 0 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC0_XOFF", "shortDesc": "Accelerometer 0 X-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC0_XSCALE", "shortDesc": "Accelerometer 0 X-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC0_YOFF", "shortDesc": "Accelerometer 0 Y-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC0_YSCALE", "shortDesc": "Accelerometer 0 Y-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC0_ZOFF", "shortDesc": "Accelerometer 0 Z-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC0_ZSCALE", "shortDesc": "Accelerometer 0 Z-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the accelerometer this calibration applies to.", "name": "CAL_ACC1_ID", "shortDesc": "Accelerometer 1 calibration device ID", "type": "Int32"}, {"category": "System", "decimalPlaces": 3, "default": -1, "group": "Sensor Calibration", "name": "CAL_ACC1_PRIO", "shortDesc": "Accelerometer 1 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero.", "max": 40, "min": -1, "name": "CAL_ACC1_ROT", "shortDesc": "Accelerometer 1 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC1_XOFF", "shortDesc": "Accelerometer 1 X-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC1_XSCALE", "shortDesc": "Accelerometer 1 X-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC1_YOFF", "shortDesc": "Accelerometer 1 Y-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC1_YSCALE", "shortDesc": "Accelerometer 1 Y-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC1_ZOFF", "shortDesc": "Accelerometer 1 Z-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC1_ZSCALE", "shortDesc": "Accelerometer 1 Z-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the accelerometer this calibration applies to.", "name": "CAL_ACC2_ID", "shortDesc": "Accelerometer 2 calibration device ID", "type": "Int32"}, {"category": "System", "decimalPlaces": 3, "default": -1, "group": "Sensor Calibration", "name": "CAL_ACC2_PRIO", "shortDesc": "Accelerometer 2 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero.", "max": 40, "min": -1, "name": "CAL_ACC2_ROT", "shortDesc": "Accelerometer 2 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC2_XOFF", "shortDesc": "Accelerometer 2 X-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC2_XSCALE", "shortDesc": "Accelerometer 2 X-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC2_YOFF", "shortDesc": "Accelerometer 2 Y-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC2_YSCALE", "shortDesc": "Accelerometer 2 Y-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC2_ZOFF", "shortDesc": "Accelerometer 2 Z-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC2_ZSCALE", "shortDesc": "Accelerometer 2 Z-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the accelerometer this calibration applies to.", "name": "CAL_ACC3_ID", "shortDesc": "Accelerometer 3 calibration device ID", "type": "Int32"}, {"category": "System", "decimalPlaces": 3, "default": -1, "group": "Sensor Calibration", "name": "CAL_ACC3_PRIO", "shortDesc": "Accelerometer 3 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero.", "max": 40, "min": -1, "name": "CAL_ACC3_ROT", "shortDesc": "Accelerometer 3 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC3_XOFF", "shortDesc": "Accelerometer 3 X-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC3_XSCALE", "shortDesc": "Accelerometer 3 X-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC3_YOFF", "shortDesc": "Accelerometer 3 Y-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC3_YSCALE", "shortDesc": "Accelerometer 3 Y-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC3_ZOFF", "shortDesc": "Accelerometer 3 Z-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC3_ZSCALE", "shortDesc": "Accelerometer 3 Z-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the barometer this calibration applies to.", "name": "CAL_BARO0_ID", "shortDesc": "Barometer 0 calibration device ID", "type": "Int32"}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_BARO0_OFF", "shortDesc": "Barometer 0 offset", "type": "Float", "volatile": true}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_BARO0_PRIO", "shortDesc": "Barometer 0 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the barometer this calibration applies to.", "name": "CAL_BARO1_ID", "shortDesc": "Barometer 1 calibration device ID", "type": "Int32"}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_BARO1_OFF", "shortDesc": "Barometer 1 offset", "type": "Float", "volatile": true}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_BARO1_PRIO", "shortDesc": "Barometer 1 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the barometer this calibration applies to.", "name": "CAL_BARO2_ID", "shortDesc": "Barometer 2 calibration device ID", "type": "Int32"}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_BARO2_OFF", "shortDesc": "Barometer 2 offset", "type": "Float", "volatile": true}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_BARO2_PRIO", "shortDesc": "Barometer 2 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the barometer this calibration applies to.", "name": "CAL_BARO3_ID", "shortDesc": "Barometer 3 calibration device ID", "type": "Int32"}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_BARO3_OFF", "shortDesc": "Barometer 3 offset", "type": "Float", "volatile": true}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_BARO3_PRIO", "shortDesc": "Barometer 3 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the gyroscope this calibration applies to.", "name": "CAL_GYRO0_ID", "shortDesc": "Gyroscope 0 calibration device ID", "type": "Int32"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_GYRO0_PRIO", "shortDesc": "Gyroscope 0 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero.", "max": 40, "min": -1, "name": "CAL_GYRO0_ROT", "shortDesc": "Gyroscope 0 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO0_XOFF", "shortDesc": "Gyroscope 0 X-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO0_YOFF", "shortDesc": "Gyroscope 0 Y-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO0_ZOFF", "shortDesc": "Gyroscope 0 Z-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the gyroscope this calibration applies to.", "name": "CAL_GYRO1_ID", "shortDesc": "Gyroscope 1 calibration device ID", "type": "Int32"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_GYRO1_PRIO", "shortDesc": "Gyroscope 1 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero.", "max": 40, "min": -1, "name": "CAL_GYRO1_ROT", "shortDesc": "Gyroscope 1 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO1_XOFF", "shortDesc": "Gyroscope 1 X-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO1_YOFF", "shortDesc": "Gyroscope 1 Y-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO1_ZOFF", "shortDesc": "Gyroscope 1 Z-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the gyroscope this calibration applies to.", "name": "CAL_GYRO2_ID", "shortDesc": "Gyroscope 2 calibration device ID", "type": "Int32"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_GYRO2_PRIO", "shortDesc": "Gyroscope 2 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero.", "max": 40, "min": -1, "name": "CAL_GYRO2_ROT", "shortDesc": "Gyroscope 2 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO2_XOFF", "shortDesc": "Gyroscope 2 X-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO2_YOFF", "shortDesc": "Gyroscope 2 Y-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO2_ZOFF", "shortDesc": "Gyroscope 2 Z-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the gyroscope this calibration applies to.", "name": "CAL_GYRO3_ID", "shortDesc": "Gyroscope 3 calibration device ID", "type": "Int32"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_GYRO3_PRIO", "shortDesc": "Gyroscope 3 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero.", "max": 40, "min": -1, "name": "CAL_GYRO3_ROT", "shortDesc": "Gyroscope 3 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO3_XOFF", "shortDesc": "Gyroscope 3 X-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO3_YOFF", "shortDesc": "Gyroscope 3 Y-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO3_ZOFF", "shortDesc": "Gyroscope 3 Z-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the magnetometer this calibration applies to.", "name": "CAL_MAG0_ID", "shortDesc": "Magnetometer 0 calibration device ID", "type": "Int32"}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG0_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG0_PITCH", "shortDesc": "Magnetometer 0 Custom Euler Pitch Angle", "type": "Float", "units": "deg"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_MAG0_PRIO", "shortDesc": "Magnetometer 0 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG0_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG0_ROLL", "shortDesc": "Magnetometer 0 Custom Euler Roll Angle", "type": "Float", "units": "deg"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero. Set to \"Custom Euler Angle\" to define the rotation using CAL_MAG0_ROLL, CAL_MAG0_PITCH and CAL_MAG0_YAW.", "max": 100, "min": -1, "name": "CAL_MAG0_ROT", "shortDesc": "Magnetometer 0 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}, {"description": "Custom Euler Angle", "value": 100}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between X component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG0_XCOMP", "shortDesc": "Magnetometer 0 X Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG0_XODIAG", "shortDesc": "Magnetometer 0 X-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG0_XOFF", "shortDesc": "Magnetometer 0 X-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG0_XSCALE", "shortDesc": "Magnetometer 0 X-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG0_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG0_YAW", "shortDesc": "Magnetometer 0 Custom Euler Yaw Angle", "type": "Float", "units": "deg"}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between Y component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG0_YCOMP", "shortDesc": "Magnetometer 0 Y Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG0_YODIAG", "shortDesc": "Magnetometer 0 Y-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG0_YOFF", "shortDesc": "Magnetometer 0 Y-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG0_YSCALE", "shortDesc": "Magnetometer 0 Y-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between Z component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG0_ZCOMP", "shortDesc": "Magnetometer 0 Z Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG0_ZODIAG", "shortDesc": "Magnetometer 0 Z-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG0_ZOFF", "shortDesc": "Magnetometer 0 Z-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG0_ZSCALE", "shortDesc": "Magnetometer 0 Z-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the magnetometer this calibration applies to.", "name": "CAL_MAG1_ID", "shortDesc": "Magnetometer 1 calibration device ID", "type": "Int32"}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG1_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG1_PITCH", "shortDesc": "Magnetometer 1 Custom Euler Pitch Angle", "type": "Float", "units": "deg"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_MAG1_PRIO", "shortDesc": "Magnetometer 1 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG1_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG1_ROLL", "shortDesc": "Magnetometer 1 Custom Euler Roll Angle", "type": "Float", "units": "deg"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero. Set to \"Custom Euler Angle\" to define the rotation using CAL_MAG1_ROLL, CAL_MAG1_PITCH and CAL_MAG1_YAW.", "max": 100, "min": -1, "name": "CAL_MAG1_ROT", "shortDesc": "Magnetometer 1 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}, {"description": "Custom Euler Angle", "value": 100}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between X component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG1_XCOMP", "shortDesc": "Magnetometer 1 X Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG1_XODIAG", "shortDesc": "Magnetometer 1 X-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG1_XOFF", "shortDesc": "Magnetometer 1 X-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG1_XSCALE", "shortDesc": "Magnetometer 1 X-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG1_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG1_YAW", "shortDesc": "Magnetometer 1 Custom Euler Yaw Angle", "type": "Float", "units": "deg"}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between Y component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG1_YCOMP", "shortDesc": "Magnetometer 1 Y Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG1_YODIAG", "shortDesc": "Magnetometer 1 Y-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG1_YOFF", "shortDesc": "Magnetometer 1 Y-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG1_YSCALE", "shortDesc": "Magnetometer 1 Y-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between Z component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG1_ZCOMP", "shortDesc": "Magnetometer 1 Z Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG1_ZODIAG", "shortDesc": "Magnetometer 1 Z-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG1_ZOFF", "shortDesc": "Magnetometer 1 Z-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG1_ZSCALE", "shortDesc": "Magnetometer 1 Z-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the magnetometer this calibration applies to.", "name": "CAL_MAG2_ID", "shortDesc": "Magnetometer 2 calibration device ID", "type": "Int32"}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG2_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG2_PITCH", "shortDesc": "Magnetometer 2 Custom Euler Pitch Angle", "type": "Float", "units": "deg"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_MAG2_PRIO", "shortDesc": "Magnetometer 2 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG2_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG2_ROLL", "shortDesc": "Magnetometer 2 Custom Euler Roll Angle", "type": "Float", "units": "deg"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero. Set to \"Custom Euler Angle\" to define the rotation using CAL_MAG2_ROLL, CAL_MAG2_PITCH and CAL_MAG2_YAW.", "max": 100, "min": -1, "name": "CAL_MAG2_ROT", "shortDesc": "Magnetometer 2 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}, {"description": "Custom Euler Angle", "value": 100}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between X component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG2_XCOMP", "shortDesc": "Magnetometer 2 X Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG2_XODIAG", "shortDesc": "Magnetometer 2 X-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG2_XOFF", "shortDesc": "Magnetometer 2 X-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG2_XSCALE", "shortDesc": "Magnetometer 2 X-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG2_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG2_YAW", "shortDesc": "Magnetometer 2 Custom Euler Yaw Angle", "type": "Float", "units": "deg"}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between Y component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG2_YCOMP", "shortDesc": "Magnetometer 2 Y Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG2_YODIAG", "shortDesc": "Magnetometer 2 Y-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG2_YOFF", "shortDesc": "Magnetometer 2 Y-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG2_YSCALE", "shortDesc": "Magnetometer 2 Y-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between Z component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG2_ZCOMP", "shortDesc": "Magnetometer 2 Z Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG2_ZODIAG", "shortDesc": "Magnetometer 2 Z-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG2_ZOFF", "shortDesc": "Magnetometer 2 Z-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG2_ZSCALE", "shortDesc": "Magnetometer 2 Z-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the magnetometer this calibration applies to.", "name": "CAL_MAG3_ID", "shortDesc": "Magnetometer 3 calibration device ID", "type": "Int32"}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG3_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG3_PITCH", "shortDesc": "Magnetometer 3 Custom Euler Pitch Angle", "type": "Float", "units": "deg"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_MAG3_PRIO", "shortDesc": "Magnetometer 3 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG3_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG3_ROLL", "shortDesc": "Magnetometer 3 Custom Euler Roll Angle", "type": "Float", "units": "deg"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero. Set to \"Custom Euler Angle\" to define the rotation using CAL_MAG3_ROLL, CAL_MAG3_PITCH and CAL_MAG3_YAW.", "max": 100, "min": -1, "name": "CAL_MAG3_ROT", "shortDesc": "Magnetometer 3 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}, {"description": "Custom Euler Angle", "value": 100}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between X component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG3_XCOMP", "shortDesc": "Magnetometer 3 X Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG3_XODIAG", "shortDesc": "Magnetometer 3 X-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG3_XOFF", "shortDesc": "Magnetometer 3 X-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG3_XSCALE", "shortDesc": "Magnetometer 3 X-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG3_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG3_YAW", "shortDesc": "Magnetometer 3 Custom Euler Yaw Angle", "type": "Float", "units": "deg"}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between Y component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG3_YCOMP", "shortDesc": "Magnetometer 3 Y Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG3_YODIAG", "shortDesc": "Magnetometer 3 Y-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG3_YOFF", "shortDesc": "Magnetometer 3 Y-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG3_YSCALE", "shortDesc": "Magnetometer 3 Y-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between Z component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG3_ZCOMP", "shortDesc": "Magnetometer 3 Z Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG3_ZODIAG", "shortDesc": "Magnetometer 3 Z-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG3_ZOFF", "shortDesc": "Magnetometer 3 Z-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG3_ZSCALE", "shortDesc": "Magnetometer 3 Z-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "name": "CAL_MAG_COMP_TYP", "shortDesc": "Type of magnetometer compensation", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Throttle-based compensation", "value": 1}, {"description": "Current-based compensation (battery_status instance 0)", "value": 2}, {"description": "Current-based compensation (battery_status instance 1)", "value": 3}]}, {"category": "Standard", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Pick the appropriate scaling from the datasheet. this number defines the (linear) conversion from voltage to Pascal (pa). For the MPXV7002DP this is 1000. NOTE: If the sensor always registers zero, try switching the static and dynamic tubes.", "name": "SENS_DPRES_ANSC", "shortDesc": "Differential pressure sensor analog scaling", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "The offset (zero-reading) in Pascal", "name": "SENS_DPRES_OFF", "shortDesc": "Differential pressure sensor offset", "type": "Float", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Reverse the raw measurements of all differential pressure sensors. This can be enabled if the sensors have static and dynamic ports swapped.", "name": "SENS_DPRES_REV", "shortDesc": "Reverse differential pressure sensor readings", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 100.0, "group": "Sensor Calibration", "increment": 0.1, "longDesc": "This parameter defines the maximum distance from ground at which the optical flow sensor operates reliably. The height setpoint will be limited to be no greater than this value when the navigation system is completely reliant on optical flow data and the height above ground estimate is valid. The sensor may be usable above this height, but accuracy will progressively degrade.", "max": 100.0, "min": 1.0, "name": "SENS_FLOW_MAXHGT", "shortDesc": "Maximum height above ground when reliant on optical flow", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 8.0, "group": "Sensor Calibration", "longDesc": "Optical flow data will not fused by the estimators if the magnitude of the flow rate exceeds this value and control loops will be instructed to limit ground speed such that the flow rate produced by movement over ground is less than 50% of this value.", "min": 1.0, "name": "SENS_FLOW_MAXR", "shortDesc": "Magnitude of maximum angular flow rate reliably measurable by the optical flow sensor", "type": "Float", "units": "rad/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.08, "group": "Sensor Calibration", "increment": 0.1, "longDesc": "This parameter defines the minimum distance from ground at which the optical flow sensor operates reliably. The sensor may be usable below this height, but accuracy will progressively reduce to loss of focus.", "max": 1.0, "min": 0.0, "name": "SENS_FLOW_MINHGT", "shortDesc": "Minimum height above ground when reliant on optical flow", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Sensors", "longDesc": "Model with Pitot CAL_AIR_TUBED_MM: Not used, 1.5 mm tubes assumed. CAL_AIR_TUBELEN: Length of the tubes connecting the pitot to the sensor. Model without Pitot (1.5 mm tubes) CAL_AIR_TUBED_MM: Not used, 1.5 mm tubes assumed. CAL_AIR_TUBELEN: Length of the tubes connecting the pitot to the sensor. Tube Pressure Drop CAL_AIR_TUBED_MM: Diameter in mm of the pitot and tubes, must have the same diameter. CAL_AIR_TUBELEN: Length of the tubes connecting the pitot to the sensor and the static + dynamic port length of the pitot.", "name": "CAL_AIR_CMODEL", "shortDesc": "Airspeed sensor compensation model for the SDP3x", "type": "Int32", "values": [{"description": "Model with Pitot", "value": 0}, {"description": "Model without Pitot (1.5 mm tubes)", "value": 1}, {"description": "Tube Pressure Drop", "value": 2}]}, {"category": "Standard", "default": 1.5, "group": "Sensors", "max": 100.0, "min": 1.5, "name": "CAL_AIR_TUBED_MM", "shortDesc": "Airspeed sensor tube diameter. Only used for the Tube Pressure Drop Compensation", "type": "Float", "units": "mm"}, {"category": "Standard", "default": 0.2, "group": "Sensors", "longDesc": "See the CAL_AIR_CMODEL explanation on how this parameter should be set.", "max": 2.0, "min": 0.01, "name": "CAL_AIR_TUBELEN", "shortDesc": "Airspeed sensor tube length", "type": "Float", "units": "m"}, {"category": "Developer", "default": 63, "group": "Sensors", "longDesc": "Use SENS_MAG_SIDES instead", "name": "CAL_MAG_SIDES", "shortDesc": "For legacy QGC support only", "type": "Int32"}, {"category": "Standard", "default": 30.0, "group": "Sensors", "longDesc": "The cutoff frequency for the 2nd order butterworth filter on the primary accelerometer. This only affects the signal sent to the controllers, not the estimators. 0 disables the filter.", "max": 1000.0, "min": 0.0, "name": "IMU_ACCEL_CUTOFF", "rebootRequired": true, "shortDesc": "Low pass filter cutoff frequency for accel", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 30.0, "group": "Sensors", "increment": 0.1, "longDesc": "The cutoff frequency for the 2nd order butterworth filter used on the time derivative of the measured angular velocity, also known as the D-term filter in the rate controller. The D-term uses the derivative of the rate and thus is the most susceptible to noise. Therefore, using a D-term filter allows to increase IMU_GYRO_CUTOFF, which leads to reduced control latency and permits to increase the P gains. A value of 0 disables the filter.", "max": 1000.0, "min": 0.0, "name": "IMU_DGYRO_CUTOFF", "rebootRequired": true, "shortDesc": "Cutoff frequency for angular acceleration (D-Term filter)", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 1, "group": "Sensors", "name": "IMU_GYRO_CAL_EN", "rebootRequired": true, "shortDesc": "IMU gyro auto calibration enable", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 40.0, "group": "Sensors", "increment": 0.1, "longDesc": "The cutoff frequency for the 2nd order butterworth filter on the primary gyro. This only affects the angular velocity sent to the controllers, not the estimators. It applies also to the angular acceleration (D-Term filter), see IMU_DGYRO_CUTOFF. A value of 0 disables the filter.", "max": 1000.0, "min": 0.0, "name": "IMU_GYRO_CUTOFF", "rebootRequired": true, "shortDesc": "Low pass filter cutoff frequency for gyro", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 15.0, "group": "Sensors", "increment": 0.1, "longDesc": "Bandwidth per notch filter when using dynamic notch filtering with ESC RPM.", "max": 30.0, "min": 5.0, "name": "IMU_GYRO_DNF_BW", "shortDesc": "IMU gyro ESC notch filter bandwidth", "type": "Float", "units": "Hz"}, {"bitmask": [{"description": "ESC RPM", "index": 0}, {"description": "FFT", "index": 1}], "category": "Standard", "default": 0, "group": "Sensors", "longDesc": "Enable bank of dynamically updating notch filters. Requires ESC RPM feedback or onboard FFT (IMU_GYRO_FFT_EN).", "max": 3, "min": 0, "name": "IMU_GYRO_DNF_EN", "shortDesc": "IMU gyro dynamic notch filtering", "type": "Int32"}, {"category": "Standard", "default": 3, "group": "Sensors", "longDesc": "ESC RPM number of harmonics (multiples of RPM) for ESC RPM dynamic notch filtering.", "max": 7, "min": 1, "name": "IMU_GYRO_DNF_HMC", "shortDesc": "IMU gyro dynamic notch filter harmonics", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 25.0, "group": "Sensors", "increment": 0.1, "longDesc": "Minimum notch filter frequency in Hz.", "name": "IMU_GYRO_DNF_MIN", "shortDesc": "IMU gyro dynamic notch filter minimum frequency", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 0, "group": "Sensors", "name": "IMU_GYRO_FFT_EN", "rebootRequired": true, "shortDesc": "IMU gyro FFT enable", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 512, "group": "Sensors", "name": "IMU_GYRO_FFT_LEN", "rebootRequired": true, "shortDesc": "IMU gyro FFT length", "type": "Int32", "units": "Hz", "values": [{"description": "256", "value": 256}, {"description": "512", "value": 512}, {"description": "1024", "value": 1024}, {"description": "4096", "value": 4096}]}, {"category": "Standard", "default": 150.0, "group": "Sensors", "max": 1000.0, "min": 1.0, "name": "IMU_GYRO_FFT_MAX", "rebootRequired": true, "shortDesc": "IMU gyro FFT maximum frequency", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 30.0, "group": "Sensors", "max": 1000.0, "min": 1.0, "name": "IMU_GYRO_FFT_MIN", "rebootRequired": true, "shortDesc": "IMU gyro FFT minimum frequency", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 10.0, "group": "Sensors", "max": 30.0, "min": 1.0, "name": "IMU_GYRO_FFT_SNR", "shortDesc": "IMU gyro FFT SNR", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 20.0, "group": "Sensors", "increment": 0.1, "longDesc": "The frequency width of the stop band for the 2nd order notch filter on the primary gyro. See \"IMU_GYRO_NF0_FRQ\" to activate the filter and to set the notch frequency. Applies to both angular velocity and angular acceleration sent to the controllers.", "max": 100.0, "min": 0.0, "name": "IMU_GYRO_NF0_BW", "rebootRequired": true, "shortDesc": "Notch filter bandwidth for gyro", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Sensors", "increment": 0.1, "longDesc": "The center frequency for the 2nd order notch filter on the primary gyro. This filter can be enabled to avoid feedback amplification of structural resonances at a specific frequency. This only affects the signal sent to the controllers, not the estimators. Applies to both angular velocity and angular acceleration sent to the controllers. See \"IMU_GYRO_NF0_BW\" to set the bandwidth of the filter. A value of 0 disables the filter.", "max": 1000.0, "min": 0.0, "name": "IMU_GYRO_NF0_FRQ", "rebootRequired": true, "shortDesc": "Notch filter frequency for gyro", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 20.0, "group": "Sensors", "increment": 0.1, "longDesc": "The frequency width of the stop band for the 2nd order notch filter on the primary gyro. See \"IMU_GYRO_NF1_FRQ\" to activate the filter and to set the notch frequency. Applies to both angular velocity and angular acceleration sent to the controllers.", "max": 100.0, "min": 0.0, "name": "IMU_GYRO_NF1_BW", "rebootRequired": true, "shortDesc": "Notch filter 1 bandwidth for gyro", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Sensors", "increment": 0.1, "longDesc": "The center frequency for the 2nd order notch filter on the primary gyro. This filter can be enabled to avoid feedback amplification of structural resonances at a specific frequency. This only affects the signal sent to the controllers, not the estimators. Applies to both angular velocity and angular acceleration sent to the controllers. See \"IMU_GYRO_NF1_BW\" to set the bandwidth of the filter. A value of 0 disables the filter.", "max": 1000.0, "min": 0.0, "name": "IMU_GYRO_NF1_FRQ", "rebootRequired": true, "shortDesc": "Notch filter 2 frequency for gyro", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 400, "group": "Sensors", "longDesc": "The maximum rate the gyro control data (vehicle_angular_velocity) will be allowed to publish at. This is the loop rate for the rate controller and outputs. Note: sensor data is always read and filtered at the full raw rate (eg commonly 8 kHz) regardless of this setting.", "max": 2000, "min": 100, "name": "IMU_GYRO_RATEMAX", "rebootRequired": true, "shortDesc": "Gyro control data maximum publication rate (inner loop rate)", "type": "Int32", "units": "Hz", "values": [{"description": "100 Hz", "value": 100}, {"description": "250 Hz", "value": 250}, {"description": "400 Hz", "value": 400}, {"description": "800 Hz", "value": 800}, {"description": "1000 Hz", "value": 1000}, {"description": "2000 Hz", "value": 2000}]}, {"category": "Standard", "default": 200, "group": "Sensors", "longDesc": "The rate at which raw IMU data is integrated to produce delta angles and delta velocities. Recommended to set this to a multiple of the estimator update period (currently 10 ms for ekf2).", "max": 1000, "min": 100, "name": "IMU_INTEG_RATE", "rebootRequired": true, "shortDesc": "IMU integration rate", "type": "Int32", "units": "Hz", "values": [{"description": "100 Hz", "value": 100}, {"description": "200 Hz", "value": 200}, {"description": "250 Hz", "value": 250}, {"description": "400 Hz", "value": 400}]}, {"category": "Standard", "default": 1013.25, "group": "Sensors", "max": 1500.0, "min": 500.0, "name": "SENS_BARO_QNH", "shortDesc": "QNH for barometer", "type": "Float", "units": "hPa"}, {"category": "Standard", "default": 20.0, "group": "Sensors", "longDesc": "Barometric air data maximum publication rate. This is an upper bound, actual barometric data rate is still dependent on the sensor.", "max": 200.0, "min": 1.0, "name": "SENS_BARO_RATE", "shortDesc": "Baro max rate", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 0, "group": "Sensors", "longDesc": "This parameter defines the rotation of the FMU board relative to the platform.", "max": 40, "min": -1, "name": "SENS_BOARD_ROT", "rebootRequired": true, "shortDesc": "Board rotation", "type": "Int32", "values": [{"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}]}, {"category": "Standard", "default": 0.0, "group": "Sensors", "longDesc": "This parameter defines a rotational offset in degrees around the X (Roll) axis It allows the user to fine tune the board offset in the event of misalignment.", "name": "SENS_BOARD_X_OFF", "shortDesc": "Board rotation X (Roll) offset", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0.0, "group": "Sensors", "longDesc": "This parameter defines a rotational offset in degrees around the Y (Pitch) axis. It allows the user to fine tune the board offset in the event of misalignment.", "name": "SENS_BOARD_Y_OFF", "shortDesc": "Board rotation Y (Pitch) offset", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0.0, "group": "Sensors", "longDesc": "This parameter defines a rotational offset in degrees around the Z (Yaw) axis. It allows the user to fine tune the board offset in the event of misalignment.", "name": "SENS_BOARD_Z_OFF", "shortDesc": "Board rotation Z (YAW) offset", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0, "group": "Sensors", "max": 1, "min": 0, "name": "SENS_EN_AGPSIM", "rebootRequired": true, "shortDesc": "Simulate Aux Global Position (AGP)", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Sensors", "max": 1, "min": 0, "name": "SENS_EN_ARSPDSIM", "rebootRequired": true, "shortDesc": "Enable simulated airspeed sensor instance", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Sensors", "max": 1, "min": 0, "name": "SENS_EN_BAROSIM", "rebootRequired": true, "shortDesc": "Enable simulated barometer sensor instance", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Sensors", "max": 1, "min": 0, "name": "SENS_EN_GPSSIM", "rebootRequired": true, "shortDesc": "Enable simulated GPS sinstance", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Sensors", "max": 1, "min": 0, "name": "SENS_EN_MAGSIM", "rebootRequired": true, "shortDesc": "Enable simulated magnetometer sensor instance", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": -1, "group": "Sensors", "name": "SENS_EN_THERMAL", "shortDesc": "Thermal control of sensor temperature", "type": "Int32", "values": [{"description": "Thermal control unavailable", "value": -1}, {"description": "Thermal control off", "value": 0}, {"description": "Thermal control enabled", "value": 1}]}, {"category": "System", "default": 1, "group": "Sensors", "longDesc": "Probe for optional external I2C devices.", "name": "SENS_EXT_I2C_PRB", "shortDesc": "External I2C probe", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 70.0, "group": "Sensors", "longDesc": "Optical flow data maximum publication rate. This is an upper bound, actual optical flow data rate is still dependent on the sensor.", "max": 200.0, "min": 1.0, "name": "SENS_FLOW_RATE", "rebootRequired": true, "shortDesc": "Optical flow max rate", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 0, "group": "Sensors", "longDesc": "This parameter defines the yaw rotation of the optical flow relative to the vehicle body frame. Zero rotation is defined as X on flow board pointing towards front of vehicle.", "name": "SENS_FLOW_ROT", "shortDesc": "Optical flow rotation", "type": "Int32", "values": [{"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}]}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Sensors", "max": 1.5, "min": 0.5, "name": "SENS_FLOW_SCALE", "shortDesc": "Optical flow scale factor", "type": "Float"}, {"bitmask": [{"description": "use speed accuracy", "index": 0}, {"description": "use hpos accuracy", "index": 1}, {"description": "use vpos accuracy", "index": 2}], "category": "Standard", "default": 7, "group": "Sensors", "longDesc": "Set bits in the following positions to set which GPS accuracy metrics will be used to calculate the blending weight. Set to zero to disable and always used first GPS instance. 0 : Set to true to use speed accuracy 1 : Set to true to use horizontal position accuracy 2 : Set to true to use vertical position accuracy", "max": 7, "min": 0, "name": "SENS_GPS_MASK", "shortDesc": "Multi GPS Blending Control Mask", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "Sensors", "longDesc": "When no blending is active, this defines the preferred GPS receiver instance. The GPS selection logic waits until the primary receiver is available to send data to the EKF even if a secondary instance is already available. The secondary instance is then only used if the primary one times out. To have an equal priority of all the instances, set this parameter to -1 and the best receiver will be used. This parameter has no effect if blending is active.", "max": 1, "min": -1, "name": "SENS_GPS_PRIME", "shortDesc": "Multi GPS primary instance", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Sensors", "longDesc": "Sets the longest time constant that will be applied to the calculation of GPS position and height offsets used to correct data from multiple GPS data for steady state position differences.", "max": 100.0, "min": 1.0, "name": "SENS_GPS_TAU", "shortDesc": "Multi GPS Blending Time Constant", "type": "Float", "units": "s"}, {"category": "System", "default": 1, "group": "Sensors", "longDesc": "Automatically initialize IMU (accel/gyro) calibration from bias estimates if available.", "name": "SENS_IMU_AUTOCAL", "shortDesc": "IMU auto calibration", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": 1, "group": "Sensors", "longDesc": "Notify the user if the IMU is clipping", "name": "SENS_IMU_CLPNOTI", "shortDesc": "IMU notify clipping", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": 1, "group": "Sensors", "name": "SENS_IMU_MODE", "rebootRequired": true, "shortDesc": "Sensors hub IMU mode", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Publish primary IMU selection", "value": 1}]}, {"category": "System", "default": 1, "group": "Sensors", "longDesc": "For systems with an external barometer, this should be set to false to make sure that the external is used.", "name": "SENS_INT_BARO_EN", "rebootRequired": true, "shortDesc": "Enable internal barometers", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": 1, "group": "Sensors", "longDesc": "Automatically initialize magnetometer calibration from bias estimate if available.", "name": "SENS_MAG_AUTOCAL", "shortDesc": "Magnetometer auto calibration", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "Sensors", "longDesc": "During calibration attempt to automatically determine the rotation of external magnetometers.", "name": "SENS_MAG_AUTOROT", "shortDesc": "Automatically set external rotations", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": 1, "group": "Sensors", "name": "SENS_MAG_MODE", "rebootRequired": true, "shortDesc": "Sensors hub mag mode", "type": "Int32", "values": [{"description": "Publish all magnetometers", "value": 0}, {"description": "Publish primary magnetometer", "value": 1}]}, {"category": "Standard", "default": 15.0, "group": "Sensors", "longDesc": "Magnetometer data maximum publication rate. This is an upper bound, actual magnetometer data rate is still dependent on the sensor.", "max": 200.0, "min": 1.0, "name": "SENS_MAG_RATE", "rebootRequired": true, "shortDesc": "Magnetometer max rate", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 63, "group": "Sensors", "longDesc": "If set to two side calibration, only the offsets are estimated, the scale calibration is left unchanged. Thus an initial six side calibration is recommended. Bits: ORIENTATION_TAIL_DOWN = 1 ORIENTATION_NOSE_DOWN = 2 ORIENTATION_LEFT = 4 ORIENTATION_RIGHT = 8 ORIENTATION_UPSIDE_DOWN = 16 ORIENTATION_RIGHTSIDE_UP = 32", "max": 63, "min": 34, "name": "SENS_MAG_SIDES", "shortDesc": "Bitfield selecting mag sides for calibration", "type": "Int32", "values": [{"description": "Two side calibration", "value": 34}, {"description": "Three side calibration", "value": 38}, {"description": "Six side calibration", "value": 63}]}, {"category": "Standard", "default": 0, "group": "Sensors", "max": 1, "min": 0, "name": "SIM_ARSPD_FAIL", "rebootRequired": true, "shortDesc": "Dynamically simulate failure of airspeed sensor instance", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 4, "default": 100.0, "group": "Simulation In Hardware", "increment": 0.01, "max": 1000.0, "min": 0.0, "name": "SIH_DISTSNSR_MAX", "shortDesc": "distance sensor maximum range", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.0, "group": "Simulation In Hardware", "increment": 0.01, "max": 10.0, "min": 0.0, "name": "SIH_DISTSNSR_MIN", "shortDesc": "distance sensor minimum range", "type": "Float", "units": "m"}, {"category": "Standard", "default": -1.0, "group": "Simulation In Hardware", "longDesc": "Absolute value superior to 10000 will disable distance sensor", "name": "SIH_DISTSNSR_OVR", "shortDesc": "if >= 0 the distance sensor measures will be overridden by this value", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.025, "group": "Simulation In Hardware", "increment": 0.005, "longDesc": "The inertia is a 3 by 3 symmetric matrix. It represents the difficulty of the vehicle to modify its angular rate.", "min": 0.0, "name": "SIH_IXX", "shortDesc": "Vehicle inertia about X axis", "type": "Float", "units": "kg m^2"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Simulation In Hardware", "increment": 0.005, "longDesc": "The inertia is a 3 by 3 symmetric matrix. This value can be set to 0 for a quad symmetric about its center of mass.", "name": "SIH_IXY", "shortDesc": "Vehicle cross term inertia xy", "type": "Float", "units": "kg m^2"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Simulation In Hardware", "increment": 0.005, "longDesc": "The inertia is a 3 by 3 symmetric matrix. This value can be set to 0 for a quad symmetric about its center of mass.", "name": "SIH_IXZ", "shortDesc": "Vehicle cross term inertia xz", "type": "Float", "units": "kg m^2"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.025, "group": "Simulation In Hardware", "increment": 0.005, "longDesc": "The inertia is a 3 by 3 symmetric matrix. It represents the difficulty of the vehicle to modify its angular rate.", "min": 0.0, "name": "SIH_IYY", "shortDesc": "Vehicle inertia about Y axis", "type": "Float", "units": "kg m^2"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Simulation In Hardware", "increment": 0.005, "longDesc": "The inertia is a 3 by 3 symmetric matrix. This value can be set to 0 for a quad symmetric about its center of mass.", "name": "SIH_IYZ", "shortDesc": "Vehicle cross term inertia yz", "type": "Float", "units": "kg m^2"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.03, "group": "Simulation In Hardware", "increment": 0.005, "longDesc": "The inertia is a 3 by 3 symmetric matrix. It represents the difficulty of the vehicle to modify its angular rate.", "min": 0.0, "name": "SIH_IZZ", "shortDesc": "Vehicle inertia about Z axis", "type": "Float", "units": "kg m^2"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Simulation In Hardware", "increment": 0.05, "longDesc": "Physical coefficient representing the friction with air particules. The greater this value, the slower the quad will move. Drag force function of velocity: D=-KDV*V. The maximum freefall velocity can be computed as V=10*MASS/KDV [m/s]", "min": 0.0, "name": "SIH_KDV", "shortDesc": "First order drag coefficient", "type": "Float", "units": "N/(m/s)"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.025, "group": "Simulation In Hardware", "increment": 0.005, "longDesc": "Physical coefficient representing the friction with air particules during rotations. The greater this value, the slower the quad will rotate. Aerodynamic moment function of body rate: Ma=-KDW*W_B. This value can be set to 0 if unknown.", "min": 0.0, "name": "SIH_KDW", "shortDesc": "First order angular damper coefficient", "type": "Float", "units": "Nm/(rad/s)"}, {"category": "Standard", "decimalPlaces": 2, "default": 489.4, "group": "Simulation In Hardware", "increment": 0.01, "longDesc": "This value represents the Above Mean Sea Level (AMSL) altitude where the simulation begins. If using FlightGear as a visual animation, this value can be tweaked such that the vehicle lies on the ground at takeoff. LAT0, LON0, H0, MU_X, MU_Y, and MU_Z should ideally be consistent among each others to represent a physical ground location on Earth.", "max": 8848.0, "min": -420.0, "name": "SIH_LOC_H0", "shortDesc": "Initial AMSL ground altitude", "type": "Float", "units": "m"}, {"category": "Standard", "default": 47.397742, "group": "Simulation In Hardware", "longDesc": "This value represents the North-South location on Earth where the simulation begins. LAT0, LON0, H0, MU_X, MU_Y, and MU_Z should ideally be consistent among each others to represent a physical ground location on Earth.", "max": 90.0, "min": -90.0, "name": "SIH_LOC_LAT0", "shortDesc": "Initial geodetic latitude", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 8.545594, "group": "Simulation In Hardware", "longDesc": "This value represents the East-West location on Earth where the simulation begins. LAT0, LON0, H0, MU_X, MU_Y, and MU_Z should ideally be consistent among each others to represent a physical ground location on Earth.", "max": 180.0, "min": -180.0, "name": "SIH_LOC_LON0", "shortDesc": "Initial geodetic longitude", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "Simulation In Hardware", "increment": 0.05, "longDesc": "This is the arm length generating the pitching moment This value can be measured with a ruler. This corresponds to half the distance between the front and rear motors.", "min": 0.0, "name": "SIH_L_PITCH", "shortDesc": "Pitch arm length", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "Simulation In Hardware", "increment": 0.05, "longDesc": "This is the arm length generating the rolling moment This value can be measured with a ruler. This corresponds to half the distance between the left and right motors.", "min": 0.0, "name": "SIH_L_ROLL", "shortDesc": "Roll arm length", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Simulation In Hardware", "increment": 0.1, "longDesc": "This value can be measured by weighting the quad on a scale.", "min": 0.0, "name": "SIH_MASS", "shortDesc": "Vehicle mass", "type": "Float", "units": "kg"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.1, "group": "Simulation In Hardware", "increment": 0.05, "longDesc": "This is the maximum torque delivered by one propeller when the motor is running at full speed. This value is usually about few percent of the maximum thrust force.", "min": 0.0, "name": "SIH_Q_MAX", "shortDesc": "Max propeller torque", "type": "Float", "units": "Nm"}, {"category": "Standard", "decimalPlaces": 2, "default": 5.0, "group": "Simulation In Hardware", "increment": 0.5, "longDesc": "This is the maximum force delivered by one propeller when the motor is running at full speed. This value is usually about 5 times the mass of the quadrotor.", "min": 0.0, "name": "SIH_T_MAX", "shortDesc": "Max propeller thrust force", "type": "Float", "units": "N"}, {"category": "Standard", "default": 0.05, "group": "Simulation In Hardware", "longDesc": "the time taken for the thruster to step from 0 to 100% should be about 4 times tau", "name": "SIH_T_TAU", "shortDesc": "thruster time constant tau", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Simulation In Hardware", "name": "SIH_VEHICLE_TYPE", "rebootRequired": true, "shortDesc": "Vehicle type", "type": "Int32", "values": [{"description": "Quadcopter", "value": 0}, {"description": "Fixed-Wing", "value": 1}, {"description": "Tailsitter", "value": 2}, {"description": "Standard VTOL", "value": 3}, {"description": "Hexacopter", "value": 4}]}, {"bitmask": [{"description": "Stuck", "index": 0}, {"description": "Drift", "index": 1}], "category": "Standard", "default": 0, "group": "Simulator", "longDesc": "Stuck: freeze the measurement to the current location Drift: add a linearly growing bias to the sensor data", "max": 3, "min": 0, "name": "SIM_AGP_FAIL", "shortDesc": "AGP failure mode", "type": "Int32"}, {"category": "Standard", "default": 0.0, "group": "Simulator", "name": "SIM_BARO_OFF_P", "shortDesc": "simulated barometer pressure offset", "type": "Float"}, {"category": "Standard", "default": 0.0, "group": "Simulator", "name": "SIM_BARO_OFF_T", "shortDesc": "simulated barometer temperature offset", "type": "Float", "units": "celcius"}, {"category": "Standard", "default": 10, "group": "Simulator", "max": 50, "min": 0, "name": "SIM_GPS_USED", "shortDesc": "simulated GPS number of satellites used", "type": "Int32"}, {"category": "Standard", "default": 0.0, "group": "Simulator", "name": "SIM_MAG_OFFSET_X", "shortDesc": "simulated magnetometer X offset", "type": "Float", "units": "gauss"}, {"category": "Standard", "default": 0.0, "group": "Simulator", "name": "SIM_MAG_OFFSET_Y", "shortDesc": "simulated magnetometer Y offset", "type": "Float", "units": "gauss"}, {"category": "Standard", "default": 0.0, "group": "Simulator", "name": "SIM_MAG_OFFSET_Z", "shortDesc": "simulated magnetometer Z offset", "type": "Float", "units": "gauss"}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "Set to 1 to reset parameters on next system startup (setting defaults). Platform-specific values are used if available. RC* parameters are preserved.", "name": "SYS_AUTOCONFIG", "shortDesc": "Automatically configure default values", "type": "Int32", "values": [{"description": "Keep parameters", "value": 0}, {"description": "Reset parameters to airframe defaults", "value": 1}]}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "CHANGING THIS VALUE REQUIRES A RESTART. Defines the auto-start script used to bootstrap the system.", "max": 9999999, "min": 0, "name": "SYS_AUTOSTART", "rebootRequired": true, "shortDesc": "Auto-start script index", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "If enabled, update the bootloader on the next boot. WARNING: do not cut the power during an update process, otherwise you will have to recover using some alternative method (e.g. JTAG). Instructions: - Insert an SD card - Enable this parameter - Reboot the board (plug the power or send a reboot command) - Wait until the board comes back up (or at least 2 minutes) - If it does not come back, check the file bootlog.txt on the SD card", "name": "SYS_BL_UPDATE", "rebootRequired": true, "shortDesc": "Bootloader update", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "0 : Set to 0 to do nothing 1 : Set to 1 to start a calibration at next boot This parameter is reset to zero when the temperature calibration starts. default (0, no calibration)", "max": 1, "min": 0, "name": "SYS_CAL_ACCEL", "shortDesc": "Enable auto start of accelerometer thermal calibration at the next power up", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "0 : Set to 0 to do nothing 1 : Set to 1 to start a calibration at next boot This parameter is reset to zero when the temperature calibration starts. default (0, no calibration)", "max": 1, "min": 0, "name": "SYS_CAL_BARO", "shortDesc": "Enable auto start of barometer thermal calibration at the next power up", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "0 : Set to 0 to do nothing 1 : Set to 1 to start a calibration at next boot This parameter is reset to zero when the temperature calibration starts. default (0, no calibration)", "max": 1, "min": 0, "name": "SYS_CAL_GYRO", "shortDesc": "Enable auto start of rate gyro thermal calibration at the next power up", "type": "Int32"}, {"category": "Standard", "default": 24, "group": "System", "longDesc": "A temperature increase greater than this value is required during calibration. Calibration will complete for each sensor when the temperature increase above the starting temperature exceeds the value set by SYS_CAL_TDEL. If the temperature rise is insufficient, the calibration will continue indefinitely and the board will need to be repowered to exit.", "min": 10, "name": "SYS_CAL_TDEL", "shortDesc": "Required temperature rise during thermal calibration", "type": "Int32", "units": "celcius"}, {"category": "Standard", "default": 10, "group": "System", "longDesc": "Temperature calibration will not start if the temperature of any sensor is higher than the value set by SYS_CAL_TMAX.", "name": "SYS_CAL_TMAX", "shortDesc": "Maximum starting temperature for thermal calibration", "type": "Int32", "units": "celcius"}, {"category": "Standard", "default": 5, "group": "System", "longDesc": "Temperature calibration for each sensor will ignore data if the temperature is lower than the value set by SYS_CAL_TMIN.", "name": "SYS_CAL_TMIN", "shortDesc": "Minimum starting temperature for thermal calibration", "type": "Int32", "units": "celcius"}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "If the board supports persistent storage (i.e., the KConfig variable DATAMAN_PERSISTENT_STORAGE is set), the 'Default storage' backend uses a file on persistent storage. If not supported, this backend uses non-persistent storage in RAM.", "name": "SYS_DM_BACKEND", "rebootRequired": true, "shortDesc": "Dataman storage backend", "type": "Int32", "values": [{"description": "Dataman disabled", "value": -1}, {"description": "Default storage", "value": 0}, {"description": "RAM storage", "value": 1}]}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "If enabled, future sensor calibrations will be stored to /fs/mtd_caldata. Note: this is only supported on boards with a separate calibration storage /fs/mtd_caldata.", "name": "SYS_FAC_CAL_MODE", "shortDesc": "Enable factory calibration mode", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "All sensors", "value": 1}, {"description": "All sensors except mag", "value": 2}]}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "If enabled allows MAVLink INJECT_FAILURE commands. WARNING: the failures can easily cause crashes and are to be used with caution!", "name": "SYS_FAILURE_EN", "shortDesc": "Enable failure injection", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "System", "longDesc": "Disable this if the board has no barometer, such as some of the Omnibus F4 SD variants. If disabled, the preflight checks will not check for the presence of a barometer.", "name": "SYS_HAS_BARO", "rebootRequired": true, "shortDesc": "Control if the vehicle has a barometer", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "System", "longDesc": "Disable this if the system has no GPS. If disabled, the sensors hub will not process sensor_gps, and GPS will not be available for the rest of the system.", "name": "SYS_HAS_GPS", "rebootRequired": true, "shortDesc": "Control if the vehicle has a GPS", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "System", "longDesc": "0: System has no magnetometer, preflight checks should pass without one. 1-N: Require the presence of N magnetometer sensors for check to pass.", "name": "SYS_HAS_MAG", "rebootRequired": true, "shortDesc": "Control if and how many magnetometers are expected", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "Set this to 0 if the board has no airspeed sensor. If set to 0, the preflight checks will not check for the presence of an airspeed sensor.", "max": 1, "min": 0, "name": "SYS_HAS_NUM_ASPD", "shortDesc": "Control if the vehicle has an airspeed sensor", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "The preflight check will fail if fewer than this number of distance sensors with valid data is present. Disable the check with 0.", "max": 4, "min": 0, "name": "SYS_HAS_NUM_DIST", "shortDesc": "Number of distance sensors to check being available", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "The preflight check will fail if fewer than this number of optical flow sensors with valid data are present.", "max": 1, "min": 0, "name": "SYS_HAS_NUM_OF", "shortDesc": "Number of optical flow sensors required to be available", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "While enabled the system will boot in Hardware-In-The-Loop (HITL) or Simulation-In-Hardware (SIH) mode and not enable all sensors and checks. When disabled the same vehicle can be flown normally. Set to 'external HITL', if the system should perform as if it were a real vehicle (the only difference to a real system is then only the parameter value, which can be used for log analysis).", "name": "SYS_HITL", "rebootRequired": true, "shortDesc": "Enable HITL/SIH mode on next boot", "type": "Int32", "values": [{"description": "external HITL", "value": -1}, {"description": "HITL and SIH disabled", "value": 0}, {"description": "HITL enabled", "value": 1}, {"description": "SIH enabled", "value": 2}]}, {"category": "Standard", "default": 1, "group": "System", "longDesc": "This is used internally only: an airframe configuration might set an expected parameter version value via PARAM_DEFAULTS_VER. This is checked on bootup against SYS_PARAM_VER, and if they do not match, parameters are reset and reloaded from the airframe configuration.", "min": 0, "name": "SYS_PARAM_VER", "shortDesc": "Parameter version", "type": "Int32"}, {"category": "Standard", "default": 1.0, "group": "System", "longDesc": "Set to 0 to disable, 1 for maximum brightness", "name": "SYS_RGB_MAXBRT", "shortDesc": "RGB Led brightness limit", "type": "Float", "units": "%"}, {"category": "Standard", "default": 1, "group": "System", "name": "SYS_STCK_EN", "shortDesc": "Enable stack checking", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 2, "group": "Testing", "name": "TEST_1", "shortDesc": "TEST_1", "type": "Int32"}, {"category": "Standard", "default": 4, "group": "Testing", "name": "TEST_2", "shortDesc": "TEST_2", "type": "Int32"}, {"category": "Standard", "default": 5.0, "group": "Testing", "name": "TEST_3", "shortDesc": "TEST_3", "type": "Float"}, {"category": "Standard", "default": 0.01, "group": "Testing", "name": "TEST_D", "shortDesc": "TEST_D", "type": "Float"}, {"category": "Standard", "default": 2.0, "group": "Testing", "name": "TEST_DEV", "shortDesc": "TEST_DEV", "type": "Float"}, {"category": "Standard", "default": 10.0, "group": "Testing", "name": "TEST_D_LP", "shortDesc": "TEST_D_LP", "type": "Float"}, {"category": "Standard", "default": 10.0, "group": "Testing", "name": "TEST_HP", "shortDesc": "TEST_HP", "type": "Float"}, {"category": "Standard", "default": 0.1, "group": "Testing", "name": "TEST_I", "shortDesc": "TEST_I", "type": "Float"}, {"category": "Standard", "default": 1.0, "group": "Testing", "name": "TEST_I_MAX", "shortDesc": "TEST_I_MAX", "type": "Float"}, {"category": "Standard", "default": 10.0, "group": "Testing", "name": "TEST_LP", "shortDesc": "TEST_LP", "type": "Float"}, {"category": "Standard", "default": 1.0, "group": "Testing", "name": "TEST_MAX", "shortDesc": "TEST_MAX", "type": "Float"}, {"category": "Standard", "default": 1.0, "group": "Testing", "name": "TEST_MEAN", "shortDesc": "TEST_MEAN", "type": "Float"}, {"category": "Standard", "default": -1.0, "group": "Testing", "name": "TEST_MIN", "shortDesc": "TEST_MIN", "type": "Float"}, {"category": "Standard", "default": 0.2, "group": "Testing", "name": "TEST_P", "shortDesc": "TEST_P", "type": "Float"}, {"category": "Standard", "default": 12345678, "group": "Testing", "name": "TEST_PARAMS", "shortDesc": "TEST_PARAMS", "type": "Int32"}, {"category": "Standard", "default": 16, "group": "Testing", "name": "TEST_RC2_X", "shortDesc": "TEST_RC2_X", "type": "Int32"}, {"category": "Standard", "default": 8, "group": "Testing", "name": "TEST_RC_X", "shortDesc": "TEST_RC_X", "type": "Int32"}, {"category": "Standard", "default": 0.5, "group": "Testing", "name": "TEST_TRIM", "shortDesc": "TEST_TRIM", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_A0_ID", "shortDesc": "ID of Accelerometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_A0_TMAX", "shortDesc": "Accelerometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_TMIN", "shortDesc": "Accelerometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_A0_TREF", "shortDesc": "Accelerometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X0_0", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X0_1", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X0_2", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X1_0", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X1_1", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X1_2", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X2_0", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X2_1", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X2_2", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X3_0", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X3_1", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X3_2", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_A1_ID", "shortDesc": "ID of Accelerometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_A1_TMAX", "shortDesc": "Accelerometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_TMIN", "shortDesc": "Accelerometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_A1_TREF", "shortDesc": "Accelerometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X0_0", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X0_1", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X0_2", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X1_0", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X1_1", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X1_2", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X2_0", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X2_1", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X2_2", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X3_0", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X3_1", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X3_2", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_A2_ID", "shortDesc": "ID of Accelerometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_A2_TMAX", "shortDesc": "Accelerometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_TMIN", "shortDesc": "Accelerometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_A2_TREF", "shortDesc": "Accelerometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X0_0", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X0_1", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X0_2", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X1_0", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X1_1", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X1_2", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X2_0", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X2_1", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X2_2", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X3_0", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X3_1", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X3_2", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_A3_ID", "shortDesc": "ID of Accelerometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_A3_TMAX", "shortDesc": "Accelerometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_TMIN", "shortDesc": "Accelerometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_A3_TREF", "shortDesc": "Accelerometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X0_0", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X0_1", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X0_2", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X1_0", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X1_1", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X1_2", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X2_0", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X2_1", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X2_2", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X3_0", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X3_1", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X3_2", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Thermal Compensation", "name": "TC_A_ENABLE", "rebootRequired": true, "shortDesc": "Thermal compensation for accelerometer sensors", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_B0_ID", "shortDesc": "ID of Barometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 75.0, "group": "Thermal Compensation", "name": "TC_B0_TMAX", "shortDesc": "Barometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 5.0, "group": "Thermal Compensation", "name": "TC_B0_TMIN", "shortDesc": "Barometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 40.0, "group": "Thermal Compensation", "name": "TC_B0_TREF", "shortDesc": "Barometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B0_X0", "shortDesc": "Barometer offset temperature ^0 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B0_X1", "shortDesc": "Barometer offset temperature ^1 polynomial coefficients", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B0_X2", "shortDesc": "Barometer offset temperature ^2 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B0_X3", "shortDesc": "Barometer offset temperature ^3 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B0_X4", "shortDesc": "Barometer offset temperature ^4 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B0_X5", "shortDesc": "Barometer offset temperature ^5 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_B1_ID", "shortDesc": "ID of Barometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 75.0, "group": "Thermal Compensation", "name": "TC_B1_TMAX", "shortDesc": "Barometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 5.0, "group": "Thermal Compensation", "name": "TC_B1_TMIN", "shortDesc": "Barometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 40.0, "group": "Thermal Compensation", "name": "TC_B1_TREF", "shortDesc": "Barometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B1_X0", "shortDesc": "Barometer offset temperature ^0 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B1_X1", "shortDesc": "Barometer offset temperature ^1 polynomial coefficients", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B1_X2", "shortDesc": "Barometer offset temperature ^2 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B1_X3", "shortDesc": "Barometer offset temperature ^3 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B1_X4", "shortDesc": "Barometer offset temperature ^4 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B1_X5", "shortDesc": "Barometer offset temperature ^5 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_B2_ID", "shortDesc": "ID of Barometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 75.0, "group": "Thermal Compensation", "name": "TC_B2_TMAX", "shortDesc": "Barometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 5.0, "group": "Thermal Compensation", "name": "TC_B2_TMIN", "shortDesc": "Barometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 40.0, "group": "Thermal Compensation", "name": "TC_B2_TREF", "shortDesc": "Barometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B2_X0", "shortDesc": "Barometer offset temperature ^0 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B2_X1", "shortDesc": "Barometer offset temperature ^1 polynomial coefficients", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B2_X2", "shortDesc": "Barometer offset temperature ^2 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B2_X3", "shortDesc": "Barometer offset temperature ^3 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B2_X4", "shortDesc": "Barometer offset temperature ^4 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B2_X5", "shortDesc": "Barometer offset temperature ^5 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_B3_ID", "shortDesc": "ID of Barometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 75.0, "group": "Thermal Compensation", "name": "TC_B3_TMAX", "shortDesc": "Barometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 5.0, "group": "Thermal Compensation", "name": "TC_B3_TMIN", "shortDesc": "Barometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 40.0, "group": "Thermal Compensation", "name": "TC_B3_TREF", "shortDesc": "Barometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B3_X0", "shortDesc": "Barometer offset temperature ^0 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B3_X1", "shortDesc": "Barometer offset temperature ^1 polynomial coefficients", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B3_X2", "shortDesc": "Barometer offset temperature ^2 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B3_X3", "shortDesc": "Barometer offset temperature ^3 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B3_X4", "shortDesc": "Barometer offset temperature ^4 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B3_X5", "shortDesc": "Barometer offset temperature ^5 polynomial coefficient", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Thermal Compensation", "name": "TC_B_ENABLE", "rebootRequired": true, "shortDesc": "Thermal compensation for barometric pressure sensors", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_G0_ID", "shortDesc": "ID of Gyro that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_G0_TMAX", "shortDesc": "Gyro calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_TMIN", "shortDesc": "Gyro calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_G0_TREF", "shortDesc": "Gyro calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X0_0", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X0_1", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X0_2", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X1_0", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X1_1", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X1_2", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X2_0", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X2_1", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X2_2", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X3_0", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X3_1", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X3_2", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_G1_ID", "shortDesc": "ID of Gyro that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_G1_TMAX", "shortDesc": "Gyro calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_TMIN", "shortDesc": "Gyro calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_G1_TREF", "shortDesc": "Gyro calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X0_0", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X0_1", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X0_2", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X1_0", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X1_1", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X1_2", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X2_0", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X2_1", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X2_2", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X3_0", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X3_1", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X3_2", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_G2_ID", "shortDesc": "ID of Gyro that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_G2_TMAX", "shortDesc": "Gyro calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_TMIN", "shortDesc": "Gyro calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_G2_TREF", "shortDesc": "Gyro calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X0_0", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X0_1", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X0_2", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X1_0", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X1_1", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X1_2", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X2_0", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X2_1", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X2_2", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X3_0", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X3_1", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X3_2", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_G3_ID", "shortDesc": "ID of Gyro that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_G3_TMAX", "shortDesc": "Gyro calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_TMIN", "shortDesc": "Gyro calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_G3_TREF", "shortDesc": "Gyro calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X0_0", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X0_1", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X0_2", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X1_0", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X1_1", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X1_2", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X2_0", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X2_1", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X2_2", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X3_0", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X3_1", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X3_2", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Thermal Compensation", "name": "TC_G_ENABLE", "rebootRequired": true, "shortDesc": "Thermal compensation for rate gyro sensors", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_M0_ID", "shortDesc": "ID of Magnetometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_M0_TMAX", "shortDesc": "Magnetometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_TMIN", "shortDesc": "Magnetometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_M0_TREF", "shortDesc": "Magnetometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X0_0", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X0_1", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X0_2", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X1_0", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X1_1", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X1_2", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X2_0", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X2_1", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X2_2", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X3_0", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X3_1", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X3_2", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_M1_ID", "shortDesc": "ID of Magnetometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_M1_TMAX", "shortDesc": "Magnetometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_TMIN", "shortDesc": "Magnetometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_M1_TREF", "shortDesc": "Magnetometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X0_0", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X0_1", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X0_2", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X1_0", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X1_1", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X1_2", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X2_0", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X2_1", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X2_2", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X3_0", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X3_1", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X3_2", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_M2_ID", "shortDesc": "ID of Magnetometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_M2_TMAX", "shortDesc": "Magnetometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_TMIN", "shortDesc": "Magnetometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_M2_TREF", "shortDesc": "Magnetometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X0_0", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X0_1", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X0_2", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X1_0", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X1_1", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X1_2", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X2_0", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X2_1", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X2_2", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X3_0", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X3_1", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X3_2", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_M3_ID", "shortDesc": "ID of Magnetometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_M3_TMAX", "shortDesc": "Magnetometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_TMIN", "shortDesc": "Magnetometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_M3_TREF", "shortDesc": "Magnetometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X0_0", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X0_1", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X0_2", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X1_0", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X1_1", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X1_2", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X2_0", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X2_1", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X2_2", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X3_0", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X3_1", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X3_2", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Thermal Compensation", "name": "TC_M_ENABLE", "rebootRequired": true, "shortDesc": "Thermal compensation for magnetometer sensors", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0.0, "group": "UUV Attitude Control", "name": "UUV_DIRCT_PITCH", "shortDesc": "Direct pitch input", "type": "Float"}, {"category": "Standard", "default": 0.0, "group": "UUV Attitude Control", "name": "UUV_DIRCT_ROLL", "shortDesc": "Direct roll input", "type": "Float"}, {"category": "Standard", "default": 0.0, "group": "UUV Attitude Control", "name": "UUV_DIRCT_THRUST", "shortDesc": "Direct thrust input", "type": "Float"}, {"category": "Standard", "default": 0.0, "group": "UUV Attitude Control", "name": "UUV_DIRCT_YAW", "shortDesc": "Direct yaw input", "type": "Float"}, {"category": "Standard", "default": 0, "group": "UUV Attitude Control", "name": "UUV_INPUT_MODE", "shortDesc": "Select Input Mode", "type": "Int32", "values": [{"description": "use Attitude Setpoints", "value": 0}, {"description": "Direct Feedthrough", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 2.0, "group": "UUV Attitude Control", "name": "UUV_PITCH_D", "shortDesc": "Pitch differential gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 4.0, "group": "UUV Attitude Control", "name": "UUV_PITCH_P", "shortDesc": "Pitch proportional gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.5, "group": "UUV Attitude Control", "name": "UUV_ROLL_D", "shortDesc": "Roll differential gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 4.0, "group": "UUV Attitude Control", "name": "UUV_ROLL_P", "shortDesc": "Roll proportional gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 2.0, "group": "UUV Attitude Control", "name": "UUV_YAW_D", "shortDesc": "Yaw differential gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 4.0, "group": "UUV Attitude Control", "name": "UUV_YAW_P", "shortDesc": "Yawh proportional gain", "type": "Float"}, {"category": "Standard", "default": 0.2, "group": "UUV Position Control", "name": "UUV_GAIN_X_D", "shortDesc": "Gain of D controller X", "type": "Float"}, {"category": "Standard", "default": 1.0, "group": "UUV Position Control", "name": "UUV_GAIN_X_P", "shortDesc": "Gain of P controller X", "type": "Float"}, {"category": "Standard", "default": 0.2, "group": "UUV Position Control", "name": "UUV_GAIN_Y_D", "shortDesc": "Gain of D controller Y", "type": "Float"}, {"category": "Standard", "default": 1.0, "group": "UUV Position Control", "name": "UUV_GAIN_Y_P", "shortDesc": "Gain of P controller Y", "type": "Float"}, {"category": "Standard", "default": 0.2, "group": "UUV Position Control", "name": "UUV_GAIN_Z_D", "shortDesc": "Gain of D controller Z", "type": "Float"}, {"category": "Standard", "default": 1.0, "group": "UUV Position Control", "name": "UUV_GAIN_Z_P", "shortDesc": "Gain of P controller Z", "type": "Float"}, {"category": "Standard", "default": 1, "group": "UUV Position Control", "name": "UUV_STAB_MODE", "shortDesc": "Stabilization mode(1) or Position Control(0)", "type": "Int32", "values": [{"description": "Position Control", "value": 0}, {"description": "Stabilization Mode", "value": 1}]}, {"category": "Standard", "default": 2130706433, "group": "UXRCE-DDS Client", "longDesc": "If ethernet is enabled and is the selected configuration for uXRCE-DDS, the selected Agent IP address will be set and used. Decimal dot notation is not supported. IP address must be provided in int32 format. For example, 192.168.1.2 is mapped to -1062731518; 127.0.0.1 is mapped to 2130706433.", "name": "UXRCE_DDS_AG_IP", "rebootRequired": true, "shortDesc": "uXRCE-DDS Agent IP address", "type": "Int32"}, {"category": "System", "default": 0, "group": "UXRCE-DDS Client", "longDesc": "uXRCE-DDS domain ID", "name": "UXRCE_DDS_DOM_ID", "rebootRequired": true, "shortDesc": "uXRCE-DDS domain ID", "type": "Int32"}, {"category": "System", "default": 1, "group": "UXRCE-DDS Client", "longDesc": "uXRCE-DDS key, must be different from zero. In a single agent - multi client configuration, each client must have a unique session key.", "name": "UXRCE_DDS_KEY", "rebootRequired": true, "shortDesc": "uXRCE-DDS session key", "type": "Int32"}, {"category": "Standard", "default": 8888, "group": "UXRCE-DDS Client", "longDesc": "If ethernet is enabled and is the selected configuration for uXRCE-DDS, the selected UDP port will be set and used.", "max": 65535, "min": 0, "name": "UXRCE_DDS_PRT", "rebootRequired": true, "shortDesc": "uXRCE-DDS UDP port", "type": "Int32"}, {"category": "System", "default": 0, "group": "UXRCE-DDS Client", "longDesc": "Set the participant configuration on the Agent's system. 0: Use the default configuration. 1: Restrict messages to localhost (use in combination with ROS_LOCALHOST_ONLY=1). 2: Use a custom participant with the profile name \"px4_participant\".", "max": 2, "min": 0, "name": "UXRCE_DDS_PTCFG", "rebootRequired": true, "shortDesc": "uXRCE-DDS participant configuration", "type": "Int32", "values": [{"description": "Default", "value": 0}, {"description": "Localhost-only", "value": 1}, {"description": "Custom participant", "value": 2}]}, {"category": "System", "default": -1, "group": "UXRCE-DDS Client", "longDesc": "Specifies after how many seconds without receiving data the DDS connection is reestablished. A value less than one disables the RX rate timeout.", "name": "UXRCE_DDS_RX_TO", "rebootRequired": true, "shortDesc": "RX rate timeout configuration", "type": "Int32", "units": "s"}, {"category": "System", "default": 0, "group": "UXRCE-DDS Client", "longDesc": "When enabled along with UXRCE_DDS_SYNCT, uxrce_dds_client will set the system clock using the agents UTC timestamp.", "name": "UXRCE_DDS_SYNCC", "rebootRequired": true, "shortDesc": "Enable uXRCE-DDS system clock synchronization", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": 1, "group": "UXRCE-DDS Client", "longDesc": "When enabled, uxrce_dds_client will synchronize the timestamps of the incoming and outgoing messages measuring the offset between the Agent OS time and the PX4 time.", "name": "UXRCE_DDS_SYNCT", "rebootRequired": true, "shortDesc": "Enable uXRCE-DDS timestamp synchronization", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": 3, "group": "UXRCE-DDS Client", "longDesc": "Specifies after how many seconds without sending data the DDS connection is reestablished. A value less than one disables the TX rate timeout.", "name": "UXRCE_DDS_TX_TO", "rebootRequired": true, "shortDesc": "TX rate timeout configuration", "type": "Int32", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 8.0, "group": "VTOL Attitude Control", "increment": 1.0, "longDesc": "Airspeed at which we can start blending both fw and mc controls. Set to 0 to disable.", "max": 30.0, "min": 0.0, "name": "VT_ARSP_BLEND", "shortDesc": "Transition blending airspeed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 10.0, "group": "VTOL Attitude Control", "increment": 1.0, "longDesc": "Airspeed at which we can switch to fw mode", "max": 30.0, "min": 0.0, "name": "VT_ARSP_TRANS", "shortDesc": "Transition airspeed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "VTOL Attitude Control", "increment": 0.1, "longDesc": "Time in seconds it takes to tilt form VT_TILT_FW to VT_TILT_MC.", "max": 10.0, "min": 0.1, "name": "VT_BT_TILT_DUR", "shortDesc": "Duration motor tilt up in backtransition", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "VTOL Attitude Control", "increment": 0.05, "max": 0.3, "min": 0.0, "name": "VT_B_DEC_I", "shortDesc": "Backtransition deceleration setpoint to pitch I gain", "type": "Float", "units": "rad s/m"}, {"category": "Standard", "decimalPlaces": 2, "default": 2.0, "group": "VTOL Attitude Control", "increment": 0.1, "longDesc": "Used to calculate back transition distance in an auto mode. For standard vtol and tiltrotors a controller is used to track this value during the transition.", "max": 10.0, "min": 0.5, "name": "VT_B_DEC_MSS", "shortDesc": "Approximate deceleration during back transition", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": 10.0, "group": "VTOL Attitude Control", "increment": 1.0, "longDesc": "Transition is also declared over if the groundspeed drops below MPC_XY_CRUISE.", "max": 20.0, "min": 0.1, "name": "VT_B_TRANS_DUR", "shortDesc": "Maximum duration of a back transition", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "VTOL Attitude Control", "increment": 0.1, "longDesc": "This sets the duration during which the MC motors ramp up to the commanded thrust during the back transition stage.", "max": 20.0, "min": 0.0, "name": "VT_B_TRANS_RAMP", "shortDesc": "Back transition MC motor ramp up time", "type": "Float", "units": "s"}, {"category": "Standard", "default": 1, "group": "VTOL Attitude Control", "longDesc": "If set to 1 the control surfaces are locked at the disarmed value in multicopter mode.", "name": "VT_ELEV_MC_LOCK", "shortDesc": "Lock control surfaces in hover", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "VTOL Attitude Control", "longDesc": "Prevents downforce from pitching the body down when facing wind. Uses puller/pusher (standard VTOL), or forward-tilt (tiltrotor VTOL) to accelerate forward instead. Only active if demanded pitch is below VT_PITCH_MIN. Use VT_FWD_THRUST_SC to tune it. Descend mode is treated as Landing too. Only active (if enabled) in height-rate controlled modes.", "name": "VT_FWD_THRUST_EN", "shortDesc": "Use fixed-wing actuation in hover to accelerate forward", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled (except LANDING)", "value": 1}, {"description": "Enabled if above MPC_LAND_ALT1", "value": 2}, {"description": "Enabled if above MPC_LAND_ALT2", "value": 3}, {"description": "Enabled constantly", "value": 4}, {"description": "Enabled if above MPC_LAND_ALT1 (except LANDING)", "value": 5}, {"description": "Enabled if above MPC_LAND_ALT2 (except LANDING)", "value": 6}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.7, "group": "VTOL Attitude Control", "increment": 0.01, "longDesc": "Scale applied to the demanded pitch (below VT_PITCH_MIN) to get the fixed-wing forward actuation in hover mode. Enabled via VT_FWD_THRUST_EN.", "max": 5.0, "min": 0.0, "name": "VT_FWD_THRUST_SC", "shortDesc": "Fixed-wing actuation thrust scale in hover", "type": "Float"}, {"bitmask": [{"description": "Yaw", "index": 0}, {"description": "Roll", "index": 1}, {"description": "Pitch", "index": 2}], "category": "Standard", "default": 0, "group": "VTOL Attitude Control", "longDesc": "Enable differential thrust seperately for roll, pitch, yaw in forward (fixed-wing) mode. The effectiveness of differential thrust around the corresponding axis can be tuned by setting VT_FW_DIFTHR_S_R / VT_FW_DIFTHR_S_P / VT_FW_DIFTHR_S_Y.", "max": 7, "min": 0, "name": "VT_FW_DIFTHR_EN", "shortDesc": "Differential thrust in forwards flight", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "VTOL Attitude Control", "increment": 0.1, "longDesc": "Differential thrust in forward flight is enabled via VT_FW_DIFTHR_EN.", "max": 2.0, "min": 0.0, "name": "VT_FW_DIFTHR_S_P", "shortDesc": "Pitch differential thrust factor in forward flight", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "VTOL Attitude Control", "increment": 0.1, "longDesc": "Differential thrust in forward flight is enabled via VT_FW_DIFTHR_EN.", "max": 2.0, "min": 0.0, "name": "VT_FW_DIFTHR_S_R", "shortDesc": "Roll differential thrust factor in forward flight", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "VTOL Attitude Control", "increment": 0.1, "longDesc": "Differential thrust in forward flight is enabled via VT_FW_DIFTHR_EN.", "max": 2.0, "min": 0.0, "name": "VT_FW_DIFTHR_S_Y", "shortDesc": "Yaw differential thrust factor in forward flight", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "VTOL Attitude Control", "increment": 1.0, "longDesc": "Minimum altitude for fixed-wing flight. When the vehicle is in fixed-wing mode and the altitude drops below this altitude (relative altitude above local origin), it will instantly switch back to MC mode and execute behavior defined in COM_QC_ACT.", "max": 200.0, "min": 0.0, "name": "VT_FW_MIN_ALT", "shortDesc": "Quad-chute altitude", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "VTOL Attitude Control", "increment": 1, "longDesc": "Maximum height above the ground (if available, otherwise above Home if available, otherwise above the local origin) where triggering a quad-chute is possible. At high altitudes there is a big risk to deplete the battery and therefore crash if quad-chuting there.", "min": 0, "name": "VT_FW_QC_HMAX", "shortDesc": "Quad-chute maximum height", "type": "Int32", "units": "m"}, {"category": "Standard", "default": 0, "group": "VTOL Attitude Control", "longDesc": "Absolute pitch threshold for quad-chute triggering in FW mode. Above this the vehicle will transition back to MC mode and execute behavior defined in COM_QC_ACT. Set to 0 do disable this threshold.", "max": 180, "min": 0, "name": "VT_FW_QC_P", "shortDesc": "Quad-chute max pitch threshold", "type": "Int32", "units": "deg"}, {"category": "Standard", "default": 0, "group": "VTOL Attitude Control", "longDesc": "Absolute roll threshold for quad-chute triggering in FW mode. Above this the vehicle will transition back to MC mode and execute behavior defined in COM_QC_ACT. Set to 0 do disable this threshold.", "max": 180, "min": 0, "name": "VT_FW_QC_R", "shortDesc": "Quad-chute max roll threshold", "type": "Int32", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 5.0, "group": "VTOL Attitude Control", "increment": 1.0, "longDesc": "Time in seconds used for a transition", "max": 20.0, "min": 0.1, "name": "VT_F_TRANS_DUR", "shortDesc": "Duration of a front transition", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "VTOL Attitude Control", "increment": 0.01, "max": 1.0, "min": 0.0, "name": "VT_F_TRANS_THR", "shortDesc": "Target throttle value for the transition to fixed-wing flight", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.0, "group": "VTOL Attitude Control", "increment": 0.5, "longDesc": "The duration of the front transition when there is no airspeed feedback available. When airspeed is used, transition timeout is declared if airspeed does not reach VT_ARSP_BLEND after this time.", "max": 30.0, "min": 1.0, "name": "VT_F_TR_OL_TM", "shortDesc": "Airspeed-less front transition time (open loop)", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": -5.0, "group": "VTOL Attitude Control", "increment": 0.1, "longDesc": "Overrides VT_PITCH_MIN when the vehicle is in LAND mode (hovering). During landing it can be beneficial to reduce the pitch angle to reduce the generated lift in head wind.", "max": 45.0, "min": -10.0, "name": "VT_LND_PITCH_MIN", "shortDesc": "Minimum pitch angle during hover landing", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": -5.0, "group": "VTOL Attitude Control", "increment": 0.1, "longDesc": "Any pitch setpoint below this value is translated to a forward force by the fixed-wing forward actuation if VT_FWD_TRHUST_EN is set.", "max": 45.0, "min": -10.0, "name": "VT_PITCH_MIN", "shortDesc": "Minimum pitch angle during hover", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.33, "group": "VTOL Attitude Control", "increment": 0.01, "longDesc": "Defines the slew rate of the puller/pusher throttle during transitions. Zero will deactivate the slew rate limiting and thus produce an instant throttle rise to the transition throttle VT_F_TRANS_THR.", "min": 0.0, "name": "VT_PSHER_SLEW", "shortDesc": "Pusher throttle ramp up slew rate", "type": "Float", "units": "1/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "VTOL Attitude Control", "increment": 1.0, "longDesc": "Altitude error threshold for quad-chute triggering during fixed-wing flight. The check is only active if altitude is controlled and the vehicle is below the current altitude reference. The altitude error is relative to the highest altitude the vehicle has achieved since it has flown below the current altitude reference. Set to 0 do disable.", "max": 200.0, "min": 0.0, "name": "VT_QC_ALT_LOSS", "shortDesc": "Quad-chute uncommanded descent threshold", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 20.0, "group": "VTOL Attitude Control", "increment": 1.0, "longDesc": "Altitude loss threshold for quad-chute triggering during VTOL transition to fixed-wing flight in altitude-controlled flight modes. Active until 5s after completing transition to fixed-wing. If the current altitude is more than this value below the altitude at the beginning of the transition, it will instantly switch back to MC mode and execute behavior defined in COM_QC_ACT. Set to 0 do disable this threshold.", "max": 50.0, "min": 0.0, "name": "VT_QC_T_ALT_LOSS", "shortDesc": "Quad-chute transition altitude loss threshold", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "VTOL Attitude Control", "increment": 0.1, "max": 1.0, "min": -1.0, "name": "VT_SPOILER_MC_LD", "shortDesc": "Spoiler setting while landing (hover)", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "VTOL Attitude Control", "increment": 0.01, "max": 1.0, "min": 0.0, "name": "VT_TILT_FW", "shortDesc": "Normalized tilt in FW", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "VTOL Attitude Control", "increment": 0.01, "max": 1.0, "min": 0.0, "name": "VT_TILT_MC", "shortDesc": "Normalized tilt in Hover", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.4, "group": "VTOL Attitude Control", "increment": 0.01, "max": 1.0, "min": 0.0, "name": "VT_TILT_TRANS", "shortDesc": "Normalized tilt in transition to FW", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 2.0, "group": "VTOL Attitude Control", "increment": 0.1, "longDesc": "Minimum time in seconds for front transition.", "max": 20.0, "min": 0.0, "name": "VT_TRANS_MIN_TM", "shortDesc": "Front transition minimum time", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.5, "group": "VTOL Attitude Control", "increment": 0.01, "longDesc": "Time in seconds it takes to tilt form VT_TILT_TRANS to VT_TILT_FW.", "max": 5.0, "min": 0.1, "name": "VT_TRANS_P2_DUR", "shortDesc": "Duration of front transition phase 2", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 15.0, "group": "VTOL Attitude Control", "increment": 1.0, "longDesc": "Time in seconds after which transition will be cancelled.", "max": 30.0, "min": 0.1, "name": "VT_TRANS_TIMEOUT", "shortDesc": "Front transition timeout", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "VTOL Attitude Control", "max": 2, "min": 0, "name": "VT_TYPE", "rebootRequired": true, "shortDesc": "VTOL Type (Tailsitter=0, Tiltrotor=1, Standard=2)", "type": "Int32", "values": [{"description": "Tailsitter", "value": 0}, {"description": "Tiltrotor", "value": 1}, {"description": "Standard", "value": 2}]}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "VTOL Attitude Control", "increment": 0.01, "longDesc": "The desired gain to convert roll sp into yaw rate sp.", "max": 3.0, "min": 0.0, "name": "WV_GAIN", "shortDesc": "Weather-vane roll angle to yawrate", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 80.0, "group": "VTOL Takeoff", "increment": 1.0, "longDesc": "Altitude relative to home at which vehicle will loiter after front transition.", "max": 300.0, "min": 20.0, "name": "VTO_LOITER_ALT", "shortDesc": "VTOL Takeoff relative loiter altitude", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Miscellaneous", "name": "UUV_SKIP_CTRL", "shortDesc": "Skip the controller", "type": "Int32", "values": [{"description": "use the module's controller", "value": 0}, {"description": "skip the controller and feedthrough the setpoints", "value": 1}]}], "translation": {"items": {"parameters": {"list": {"items": {"bitmask": {"list": {"key": "index", "translate": ["description"]}}, "values": {"list": {"key": "value", "translate": ["description"]}}}, "key": "name", "translate": ["shortDesc", "longDesc"], "translate-global": ["category", "group"]}}}}, "version": 1} \ No newline at end of file +{"parameters": [{"category": "Standard", "default": 75, "group": "UAVCAN Motor Parameters", "longDesc": "Speed controller bandwidth, in Hz. Higher values result in faster speed and current rise times, but may result in overshoot and higher current consumption. For fixed-wing aircraft, this value should be less than 50 Hz; for multirotors, values up to 100 Hz may provide improvements in responsiveness.", "max": 250, "min": 10, "name": "ctl_bw", "shortDesc": "Speed controller bandwidth", "type": "Int32", "units": "Hz"}, {"category": "Standard", "default": 1, "group": "UAVCAN Motor Parameters", "longDesc": "Motor spin direction as detected during initial enumeration. Use 0 or 1 to reverse direction.", "max": 1, "min": 0, "name": "ctl_dir", "shortDesc": "Reverse direction", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "UAVCAN Motor Parameters", "longDesc": "Speed (RPM) controller gain. Determines controller\n aggressiveness; units are amp-seconds per radian. Systems with\n higher rotational inertia (large props) will need gain increased;\n systems with low rotational inertia (small props) may need gain\n decreased. Higher values result in faster response, but may result\n in oscillation and excessive overshoot. Lower values result in a\n slower, smoother response.", "max": 1.0, "min": 0.0, "name": "ctl_gain", "shortDesc": "Speed (RPM) controller gain", "type": "Float", "units": "C/rad"}, {"category": "Standard", "decimalPlaces": 3, "default": 3.5, "group": "UAVCAN Motor Parameters", "longDesc": "Idle speed (e Hz)", "max": 100.0, "min": 0.0, "name": "ctl_hz_idle", "shortDesc": "Idle speed (e Hz)", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 25, "group": "UAVCAN Motor Parameters", "longDesc": "Spin-up rate (e Hz/s)", "max": 1000, "min": 5, "name": "ctl_start_rate", "shortDesc": "Spin-up rate (e Hz/s)", "type": "Int32", "units": "1/s^2"}, {"category": "Standard", "default": 0, "group": "UAVCAN Motor Parameters", "longDesc": "Index of this ESC in throttle command messages.", "max": 15, "min": 0, "name": "esc_index", "shortDesc": "Index of this ESC in throttle command messages.", "type": "Int32"}, {"category": "Standard", "default": 20034, "group": "UAVCAN Motor Parameters", "longDesc": "Extended status ID", "max": 1000000, "min": 1, "name": "id_ext_status", "shortDesc": "Extended status ID", "type": "Int32"}, {"category": "Standard", "default": 50000, "group": "UAVCAN Motor Parameters", "longDesc": "Extended status interval (\u00b5s)", "max": 1000000, "min": 0, "name": "int_ext_status", "shortDesc": "Extended status interval (\u00b5s)", "type": "Int32", "units": "us"}, {"category": "Standard", "default": 50000, "group": "UAVCAN Motor Parameters", "longDesc": "ESC status interval (\u00b5s)", "max": 1000000, "name": "int_status", "shortDesc": "ESC status interval (\u00b5s)", "type": "Int32", "units": "us"}, {"category": "Standard", "decimalPlaces": 3, "default": 12.0, "group": "UAVCAN Motor Parameters", "longDesc": "Motor current limit in amps. This determines the maximum\n current controller setpoint, as well as the maximum allowable\n current setpoint slew rate. This value should generally be set to\n the continuous current rating listed in the motor\u2019s specification\n sheet, or set equal to the motor\u2019s specified continuous power\n divided by the motor voltage limit.", "max": 80.0, "min": 1.0, "name": "mot_i_max", "shortDesc": "Motor current limit in amps", "type": "Float", "units": "A"}, {"category": "Standard", "default": 2300, "group": "UAVCAN Motor Parameters", "longDesc": "Motor Kv in RPM per volt. This can be taken from the motor\u2019s\n specification sheet; accuracy will help control performance but\n some deviation from the specified value is acceptable.", "max": 4000, "min": 0, "name": "mot_kv", "shortDesc": "Motor Kv in RPM per volt", "type": "Int32", "units": "rpm/V"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "UAVCAN Motor Parameters", "longDesc": "READ ONLY: Motor inductance in henries. This is measured on start-up.", "name": "mot_ls", "shortDesc": "READ ONLY: Motor inductance in henries.", "type": "Float", "units": "H"}, {"category": "Standard", "default": 14, "group": "UAVCAN Motor Parameters", "longDesc": "Number of motor poles. Used to convert mechanical speeds to\n electrical speeds. This number should be taken from the motor\u2019s\n specification sheet.", "max": 40, "min": 2, "name": "mot_num_poles", "shortDesc": "Number of motor poles.", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "UAVCAN Motor Parameters", "longDesc": "READ ONLY: Motor resistance in ohms. This is measured on start-up. When\n tuning a new motor, check that this value is approximately equal\n to the value shown in the motor\u2019s specification sheet.", "name": "mot_rs", "shortDesc": "READ ONLY: Motor resistance in ohms", "type": "Float", "units": "Ohm"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.5, "group": "UAVCAN Motor Parameters", "longDesc": "Acceleration limit (V)", "max": 1.0, "min": 0.01, "name": "mot_v_accel", "shortDesc": "Acceleration limit (V)", "type": "Float", "units": "V"}, {"category": "Standard", "decimalPlaces": 3, "default": 14.8, "group": "UAVCAN Motor Parameters", "longDesc": "Motor voltage limit in volts. The current controller\u2019s\n commanded voltage will never exceed this value. Note that this may\n safely be above the nominal voltage of the motor; to determine the\n actual motor voltage limit, divide the motor\u2019s rated power by the\n motor current limit.", "min": 0.0, "name": "mot_v_max", "shortDesc": "Motor voltage limit in volts", "type": "Float", "units": "V"}, {"category": "Standard", "default": 2, "group": "UAVCAN GNSS", "longDesc": "Dynamic model used in the GNSS positioning engine. 0 \u2013\n Automotive, 1 \u2013 Sea, 2 \u2013 Airborne.\n ", "max": 2, "min": 0, "name": "gnss.dyn_model", "shortDesc": "GNSS dynamic model", "type": "Int32", "values": [{"description": "Automotive", "value": 0}, {"description": "Sea", "value": 1}, {"description": "Airborne", "value": 2}]}, {"category": "Standard", "default": 1, "group": "UAVCAN GNSS", "longDesc": "Broadcast the old (deprecated) GNSS fix message\n uavcan.equipment.gnss.Fix alongside the new alternative\n uavcan.equipment.gnss.Fix2. It is recommended to\n disable this feature to reduce the CAN bus traffic.\n ", "max": 1, "min": 0, "name": "gnss.old_fix_msg", "shortDesc": "Broadcast old GNSS fix message", "type": "Int32", "values": [{"description": "Fix2", "value": 0}, {"description": "Fix and Fix2", "value": 1}]}, {"category": "Standard", "default": 0, "group": "UAVCAN GNSS", "longDesc": "Set the device health to Warning if the dimensionality of\n the GNSS solution is less than this value. 3 for the full (3D)\n solution, 2 for planar (2D) solution, 1 for time-only solution,\n 0 disables the feature.\n ", "max": 3, "min": 0, "name": "gnss.warn_dimens", "shortDesc": "device health warning", "type": "Int32", "values": [{"description": "disables the feature", "value": 0}, {"description": "time-only solution", "value": 1}, {"description": "planar (2D) solution", "value": 2}, {"description": "full (3D) solution", "value": 3}]}, {"category": "Standard", "default": 0, "group": "UAVCAN GNSS", "longDesc": "Set the device health to Warning if the number of satellites\n used in the GNSS solution is below this threshold. Zero\n disables the feature\n ", "name": "gnss.warn_sats", "shortDesc": "", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "UAVCAN GNSS", "longDesc": "Set the device health to Warning if the number of satellites\n used in the GNSS solution is below this threshold. Zero\n disables the feature\n ", "max": 1000000, "min": 0, "name": "uavcan.pubp-pres", "shortDesc": "", "type": "Int32", "units": "us"}, {"category": "Standard", "default": 0, "group": "ADSB", "longDesc": "Sets first 4 characters of a total of 8. Valid characters are A-Z, 0-9, \" \". Example \"PX4 \" -> 1347957792 For CALLSIGN shorter than 8 characters use the null terminator at the end '\\0'.", "name": "ADSB_CALLSIGN_1", "rebootRequired": true, "shortDesc": "First 4 characters of CALLSIGN", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "ADSB", "longDesc": "Sets second 4 characters of a total of 8. Valid characters are A-Z, 0-9, \" \" only. Example \"TEST\" -> 1413829460 For CALLSIGN shorter than 8 characters use the null terminator at the end '\\0'.", "name": "ADSB_CALLSIGN_2", "rebootRequired": true, "shortDesc": "Second 4 characters of CALLSIGN", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "ADSB", "longDesc": "Sets the vehicle emergency state", "max": 6, "min": 0, "name": "ADSB_EMERGC", "rebootRequired": true, "shortDesc": "ADSB-Out Emergency State", "type": "Int32", "values": [{"description": "NoEmergency", "value": 0}, {"description": "General", "value": 1}, {"description": "Medical", "value": 2}, {"description": "LowFuel", "value": 3}, {"description": "NoCommunications", "value": 4}, {"description": "Interference", "value": 5}, {"description": "Downed", "value": 6}]}, {"category": "Standard", "default": 14, "group": "ADSB", "longDesc": "Configure the emitter type of the vehicle.", "max": 15, "min": 0, "name": "ADSB_EMIT_TYPE", "rebootRequired": true, "shortDesc": "ADSB-Out Vehicle Emitter Type", "type": "Int32", "values": [{"description": "Unknown", "value": 0}, {"description": "Light", "value": 1}, {"description": "Small", "value": 2}, {"description": "Large", "value": 3}, {"description": "HighVortex", "value": 4}, {"description": "Heavy", "value": 5}, {"description": "Performance", "value": 6}, {"description": "Rotorcraft", "value": 7}, {"description": "RESERVED", "value": 8}, {"description": "Glider", "value": 9}, {"description": "LightAir", "value": 10}, {"description": "Parachute", "value": 11}, {"description": "UltraLight", "value": 12}, {"description": "RESERVED", "value": 13}, {"description": "UAV", "value": 14}, {"description": "Space", "value": 15}, {"description": "RESERVED", "value": 16}, {"description": "EmergencySurf", "value": 17}, {"description": "ServiceSurf", "value": 18}, {"description": "PointObstacle", "value": 19}]}, {"category": "Standard", "default": 0, "group": "ADSB", "longDesc": "Sets GPS lataral offset encoding", "max": 7, "min": 0, "name": "ADSB_GPS_OFF_LAT", "rebootRequired": true, "shortDesc": "ADSB-Out GPS Offset lat", "type": "Int32", "values": [{"description": "NoData", "value": 0}, {"description": "LatLeft2M", "value": 1}, {"description": "LatLeft4M", "value": 2}, {"description": "LatLeft6M", "value": 3}, {"description": "LatRight0M", "value": 4}, {"description": "LatRight2M", "value": 5}, {"description": "LatRight4M", "value": 6}, {"description": "LatRight6M", "value": 7}]}, {"category": "Standard", "default": 0, "group": "ADSB", "longDesc": "Sets GPS longitudinal offset encoding", "max": 1, "min": 0, "name": "ADSB_GPS_OFF_LON", "rebootRequired": true, "shortDesc": "ADSB-Out GPS Offset lon", "type": "Int32", "values": [{"description": "NoData", "value": 0}, {"description": "AppliedBySensor", "value": 1}]}, {"category": "Standard", "default": 1194684, "group": "ADSB", "longDesc": "Defines the ICAO ID of the vehicle", "max": 16777215, "min": -1, "name": "ADSB_ICAO_ID", "rebootRequired": true, "shortDesc": "ADSB-Out ICAO configuration", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "ADSB", "longDesc": "This vehicle is always tracked. Use 0 to disable.", "max": 16777215, "min": 0, "name": "ADSB_ICAO_SPECL", "rebootRequired": true, "shortDesc": "ADSB-In Special ICAO configuration", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "ADSB", "longDesc": "Enable Identification of Position feature", "name": "ADSB_IDENT", "rebootRequired": true, "shortDesc": "ADSB-Out Ident Configuration", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "ADSB", "longDesc": "Report the length and width of the vehicle in meters. In most cases, use '1' for the smallest vehicle size.", "max": 15, "min": 0, "name": "ADSB_LEN_WIDTH", "rebootRequired": true, "shortDesc": "ADSB-Out Vehicle Size Configuration", "type": "Int32", "values": [{"description": "SizeUnknown", "value": 0}, {"description": "Len15_Wid23", "value": 1}, {"description": "Len25_Wid28", "value": 2}, {"description": "Len25_Wid34", "value": 3}, {"description": "Len35_Wid33", "value": 4}, {"description": "Len35_Wid38", "value": 5}, {"description": "Len45_Wid39", "value": 6}, {"description": "Len45_Wid45", "value": 7}, {"description": "Len55_Wid45", "value": 8}, {"description": "Len55_Wid52", "value": 9}, {"description": "Len65_Wid59", "value": 10}, {"description": "Len65_Wid67", "value": 11}, {"description": "Len75_Wid72", "value": 12}, {"description": "Len75_Wid80", "value": 13}, {"description": "Len85_Wid80", "value": 14}, {"description": "Len85_Wid90", "value": 15}]}, {"category": "Standard", "default": 25, "group": "ADSB", "longDesc": "Change number of targets to track", "max": 50, "min": 0, "name": "ADSB_LIST_MAX", "rebootRequired": true, "shortDesc": "ADSB-In Vehicle List Size", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "ADSB", "longDesc": "Informs ADSB vehicles of this vehicle's max speed capability", "max": 6, "min": 0, "name": "ADSB_MAX_SPEED", "rebootRequired": true, "shortDesc": "ADSB-Out Vehicle Max Speed", "type": "Int32", "values": [{"description": "UnknownMaxSpeed", "value": 0}, {"description": "75Kts", "value": 1}, {"description": "150Kts", "value": 2}, {"description": "300Kts", "value": 3}, {"description": "600Kts", "value": 4}, {"description": "1200Kts", "value": 5}, {"description": "Over1200Kts", "value": 6}]}, {"category": "Standard", "default": 1200, "group": "ADSB", "longDesc": "This parameter defines the squawk code. Value should be between 0000 and 7777.", "max": 7777, "min": 0, "name": "ADSB_SQUAWK", "rebootRequired": true, "shortDesc": "ADSB-Out squawk code configuration", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 1. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC1", "shortDesc": "SIM Channel 1 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 10. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC10", "shortDesc": "SIM Channel 10 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 11. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC11", "shortDesc": "SIM Channel 11 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 12. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC12", "shortDesc": "SIM Channel 12 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 13. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC13", "shortDesc": "SIM Channel 13 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 14. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC14", "shortDesc": "SIM Channel 14 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 15. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC15", "shortDesc": "SIM Channel 15 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 16. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC16", "shortDesc": "SIM Channel 16 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 2. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC2", "shortDesc": "SIM Channel 2 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 3. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC3", "shortDesc": "SIM Channel 3 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 4. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC4", "shortDesc": "SIM Channel 4 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 5. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC5", "shortDesc": "SIM Channel 5 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 6. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC6", "shortDesc": "SIM Channel 6 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 7. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC7", "shortDesc": "SIM Channel 7 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 8. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC8", "shortDesc": "SIM Channel 8 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Select what should be output on SIM Channel 9. The default failsafe value is set according to the selected function: - 'Min' for ConstantMin - 'Max' for ConstantMax - 'Max' for Parachute - ('Max'+'Min')/2 for Servos - 'Disarmed' for the rest", "name": "PWM_MAIN_FUNC9", "shortDesc": "SIM Channel 9 Output Function", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Constant Min", "value": 1}, {"description": "Constant Max", "value": 2}, {"description": "Motor 1", "value": 101}, {"description": "Motor 2", "value": 102}, {"description": "Motor 3", "value": 103}, {"description": "Motor 4", "value": 104}, {"description": "Motor 5", "value": 105}, {"description": "Motor 6", "value": 106}, {"description": "Motor 7", "value": 107}, {"description": "Motor 8", "value": 108}, {"description": "Motor 9", "value": 109}, {"description": "Motor 10", "value": 110}, {"description": "Motor 11", "value": 111}, {"description": "Motor 12", "value": 112}, {"description": "Servo 1", "value": 201}, {"description": "Servo 2", "value": 202}, {"description": "Servo 3", "value": 203}, {"description": "Servo 4", "value": 204}, {"description": "Servo 5", "value": 205}, {"description": "Servo 6", "value": 206}, {"description": "Servo 7", "value": 207}, {"description": "Servo 8", "value": 208}, {"description": "Peripheral via Actuator Set 1", "value": 301}, {"description": "Peripheral via Actuator Set 2", "value": 302}, {"description": "Peripheral via Actuator Set 3", "value": 303}, {"description": "Peripheral via Actuator Set 4", "value": 304}, {"description": "Peripheral via Actuator Set 5", "value": 305}, {"description": "Peripheral via Actuator Set 6", "value": 306}, {"description": "Landing Gear", "value": 400}, {"description": "Parachute", "value": 401}, {"description": "RC Roll", "value": 402}, {"description": "RC Pitch", "value": 403}, {"description": "RC Throttle", "value": 404}, {"description": "RC Yaw", "value": 405}, {"description": "RC Flaps", "value": 406}, {"description": "RC AUX 1", "value": 407}, {"description": "RC AUX 2", "value": 408}, {"description": "RC AUX 3", "value": 409}, {"description": "RC AUX 4", "value": 410}, {"description": "RC AUX 5", "value": 411}, {"description": "RC AUX 6", "value": 412}, {"description": "Gimbal Roll", "value": 420}, {"description": "Gimbal Pitch", "value": 421}, {"description": "Gimbal Yaw", "value": 422}, {"description": "Gripper", "value": 430}, {"description": "Landing Gear Wheel", "value": 440}, {"description": "IC Engine Ignition", "value": 450}, {"description": "IC Engine Throttle", "value": 451}, {"description": "IC Engine Choke", "value": 452}, {"description": "IC Engine Starter", "value": 453}]}, {"bitmask": [{"description": "SIM Channel 1", "index": 0}, {"description": "SIM Channel 2", "index": 1}, {"description": "SIM Channel 3", "index": 2}, {"description": "SIM Channel 4", "index": 3}, {"description": "SIM Channel 5", "index": 4}, {"description": "SIM Channel 6", "index": 5}, {"description": "SIM Channel 7", "index": 6}, {"description": "SIM Channel 8", "index": 7}, {"description": "SIM Channel 9", "index": 8}, {"description": "SIM Channel 10", "index": 9}, {"description": "SIM Channel 11", "index": 10}, {"description": "SIM Channel 12", "index": 11}, {"description": "SIM Channel 13", "index": 12}, {"description": "SIM Channel 14", "index": 13}, {"description": "SIM Channel 15", "index": 14}, {"description": "SIM Channel 16", "index": 15}], "category": "Standard", "default": 0, "group": "Actuator Outputs", "longDesc": "Allows to reverse the output range for each channel. Note: this is only useful for servos.", "max": 65535, "min": 0, "name": "PWM_MAIN_REV", "shortDesc": "Reverse Output Range for SIM", "type": "Int32"}, {"category": "Standard", "default": 1, "group": "Airspeed Validator", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "max": 5, "min": 1, "name": "ASPD_BETA_GATE", "shortDesc": "Gate size for sideslip angle fusion", "type": "Int32", "units": "SD"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.15, "group": "Airspeed Validator", "longDesc": "Sideslip measurement noise of the internal wind estimator(s) of the airspeed selector.", "max": 1.0, "min": 0.0, "name": "ASPD_BETA_NOISE", "shortDesc": "Wind estimator sideslip measurement noise", "type": "Float", "units": "rad"}, {"bitmask": [{"description": "Only data missing check (triggers if more than 1s no data)", "index": 0}, {"description": "Data stuck (triggers if data is exactly constant for 2s in FW mode)", "index": 1}, {"description": "Innovation check (see ASPD_FS_INNOV)", "index": 2}, {"description": "Load factor check (triggers if measurement is below stall speed)", "index": 3}, {"description": "First principle check (airspeed change vs. throttle and pitch)", "index": 4}], "category": "Standard", "default": 7, "group": "Airspeed Validator", "longDesc": "Controls which checks are run to check airspeed data for validity. Only applied if ASPD_PRIMARY > 0.", "max": 31, "min": 0, "name": "ASPD_DO_CHECKS", "shortDesc": "Enable checks on airspeed sensors", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "Airspeed Validator", "name": "ASPD_FALLBACK", "shortDesc": "Fallback options", "type": "Int32", "values": [{"description": "Fallback only to other airspeed sensors", "value": 0}, {"description": "Fallback to groundspeed-minus-windspeed airspeed estimation", "value": 1}, {"description": "Fallback to thrust based airspeed estimation", "value": 2}]}, {"category": "Standard", "decimalPlaces": 1, "default": 2.0, "group": "Airspeed Validator", "longDesc": "Window for comparing airspeed change to throttle and pitch change. Triggers when the airspeed change within this window is negative while throttle increases and the vehicle pitches down. Is meant to catch degrading airspeed blockages as can happen when flying through icing conditions. Relies on FW_THR_TRIM being set accurately.", "min": 0.0, "name": "ASPD_FP_T_WINDOW", "shortDesc": "First principle airspeed check time window", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Airspeed Validator", "longDesc": "This specifies the minimum airspeed innovation required to trigger a failsafe. Larger values make the check less sensitive, smaller values make it more sensitive. Large innovations indicate an inconsistency between predicted (groundspeed - windspeeed) and measured airspeed. The time required to detect a fault when the threshold is exceeded depends on the size of the exceedance and is controlled by the ASPD_FS_INTEG parameter.", "max": 10.0, "min": 0.5, "name": "ASPD_FS_INNOV", "shortDesc": "Airspeed failure innovation threshold", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Airspeed Validator", "longDesc": "This sets the time integral of airspeed innovation exceedance above ASPD_FS_INNOV required to trigger a failsafe. Larger values make the check less sensitive, smaller positive values make it more sensitive.", "max": 50.0, "min": 0.0, "name": "ASPD_FS_INTEG", "shortDesc": "Airspeed failure innovation integral threshold", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "Airspeed Validator", "longDesc": "Delay before switching back to using airspeed sensor if checks indicate sensor is good. Set to a negative value to disable the re-enabling in flight.", "min": -1.0, "name": "ASPD_FS_T_START", "shortDesc": "Airspeed failsafe start delay", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Airspeed Validator", "longDesc": "Delay before stopping use of airspeed sensor if checks indicate sensor is bad.", "min": 0.0, "name": "ASPD_FS_T_STOP", "shortDesc": "Airspeed failsafe stop delay", "type": "Float", "units": "s"}, {"category": "Standard", "default": 1, "group": "Airspeed Validator", "name": "ASPD_PRIMARY", "rebootRequired": true, "shortDesc": "Index or primary airspeed measurement source", "type": "Int32", "values": [{"description": "Groundspeed minus windspeed", "value": 0}, {"description": "First airspeed sensor", "value": 1}, {"description": "Second airspeed sensor", "value": 2}, {"description": "Third airspeed sensor", "value": 3}, {"description": "Thrust based airspeed", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Airspeed Validator", "longDesc": "This is the scale IAS --> CAS of the first airspeed sensor instance", "max": 2.0, "min": 0.5, "name": "ASPD_SCALE_1", "rebootRequired": true, "shortDesc": "Scale of airspeed sensor 1", "type": "Float", "volatile": true}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Airspeed Validator", "longDesc": "This is the scale IAS --> CAS of the second airspeed sensor instance", "max": 2.0, "min": 0.5, "name": "ASPD_SCALE_2", "rebootRequired": true, "shortDesc": "Scale of airspeed sensor 2", "type": "Float", "volatile": true}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Airspeed Validator", "longDesc": "This is the scale IAS --> CAS of the third airspeed sensor instance", "max": 2.0, "min": 0.5, "name": "ASPD_SCALE_3", "rebootRequired": true, "shortDesc": "Scale of airspeed sensor 3", "type": "Float", "volatile": true}, {"category": "Standard", "default": 2, "group": "Airspeed Validator", "name": "ASPD_SCALE_APPLY", "shortDesc": "Controls when to apply the new estimated airspeed scale(s)", "type": "Int32", "values": [{"description": "Do not automatically apply the estimated scale", "value": 0}, {"description": "Apply the estimated scale after disarm", "value": 1}, {"description": "Apply the estimated scale in air", "value": 2}]}, {"category": "Standard", "decimalPlaces": 5, "default": 0.0001, "group": "Airspeed Validator", "longDesc": "Airspeed scale process noise of the internal wind estimator(s) of the airspeed selector. When unaided, the scale uncertainty (1-sigma, unitless) increases by this amount every second.", "max": 0.1, "min": 0.0, "name": "ASPD_SCALE_NSD", "shortDesc": "Wind estimator true airspeed scale process noise spectral density", "type": "Float", "units": "1/s/sqrt(Hz)"}, {"category": "Standard", "default": 4, "group": "Airspeed Validator", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "max": 5, "min": 1, "name": "ASPD_TAS_GATE", "shortDesc": "Gate size for true airspeed fusion", "type": "Int32", "units": "SD"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.4, "group": "Airspeed Validator", "longDesc": "True airspeed measurement noise of the internal wind estimator(s) of the airspeed selector.", "max": 4.0, "min": 0.0, "name": "ASPD_TAS_NOISE", "shortDesc": "Wind estimator true airspeed measurement noise", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.55, "group": "Airspeed Validator", "longDesc": "The synthetic airspeed estimate (from groundspeed and heading) will be declared valid as soon and as long the horizontal wind uncertainty is below this value.", "max": 5.0, "min": 0.001, "name": "ASPD_WERR_THR", "shortDesc": "Horizontal wind uncertainty threshold for synthetic airspeed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Airspeed Validator", "longDesc": "Wind process noise of the internal wind estimator(s) of the airspeed selector. When unaided, the wind estimate uncertainty (1-sigma, in m/s) increases by this amount every second.", "max": 1.0, "min": 0.0, "name": "ASPD_WIND_NSD", "shortDesc": "Wind estimator wind process noise spectral density", "type": "Float", "units": "m/s^2/sqrt(Hz)"}, {"category": "Standard", "default": 0, "group": "Attitude Q estimator", "name": "ATT_ACC_COMP", "shortDesc": "Acceleration compensation based on GPS velocity", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Attitude Q estimator", "max": 2.0, "min": 0.0, "name": "ATT_BIAS_MAX", "shortDesc": "Gyro bias limit", "type": "Float", "units": "rad/s"}, {"category": "Standard", "default": 0, "group": "Attitude Q estimator", "longDesc": "Enable standalone quaternion based attitude estimator.", "name": "ATT_EN", "shortDesc": "standalone attitude estimator enable (unsupported)", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Attitude Q estimator", "longDesc": "Set to 1 to use heading estimate from vision. Set to 2 to use heading from motion capture.", "max": 2, "min": 0, "name": "ATT_EXT_HDG_M", "shortDesc": "External heading usage mode (from Motion capture/Vision)", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Vision", "value": 1}, {"description": "Motion Capture", "value": 2}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Attitude Q estimator", "longDesc": "This parameter is not used in normal operation, as the declination is looked up based on the GPS coordinates of the vehicle.", "name": "ATT_MAG_DECL", "shortDesc": "Magnetic declination, in degrees", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 1, "group": "Attitude Q estimator", "name": "ATT_MAG_DECL_A", "shortDesc": "Automatic GPS based declination compensation", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "Attitude Q estimator", "max": 1.0, "min": 0.0, "name": "ATT_W_ACC", "shortDesc": "Complimentary filter accelerometer weight", "type": "Float"}, {"category": "Standard", "default": 0.1, "group": "Attitude Q estimator", "max": 1.0, "min": 0.0, "name": "ATT_W_EXT_HDG", "shortDesc": "Complimentary filter external heading weight", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Attitude Q estimator", "max": 1.0, "min": 0.0, "name": "ATT_W_GYRO_BIAS", "shortDesc": "Complimentary filter gyroscope bias weight", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Attitude Q estimator", "longDesc": "Set to 0 to avoid using the magnetometer.", "max": 1.0, "min": 0.0, "name": "ATT_W_MAG", "shortDesc": "Complimentary filter magnetometer weight", "type": "Float"}, {"category": "Standard", "default": 2, "group": "Autotune", "longDesc": "After the auto-tuning sequence is completed, a new set of gains is available and can be applied immediately or after landing.", "name": "FW_AT_APPLY", "shortDesc": "Controls when to apply the new gains", "type": "Int32", "values": [{"description": "Do not apply the new gains (logging only)", "value": 0}, {"description": "Apply the new gains after disarm", "value": 1}, {"description": "Apply the new gains in air", "value": 2}]}, {"bitmask": [{"description": "roll", "index": 0}, {"description": "pitch", "index": 1}, {"description": "yaw", "index": 2}], "category": "Standard", "default": 3, "group": "Autotune", "longDesc": "Defines which axes will be tuned during the auto-tuning sequence Set bits in the following positions to enable: 0 : Roll 1 : Pitch 2 : Yaw", "max": 7, "min": 1, "name": "FW_AT_AXES", "shortDesc": "Tuning axes selection", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "Autotune", "longDesc": "Defines which RC_MAP_AUXn parameter maps the RC channel used to enable/disable auto tuning.", "max": 6, "min": 0, "name": "FW_AT_MAN_AUX", "shortDesc": "Enable/disable auto tuning using an RC AUX input", "type": "Int32", "values": [{"description": "Disable", "value": 0}, {"description": "Aux1", "value": 1}, {"description": "Aux2", "value": 2}, {"description": "Aux3", "value": 3}, {"description": "Aux4", "value": 4}, {"description": "Aux5", "value": 5}, {"description": "Aux6", "value": 6}]}, {"category": "Standard", "default": 0, "group": "Autotune", "longDesc": "WARNING: this will inject steps to the rate controller and can be dangerous. Only activate if you know what you are doing, and in a safe environment. Any motion of the remote stick will abort the signal injection and reset this parameter Best is to perform the identification in position or hold mode. Increase the amplitude of the injected signal using FW_AT_SYSID_AMP for more signal/noise ratio", "name": "FW_AT_START", "shortDesc": "Start the autotuning sequence", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Autotune", "longDesc": "This parameter scales the signal sent to the rate controller during system identification.", "max": 6.0, "min": 0.1, "name": "FW_AT_SYSID_AMP", "shortDesc": "Amplitude of the injected signal", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Autotune", "longDesc": "Can be set lower or higher than the end frequency", "max": 30.0, "min": 0.1, "name": "FW_AT_SYSID_F0", "shortDesc": "Start frequency of the injected signal", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 20.0, "group": "Autotune", "longDesc": "Can be set lower or higher than the start frequency", "max": 30.0, "min": 0.1, "name": "FW_AT_SYSID_F1", "shortDesc": "End frequency of the injected signal", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 0, "default": 10.0, "group": "Autotune", "longDesc": "Duration of the input signal sent on each axis during system identification", "max": 120.0, "min": 5.0, "name": "FW_AT_SYSID_TIME", "shortDesc": "Maneuver time for each axis", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Autotune", "longDesc": "Type of signal used during system identification to excite the system.", "name": "FW_AT_SYSID_TYPE", "shortDesc": "Input signal type", "type": "Int32", "values": [{"description": "Step", "value": 0}, {"description": "Linear sine sweep", "value": 1}, {"description": "Logarithmic sine sweep", "value": 2}]}, {"category": "Standard", "default": 1, "group": "Autotune", "longDesc": "After the auto-tuning sequence is completed, a new set of gains is available and can be applied immediately or after landing. WARNING Applying the gains in air is dangerous as there is no guarantee that those new gains will be able to stabilize the drone properly.", "name": "MC_AT_APPLY", "shortDesc": "Controls when to apply the new gains", "type": "Int32", "values": [{"description": "Do not apply the new gains (logging only)", "value": 0}, {"description": "Apply the new gains after disarm", "value": 1}, {"description": "WARNING Apply the new gains in air", "value": 2}]}, {"category": "Standard", "default": 0, "group": "Autotune", "name": "MC_AT_EN", "shortDesc": "Multicopter autotune module enable", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.14, "group": "Autotune", "max": 0.5, "min": 0.01, "name": "MC_AT_RISE_TIME", "shortDesc": "Desired angular rate closed-loop rise time", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Autotune", "longDesc": "WARNING: this will inject steps to the rate controller and can be dangerous. Only activate if you know what you are doing, and in a safe environment. Any motion of the remote stick will abort the signal injection and reset this parameter Best is to perform the identification in position or hold mode. Increase the amplitude of the injected signal using MC_AT_SYSID_AMP for more signal/noise ratio", "name": "MC_AT_START", "shortDesc": "Start the autotuning sequence", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 0.7, "group": "Autotune", "max": 6.0, "min": 0.1, "name": "MC_AT_SYSID_AMP", "shortDesc": "Amplitude of the injected signal", "type": "Float"}, {"category": "Standard", "decimalPlaces": 0, "default": -1.0, "group": "Battery Calibration", "increment": 50.0, "longDesc": "Defines the capacity of battery 1 in mAh.", "max": 100000.0, "min": -1.0, "name": "BAT1_CAPACITY", "rebootRequired": true, "shortDesc": "Battery 1 capacity", "type": "Float", "units": "mAh"}, {"category": "Standard", "default": 0, "group": "Battery Calibration", "longDesc": "Defines the number of cells the attached battery consists of.", "name": "BAT1_N_CELLS", "shortDesc": "Number of cells for battery 1", "type": "Int32", "values": [{"description": "Unknown", "value": 0}, {"description": "1S Battery", "value": 1}, {"description": "2S Battery", "value": 2}, {"description": "3S Battery", "value": 3}, {"description": "4S Battery", "value": 4}, {"description": "5S Battery", "value": 5}, {"description": "6S Battery", "value": 6}, {"description": "7S Battery", "value": 7}, {"description": "8S Battery", "value": 8}, {"description": "9S Battery", "value": 9}, {"description": "10S Battery", "value": 10}, {"description": "11S Battery", "value": 11}, {"description": "12S Battery", "value": 12}, {"description": "13S Battery", "value": 13}, {"description": "14S Battery", "value": 14}, {"description": "15S Battery", "value": 15}, {"description": "16S Battery", "value": 16}]}, {"category": "Standard", "decimalPlaces": 4, "default": -1.0, "group": "Battery Calibration", "increment": 0.0005, "longDesc": "If non-negative, then this will be used instead of the online estimated internal resistance.", "max": 0.2, "min": -1.0, "name": "BAT1_R_INTERNAL", "rebootRequired": true, "shortDesc": "Explicitly defines the per cell internal resistance for battery 1", "type": "Float", "units": "Ohm"}, {"category": "Standard", "default": 0, "group": "Battery Calibration", "longDesc": "This parameter controls the source of battery data. The value 'Power Module' means that measurements are expected to come from a power module. If the value is set to 'External' then the system expects to receive mavlink battery status messages. If the value is set to 'ESCs', the battery information are taken from the esc_status message. This requires the ESC to provide both voltage as well as current.", "name": "BAT1_SOURCE", "rebootRequired": true, "shortDesc": "Battery 1 monitoring source", "type": "Int32", "values": [{"description": "Disabled", "value": -1}, {"description": "Power Module", "value": 0}, {"description": "External", "value": 1}, {"description": "ESCs", "value": 2}]}, {"category": "Standard", "decimalPlaces": 2, "default": 4.05, "group": "Battery Calibration", "increment": 0.01, "longDesc": "Defines the voltage where a single cell of the battery is considered full. For a more accurate estimate set this below the nominal voltage of e.g. 4.2V", "name": "BAT1_V_CHARGED", "rebootRequired": true, "shortDesc": "Full cell voltage", "type": "Float", "units": "V"}, {"category": "Standard", "decimalPlaces": 2, "default": 3.6, "group": "Battery Calibration", "increment": 0.01, "longDesc": "Defines the voltage where a single cell of the battery is considered empty. The voltage should be chosen above the steep dropoff at 3.5V. A typical lithium battery can only be discharged under high load down to 10% before it drops off to a voltage level damaging the cells.", "name": "BAT1_V_EMPTY", "rebootRequired": true, "shortDesc": "Empty cell voltage", "type": "Float", "units": "V"}, {"category": "Standard", "decimalPlaces": 0, "default": -1.0, "group": "Battery Calibration", "increment": 50.0, "longDesc": "Defines the capacity of battery 2 in mAh.", "max": 100000.0, "min": -1.0, "name": "BAT2_CAPACITY", "rebootRequired": true, "shortDesc": "Battery 2 capacity", "type": "Float", "units": "mAh"}, {"category": "Standard", "default": 0, "group": "Battery Calibration", "longDesc": "Defines the number of cells the attached battery consists of.", "name": "BAT2_N_CELLS", "shortDesc": "Number of cells for battery 2", "type": "Int32", "values": [{"description": "Unknown", "value": 0}, {"description": "1S Battery", "value": 1}, {"description": "2S Battery", "value": 2}, {"description": "3S Battery", "value": 3}, {"description": "4S Battery", "value": 4}, {"description": "5S Battery", "value": 5}, {"description": "6S Battery", "value": 6}, {"description": "7S Battery", "value": 7}, {"description": "8S Battery", "value": 8}, {"description": "9S Battery", "value": 9}, {"description": "10S Battery", "value": 10}, {"description": "11S Battery", "value": 11}, {"description": "12S Battery", "value": 12}, {"description": "13S Battery", "value": 13}, {"description": "14S Battery", "value": 14}, {"description": "15S Battery", "value": 15}, {"description": "16S Battery", "value": 16}]}, {"category": "Standard", "decimalPlaces": 4, "default": -1.0, "group": "Battery Calibration", "increment": 0.0005, "longDesc": "If non-negative, then this will be used instead of the online estimated internal resistance.", "max": 0.2, "min": -1.0, "name": "BAT2_R_INTERNAL", "rebootRequired": true, "shortDesc": "Explicitly defines the per cell internal resistance for battery 2", "type": "Float", "units": "Ohm"}, {"category": "Standard", "default": -1, "group": "Battery Calibration", "longDesc": "This parameter controls the source of battery data. The value 'Power Module' means that measurements are expected to come from a power module. If the value is set to 'External' then the system expects to receive mavlink battery status messages. If the value is set to 'ESCs', the battery information are taken from the esc_status message. This requires the ESC to provide both voltage as well as current.", "name": "BAT2_SOURCE", "rebootRequired": true, "shortDesc": "Battery 2 monitoring source", "type": "Int32", "values": [{"description": "Disabled", "value": -1}, {"description": "Power Module", "value": 0}, {"description": "External", "value": 1}, {"description": "ESCs", "value": 2}]}, {"category": "Standard", "decimalPlaces": 2, "default": 4.05, "group": "Battery Calibration", "increment": 0.01, "longDesc": "Defines the voltage where a single cell of the battery is considered full. For a more accurate estimate set this below the nominal voltage of e.g. 4.2V", "name": "BAT2_V_CHARGED", "rebootRequired": true, "shortDesc": "Full cell voltage", "type": "Float", "units": "V"}, {"category": "Standard", "decimalPlaces": 2, "default": 3.6, "group": "Battery Calibration", "increment": 0.01, "longDesc": "Defines the voltage where a single cell of the battery is considered empty. The voltage should be chosen above the steep dropoff at 3.5V. A typical lithium battery can only be discharged under high load down to 10% before it drops off to a voltage level damaging the cells.", "name": "BAT2_V_EMPTY", "rebootRequired": true, "shortDesc": "Empty cell voltage", "type": "Float", "units": "V"}, {"category": "Standard", "decimalPlaces": 0, "default": -1.0, "group": "Battery Calibration", "increment": 50.0, "longDesc": "Defines the capacity of battery 3 in mAh.", "max": 100000.0, "min": -1.0, "name": "BAT3_CAPACITY", "rebootRequired": true, "shortDesc": "Battery 3 capacity", "type": "Float", "units": "mAh"}, {"category": "Standard", "default": 0, "group": "Battery Calibration", "longDesc": "Defines the number of cells the attached battery consists of.", "name": "BAT3_N_CELLS", "shortDesc": "Number of cells for battery 3", "type": "Int32", "values": [{"description": "Unknown", "value": 0}, {"description": "1S Battery", "value": 1}, {"description": "2S Battery", "value": 2}, {"description": "3S Battery", "value": 3}, {"description": "4S Battery", "value": 4}, {"description": "5S Battery", "value": 5}, {"description": "6S Battery", "value": 6}, {"description": "7S Battery", "value": 7}, {"description": "8S Battery", "value": 8}, {"description": "9S Battery", "value": 9}, {"description": "10S Battery", "value": 10}, {"description": "11S Battery", "value": 11}, {"description": "12S Battery", "value": 12}, {"description": "13S Battery", "value": 13}, {"description": "14S Battery", "value": 14}, {"description": "15S Battery", "value": 15}, {"description": "16S Battery", "value": 16}]}, {"category": "Standard", "decimalPlaces": 4, "default": -1.0, "group": "Battery Calibration", "increment": 0.0005, "longDesc": "If non-negative, then this will be used instead of the online estimated internal resistance.", "max": 0.2, "min": -1.0, "name": "BAT3_R_INTERNAL", "rebootRequired": true, "shortDesc": "Explicitly defines the per cell internal resistance for battery 3", "type": "Float", "units": "Ohm"}, {"category": "Standard", "default": -1, "group": "Battery Calibration", "longDesc": "This parameter controls the source of battery data. The value 'Power Module' means that measurements are expected to come from a power module. If the value is set to 'External' then the system expects to receive mavlink battery status messages. If the value is set to 'ESCs', the battery information are taken from the esc_status message. This requires the ESC to provide both voltage as well as current.", "name": "BAT3_SOURCE", "rebootRequired": true, "shortDesc": "Battery 3 monitoring source", "type": "Int32", "values": [{"description": "Disabled", "value": -1}, {"description": "Power Module", "value": 0}, {"description": "External", "value": 1}, {"description": "ESCs", "value": 2}]}, {"category": "Standard", "decimalPlaces": 2, "default": 4.05, "group": "Battery Calibration", "increment": 0.01, "longDesc": "Defines the voltage where a single cell of the battery is considered full. For a more accurate estimate set this below the nominal voltage of e.g. 4.2V", "name": "BAT3_V_CHARGED", "rebootRequired": true, "shortDesc": "Full cell voltage", "type": "Float", "units": "V"}, {"category": "Standard", "decimalPlaces": 2, "default": 3.6, "group": "Battery Calibration", "increment": 0.01, "longDesc": "Defines the voltage where a single cell of the battery is considered empty. The voltage should be chosen above the steep dropoff at 3.5V. A typical lithium battery can only be discharged under high load down to 10% before it drops off to a voltage level damaging the cells.", "name": "BAT3_V_EMPTY", "rebootRequired": true, "shortDesc": "Empty cell voltage", "type": "Float", "units": "V"}, {"category": "Standard", "decimalPlaces": 2, "default": 15.0, "group": "Battery Calibration", "increment": 0.1, "longDesc": "This value is used to initialize the in-flight average current estimation, which in turn is used for estimating remaining flight time and RTL triggering.", "max": 500.0, "min": 0.0, "name": "BAT_AVRG_CURRENT", "shortDesc": "Expected battery current in flight", "type": "Float", "units": "A"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.07, "group": "Battery Calibration", "increment": 0.01, "longDesc": "Sets the threshold when the battery will be reported as critically low. This has to be lower than the low threshold. This threshold commonly will trigger RTL.", "max": 0.5, "min": 0.05, "name": "BAT_CRIT_THR", "shortDesc": "Critical threshold", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.05, "group": "Battery Calibration", "increment": 0.01, "longDesc": "Sets the threshold when the battery will be reported as dangerously low. This has to be lower than the critical threshold. This threshold commonly will trigger landing.", "max": 0.5, "min": 0.03, "name": "BAT_EMERGEN_THR", "shortDesc": "Emergency threshold", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.15, "group": "Battery Calibration", "increment": 0.01, "longDesc": "Sets the threshold when the battery will be reported as low. This has to be higher than the critical threshold.", "max": 0.5, "min": 0.12, "name": "BAT_LOW_THR", "shortDesc": "Low threshold", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 1, "default": 40.0, "group": "Camera trigger", "longDesc": "This parameter sets the time the trigger needs to pulled high or low.", "max": 3000.0, "min": 0.1, "name": "TRIG_ACT_TIME", "rebootRequired": true, "shortDesc": "Camera trigger activation time", "type": "Float", "units": "ms"}, {"category": "Standard", "decimalPlaces": 1, "default": 25.0, "group": "Camera trigger", "increment": 1.0, "longDesc": "Sets the distance at which to trigger the camera.", "min": 0.0, "name": "TRIG_DISTANCE", "rebootRequired": true, "shortDesc": "Camera trigger distance", "type": "Float", "units": "m"}, {"category": "Standard", "default": 4, "group": "Camera trigger", "longDesc": "Selects the trigger interface", "name": "TRIG_INTERFACE", "rebootRequired": true, "shortDesc": "Camera trigger Interface", "type": "Int32", "values": [{"description": "GPIO", "value": 1}, {"description": "Seagull MAP2 (over PWM)", "value": 2}, {"description": "MAVLink (Camera Protocol v1)", "value": 3}, {"description": "Generic PWM (IR trigger, servo)", "value": 4}]}, {"category": "Standard", "decimalPlaces": 1, "default": 40.0, "group": "Camera trigger", "longDesc": "This parameter sets the time between two consecutive trigger events", "max": 10000.0, "min": 4.0, "name": "TRIG_INTERVAL", "rebootRequired": true, "shortDesc": "Camera trigger interval", "type": "Float", "units": "ms"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Camera trigger", "longDesc": "This parameter sets the minimum time between two consecutive trigger events the specific camera setup is supporting.", "max": 10000.0, "min": 1.0, "name": "TRIG_MIN_INTERVA", "rebootRequired": true, "shortDesc": "Minimum camera trigger interval", "type": "Float", "units": "ms"}, {"category": "Standard", "default": 0, "group": "Camera trigger", "max": 4, "min": 0, "name": "TRIG_MODE", "rebootRequired": true, "shortDesc": "Camera trigger mode", "type": "Int32", "values": [{"description": "Disable", "value": 0}, {"description": "Time based, on command", "value": 1}, {"description": "Time based, always on", "value": 2}, {"description": "Distance based, always on", "value": 3}, {"description": "Distance based, on command (Survey mode)", "value": 4}]}, {"category": "Standard", "default": 0, "group": "Camera trigger", "longDesc": "This parameter sets the polarity of the trigger (0 = active low, 1 = active high )", "max": 1, "min": 0, "name": "TRIG_POLARITY", "rebootRequired": true, "shortDesc": "Camera trigger polarity", "type": "Int32", "values": [{"description": "Active low", "value": 0}, {"description": "Active high", "value": 1}]}, {"category": "Standard", "default": 1500, "group": "Camera trigger", "max": 2000, "min": 1000, "name": "TRIG_PWM_NEUTRAL", "rebootRequired": true, "shortDesc": "PWM neutral output on trigger pin", "type": "Int32", "units": "us"}, {"category": "Standard", "default": 1900, "group": "Camera trigger", "max": 2000, "min": 1000, "name": "TRIG_PWM_SHOOT", "rebootRequired": true, "shortDesc": "PWM output to trigger shot", "type": "Int32", "units": "us"}, {"category": "Developer", "default": 0, "group": "Circuit Breaker", "longDesc": "Setting this parameter to 782097 will disable the buzzer audio notification. Setting this parameter to 782090 will disable the startup tune, while keeping all others enabled.", "max": 782097, "min": 0, "name": "CBRK_BUZZER", "rebootRequired": true, "shortDesc": "Circuit breaker for disabling buzzer", "type": "Int32"}, {"category": "Developer", "default": 121212, "group": "Circuit Breaker", "longDesc": "Setting this parameter to 121212 will disable the flight termination action if triggered by the FailureDetector logic or if FMU is lost. This circuit breaker does not affect the RC loss, data link loss, geofence, and takeoff failure detection safety logic.", "max": 121212, "min": 0, "name": "CBRK_FLIGHTTERM", "rebootRequired": true, "shortDesc": "Circuit breaker for flight termination", "type": "Int32"}, {"category": "Developer", "default": 22027, "group": "Circuit Breaker", "longDesc": "Setting this parameter to 22027 will disable IO safety. WARNING: ENABLING THIS CIRCUIT BREAKER IS AT OWN RISK", "max": 22027, "min": 0, "name": "CBRK_IO_SAFETY", "shortDesc": "Circuit breaker for IO safety", "type": "Int32"}, {"category": "Developer", "default": 0, "group": "Circuit Breaker", "longDesc": "Setting this parameter to 894281 will disable the power valid checks in the commander. WARNING: ENABLING THIS CIRCUIT BREAKER IS AT OWN RISK", "max": 894281, "min": 0, "name": "CBRK_SUPPLY_CHK", "shortDesc": "Circuit breaker for power supply check", "type": "Int32"}, {"category": "Developer", "default": 197848, "group": "Circuit Breaker", "longDesc": "Setting this parameter to 197848 will disable the USB connected checks in the commander, setting it to 0 keeps them enabled (recommended). We are generally recommending to not fly with the USB link connected and production vehicles should set this parameter to zero to prevent users from flying USB powered. However, for R&D purposes it has proven over the years to work just fine.", "max": 197848, "min": 0, "name": "CBRK_USB_CHK", "shortDesc": "Circuit breaker for USB link check", "type": "Int32"}, {"category": "Developer", "default": 0, "group": "Circuit Breaker", "longDesc": "Setting this parameter to 159753 will enable arming in fixed-wing mode for VTOLs. WARNING: ENABLING THIS CIRCUIT BREAKER IS AT OWN RISK", "max": 159753, "min": 0, "name": "CBRK_VTOLARMING", "shortDesc": "Circuit breaker for arming in fixed-wing mode check", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "Note: actuator failure needs to be enabled and configured via FD_ACT_* parameters.", "max": 3, "min": 0, "name": "COM_ACT_FAIL_ACT", "shortDesc": "Set the actuator failure failsafe mode", "type": "Int32", "values": [{"description": "Warning only", "value": 0}, {"description": "Hold mode", "value": 1}, {"description": "Land mode", "value": 2}, {"description": "Return mode", "value": 3}, {"description": "Terminate", "value": 4}]}, {"category": "Standard", "default": 1, "group": "Commander", "longDesc": "Set 0 to prevent accidental use of the vehicle e.g. for safety or maintenance reasons.", "name": "COM_ARMABLE", "shortDesc": "Flag to allow arming", "type": "Int32", "values": [{"description": "Disallow arming", "value": 0}, {"description": "Allow arming", "value": 1}]}, {"category": "Standard", "default": 10, "group": "Commander", "longDesc": "Used if arm authorization is requested by COM_ARM_AUTH_REQ.", "name": "COM_ARM_AUTH_ID", "shortDesc": "Arm authorizer system id", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "Methods: - one arm: request authorization and arm when authorization is received - two step arm: 1st arm command request an authorization and 2nd arm command arm the drone if authorized Used if arm authorization is requested by COM_ARM_AUTH_REQ.", "name": "COM_ARM_AUTH_MET", "shortDesc": "Arm authorization method", "type": "Int32", "values": [{"description": "one arm", "value": 0}, {"description": "two step arm", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "By default off. The default allows to arm the vehicle without a arm authorization.", "name": "COM_ARM_AUTH_REQ", "shortDesc": "Require arm authorization to arm", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Commander", "increment": 0.1, "longDesc": "Timeout for authorizer answer. Used if arm authorization is requested by COM_ARM_AUTH_REQ.", "name": "COM_ARM_AUTH_TO", "shortDesc": "Arm authorization timeout", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Commander", "increment": 0.01, "longDesc": "Threshold for battery percentage below arming is prohibited. A negative value means BAT_CRIT_THR is the threshold.", "max": 0.9, "min": -1.0, "name": "COM_ARM_BAT_MIN", "shortDesc": "Minimum battery level for arming", "type": "Float", "units": "norm"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "If this parameter is set, the system will check ESC's online status and failures. This param is specific for ESCs reporting status. It shall be used only if ESCs support telemetry.", "name": "COM_ARM_CHK_ESCS", "shortDesc": "Enable checks on ESCs that report telemetry", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "Commander", "longDesc": "This check detects if there are hardfault files present on the SD card. If so, and the parameter is enabled, arming is prevented.", "name": "COM_ARM_HFLT_CHK", "shortDesc": "Enable FMU SD card hardfault detection check", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.7, "group": "Commander", "increment": 0.05, "max": 1.0, "min": 0.1, "name": "COM_ARM_IMU_ACC", "shortDesc": "Maximum accelerometer inconsistency between IMU units that will allow arming", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.25, "group": "Commander", "increment": 0.01, "max": 0.3, "min": 0.02, "name": "COM_ARM_IMU_GYR", "shortDesc": "Maximum rate gyro inconsistency between IMU units that will allow arming", "type": "Float", "units": "rad/s"}, {"category": "Standard", "default": 60, "group": "Commander", "longDesc": "Set -1 to disable the check.", "max": 180, "min": 3, "name": "COM_ARM_MAG_ANG", "shortDesc": "Maximum magnetic field inconsistency between units that will allow arming", "type": "Int32", "units": "deg"}, {"category": "Standard", "default": 2, "group": "Commander", "longDesc": "Check if the estimator detects a strong magnetic disturbance (check enabled by EKF2_MAG_CHECK)", "name": "COM_ARM_MAG_STR", "shortDesc": "Enable mag strength preflight check", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Deny arming", "value": 1}, {"description": "Warning only", "value": 2}]}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "The default allows to arm the vehicle without a valid mission.", "name": "COM_ARM_MIS_REQ", "shortDesc": "Require valid mission to arm", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "This check detects if the Open Drone ID system is missing. Depending on the value of the parameter, the check can be disabled, warn only or deny arming.", "name": "COM_ARM_ODID", "shortDesc": "Enable Drone ID system detection and health check", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Warning only", "value": 1}, {"description": "Enforce Open Drone ID system presence", "value": 2}]}, {"category": "Standard", "default": 1, "group": "Commander", "longDesc": "This check detects if the FMU SD card is missing. Depending on the value of the parameter, the check can be disabled, warn only or deny arming.", "name": "COM_ARM_SDCARD", "shortDesc": "Enable FMU SD card detection check", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Warning only", "value": 1}, {"description": "Enforce SD card presence", "value": 2}]}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "0: Arming/disarming triggers on switch transition. 1: Arming/disarming triggers when holding the momentary button down for COM_RC_ARM_HYST like the stick gesture.", "name": "COM_ARM_SWISBTN", "shortDesc": "Arm switch is a momentary button", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "Commander", "longDesc": "Measures taken when a check defined by EKF2_GPS_CHECK is failing.", "name": "COM_ARM_WO_GPS", "shortDesc": "GPS preflight check", "type": "Int32", "values": [{"description": "Deny arming", "value": 0}, {"description": "Warning only", "value": 1}, {"description": "Disabled", "value": 2}]}, {"category": "Standard", "default": 95.0, "group": "Commander", "increment": 1.0, "longDesc": "The check fails if the CPU load is above this threshold for 2s. A negative value disables the check.", "max": 100.0, "min": -1.0, "name": "COM_CPU_MAX", "shortDesc": "Maximum allowed CPU load to still arm", "type": "Float", "units": "%"}, {"category": "Standard", "decimalPlaces": 1, "default": 2.0, "group": "Commander", "increment": 0.1, "longDesc": "A non-zero, positive value specifies the time-out period in seconds after which the vehicle will be automatically disarmed in case a landing situation has been detected during this period. A zero or negative value means that automatic disarming triggered by landing detection is disabled.", "name": "COM_DISARM_LAND", "shortDesc": "Time-out for auto disarm after landing", "type": "Float", "units": "s"}, {"category": "Standard", "default": 1, "group": "Commander", "longDesc": "0: Disallow disarming when not landed 1: Allow disarming in multicopter flight in modes where the thrust is directly controlled by thr throttle stick e.g. Stabilized, Acro", "name": "COM_DISARM_MAN", "shortDesc": "Allow disarming via switch/stick/button on multicopters in manual thrust modes", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Commander", "increment": 0.1, "longDesc": "A non-zero, positive value specifies the time in seconds, within which the vehicle is expected to take off after arming. In case the vehicle didn't takeoff within the timeout it disarms again. A negative value disables autmoatic disarming triggered by a pre-takeoff timeout.", "name": "COM_DISARM_PRFLT", "shortDesc": "Time-out for auto disarm if not taking off", "type": "Float", "units": "s"}, {"bitmask": [{"description": "Mission", "index": 0}, {"description": "Hold", "index": 1}, {"description": "Offboard", "index": 2}], "category": "Standard", "default": 0, "group": "Commander", "longDesc": "Specify modes in which datalink loss is ignored and the failsafe action not triggered.", "max": 7, "min": 0, "name": "COM_DLL_EXCEPT", "shortDesc": "Datalink loss exceptions", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 10, "group": "Commander", "increment": 1, "longDesc": "After this amount of seconds without datalink, the GCS connection lost mode triggers", "max": 300, "min": 5, "name": "COM_DL_LOSS_T", "shortDesc": "GCS connection loss time threshold", "type": "Int32", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Commander", "longDesc": "Before entering failsafe (RTL, Land, Hold), wait COM_FAIL_ACT_T seconds in Hold mode for the user to realize. During that time the user cannot take over control via the stick override feature (see COM_RC_OVERRIDE). Afterwards the configured failsafe action is triggered and the user may use stick override. A zero value disables the delay and the user cannot take over via stick movements (switching modes is still allowed).", "max": 25.0, "min": 0.0, "name": "COM_FAIL_ACT_T", "shortDesc": "Delay between failsafe condition triggered and failsafe reaction", "type": "Float", "units": "s"}, {"category": "System", "default": 0, "group": "Commander", "longDesc": "This number is incremented automatically after every flight on disarming in order to remember the next flight UUID. The first flight is 0.", "min": 0, "name": "COM_FLIGHT_UUID", "shortDesc": "Next flight UUID", "type": "Int32", "volatile": true}, {"category": "Standard", "default": -1, "group": "Commander", "longDesc": "If the main switch channel is in this range the selected flight mode will be applied.", "name": "COM_FLTMODE1", "shortDesc": "Mode slot 1", "type": "Int32", "values": [{"description": "Unassigned", "value": -1}, {"description": "Manual", "value": 0}, {"description": "Altitude", "value": 1}, {"description": "Position", "value": 2}, {"description": "Mission", "value": 3}, {"description": "Hold", "value": 4}, {"description": "Return", "value": 5}, {"description": "Acro", "value": 6}, {"description": "Offboard", "value": 7}, {"description": "Stabilized", "value": 8}, {"description": "Position Slow", "value": 9}, {"description": "Takeoff", "value": 10}, {"description": "Land", "value": 11}, {"description": "Follow Me", "value": 12}, {"description": "Precision Land", "value": 13}, {"description": "External Mode 1", "value": 100}, {"description": "External Mode 2", "value": 101}, {"description": "External Mode 3", "value": 102}, {"description": "External Mode 4", "value": 103}, {"description": "External Mode 5", "value": 104}, {"description": "External Mode 6", "value": 105}, {"description": "External Mode 7", "value": 106}, {"description": "External Mode 8", "value": 107}]}, {"category": "Standard", "default": -1, "group": "Commander", "longDesc": "If the main switch channel is in this range the selected flight mode will be applied.", "name": "COM_FLTMODE2", "shortDesc": "Mode slot 2", "type": "Int32", "values": [{"description": "Unassigned", "value": -1}, {"description": "Manual", "value": 0}, {"description": "Altitude", "value": 1}, {"description": "Position", "value": 2}, {"description": "Mission", "value": 3}, {"description": "Hold", "value": 4}, {"description": "Return", "value": 5}, {"description": "Acro", "value": 6}, {"description": "Offboard", "value": 7}, {"description": "Stabilized", "value": 8}, {"description": "Position Slow", "value": 9}, {"description": "Takeoff", "value": 10}, {"description": "Land", "value": 11}, {"description": "Follow Me", "value": 12}, {"description": "Precision Land", "value": 13}, {"description": "External Mode 1", "value": 100}, {"description": "External Mode 2", "value": 101}, {"description": "External Mode 3", "value": 102}, {"description": "External Mode 4", "value": 103}, {"description": "External Mode 5", "value": 104}, {"description": "External Mode 6", "value": 105}, {"description": "External Mode 7", "value": 106}, {"description": "External Mode 8", "value": 107}]}, {"category": "Standard", "default": -1, "group": "Commander", "longDesc": "If the main switch channel is in this range the selected flight mode will be applied.", "name": "COM_FLTMODE3", "shortDesc": "Mode slot 3", "type": "Int32", "values": [{"description": "Unassigned", "value": -1}, {"description": "Manual", "value": 0}, {"description": "Altitude", "value": 1}, {"description": "Position", "value": 2}, {"description": "Mission", "value": 3}, {"description": "Hold", "value": 4}, {"description": "Return", "value": 5}, {"description": "Acro", "value": 6}, {"description": "Offboard", "value": 7}, {"description": "Stabilized", "value": 8}, {"description": "Position Slow", "value": 9}, {"description": "Takeoff", "value": 10}, {"description": "Land", "value": 11}, {"description": "Follow Me", "value": 12}, {"description": "Precision Land", "value": 13}, {"description": "External Mode 1", "value": 100}, {"description": "External Mode 2", "value": 101}, {"description": "External Mode 3", "value": 102}, {"description": "External Mode 4", "value": 103}, {"description": "External Mode 5", "value": 104}, {"description": "External Mode 6", "value": 105}, {"description": "External Mode 7", "value": 106}, {"description": "External Mode 8", "value": 107}]}, {"category": "Standard", "default": -1, "group": "Commander", "longDesc": "If the main switch channel is in this range the selected flight mode will be applied.", "name": "COM_FLTMODE4", "shortDesc": "Mode slot 4", "type": "Int32", "values": [{"description": "Unassigned", "value": -1}, {"description": "Manual", "value": 0}, {"description": "Altitude", "value": 1}, {"description": "Position", "value": 2}, {"description": "Mission", "value": 3}, {"description": "Hold", "value": 4}, {"description": "Return", "value": 5}, {"description": "Acro", "value": 6}, {"description": "Offboard", "value": 7}, {"description": "Stabilized", "value": 8}, {"description": "Position Slow", "value": 9}, {"description": "Takeoff", "value": 10}, {"description": "Land", "value": 11}, {"description": "Follow Me", "value": 12}, {"description": "Precision Land", "value": 13}, {"description": "External Mode 1", "value": 100}, {"description": "External Mode 2", "value": 101}, {"description": "External Mode 3", "value": 102}, {"description": "External Mode 4", "value": 103}, {"description": "External Mode 5", "value": 104}, {"description": "External Mode 6", "value": 105}, {"description": "External Mode 7", "value": 106}, {"description": "External Mode 8", "value": 107}]}, {"category": "Standard", "default": -1, "group": "Commander", "longDesc": "If the main switch channel is in this range the selected flight mode will be applied.", "name": "COM_FLTMODE5", "shortDesc": "Mode slot 5", "type": "Int32", "values": [{"description": "Unassigned", "value": -1}, {"description": "Manual", "value": 0}, {"description": "Altitude", "value": 1}, {"description": "Position", "value": 2}, {"description": "Mission", "value": 3}, {"description": "Hold", "value": 4}, {"description": "Return", "value": 5}, {"description": "Acro", "value": 6}, {"description": "Offboard", "value": 7}, {"description": "Stabilized", "value": 8}, {"description": "Position Slow", "value": 9}, {"description": "Takeoff", "value": 10}, {"description": "Land", "value": 11}, {"description": "Follow Me", "value": 12}, {"description": "Precision Land", "value": 13}, {"description": "External Mode 1", "value": 100}, {"description": "External Mode 2", "value": 101}, {"description": "External Mode 3", "value": 102}, {"description": "External Mode 4", "value": 103}, {"description": "External Mode 5", "value": 104}, {"description": "External Mode 6", "value": 105}, {"description": "External Mode 7", "value": 106}, {"description": "External Mode 8", "value": 107}]}, {"category": "Standard", "default": -1, "group": "Commander", "longDesc": "If the main switch channel is in this range the selected flight mode will be applied.", "name": "COM_FLTMODE6", "shortDesc": "Mode slot 6", "type": "Int32", "values": [{"description": "Unassigned", "value": -1}, {"description": "Manual", "value": 0}, {"description": "Altitude", "value": 1}, {"description": "Position", "value": 2}, {"description": "Mission", "value": 3}, {"description": "Hold", "value": 4}, {"description": "Return", "value": 5}, {"description": "Acro", "value": 6}, {"description": "Offboard", "value": 7}, {"description": "Stabilized", "value": 8}, {"description": "Position Slow", "value": 9}, {"description": "Takeoff", "value": 10}, {"description": "Land", "value": 11}, {"description": "Follow Me", "value": 12}, {"description": "Precision Land", "value": 13}, {"description": "External Mode 1", "value": 100}, {"description": "External Mode 2", "value": 101}, {"description": "External Mode 3", "value": 102}, {"description": "External Mode 4", "value": 103}, {"description": "External Mode 5", "value": 104}, {"description": "External Mode 6", "value": 105}, {"description": "External Mode 7", "value": 106}, {"description": "External Mode 8", "value": 107}]}, {"category": "Standard", "default": 3, "group": "Commander", "increment": 1, "longDesc": "Action the system takes when the remaining flight time is below the estimated time it takes to reach the RTL destination.", "name": "COM_FLTT_LOW_ACT", "shortDesc": "Remaining flight time low failsafe", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Warning", "value": 1}, {"description": "Return", "value": 3}]}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "Describes the intended use of the vehicle. Can be used by ground control software or log post processing. This param does not influence the behavior within the firmware. This means for example the control logic is independent of the setting of this param (but depends on other params).", "name": "COM_FLT_PROFILE", "shortDesc": "User Flight Profile", "type": "Int32", "values": [{"description": "Default", "value": 0}, {"description": "Pro User", "value": 100}, {"description": "Flight Tester", "value": 200}, {"description": "Developer", "value": 300}]}, {"category": "Standard", "default": -1, "group": "Commander", "longDesc": "The vehicle aborts the current operation and returns to launch when the time since takeoff is above this value. It is not possible to resume the mission or switch to any auto mode other than RTL or Land. Taking over in any manual mode is still possible. Starting from 90% of the maximum flight time, a warning message will be sent every 1 minute with the remaining time until automatic RTL. Set to -1 to disable.", "min": -1, "name": "COM_FLT_TIME_MAX", "shortDesc": "Maximum allowed flight time", "type": "Int32", "units": "s"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "Force safety when the vehicle disarms", "name": "COM_FORCE_SAFETY", "shortDesc": "Enable force safety", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 120, "group": "Commander", "longDesc": "After this amount of seconds without datalink the data link lost mode triggers", "max": 3600, "min": 60, "name": "COM_HLDL_LOSS_T", "shortDesc": "High Latency Datalink loss time threshold", "type": "Int32", "units": "s"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "After a data link loss: after this number of seconds with a healthy datalink the 'datalink loss' flag is set back to false", "max": 60, "min": 0, "name": "COM_HLDL_REG_T", "shortDesc": "High Latency Datalink regain time threshold", "type": "Int32", "units": "s"}, {"category": "Standard", "default": 1, "group": "Commander", "longDesc": "Set home position automatically if possible.", "name": "COM_HOME_EN", "rebootRequired": true, "shortDesc": "Home position enabled", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "If set to true, the autopilot is allowed to set its home position after takeoff The true home position is back-computed if a local position is estimate if available. If no local position is available, home is set to the current position.", "name": "COM_HOME_IN_AIR", "shortDesc": "Allows setting the home position after takeoff", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Commander", "increment": 1, "longDesc": "Action the system takes when an imbalanced propeller is detected by the failure detector. See also FD_IMB_PROP_THR to set the failure threshold.", "name": "COM_IMB_PROP_ACT", "shortDesc": "Imbalanced propeller failsafe mode", "type": "Int32", "values": [{"description": "Disabled", "value": -1}, {"description": "Warning", "value": 0}, {"description": "Return", "value": 1}, {"description": "Land", "value": 2}]}, {"category": "Standard", "default": 5.0, "group": "Commander", "increment": 0.1, "max": 30.0, "min": 0.0, "name": "COM_KILL_DISARM", "shortDesc": "Timeout value for disarming when kill switch is engaged", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 3, "default": 3.0, "group": "Commander", "longDesc": "A non-zero, positive value specifies the timeframe in seconds within failure detector is allowed to disarm the vehicle if attitude exceeds the limits defined in FD_FAIL_P and FD_FAIL_R. The check is not executed for flight modes that do support acrobatic maneuvers, e.g: Acro (MC/FW) and Manual (FW). A zero or negative value means that the check is disabled.", "max": 5.0, "min": -1.0, "name": "COM_LKDOWN_TKO", "shortDesc": "Timeout for detecting a failure after takeoff", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "Action the system takes at critical battery. See also BAT_CRIT_THR and BAT_EMERGEN_THR for definition of battery states.", "name": "COM_LOW_BAT_ACT", "shortDesc": "Battery failsafe mode", "type": "Int32", "values": [{"description": "Warning", "value": 0}, {"description": "Land mode", "value": 2}, {"description": "Return at critical level, land at emergency level", "value": 3}]}, {"category": "System", "default": 0, "group": "Commander", "longDesc": "This parameter is automatically set to identify external modes. It ensures that modes get assigned to the same index independent from their startup order, which is required when mapping an external mode to an RC switch.", "name": "COM_MODE0_HASH", "shortDesc": "External mode identifier 0", "type": "Int32", "volatile": true}, {"category": "System", "default": 0, "group": "Commander", "longDesc": "This parameter is automatically set to identify external modes. It ensures that modes get assigned to the same index independent from their startup order, which is required when mapping an external mode to an RC switch.", "name": "COM_MODE1_HASH", "shortDesc": "External mode identifier 1", "type": "Int32", "volatile": true}, {"category": "System", "default": 0, "group": "Commander", "longDesc": "This parameter is automatically set to identify external modes. It ensures that modes get assigned to the same index independent from their startup order, which is required when mapping an external mode to an RC switch.", "name": "COM_MODE2_HASH", "shortDesc": "External mode identifier 2", "type": "Int32", "volatile": true}, {"category": "System", "default": 0, "group": "Commander", "longDesc": "This parameter is automatically set to identify external modes. It ensures that modes get assigned to the same index independent from their startup order, which is required when mapping an external mode to an RC switch.", "name": "COM_MODE3_HASH", "shortDesc": "External mode identifier 3", "type": "Int32", "volatile": true}, {"category": "System", "default": 0, "group": "Commander", "longDesc": "This parameter is automatically set to identify external modes. It ensures that modes get assigned to the same index independent from their startup order, which is required when mapping an external mode to an RC switch.", "name": "COM_MODE4_HASH", "shortDesc": "External mode identifier 4", "type": "Int32", "volatile": true}, {"category": "System", "default": 0, "group": "Commander", "longDesc": "This parameter is automatically set to identify external modes. It ensures that modes get assigned to the same index independent from their startup order, which is required when mapping an external mode to an RC switch.", "name": "COM_MODE5_HASH", "shortDesc": "External mode identifier 5", "type": "Int32", "volatile": true}, {"category": "System", "default": 0, "group": "Commander", "longDesc": "This parameter is automatically set to identify external modes. It ensures that modes get assigned to the same index independent from their startup order, which is required when mapping an external mode to an RC switch.", "name": "COM_MODE6_HASH", "shortDesc": "External mode identifier 6", "type": "Int32", "volatile": true}, {"category": "System", "default": 0, "group": "Commander", "longDesc": "This parameter is automatically set to identify external modes. It ensures that modes get assigned to the same index independent from their startup order, which is required when mapping an external mode to an RC switch.", "name": "COM_MODE7_HASH", "shortDesc": "External mode identifier 7", "type": "Int32", "volatile": true}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "By default disabled for safety reasons", "name": "COM_MODE_ARM_CHK", "shortDesc": "Allow external mode registration while armed", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "Commander", "longDesc": "If set, enables the actuator test interface via MAVLink (ACTUATOR_TEST), that allows spinning the motors and moving the servos for testing purposes.", "name": "COM_MOT_TEST_EN", "shortDesc": "Enable Actuator Testing", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 5.0, "group": "Commander", "increment": 0.01, "max": 60.0, "min": 0.0, "name": "COM_OBC_LOSS_T", "shortDesc": "Time-out to wait when onboard computer connection is lost before warning about loss connection", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "The offboard loss failsafe will only be entered after a timeout, set by COM_OF_LOSS_T in seconds.", "name": "COM_OBL_RC_ACT", "shortDesc": "Set offboard loss failsafe mode", "type": "Int32", "values": [{"description": "Position mode", "value": 0}, {"description": "Altitude mode", "value": 1}, {"description": "Stabilized", "value": 2}, {"description": "Return mode", "value": 3}, {"description": "Land mode", "value": 4}, {"description": "Hold mode", "value": 5}, {"description": "Terminate", "value": 6}, {"description": "Disarm", "value": 7}]}, {"category": "Standard", "default": 1.0, "group": "Commander", "increment": 0.01, "longDesc": "See COM_OBL_RC_ACT to configure action.", "max": 60.0, "min": 0.0, "name": "COM_OF_LOSS_T", "shortDesc": "Time-out to wait when offboard connection is lost before triggering offboard lost action", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Commander", "name": "COM_PARACHUTE", "shortDesc": "Expect and require a healthy MAVLink parachute system", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "This sets the flight mode that will be used if navigation accuracy is no longer adequate for position control in manual Position mode.", "name": "COM_POSCTL_NAVL", "shortDesc": "Position mode navigation loss response", "type": "Int32", "values": [{"description": "Altitude mode", "value": 0}, {"description": "Land mode (descend)", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Commander", "longDesc": "This is the horizontal position error (EPH) threshold that will trigger a failsafe. The default is appropriate for a multicopter. Can be increased for a fixed-wing. If the previous position error was below this threshold, there is an additional factor of 2.5 applied (threshold for invalidation 2.5 times the one for validation). Set to -1 to disable.", "max": 400.0, "min": -1.0, "name": "COM_POS_FS_EPH", "shortDesc": "Horizontal position error threshold", "type": "Float", "units": "m"}, {"category": "Standard", "default": 3, "group": "Commander", "increment": 1, "longDesc": "Action the system takes when the estimated position has an accuracy below the specified threshold. See COM_POS_LOW_EPH to set the failsafe threshold. The failsafe action is only executed if the vehicle is in auto mission or auto loiter mode, otherwise it is only a warning.", "name": "COM_POS_LOW_ACT", "shortDesc": "Low position accuracy action", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Warning", "value": 1}, {"description": "Hold", "value": 2}, {"description": "Return", "value": 3}, {"description": "Terminate", "value": 4}, {"description": "Land", "value": 5}]}, {"category": "Standard", "default": -1.0, "group": "Commander", "longDesc": "This triggers the action specified in COM_POS_LOW_ACT if the estimated position accuracy is below this threshold. Local position has to be still declared valid, which requires some kind of velocity aiding or large dead-reckoning time (EKF2_NOAID_TOUT), and a high failsafe threshold (COM_POS_FS_EPH). Set to -1 to disable.", "max": 1000.0, "min": -1.0, "name": "COM_POS_LOW_EPH", "shortDesc": "Low position accuracy failsafe threshold", "type": "Float", "units": "m"}, {"category": "Standard", "default": 1, "group": "Commander", "longDesc": "This configures a check to verify the expected number of 5V rail power supplies are present. By default only one is expected. Note: CBRK_SUPPLY_CHK disables all power checks including this one.", "max": 4, "min": 0, "name": "COM_POWER_COUNT", "shortDesc": "Required number of redundant power modules", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "Condition to enter the prearmed state, an intermediate state between disarmed and armed in which non-throttling actuators are active.", "name": "COM_PREARM_MODE", "shortDesc": "Condition to enter prearmed mode", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Safety button", "value": 1}, {"description": "Always", "value": 2}]}, {"category": "Standard", "default": 0, "group": "Commander", "name": "COM_QC_ACT", "shortDesc": "Set action after a quadchute", "type": "Int32", "values": [{"description": "Warning only", "value": -1}, {"description": "Return mode", "value": 0}, {"description": "Land mode", "value": 1}, {"description": "Hold mode", "value": 2}]}, {"category": "Standard", "default": 95.0, "group": "Commander", "increment": 1.0, "longDesc": "The check fails if the RAM usage is above this threshold. A negative value disables the check.", "max": 100.0, "min": -1.0, "name": "COM_RAM_MAX", "shortDesc": "Maximum allowed RAM usage to pass checks", "type": "Float", "units": "%"}, {"bitmask": [{"description": "Mission", "index": 0}, {"description": "Hold", "index": 1}, {"description": "Offboard", "index": 2}], "category": "Standard", "default": 0, "group": "Commander", "longDesc": "Specify modes in which RC loss is ignored and the failsafe action not triggered.", "max": 7, "min": 0, "name": "COM_RCL_EXCEPT", "shortDesc": "RC loss exceptions", "type": "Int32"}, {"category": "Standard", "default": 1000, "group": "Commander", "longDesc": "The default value of 1000 requires the stick to be held in the arm or disarm position for 1 second.", "max": 1500, "min": 100, "name": "COM_RC_ARM_HYST", "shortDesc": "RC input arm/disarm command duration", "type": "Int32", "units": "ms"}, {"category": "Standard", "default": 3, "group": "Commander", "longDesc": "A value of 0 enables RC transmitter control (only). A valid RC transmitter calibration is required. A value of 1 allows joystick control only. RC input handling and the associated checks are disabled. A value of 2 allows either RC Transmitter or Joystick input. The first valid input is used, will fallback to other sources if the input stream becomes invalid. A value of 3 allows either input from RC or joystick. The first available source is selected and used until reboot. A value of 4 ignores any stick input.", "max": 4, "min": 0, "name": "COM_RC_IN_MODE", "shortDesc": "RC control input mode", "type": "Int32", "values": [{"description": "RC Transmitter only", "value": 0}, {"description": "Joystick only", "value": 1}, {"description": "RC and Joystick with fallback", "value": 2}, {"description": "RC or Joystick keep first", "value": 3}, {"description": "Stick input disabled", "value": 4}]}, {"category": "Standard", "decimalPlaces": 1, "default": 0.5, "group": "Commander", "increment": 0.1, "longDesc": "The time in seconds without a new setpoint from RC or Joystick, after which the connection is considered lost. This must be kept short as the vehicle will use the last supplied setpoint until the timeout triggers.", "max": 35.0, "min": 0.0, "name": "COM_RC_LOSS_T", "shortDesc": "Manual control loss timeout", "type": "Float", "units": "s"}, {"bitmask": [{"description": "Enable override during auto modes (except for in critical battery reaction)", "index": 0}, {"description": "Enable override during offboard mode", "index": 1}], "category": "Standard", "default": 1, "group": "Commander", "longDesc": "When RC stick override is enabled, moving the RC sticks more than COM_RC_STICK_OV immediately gives control back to the pilot by switching to Position mode and if position is unavailable Altitude mode. Note: Only has an effect on multicopters, and VTOLs in multicopter mode.", "max": 3, "min": 0, "name": "COM_RC_OVERRIDE", "shortDesc": "Enable RC stick override of auto and/or offboard modes", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 0, "default": 30.0, "group": "Commander", "increment": 0.05, "longDesc": "If COM_RC_OVERRIDE is enabled and the joystick input is moved more than this threshold the autopilot the pilot takes over control.", "max": 80.0, "min": 5.0, "name": "COM_RC_STICK_OV", "shortDesc": "RC stick override threshold", "type": "Float", "units": "%"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Commander", "increment": 0.1, "longDesc": "The minimal time from arming the motors until moving the vehicle is possible is COM_SPOOLUP_TIME seconds. Goal: - Motors and propellers spool up to idle speed before getting commanded to spin faster - Timeout for ESCs and smart batteries to successfulyy do failure checks e.g. for stuck rotors before the vehicle is off the ground", "max": 30.0, "min": 0.0, "name": "COM_SPOOLUP_TIME", "shortDesc": "Enforced delay between arming and further navigation", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "The mode transition after TAKEOFF has completed successfully.", "name": "COM_TAKEOFF_ACT", "shortDesc": "Action after TAKEOFF has been accepted", "type": "Int32", "values": [{"description": "Hold", "value": 0}, {"description": "Mission (if valid)", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "Allows to start the vehicle by throwing it into the air.", "name": "COM_THROW_EN", "shortDesc": "Enable throw-start", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Commander", "increment": 0.1, "longDesc": "When the throw launch is enabled, the drone will only allow motors to spin after this speed is exceeded before detecting the freefall. This is a safety feature to ensure the drone does not turn on after accidental drop or a rapid movement before the throw. Set to 0 to disable.", "min": 0.0, "name": "COM_THROW_SPEED", "shortDesc": "Minimum speed for the throw start", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Commander", "longDesc": "This is the horizontal velocity error (EVH) threshold that will trigger a failsafe. The default is appropriate for a multicopter. Can be increased for a fixed-wing. If the previous velocity error was below this threshold, there is an additional factor of 2.5 applied (threshold for invalidation 2.5 times the one for validation).", "min": 0.0, "name": "COM_VEL_FS_EVH", "shortDesc": "Horizontal velocity error threshold", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "Commander", "increment": 0.1, "longDesc": "Wind speed threshold above which an automatic failsafe action is triggered. Failsafe action can be specified with COM_WIND_MAX_ACT.", "min": -1.0, "name": "COM_WIND_MAX", "shortDesc": "High wind speed failsafe threshold", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 0, "group": "Commander", "increment": 1, "longDesc": "Action the system takes when a wind speed above the specified threshold is detected. See COM_WIND_MAX to set the failsafe threshold. If enabled, it is not possible to resume the mission or switch to any auto mode other than RTL or Land if this threshold is exceeded. Taking over in any manual mode is still possible.", "name": "COM_WIND_MAX_ACT", "shortDesc": "High wind failsafe mode", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Warning", "value": 1}, {"description": "Hold", "value": 2}, {"description": "Return", "value": 3}, {"description": "Terminate", "value": 4}, {"description": "Land", "value": 5}]}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "Commander", "increment": 0.1, "longDesc": "A warning is triggered if the currently estimated wind speed is above this value. Warning is sent periodically (every 1 minute). Set to -1 to disable.", "min": -1.0, "name": "COM_WIND_WARN", "shortDesc": "Wind speed warning threshold", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 0, "group": "Commander", "longDesc": "The GCS connection loss failsafe will only be entered after a timeout, set by COM_DL_LOSS_T in seconds. Once the timeout occurs the selected action will be executed.", "max": 6, "min": 0, "name": "NAV_DLL_ACT", "shortDesc": "Set GCS connection loss failsafe mode", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Hold mode", "value": 1}, {"description": "Return mode", "value": 2}, {"description": "Land mode", "value": 3}, {"description": "Terminate", "value": 5}, {"description": "Disarm", "value": 6}]}, {"category": "Standard", "default": 2, "group": "Commander", "longDesc": "The RC loss failsafe will only be entered after a timeout, set by COM_RC_LOSS_T in seconds. If RC input checks have been disabled by setting the COM_RC_IN_MODE param it will not be triggered.", "max": 6, "min": 1, "name": "NAV_RCL_ACT", "shortDesc": "Set RC loss failsafe mode", "type": "Int32", "values": [{"description": "Hold mode", "value": 1}, {"description": "Return mode", "value": 2}, {"description": "Land mode", "value": 3}, {"description": "Terminate", "value": 5}, {"description": "Disarm", "value": 6}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "EKF2", "max": 0.5, "min": 0.0, "name": "EKF2_ABIAS_INIT", "rebootRequired": true, "shortDesc": "1-sigma IMU accelerometer switch-on bias", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 1, "default": 25.0, "group": "EKF2", "longDesc": "If the magnitude of the IMU accelerometer vector exceeds this value, the EKF accel bias state estimation will be inhibited. This reduces the adverse effect of high manoeuvre accelerations and IMU nonlinerity and scale factor errors on the accel bias estimates.", "max": 200.0, "min": 20.0, "name": "EKF2_ABL_ACCLIM", "shortDesc": "Maximum IMU accel magnitude that allows IMU bias learning", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "EKF2", "longDesc": "If the magnitude of the IMU angular rate vector exceeds this value, the EKF accel bias state estimation will be inhibited. This reduces the adverse effect of rapid rotation rates and associated errors on the accel bias estimates.", "max": 20.0, "min": 2.0, "name": "EKF2_ABL_GYRLIM", "shortDesc": "Maximum IMU gyro angular rate magnitude that allows IMU bias learning", "type": "Float", "units": "rad/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.4, "group": "EKF2", "longDesc": "The ekf accel bias states will be limited to within a range equivalent to +- of this value.", "max": 0.8, "min": 0.0, "name": "EKF2_ABL_LIM", "shortDesc": "Accelerometer bias learning limit", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "EKF2", "longDesc": "The vector magnitude of angular rate and acceleration used to check if learning should be inhibited has a peak hold filter applied to it with an exponential decay. This parameter controls the time constant of the decay.", "max": 1.0, "min": 0.1, "name": "EKF2_ABL_TAU", "shortDesc": "Accel bias learning inhibit time constant", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 6, "default": 0.003, "group": "EKF2", "max": 0.01, "min": 0.0, "name": "EKF2_ACC_B_NOISE", "shortDesc": "Process noise for IMU accelerometer bias prediction", "type": "Float", "units": "m/s^3"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.35, "group": "EKF2", "max": 1.0, "min": 0.01, "name": "EKF2_ACC_NOISE", "shortDesc": "Accelerometer noise for covariance prediction", "type": "Float", "units": "m/s^2"}, {"bitmask": [{"description": "Horizontal position", "index": 0}, {"description": "Vertical position", "index": 1}], "category": "Standard", "default": 0, "group": "EKF2", "longDesc": "Set bits in the following positions to enable: 0 : Horizontal position fusion 1 : Vertical position fusion", "max": 3, "min": 0, "name": "EKF2_AGP_CTRL", "shortDesc": "Aux global position (AGP) sensor aiding", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "EKF2", "max": 300.0, "min": 0.0, "name": "EKF2_AGP_DELAY", "rebootRequired": true, "shortDesc": "Aux global position estimator delay relative to IMU measurements", "type": "Float", "units": "ms"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_AGP_GATE", "shortDesc": "Gate size for aux global position fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.9, "group": "EKF2", "longDesc": "Used to lower bound or replace the uncertainty included in the message", "min": 0.01, "name": "EKF2_AGP_NOISE", "shortDesc": "Measurement noise for aux global position measurements", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.1, "group": "EKF2", "max": 0.5, "min": 0.0, "name": "EKF2_ANGERR_INIT", "rebootRequired": true, "shortDesc": "1-sigma tilt angle uncertainty after gravity vector alignment", "type": "Float", "units": "rad"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "EKF2", "longDesc": "Airspeed data is fused for wind estimation if above this threshold. Set to 0 to disable airspeed fusion. For reliable wind estimation both sideslip (see EKF2_FUSE_BETA) and airspeed fusion should be enabled. Only applies to fixed-wing vehicles (or VTOLs in fixed-wing mode).", "min": 0.0, "name": "EKF2_ARSP_THR", "shortDesc": "Airspeed fusion threshold", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 20.0, "group": "EKF2", "max": 50.0, "min": 5.0, "name": "EKF2_ASPD_MAX", "shortDesc": "Maximum airspeed used for baro static pressure compensation", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 100.0, "group": "EKF2", "max": 300.0, "min": 0.0, "name": "EKF2_ASP_DELAY", "rebootRequired": true, "shortDesc": "Airspeed measurement delay relative to IMU measurements", "type": "Float", "units": "ms"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "max": 300.0, "min": 0.0, "name": "EKF2_AVEL_DELAY", "rebootRequired": true, "shortDesc": "Auxiliary Velocity Estimate delay relative to IMU measurements", "type": "Float", "units": "ms"}, {"category": "Standard", "default": 1, "group": "EKF2", "longDesc": "If this parameter is enabled then the estimator will make use of the barometric height measurements to estimate its height in addition to other height sources (if activated).", "name": "EKF2_BARO_CTRL", "shortDesc": "Barometric sensor height aiding", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "EKF2", "max": 300.0, "min": 0.0, "name": "EKF2_BARO_DELAY", "rebootRequired": true, "shortDesc": "Barometer measurement delay relative to IMU measurements", "type": "Float", "units": "ms"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_BARO_GATE", "shortDesc": "Gate size for barometric and GPS height fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 3.5, "group": "EKF2", "max": 15.0, "min": 0.01, "name": "EKF2_BARO_NOISE", "shortDesc": "Measurement noise for barometric altitude", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 100.0, "group": "EKF2", "longDesc": "This parameter controls the prediction of drag produced by bluff body drag along the forward/reverse axis when flying a multi-copter which enables estimation of wind drift when enabled by the EKF2_DRAG_CTRL parameter. The drag produced by this effect scales with speed squared. The predicted drag from the rotors is specified separately by the EKF2_MCOEF parameter. Set this parameter to zero to turn off the bluff body drag model for this axis.", "max": 200.0, "min": 0.0, "name": "EKF2_BCOEF_X", "shortDesc": "X-axis ballistic coefficient used for multi-rotor wind estimation", "type": "Float", "units": "kg/m^2"}, {"category": "Standard", "decimalPlaces": 1, "default": 100.0, "group": "EKF2", "longDesc": "This parameter controls the prediction of drag produced by bluff body drag along the right/left axis when flying a multi-copter, which enables estimation of wind drift when enabled by the EKF2_DRAG_CTRL parameter. The drag produced by this effect scales with speed squared. The predicted drag from the rotors is specified separately by the EKF2_MCOEF parameter. Set this parameter to zero to turn off the bluff body drag model for this axis.", "max": 200.0, "min": 0.0, "name": "EKF2_BCOEF_Y", "shortDesc": "Y-axis ballistic coefficient used for multi-rotor wind estimation", "type": "Float", "units": "kg/m^2"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_BETA_GATE", "shortDesc": "Gate size for synthetic sideslip fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "EKF2", "max": 1.0, "min": 0.1, "name": "EKF2_BETA_NOISE", "shortDesc": "Noise for synthetic sideslip fusion", "type": "Float", "units": "m/s"}, {"bitmask": [{"description": "use geo_lookup declination", "index": 0}, {"description": "save EKF2_MAG_DECL on disarm", "index": 1}], "category": "Standard", "default": 3, "group": "EKF2", "longDesc": "Set bits in the following positions to enable functions. 0 : Set to true to use the declination from the geo_lookup library when the GPS position becomes available, set to false to always use the EKF2_MAG_DECL value. 1 : Set to true to save the EKF2_MAG_DECL parameter to the value returned by the EKF when the vehicle disarms.", "max": 3, "min": 0, "name": "EKF2_DECL_TYPE", "rebootRequired": true, "shortDesc": "Integer bitmask controlling handling of magnetic declination", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 200.0, "group": "EKF2", "longDesc": "Defines the delay between the current time and the delayed-time horizon. This value should be at least as large as the largest EKF2_XXX_DELAY parameter.", "max": 1000.0, "min": 0.0, "name": "EKF2_DELAY_MAX", "rebootRequired": true, "shortDesc": "Maximum delay of all the aiding sensors", "type": "Float", "units": "ms"}, {"category": "Standard", "default": 0, "group": "EKF2", "longDesc": "Activate wind speed estimation using specific-force measurements and a drag model defined by EKF2_BCOEF_[XY] and EKF2_MCOEF. Only use on vehicles that have their thrust aligned with the Z axis and no thrust in the XY plane.", "name": "EKF2_DRAG_CTRL", "shortDesc": "Multirotor wind estimation selection", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 2.5, "group": "EKF2", "longDesc": "Used by the multi-rotor specific drag force model. Increasing this makes the multi-rotor wind estimates adjust more slowly.", "max": 10.0, "min": 0.5, "name": "EKF2_DRAG_NOISE", "shortDesc": "Specific drag force observation noise variance", "type": "Float", "units": "(m/s^2)^2"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.4, "group": "EKF2", "max": 5.0, "min": 0.5, "name": "EKF2_EAS_NOISE", "shortDesc": "Measurement noise for airspeed fusion", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 1, "group": "EKF2", "name": "EKF2_EN", "shortDesc": "EKF2 enable", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "EKF2", "longDesc": "Used to lower bound or replace the uncertainty included in the message", "min": 0.05, "name": "EKF2_EVA_NOISE", "shortDesc": "Measurement noise for vision angle measurements", "type": "Float", "units": "rad"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_EVP_GATE", "shortDesc": "Gate size for vision position fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "EKF2", "longDesc": "Used to lower bound or replace the uncertainty included in the message", "min": 0.01, "name": "EKF2_EVP_NOISE", "shortDesc": "Measurement noise for vision position measurements", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_EVV_GATE", "shortDesc": "Gate size for vision velocity estimate fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "EKF2", "longDesc": "Used to lower bound or replace the uncertainty included in the message", "min": 0.01, "name": "EKF2_EVV_NOISE", "shortDesc": "Measurement noise for vision velocity measurements", "type": "Float", "units": "m/s"}, {"bitmask": [{"description": "Horizontal position", "index": 0}, {"description": "Vertical position", "index": 1}, {"description": "3D velocity", "index": 2}, {"description": "Yaw", "index": 3}], "category": "Standard", "default": 0, "group": "EKF2", "longDesc": "Set bits in the following positions to enable: 0 : Horizontal position fusion 1 : Vertical position fusion 2 : 3D velocity fusion 3 : Yaw", "max": 15, "min": 0, "name": "EKF2_EV_CTRL", "shortDesc": "External vision (EV) sensor aiding", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "EKF2", "max": 300.0, "min": 0.0, "name": "EKF2_EV_DELAY", "rebootRequired": true, "shortDesc": "Vision Position Estimator delay relative to IMU measurements", "type": "Float", "units": "ms"}, {"category": "Standard", "default": 0, "group": "EKF2", "longDesc": "If set to 0 (default) the measurement noise is taken from the vision message and the EV noise parameters are used as a lower bound. If set to 1 the observation noise is set from the parameters directly,", "name": "EKF2_EV_NOISE_MD", "shortDesc": "External vision (EV) noise mode", "type": "Int32", "values": [{"description": "EV reported variance (parameter lower bound)", "value": 0}, {"description": "EV noise parameters", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_EV_POS_X", "shortDesc": "X position of VI sensor focal point in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_EV_POS_Y", "shortDesc": "Y position of VI sensor focal point in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_EV_POS_Z", "shortDesc": "Z position of VI sensor focal point in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 0, "group": "EKF2", "longDesc": "External vision will only be started and fused if the quality metric is above this threshold. The quality metric is a completely optional field provided by some VIO systems.", "max": 100, "min": 0, "name": "EKF2_EV_QMIN", "shortDesc": "External vision (EV) minimum quality (optional)", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "EKF2", "longDesc": "For reliable wind estimation both sideslip and airspeed fusion (see EKF2_ARSP_THR) should be enabled. Only applies to vehicles in fixed-wing mode or with airspeed fusion active. Note: side slip fusion is currently not supported for tailsitters.", "name": "EKF2_FUSE_BETA", "shortDesc": "Enable synthetic sideslip fusion", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "EKF2", "max": 0.2, "min": 0.0, "name": "EKF2_GBIAS_INIT", "rebootRequired": true, "shortDesc": "1-sigma IMU gyro switch-on bias", "type": "Float", "units": "rad/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 4.0, "group": "EKF2", "longDesc": "Sets the value of deadzone applied to negative baro innovations. Deadzone is enabled when EKF2_GND_EFF_DZ > 0.", "max": 10.0, "min": 0.0, "name": "EKF2_GND_EFF_DZ", "shortDesc": "Baro deadzone range for height fusion", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.5, "group": "EKF2", "longDesc": "Sets the maximum distance to the ground level where negative baro innovations are expected.", "max": 5.0, "min": 0.0, "name": "EKF2_GND_MAX_HGT", "shortDesc": "Height above ground level for ground effect zone", "type": "Float", "units": "m"}, {"bitmask": [{"description": "Sat count (EKF2_REQ_NSATS)", "index": 0}, {"description": "PDOP (EKF2_REQ_PDOP)", "index": 1}, {"description": "EPH (EKF2_REQ_EPH)", "index": 2}, {"description": "EPV (EKF2_REQ_EPV)", "index": 3}, {"description": "Speed accuracy (EKF2_REQ_SACC)", "index": 4}, {"description": "Horizontal position drift (EKF2_REQ_HDRIFT)", "index": 5}, {"description": "Vertical position drift (EKF2_REQ_VDRIFT)", "index": 6}, {"description": "Horizontal speed offset (EKF2_REQ_HDRIFT)", "index": 7}, {"description": "Vertical speed offset (EKF2_REQ_VDRIFT)", "index": 8}, {"description": "Spoofing", "index": 9}], "category": "Standard", "default": 1023, "group": "EKF2", "longDesc": "Each threshold value is defined by the parameter indicated next to the check. Drift and offset checks only run when the vehicle is on ground and stationary.", "max": 1023, "min": 0, "name": "EKF2_GPS_CHECK", "shortDesc": "Integer bitmask controlling GPS checks", "type": "Int32"}, {"bitmask": [{"description": "Lon/lat", "index": 0}, {"description": "Altitude", "index": 1}, {"description": "3D velocity", "index": 2}, {"description": "Dual antenna heading", "index": 3}], "category": "Standard", "default": 7, "group": "EKF2", "longDesc": "Set bits in the following positions to enable: 0 : Longitude and latitude fusion 1 : Altitude fusion 2 : 3D velocity fusion 3 : Dual antenna heading fusion", "max": 15, "min": 0, "name": "EKF2_GPS_CTRL", "shortDesc": "GNSS sensor aiding", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 110.0, "group": "EKF2", "max": 300.0, "min": 0.0, "name": "EKF2_GPS_DELAY", "rebootRequired": true, "shortDesc": "GPS measurement delay relative to IMU measurements", "type": "Float", "units": "ms"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_GPS_POS_X", "shortDesc": "X position of GPS antenna in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_GPS_POS_Y", "shortDesc": "Y position of GPS antenna in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_GPS_POS_Z", "shortDesc": "Z position of GPS antenna in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_GPS_P_GATE", "shortDesc": "Gate size for GNSS position fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "EKF2", "max": 10.0, "min": 0.01, "name": "EKF2_GPS_P_NOISE", "shortDesc": "Measurement noise for GNSS position", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_GPS_V_GATE", "shortDesc": "Gate size for GNSS velocity fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "EKF2", "max": 5.0, "min": 0.01, "name": "EKF2_GPS_V_NOISE", "shortDesc": "Measurement noise for GNSS velocity", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "EKF2", "max": 360.0, "min": 0.0, "name": "EKF2_GPS_YAW_OFF", "shortDesc": "Heading/Yaw offset for dual antenna GPS", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "EKF2", "max": 10.0, "min": 0.1, "name": "EKF2_GRAV_NOISE", "shortDesc": "Accelerometer measurement noise for gravity based observations", "type": "Float", "units": "g0"}, {"category": "Standard", "decimalPlaces": 1, "default": 15.0, "group": "EKF2", "longDesc": "If no airspeed measurements are available, the EKF-GSF AHRS calculation will assume this value of true airspeed when compensating for centripetal acceleration during turns. Set to zero to disable centripetal acceleration compensation during fixed wing flight modes.", "max": 100.0, "min": 0.0, "name": "EKF2_GSF_TAS", "shortDesc": "Default value of true airspeed used in EKF-GSF AHRS calculation", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.15, "group": "EKF2", "longDesc": "The ekf gyro bias states will be limited to within a range equivalent to +- of this value.", "max": 0.4, "min": 0.0, "name": "EKF2_GYR_B_LIM", "shortDesc": "Gyro bias learning limit", "type": "Float", "units": "rad/s"}, {"category": "Standard", "decimalPlaces": 6, "default": 0.001, "group": "EKF2", "max": 0.01, "min": 0.0, "name": "EKF2_GYR_B_NOISE", "shortDesc": "Process noise for IMU rate gyro bias prediction", "type": "Float", "units": "rad/s^2"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.015, "group": "EKF2", "max": 0.1, "min": 0.0001, "name": "EKF2_GYR_NOISE", "shortDesc": "Rate gyro noise for covariance prediction", "type": "Float", "units": "rad/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 2.6, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_HDG_GATE", "shortDesc": "Gate size for heading fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "EKF2", "max": 1.0, "min": 0.01, "name": "EKF2_HEAD_NOISE", "shortDesc": "Measurement noise for magnetic heading fusion", "type": "Float", "units": "rad"}, {"category": "Standard", "default": 1, "group": "EKF2", "longDesc": "When multiple height sources are enabled at the same time, the height estimate will always converge towards the reference height source selected by this parameter. The range sensor and vision options should only be used when for operation over a flat surface as the local NED origin will move up and down with ground level. If GPS is set as reference but altitude fusion is disabled in EKF2_GPS_CTRL, the GPS altitude is still used to initiaize the bias of the other height sensors.", "name": "EKF2_HGT_REF", "rebootRequired": true, "shortDesc": "Determines the reference source of height data used by the EKF", "type": "Int32", "values": [{"description": "Barometric pressure", "value": 0}, {"description": "GPS", "value": 1}, {"description": "Range sensor", "value": 2}, {"description": "Vision", "value": 3}]}, {"bitmask": [{"description": "Gyro Bias", "index": 0}, {"description": "Accel Bias", "index": 1}, {"description": "Gravity vector fusion", "index": 2}], "category": "Standard", "default": 7, "group": "EKF2", "max": 7, "min": 0, "name": "EKF2_IMU_CTRL", "shortDesc": "IMU control", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_IMU_POS_X", "shortDesc": "X position of IMU in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_IMU_POS_Y", "shortDesc": "Y position of IMU in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_IMU_POS_Z", "shortDesc": "Z position of IMU in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "default": 1, "group": "EKF2", "name": "EKF2_LOG_VERBOSE", "shortDesc": "Verbose logging", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "EKF2", "longDesc": "The heading is assumed to be observable when the body acceleration is greater than this parameter when a global position/velocity aiding source is active.", "max": 5.0, "min": 0.0, "name": "EKF2_MAG_ACCLIM", "shortDesc": "Horizontal acceleration threshold used for heading observability check", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 6, "default": 0.0001, "group": "EKF2", "max": 0.1, "min": 0.0, "name": "EKF2_MAG_B_NOISE", "shortDesc": "Process noise for body magnetic field prediction", "type": "Float", "units": "gauss/s"}, {"bitmask": [{"description": "Strength (EKF2_MAG_CHK_STR)", "index": 0}, {"description": "Inclination (EKF2_MAG_CHK_INC)", "index": 1}, {"description": "Wait for WMM", "index": 2}], "category": "Standard", "default": 1, "group": "EKF2", "longDesc": "Bitmask to set which check is used to decide whether the magnetometer data is valid. If GNSS data is received, the magnetic field is compared to a World Magnetic Model (WMM), otherwise an average value is used. This check is useful to reject occasional hard iron disturbance. Set bits to 1 to enable checks. Checks enabled by the following bit positions 0 : Magnetic field strength. Set tolerance using EKF2_MAG_CHK_STR 1 : Magnetic field inclination. Set tolerance using EKF2_MAG_CHK_INC 2 : Wait for GNSS to find the theoretical strength and inclination using the WMM", "max": 7, "min": 0, "name": "EKF2_MAG_CHECK", "shortDesc": "Magnetic field strength test selection", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 20.0, "group": "EKF2", "longDesc": "Maximum allowed deviation from the expected magnetic field inclination to pass the check.", "max": 90.0, "min": 0.0, "name": "EKF2_MAG_CHK_INC", "shortDesc": "Magnetic field inclination check tolerance", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "EKF2", "longDesc": "Maximum allowed deviation from the expected magnetic field strength to pass the check.", "max": 1.0, "min": 0.0, "name": "EKF2_MAG_CHK_STR", "shortDesc": "Magnetic field strength check tolerance", "type": "Float", "units": "gauss"}, {"category": "System", "decimalPlaces": 1, "default": 0.0, "group": "EKF2", "name": "EKF2_MAG_DECL", "shortDesc": "Magnetic declination", "type": "Float", "units": "deg", "volatile": true}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "EKF2", "max": 300.0, "min": 0.0, "name": "EKF2_MAG_DELAY", "rebootRequired": true, "shortDesc": "Magnetometer measurement delay relative to IMU measurements", "type": "Float", "units": "ms"}, {"category": "Standard", "decimalPlaces": 6, "default": 0.001, "group": "EKF2", "max": 0.1, "min": 0.0, "name": "EKF2_MAG_E_NOISE", "shortDesc": "Process noise for earth magnetic field prediction", "type": "Float", "units": "gauss/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_MAG_GATE", "shortDesc": "Gate size for magnetometer XYZ component fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "EKF2", "max": 1.0, "min": 0.001, "name": "EKF2_MAG_NOISE", "shortDesc": "Measurement noise for magnetometer 3-axis fusion", "type": "Float", "units": "gauss"}, {"category": "Standard", "default": 0, "group": "EKF2", "longDesc": "Integer controlling the type of magnetometer fusion used - magnetic heading or 3-component vector. The fusion of magnetometer data as a three component vector enables vehicle body fixed hard iron errors to be learned, but requires a stable earth field. If set to 'Automatic' magnetic heading fusion is used when on-ground and 3-axis magnetic field fusion in-flight. If set to 'Magnetic heading' magnetic heading fusion is used at all times. If set to 'None' the magnetometer will not be used under any circumstance. If no external source of yaw is available, it is possible to use post-takeoff horizontal movement combined with GNSS velocity measurements to align the yaw angle. If set to 'Init' the magnetometer is only used to initalize the heading.", "name": "EKF2_MAG_TYPE", "rebootRequired": true, "shortDesc": "Type of magnetometer fusion", "type": "Int32", "values": [{"description": "Automatic", "value": 0}, {"description": "Magnetic heading", "value": 1}, {"description": "None", "value": 5}, {"description": "Init", "value": 6}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.15, "group": "EKF2", "longDesc": "This parameter controls the prediction of drag produced by the propellers when flying a multi-copter, which enables estimation of wind drift when enabled by the EKF2_DRAG_CTRL parameter. The drag produced by this effect scales with speed not speed squared and is produced because some of the air velocity normal to the propeller axis of rotation is lost when passing through the rotor disc. This changes the momentum of the flow which creates a drag reaction force. When comparing un-ducted propellers of the same diameter, the effect is roughly proportional to the area of the propeller blades when viewed side on and changes with propeller selection. Momentum drag is significantly higher for ducted rotors. To account for the drag produced by the body which scales with speed squared, see documentation for the EKF2_BCOEF_X and EKF2_BCOEF_Y parameters. Set this parameter to zero to turn off the momentum drag model for both axis.", "max": 1.0, "min": 0.0, "name": "EKF2_MCOEF", "shortDesc": "Propeller momentum drag coefficient for multi-rotor wind estimation", "type": "Float", "units": "1/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "EKF2", "longDesc": "If the vehicle is on ground, is not moving as determined by the motion test and the range finder is returning invalid or no data, then an assumed range value of EKF2_MIN_RNG will be used by the terrain estimator so that a terrain height estimate is available at the start of flight in situations where the range finder may be inside its minimum measurements distance when on ground.", "min": 0.01, "name": "EKF2_MIN_RNG", "shortDesc": "Expected range finder reading when on ground", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "EKF2", "longDesc": "Maximum number of IMUs to use for Multi-EKF. Set 0 to disable. Requires SENS_IMU_MODE 0.", "max": 4, "min": 0, "name": "EKF2_MULTI_IMU", "rebootRequired": true, "shortDesc": "Multi-EKF IMUs", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "EKF2", "longDesc": "Maximum number of magnetometers to use for Multi-EKF. Set 0 to disable. Requires SENS_MAG_MODE 0.", "max": 4, "min": 0, "name": "EKF2_MULTI_MAG", "rebootRequired": true, "shortDesc": "Multi-EKF Magnetometers", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "EKF2", "max": 50.0, "min": 0.5, "name": "EKF2_NOAID_NOISE", "shortDesc": "Measurement noise for non-aiding position hold", "type": "Float", "units": "m"}, {"category": "Standard", "default": 5000000, "group": "EKF2", "longDesc": "Maximum lapsed time from last fusion of measurements that constrain velocity drift before the EKF will report the horizontal nav solution as invalid", "max": 10000000, "min": 500000, "name": "EKF2_NOAID_TOUT", "shortDesc": "Maximum inertial dead-reckoning time", "type": "Int32", "units": "us"}, {"category": "Standard", "default": 1, "group": "EKF2", "longDesc": "Enable optical flow fusion.", "name": "EKF2_OF_CTRL", "shortDesc": "Optical flow aiding", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 20.0, "group": "EKF2", "longDesc": "Assumes measurement is timestamped at trailing edge of integration period", "max": 300.0, "min": 0.0, "name": "EKF2_OF_DELAY", "rebootRequired": true, "shortDesc": "Optical flow measurement delay relative to IMU measurements", "type": "Float", "units": "ms"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_OF_GATE", "shortDesc": "Gate size for optical flow fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "default": 0, "group": "EKF2", "longDesc": "Auto: use gyro from optical flow message if available, internal gyro otherwise. Internal: always use internal gyro", "name": "EKF2_OF_GYR_SRC", "shortDesc": "Optical flow angular rate compensation source", "type": "Int32", "values": [{"description": "Auto", "value": 0}, {"description": "Internal", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "EKF2", "longDesc": "Measurement noise for the optical flow sensor when it's reported quality metric is at the minimum", "min": 0.05, "name": "EKF2_OF_N_MAX", "shortDesc": "Optical flow maximum noise", "type": "Float", "units": "rad/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.15, "group": "EKF2", "longDesc": "Measurement noise for the optical flow sensor when it's reported quality metric is at the maximum", "min": 0.05, "name": "EKF2_OF_N_MIN", "shortDesc": "Optical flow minimum noise", "type": "Float", "units": "rad/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_OF_POS_X", "shortDesc": "X position of optical flow focal point in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_OF_POS_Y", "shortDesc": "Y position of optical flow focal point in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_OF_POS_Z", "shortDesc": "Z position of optical flow focal point in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "default": 1, "group": "EKF2", "longDesc": "Optical Flow data will only be used in air if the sensor reports a quality metric >= EKF2_OF_QMIN", "max": 255, "min": 0, "name": "EKF2_OF_QMIN", "shortDesc": "In air optical flow minimum quality", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "EKF2", "longDesc": "Optical Flow data will only be used on the ground if the sensor reports a quality metric >= EKF2_OF_QMIN_GND", "max": 255, "min": 0, "name": "EKF2_OF_QMIN_GND", "shortDesc": "On ground optical flow minimum quality", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "EKF2", "longDesc": "This is the ratio of static pressure error to dynamic pressure generated by a negative wind relative velocity along the X body axis. If the baro height estimate rises during backwards flight, then this will be a negative number.", "max": 0.5, "min": -0.5, "name": "EKF2_PCOEF_XN", "shortDesc": "Static pressure position error coefficient for the negative X axis", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "EKF2", "longDesc": "This is the ratio of static pressure error to dynamic pressure generated by a positive wind relative velocity along the X body axis. If the baro height estimate rises during forward flight, then this will be a negative number.", "max": 0.5, "min": -0.5, "name": "EKF2_PCOEF_XP", "shortDesc": "Static pressure position error coefficient for the positive X axis", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "EKF2", "longDesc": "This is the ratio of static pressure error to dynamic pressure generated by a wind relative velocity along the negative Y (LH) body axis. If the baro height estimate rises during sideways flight to the left, then this will be a negative number.", "max": 0.5, "min": -0.5, "name": "EKF2_PCOEF_YN", "shortDesc": "Pressure position error coefficient for the negative Y axis", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "EKF2", "longDesc": "This is the ratio of static pressure error to dynamic pressure generated by a wind relative velocity along the positive Y (RH) body axis. If the baro height estimate rises during sideways flight to the right, then this will be a negative number.", "max": 0.5, "min": -0.5, "name": "EKF2_PCOEF_YP", "shortDesc": "Pressure position error coefficient for the positive Y axis", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "EKF2", "longDesc": "This is the ratio of static pressure error to dynamic pressure generated by a wind relative velocity along the Z body axis.", "max": 0.5, "min": -0.5, "name": "EKF2_PCOEF_Z", "shortDesc": "Static pressure position error coefficient for the Z axis", "type": "Float"}, {"category": "Standard", "default": 10000, "group": "EKF2", "longDesc": "EKF prediction period in microseconds. This should ideally be an integer multiple of the IMU time delta. Actual filter update will be an integer multiple of IMU update.", "max": 20000, "min": 1000, "name": "EKF2_PREDICT_US", "shortDesc": "EKF prediction period", "type": "Int32", "units": "us"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "EKF2", "max": 100.0, "min": 2.0, "name": "EKF2_REQ_EPH", "shortDesc": "Required EPH to use GPS", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "max": 100.0, "min": 2.0, "name": "EKF2_REQ_EPV", "shortDesc": "Required EPV to use GPS", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "EKF2", "longDesc": "Minimum continuous period without GPS failure required to mark a healthy GPS status. It can be reduced to speed up initialization, but it's recommended to keep this unchanged for a vehicle.", "min": 0.1, "name": "EKF2_REQ_GPS_H", "rebootRequired": true, "shortDesc": "Required GPS health time on startup", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "EKF2", "max": 1.0, "min": 0.1, "name": "EKF2_REQ_HDRIFT", "shortDesc": "Maximum horizontal drift speed to use GPS", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 6, "group": "EKF2", "max": 12, "min": 4, "name": "EKF2_REQ_NSATS", "shortDesc": "Required satellite count to use GPS", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 2.5, "group": "EKF2", "max": 5.0, "min": 1.5, "name": "EKF2_REQ_PDOP", "shortDesc": "Maximum PDOP to use GPS", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "EKF2", "max": 5.0, "min": 0.5, "name": "EKF2_REQ_SACC", "shortDesc": "Required speed accuracy to use GPS", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "EKF2", "max": 1.5, "min": 0.1, "name": "EKF2_REQ_VDRIFT", "shortDesc": "Maximum vertical drift speed to use GPS", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 5.0, "group": "EKF2", "longDesc": "If the vehicle absolute altitude exceeds this value then the estimator will not fuse range measurements to estimate its height. This only applies when conditional range aid mode is activated (EKF2_RNG_CTRL = 1).", "max": 10.0, "min": 1.0, "name": "EKF2_RNG_A_HMAX", "shortDesc": "Maximum height above ground allowed for conditional range aid mode", "type": "Float", "units": "m"}, {"category": "Standard", "default": 1.0, "group": "EKF2", "longDesc": "A lower value means HAGL needs to be more stable in order to use range finder for height estimation in range aid mode", "max": 5.0, "min": 0.1, "name": "EKF2_RNG_A_IGATE", "shortDesc": "Gate size used for innovation consistency checks for range aid fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "default": 1.0, "group": "EKF2", "longDesc": "If the vehicle horizontal speed exceeds this value then the estimator will not fuse range measurements to estimate its height. This only applies when conditional range aid mode is activated (EKF2_RNG_CTRL = 1).", "max": 2.0, "min": 0.1, "name": "EKF2_RNG_A_VMAX", "shortDesc": "Maximum horizontal velocity allowed for conditional range aid mode", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 1, "group": "EKF2", "longDesc": "WARNING: Range finder measurements are less reliable and can experience unexpected errors. For these reasons, if accurate control of height relative to ground is required, it is recommended to use the MPC_ALT_MODE parameter instead, unless baro errors are severe enough to cause problems with landing and takeoff. If this parameter is enabled then the estimator will make use of the range finder measurements to estimate its height in addition to other height sources (if activated). Range sensor aiding can be enabled (i.e.: always use) or set in \"conditional\" mode. Conditional mode: This enables the range finder to be used during low speed (< EKF2_RNG_A_VMAX) and low altitude (< EKF2_RNG_A_HMAX) operation, eg takeoff and landing, where baro interference from rotor wash is excessive and can corrupt EKF state estimates. It is intended to be used where a vertical takeoff and landing is performed, and horizontal flight does not occur until above EKF2_RNG_A_HMAX.", "name": "EKF2_RNG_CTRL", "shortDesc": "Range sensor height aiding", "type": "Int32", "values": [{"description": "Disable range fusion", "value": 0}, {"description": "Enabled (conditional mode)", "value": 1}, {"description": "Enabled", "value": 2}]}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "max": 300.0, "min": 0.0, "name": "EKF2_RNG_DELAY", "rebootRequired": true, "shortDesc": "Range finder measurement delay relative to IMU measurements", "type": "Float", "units": "ms"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "EKF2", "longDesc": "Limit for fog detection. If the range finder measures a distance greater than this value, the measurement is considered to not be blocked by fog or rain. If there's a jump from larger than RNG_FOG to smaller than EKF2_RNG_FOG, the measurement may gets rejected. 0 - disabled", "max": 20.0, "min": 0.0, "name": "EKF2_RNG_FOG", "shortDesc": "Maximum distance at which the range finder could detect fog (m)", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_RNG_GATE", "shortDesc": "Gate size for range finder fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "default": 1.0, "group": "EKF2", "longDesc": "To be used, the time derivative of the distance sensor measurements projected on the vertical axis needs to be statistically consistent with the estimated vertical velocity of the drone. Decrease this value to make the filter more robust against range finder faulty data (stuck, reflections, ...). Note: tune the range finder noise parameters (EKF2_RNG_NOISE and EKF2_RNG_SFE) before tuning this gate.", "max": 5.0, "min": 0.1, "name": "EKF2_RNG_K_GATE", "shortDesc": "Gate size used for range finder kinematic consistency check", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "EKF2", "min": 0.01, "name": "EKF2_RNG_NOISE", "shortDesc": "Measurement noise for range finder fusion", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "max": 0.75, "min": -0.75, "name": "EKF2_RNG_PITCH", "shortDesc": "Range sensor pitch offset", "type": "Float", "units": "rad"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_RNG_POS_X", "shortDesc": "X position of range finder origin in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_RNG_POS_Y", "shortDesc": "Y position of range finder origin in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "EKF2", "longDesc": "Forward axis with origin relative to vehicle centre of gravity", "name": "EKF2_RNG_POS_Z", "shortDesc": "Z position of range finder origin in body frame", "type": "Float", "units": "m"}, {"category": "Standard", "default": 1.0, "group": "EKF2", "longDesc": "Minimum duration during which the reported range finder signal quality needs to be non-zero in order to be declared valid (s)", "max": 5.0, "min": 0.1, "name": "EKF2_RNG_QLTY_T", "shortDesc": "Minumum range validity period", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0.05, "group": "EKF2", "longDesc": "Specifies the increase in range finder noise with range.", "max": 0.2, "min": 0.0, "name": "EKF2_RNG_SFE", "shortDesc": "Range finder range dependent noise scaler", "type": "Float", "units": "m/m"}, {"category": "Standard", "default": 0.2, "group": "EKF2", "longDesc": "EKF2 instances have to be better than the selected by at least this amount before their relative score can be reduced.", "name": "EKF2_SEL_ERR_RED", "shortDesc": "Selector error reduce threshold", "type": "Float"}, {"category": "Standard", "default": 1.0, "group": "EKF2", "longDesc": "EKF2 selector acceleration error threshold for comparing accelerometers. Acceleration vector differences larger than this will result in accumulated velocity error.", "name": "EKF2_SEL_IMU_ACC", "shortDesc": "Selector acceleration threshold", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "default": 15.0, "group": "EKF2", "longDesc": "EKF2 selector maximum accumulated angular error threshold for comparing gyros. Accumulated angular error larger than this will result in the sensor being declared faulty.", "name": "EKF2_SEL_IMU_ANG", "shortDesc": "Selector angular threshold", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 7.0, "group": "EKF2", "longDesc": "EKF2 selector angular rate error threshold for comparing gyros. Angular rate vector differences larger than this will result in accumulated angular error.", "name": "EKF2_SEL_IMU_RAT", "shortDesc": "Selector angular rate threshold", "type": "Float", "units": "deg/s"}, {"category": "Standard", "default": 2.0, "group": "EKF2", "longDesc": "EKF2 selector maximum accumulated velocity threshold for comparing accelerometers. Accumulated velocity error larger than this will result in the sensor being declared faulty.", "name": "EKF2_SEL_IMU_VEL", "shortDesc": "Selector angular threshold", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 0, "group": "EKF2", "longDesc": "Use for vehicles where the measured body Z magnetic field is subject to strong magnetic interference. For magnetic heading fusion the magnetometer Z measurement will be replaced by a synthetic value calculated using the knowledge of the 3D magnetic field vector at the location of the drone. Therefore, this parameter will only have an effect if the global position of the drone is known. For 3D mag fusion the magnetometer Z measurement will simply be ignored instead of fusing the synthetic value.", "name": "EKF2_SYNT_MAG_Z", "shortDesc": "Enable synthetic magnetometer Z component measurement", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "min": 1.0, "name": "EKF2_TAS_GATE", "shortDesc": "Gate size for TAS fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.25, "group": "EKF2", "longDesc": "Controls how tightly the output track the EKF states", "max": 1.0, "min": 0.1, "name": "EKF2_TAU_POS", "shortDesc": "Output predictor position time constant", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.25, "group": "EKF2", "max": 1.0, "name": "EKF2_TAU_VEL", "shortDesc": "Time constant of the velocity output prediction and smoothing filter", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "EKF2", "min": 0.0, "name": "EKF2_TERR_GRAD", "shortDesc": "Magnitude of terrain gradient", "type": "Float", "units": "m/m"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "EKF2", "min": 0.5, "name": "EKF2_TERR_NOISE", "shortDesc": "Terrain altitude process noise", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 100.0, "group": "EKF2", "max": 299792458.0, "name": "EKF2_VEL_LIM", "shortDesc": "Velocity limit", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "EKF2", "longDesc": "When unaided, the wind estimate uncertainty (1-sigma, in m/s) increases by this amount every second.", "max": 1.0, "min": 0.0, "name": "EKF2_WIND_NSD", "shortDesc": "Process noise spectral density for wind velocity prediction", "type": "Float", "units": "m/s^2/sqrt(Hz)"}, {"category": "Standard", "default": 0, "group": "Events", "longDesc": "Enable/disable event task for RC Loss. When enabled, an alarm tune will be played via buzzer or ESCs, if supported. The alarm will sound after a disarm, if the vehicle was previously armed and only if the vehicle had RC signal at some point. Particularly useful for locating crashed drones without a GPS sensor.", "name": "EV_TSK_RC_LOSS", "rebootRequired": true, "shortDesc": "RC Loss Alarm", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Events", "longDesc": "Enable/disable event task for displaying the vehicle status using arm-mounted LEDs. When enabled and if the vehicle supports it, LEDs will flash indicating various vehicle status changes. Currently PX4 has not implemented any specific status events. -", "name": "EV_TSK_STAT_DIS", "rebootRequired": true, "shortDesc": "Status Display", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 30.0, "group": "FW Attitude Control", "increment": 0.5, "longDesc": "Applies to both directions in all manual modes with attitude stabilization but without altitude control", "max": 90.0, "min": 0.0, "name": "FW_MAN_P_MAX", "shortDesc": "Maximum manual pitch angle", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 45.0, "group": "FW Attitude Control", "increment": 0.5, "longDesc": "Applies to both directions in all manual modes with attitude stabilization", "max": 90.0, "min": 0.0, "name": "FW_MAN_R_MAX", "shortDesc": "Maximum manual roll angle", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 30.0, "group": "FW Attitude Control", "increment": 0.5, "longDesc": "This is the maximally added yaw rate setpoint from the yaw stick in any attitude controlled flight mode. It is added to the yaw rate setpoint generated by the controller for turn coordination.", "min": 0.0, "name": "FW_MAN_YR_MAX", "shortDesc": "Maximum manually added yaw rate", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "FW Attitude Control", "increment": 0.5, "longDesc": "An airframe specific offset of the pitch setpoint in degrees, the value is added to the pitch setpoint and should correspond to the pitch at typical cruise speed of the airframe.", "max": 90.0, "min": -90.0, "name": "FW_PSP_OFF", "shortDesc": "Pitch setpoint offset (pitch at level flight)", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 60.0, "group": "FW Attitude Control", "increment": 0.5, "max": 180.0, "min": 0.0, "name": "FW_P_RMAX_NEG", "shortDesc": "Maximum negative / down pitch rate setpoint", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 60.0, "group": "FW Attitude Control", "increment": 0.5, "max": 180.0, "min": 0.0, "name": "FW_P_RMAX_POS", "shortDesc": "Maximum positive / up pitch rate setpoint", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.4, "group": "FW Attitude Control", "increment": 0.05, "longDesc": "This defines the latency between a pitch step input and the achieved setpoint (inverse to a P gain). Smaller systems may require smaller values.", "max": 1.0, "min": 0.2, "name": "FW_P_TC", "shortDesc": "Attitude pitch time constant", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 70.0, "group": "FW Attitude Control", "increment": 0.5, "max": 180.0, "min": 0.0, "name": "FW_R_RMAX", "shortDesc": "Maximum roll rate setpoint", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.4, "group": "FW Attitude Control", "increment": 0.05, "longDesc": "This defines the latency between a roll step input and the achieved setpoint (inverse to a P gain). Smaller systems may require smaller values.", "max": 1.0, "min": 0.2, "name": "FW_R_TC", "shortDesc": "Attitude Roll Time Constant", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "FW Attitude Control", "increment": 0.05, "max": 10.0, "min": 0.0, "name": "FW_WR_FF", "shortDesc": "Wheel steering rate feed forward", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.1, "group": "FW Attitude Control", "increment": 0.005, "longDesc": "This gain defines how much control response will result out of a steady state error. It trims any constant error.", "max": 10.0, "min": 0.0, "name": "FW_WR_I", "shortDesc": "Wheel steering rate integrator gain", "type": "Float", "units": "%/rad"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.4, "group": "FW Attitude Control", "increment": 0.05, "max": 1.0, "min": 0.0, "name": "FW_WR_IMAX", "shortDesc": "Wheel steering rate integrator limit", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.5, "group": "FW Attitude Control", "increment": 0.005, "longDesc": "This defines how much the wheel steering input will be commanded depending on the current body angular rate error.", "max": 10.0, "min": 0.0, "name": "FW_WR_P", "shortDesc": "Wheel steering rate proportional gain", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "default": 0, "group": "FW Attitude Control", "longDesc": "Only enabled during automatic runway takeoff and landing. In all manual modes the wheel is directly controlled with yaw stick.", "name": "FW_W_EN", "shortDesc": "Enable wheel steering controller", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 30.0, "group": "FW Attitude Control", "increment": 0.5, "longDesc": "This limits the maximum wheel steering rate the controller will output (in degrees per second).", "max": 90.0, "min": 0.0, "name": "FW_W_RMAX", "shortDesc": "Maximum wheel steering rate", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 50.0, "group": "FW Attitude Control", "increment": 0.5, "max": 180.0, "min": 0.0, "name": "FW_Y_RMAX", "shortDesc": "Maximum yaw rate setpoint", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "FW Auto Landing", "increment": 0.01, "longDesc": "Sets a fraction of full flaps during landing. Also applies to flaperons if enabled in the mixer/allocation.", "max": 1.0, "min": 0.0, "name": "FW_FLAPS_LND_SCL", "shortDesc": "Flaps setting during landing", "type": "Float", "units": "norm"}, {"bitmask": [{"description": "Abort if terrain is not found (only applies to mission landings)", "index": 0}, {"description": "Abort if terrain times out (after a first successful measurement)", "index": 1}], "category": "Standard", "default": 3, "group": "FW Auto Landing", "longDesc": "Terrain estimation: bit 0: Abort if terrain is not found bit 1: Abort if terrain times out (after a first successful measurement) The last estimate is always used as ground, whether the last valid measurement or the land waypoint, depending on the selected abort criteria, until an abort condition is entered. If FW_LND_USETER == 0, these bits are ignored. TODO: Extend automatic abort conditions e.g. glide slope tracking error (horizontal and vertical)", "max": 3, "min": 0, "name": "FW_LND_ABORT", "shortDesc": "Bit mask to set the automatic landing abort conditions", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "FW Auto Landing", "increment": 0.1, "longDesc": "The calibrated airspeed setpoint during landing. If set <= 0, landing airspeed = FW_AIRSPD_MIN by default.", "min": -1.0, "name": "FW_LND_AIRSPD", "shortDesc": "Landing airspeed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "FW Auto Landing", "increment": 0.5, "longDesc": "Typically the desired landing slope angle when landing configuration (flaps, airspeed) is enabled. Set this value within the vehicle's performance limits.", "max": 15.0, "min": 1.0, "name": "FW_LND_ANG", "shortDesc": "Maximum landing slope angle", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0, "group": "FW Auto Landing", "longDesc": "Allows to deploy the landing configuration (flaps, landing airspeed, etc.) already in the loiter-down waypoint before the final approach. Otherwise is enabled only in the final approach.", "name": "FW_LND_EARLYCFG", "shortDesc": "Early landing configuration deployment", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 0.5, "group": "FW Auto Landing", "increment": 0.5, "longDesc": "NOTE: max(FW_LND_FLALT, FW_LND_FL_TIME * |z-velocity|) is taken as the flare altitude", "min": 0.0, "name": "FW_LND_FLALT", "shortDesc": "Landing flare altitude (relative to landing altitude)", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 15.0, "group": "FW Auto Landing", "increment": 0.5, "longDesc": "Maximum pitch during landing flare.", "max": 45.0, "min": 0.0, "name": "FW_LND_FL_PMAX", "shortDesc": "Flare, maximum pitch", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 2.5, "group": "FW Auto Landing", "increment": 0.5, "longDesc": "Minimum pitch during landing flare.", "max": 15.0, "min": -5.0, "name": "FW_LND_FL_PMIN", "shortDesc": "Flare, minimum pitch", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.25, "group": "FW Auto Landing", "increment": 0.1, "longDesc": "TECS will attempt to control the aircraft to this sink rate via pitch angle (throttle killed during flare)", "max": 2.0, "min": 0.0, "name": "FW_LND_FL_SINK", "shortDesc": "Landing flare sink rate", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "FW Auto Landing", "increment": 0.1, "longDesc": "Multiplied by the descent rate to calculate a dynamic altitude at which to trigger the flare. NOTE: max(FW_LND_FLALT, FW_LND_FL_TIME * descent rate) is taken as the flare altitude", "max": 5.0, "min": 0.1, "name": "FW_LND_FL_TIME", "shortDesc": "Landing flare time", "type": "Float", "units": "s"}, {"category": "Standard", "default": 2, "group": "FW Auto Landing", "longDesc": "Approach angle nudging: shifts the touchdown point laterally while keeping the approach entrance point constant Approach path nudging: shifts the touchdown point laterally along with the entire approach path This is useful for manually adjusting the landing point in real time when map or GNSS errors cause an offset from the desired landing vector. Nudging is done with yaw stick, constrained to FW_LND_TD_OFF (in meters) and the direction is relative to the vehicle heading (stick deflection to the right = land point moves to the right as seen by the vehicle).", "max": 2, "min": 0, "name": "FW_LND_NUDGE", "shortDesc": "Landing touchdown nudging option", "type": "Int32", "values": [{"description": "Disable nudging", "value": 0}, {"description": "Nudge approach angle", "value": 1}, {"description": "Nudge approach path", "value": 2}]}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "FW Auto Landing", "increment": 1.0, "max": 10.0, "min": 0.0, "name": "FW_LND_TD_OFF", "shortDesc": "Maximum lateral position offset for the touchdown point", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "FW Auto Landing", "increment": 0.1, "longDesc": "This is the time after the start of flaring that we expect the vehicle to touch the runway. At this time, a 0.5s clamp down ramp will engage, constraining the pitch setpoint to RWTO_PSP. If enabled, ensure that RWTO_PSP is configured appropriately for full gear contact on ground roll. Set to -1.0 to disable touchdown clamping. E.g. it may not be desirable to clamp on belly landings. The touchdown time will be constrained to be greater than or equal to the flare time (FW_LND_FL_TIME).", "max": 5.0, "min": -1.0, "name": "FW_LND_TD_TIME", "shortDesc": "Landing touchdown time (since flare start)", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "FW Auto Landing", "increment": 0.1, "longDesc": "The TECS altitude time constant (FW_T_ALT_TC) is multiplied by this value.", "max": 1.0, "min": 0.2, "name": "FW_LND_THRTC_SC", "shortDesc": "Altitude time constant factor for landing and low-height flight", "type": "Float", "units": ""}, {"category": "Standard", "default": 1, "group": "FW Auto Landing", "longDesc": "This is critical for detecting when to flare, and should be enabled if possible. If enabled and no measurement is found within a given timeout, the landing waypoint altitude will be used OR the landing will be aborted, depending on the criteria set in FW_LND_ABORT. If disabled, FW_LND_ABORT terrain based criteria are ignored.", "max": 2, "min": 0, "name": "FW_LND_USETER", "shortDesc": "Use terrain estimation during landing", "type": "Int32", "values": [{"description": "Disable the terrain estimate", "value": 0}, {"description": "Use the terrain estimate to trigger the flare (only)", "value": 1}, {"description": "Calculate landing glide slope relative to the terrain estimate", "value": 2}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Auto Landing", "increment": 0.01, "max": 1.0, "min": 0.0, "name": "FW_SPOILERS_LND", "shortDesc": "Spoiler landing setting", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Auto Takeoff", "increment": 0.01, "longDesc": "Sets a fraction of full flaps during take-off. Also applies to flaperons if enabled in the mixer/allocation.", "max": 1.0, "min": 0.0, "name": "FW_FLAPS_TO_SCL", "shortDesc": "Flaps setting during take-off", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.05, "group": "FW Auto Takeoff", "increment": 0.05, "longDesc": "Launch is detected when acceleration in body forward direction is above FW_LAUN_AC_THLD for FW_LAUN_AC_T seconds.", "max": 5.0, "min": 0.0, "name": "FW_LAUN_AC_T", "shortDesc": "Trigger time", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 30.0, "group": "FW Auto Takeoff", "increment": 0.5, "longDesc": "Launch is detected when acceleration in body forward direction is above FW_LAUN_AC_THLD for FW_LAUN_AC_T seconds.", "min": 0.0, "name": "FW_LAUN_AC_THLD", "shortDesc": "Trigger acceleration threshold", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "default": 0, "group": "FW Auto Takeoff", "longDesc": "Enables automatic launch detection based on measured acceleration. Use for hand- or catapult-launched vehicles. Not compatible with runway takeoff.", "name": "FW_LAUN_DETCN_ON", "shortDesc": "Fixed-wing launch detection", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "FW Auto Takeoff", "increment": 0.5, "longDesc": "Start the motor(s) this amount of seconds after launch is detected.", "max": 10.0, "min": 0.0, "name": "FW_LAUN_MOT_DEL", "shortDesc": "Motor delay", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "FW Auto Takeoff", "increment": 0.1, "longDesc": "The calibrated airspeed setpoint during the takeoff climbout. If set <= 0, FW_AIRSPD_MIN will be set by default.", "min": -1.0, "name": "FW_TKO_AIRSPD", "shortDesc": "Takeoff Airspeed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "FW Auto Takeoff", "increment": 0.5, "max": 30.0, "min": -5.0, "name": "FW_TKO_PITCH_MIN", "shortDesc": "Minimum pitch during takeoff", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 30, "group": "FW General", "longDesc": "The time the system should do open loop loiter and wait for GPS recovery before it starts descending. Set to 0 to disable. Roll angle is set to FW_GPSF_R. Does only apply for fixed-wing vehicles or VTOLs with NAV_FORCE_VT set to 0.", "max": 3600, "min": 0, "name": "FW_GPSF_LT", "shortDesc": "GPS failure loiter time", "type": "Int32", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 15.0, "group": "FW General", "increment": 0.5, "longDesc": "Roll angle in GPS failure loiter mode.", "max": 30.0, "min": 0.0, "name": "FW_GPSF_R", "shortDesc": "GPS failure fixed roll angle", "type": "Float", "units": "deg"}, {"bitmask": [{"description": "Alternative stick configuration (height rate on throttle stick, airspeed on pitch stick)", "index": 0}, {"description": "Enable airspeed setpoint via sticks in altitude and position flight mode", "index": 1}], "category": "Standard", "default": 2, "group": "FW General", "longDesc": "Applies in manual Position and Altitude flight modes.", "max": 3, "min": 0, "name": "FW_POS_STK_CONF", "shortDesc": "Custom stick configuration", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 30.0, "group": "FW General", "increment": 0.5, "longDesc": "Applies in any altitude controlled flight mode.", "max": 60.0, "min": 0.0, "name": "FW_P_LIM_MAX", "shortDesc": "Maximum pitch angle setpoint", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": -30.0, "group": "FW General", "increment": 0.5, "longDesc": "Applies in any altitude controlled flight mode.", "max": 0.0, "min": -60.0, "name": "FW_P_LIM_MIN", "shortDesc": "Minimum pitch angle setpoint", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 50.0, "group": "FW General", "increment": 0.5, "longDesc": "Applies in any altitude controlled flight mode.", "max": 65.0, "min": 35.0, "name": "FW_R_LIM", "shortDesc": "Maximum roll angle setpoint", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW General", "increment": 0.01, "longDesc": "This is the minimum throttle while on the ground (\"landed\") in auto modes.", "max": 0.4, "min": 0.0, "name": "FW_THR_IDLE", "shortDesc": "Idle throttle", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "FW General", "increment": 0.01, "longDesc": "Applies in any altitude controlled flight mode. Should be set accordingly to achieve FW_T_CLMB_MAX.", "max": 1.0, "min": 0.0, "name": "FW_THR_MAX", "shortDesc": "Throttle limit max", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW General", "increment": 0.01, "longDesc": "Applies in any altitude controlled flight mode. Usually set to 0 but can be increased to prevent the motor from stopping when descending, which can increase achievable descent rates.", "max": 1.0, "min": 0.0, "name": "FW_THR_MIN", "shortDesc": "Throttle limit min", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 3.0, "group": "FW General", "increment": 0.01, "longDesc": "In auto modes: default climb rate output by controller to achieve altitude setpoints. In manual modes: maximum climb rate setpoint.", "max": 15.0, "min": 0.5, "name": "FW_T_CLMB_R_SP", "shortDesc": "Default target climbrate", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 2.0, "group": "FW General", "increment": 0.01, "longDesc": "In auto modes: default sink rate output by controller to achieve altitude setpoints. In manual modes: maximum sink rate setpoint.", "max": 15.0, "min": 0.5, "name": "FW_T_SINK_R_SP", "shortDesc": "Default target sinkrate", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "FW General", "increment": 1.0, "longDesc": "Adjusts the amount of weighting that the pitch control applies to speed vs height errors. 0 -> control height only 2 -> control speed only (gliders)", "max": 2.0, "min": 0.0, "name": "FW_T_SPDWEIGHT", "shortDesc": "Speed <--> Altitude weight", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.5, "group": "FW General", "increment": 1.0, "longDesc": "This is used to constrain a minimum altitude below which we keep wings level to avoid wing tip strike. It's safer to give a slight margin here (> 0m)", "min": 0.0, "name": "FW_WING_HEIGHT", "shortDesc": "Height (AGL) of the wings when the aircraft is on the ground", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "FW General", "increment": 0.1, "longDesc": "This is used for limiting the roll setpoint near the ground. (if multiple wings, take the longest span)", "min": 0.1, "name": "FW_WING_SPAN", "shortDesc": "The aircraft's wing span (length from tip to tip)", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 0, "default": 90.0, "group": "FW Lateral Control", "increment": 1.0, "longDesc": "Maximum change in roll angle setpoint per second. Applied in all Auto modes, plus manual Position & Altitude modes.", "min": 0.0, "name": "FW_PN_R_SLEW_MAX", "shortDesc": "Path navigation roll slew rate limit", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "FW Longitudinal Control", "increment": 0.5, "longDesc": "The controller will increase the commanded airspeed to maintain this minimum groundspeed to the next waypoint.", "max": 40.0, "min": 0.0, "name": "FW_GND_SPD_MIN", "shortDesc": "Minimum groundspeed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Longitudinal Control", "increment": 0.01, "longDesc": "Maximum slew rate for the commanded throttle", "max": 1.0, "min": 0.0, "name": "FW_THR_SLEW_MAX", "shortDesc": "Throttle max slew rate", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 5.0, "group": "FW Longitudinal Control", "increment": 0.5, "min": 2.0, "name": "FW_T_ALT_TC", "shortDesc": "Altitude error time constant", "type": "Float"}, {"category": "Standard", "decimalPlaces": 0, "default": -1.0, "group": "FW Longitudinal Control", "longDesc": "Minimum altitude error needed to descend with max airspeed and minimal throttle. A negative value disables fast descend.", "min": -1.0, "name": "FW_T_F_ALT_ERR", "shortDesc": "Fast descend: minimum altitude error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "FW Longitudinal Control", "increment": 0.05, "max": 1.0, "min": 0.0, "name": "FW_T_HRATE_FF", "shortDesc": "Height rate feed forward", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "FW Longitudinal Control", "increment": 0.05, "longDesc": "Increase it to trim out speed and height offsets faster, with the downside of possible overshoots and oscillations.", "max": 2.0, "min": 0.0, "name": "FW_T_I_GAIN_PIT", "shortDesc": "Integrator gain pitch", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "FW Longitudinal Control", "increment": 0.1, "max": 2.0, "min": 0.0, "name": "FW_T_PTCH_DAMP", "shortDesc": "Pitch damping gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 15.0, "group": "FW Longitudinal Control", "increment": 0.5, "longDesc": "Is used to compensate for the additional drag created by turning. Increase this gain if the aircraft initially loses energy in turns and reduce if the aircraft initially gains energy in turns.", "max": 20.0, "min": 0.0, "name": "FW_T_RLL2THR", "shortDesc": "Roll -> Throttle feedforward", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "FW Longitudinal Control", "increment": 0.01, "max": 3.0, "min": 0.5, "name": "FW_T_SEB_R_FF", "shortDesc": "Specific total energy balance rate feedforward gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "FW Longitudinal Control", "increment": 0.5, "max": 15.0, "min": 1.0, "name": "FW_T_SINK_MAX", "shortDesc": "Maximum descent rate", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "FW Longitudinal Control", "increment": 0.1, "longDesc": "For the airspeed filter in TECS.", "max": 10.0, "min": 0.01, "name": "FW_T_SPD_DEV_STD", "shortDesc": "Airspeed rate measurement standard deviation", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "FW Longitudinal Control", "increment": 0.1, "longDesc": "This is defining the noise in the airspeed rate for the constant airspeed rate model of the TECS airspeed filter.", "max": 10.0, "min": 0.01, "name": "FW_T_SPD_PRC_STD", "shortDesc": "Process noise standard deviation for the airspeed rate", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.07, "group": "FW Longitudinal Control", "increment": 0.1, "longDesc": "For the airspeed filter in TECS.", "max": 10.0, "min": 0.01, "name": "FW_T_SPD_STD", "shortDesc": "Airspeed measurement standard deviation", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.4, "group": "FW Longitudinal Control", "increment": 0.01, "longDesc": "This filter is applied to the specific total energy rate used for throttle damping.", "max": 2.0, "min": 0.0, "name": "FW_T_STE_R_TC", "shortDesc": "Specific total energy rate first order filter time constant", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 5.0, "group": "FW Longitudinal Control", "increment": 0.5, "min": 2.0, "name": "FW_T_TAS_TC", "shortDesc": "True airspeed error time constant", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "FW Longitudinal Control", "increment": 0.01, "longDesc": "This is the damping gain for the throttle demand loop.", "max": 1.0, "min": 0.0, "name": "FW_T_THR_DAMPING", "shortDesc": "Throttle damping factor", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.02, "group": "FW Longitudinal Control", "increment": 0.005, "longDesc": "Increase it to trim out speed and height offsets faster, with the downside of possible overshoots and oscillations.", "max": 1.0, "min": 0.0, "name": "FW_T_THR_INTEG", "shortDesc": "Integrator gain throttle", "type": "Float"}, {"category": "Standard", "decimalPlaces": 0, "default": -1.0, "group": "FW Longitudinal Control", "increment": 1.0, "longDesc": "Height above ground threshold below which tighter altitude tracking gets enabled (see FW_LND_THRTC_SC). Below this height, TECS smoothly (1 sec / sec) transitions the altitude tracking time constant from FW_T_ALT_TC to FW_LND_THRTC_SC*FW_T_ALT_TC. -1 to disable.", "min": -1.0, "name": "FW_T_THR_LOW_HGT", "shortDesc": "Low-height threshold for tighter altitude tracking", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 7.0, "group": "FW Longitudinal Control", "increment": 0.5, "longDesc": "This is the maximum vertical acceleration either up or down that the controller will use to correct speed or height errors.", "max": 10.0, "min": 1.0, "name": "FW_T_VERT_ACC", "shortDesc": "Maximum vertical acceleration", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Longitudinal Control", "increment": 0.01, "longDesc": "Multiplying this factor with the current absolute wind estimate gives the airspeed offset added to the minimum airspeed setpoint limit. This helps to make the system more robust against disturbances (turbulence) in high wind.", "min": 0.0, "name": "FW_WIND_ARSP_SC", "shortDesc": "Wind-based airspeed scaling factor", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.7, "group": "FW NPFG Control", "increment": 0.01, "longDesc": "Damping ratio of NPFG control law.", "max": 1.0, "min": 0.1, "name": "NPFG_DAMPING", "shortDesc": "NPFG damping ratio", "type": "Float"}, {"category": "Standard", "default": 1, "group": "FW NPFG Control", "longDesc": "Avoids limit cycling from a too aggressively tuned period/damping combination. If false, also disables upper bound NPFG_PERIOD_UB.", "name": "NPFG_LB_PERIOD", "shortDesc": "Enable automatic lower bound on the NPFG period", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "FW NPFG Control", "increment": 0.1, "longDesc": "Period of NPFG control law.", "max": 100.0, "min": 1.0, "name": "NPFG_PERIOD", "shortDesc": "NPFG period", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.5, "group": "FW NPFG Control", "increment": 0.1, "longDesc": "Multiplied by period for conservative minimum period bounding (when period lower bounding is enabled). 1.0 bounds at marginal stability.", "max": 10.0, "min": 1.0, "name": "NPFG_PERIOD_SF", "shortDesc": "Period safety factor", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "FW NPFG Control", "increment": 0.05, "longDesc": "Time constant of roll controller command / response, modeled as first order delay. Used to determine lower period bound. Setting zero disables automatic period bounding.", "max": 2.0, "min": 0.0, "name": "NPFG_ROLL_TC", "shortDesc": "Roll time constant", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.32, "group": "FW NPFG Control", "increment": 0.01, "longDesc": "Multiplied by the track error boundary to determine when the aircraft switches to the next waypoint and/or path segment. Should be less than 1.", "max": 1.0, "min": 0.1, "name": "NPFG_SW_DST_MLT", "shortDesc": "NPFG switch distance multiplier", "type": "Float"}, {"category": "Standard", "default": 1, "group": "FW NPFG Control", "longDesc": "Adapts period to maintain track keeping in variable winds and path curvature.", "name": "NPFG_UB_PERIOD", "shortDesc": "Enable automatic upper bound on the NPFG period", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "FW Performance", "increment": 0.01, "longDesc": "Factor applied to the minimum and stall airspeed when flaps are fully deployed.", "max": 1.0, "min": 0.5, "name": "FW_AIRSPD_FLP_SC", "shortDesc": "Airspeed scale with full flaps", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 20.0, "group": "FW Performance", "increment": 0.5, "longDesc": "The maximal airspeed (calibrated airspeed) the user is able to command.", "min": 0.5, "name": "FW_AIRSPD_MAX", "shortDesc": "Maximum Airspeed (CAS)", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "FW Performance", "increment": 0.5, "longDesc": "The minimal airspeed (calibrated airspeed) the user is able to command. Further, if the airspeed falls below this value, the TECS controller will try to increase airspeed more aggressively. Has to be set according to the vehicle's stall speed (which should be set in FW_AIRSPD_STALL), with some margin between the stall speed and minimum airspeed. This value corresponds to the desired minimum speed with the default load factor (level flight, default weight), and is automatically adpated to the current load factor (calculated from roll setpoint and WEIGHT_GROSS/WEIGHT_BASE).", "min": 0.5, "name": "FW_AIRSPD_MIN", "shortDesc": "Minimum Airspeed (CAS)", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 7.0, "group": "FW Performance", "increment": 0.5, "longDesc": "The stall airspeed (calibrated airspeed) of the vehicle. It is used for airspeed sensor failure detection and for the control surface scaling airspeed limits.", "min": 0.5, "name": "FW_AIRSPD_STALL", "shortDesc": "Stall Airspeed (CAS)", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 15.0, "group": "FW Performance", "increment": 0.5, "longDesc": "The trim CAS (calibrated airspeed) of the vehicle. If an airspeed controller is active, this is the default airspeed setpoint that the controller will try to achieve. This value corresponds to the trim airspeed with the default load factor (level flight, default weight).", "min": 0.5, "name": "FW_AIRSPD_TRIM", "shortDesc": "Trim (Cruise) Airspeed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 0, "default": -1.0, "group": "FW Performance", "increment": 1.0, "longDesc": "Altitude in standard atmosphere at which the vehicle in normal configuration (WEIGHT_BASE) is still able to achieve a maximum climb rate of 0.5m/s at maximum throttle (FW_THR_MAX). Used to compensate for air density in FW_T_CLMB_MAX. Set negative to disable.", "min": -1.0, "name": "FW_SERVICE_CEIL", "shortDesc": "Service ceiling", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Performance", "increment": 0.01, "longDesc": "Required throttle (at sea level, standard atmosphere) for level flight at maximum airspeed FW_AIRSPD_MAX Set to 0 to disable mapping of airspeed to trim throttle.", "max": 1.0, "min": 0.0, "name": "FW_THR_ASPD_MAX", "shortDesc": "Throttle at max airspeed", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Performance", "increment": 0.01, "longDesc": "Required throttle (at sea level, standard atmosphere) for level flight at minimum airspeed FW_AIRSPD_MIN Set to 0 to disable mapping of airspeed to trim throttle below FW_AIRSPD_TRIM.", "max": 1.0, "min": 0.0, "name": "FW_THR_ASPD_MIN", "shortDesc": "Throttle at min airspeed", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.6, "group": "FW Performance", "increment": 0.01, "longDesc": "Required throttle (at sea level, standard atmosphere) for level flight at FW_AIRSPD_TRIM", "max": 1.0, "min": 0.0, "name": "FW_THR_TRIM", "shortDesc": "Trim throttle", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "FW Performance", "increment": 0.5, "longDesc": "This is the maximum calibrated climb rate that the aircraft can achieve with the throttle set to FW_THR_MAX and the airspeed set to the trim value. For electric aircraft make sure this number can be achieved towards the end of flight when the battery voltage has reduced.", "max": 15.0, "min": 1.0, "name": "FW_T_CLMB_MAX", "shortDesc": "Maximum climb rate", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 2.0, "group": "FW Performance", "increment": 0.5, "longDesc": "This is the minimum calibrated sink rate of the aircraft with the throttle set to THR_MIN and flown at the same airspeed as used to measure FW_T_CLMB_MAX.", "max": 5.0, "min": 1.0, "name": "FW_T_SINK_MIN", "shortDesc": "Minimum descent rate", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "FW Performance", "increment": 0.5, "longDesc": "This is the weight of the vehicle at which it's performance limits were derived. A zero or negative value disables trim throttle and minimum airspeed compensation based on weight.", "name": "WEIGHT_BASE", "shortDesc": "Vehicle base weight", "type": "Float", "units": "kg"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "FW Performance", "increment": 0.1, "longDesc": "This is the actual weight of the vehicle at any time. This value will differ from WEIGHT_BASE in case weight was added or removed from the base weight. Examples are the addition of payloads or larger batteries. A zero or negative value disables trim throttle and minimum airspeed compensation based on weight.", "name": "WEIGHT_GROSS", "shortDesc": "Vehicle gross weight", "type": "Float", "units": "kg"}, {"category": "Standard", "default": 90.0, "group": "FW Rate Control", "max": 720.0, "min": 10.0, "name": "FW_ACRO_X_MAX", "shortDesc": "Acro body roll max rate setpoint", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0, "group": "FW Rate Control", "longDesc": "If this parameter is set to 1, the yaw rate controller is enabled in Fixed-wing Acro mode. Otherwise the pilot commands directly the yaw actuator. It is disabled by default because an active yaw rate controller will fight against the natural turn coordination of the plane.", "name": "FW_ACRO_YAW_EN", "shortDesc": "Enable yaw rate controller in Acro", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 90.0, "group": "FW Rate Control", "max": 720.0, "min": 10.0, "name": "FW_ACRO_Y_MAX", "shortDesc": "Acro body pitch max rate setpoint", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 45.0, "group": "FW Rate Control", "max": 720.0, "min": 10.0, "name": "FW_ACRO_Z_MAX", "shortDesc": "Acro body yaw max rate setpoint", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 1, "group": "FW Rate Control", "longDesc": "This enables a logic that automatically adjusts the output of the rate controller to take into account the real torque produced by an aerodynamic control surface given the current deviation from the trim airspeed (FW_AIRSPD_TRIM). Enable when using aerodynamic control surfaces (e.g.: plane) Disable when using rotor wings (e.g.: autogyro)", "name": "FW_ARSP_SCALE_EN", "shortDesc": "Enable airspeed scaling", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "FW Rate Control", "longDesc": "This compensates for voltage drop of the battery over time by attempting to normalize performance across the operating range of the battery.", "name": "FW_BAT_SCALE_EN", "shortDesc": "Enable throttle scale by battery level", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "This increment is added to TRIM_PITCH when airspeed is FW_AIRSPD_MAX.", "max": 0.5, "min": -0.5, "name": "FW_DTRIM_P_VMAX", "shortDesc": "Pitch trim increment at maximum airspeed", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "This increment is added to TRIM_PITCH when airspeed is FW_AIRSPD_MIN.", "max": 0.5, "min": -0.5, "name": "FW_DTRIM_P_VMIN", "shortDesc": "Pitch trim increment at minimum airspeed", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "This increment is added to TRIM_ROLL when airspeed is FW_AIRSPD_MAX.", "max": 0.5, "min": -0.5, "name": "FW_DTRIM_R_VMAX", "shortDesc": "Roll trim increment at maximum airspeed", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "This increment is added to TRIM_ROLL when airspeed is FW_AIRSPD_MIN.", "max": 0.5, "min": -0.5, "name": "FW_DTRIM_R_VMIN", "shortDesc": "Roll trim increment at minimum airspeed", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "This increment is added to TRIM_YAW when airspeed is FW_AIRSPD_MAX.", "max": 0.5, "min": -0.5, "name": "FW_DTRIM_Y_VMAX", "shortDesc": "Yaw trim increment at maximum airspeed", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "This increment is added to TRIM_YAW when airspeed is FW_AIRSPD_MIN.", "max": 0.5, "min": -0.5, "name": "FW_DTRIM_Y_VMIN", "shortDesc": "Yaw trim increment at minimum airspeed", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "Scale factor applied to the desired pitch actuator command in full manual mode. This parameter allows to adjust the throws of the control surfaces.", "min": 0.0, "name": "FW_MAN_P_SC", "shortDesc": "Manual pitch scale", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "Scale factor applied to the desired roll actuator command in full manual mode. This parameter allows to adjust the throws of the control surfaces.", "max": 1.0, "min": 0.0, "name": "FW_MAN_R_SC", "shortDesc": "Manual roll scale", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "Scale factor applied to the desired yaw actuator command in full manual mode. This parameter allows to adjust the throws of the control surfaces.", "min": 0.0, "name": "FW_MAN_Y_SC", "shortDesc": "Manual yaw scale", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "FW Rate Control", "increment": 0.005, "longDesc": "Pitch rate differential gain.", "max": 10.0, "min": 0.0, "name": "FW_PR_D", "shortDesc": "Pitch rate derivative gain", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "FW Rate Control", "increment": 0.05, "longDesc": "Direct feed forward from rate setpoint to control surface output", "max": 10.0, "min": 0.0, "name": "FW_PR_FF", "shortDesc": "Pitch rate feed forward", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.1, "group": "FW Rate Control", "increment": 0.005, "max": 10.0, "min": 0.0, "name": "FW_PR_I", "shortDesc": "Pitch rate integrator gain", "type": "Float", "units": "%/rad"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.4, "group": "FW Rate Control", "increment": 0.05, "max": 1.0, "min": 0.0, "name": "FW_PR_IMAX", "shortDesc": "Pitch rate integrator limit", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.08, "group": "FW Rate Control", "increment": 0.005, "max": 10.0, "min": 0.0, "name": "FW_PR_P", "shortDesc": "Pitch rate proportional gain", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "FW Rate Control", "increment": 0.01, "longDesc": "This gain can be used to counteract the \"adverse yaw\" effect for fixed wings. When the plane enters a roll it will tend to yaw the nose out of the turn. This gain enables the use of a yaw actuator to counteract this effect.", "min": 0.0, "name": "FW_RLL_TO_YAW_FF", "shortDesc": "Roll control to yaw control feedforward gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "FW Rate Control", "increment": 0.005, "max": 10.0, "min": 0.0, "name": "FW_RR_D", "shortDesc": "Roll rate derivative gain", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "FW Rate Control", "increment": 0.05, "longDesc": "Direct feed forward from rate setpoint to control surface output.", "max": 10.0, "min": 0.0, "name": "FW_RR_FF", "shortDesc": "Roll rate feed forward", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "FW Rate Control", "increment": 0.01, "max": 10.0, "min": 0.0, "name": "FW_RR_I", "shortDesc": "Roll rate integrator gain", "type": "Float", "units": "%/rad"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "FW Rate Control", "increment": 0.05, "max": 1.0, "min": 0.0, "name": "FW_RR_IMAX", "shortDesc": "Roll integrator limit", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "FW Rate Control", "increment": 0.005, "max": 10.0, "min": 0.0, "name": "FW_RR_P", "shortDesc": "Roll rate proportional gain", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "default": 0, "group": "FW Rate Control", "longDesc": "Chose source for manual setting of spoilers in manual flight modes.", "name": "FW_SPOILERS_MAN", "shortDesc": "Spoiler input in manual flight", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Flaps channel", "value": 1}, {"description": "Aux1", "value": 2}]}, {"category": "Standard", "default": 1, "group": "FW Rate Control", "longDesc": "If set to 1, the airspeed measurement data, if valid, is used in the following controllers: - Rate controller: output scaling - Attitude controller: coordinated turn controller - Position controller: airspeed setpoint tracking, takeoff logic - VTOL: transition logic", "name": "FW_USE_AIRSPD", "shortDesc": "Use airspeed for control", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "FW Rate Control", "increment": 0.005, "max": 10.0, "min": 0.0, "name": "FW_YR_D", "shortDesc": "Yaw rate derivative gain", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "FW Rate Control", "increment": 0.05, "longDesc": "Direct feed forward from rate setpoint to control surface output", "max": 10.0, "min": 0.0, "name": "FW_YR_FF", "shortDesc": "Yaw rate feed forward", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.1, "group": "FW Rate Control", "increment": 0.5, "max": 10.0, "min": 0.0, "name": "FW_YR_I", "shortDesc": "Yaw rate integrator gain", "type": "Float", "units": "%/rad"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "FW Rate Control", "increment": 0.05, "max": 1.0, "min": 0.0, "name": "FW_YR_IMAX", "shortDesc": "Yaw rate integrator limit", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "FW Rate Control", "increment": 0.005, "max": 10.0, "min": 0.0, "name": "FW_YR_P", "shortDesc": "Yaw rate proportional gain", "type": "Float", "units": "%/rad/s"}, {"category": "Standard", "default": 1, "group": "Failure Detector", "longDesc": "If enabled, failure detector will verify that for motors, a minimum amount of ESC current per throttle level is being consumed. Otherwise this indicates an motor failure.", "name": "FD_ACT_EN", "rebootRequired": true, "shortDesc": "Enable Actuator Failure check", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 2.0, "group": "Failure Detector", "increment": 1.0, "longDesc": "Motor failure triggers only below this current value", "max": 50.0, "min": 0.0, "name": "FD_ACT_MOT_C2T", "shortDesc": "Motor Failure Current/Throttle Threshold", "type": "Float", "units": "A/%"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "Failure Detector", "increment": 0.01, "longDesc": "Motor failure triggers only above this throttle value.", "max": 1.0, "min": 0.0, "name": "FD_ACT_MOT_THR", "shortDesc": "Motor Failure Throttle Threshold", "type": "Float", "units": "norm"}, {"category": "Standard", "default": 100, "group": "Failure Detector", "increment": 100, "longDesc": "Motor failure triggers only if the throttle threshold and the current to throttle threshold are violated for this time.", "max": 10000, "min": 10, "name": "FD_ACT_MOT_TOUT", "shortDesc": "Motor Failure Time Threshold", "type": "Int32", "units": "ms"}, {"category": "Standard", "default": 1, "group": "Failure Detector", "longDesc": "If enabled, failure detector will verify that all the ESCs have successfully armed when the vehicle has transitioned to the armed state. Timeout for receiving an acknowledgement from the ESCs is 0.3s, if no feedback is received the failure detector will auto disarm the vehicle.", "name": "FD_ESCS_EN", "shortDesc": "Enable checks on ESCs that report their arming state", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Failure Detector", "longDesc": "Enabled on either AUX5 or MAIN5 depending on board. External ATS is required by ASTM F3322-18.", "name": "FD_EXT_ATS_EN", "rebootRequired": true, "shortDesc": "Enable PWM input on for engaging failsafe from an external automatic trigger system (ATS)", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 1900, "group": "Failure Detector", "longDesc": "External ATS is required by ASTM F3322-18.", "name": "FD_EXT_ATS_TRIG", "shortDesc": "The PWM threshold from external automatic trigger system for engaging failsafe", "type": "Int32", "units": "us"}, {"category": "Standard", "default": 60, "group": "Failure Detector", "longDesc": "Maximum pitch angle before FailureDetector triggers the attitude_failure flag. The flag triggers flight termination (if @CBRK_FLIGHTTERM = 0), which sets outputs to their failsafe values. On takeoff the flag triggers lockdown (irrespective of @CBRK_FLIGHTTERM), which disarms motors but does not set outputs to failsafe values. Setting this parameter to 0 disables the check", "max": 180, "min": 0, "name": "FD_FAIL_P", "shortDesc": "FailureDetector Max Pitch", "type": "Int32", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "Failure Detector", "longDesc": "Seconds (decimal) that pitch has to exceed FD_FAIL_P before being considered as a failure.", "max": 5.0, "min": 0.02, "name": "FD_FAIL_P_TTRI", "shortDesc": "Pitch failure trigger time", "type": "Float", "units": "s"}, {"category": "Standard", "default": 60, "group": "Failure Detector", "longDesc": "Maximum roll angle before FailureDetector triggers the attitude_failure flag. The flag triggers flight termination (if @CBRK_FLIGHTTERM = 0), which sets outputs to their failsafe values. On takeoff the flag triggers lockdown (irrespective of @CBRK_FLIGHTTERM), which disarms motors but does not set outputs to failsafe values. Setting this parameter to 0 disables the check", "max": 180, "min": 0, "name": "FD_FAIL_R", "shortDesc": "FailureDetector Max Roll", "type": "Int32", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "Failure Detector", "longDesc": "Seconds (decimal) that roll has to exceed FD_FAIL_R before being considered as a failure.", "max": 5.0, "min": 0.02, "name": "FD_FAIL_R_TTRI", "shortDesc": "Roll failure trigger time", "type": "Float", "units": "s"}, {"category": "Standard", "default": 30, "group": "Failure Detector", "increment": 1, "longDesc": "Value at which the imbalanced propeller metric (based on horizontal and vertical acceleration variance) triggers a failure Setting this value to 0 disables the feature.", "max": 1000, "min": 0, "name": "FD_IMB_PROP_THR", "shortDesc": "Imbalanced propeller check threshold", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 1000.0, "group": "Flight Task Orbit", "increment": 0.5, "max": 10000.0, "min": 1.0, "name": "MC_ORBIT_RAD_MAX", "shortDesc": "Maximum radius of orbit", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Flight Task Orbit", "name": "MC_ORBIT_YAW_MOD", "shortDesc": "Yaw behaviour during orbit flight", "type": "Int32", "values": [{"description": "Front to Circle Center", "value": 0}, {"description": "Hold Initial Heading", "value": 1}, {"description": "Uncontrolled", "value": 2}, {"description": "Hold Front Tangent to Circle", "value": 3}, {"description": "RC Controlled", "value": 4}]}, {"category": "Standard", "default": 0, "group": "Follow target", "longDesc": "Maintain altitude or track target's altitude. When maintaining the altitude, the drone can crash into terrain when the target moves uphill. When tracking the target's altitude, the follow altitude FLW_TGT_HT should be high enough to prevent terrain collisions due to GPS inaccuracies of the target.", "name": "FLW_TGT_ALT_M", "shortDesc": "Altitude control mode", "type": "Int32", "values": [{"description": "2D Tracking: Maintain constant altitude relative to home and track XY position only", "value": 0}, {"description": "2D + Terrain: Maintain constant altitude relative to terrain below and track XY position", "value": 1}, {"description": "3D Tracking: Track target's altitude (be aware that GPS altitude bias usually makes this useless)", "value": 2}]}, {"category": "Standard", "default": 8.0, "group": "Follow target", "longDesc": "The distance in meters to follow the target at", "min": 1.0, "name": "FLW_TGT_DST", "shortDesc": "Distance to follow target from", "type": "Float", "units": "m"}, {"category": "Standard", "default": 180.0, "group": "Follow target", "longDesc": "Angle to follow the target from. 0.0 Equals straight in front of the target's course (direction of motion) and the angle increases in clockwise direction, meaning Right-side would be 90.0 degrees while Left-side is -90.0 degrees Note: When the user force sets the angle out of the min/max range, it will be wrapped (e.g. 480 -> 120) in the range to gracefully handle the out of range.", "max": 180.0, "min": -180.0, "name": "FLW_TGT_FA", "shortDesc": "Follow Angle setting in degrees", "type": "Float"}, {"category": "Standard", "default": 8.0, "group": "Follow target", "longDesc": "Following height above the target", "min": 8.0, "name": "FLW_TGT_HT", "shortDesc": "Follow target height", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Follow target", "longDesc": "This is the maximum tangential velocity the drone will circle around the target whenever an orbit angle setpoint changes. Higher value means more aggressive follow behavior.", "max": 20.0, "min": 0.0, "name": "FLW_TGT_MAX_VEL", "shortDesc": "Maximum tangential velocity setting for generating the follow orbit trajectory", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Follow target", "longDesc": "lower values increase the responsiveness to changing position, but also ignore less noise", "max": 1.0, "min": 0.0, "name": "FLW_TGT_RS", "shortDesc": "Responsiveness to target movement in Target Estimator", "type": "Float"}, {"bitmask": [{"description": "GPS (with QZSS)", "index": 0}, {"description": "SBAS", "index": 1}, {"description": "Galileo", "index": 2}, {"description": "BeiDou", "index": 3}, {"description": "GLONASS", "index": 4}, {"description": "NAVIC", "index": 5}], "category": "Standard", "default": 0, "group": "GPS", "longDesc": "This integer bitmask controls the set of GNSS systems used by the receiver. Check your receiver's documentation on how many systems are supported to be used in parallel. Currently this functionality is just implemented for u-blox receivers. When no bits are set, the receiver's default configuration should be used. Set bits true to enable: 0 : Use GPS (with QZSS) 1 : Use SBAS (multiple GPS augmentation systems) 2 : Use Galileo 3 : Use BeiDou 4 : Use GLONASS 5 : Use NAVIC", "max": 63, "min": 0, "name": "GPS_1_GNSS", "rebootRequired": true, "shortDesc": "GNSS Systems for Primary GPS (integer bitmask)", "type": "Int32"}, {"category": "Standard", "default": 1, "group": "GPS", "longDesc": "Select the GPS protocol over serial. Auto-detection will probe all protocols, and thus is a bit slower.", "max": 7, "min": 0, "name": "GPS_1_PROTOCOL", "rebootRequired": true, "shortDesc": "Protocol for Main GPS", "type": "Int32", "values": [{"description": "Auto detect", "value": 0}, {"description": "u-blox", "value": 1}, {"description": "MTK", "value": 2}, {"description": "Ashtech / Trimble", "value": 3}, {"description": "Emlid Reach", "value": 4}, {"description": "Femtomes", "value": 5}, {"description": "NMEA (generic)", "value": 6}]}, {"bitmask": [{"description": "GPS (with QZSS)", "index": 0}, {"description": "SBAS", "index": 1}, {"description": "Galileo", "index": 2}, {"description": "BeiDou", "index": 3}, {"description": "GLONASS", "index": 4}, {"description": "NAVIC", "index": 5}], "category": "Standard", "default": 0, "group": "GPS", "longDesc": "This integer bitmask controls the set of GNSS systems used by the receiver. Check your receiver's documentation on how many systems are supported to be used in parallel. Currently this functionality is just implemented for u-blox receivers. When no bits are set, the receiver's default configuration should be used. Set bits true to enable: 0 : Use GPS (with QZSS) 1 : Use SBAS (multiple GPS augmentation systems) 2 : Use Galileo 3 : Use BeiDou 4 : Use GLONASS 5 : Use NAVIC", "max": 63, "min": 0, "name": "GPS_2_GNSS", "rebootRequired": true, "shortDesc": "GNSS Systems for Secondary GPS (integer bitmask)", "type": "Int32"}, {"category": "Standard", "default": 1, "group": "GPS", "longDesc": "Select the GPS protocol over serial. Auto-detection will probe all protocols, and thus is a bit slower.", "max": 6, "min": 0, "name": "GPS_2_PROTOCOL", "rebootRequired": true, "shortDesc": "Protocol for Secondary GPS", "type": "Int32", "values": [{"description": "Auto detect", "value": 0}, {"description": "u-blox", "value": 1}, {"description": "MTK", "value": 2}, {"description": "Ashtech / Trimble", "value": 3}, {"description": "Emlid Reach", "value": 4}, {"description": "Femtomes", "value": 5}, {"description": "NMEA (generic)", "value": 6}]}, {"category": "Standard", "default": 0, "group": "GPS", "longDesc": "If this is set to 1, all GPS communication data will be published via uORB, and written to the log file as gps_dump message. If this is set to 2, the main GPS is configured to output RTCM data, which is then logged as gps_dump and can be used for PPK.", "max": 2, "min": 0, "name": "GPS_DUMP_COMM", "shortDesc": "Log GPS communication data", "type": "Int32", "values": [{"description": "Disable", "value": 0}, {"description": "Full communication", "value": 1}, {"description": "RTCM output (PPK)", "value": 2}]}, {"category": "Standard", "default": 0, "group": "GPS", "longDesc": "Enable publication of satellite info (ORB_ID(satellite_info)) if possible. Not available on MTK.", "name": "GPS_SAT_INFO", "rebootRequired": true, "shortDesc": "Enable sat info (if available)", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 230400, "group": "GPS", "longDesc": "Select a baudrate for the F9P's UART2 port. In GPS_UBX_MODE 1, 2, and 3, the F9P's UART2 port is configured to send/receive RTCM corrections. Set this to 57600 if you want to attach a telemetry radio on UART2.", "min": 0, "name": "GPS_UBX_BAUD2", "rebootRequired": true, "shortDesc": "u-blox F9P UART2 Baudrate", "type": "Int32", "units": "B/s"}, {"bitmask": [{"description": "Enable I2C input protocol UBX", "index": 0}, {"description": "Enable I2C input protocol NMEA", "index": 1}, {"description": "Enable I2C input protocol RTCM3X", "index": 2}, {"description": "Enable I2C output protocol UBX", "index": 3}, {"description": "Enable I2C output protocol NMEA", "index": 4}, {"description": "Enable I2C output protocol RTCM3X", "index": 5}], "category": "Standard", "default": 0, "group": "GPS", "max": 32, "min": 0, "name": "GPS_UBX_CFG_INTF", "rebootRequired": true, "shortDesc": "u-blox protocol configuration for interfaces", "type": "Int32"}, {"category": "Standard", "default": 7, "group": "GPS", "longDesc": "u-blox receivers support different dynamic platform models to adjust the navigation engine to the expected application environment.", "max": 9, "min": 0, "name": "GPS_UBX_DYNMODEL", "rebootRequired": true, "shortDesc": "u-blox GPS dynamic platform model", "type": "Int32", "values": [{"description": "stationary", "value": 2}, {"description": "automotive", "value": 4}, {"description": "airborne with <1g acceleration", "value": 6}, {"description": "airborne with <2g acceleration", "value": 7}, {"description": "airborne with <4g acceleration", "value": 8}]}, {"category": "Standard", "default": 0, "group": "GPS", "longDesc": "Select the u-blox configuration setup. Most setups will use the default, including RTK and dual GPS without heading. If rover has RTCM corrections from a static base (or other static correction source) coming in on UART2, then select Mode 5. The Heading mode requires 2 F9P devices to be attached. The main GPS will act as rover and output heading information, whereas the secondary will act as moving base. Modes 1 and 2 require each F9P UART1 to be connected to the Autopilot. In addition, UART2 on the F9P units are connected to each other. Modes 3 and 4 only require UART1 on each F9P connected to the Autopilot or Can Node. UART RX DMA is required. RTK is still possible with this setup.", "max": 1, "min": 0, "name": "GPS_UBX_MODE", "rebootRequired": true, "shortDesc": "u-blox GPS Mode", "type": "Int32", "values": [{"description": "Default", "value": 0}, {"description": "Heading (Rover With Moving Base UART1 Connected To Autopilot, UART2 Connected To Moving Base)", "value": 1}, {"description": "Moving Base (UART1 Connected To Autopilot, UART2 Connected To Rover)", "value": 2}, {"description": "Heading (Rover With Moving Base UART1 Connected to Autopilot Or Can Node At 921600)", "value": 3}, {"description": "Moving Base (Moving Base UART1 Connected to Autopilot Or Can Node At 921600)", "value": 4}, {"description": "Rover with Static Base on UART2 (similar to Default, except coming in on UART2)", "value": 5}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "GPS", "longDesc": "Heading offset angle for dual antenna GPS setups that support heading estimation. Set this to 0 if the antennas are parallel to the forward-facing direction of the vehicle and the rover (or Unicore primary) antenna is in front. The offset angle increases clockwise. Set this to 90 if the rover (or Unicore primary, or Septentrio Mosaic Aux) antenna is placed on the right side of the vehicle and the moving base antenna is on the left side. (Note: the Unicore primary antenna is the one connected on the right as seen from the top).", "max": 360.0, "min": 0.0, "name": "GPS_YAW_OFFSET", "rebootRequired": true, "shortDesc": "Heading/Yaw offset for dual antenna GPS", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 2, "group": "Geofence", "longDesc": "Note: Setting this value to 4 enables flight termination, which will kill the vehicle on violation of the fence.", "max": 5, "min": 0, "name": "GF_ACTION", "shortDesc": "Geofence violation action", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Warning", "value": 1}, {"description": "Hold mode", "value": 2}, {"description": "Return mode", "value": 3}, {"description": "Terminate", "value": 4}, {"description": "Land mode", "value": 5}]}, {"category": "Standard", "default": 0.0, "group": "Geofence", "increment": 1.0, "longDesc": "Maximum horizontal distance in meters the vehicle can be from Home before triggering a geofence action. Disabled if 0.", "max": 10000.0, "min": 0.0, "name": "GF_MAX_HOR_DIST", "shortDesc": "Max horizontal distance from Home", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0.0, "group": "Geofence", "increment": 1.0, "longDesc": "Maximum vertical distance in meters the vehicle can be from Home before triggering a geofence action. Disabled if 0.", "max": 10000.0, "min": 0.0, "name": "GF_MAX_VER_DIST", "shortDesc": "Max vertical distance from Home", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geofence", "longDesc": "WARNING: This experimental feature may cause flyaways. Use at your own risk. Predict the motion of the vehicle and trigger the breach if it is determined that the current trajectory would result in a breach happening before the vehicle can make evasive maneuvers. The vehicle is then re-routed to a safe hold position (stop for multirotor, loiter for fixed wing).", "name": "GF_PREDICT", "shortDesc": "[EXPERIMENTAL] Use Pre-emptive geofence triggering", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Geofence", "longDesc": "Select which position source should be used. Selecting GPS instead of global position makes sure that there is no dependence on the position estimator 0 = global position, 1 = GPS", "max": 1, "min": 0, "name": "GF_SOURCE", "shortDesc": "Geofence source", "type": "Int32", "values": [{"description": "GPOS", "value": 0}, {"description": "GPS", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "Defines which mixer implementation to use. Some are generic, while others are specifically fit to a certain vehicle with a fixed set of actuators. 'Custom' should only be used if noting else can be used.", "name": "CA_AIRFRAME", "shortDesc": "Airframe selection", "type": "Int32", "values": [{"description": "Multirotor", "value": 0}, {"description": "Fixed-wing", "value": 1}, {"description": "Standard VTOL", "value": 2}, {"description": "Tiltrotor VTOL", "value": 3}, {"description": "Tailsitter VTOL", "value": 4}, {"description": "Rover (Ackermann)", "value": 5}, {"description": "Rover (Differential)", "value": 6}, {"description": "Motors (6DOF)", "value": 7}, {"description": "Multirotor with Tilt", "value": 8}, {"description": "Custom", "value": 9}, {"description": "Helicopter (tail ESC)", "value": 10}, {"description": "Helicopter (tail Servo)", "value": 11}, {"description": "Helicopter (Coaxial)", "value": 12}, {"description": "Rover (Mecanum)", "value": 13}, {"description": "Spacecraft 2D", "value": 14}, {"description": "Spacecraft 3D", "value": 15}]}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "This is used to specify how to handle motor failures reported by failure detector.", "name": "CA_FAILURE_MODE", "shortDesc": "Motor failure handling mode", "type": "Int32", "values": [{"description": "Ignore", "value": 0}, {"description": "Remove first failed motor from effectiveness", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": -0.05, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the collective pitch at the interval position 0 for a given thrust setpoint. Use negative values if the swash plate needs to move down to provide upwards thrust.", "max": 1.0, "min": -1.0, "name": "CA_HELI_PITCH_C0", "shortDesc": "Collective pitch curve at position 0", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0725, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the collective pitch at the interval position 1 for a given thrust setpoint. Use negative values if the swash plate needs to move down to provide upwards thrust.", "max": 1.0, "min": -1.0, "name": "CA_HELI_PITCH_C1", "shortDesc": "Collective pitch curve at position 1", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.2, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the collective pitch at the interval position 2 for a given thrust setpoint. Use negative values if the swash plate needs to move down to provide upwards thrust.", "max": 1.0, "min": -1.0, "name": "CA_HELI_PITCH_C2", "shortDesc": "Collective pitch curve at position 2", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.325, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the collective pitch at the interval position 3 for a given thrust setpoint. Use negative values if the swash plate needs to move down to provide upwards thrust.", "max": 1.0, "min": -1.0, "name": "CA_HELI_PITCH_C3", "shortDesc": "Collective pitch curve at position 3", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.45, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the collective pitch at the interval position 4 for a given thrust setpoint. Use negative values if the swash plate needs to move down to provide upwards thrust.", "max": 1.0, "min": -1.0, "name": "CA_HELI_PITCH_C4", "shortDesc": "Collective pitch curve at position 4", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Same definition as the proportional gain but for integral.", "max": 10.0, "min": 0.0, "name": "CA_HELI_RPM_I", "shortDesc": "Integral gain for rpm control", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Ratio between rpm error devided by 1000 to how much normalized output gets added to correct for it. motor_command = throttle_curve + CA_HELI_RPM_P * (rpm_setpoint - rpm_measurement) / 1000", "max": 10.0, "min": 0.0, "name": "CA_HELI_RPM_P", "shortDesc": "Proportional gain for rpm control", "type": "Float"}, {"category": "Standard", "decimalPlaces": 0, "default": 1500.0, "group": "Geometry", "increment": 1.0, "longDesc": "Requires rpm feedback for the controller.", "max": 10000.0, "min": 100.0, "name": "CA_HELI_RPM_SP", "shortDesc": "Setpoint for main rotor rpm", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the output throttle at the interval position 0.", "max": 1.0, "min": 0.0, "name": "CA_HELI_THR_C0", "shortDesc": "Throttle curve at position 0", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the output throttle at the interval position 1.", "max": 1.0, "min": 0.0, "name": "CA_HELI_THR_C1", "shortDesc": "Throttle curve at position 1", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the output throttle at the interval position 2.", "max": 1.0, "min": 0.0, "name": "CA_HELI_THR_C2", "shortDesc": "Throttle curve at position 2", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the output throttle at the interval position 3.", "max": 1.0, "min": 0.0, "name": "CA_HELI_THR_C3", "shortDesc": "Throttle curve at position 3", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Defines the output throttle at the interval position 4.", "max": 1.0, "min": 0.0, "name": "CA_HELI_THR_C4", "shortDesc": "Throttle curve at position 4", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "Default configuration is for a clockwise turning main rotor and positive thrust of the tail rotor is expected to rotate the vehicle clockwise. Set this parameter to true if the tail rotor provides thrust in counter-clockwise direction which is mostly the case when the main rotor turns counter-clockwise.", "name": "CA_HELI_YAW_CCW", "shortDesc": "Main rotor turns counter-clockwise", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "This allows to specify which collective pitch command results in the least amount of rotor drag. This is used to increase the accuracy of the yaw drag torque compensation based on collective pitch by aligning the lowest rotor drag with zero compensation. For symmetric profile blades this is the command that results in exactly 0\u00b0 collective blade angle. For lift profile blades this is typically a command resulting in slightly negative collective blade angle. tail_output += CA_HELI_YAW_CP_S * abs(collective_pitch - CA_HELI_YAW_CP_O)", "max": 2.0, "min": -2.0, "name": "CA_HELI_YAW_CP_O", "shortDesc": "Offset for yaw compensation based on collective pitch", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "This allows to add a proportional factor of the collective pitch command to the yaw command. A negative value is needed when positive thrust of the tail rotor rotates the vehicle opposite to the main rotor turn direction. tail_output += CA_HELI_YAW_CP_S * abs(collective_pitch - CA_HELI_YAW_CP_O)", "max": 2.0, "min": -2.0, "name": "CA_HELI_YAW_CP_S", "shortDesc": "Scale for yaw compensation based on collective pitch", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "This allows to add a proportional factor of the throttle command to the yaw command. A negative value is needed when positive thrust of the tail rotor rotates the vehicle opposite to the main rotor turn direction. tail_output += CA_HELI_YAW_TH_S * throttle", "max": 2.0, "min": -2.0, "name": "CA_HELI_YAW_TH_S", "shortDesc": "Scale for yaw compensation based on throttle", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Used to linearize mechanical output of swashplate servos to avoid axis coupling and binding with 4 servo redundancy. This requires a symmetric setup where the servo horn is exactly centered with a 0 command. Setting to zero disables feature.", "max": 75.0, "min": 0.0, "name": "CA_MAX_SVO_THROW", "shortDesc": "Throw angle of swashplate servo at maximum commands for linearization", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 2, "group": "Geometry", "longDesc": "Selects the algorithm and desaturation method. If set to Automatic, the selection is based on the airframe (CA_AIRFRAME).", "name": "CA_METHOD", "shortDesc": "Control allocation method", "type": "Int32", "values": [{"description": "Pseudo-inverse with output clipping", "value": 0}, {"description": "Pseudo-inverse with sequential desaturation technique", "value": 1}, {"description": "Automatic", "value": 2}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R0_SLEW", "shortDesc": "Motor 0 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R10_SLEW", "shortDesc": "Motor 10 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R11_SLEW", "shortDesc": "Motor 11 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R1_SLEW", "shortDesc": "Motor 1 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R2_SLEW", "shortDesc": "Motor 2 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R3_SLEW", "shortDesc": "Motor 3 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R4_SLEW", "shortDesc": "Motor 4 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R5_SLEW", "shortDesc": "Motor 5 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R6_SLEW", "shortDesc": "Motor 6 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R7_SLEW", "shortDesc": "Motor 7 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R8_SLEW", "shortDesc": "Motor 8 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.01, "longDesc": "Forces the motor output signal to take at least the configured time (in seconds) to traverse its full range (normally [0, 1], or if reversible [-1, 1]). Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_R9_SLEW", "shortDesc": "Motor 9 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR0_AX", "shortDesc": "Axis of rotor 0 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR0_AY", "shortDesc": "Axis of rotor 0 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR0_AZ", "shortDesc": "Axis of rotor 0 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR0_CT", "shortDesc": "Thrust coefficient of rotor 0", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR0_KM", "shortDesc": "Moment coefficient of rotor 0", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR0_PX", "shortDesc": "Position of rotor 0 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR0_PY", "shortDesc": "Position of rotor 0 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR0_PZ", "shortDesc": "Position of rotor 0 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR0_TILT", "shortDesc": "Rotor 0 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR10_AX", "shortDesc": "Axis of rotor 10 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR10_AY", "shortDesc": "Axis of rotor 10 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR10_AZ", "shortDesc": "Axis of rotor 10 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR10_CT", "shortDesc": "Thrust coefficient of rotor 10", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR10_KM", "shortDesc": "Moment coefficient of rotor 10", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR10_PX", "shortDesc": "Position of rotor 10 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR10_PY", "shortDesc": "Position of rotor 10 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR10_PZ", "shortDesc": "Position of rotor 10 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR10_TILT", "shortDesc": "Rotor 10 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR11_AX", "shortDesc": "Axis of rotor 11 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR11_AY", "shortDesc": "Axis of rotor 11 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR11_AZ", "shortDesc": "Axis of rotor 11 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR11_CT", "shortDesc": "Thrust coefficient of rotor 11", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR11_KM", "shortDesc": "Moment coefficient of rotor 11", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR11_PX", "shortDesc": "Position of rotor 11 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR11_PY", "shortDesc": "Position of rotor 11 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR11_PZ", "shortDesc": "Position of rotor 11 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR11_TILT", "shortDesc": "Rotor 11 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR1_AX", "shortDesc": "Axis of rotor 1 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR1_AY", "shortDesc": "Axis of rotor 1 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR1_AZ", "shortDesc": "Axis of rotor 1 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR1_CT", "shortDesc": "Thrust coefficient of rotor 1", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR1_KM", "shortDesc": "Moment coefficient of rotor 1", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR1_PX", "shortDesc": "Position of rotor 1 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR1_PY", "shortDesc": "Position of rotor 1 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR1_PZ", "shortDesc": "Position of rotor 1 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR1_TILT", "shortDesc": "Rotor 1 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR2_AX", "shortDesc": "Axis of rotor 2 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR2_AY", "shortDesc": "Axis of rotor 2 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR2_AZ", "shortDesc": "Axis of rotor 2 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR2_CT", "shortDesc": "Thrust coefficient of rotor 2", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR2_KM", "shortDesc": "Moment coefficient of rotor 2", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR2_PX", "shortDesc": "Position of rotor 2 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR2_PY", "shortDesc": "Position of rotor 2 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR2_PZ", "shortDesc": "Position of rotor 2 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR2_TILT", "shortDesc": "Rotor 2 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR3_AX", "shortDesc": "Axis of rotor 3 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR3_AY", "shortDesc": "Axis of rotor 3 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR3_AZ", "shortDesc": "Axis of rotor 3 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR3_CT", "shortDesc": "Thrust coefficient of rotor 3", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR3_KM", "shortDesc": "Moment coefficient of rotor 3", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR3_PX", "shortDesc": "Position of rotor 3 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR3_PY", "shortDesc": "Position of rotor 3 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR3_PZ", "shortDesc": "Position of rotor 3 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR3_TILT", "shortDesc": "Rotor 3 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR4_AX", "shortDesc": "Axis of rotor 4 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR4_AY", "shortDesc": "Axis of rotor 4 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR4_AZ", "shortDesc": "Axis of rotor 4 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR4_CT", "shortDesc": "Thrust coefficient of rotor 4", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR4_KM", "shortDesc": "Moment coefficient of rotor 4", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR4_PX", "shortDesc": "Position of rotor 4 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR4_PY", "shortDesc": "Position of rotor 4 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR4_PZ", "shortDesc": "Position of rotor 4 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR4_TILT", "shortDesc": "Rotor 4 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR5_AX", "shortDesc": "Axis of rotor 5 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR5_AY", "shortDesc": "Axis of rotor 5 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR5_AZ", "shortDesc": "Axis of rotor 5 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR5_CT", "shortDesc": "Thrust coefficient of rotor 5", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR5_KM", "shortDesc": "Moment coefficient of rotor 5", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR5_PX", "shortDesc": "Position of rotor 5 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR5_PY", "shortDesc": "Position of rotor 5 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR5_PZ", "shortDesc": "Position of rotor 5 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR5_TILT", "shortDesc": "Rotor 5 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR6_AX", "shortDesc": "Axis of rotor 6 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR6_AY", "shortDesc": "Axis of rotor 6 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR6_AZ", "shortDesc": "Axis of rotor 6 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR6_CT", "shortDesc": "Thrust coefficient of rotor 6", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR6_KM", "shortDesc": "Moment coefficient of rotor 6", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR6_PX", "shortDesc": "Position of rotor 6 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR6_PY", "shortDesc": "Position of rotor 6 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR6_PZ", "shortDesc": "Position of rotor 6 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR6_TILT", "shortDesc": "Rotor 6 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR7_AX", "shortDesc": "Axis of rotor 7 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR7_AY", "shortDesc": "Axis of rotor 7 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR7_AZ", "shortDesc": "Axis of rotor 7 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR7_CT", "shortDesc": "Thrust coefficient of rotor 7", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR7_KM", "shortDesc": "Moment coefficient of rotor 7", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR7_PX", "shortDesc": "Position of rotor 7 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR7_PY", "shortDesc": "Position of rotor 7 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR7_PZ", "shortDesc": "Position of rotor 7 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR7_TILT", "shortDesc": "Rotor 7 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR8_AX", "shortDesc": "Axis of rotor 8 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR8_AY", "shortDesc": "Axis of rotor 8 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR8_AZ", "shortDesc": "Axis of rotor 8 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR8_CT", "shortDesc": "Thrust coefficient of rotor 8", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR8_KM", "shortDesc": "Moment coefficient of rotor 8", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR8_PX", "shortDesc": "Position of rotor 8 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR8_PY", "shortDesc": "Position of rotor 8 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR8_PZ", "shortDesc": "Position of rotor 8 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR8_TILT", "shortDesc": "Rotor 8 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR9_AX", "shortDesc": "Axis of rotor 9 thrust vector, X body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR9_AY", "shortDesc": "Axis of rotor 9 thrust vector, Y body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Geometry", "increment": 0.1, "longDesc": "Only the direction is considered (the vector is normalized).", "max": 100.0, "min": -100.0, "name": "CA_ROTOR9_AZ", "shortDesc": "Axis of rotor 9 thrust vector, Z body axis component", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.5, "group": "Geometry", "increment": 1.0, "longDesc": "The thrust coefficient if defined as Thrust = CT * u^2, where u (with value between actuator minimum and maximum) is the output signal sent to the motor controller.", "max": 100.0, "min": 0.0, "name": "CA_ROTOR9_CT", "shortDesc": "Thrust coefficient of rotor 9", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Geometry", "increment": 0.01, "longDesc": "The moment coefficient if defined as Torque = KM * Thrust. Use a positive value for a rotor with CCW rotation. Use a negative value for a rotor with CW rotation.", "max": 1.0, "min": -1.0, "name": "CA_ROTOR9_KM", "shortDesc": "Moment coefficient of rotor 9", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR9_PX", "shortDesc": "Position of rotor 9 along X body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR9_PY", "shortDesc": "Position of rotor 9 along Y body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.1, "max": 100.0, "min": -100.0, "name": "CA_ROTOR9_PZ", "shortDesc": "Position of rotor 9 along Z body axis relative to center of gravity", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "If not set to None, this motor is tilted by the configured tilt servo.", "name": "CA_ROTOR9_TILT", "shortDesc": "Rotor 9 tilt assignment", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Tilt 1", "value": 1}, {"description": "Tilt 2", "value": 2}, {"description": "Tilt 3", "value": 3}, {"description": "Tilt 4", "value": 4}]}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_ROTOR_COUNT", "shortDesc": "Total number of rotors", "type": "Int32", "values": [{"description": "0", "value": 0}, {"description": "1", "value": 1}, {"description": "2", "value": 2}, {"description": "3", "value": 3}, {"description": "4", "value": 4}, {"description": "5", "value": 5}, {"description": "6", "value": 6}, {"description": "7", "value": 7}, {"description": "8", "value": 8}, {"description": "9", "value": 9}, {"description": "10", "value": 10}, {"description": "11", "value": 11}, {"description": "12", "value": 12}]}, {"bitmask": [{"description": "Motor 1", "index": 0}, {"description": "Motor 2", "index": 1}, {"description": "Motor 3", "index": 2}, {"description": "Motor 4", "index": 3}, {"description": "Motor 5", "index": 4}, {"description": "Motor 6", "index": 5}, {"description": "Motor 7", "index": 6}, {"description": "Motor 8", "index": 7}, {"description": "Motor 9", "index": 8}, {"description": "Motor 10", "index": 9}, {"description": "Motor 11", "index": 10}, {"description": "Motor 12", "index": 11}], "category": "Standard", "default": 0, "group": "Geometry", "longDesc": "Configure motors to be bidirectional/reversible. Note that the output driver needs to support this as well.", "max": 4095, "min": 0, "name": "CA_R_REV", "shortDesc": "Bidirectional/Reversible motors", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 0, "default": 0.0, "group": "Geometry", "increment": 10.0, "longDesc": "The angle is measured clockwise (as seen from top), with 0 pointing forwards (X axis).", "max": 360.0, "min": 0.0, "name": "CA_SP0_ANG0", "shortDesc": "Angle for swash plate servo 0", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 0, "default": 140.0, "group": "Geometry", "increment": 10.0, "longDesc": "The angle is measured clockwise (as seen from top), with 0 pointing forwards (X axis).", "max": 360.0, "min": 0.0, "name": "CA_SP0_ANG1", "shortDesc": "Angle for swash plate servo 1", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 0, "default": 220.0, "group": "Geometry", "increment": 10.0, "longDesc": "The angle is measured clockwise (as seen from top), with 0 pointing forwards (X axis).", "max": 360.0, "min": 0.0, "name": "CA_SP0_ANG2", "shortDesc": "Angle for swash plate servo 2", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 0, "default": 0.0, "group": "Geometry", "increment": 10.0, "longDesc": "The angle is measured clockwise (as seen from top), with 0 pointing forwards (X axis).", "max": 360.0, "min": 0.0, "name": "CA_SP0_ANG3", "shortDesc": "Angle for swash plate servo 3", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Geometry", "increment": 0.1, "longDesc": "This is relative to the other arm lengths.", "max": 10.0, "min": 0.0, "name": "CA_SP0_ARM_L0", "shortDesc": "Arm length for swash plate servo 0", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Geometry", "increment": 0.1, "longDesc": "This is relative to the other arm lengths.", "max": 10.0, "min": 0.0, "name": "CA_SP0_ARM_L1", "shortDesc": "Arm length for swash plate servo 1", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Geometry", "increment": 0.1, "longDesc": "This is relative to the other arm lengths.", "max": 10.0, "min": 0.0, "name": "CA_SP0_ARM_L2", "shortDesc": "Arm length for swash plate servo 2", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Geometry", "increment": 0.1, "longDesc": "This is relative to the other arm lengths.", "max": 10.0, "min": 0.0, "name": "CA_SP0_ARM_L3", "shortDesc": "Arm length for swash plate servo 3", "type": "Float"}, {"category": "Standard", "default": 3, "group": "Geometry", "name": "CA_SP0_COUNT", "shortDesc": "Number of swash plates servos", "type": "Int32", "values": [{"description": "2", "value": 2}, {"description": "3", "value": 3}, {"description": "4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.05, "longDesc": "Forces the servo output signal to take at least the configured time (in seconds) to traverse its full range [-100%, 100%]. Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_SV0_SLEW", "shortDesc": "Servo 0 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.05, "longDesc": "Forces the servo output signal to take at least the configured time (in seconds) to traverse its full range [-100%, 100%]. Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_SV1_SLEW", "shortDesc": "Servo 1 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.05, "longDesc": "Forces the servo output signal to take at least the configured time (in seconds) to traverse its full range [-100%, 100%]. Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_SV2_SLEW", "shortDesc": "Servo 2 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.05, "longDesc": "Forces the servo output signal to take at least the configured time (in seconds) to traverse its full range [-100%, 100%]. Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_SV3_SLEW", "shortDesc": "Servo 3 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.05, "longDesc": "Forces the servo output signal to take at least the configured time (in seconds) to traverse its full range [-100%, 100%]. Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_SV4_SLEW", "shortDesc": "Servo 4 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.05, "longDesc": "Forces the servo output signal to take at least the configured time (in seconds) to traverse its full range [-100%, 100%]. Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_SV5_SLEW", "shortDesc": "Servo 5 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.05, "longDesc": "Forces the servo output signal to take at least the configured time (in seconds) to traverse its full range [-100%, 100%]. Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_SV6_SLEW", "shortDesc": "Servo 6 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "increment": 0.05, "longDesc": "Forces the servo output signal to take at least the configured time (in seconds) to traverse its full range [-100%, 100%]. Zero means that slew rate limiting is disabled.", "max": 10.0, "min": 0.0, "name": "CA_SV7_SLEW", "shortDesc": "Servo 7 slew rate limit", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS0_FLAP", "shortDesc": "Control Surface 0 configuration as flap", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS0_SPOIL", "shortDesc": "Control Surface 0 configuration as spoiler", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "longDesc": "Can be used to add an offset to the servo control.", "max": 1.0, "min": -1.0, "name": "CA_SV_CS0_TRIM", "shortDesc": "Control Surface 0 trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS0_TRQ_P", "shortDesc": "Control Surface 0 pitch torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS0_TRQ_R", "shortDesc": "Control Surface 0 roll torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS0_TRQ_Y", "shortDesc": "Control Surface 0 yaw torque scaling", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_CS0_TYPE", "shortDesc": "Control Surface 0 type", "type": "Int32", "values": [{"description": "(Not set)", "value": 0}, {"description": "Left Aileron", "value": 1}, {"description": "Right Aileron", "value": 2}, {"description": "Elevator", "value": 3}, {"description": "Rudder", "value": 4}, {"description": "Left Elevon", "value": 5}, {"description": "Right Elevon", "value": 6}, {"description": "Left V-Tail", "value": 7}, {"description": "Right V-Tail", "value": 8}, {"description": "Left Flap", "value": 9}, {"description": "Right Flap", "value": 10}, {"description": "Airbrake", "value": 11}, {"description": "Custom", "value": 12}, {"description": "Left A-tail", "value": 13}, {"description": "Right A-tail", "value": 14}, {"description": "Single Channel Aileron", "value": 15}, {"description": "Steering Wheel", "value": 16}, {"description": "Left Spoiler", "value": 17}, {"description": "Right Spoiler", "value": 18}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS1_FLAP", "shortDesc": "Control Surface 1 configuration as flap", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS1_SPOIL", "shortDesc": "Control Surface 1 configuration as spoiler", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "longDesc": "Can be used to add an offset to the servo control.", "max": 1.0, "min": -1.0, "name": "CA_SV_CS1_TRIM", "shortDesc": "Control Surface 1 trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS1_TRQ_P", "shortDesc": "Control Surface 1 pitch torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS1_TRQ_R", "shortDesc": "Control Surface 1 roll torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS1_TRQ_Y", "shortDesc": "Control Surface 1 yaw torque scaling", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_CS1_TYPE", "shortDesc": "Control Surface 1 type", "type": "Int32", "values": [{"description": "(Not set)", "value": 0}, {"description": "Left Aileron", "value": 1}, {"description": "Right Aileron", "value": 2}, {"description": "Elevator", "value": 3}, {"description": "Rudder", "value": 4}, {"description": "Left Elevon", "value": 5}, {"description": "Right Elevon", "value": 6}, {"description": "Left V-Tail", "value": 7}, {"description": "Right V-Tail", "value": 8}, {"description": "Left Flap", "value": 9}, {"description": "Right Flap", "value": 10}, {"description": "Airbrake", "value": 11}, {"description": "Custom", "value": 12}, {"description": "Left A-tail", "value": 13}, {"description": "Right A-tail", "value": 14}, {"description": "Single Channel Aileron", "value": 15}, {"description": "Steering Wheel", "value": 16}, {"description": "Left Spoiler", "value": 17}, {"description": "Right Spoiler", "value": 18}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS2_FLAP", "shortDesc": "Control Surface 2 configuration as flap", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS2_SPOIL", "shortDesc": "Control Surface 2 configuration as spoiler", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "longDesc": "Can be used to add an offset to the servo control.", "max": 1.0, "min": -1.0, "name": "CA_SV_CS2_TRIM", "shortDesc": "Control Surface 2 trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS2_TRQ_P", "shortDesc": "Control Surface 2 pitch torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS2_TRQ_R", "shortDesc": "Control Surface 2 roll torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS2_TRQ_Y", "shortDesc": "Control Surface 2 yaw torque scaling", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_CS2_TYPE", "shortDesc": "Control Surface 2 type", "type": "Int32", "values": [{"description": "(Not set)", "value": 0}, {"description": "Left Aileron", "value": 1}, {"description": "Right Aileron", "value": 2}, {"description": "Elevator", "value": 3}, {"description": "Rudder", "value": 4}, {"description": "Left Elevon", "value": 5}, {"description": "Right Elevon", "value": 6}, {"description": "Left V-Tail", "value": 7}, {"description": "Right V-Tail", "value": 8}, {"description": "Left Flap", "value": 9}, {"description": "Right Flap", "value": 10}, {"description": "Airbrake", "value": 11}, {"description": "Custom", "value": 12}, {"description": "Left A-tail", "value": 13}, {"description": "Right A-tail", "value": 14}, {"description": "Single Channel Aileron", "value": 15}, {"description": "Steering Wheel", "value": 16}, {"description": "Left Spoiler", "value": 17}, {"description": "Right Spoiler", "value": 18}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS3_FLAP", "shortDesc": "Control Surface 3 configuration as flap", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS3_SPOIL", "shortDesc": "Control Surface 3 configuration as spoiler", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "longDesc": "Can be used to add an offset to the servo control.", "max": 1.0, "min": -1.0, "name": "CA_SV_CS3_TRIM", "shortDesc": "Control Surface 3 trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS3_TRQ_P", "shortDesc": "Control Surface 3 pitch torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS3_TRQ_R", "shortDesc": "Control Surface 3 roll torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS3_TRQ_Y", "shortDesc": "Control Surface 3 yaw torque scaling", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_CS3_TYPE", "shortDesc": "Control Surface 3 type", "type": "Int32", "values": [{"description": "(Not set)", "value": 0}, {"description": "Left Aileron", "value": 1}, {"description": "Right Aileron", "value": 2}, {"description": "Elevator", "value": 3}, {"description": "Rudder", "value": 4}, {"description": "Left Elevon", "value": 5}, {"description": "Right Elevon", "value": 6}, {"description": "Left V-Tail", "value": 7}, {"description": "Right V-Tail", "value": 8}, {"description": "Left Flap", "value": 9}, {"description": "Right Flap", "value": 10}, {"description": "Airbrake", "value": 11}, {"description": "Custom", "value": 12}, {"description": "Left A-tail", "value": 13}, {"description": "Right A-tail", "value": 14}, {"description": "Single Channel Aileron", "value": 15}, {"description": "Steering Wheel", "value": 16}, {"description": "Left Spoiler", "value": 17}, {"description": "Right Spoiler", "value": 18}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS4_FLAP", "shortDesc": "Control Surface 4 configuration as flap", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS4_SPOIL", "shortDesc": "Control Surface 4 configuration as spoiler", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "longDesc": "Can be used to add an offset to the servo control.", "max": 1.0, "min": -1.0, "name": "CA_SV_CS4_TRIM", "shortDesc": "Control Surface 4 trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS4_TRQ_P", "shortDesc": "Control Surface 4 pitch torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS4_TRQ_R", "shortDesc": "Control Surface 4 roll torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS4_TRQ_Y", "shortDesc": "Control Surface 4 yaw torque scaling", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_CS4_TYPE", "shortDesc": "Control Surface 4 type", "type": "Int32", "values": [{"description": "(Not set)", "value": 0}, {"description": "Left Aileron", "value": 1}, {"description": "Right Aileron", "value": 2}, {"description": "Elevator", "value": 3}, {"description": "Rudder", "value": 4}, {"description": "Left Elevon", "value": 5}, {"description": "Right Elevon", "value": 6}, {"description": "Left V-Tail", "value": 7}, {"description": "Right V-Tail", "value": 8}, {"description": "Left Flap", "value": 9}, {"description": "Right Flap", "value": 10}, {"description": "Airbrake", "value": 11}, {"description": "Custom", "value": 12}, {"description": "Left A-tail", "value": 13}, {"description": "Right A-tail", "value": 14}, {"description": "Single Channel Aileron", "value": 15}, {"description": "Steering Wheel", "value": 16}, {"description": "Left Spoiler", "value": 17}, {"description": "Right Spoiler", "value": 18}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS5_FLAP", "shortDesc": "Control Surface 5 configuration as flap", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS5_SPOIL", "shortDesc": "Control Surface 5 configuration as spoiler", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "longDesc": "Can be used to add an offset to the servo control.", "max": 1.0, "min": -1.0, "name": "CA_SV_CS5_TRIM", "shortDesc": "Control Surface 5 trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS5_TRQ_P", "shortDesc": "Control Surface 5 pitch torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS5_TRQ_R", "shortDesc": "Control Surface 5 roll torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS5_TRQ_Y", "shortDesc": "Control Surface 5 yaw torque scaling", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_CS5_TYPE", "shortDesc": "Control Surface 5 type", "type": "Int32", "values": [{"description": "(Not set)", "value": 0}, {"description": "Left Aileron", "value": 1}, {"description": "Right Aileron", "value": 2}, {"description": "Elevator", "value": 3}, {"description": "Rudder", "value": 4}, {"description": "Left Elevon", "value": 5}, {"description": "Right Elevon", "value": 6}, {"description": "Left V-Tail", "value": 7}, {"description": "Right V-Tail", "value": 8}, {"description": "Left Flap", "value": 9}, {"description": "Right Flap", "value": 10}, {"description": "Airbrake", "value": 11}, {"description": "Custom", "value": 12}, {"description": "Left A-tail", "value": 13}, {"description": "Right A-tail", "value": 14}, {"description": "Single Channel Aileron", "value": 15}, {"description": "Steering Wheel", "value": 16}, {"description": "Left Spoiler", "value": 17}, {"description": "Right Spoiler", "value": 18}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS6_FLAP", "shortDesc": "Control Surface 6 configuration as flap", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS6_SPOIL", "shortDesc": "Control Surface 6 configuration as spoiler", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "longDesc": "Can be used to add an offset to the servo control.", "max": 1.0, "min": -1.0, "name": "CA_SV_CS6_TRIM", "shortDesc": "Control Surface 6 trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS6_TRQ_P", "shortDesc": "Control Surface 6 pitch torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS6_TRQ_R", "shortDesc": "Control Surface 6 roll torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS6_TRQ_Y", "shortDesc": "Control Surface 6 yaw torque scaling", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_CS6_TYPE", "shortDesc": "Control Surface 6 type", "type": "Int32", "values": [{"description": "(Not set)", "value": 0}, {"description": "Left Aileron", "value": 1}, {"description": "Right Aileron", "value": 2}, {"description": "Elevator", "value": 3}, {"description": "Rudder", "value": 4}, {"description": "Left Elevon", "value": 5}, {"description": "Right Elevon", "value": 6}, {"description": "Left V-Tail", "value": 7}, {"description": "Right V-Tail", "value": 8}, {"description": "Left Flap", "value": 9}, {"description": "Right Flap", "value": 10}, {"description": "Airbrake", "value": 11}, {"description": "Custom", "value": 12}, {"description": "Left A-tail", "value": 13}, {"description": "Right A-tail", "value": 14}, {"description": "Single Channel Aileron", "value": 15}, {"description": "Steering Wheel", "value": 16}, {"description": "Left Spoiler", "value": 17}, {"description": "Right Spoiler", "value": 18}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS7_FLAP", "shortDesc": "Control Surface 7 configuration as flap", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "max": 1.0, "min": -1.0, "name": "CA_SV_CS7_SPOIL", "shortDesc": "Control Surface 7 configuration as spoiler", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "longDesc": "Can be used to add an offset to the servo control.", "max": 1.0, "min": -1.0, "name": "CA_SV_CS7_TRIM", "shortDesc": "Control Surface 7 trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS7_TRQ_P", "shortDesc": "Control Surface 7 pitch torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS7_TRQ_R", "shortDesc": "Control Surface 7 roll torque scaling", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Geometry", "name": "CA_SV_CS7_TRQ_Y", "shortDesc": "Control Surface 7 yaw torque scaling", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_CS7_TYPE", "shortDesc": "Control Surface 7 type", "type": "Int32", "values": [{"description": "(Not set)", "value": 0}, {"description": "Left Aileron", "value": 1}, {"description": "Right Aileron", "value": 2}, {"description": "Elevator", "value": 3}, {"description": "Rudder", "value": 4}, {"description": "Left Elevon", "value": 5}, {"description": "Right Elevon", "value": 6}, {"description": "Left V-Tail", "value": 7}, {"description": "Right V-Tail", "value": 8}, {"description": "Left Flap", "value": 9}, {"description": "Right Flap", "value": 10}, {"description": "Airbrake", "value": 11}, {"description": "Custom", "value": 12}, {"description": "Left A-tail", "value": 13}, {"description": "Right A-tail", "value": 14}, {"description": "Single Channel Aileron", "value": 15}, {"description": "Steering Wheel", "value": 16}, {"description": "Left Spoiler", "value": 17}, {"description": "Right Spoiler", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_CS_COUNT", "shortDesc": "Total number of Control Surfaces", "type": "Int32", "values": [{"description": "0", "value": 0}, {"description": "1", "value": 1}, {"description": "2", "value": 2}, {"description": "3", "value": 3}, {"description": "4", "value": 4}, {"description": "5", "value": 5}, {"description": "6", "value": 6}, {"description": "7", "value": 7}, {"description": "8", "value": 8}]}, {"category": "Standard", "default": 1, "group": "Geometry", "longDesc": "Define if this servo is used for additional control.", "name": "CA_SV_TL0_CT", "shortDesc": "Tilt 0 is used for control", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Yaw", "value": 1}, {"description": "Pitch", "value": 2}, {"description": "Yaw and Pitch", "value": 3}]}, {"category": "Standard", "decimalPlaces": 0, "default": 90.0, "group": "Geometry", "longDesc": "Defines the tilt angle when the servo is at the maximum. An angle of zero means upwards.", "max": 90.0, "min": -90.0, "name": "CA_SV_TL0_MAXA", "shortDesc": "Tilt Servo 0 Tilt Angle at Maximum", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 0, "default": 0.0, "group": "Geometry", "longDesc": "Defines the tilt angle when the servo is at the minimum. An angle of zero means upwards.", "max": 90.0, "min": -90.0, "name": "CA_SV_TL0_MINA", "shortDesc": "Tilt Servo 0 Tilt Angle at Minimum", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "Defines the direction the servo tilts towards when moving towards the maximum tilt angle. For example if the minimum tilt angle is -90, the maximum 90, and the direction 'Towards Front', the motor axis aligns with the XZ-plane, points towards -X at the minimum and +X at the maximum tilt.", "max": 359, "min": 0, "name": "CA_SV_TL0_TD", "shortDesc": "Tilt Servo 0 Tilt Direction", "type": "Int32", "values": [{"description": "Towards Front", "value": 0}, {"description": "Towards Right", "value": 90}]}, {"category": "Standard", "default": 1, "group": "Geometry", "longDesc": "Define if this servo is used for additional control.", "name": "CA_SV_TL1_CT", "shortDesc": "Tilt 1 is used for control", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Yaw", "value": 1}, {"description": "Pitch", "value": 2}, {"description": "Yaw and Pitch", "value": 3}]}, {"category": "Standard", "decimalPlaces": 0, "default": 90.0, "group": "Geometry", "longDesc": "Defines the tilt angle when the servo is at the maximum. An angle of zero means upwards.", "max": 90.0, "min": -90.0, "name": "CA_SV_TL1_MAXA", "shortDesc": "Tilt Servo 1 Tilt Angle at Maximum", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 0, "default": 0.0, "group": "Geometry", "longDesc": "Defines the tilt angle when the servo is at the minimum. An angle of zero means upwards.", "max": 90.0, "min": -90.0, "name": "CA_SV_TL1_MINA", "shortDesc": "Tilt Servo 1 Tilt Angle at Minimum", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "Defines the direction the servo tilts towards when moving towards the maximum tilt angle. For example if the minimum tilt angle is -90, the maximum 90, and the direction 'Towards Front', the motor axis aligns with the XZ-plane, points towards -X at the minimum and +X at the maximum tilt.", "max": 359, "min": 0, "name": "CA_SV_TL1_TD", "shortDesc": "Tilt Servo 1 Tilt Direction", "type": "Int32", "values": [{"description": "Towards Front", "value": 0}, {"description": "Towards Right", "value": 90}]}, {"category": "Standard", "default": 1, "group": "Geometry", "longDesc": "Define if this servo is used for additional control.", "name": "CA_SV_TL2_CT", "shortDesc": "Tilt 2 is used for control", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Yaw", "value": 1}, {"description": "Pitch", "value": 2}, {"description": "Yaw and Pitch", "value": 3}]}, {"category": "Standard", "decimalPlaces": 0, "default": 90.0, "group": "Geometry", "longDesc": "Defines the tilt angle when the servo is at the maximum. An angle of zero means upwards.", "max": 90.0, "min": -90.0, "name": "CA_SV_TL2_MAXA", "shortDesc": "Tilt Servo 2 Tilt Angle at Maximum", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 0, "default": 0.0, "group": "Geometry", "longDesc": "Defines the tilt angle when the servo is at the minimum. An angle of zero means upwards.", "max": 90.0, "min": -90.0, "name": "CA_SV_TL2_MINA", "shortDesc": "Tilt Servo 2 Tilt Angle at Minimum", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "Defines the direction the servo tilts towards when moving towards the maximum tilt angle. For example if the minimum tilt angle is -90, the maximum 90, and the direction 'Towards Front', the motor axis aligns with the XZ-plane, points towards -X at the minimum and +X at the maximum tilt.", "max": 359, "min": 0, "name": "CA_SV_TL2_TD", "shortDesc": "Tilt Servo 2 Tilt Direction", "type": "Int32", "values": [{"description": "Towards Front", "value": 0}, {"description": "Towards Right", "value": 90}]}, {"category": "Standard", "default": 1, "group": "Geometry", "longDesc": "Define if this servo is used for additional control.", "name": "CA_SV_TL3_CT", "shortDesc": "Tilt 3 is used for control", "type": "Int32", "values": [{"description": "None", "value": 0}, {"description": "Yaw", "value": 1}, {"description": "Pitch", "value": 2}, {"description": "Yaw and Pitch", "value": 3}]}, {"category": "Standard", "decimalPlaces": 0, "default": 90.0, "group": "Geometry", "longDesc": "Defines the tilt angle when the servo is at the maximum. An angle of zero means upwards.", "max": 90.0, "min": -90.0, "name": "CA_SV_TL3_MAXA", "shortDesc": "Tilt Servo 3 Tilt Angle at Maximum", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 0, "default": 0.0, "group": "Geometry", "longDesc": "Defines the tilt angle when the servo is at the minimum. An angle of zero means upwards.", "max": 90.0, "min": -90.0, "name": "CA_SV_TL3_MINA", "shortDesc": "Tilt Servo 3 Tilt Angle at Minimum", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0, "group": "Geometry", "longDesc": "Defines the direction the servo tilts towards when moving towards the maximum tilt angle. For example if the minimum tilt angle is -90, the maximum 90, and the direction 'Towards Front', the motor axis aligns with the XZ-plane, points towards -X at the minimum and +X at the maximum tilt.", "max": 359, "min": 0, "name": "CA_SV_TL3_TD", "shortDesc": "Tilt Servo 3 Tilt Direction", "type": "Int32", "values": [{"description": "Towards Front", "value": 0}, {"description": "Towards Right", "value": 90}]}, {"category": "Standard", "default": 0, "group": "Geometry", "name": "CA_SV_TL_COUNT", "shortDesc": "Total number of Tilt Servos", "type": "Int32", "values": [{"description": "0", "value": 0}, {"description": "1", "value": 1}, {"description": "2", "value": 2}, {"description": "3", "value": 3}, {"description": "4", "value": 4}]}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "Hover Thrust Estimator", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "max": 10.0, "min": 1.0, "name": "HTE_ACC_GATE", "shortDesc": "Gate size for acceleration fusion", "type": "Float", "units": "SD"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.1, "group": "Hover Thrust Estimator", "longDesc": "Sets the number of standard deviations used by the innovation consistency test.", "max": 1.0, "min": 0.0, "name": "HTE_HT_ERR_INIT", "shortDesc": "1-sigma initial hover thrust uncertainty", "type": "Float", "units": "normalized_thrust"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.0036, "group": "Hover Thrust Estimator", "longDesc": "Reduce to make the hover thrust estimate more stable, increase if the real hover thrust is expected to change quickly over time.", "max": 1.0, "min": 0.0001, "name": "HTE_HT_NOISE", "shortDesc": "Hover thrust process noise", "type": "Float", "units": "normalized_thrust/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "Hover Thrust Estimator", "longDesc": "Defines the range of the hover thrust estimate around MPC_THR_HOVER. A value of 0.2 with MPC_THR_HOVER at 0.5 results in a range of [0.3, 0.7]. Set to a large value if the vehicle operates in varying physical conditions that affect the required hover thrust strongly (e.g. differently sized payloads).", "max": 0.4, "min": 0.01, "name": "HTE_THR_RANGE", "shortDesc": "Max deviation from MPC_THR_HOVER", "type": "Float", "units": "normalized_thrust"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Hover Thrust Estimator", "longDesc": "Above this speed, the measurement noise is linearly increased to reduce the sensitivity of the estimator from biased measurement. Set to a low value on vehicles with large lifting surfaces.", "max": 20.0, "min": 1.0, "name": "HTE_VXY_THR", "shortDesc": "Horizontal velocity threshold for sensitivity reduction", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 2.0, "group": "Hover Thrust Estimator", "longDesc": "Above this speed, the measurement noise is linearly increased to reduce the sensitivity of the estimator from biased measurement. Set to a low value on vehicles affected by air drag when climbing or descending.", "max": 10.0, "min": 1.0, "name": "HTE_VZ_THR", "shortDesc": "Vertical velocity threshold for sensitivity reduction", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.0, "group": "Land Detector", "longDesc": "Maximum airspeed allowed in the landed state", "max": 30.0, "min": 2.0, "name": "LNDFW_AIRSPD_MAX", "shortDesc": "Fixed-wing land detector: Max airspeed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.5, "group": "Land Detector", "longDesc": "Maximum allowed norm of the angular velocity in the landed state. Only used if neither airspeed nor groundspeed can be used for landing detection.", "name": "LNDFW_ROT_MAX", "shortDesc": "Fixed-wing land detector: max rotational speed", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 2.0, "group": "Land Detector", "longDesc": "Time the land conditions (speeds and acceleration) have to be satisfied to detect a landing.", "min": 0.1, "name": "LNDFW_TRIG_TIME", "rebootRequired": true, "shortDesc": "Fixed-wing land detection trigger time", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Land Detector", "longDesc": "Maximum horizontal velocity allowed in the landed state. A factor of 0.7 is applied in case of airspeed-less flying (either because no sensor is present or sensor data got invalid in flight).", "max": 20.0, "min": 0.5, "name": "LNDFW_VEL_XY_MAX", "shortDesc": "Fixed-wing land detector: Max horizontal velocity threshold", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Land Detector", "longDesc": "Maximum vertical velocity allowed in the landed state.", "max": 20.0, "min": 0.1, "name": "LNDFW_VEL_Z_MAX", "shortDesc": "Fixed-wing land detector: Max vertiacal velocity threshold", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 8.0, "group": "Land Detector", "longDesc": "Maximum horizontal (x,y body axes) acceleration allowed in the landed state", "max": 30.0, "min": 2.0, "name": "LNDFW_XYACC_MAX", "shortDesc": "Fixed-wing land detector: Max horizontal acceleration", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": 2.0, "group": "Land Detector", "longDesc": "The height above ground below which ground effect creates barometric altitude errors. A negative value indicates no ground effect.", "min": -1.0, "name": "LNDMC_ALT_GND", "shortDesc": "Ground effect altitude for multicopters", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 20.0, "group": "Land Detector", "longDesc": "Maximum allowed norm of the angular velocity (roll, pitch) in the landed state.", "name": "LNDMC_ROT_MAX", "shortDesc": "Multicopter max rotational speed", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Land Detector", "longDesc": "Total time it takes to go through all three land detection stages: ground contact, maybe landed, landed when all necessary conditions are constantly met.", "max": 10.0, "min": 0.1, "name": "LNDMC_TRIG_TIME", "shortDesc": "Multicopter land detection trigger time", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.5, "group": "Land Detector", "longDesc": "Maximum horizontal velocity allowed in the landed state", "name": "LNDMC_XY_VEL_MAX", "shortDesc": "Multicopter max horizontal velocity", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.25, "group": "Land Detector", "longDesc": "Vertical velocity threshold to detect landing. Has to be set lower than the expected minimal speed for landing, which is either MPC_LAND_SPEED or MPC_LAND_CRWL. This is enforced by an automatic check.", "min": 0.0, "name": "LNDMC_Z_VEL_MAX", "shortDesc": "Multicopter vertical velocity threshold", "type": "Float", "units": "m/s"}, {"category": "System", "default": 0, "group": "Land Detector", "longDesc": "Total flight time of this autopilot. Higher 32 bits of the value. Flight time in microseconds = (LND_FLIGHT_T_HI << 32) | LND_FLIGHT_T_LO.", "min": 0, "name": "LND_FLIGHT_T_HI", "shortDesc": "Total flight time in microseconds", "type": "Int32", "volatile": true}, {"category": "System", "default": 0, "group": "Land Detector", "longDesc": "Total flight time of this autopilot. Lower 32 bits of the value. Flight time in microseconds = (LND_FLIGHT_T_HI << 32) | LND_FLIGHT_T_LO.", "min": 0, "name": "LND_FLIGHT_T_LO", "shortDesc": "Total flight time in microseconds", "type": "Int32", "volatile": true}, {"category": "Standard", "decimalPlaces": 2, "default": 10.0, "group": "Landing Target Estimator", "longDesc": "Variance of acceleration measurement used for landing target position prediction. Higher values results in tighter following of the measurements and more lenient outlier rejection", "min": 0.01, "name": "LTEST_ACC_UNC", "shortDesc": "Acceleration uncertainty", "type": "Float", "units": "(m/s^2)^2"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.005, "group": "Landing Target Estimator", "longDesc": "Variance of the landing target measurement from the driver. Higher values result in less aggressive following of the measurement and a smoother output as well as fewer rejected measurements.", "name": "LTEST_MEAS_UNC", "shortDesc": "Landing target measurement uncertainty", "type": "Float", "units": "tan(rad)^2"}, {"category": "Standard", "default": 0, "group": "Landing Target Estimator", "longDesc": "Configure the mode of the landing target. Depending on the mode, the landing target observations are used differently to aid position estimation. Mode Moving: The landing target may be moving around while in the field of view of the vehicle. Landing target measurements are not used to aid positioning. Mode Stationary: The landing target is stationary. Measured velocity w.r.t. the landing target is used to aid velocity estimation.", "max": 1, "min": 0, "name": "LTEST_MODE", "shortDesc": "Landing target mode", "type": "Int32", "values": [{"description": "Moving", "value": 0}, {"description": "Stationary", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.1, "group": "Landing Target Estimator", "longDesc": "Initial variance of the relative landing target position in x and y direction", "min": 0.001, "name": "LTEST_POS_UNC_IN", "shortDesc": "Initial landing target position uncertainty", "type": "Float", "units": "m^2"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Landing Target Estimator", "longDesc": "Landing target x measurements are scaled by this factor before being used", "min": 0.01, "name": "LTEST_SCALE_X", "shortDesc": "Scale factor for sensor measurements in sensor x axis", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Landing Target Estimator", "longDesc": "Landing target y measurements are scaled by this factor before being used", "min": 0.01, "name": "LTEST_SCALE_Y", "shortDesc": "Scale factor for sensor measurements in sensor y axis", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Landing Target Estimator", "name": "LTEST_SENS_POS_X", "rebootRequired": true, "shortDesc": "X Position of IRLOCK in body frame (forward)", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Landing Target Estimator", "name": "LTEST_SENS_POS_Y", "rebootRequired": true, "shortDesc": "Y Position of IRLOCK in body frame (right)", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Landing Target Estimator", "name": "LTEST_SENS_POS_Z", "rebootRequired": true, "shortDesc": "Z Position of IRLOCK in body frame (downward)", "type": "Float", "units": "m"}, {"category": "Standard", "default": 2, "group": "Landing Target Estimator", "longDesc": "Default orientation of Yaw 90\u00b0", "max": 40, "min": -1, "name": "LTEST_SENS_ROT", "rebootRequired": true, "shortDesc": "Rotation of IRLOCK sensor relative to airframe", "type": "Int32", "values": [{"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.1, "group": "Landing Target Estimator", "longDesc": "Initial variance of the relative landing target velocity in x and y directions", "min": 0.001, "name": "LTEST_VEL_UNC_IN", "shortDesc": "Initial landing target velocity uncertainty", "type": "Float", "units": "(m/s)^2"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.012, "group": "Local Position Estimator", "longDesc": "Data sheet noise density = 150ug/sqrt(Hz) = 0.0015 m/s^2/sqrt(Hz) Larger than data sheet to account for tilt error.", "max": 2.0, "min": 1e-05, "name": "LPE_ACC_XY", "shortDesc": "Accelerometer xy noise density", "type": "Float", "units": "m/s^2/sqrt(Hz)"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.02, "group": "Local Position Estimator", "longDesc": "Data sheet noise density = 150ug/sqrt(Hz) = 0.0015 m/s^2/sqrt(Hz)", "max": 2.0, "min": 1e-05, "name": "LPE_ACC_Z", "shortDesc": "Accelerometer z noise density", "type": "Float", "units": "m/s^2/sqrt(Hz)"}, {"category": "Standard", "decimalPlaces": 2, "default": 3.0, "group": "Local Position Estimator", "max": 100.0, "min": 0.01, "name": "LPE_BAR_Z", "shortDesc": "Barometric presssure altitude z standard deviation", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Local Position Estimator", "name": "LPE_EN", "shortDesc": "Local position estimator enable (unsupported)", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": 3.0, "group": "Local Position Estimator", "max": 5.0, "min": 1.0, "name": "LPE_EPH_MAX", "shortDesc": "Max EPH allowed for GPS initialization", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 5.0, "group": "Local Position Estimator", "max": 5.0, "min": 1.0, "name": "LPE_EPV_MAX", "shortDesc": "Max EPV allowed for GPS initialization", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Local Position Estimator", "longDesc": "By initializing the estimator to the LPE_LAT/LON parameters when global information is unavailable", "max": 1, "min": 0, "name": "LPE_FAKE_ORIGIN", "shortDesc": "Enable publishing of a fake global position (e.g for AUTO missions using Optical Flow)", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.001, "group": "Local Position Estimator", "max": 2.0, "min": 0.0, "name": "LPE_FGYRO_HP", "shortDesc": "Flow gyro high pass filter cut off frequency", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Local Position Estimator", "max": 1.0, "min": -1.0, "name": "LPE_FLW_OFF_Z", "shortDesc": "Optical flow z offset from center", "type": "Float", "units": "m"}, {"category": "Standard", "default": 150, "group": "Local Position Estimator", "max": 255, "min": 0, "name": "LPE_FLW_QMIN", "shortDesc": "Optical flow minimum quality threshold", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 3, "default": 7.0, "group": "Local Position Estimator", "max": 10.0, "min": 0.1, "name": "LPE_FLW_R", "shortDesc": "Optical flow rotation (roll/pitch) noise gain", "type": "Float", "units": "m/s/rad"}, {"category": "Standard", "decimalPlaces": 3, "default": 7.0, "group": "Local Position Estimator", "max": 10.0, "min": 0.0, "name": "LPE_FLW_RR", "shortDesc": "Optical flow angular velocity noise gain", "type": "Float", "units": "m/rad"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.3, "group": "Local Position Estimator", "max": 10.0, "min": 0.1, "name": "LPE_FLW_SCALE", "shortDesc": "Optical flow scale", "type": "Float", "units": "m"}, {"bitmask": [{"description": "fuse GPS, requires GPS for alt. init", "index": 0}, {"description": "fuse optical flow", "index": 1}, {"description": "fuse vision position", "index": 2}, {"description": "fuse landing target", "index": 3}, {"description": "fuse land detector", "index": 4}, {"description": "pub agl as lpos down", "index": 5}, {"description": "flow gyro compensation", "index": 6}, {"description": "fuse baro", "index": 7}], "category": "Standard", "default": 145, "group": "Local Position Estimator", "longDesc": "Set bits in the following positions to enable: 0 : Set to true to fuse GPS data if available, also requires GPS for altitude init 1 : Set to true to fuse optical flow data if available 2 : Set to true to fuse vision position 3 : Set to true to enable landing target 4 : Set to true to fuse land detector 5 : Set to true to publish AGL as local position down component 6 : Set to true to enable flow gyro compensation 7 : Set to true to enable baro fusion default (145 - GPS, baro, land detector)", "max": 255, "min": 0, "name": "LPE_FUSION", "shortDesc": "Integer bitmask controlling data fusion", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.29, "group": "Local Position Estimator", "max": 0.4, "min": 0.0, "name": "LPE_GPS_DELAY", "shortDesc": "GPS delay compensaton", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.25, "group": "Local Position Estimator", "longDesc": "EPV used if greater than this value.", "max": 2.0, "min": 0.01, "name": "LPE_GPS_VXY", "shortDesc": "GPS xy velocity standard deviation", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.25, "group": "Local Position Estimator", "max": 2.0, "min": 0.01, "name": "LPE_GPS_VZ", "shortDesc": "GPS z velocity standard deviation", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Local Position Estimator", "max": 5.0, "min": 0.01, "name": "LPE_GPS_XY", "shortDesc": "Minimum GPS xy standard deviation, uses reported EPH if greater", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 3.0, "group": "Local Position Estimator", "max": 200.0, "min": 0.01, "name": "LPE_GPS_Z", "shortDesc": "Minimum GPS z standard deviation, uses reported EPV if greater", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Local Position Estimator", "max": 10.0, "min": 0.01, "name": "LPE_LAND_VXY", "shortDesc": "Land detector xy velocity standard deviation", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.03, "group": "Local Position Estimator", "max": 10.0, "min": 0.001, "name": "LPE_LAND_Z", "shortDesc": "Land detector z standard deviation", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 8, "default": 47.397742, "group": "Local Position Estimator", "max": 90.0, "min": -90.0, "name": "LPE_LAT", "shortDesc": "Local origin latitude for nav w/o GPS", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Local Position Estimator", "max": 1.0, "min": -1.0, "name": "LPE_LDR_OFF_Z", "shortDesc": "Lidar z offset from center of vehicle +down", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.03, "group": "Local Position Estimator", "max": 1.0, "min": 0.01, "name": "LPE_LDR_Z", "shortDesc": "Lidar z standard deviation", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 8, "default": 8.545594, "group": "Local Position Estimator", "max": 180.0, "min": -180.0, "name": "LPE_LON", "shortDesc": "Local origin longitude for nav w/o GPS", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0001, "group": "Local Position Estimator", "max": 10.0, "min": 0.0, "name": "LPE_LT_COV", "shortDesc": "Minimum landing target standard covariance, uses reported covariance if greater", "type": "Float", "units": "m^2"}, {"category": "Standard", "decimalPlaces": 8, "default": 0.001, "group": "Local Position Estimator", "max": 1.0, "min": 0.0, "name": "LPE_PN_B", "shortDesc": "Accel bias propagation noise density", "type": "Float", "units": "m/s^3/sqrt(Hz)"}, {"category": "Standard", "decimalPlaces": 8, "default": 0.1, "group": "Local Position Estimator", "longDesc": "Increase to trust measurements more. Decrease to trust model more.", "max": 1.0, "min": 0.0, "name": "LPE_PN_P", "shortDesc": "Position propagation noise density", "type": "Float", "units": "m/s/sqrt(Hz)"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.001, "group": "Local Position Estimator", "max": 1.0, "min": 0.0, "name": "LPE_PN_T", "shortDesc": "Terrain random walk noise density, hilly/outdoor (0.1), flat/Indoor (0.001)", "type": "Float", "units": "m/s/sqrt(Hz)"}, {"category": "Standard", "decimalPlaces": 8, "default": 0.1, "group": "Local Position Estimator", "longDesc": "Increase to trust measurements more. Decrease to trust model more.", "max": 1.0, "min": 0.0, "name": "LPE_PN_V", "shortDesc": "Velocity propagation noise density", "type": "Float", "units": "m/s^2/sqrt(Hz)"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Local Position Estimator", "max": 1.0, "min": -1.0, "name": "LPE_SNR_OFF_Z", "shortDesc": "Sonar z offset from center of vehicle +down", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.05, "group": "Local Position Estimator", "max": 1.0, "min": 0.01, "name": "LPE_SNR_Z", "shortDesc": "Sonar z standard deviation", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Local Position Estimator", "longDesc": "Used to calculate increased terrain random walk nosie due to movement.", "max": 100.0, "min": 0.0, "name": "LPE_T_MAX_GRADE", "shortDesc": "Terrain maximum percent grade, hilly/outdoor (100 = 45 deg), flat/Indoor (0 = 0 deg)", "type": "Float", "units": "%"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.001, "group": "Local Position Estimator", "max": 1.0, "min": 0.0001, "name": "LPE_VIC_P", "shortDesc": "Vicon position standard deviation", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Local Position Estimator", "longDesc": "Set to zero to enable automatic compensation from measurement timestamps", "max": 0.1, "min": 0.0, "name": "LPE_VIS_DELAY", "shortDesc": "Vision delay compensation", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.1, "group": "Local Position Estimator", "max": 1.0, "min": 0.01, "name": "LPE_VIS_XY", "shortDesc": "Vision xy standard deviation", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.5, "group": "Local Position Estimator", "max": 100.0, "min": 0.01, "name": "LPE_VIS_Z", "shortDesc": "Vision z standard deviation", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.3, "group": "Local Position Estimator", "max": 1.0, "min": 0.01, "name": "LPE_VXY_PUB", "shortDesc": "Required velocity xy standard deviation to publish position", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 0, "default": 5.0, "group": "Local Position Estimator", "max": 1000.0, "min": 5.0, "name": "LPE_X_LP", "shortDesc": "Cut frequency for state publication", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Local Position Estimator", "max": 5.0, "min": 0.3, "name": "LPE_Z_PUB", "shortDesc": "Required z standard deviation to publish altitude/ terrain", "type": "Float", "units": "m"}, {"category": "Standard", "default": 1, "group": "MAVLink", "longDesc": "This allows a ground control station to automatically find the drone on the local network.", "name": "MAV_0_BROADCAST", "shortDesc": "Broadcast heartbeats on local network for MAVLink instance 0", "type": "Int32", "values": [{"description": "Never broadcast", "value": 0}, {"description": "Always broadcast", "value": 1}, {"description": "Only multicast", "value": 2}]}, {"category": "Standard", "default": 2, "group": "MAVLink", "longDesc": "This is used to force flow control on or off for the the mavlink instance. By default it is auto detected. Use when auto detection fails.", "name": "MAV_0_FLOW_CTRL", "rebootRequired": true, "shortDesc": "Enable serial flow control for instance 0", "type": "Int32", "values": [{"description": "Force off", "value": 0}, {"description": "Force on", "value": 1}, {"description": "Auto-detected", "value": 2}]}, {"category": "Standard", "default": 1, "group": "MAVLink", "longDesc": "If enabled, forward incoming MAVLink messages to other MAVLink ports if the message is either broadcast or the target is not the autopilot. This allows for example a GCS to talk to a camera that is connected to the autopilot via MAVLink (on a different link than the GCS).", "name": "MAV_0_FORWARD", "rebootRequired": true, "shortDesc": "Enable MAVLink Message forwarding for instance 0", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.015, "group": "MAVLink", "increment": 0.001, "longDesc": "Positive real value that configures the transmission frequency of the HIGH_LATENCY2 stream for instance 0, configured in iridium mode. This parameter has no effect if the instance mode is different from iridium.", "max": 50.0, "min": 0.0, "name": "MAV_0_HL_FREQ", "rebootRequired": true, "shortDesc": "Configures the frequency of HIGH_LATENCY2 stream for instance 0", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "The MAVLink Mode defines the set of streamed messages (for example the vehicle's attitude) and their sending rates.", "name": "MAV_0_MODE", "rebootRequired": true, "shortDesc": "MAVLink Mode for instance 0", "type": "Int32", "values": [{"description": "Normal", "value": 0}, {"description": "Custom", "value": 1}, {"description": "Onboard", "value": 2}, {"description": "OSD", "value": 3}, {"description": "Magic", "value": 4}, {"description": "Config", "value": 5}, {"description": "Minimal", "value": 7}, {"description": "External Vision", "value": 8}, {"description": "Gimbal", "value": 10}, {"description": "Onboard Low Bandwidth", "value": 11}, {"description": "uAvionix", "value": 12}, {"description": "Low Bandwidth", "value": 13}]}, {"category": "Standard", "default": 1, "group": "MAVLink", "longDesc": "If enabled, MAVLink messages will be throttled according to `txbuf` field reported by radio_status. Requires a radio to send the mavlink message RADIO_STATUS.", "name": "MAV_0_RADIO_CTL", "rebootRequired": true, "shortDesc": "Enable software throttling of mavlink on instance 0", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1200, "group": "MAVLink", "longDesc": "Configure the maximum sending rate for the MAVLink streams in Bytes/sec. If the configured streams exceed the maximum rate, the sending rate of each stream is automatically decreased. If this is set to 0 a value of half of the theoretical maximum bandwidth is used. This corresponds to baudrate/20 Bytes/s (baudrate/10 = maximum data rate on 8N1-configured links).", "min": 0, "name": "MAV_0_RATE", "rebootRequired": true, "shortDesc": "Maximum MAVLink sending rate for instance 0", "type": "Int32", "units": "B/s"}, {"category": "Standard", "default": 14550, "group": "MAVLink", "longDesc": "If ethernet enabled and selected as configuration for MAVLink instance 0, selected remote port will be set and used in MAVLink instance 0.", "name": "MAV_0_REMOTE_PRT", "rebootRequired": true, "shortDesc": "MAVLink Remote Port for instance 0", "type": "Int32"}, {"category": "Standard", "default": 14556, "group": "MAVLink", "longDesc": "If ethernet enabled and selected as configuration for MAVLink instance 0, selected udp port will be set and used in MAVLink instance 0.", "name": "MAV_0_UDP_PRT", "rebootRequired": true, "shortDesc": "MAVLink Network Port for instance 0", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "This allows a ground control station to automatically find the drone on the local network.", "name": "MAV_1_BROADCAST", "shortDesc": "Broadcast heartbeats on local network for MAVLink instance 1", "type": "Int32", "values": [{"description": "Never broadcast", "value": 0}, {"description": "Always broadcast", "value": 1}, {"description": "Only multicast", "value": 2}]}, {"category": "Standard", "default": 2, "group": "MAVLink", "longDesc": "This is used to force flow control on or off for the the mavlink instance. By default it is auto detected. Use when auto detection fails.", "name": "MAV_1_FLOW_CTRL", "rebootRequired": true, "shortDesc": "Enable serial flow control for instance 1", "type": "Int32", "values": [{"description": "Force off", "value": 0}, {"description": "Force on", "value": 1}, {"description": "Auto-detected", "value": 2}]}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "If enabled, forward incoming MAVLink messages to other MAVLink ports if the message is either broadcast or the target is not the autopilot. This allows for example a GCS to talk to a camera that is connected to the autopilot via MAVLink (on a different link than the GCS).", "name": "MAV_1_FORWARD", "rebootRequired": true, "shortDesc": "Enable MAVLink Message forwarding for instance 1", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.015, "group": "MAVLink", "increment": 0.001, "longDesc": "Positive real value that configures the transmission frequency of the HIGH_LATENCY2 stream for instance 1, configured in iridium mode. This parameter has no effect if the instance mode is different from iridium.", "max": 50.0, "min": 0.0, "name": "MAV_1_HL_FREQ", "rebootRequired": true, "shortDesc": "Configures the frequency of HIGH_LATENCY2 stream for instance 1", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 2, "group": "MAVLink", "longDesc": "The MAVLink Mode defines the set of streamed messages (for example the vehicle's attitude) and their sending rates.", "name": "MAV_1_MODE", "rebootRequired": true, "shortDesc": "MAVLink Mode for instance 1", "type": "Int32", "values": [{"description": "Normal", "value": 0}, {"description": "Custom", "value": 1}, {"description": "Onboard", "value": 2}, {"description": "OSD", "value": 3}, {"description": "Magic", "value": 4}, {"description": "Config", "value": 5}, {"description": "Minimal", "value": 7}, {"description": "External Vision", "value": 8}, {"description": "Gimbal", "value": 10}, {"description": "Onboard Low Bandwidth", "value": 11}, {"description": "uAvionix", "value": 12}, {"description": "Low Bandwidth", "value": 13}]}, {"category": "Standard", "default": 1, "group": "MAVLink", "longDesc": "If enabled, MAVLink messages will be throttled according to `txbuf` field reported by radio_status. Requires a radio to send the mavlink message RADIO_STATUS.", "name": "MAV_1_RADIO_CTL", "rebootRequired": true, "shortDesc": "Enable software throttling of mavlink on instance 1", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "Configure the maximum sending rate for the MAVLink streams in Bytes/sec. If the configured streams exceed the maximum rate, the sending rate of each stream is automatically decreased. If this is set to 0 a value of half of the theoretical maximum bandwidth is used. This corresponds to baudrate/20 Bytes/s (baudrate/10 = maximum data rate on 8N1-configured links).", "min": 0, "name": "MAV_1_RATE", "rebootRequired": true, "shortDesc": "Maximum MAVLink sending rate for instance 1", "type": "Int32", "units": "B/s"}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "If ethernet enabled and selected as configuration for MAVLink instance 1, selected remote port will be set and used in MAVLink instance 1.", "name": "MAV_1_REMOTE_PRT", "rebootRequired": true, "shortDesc": "MAVLink Remote Port for instance 1", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "If ethernet enabled and selected as configuration for MAVLink instance 1, selected udp port will be set and used in MAVLink instance 1.", "name": "MAV_1_UDP_PRT", "rebootRequired": true, "shortDesc": "MAVLink Network Port for instance 1", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "This allows a ground control station to automatically find the drone on the local network.", "name": "MAV_2_BROADCAST", "shortDesc": "Broadcast heartbeats on local network for MAVLink instance 2", "type": "Int32", "values": [{"description": "Never broadcast", "value": 0}, {"description": "Always broadcast", "value": 1}, {"description": "Only multicast", "value": 2}]}, {"category": "Standard", "default": 2, "group": "MAVLink", "longDesc": "This is used to force flow control on or off for the the mavlink instance. By default it is auto detected. Use when auto detection fails.", "name": "MAV_2_FLOW_CTRL", "rebootRequired": true, "shortDesc": "Enable serial flow control for instance 2", "type": "Int32", "values": [{"description": "Force off", "value": 0}, {"description": "Force on", "value": 1}, {"description": "Auto-detected", "value": 2}]}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "If enabled, forward incoming MAVLink messages to other MAVLink ports if the message is either broadcast or the target is not the autopilot. This allows for example a GCS to talk to a camera that is connected to the autopilot via MAVLink (on a different link than the GCS).", "name": "MAV_2_FORWARD", "rebootRequired": true, "shortDesc": "Enable MAVLink Message forwarding for instance 2", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 3, "default": 0.015, "group": "MAVLink", "increment": 0.001, "longDesc": "Positive real value that configures the transmission frequency of the HIGH_LATENCY2 stream for instance 2, configured in iridium mode. This parameter has no effect if the instance mode is different from iridium.", "max": 50.0, "min": 0.0, "name": "MAV_2_HL_FREQ", "rebootRequired": true, "shortDesc": "Configures the frequency of HIGH_LATENCY2 stream for instance 2", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "The MAVLink Mode defines the set of streamed messages (for example the vehicle's attitude) and their sending rates.", "name": "MAV_2_MODE", "rebootRequired": true, "shortDesc": "MAVLink Mode for instance 2", "type": "Int32", "values": [{"description": "Normal", "value": 0}, {"description": "Custom", "value": 1}, {"description": "Onboard", "value": 2}, {"description": "OSD", "value": 3}, {"description": "Magic", "value": 4}, {"description": "Config", "value": 5}, {"description": "Minimal", "value": 7}, {"description": "External Vision", "value": 8}, {"description": "Gimbal", "value": 10}, {"description": "Onboard Low Bandwidth", "value": 11}, {"description": "uAvionix", "value": 12}, {"description": "Low Bandwidth", "value": 13}]}, {"category": "Standard", "default": 1, "group": "MAVLink", "longDesc": "If enabled, MAVLink messages will be throttled according to `txbuf` field reported by radio_status. Requires a radio to send the mavlink message RADIO_STATUS.", "name": "MAV_2_RADIO_CTL", "rebootRequired": true, "shortDesc": "Enable software throttling of mavlink on instance 2", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "Configure the maximum sending rate for the MAVLink streams in Bytes/sec. If the configured streams exceed the maximum rate, the sending rate of each stream is automatically decreased. If this is set to 0 a value of half of the theoretical maximum bandwidth is used. This corresponds to baudrate/20 Bytes/s (baudrate/10 = maximum data rate on 8N1-configured links).", "min": 0, "name": "MAV_2_RATE", "rebootRequired": true, "shortDesc": "Maximum MAVLink sending rate for instance 2", "type": "Int32", "units": "B/s"}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "If ethernet enabled and selected as configuration for MAVLink instance 2, selected remote port will be set and used in MAVLink instance 2.", "name": "MAV_2_REMOTE_PRT", "rebootRequired": true, "shortDesc": "MAVLink Remote Port for instance 2", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "If ethernet enabled and selected as configuration for MAVLink instance 2, selected udp port will be set and used in MAVLink instance 2.", "name": "MAV_2_UDP_PRT", "rebootRequired": true, "shortDesc": "MAVLink Network Port for instance 2", "type": "Int32"}, {"category": "Standard", "default": 1, "group": "MAVLink", "max": 250, "min": 1, "name": "MAV_COMP_ID", "rebootRequired": true, "shortDesc": "MAVLink component ID", "type": "Int32"}, {"category": "Standard", "default": 1, "group": "MAVLink", "longDesc": "If set to 1 incoming external setpoint messages will be directly forwarded to the controllers if in offboard control mode", "name": "MAV_FWDEXTSP", "shortDesc": "Forward external setpoint messages", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "MAVLink", "longDesc": "Disabling the parameter hash check functionality will make the mavlink instance stream parameters continuously.", "name": "MAV_HASH_CHK_EN", "shortDesc": "Parameter hash check", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "MAVLink", "longDesc": "The mavlink heartbeat message will not be forwarded if this parameter is set to 'disabled'. The main reason for disabling heartbeats to be forwarded is because they confuse dronekit.", "name": "MAV_HB_FORW_EN", "shortDesc": "Heartbeat message forwarding", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "MAVLink", "name": "MAV_PROTO_VER", "shortDesc": "MAVLink protocol version", "type": "Int32", "values": [{"description": "Default to 1, switch to 2 if GCS sends version 2", "value": 0}, {"description": "Always use version 1", "value": 1}, {"description": "Always use version 2", "value": 2}]}, {"category": "Standard", "default": 5, "group": "MAVLink", "longDesc": "If the connected radio stops reporting RADIO_STATUS for a certain time, a warning is triggered and, if MAV_X_RADIO_CTL is enabled, the software-flow control is reset.", "max": 250, "min": 1, "name": "MAV_RADIO_TOUT", "shortDesc": "Timeout in seconds for the RADIO_STATUS reports coming in", "type": "Int32", "units": "s"}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "When non-zero the MAVLink app will attempt to configure the SiK radio to this ID and re-set the parameter to 0. If the value is negative it will reset the complete radio config to factory defaults. Only applies if this mavlink instance is going through a SiK radio", "max": 240, "min": -1, "name": "MAV_SIK_RADIO_ID", "shortDesc": "MAVLink SiK Radio ID", "type": "Int32"}, {"category": "Standard", "default": 1, "group": "MAVLink", "max": 250, "min": 1, "name": "MAV_SYS_ID", "rebootRequired": true, "shortDesc": "MAVLink system ID", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "MAVLink", "max": 22, "min": 0, "name": "MAV_TYPE", "shortDesc": "MAVLink airframe type", "type": "Int32", "values": [{"description": "Generic micro air vehicle", "value": 0}, {"description": "Fixed wing aircraft", "value": 1}, {"description": "Quadrotor", "value": 2}, {"description": "Coaxial helicopter", "value": 3}, {"description": "Normal helicopter with tail rotor", "value": 4}, {"description": "Airship, controlled", "value": 7}, {"description": "Free balloon, uncontrolled", "value": 8}, {"description": "Ground rover", "value": 10}, {"description": "Surface vessel, boat, ship", "value": 11}, {"description": "Submarine", "value": 12}, {"description": "Hexarotor", "value": 13}, {"description": "Octorotor", "value": 14}, {"description": "Tricopter", "value": 15}, {"description": "VTOL Two-rotor Tailsitter", "value": 19}, {"description": "VTOL Quad-rotor Tailsitter", "value": 20}, {"description": "VTOL Tiltrotor", "value": 21}, {"description": "VTOL Standard (separate fixed rotors for hover and cruise flight)", "value": 22}, {"description": "VTOL Tailsitter", "value": 23}]}, {"category": "Standard", "default": 0, "group": "MAVLink", "longDesc": "If set to 1 incoming HIL GPS messages are parsed.", "name": "MAV_USEHILGPS", "shortDesc": "Use/Accept HIL GPS message even if not in HIL mode", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "Magnetometer Bias Estimator", "longDesc": "This enables continuous calibration of the magnetometers before takeoff using gyro data.", "name": "MBE_ENABLE", "rebootRequired": true, "shortDesc": "Enable online mag bias calibration", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 18.0, "group": "Magnetometer Bias Estimator", "increment": 0.1, "longDesc": "Increase to make the estimator more responsive Decrease to make the estimator more robust to noise", "max": 100.0, "min": 0.1, "name": "MBE_LEARN_GAIN", "shortDesc": "Mag bias estimator learning gain", "type": "Float"}, {"category": "Standard", "default": 1, "group": "Manual Control", "longDesc": "This determines if moving the left stick to the lower right arms and to the lower left disarms the vehicle.", "name": "MAN_ARM_GESTURE", "shortDesc": "Enable arm/disarm stick gesture", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Manual Control", "longDesc": "The timeout for holding the left stick to the lower left and the right stick to the lower right at the same time until the gesture kills the actuators one-way. A negative value disables the feature.", "max": 15.0, "min": -1.0, "name": "MAN_KILL_GEST_T", "shortDesc": "Trigger time for kill stick gesture", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Mission", "longDesc": "Ensure: gripper: NAV_CMD_DO_GRIPPER has released before continuing mission. winch: CMD_DO_WINCH has delivered before continuing mission. gimbal: CMD_DO_GIMBAL_MANAGER_PITCHYAW has reached the commanded orientation before beginning to take pictures.", "min": 0.0, "name": "MIS_COMMAND_TOUT", "shortDesc": "Timeout to allow the payload to execute the mission command", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 10000.0, "group": "Mission", "increment": 100.0, "longDesc": "There will be a warning message if the current waypoint is more distant than MIS_DIST_1WP from Home. Has no effect on mission validity. Set a value of zero or less to disable.", "max": 100000.0, "min": -1.0, "name": "MIS_DIST_1WP", "shortDesc": "Maximal horizontal distance from Home to first waypoint", "type": "Float", "units": "m"}, {"category": "Standard", "default": 30, "group": "Mission", "longDesc": "Minimum altitude above landing point that the vehicle will climb to after an aborted landing. Then vehicle will loiter in this altitude until further command is received. Only applies to fixed-wing vehicles.", "min": 0, "name": "MIS_LND_ABRT_ALT", "shortDesc": "Landing abort min altitude", "type": "Int32", "units": "m"}, {"category": "Standard", "default": 0, "group": "Mission", "longDesc": "If enabled, yaw commands will be sent to the mount and the vehicle will follow its heading towards the flight direction. If disabled, the vehicle will yaw towards the ROI.", "max": 1, "min": 0, "name": "MIS_MNT_YAW_CTL", "shortDesc": "Enable yaw control of the mount. (Only affects multicopters and ROI mission items)", "type": "Int32", "values": [{"description": "Disable", "value": 0}, {"description": "Enable", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 2.5, "group": "Mission", "increment": 0.5, "longDesc": "This is the relative altitude the system will take off to if not otherwise specified.", "min": 0.0, "name": "MIS_TAKEOFF_ALT", "shortDesc": "Default take-off altitude", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Mission", "longDesc": "Specifies if a mission has to contain a takeoff and/or mission landing. Validity of configured takeoffs/landings is checked independently of the setting here.", "name": "MIS_TKO_LAND_REQ", "shortDesc": "Mission takeoff/landing required", "type": "Int32", "values": [{"description": "No requirements", "value": 0}, {"description": "Require a takeoff", "value": 1}, {"description": "Require a landing", "value": 2}, {"description": "Require a takeoff and a landing", "value": 3}, {"description": "Require both a takeoff and a landing, or neither", "value": 4}, {"description": "Same as previous when landed, in-air require landing only if no valid VTOL approach is present", "value": 5}]}, {"category": "Standard", "decimalPlaces": 1, "default": 12.0, "group": "Mission", "increment": 1.0, "max": 90.0, "min": 0.0, "name": "MIS_YAW_ERR", "shortDesc": "Max yaw error in degrees needed for waypoint heading acceptance", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "Mission", "increment": 1.0, "longDesc": "If set > 0 it will ignore the target heading for normal waypoint acceptance. If the waypoint forces the heading the timeout will matter. For example on VTOL forwards transition. Mainly useful for VTOLs that have less yaw authority and might not reach target yaw in wind. Disabled by default.", "max": 20.0, "min": -1.0, "name": "MIS_YAW_TMT", "shortDesc": "Time in seconds we wait on reaching target heading at a waypoint if it is forced", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Mission", "max": 4, "min": 0, "name": "MPC_YAW_MODE", "shortDesc": "Heading behavior in autonomous modes", "type": "Int32", "values": [{"description": "towards waypoint", "value": 0}, {"description": "towards home", "value": 1}, {"description": "away from home", "value": 2}, {"description": "along trajectory", "value": 3}, {"description": "towards waypoint (yaw first)", "value": 4}, {"description": "yaw fixed", "value": 5}]}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Mission", "increment": 0.5, "longDesc": "Default acceptance radius, overridden by acceptance radius of waypoint if set. For fixed wing the npfg switch distance is used for horizontal acceptance.", "max": 200.0, "min": 0.05, "name": "NAV_ACC_RAD", "shortDesc": "Acceptance Radius", "type": "Float", "units": "m"}, {"category": "Standard", "default": 1, "group": "Mission", "name": "NAV_FORCE_VT", "shortDesc": "Force VTOL mode takeoff and land", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Mission", "longDesc": "Altitude acceptance used for the last waypoint before a fixed-wing landing. This is usually smaller than the standard vertical acceptance because close to the ground higher accuracy is required.", "max": 200.0, "min": 0.05, "name": "NAV_FW_ALTL_RAD", "shortDesc": "FW Altitude Acceptance Radius before a landing", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Mission", "increment": 0.5, "longDesc": "Acceptance radius for fixedwing altitude.", "max": 200.0, "min": 0.05, "name": "NAV_FW_ALT_RAD", "shortDesc": "FW Altitude Acceptance Radius", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 80.0, "group": "Mission", "increment": 0.5, "longDesc": "Default value of loiter radius in FW mode (e.g. for Loiter mode).", "max": 1000.0, "min": 25.0, "name": "NAV_LOITER_RAD", "shortDesc": "Loiter radius (FW only)", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.8, "group": "Mission", "increment": 0.5, "longDesc": "Acceptance radius for multicopter altitude.", "max": 200.0, "min": 0.05, "name": "NAV_MC_ALT_RAD", "shortDesc": "MC Altitude Acceptance Radius", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "Mission", "increment": 1.0, "longDesc": "Minimum height above ground the vehicle is allowed to descend to during Mission and RTL, excluding landing commands. Requires a distance sensor to be set up. Note: only prevents the vehicle from descending further, but does not force it to climb. Set to a negative value to disable.", "min": -1.0, "name": "NAV_MIN_GND_DIST", "shortDesc": "Minimum height above ground during Mission and RTL", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "Mission", "increment": 0.5, "longDesc": "This is the minimum altitude above Home the system will always obey in Loiter (Hold) mode if switched into this mode without specifying an altitude (e.g. through Loiter switch on RC). Doesn't affect Loiters that are part of Missions or that are entered through a reposition setpoint (\"Go to\"). Set to a negative value to disable.", "min": -1.0, "name": "NAV_MIN_LTR_ALT", "shortDesc": "Minimum Loiter altitude", "type": "Float", "units": "m"}, {"category": "Standard", "default": 1, "group": "Mission", "longDesc": "Enabling this will allow the system to respond to transponder data from e.g. ADSB transponders", "name": "NAV_TRAFF_AVOID", "shortDesc": "Set traffic avoidance mode", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Warn only", "value": 1}, {"description": "Return mode", "value": 2}, {"description": "Land mode", "value": 3}, {"description": "Position Hold mode", "value": 4}]}, {"category": "Standard", "default": 500.0, "group": "Mission", "longDesc": "Defines a crosstrack horizontal distance", "min": 500.0, "name": "NAV_TRAFF_A_HOR", "shortDesc": "Set NAV TRAFFIC AVOID horizontal distance", "type": "Float", "units": "m"}, {"category": "Standard", "default": 500.0, "group": "Mission", "max": 500.0, "min": 10.0, "name": "NAV_TRAFF_A_VER", "shortDesc": "Set NAV TRAFFIC AVOID vertical distance", "type": "Float", "units": "m"}, {"category": "Standard", "default": 60, "group": "Mission", "longDesc": "Minimum acceptable time until collsion. Assumes constant speed over 3d distance.", "max": 900000000, "min": 1, "name": "NAV_TRAFF_COLL_T", "shortDesc": "Estimated time until collision", "type": "Int32", "units": "s"}, {"category": "Standard", "default": 0, "group": "Mixer Output", "longDesc": "The air-mode enables the mixer to increase the total thrust of the multirotor in order to keep attitude and rate control even at low and high throttle. This function should be disabled during tuning as it will help the controller to diverge if the closed-loop is unstable (i.e. the vehicle is not tuned yet). Enabling air-mode for yaw requires the use of an arming switch.", "name": "MC_AIRMODE", "shortDesc": "Multicopter air-mode", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Roll/Pitch", "value": 1}, {"description": "Roll/Pitch/Yaw", "value": 2}]}, {"category": "Standard", "default": 0, "group": "Mount", "longDesc": "Set to true for servo gimbal, false for passthrough. This is required for a gimbal which is not capable of stabilizing itself and relies on the IMU's attitude estimation.", "max": 2, "min": 0, "name": "MNT_DO_STAB", "shortDesc": "Stabilize the mount", "type": "Int32", "values": [{"description": "Disable", "value": 0}, {"description": "Stabilize all axis", "value": 1}, {"description": "Stabilize yaw for absolute/lock mode.", "value": 2}]}, {"category": "Standard", "decimalPlaces": 1, "default": 90.0, "group": "Mount", "max": 90.0, "min": -90.0, "name": "MNT_LND_P_MAX", "shortDesc": "Pitch maximum when landed", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": -90.0, "group": "Mount", "max": 90.0, "min": -90.0, "name": "MNT_LND_P_MIN", "shortDesc": "Pitch minimum when landed", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0, "group": "Mount", "max": 6, "min": 0, "name": "MNT_MAN_PITCH", "shortDesc": "Auxiliary channel to control pitch (in AUX input or manual mode)", "type": "Int32", "values": [{"description": "Disable", "value": 0}, {"description": "AUX1", "value": 1}, {"description": "AUX2", "value": 2}, {"description": "AUX3", "value": 3}, {"description": "AUX4", "value": 4}, {"description": "AUX5", "value": 5}, {"description": "AUX6", "value": 6}]}, {"category": "Standard", "default": 0, "group": "Mount", "max": 6, "min": 0, "name": "MNT_MAN_ROLL", "shortDesc": "Auxiliary channel to control roll (in AUX input or manual mode)", "type": "Int32", "values": [{"description": "Disable", "value": 0}, {"description": "AUX1", "value": 1}, {"description": "AUX2", "value": 2}, {"description": "AUX3", "value": 3}, {"description": "AUX4", "value": 4}, {"description": "AUX5", "value": 5}, {"description": "AUX6", "value": 6}]}, {"category": "Standard", "default": 0, "group": "Mount", "max": 6, "min": 0, "name": "MNT_MAN_YAW", "shortDesc": "Auxiliary channel to control yaw (in AUX input or manual mode)", "type": "Int32", "values": [{"description": "Disable", "value": 0}, {"description": "AUX1", "value": 1}, {"description": "AUX2", "value": 2}, {"description": "AUX3", "value": 3}, {"description": "AUX4", "value": 4}, {"description": "AUX5", "value": 5}, {"description": "AUX6", "value": 6}]}, {"category": "Standard", "default": 154, "group": "Mount", "longDesc": "If MNT_MODE_OUT is MAVLink protocol v2, mount configure/control commands will be sent with this component ID.", "name": "MNT_MAV_COMPID", "shortDesc": "Mavlink Component ID of the mount", "type": "Int32"}, {"category": "Standard", "default": 1, "group": "Mount", "longDesc": "If MNT_MODE_OUT is MAVLink gimbal protocol v1, mount configure/control commands will be sent with this target ID.", "name": "MNT_MAV_SYSID", "shortDesc": "Mavlink System ID of the mount", "type": "Int32"}, {"category": "Standard", "default": -1, "group": "Mount", "longDesc": "This is the protocol used between the ground station and the autopilot. Recommended is Auto, RC only or MAVLink gimbal protocol v2. The rest will be deprecated.", "max": 4, "min": -1, "name": "MNT_MODE_IN", "rebootRequired": true, "shortDesc": "Mount input mode", "type": "Int32", "values": [{"description": "DISABLED", "value": -1}, {"description": "Auto (RC and MAVLink gimbal protocol v2)", "value": 0}, {"description": "RC", "value": 1}, {"description": "MAVLINK_ROI (protocol v1, to be deprecated)", "value": 2}, {"description": "MAVLINK_DO_MOUNT (protocol v1, to be deprecated)", "value": 3}, {"description": "MAVlink gimbal protocol v2", "value": 4}]}, {"category": "Standard", "default": 0, "group": "Mount", "longDesc": "This is the protocol used between the autopilot and a connected gimbal. Recommended is the MAVLink gimbal protocol v2 if the gimbal supports it.", "max": 2, "min": 0, "name": "MNT_MODE_OUT", "rebootRequired": true, "shortDesc": "Mount output mode", "type": "Int32", "values": [{"description": "AUX", "value": 0}, {"description": "MAVLink gimbal protocol v1", "value": 1}, {"description": "MAVLink gimbal protocol v2", "value": 2}]}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Mount", "max": 360.0, "min": -360.0, "name": "MNT_OFF_PITCH", "shortDesc": "Offset for pitch channel output in degrees", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Mount", "max": 360.0, "min": -360.0, "name": "MNT_OFF_ROLL", "shortDesc": "Offset for roll channel output in degrees", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Mount", "max": 360.0, "min": -360.0, "name": "MNT_OFF_YAW", "shortDesc": "Offset for yaw channel output in degrees", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 90.0, "group": "Mount", "max": 720.0, "min": 1.0, "name": "MNT_RANGE_PITCH", "shortDesc": "Range of pitch channel output in degrees (only in AUX output mode)", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 90.0, "group": "Mount", "max": 720.0, "min": 1.0, "name": "MNT_RANGE_ROLL", "shortDesc": "Range of roll channel output in degrees (only in AUX output mode)", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": 360.0, "group": "Mount", "max": 720.0, "min": 1.0, "name": "MNT_RANGE_YAW", "shortDesc": "Range of yaw channel output in degrees (only in AUX output mode)", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 30.0, "group": "Mount", "longDesc": "Full stick input [-1..1] translats to [-pitch rate..pitch rate].", "max": 90.0, "min": 1.0, "name": "MNT_RATE_PITCH", "shortDesc": "Angular pitch rate for manual input in degrees/second", "type": "Float", "units": "deg/s"}, {"category": "Standard", "default": 30.0, "group": "Mount", "longDesc": "Full stick input [-1..1] translats to [-yaw rate..yaw rate].", "max": 90.0, "min": 1.0, "name": "MNT_RATE_YAW", "shortDesc": "Angular yaw rate for manual input in degrees/second", "type": "Float", "units": "deg/s"}, {"category": "Standard", "default": 1, "group": "Mount", "max": 1, "min": 0, "name": "MNT_RC_IN_MODE", "shortDesc": "Input mode for RC gimbal input", "type": "Int32", "values": [{"description": "Angle", "value": 0}, {"description": "Angular rate", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Multicopter Acro Mode", "longDesc": "Exponential factor for tuning the input curve shape. 0 Purely linear input curve 1 Purely cubic input curve", "max": 1.0, "min": 0.0, "name": "MC_ACRO_EXPO", "shortDesc": "Acro mode roll, pitch expo factor", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Multicopter Acro Mode", "longDesc": "Exponential factor for tuning the input curve shape. 0 Purely linear input curve 1 Purely cubic input curve", "max": 1.0, "min": 0.0, "name": "MC_ACRO_EXPO_Y", "shortDesc": "Acro mode yaw expo factor", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 100.0, "group": "Multicopter Acro Mode", "increment": 5.0, "longDesc": "Full stick deflection leads to this rate.", "max": 1800.0, "min": 0.0, "name": "MC_ACRO_P_MAX", "shortDesc": "Acro mode maximum pitch rate", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 100.0, "group": "Multicopter Acro Mode", "increment": 5.0, "longDesc": "Full stick deflection leads to this rate.", "max": 1800.0, "min": 0.0, "name": "MC_ACRO_R_MAX", "shortDesc": "Acro mode maximum roll rate", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Multicopter Acro Mode", "longDesc": "\"Superexponential\" factor for refining the input curve shape tuned using MC_ACRO_EXPO. 0 Pure Expo function 0.7 reasonable shape enhancement for intuitive stick feel 0.95 very strong bent input curve only near maxima have effect", "max": 0.95, "min": 0.0, "name": "MC_ACRO_SUPEXPO", "shortDesc": "Acro mode roll, pitch super expo factor", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Multicopter Acro Mode", "longDesc": "\"Superexponential\" factor for refining the input curve shape tuned using MC_ACRO_EXPO_Y. 0 Pure Expo function 0.7 reasonable shape enhancement for intuitive stick feel 0.95 very strong bent input curve only near maxima have effect", "max": 0.95, "min": 0.0, "name": "MC_ACRO_SUPEXPOY", "shortDesc": "Acro mode yaw super expo factor", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 100.0, "group": "Multicopter Acro Mode", "increment": 5.0, "longDesc": "Full stick deflection leads to this rate.", "max": 1800.0, "min": 0.0, "name": "MC_ACRO_Y_MAX", "shortDesc": "Acro mode maximum yaw rate", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 220.0, "group": "Multicopter Attitude Control", "increment": 5.0, "longDesc": "Limit for pitch rate in manual and auto modes (except acro). Has effect for large rotations in autonomous mode, to avoid large control output and mixer saturation. This is not only limited by the vehicle's properties, but also by the maximum measurement rate of the gyro.", "max": 1800.0, "min": 0.0, "name": "MC_PITCHRATE_MAX", "shortDesc": "Max pitch rate", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 6.5, "group": "Multicopter Attitude Control", "increment": 0.1, "longDesc": "Pitch proportional gain, i.e. desired angular speed in rad/s for error 1 rad.", "max": 12.0, "min": 0.0, "name": "MC_PITCH_P", "shortDesc": "Pitch P gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 220.0, "group": "Multicopter Attitude Control", "increment": 5.0, "longDesc": "Limit for roll rate in manual and auto modes (except acro). Has effect for large rotations in autonomous mode, to avoid large control output and mixer saturation. This is not only limited by the vehicle's properties, but also by the maximum measurement rate of the gyro.", "max": 1800.0, "min": 0.0, "name": "MC_ROLLRATE_MAX", "shortDesc": "Max roll rate", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 6.5, "group": "Multicopter Attitude Control", "increment": 0.1, "longDesc": "Roll proportional gain, i.e. desired angular speed in rad/s for error 1 rad.", "max": 12.0, "min": 0.0, "name": "MC_ROLL_P", "shortDesc": "Roll P gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 200.0, "group": "Multicopter Attitude Control", "increment": 5.0, "max": 1800.0, "min": 0.0, "name": "MC_YAWRATE_MAX", "shortDesc": "Max yaw rate", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 2.8, "group": "Multicopter Attitude Control", "increment": 0.1, "longDesc": "Yaw proportional gain, i.e. desired angular speed in rad/s for error 1 rad.", "max": 5.0, "min": 0.0, "name": "MC_YAW_P", "shortDesc": "Yaw P gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.4, "group": "Multicopter Attitude Control", "increment": 0.1, "longDesc": "A fraction [0,1] deprioritizing yaw compared to roll and pitch in non-linear attitude control. Deprioritizing yaw is necessary because multicopters have much less control authority in yaw compared to the other axes and it makes sense because yaw is not critical for stable hovering or 3D navigation. For yaw control tuning use MC_YAW_P. This ratio has no impact on the yaw gain.", "max": 1.0, "min": 0.0, "name": "MC_YAW_WEIGHT", "shortDesc": "Yaw weight", "type": "Float"}, {"category": "Standard", "decimalPlaces": 0, "default": 20.0, "group": "Multicopter Attitude Control", "increment": 5.0, "longDesc": "Limits the acceleration of the yaw setpoint to avoid large control output and mixer saturation.", "max": 360.0, "min": 5.0, "name": "MPC_YAWRAUTO_ACC", "shortDesc": "Maximum yaw acceleration in autonomous modes", "type": "Float", "units": "deg/s^2"}, {"category": "Standard", "decimalPlaces": 0, "default": 60.0, "group": "Multicopter Attitude Control", "increment": 5.0, "longDesc": "Limits the rate of change of the yaw setpoint to avoid large control output and mixer saturation.", "max": 360.0, "min": 5.0, "name": "MPC_YAWRAUTO_MAX", "shortDesc": "Maximum yaw rate in autonomous modes", "type": "Float", "units": "deg/s"}, {"category": "Standard", "default": 0.4, "group": "Multicopter Position Control", "longDesc": "Only used in Position mode.", "max": 1.0, "min": 0.0, "name": "CP_DELAY", "shortDesc": "Average delay of the range sensor message plus the tracking delay of the position controller in seconds", "type": "Float", "units": "s"}, {"category": "Standard", "default": -1.0, "group": "Multicopter Position Control", "longDesc": "Only used in Position mode. Collision avoidance is disabled by setting this parameter to a negative value", "max": 15.0, "min": -1.0, "name": "CP_DIST", "shortDesc": "Minimum distance the vehicle should keep to all obstacles", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Multicopter Position Control", "longDesc": "Only used in Position mode.", "name": "CP_GO_NO_DATA", "shortDesc": "Boolean to allow moving into directions where there is no sensor data (outside FOV)", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 30.0, "group": "Multicopter Position Control", "longDesc": "Only used in Position mode.", "max": 90.0, "min": 0.0, "name": "CP_GUIDE_ANG", "shortDesc": "Angle left/right from the commanded setpoint by which the collision prevention algorithm can choose to change the setpoint direction", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Multicopter Position Control", "longDesc": "Setting this parameter to 0 disables the filter", "max": 2.0, "min": 0.0, "name": "MC_MAN_TILT_TAU", "shortDesc": "Manual tilt input filter time constant", "type": "Float", "units": "s"}, {"category": "Standard", "default": 1, "group": "Multicopter Position Control", "longDesc": "Set to decouple tilt from vertical acceleration. This provides smoother flight but slightly worse tracking in position and auto modes. Unset if accurate position tracking during dynamic maneuvers is more important than a smooth flight.", "name": "MPC_ACC_DECOUPLE", "shortDesc": "Acceleration to tilt coupling", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "Multicopter Position Control", "increment": 1.0, "max": 15.0, "min": 2.0, "name": "MPC_ACC_DOWN_MAX", "shortDesc": "Maximum downwards acceleration in climb rate controlled modes", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "When piloting manually, this parameter is only used in MPC_POS_MODE Acceleration based.", "max": 15.0, "min": 2.0, "name": "MPC_ACC_HOR", "shortDesc": "Acceleration for autonomous and for manual modes", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": 5.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "MPC_POS_MODE 1 just deceleration 4 not used, use MPC_ACC_HOR instead", "max": 15.0, "min": 2.0, "name": "MPC_ACC_HOR_MAX", "shortDesc": "Maximum horizontal acceleration", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 1, "default": 4.0, "group": "Multicopter Position Control", "increment": 1.0, "max": 15.0, "min": 2.0, "name": "MPC_ACC_UP_MAX", "shortDesc": "Maximum upwards acceleration in climb rate controlled modes", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "default": 2, "group": "Multicopter Position Control", "longDesc": "Control height 0: relative earth frame origin which may drift due to sensors 1: relative to ground (requires distance sensor) which changes with terrain variation. It will revert to relative earth frame if the distance to ground estimate becomes invalid. 2: relative to ground (requires distance sensor) when stationary and relative to earth frame when moving horizontally. The speed threshold is MPC_HOLD_MAX_XY", "max": 2, "min": 0, "name": "MPC_ALT_MODE", "shortDesc": "Altitude reference mode", "type": "Int32", "values": [{"description": "Altitude following", "value": 0}, {"description": "Terrain following", "value": 1}, {"description": "Terrain hold", "value": 2}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Multicopter Position Control", "increment": 0.01, "longDesc": "Does not apply to manual throttle and direct attitude piloting by stick.", "max": 1.0, "min": 0.0, "name": "MPC_HOLD_DZ", "shortDesc": "Deadzone for sticks in manual piloted modes", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.8, "group": "Multicopter Position Control", "longDesc": "Only used with MPC_POS_MODE Direct velocity or MPC_ALT_MODE 2", "max": 3.0, "min": 0.0, "name": "MPC_HOLD_MAX_XY", "shortDesc": "Maximum horizontal velocity for which position hold is enabled (use 0 to disable check)", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.6, "group": "Multicopter Position Control", "longDesc": "Only used with MPC_ALT_MODE 1", "max": 3.0, "min": 0.0, "name": "MPC_HOLD_MAX_Z", "shortDesc": "Maximum vertical velocity for which position hold is enabled (use 0 to disable check)", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 4.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "Limit the maximum jerk of the vehicle (how fast the acceleration can change). A lower value leads to smoother vehicle motions but also limited agility.", "max": 80.0, "min": 1.0, "name": "MPC_JERK_AUTO", "shortDesc": "Jerk limit in autonomous modes", "type": "Float", "units": "m/s^3"}, {"category": "Standard", "decimalPlaces": 0, "default": 8.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "Limit the maximum jerk (acceleration change) of the vehicle. A lower value leads to smoother motions but limits agility. Setting this to the maximum value essentially disables the limit. Only used with MPC_POS_MODE Acceleration based.", "max": 500.0, "min": 0.5, "name": "MPC_JERK_MAX", "shortDesc": "Maximum horizontal and vertical jerk in Position/Altitude mode", "type": "Float", "units": "m/s^3"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Multicopter Position Control", "longDesc": "Below this altitude descending velocity gets limited to a value between \"MPC_Z_VEL_MAX_DN\" (or \"MPC_Z_V_AUTO_DN\") and \"MPC_LAND_SPEED\" Value needs to be higher than \"MPC_LAND_ALT2\"", "max": 122.0, "min": 0.0, "name": "MPC_LAND_ALT1", "shortDesc": "Altitude for 1. step of slow landing (descend)", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Multicopter Position Control", "longDesc": "Below this altitude descending velocity gets limited to \"MPC_LAND_SPEED\" Value needs to be lower than \"MPC_LAND_ALT1\"", "max": 122.0, "min": 0.0, "name": "MPC_LAND_ALT2", "shortDesc": "Altitude for 2. step of slow landing (landing)", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Multicopter Position Control", "longDesc": "If a valid distance sensor measurement to the ground is available, limit descending velocity to \"MPC_LAND_CRWL\" below this altitude.", "max": 122.0, "min": 0.0, "name": "MPC_LAND_ALT3", "shortDesc": "Altitude for 3. step of slow landing", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.3, "group": "Multicopter Position Control", "longDesc": "Used below MPC_LAND_ALT3 if distance sensor data is availabe.", "min": 0.1, "name": "MPC_LAND_CRWL", "shortDesc": "Land crawl descend rate", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 0, "default": 1000.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "When nudging is enabled (see MPC_LAND_RC_HELP), this controls the maximum allowed horizontal displacement from the original landing point.", "min": 0.0, "name": "MPC_LAND_RADIUS", "shortDesc": "User assisted landing radius", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Multicopter Position Control", "longDesc": "Using stick input the vehicle can be moved horizontally and yawed. The descend speed is amended: stick full up - 0 stick centered - MPC_LAND_SPEED stick full down - 2 * MPC_LAND_SPEED Manual override during auto modes has to be disabled to use this feature (see COM_RC_OVERRIDE).", "max": 1, "min": 0, "name": "MPC_LAND_RC_HELP", "shortDesc": "Enable nudging based on user input during autonomous land routine", "type": "Int32", "values": [{"description": "Nudging disabled", "value": 0}, {"description": "Nudging enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 0.7, "group": "Multicopter Position Control", "min": 0.6, "name": "MPC_LAND_SPEED", "shortDesc": "Landing descend rate", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.08, "group": "Multicopter Position Control", "increment": 0.01, "longDesc": "The value is mapped to the lowest throttle stick position in Stabilized mode. Too low collective thrust leads to loss of roll/pitch/yaw torque control authority. Airmode is used to keep torque authority with zero thrust (see MC_AIRMODE).", "max": 1.0, "min": 0.0, "name": "MPC_MANTHR_MIN", "shortDesc": "Minimum collective thrust in Stabilized mode", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 0, "default": 35.0, "group": "Multicopter Position Control", "increment": 1.0, "max": 70.0, "min": 1.0, "name": "MPC_MAN_TILT_MAX", "shortDesc": "Maximal tilt angle in Stabilized or Altitude mode", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 0, "default": 150.0, "group": "Multicopter Position Control", "increment": 10.0, "max": 400.0, "min": 0.0, "name": "MPC_MAN_Y_MAX", "shortDesc": "Max manual yaw rate for Stabilized, Altitude, Position mode", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.08, "group": "Multicopter Position Control", "increment": 0.01, "longDesc": "Not used in Stabilized mode Setting this parameter to 0 disables the filter", "max": 5.0, "min": 0.0, "name": "MPC_MAN_Y_TAU", "shortDesc": "Manual yaw rate input filter time constant", "type": "Float", "units": "s"}, {"category": "Standard", "default": 4, "group": "Multicopter Position Control", "longDesc": "The supported sub-modes are: Direct velocity: Sticks directly map to velocity setpoints without smoothing. Also applies to vertical direction and Altitude mode. Useful for velocity control tuning. Acceleration based: Sticks map to acceleration and there's a virtual brake drag", "name": "MPC_POS_MODE", "shortDesc": "Position/Altitude mode variant", "type": "Int32", "values": [{"description": "Direct velocity", "value": 0}, {"description": "Acceleration based", "value": 4}]}, {"category": "Standard", "default": 0, "group": "Multicopter Position Control", "longDesc": "Defines how the throttle stick is mapped to collective thrust in Stabilized mode. Rescale to hover thrust estimate: Stick input is linearly rescaled, such that a centered throttle stick corresponds to the hover thrust estimator's output. No rescale: Directly map the stick 1:1 to the output. Can be useful with very low hover thrust which leads to much distortion and the upper half getting sensitive. Rescale to hover thrust parameter: Similar to rescaling to the hover thrust estimate, but it uses the hover thrust parameter value (see MPC_THR_HOVER) instead of estimated value. With MPC_THR_HOVER 0.5 it's equivalent to No rescale.", "name": "MPC_THR_CURVE", "shortDesc": "Thrust curve mapping in Stabilized Mode", "type": "Int32", "values": [{"description": "Rescale to estimate", "value": 0}, {"description": "No rescale", "value": 1}, {"description": "Rescale to parameter", "value": 2}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.5, "group": "Multicopter Position Control", "increment": 0.01, "longDesc": "Mapped to center throttle stick in Stabilized mode (see MPC_THR_CURVE). Used for initialization of the hover thrust estimator (see MPC_USE_HTE). The estimated hover thrust is used as base for zero vertical acceleration in altitude control. The hover thrust is important for land detection to work correctly.", "max": 0.8, "min": 0.1, "name": "MPC_THR_HOVER", "shortDesc": "Vertical thrust required to hover", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Multicopter Position Control", "increment": 0.05, "longDesc": "Limit allowed thrust e.g. for indoor test of overpowered vehicle.", "max": 1.0, "min": 0.0, "name": "MPC_THR_MAX", "shortDesc": "Maximum collective thrust in climb rate controlled modes", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.12, "group": "Multicopter Position Control", "increment": 0.01, "longDesc": "Too low thrust leads to loss of roll/pitch/yaw torque control authority. With airmode enabled this parameters can be set to 0 while still keeping torque authority (see MC_AIRMODE).", "max": 0.5, "min": 0.05, "name": "MPC_THR_MIN", "shortDesc": "Minimum collective thrust in climb rate controlled modes", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "Multicopter Position Control", "increment": 0.01, "longDesc": "Margin that is kept for horizontal control when higher priority vertical thrust is saturated. To avoid completely starving horizontal control with high vertical error.", "max": 0.5, "min": 0.0, "name": "MPC_THR_XY_MARG", "shortDesc": "Horizontal thrust margin", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 0, "default": 45.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "Absolute maximum for all velocity or acceleration controlled modes. Any higher value is truncated.", "max": 89.0, "min": 20.0, "name": "MPC_TILTMAX_AIR", "shortDesc": "Maximum tilt angle in air", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 0, "default": 12.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "Tighter tilt limit during takeoff to avoid tip over.", "max": 89.0, "min": 5.0, "name": "MPC_TILTMAX_LND", "shortDesc": "Maximum tilt during inital takeoff ramp", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 3.0, "group": "Multicopter Position Control", "longDesc": "Increasing this value will make climb rate controlled takeoff slower. If it's too slow the drone might scratch the ground and tip over. A time constant of 0 disables the ramp", "max": 5.0, "min": 0.0, "name": "MPC_TKO_RAMP_T", "shortDesc": "Smooth takeoff ramp time constant", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.5, "group": "Multicopter Position Control", "max": 5.0, "min": 1.0, "name": "MPC_TKO_SPEED", "shortDesc": "Takeoff climb rate", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 1, "group": "Multicopter Position Control", "longDesc": "Disable to use the fixed parameter MPC_THR_HOVER instead of the hover thrust estimate in the position controller. This parameter does not influence Stabilized mode throttle curve (see MPC_THR_CURVE).", "name": "MPC_USE_HTE", "shortDesc": "Use hover thrust estimate for altitude control", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Multicopter Position Control", "increment": 0.5, "longDesc": "A value of 0 disables the filter.", "max": 50.0, "min": 0.0, "name": "MPC_VELD_LP", "shortDesc": "Velocity derivative low pass cutoff frequency", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Multicopter Position Control", "increment": 0.5, "longDesc": "A value of 0 disables the filter.", "max": 50.0, "min": 0.0, "name": "MPC_VEL_LP", "shortDesc": "Velocity low pass cutoff frequency", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "Must be smaller than MPC_XY_VEL_MAX. The maximum sideways and backward speed can be set differently using MPC_VEL_MAN_SIDE and MPC_VEL_MAN_BACK, respectively.", "max": 20.0, "min": 3.0, "name": "MPC_VEL_MANUAL", "shortDesc": "Maximum horizontal velocity setpoint in Position mode", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "If set to a negative value or larger than MPC_VEL_MANUAL then MPC_VEL_MANUAL is used.", "max": 20.0, "min": -1.0, "name": "MPC_VEL_MAN_BACK", "shortDesc": "Maximum backward velocity in Position mode", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "If set to a negative value or larger than MPC_VEL_MANUAL then MPC_VEL_MANUAL is used.", "max": 20.0, "min": -1.0, "name": "MPC_VEL_MAN_SIDE", "shortDesc": "Maximum sideways velocity in Position mode", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Multicopter Position Control", "increment": 0.5, "longDesc": "A value of 0 disables the filter.", "max": 50.0, "min": 0.0, "name": "MPC_VEL_NF_BW", "shortDesc": "Velocity notch filter bandwidth", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Multicopter Position Control", "increment": 0.5, "longDesc": "The center frequency for the 2nd order notch filter on the velocity. A value of 0 disables the filter.", "max": 50.0, "min": 0.0, "name": "MPC_VEL_NF_FRQ", "shortDesc": "Velocity notch filter frequency", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 0, "default": 5.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "e.g. in Missions, RTL, Goto if the waypoint does not specify differently", "max": 20.0, "min": 3.0, "name": "MPC_XY_CRUISE", "shortDesc": "Default horizontal velocity in autonomous modes", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 2.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "The integration speed of the trajectory setpoint is linearly reduced with the horizontal position tracking error. When the error is above this parameter, the integration of the trajectory is stopped to wait for the drone. This value can be adjusted depending on the tracking capabilities of the vehicle.", "max": 10.0, "min": 0.1, "name": "MPC_XY_ERR_MAX", "shortDesc": "Maximum horizontal error allowed by the trajectory generator", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.6, "group": "Multicopter Position Control", "increment": 0.01, "longDesc": "The higher the value the less sensitivity the stick has around zero while still reaching the maximum value with full stick deflection. 0 Purely linear input curve 1 Purely cubic input curve", "max": 1.0, "min": 0.0, "name": "MPC_XY_MAN_EXPO", "shortDesc": "Manual position control stick exponential curve sensitivity", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.95, "group": "Multicopter Position Control", "increment": 0.1, "longDesc": "Defined as corrective velocity in m/s per m position error", "max": 2.0, "min": 0.0, "name": "MPC_XY_P", "shortDesc": "Proportional gain for horizontal position error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.5, "group": "Multicopter Position Control", "increment": 0.1, "max": 1.0, "min": 0.1, "name": "MPC_XY_TRAJ_P", "shortDesc": "Proportional gain for horizontal trajectory position error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": -10.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "If set to a value greater than zero, other parameters are automatically set (such as MPC_XY_VEL_MAX or MPC_VEL_MANUAL). If set to a negative value, the existing individual parameters are used.", "max": 20.0, "min": -20.0, "name": "MPC_XY_VEL_ALL", "shortDesc": "Overall Horizontal Velocity Limit", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "Multicopter Position Control", "increment": 0.02, "longDesc": "Defined as corrective acceleration in m/s^2 per m/s^2 velocity derivative", "max": 2.0, "min": 0.1, "name": "MPC_XY_VEL_D_ACC", "shortDesc": "Differential gain for horizontal velocity error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.4, "group": "Multicopter Position Control", "increment": 0.02, "longDesc": "Defined as correction acceleration in m/s^2 per m velocity integral Allows to eliminate steady state errors in disturbances like wind.", "max": 60.0, "min": 0.0, "name": "MPC_XY_VEL_I_ACC", "shortDesc": "Integral gain for horizontal velocity error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 12.0, "group": "Multicopter Position Control", "increment": 1.0, "longDesc": "Absolute maximum for all velocity controlled modes. Any higher value is truncated.", "max": 20.0, "min": 0.0, "name": "MPC_XY_VEL_MAX", "shortDesc": "Maximum horizontal velocity", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.8, "group": "Multicopter Position Control", "increment": 0.1, "longDesc": "Defined as corrective acceleration in m/s^2 per m/s velocity error", "max": 5.0, "min": 1.2, "name": "MPC_XY_VEL_P_ACC", "shortDesc": "Proportional gain for horizontal velocity error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.6, "group": "Multicopter Position Control", "increment": 0.01, "longDesc": "The higher the value the less sensitivity the stick has around zero while still reaching the maximum value with full stick deflection. 0 Purely linear input curve 1 Purely cubic input curve", "max": 1.0, "min": 0.0, "name": "MPC_YAW_EXPO", "shortDesc": "Manual control stick yaw rotation exponential curve", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.6, "group": "Multicopter Position Control", "increment": 0.01, "longDesc": "The higher the value the less sensitivity the stick has around zero while still reaching the maximum value with full stick deflection. 0 Purely linear input curve 1 Purely cubic input curve", "max": 1.0, "min": 0.0, "name": "MPC_Z_MAN_EXPO", "shortDesc": "Manual control stick vertical exponential curve", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Multicopter Position Control", "increment": 0.1, "longDesc": "Defined as corrective velocity in m/s per m position error", "max": 1.5, "min": 0.1, "name": "MPC_Z_P", "shortDesc": "Proportional gain for vertical position error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": -3.0, "group": "Multicopter Position Control", "increment": 0.5, "longDesc": "If set to a value greater than zero, other parameters are automatically set (such as MPC_Z_VEL_MAX_UP or MPC_LAND_SPEED). If set to a negative value, the existing individual parameters are used.", "max": 8.0, "min": -3.0, "name": "MPC_Z_VEL_ALL", "shortDesc": "Overall Vertical Velocity Limit", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Multicopter Position Control", "increment": 0.02, "longDesc": "Defined as corrective acceleration in m/s^2 per m/s^2 velocity derivative", "max": 2.0, "min": 0.0, "name": "MPC_Z_VEL_D_ACC", "shortDesc": "Differential gain for vertical velocity error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 2.0, "group": "Multicopter Position Control", "increment": 0.1, "longDesc": "Defined as corrective acceleration in m/s^2 per m velocity integral", "max": 3.0, "min": 0.2, "name": "MPC_Z_VEL_I_ACC", "shortDesc": "Integral gain for vertical velocity error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.5, "group": "Multicopter Position Control", "increment": 0.1, "longDesc": "Absolute maximum for all climb rate controlled modes. In manually piloted modes full stick deflection commands this velocity. For default autonomous velocity see MPC_Z_V_AUTO_UP", "max": 4.0, "min": 0.5, "name": "MPC_Z_VEL_MAX_DN", "shortDesc": "Maximum descent velocity", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "Multicopter Position Control", "increment": 0.1, "longDesc": "Absolute maximum for all climb rate controlled modes. In manually piloted modes full stick deflection commands this velocity. For default autonomous velocity see MPC_Z_V_AUTO_UP", "max": 8.0, "min": 0.5, "name": "MPC_Z_VEL_MAX_UP", "shortDesc": "Maximum ascent velocity", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 4.0, "group": "Multicopter Position Control", "increment": 0.1, "longDesc": "Defined as corrective acceleration in m/s^2 per m/s velocity error", "max": 15.0, "min": 2.0, "name": "MPC_Z_VEL_P_ACC", "shortDesc": "Proportional gain for vertical velocity error", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.5, "group": "Multicopter Position Control", "increment": 0.5, "longDesc": "For manual modes and offboard, see MPC_Z_VEL_MAX_DN", "max": 4.0, "min": 0.5, "name": "MPC_Z_V_AUTO_DN", "shortDesc": "Descent velocity in autonomous modes", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "Multicopter Position Control", "increment": 0.5, "longDesc": "For manually controlled modes and offboard see MPC_Z_VEL_MAX_UP", "max": 8.0, "min": 0.5, "name": "MPC_Z_V_AUTO_UP", "shortDesc": "Ascent velocity in autonomous modes", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": -0.4, "group": "Multicopter Position Control", "increment": 0.05, "longDesc": "Changes the overall responsiveness of the vehicle. The higher the value, the faster the vehicle will react. If set to a value greater than zero, other parameters are automatically set (such as the acceleration or jerk limits). If set to a negative value, the existing individual parameters are used.", "max": 1.0, "min": -1.0, "name": "SYS_VEHICLE_RESP", "shortDesc": "Responsiveness", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Multicopter Position Control", "name": "WV_EN", "shortDesc": "Enable weathervane", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1.0, "group": "Multicopter Position Control", "max": 5.0, "min": 0.0, "name": "WV_ROLL_MIN", "shortDesc": "Minimum roll angle setpoint for weathervane controller to demand a yaw-rate", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 90.0, "group": "Multicopter Position Control", "max": 120.0, "min": 0.0, "name": "WV_YRATE_MAX", "shortDesc": "Maximum yawrate the weathervane controller is allowed to demand", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 3.0, "group": "Multicopter Position Slow Mode", "increment": 0.1, "longDesc": "This value is used in slow mode if no aux channel is mapped and no limit is commanded through MAVLink.", "min": 0.1, "name": "MC_SLOW_DEF_HVEL", "shortDesc": "Default horizontal velocity limit", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Multicopter Position Slow Mode", "increment": 0.1, "longDesc": "This value is used in slow mode if no aux channel is mapped and no limit is commanded through MAVLink.", "min": 0.1, "name": "MC_SLOW_DEF_VVEL", "shortDesc": "Default vertical velocity limit", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 0, "default": 45.0, "group": "Multicopter Position Slow Mode", "increment": 0.1, "longDesc": "This value is used in slow mode if no aux channel is mapped and no limit is commanded through MAVLink.", "min": 1.0, "name": "MC_SLOW_DEF_YAWR", "shortDesc": "Default yaw rate limit", "type": "Float", "units": "deg/s"}, {"category": "Standard", "default": 0, "group": "Multicopter Position Slow Mode", "name": "MC_SLOW_MAP_HVEL", "shortDesc": "Manual input mapped to scale horizontal velocity in position slow mode", "type": "Int32", "values": [{"description": "No rescaling", "value": 0}, {"description": "AUX1", "value": 1}, {"description": "AUX2", "value": 2}, {"description": "AUX3", "value": 3}, {"description": "AUX4", "value": 4}, {"description": "AUX5", "value": 5}, {"description": "AUX6", "value": 6}]}, {"category": "Standard", "default": 0, "group": "Multicopter Position Slow Mode", "name": "MC_SLOW_MAP_PTCH", "shortDesc": "RC_MAP_AUX{N} to allow for gimbal pitch rate control in position slow mode", "type": "Int32", "values": [{"description": "No pitch rate input", "value": 0}, {"description": "AUX1", "value": 1}, {"description": "AUX2", "value": 2}, {"description": "AUX3", "value": 3}, {"description": "AUX4", "value": 4}, {"description": "AUX5", "value": 5}, {"description": "AUX6", "value": 6}]}, {"category": "Standard", "default": 0, "group": "Multicopter Position Slow Mode", "name": "MC_SLOW_MAP_VVEL", "shortDesc": "Manual input mapped to scale vertical velocity in position slow mode", "type": "Int32", "values": [{"description": "No rescaling", "value": 0}, {"description": "AUX1", "value": 1}, {"description": "AUX2", "value": 2}, {"description": "AUX3", "value": 3}, {"description": "AUX4", "value": 4}, {"description": "AUX5", "value": 5}, {"description": "AUX6", "value": 6}]}, {"category": "Standard", "default": 0, "group": "Multicopter Position Slow Mode", "name": "MC_SLOW_MAP_YAWR", "shortDesc": "Manual input mapped to scale yaw rate in position slow mode", "type": "Int32", "values": [{"description": "No rescaling", "value": 0}, {"description": "AUX1", "value": 1}, {"description": "AUX2", "value": 2}, {"description": "AUX3", "value": 3}, {"description": "AUX4", "value": 4}, {"description": "AUX5", "value": 5}, {"description": "AUX6", "value": 6}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "Multicopter Position Slow Mode", "increment": 0.1, "longDesc": "The lowest input maps and is clamped to this velocity.", "min": 0.1, "name": "MC_SLOW_MIN_HVEL", "shortDesc": "Horizontal velocity lower limit", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "Multicopter Position Slow Mode", "increment": 0.1, "longDesc": "The lowest input maps and is clamped to this velocity.", "min": 0.1, "name": "MC_SLOW_MIN_VVEL", "shortDesc": "Vertical velocity lower limit", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 0, "default": 3.0, "group": "Multicopter Position Slow Mode", "increment": 0.1, "longDesc": "The lowest input maps and is clamped to this rate.", "min": 1.0, "name": "MC_SLOW_MIN_YAWR", "shortDesc": "Yaw rate lower limit", "type": "Float", "units": "deg/s"}, {"category": "Standard", "default": 0, "group": "Multicopter Rate Control", "longDesc": "This compensates for voltage drop of the battery over time by attempting to normalize performance across the operating range of the battery. The copter should constantly behave as if it was fully charged with reduced max acceleration at lower battery percentages. i.e. if hover is at 0.5 throttle at 100% battery, it will still be 0.5 at 60% battery.", "name": "MC_BAT_SCALE_EN", "shortDesc": "Battery power level scaler", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 4, "default": 0.003, "group": "Multicopter Rate Control", "increment": 0.0005, "longDesc": "Pitch rate differential gain. Small values help reduce fast oscillations. If value is too big oscillations will appear again.", "min": 0.0, "name": "MC_PITCHRATE_D", "shortDesc": "Pitch rate D gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.0, "group": "Multicopter Rate Control", "longDesc": "Improves tracking performance.", "min": 0.0, "name": "MC_PITCHRATE_FF", "shortDesc": "Pitch rate feedforward", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.2, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Pitch rate integral gain. Can be set to compensate static thrust difference or gravity center offset.", "min": 0.0, "name": "MC_PITCHRATE_I", "shortDesc": "Pitch rate I gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 4, "default": 1.0, "group": "Multicopter Rate Control", "increment": 0.0005, "longDesc": "Global gain of the controller. This gain scales the P, I and D terms of the controller: output = MC_PITCHRATE_K * (MC_PITCHRATE_P * error + MC_PITCHRATE_I * error_integral + MC_PITCHRATE_D * error_derivative) Set MC_PITCHRATE_P=1 to implement a PID in the ideal form. Set MC_PITCHRATE_K=1 to implement a PID in the parallel form.", "max": 5.0, "min": 0.01, "name": "MC_PITCHRATE_K", "shortDesc": "Pitch rate controller gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.15, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Pitch rate proportional gain, i.e. control output for angular speed error 1 rad/s.", "max": 0.6, "min": 0.01, "name": "MC_PITCHRATE_P", "shortDesc": "Pitch rate P gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Pitch rate integrator limit. Can be set to increase the amount of integrator available to counteract disturbances or reduced to improve settling time after large pitch moment trim changes.", "min": 0.0, "name": "MC_PR_INT_LIM", "shortDesc": "Pitch rate integrator limit", "type": "Float"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.003, "group": "Multicopter Rate Control", "increment": 0.0005, "longDesc": "Roll rate differential gain. Small values help reduce fast oscillations. If value is too big oscillations will appear again.", "max": 0.01, "min": 0.0, "name": "MC_ROLLRATE_D", "shortDesc": "Roll rate D gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.0, "group": "Multicopter Rate Control", "longDesc": "Improves tracking performance.", "min": 0.0, "name": "MC_ROLLRATE_FF", "shortDesc": "Roll rate feedforward", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.2, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Roll rate integral gain. Can be set to compensate static thrust difference or gravity center offset.", "min": 0.0, "name": "MC_ROLLRATE_I", "shortDesc": "Roll rate I gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 4, "default": 1.0, "group": "Multicopter Rate Control", "increment": 0.0005, "longDesc": "Global gain of the controller. This gain scales the P, I and D terms of the controller: output = MC_ROLLRATE_K * (MC_ROLLRATE_P * error + MC_ROLLRATE_I * error_integral + MC_ROLLRATE_D * error_derivative) Set MC_ROLLRATE_P=1 to implement a PID in the ideal form. Set MC_ROLLRATE_K=1 to implement a PID in the parallel form.", "max": 5.0, "min": 0.01, "name": "MC_ROLLRATE_K", "shortDesc": "Roll rate controller gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.15, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Roll rate proportional gain, i.e. control output for angular speed error 1 rad/s.", "max": 0.5, "min": 0.01, "name": "MC_ROLLRATE_P", "shortDesc": "Roll rate P gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Roll rate integrator limit. Can be set to increase the amount of integrator available to counteract disturbances or reduced to improve settling time after large roll moment trim changes.", "min": 0.0, "name": "MC_RR_INT_LIM", "shortDesc": "Roll rate integrator limit", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Yaw rate differential gain. Small values help reduce fast oscillations. If value is too big oscillations will appear again.", "min": 0.0, "name": "MC_YAWRATE_D", "shortDesc": "Yaw rate D gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.0, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Improves tracking performance.", "min": 0.0, "name": "MC_YAWRATE_FF", "shortDesc": "Yaw rate feedforward", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Yaw rate integral gain. Can be set to compensate static thrust difference or gravity center offset.", "min": 0.0, "name": "MC_YAWRATE_I", "shortDesc": "Yaw rate I gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 4, "default": 1.0, "group": "Multicopter Rate Control", "increment": 0.0005, "longDesc": "Global gain of the controller. This gain scales the P, I and D terms of the controller: output = MC_YAWRATE_K * (MC_YAWRATE_P * error + MC_YAWRATE_I * error_integral + MC_YAWRATE_D * error_derivative) Set MC_YAWRATE_P=1 to implement a PID in the ideal form. Set MC_YAWRATE_K=1 to implement a PID in the parallel form.", "max": 5.0, "min": 0.0, "name": "MC_YAWRATE_K", "shortDesc": "Yaw rate controller gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Yaw rate proportional gain, i.e. control output for angular speed error 1 rad/s.", "max": 0.6, "min": 0.0, "name": "MC_YAWRATE_P", "shortDesc": "Yaw rate P gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 2.0, "group": "Multicopter Rate Control", "longDesc": "Reduces vibrations by lowering high frequency torque caused by rotor acceleration. 0 disables the filter", "max": 10.0, "min": 0.0, "name": "MC_YAW_TQ_CUTOFF", "shortDesc": "Low pass filter cutoff frequency for yaw torque setpoint", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "Multicopter Rate Control", "increment": 0.01, "longDesc": "Yaw rate integrator limit. Can be set to increase the amount of integrator available to counteract disturbances or reduced to improve settling time after large yaw moment trim changes.", "min": 0.0, "name": "MC_YR_INT_LIM", "shortDesc": "Yaw rate integrator limit", "type": "Float"}, {"category": "Standard", "default": 0, "group": "OSD", "longDesc": "Controls the vertical position of the crosshair display. Resolution is limited by OSD to 15 discrete values. Negative values will display the crosshairs below the horizon", "max": 8, "min": -8, "name": "OSD_CH_HEIGHT", "shortDesc": "OSD Crosshairs Height", "type": "Int32"}, {"category": "Standard", "default": 500, "group": "OSD", "longDesc": "Amount of time in milliseconds to dwell at the beginning of the display, when scrolling.", "max": 10000, "min": 100, "name": "OSD_DWELL_TIME", "shortDesc": "OSD Dwell Time (ms)", "type": "Int32"}, {"category": "Standard", "default": 3, "group": "OSD", "longDesc": "Minimum security of log level to display on the OSD.", "name": "OSD_LOG_LEVEL", "shortDesc": "OSD Warning Level", "type": "Int32"}, {"category": "Standard", "default": 125, "group": "OSD", "longDesc": "Scroll rate in milliseconds for OSD messages longer than available character width. This is lower-bounded by the nominal loop rate of this module.", "max": 1000, "min": 100, "name": "OSD_SCROLL_RATE", "shortDesc": "OSD Scroll Rate (ms)", "type": "Int32"}, {"bitmask": [{"description": "CRAFT_NAME", "index": 0}, {"description": "DISARMED", "index": 1}, {"description": "GPS_LAT", "index": 2}, {"description": "GPS_LON", "index": 3}, {"description": "GPS_SATS", "index": 4}, {"description": "GPS_SPEED", "index": 5}, {"description": "HOME_DIST", "index": 6}, {"description": "HOME_DIR", "index": 7}, {"description": "MAIN_BATT_VOLTAGE", "index": 8}, {"description": "CURRENT_DRAW", "index": 9}, {"description": "MAH_DRAWN", "index": 10}, {"description": "RSSI_VALUE", "index": 11}, {"description": "ALTITUDE", "index": 12}, {"description": "NUMERICAL_VARIO", "index": 13}, {"description": "(unused) FLYMODE", "index": 14}, {"description": "(unused) ESC_TMP", "index": 15}, {"description": "(unused) PITCH_ANGLE", "index": 16}, {"description": "(unused) ROLL_ANGLE", "index": 17}, {"description": "CROSSHAIRS", "index": 18}, {"description": "AVG_CELL_VOLTAGE", "index": 19}, {"description": "(unused) HORIZON_SIDEBARS", "index": 20}, {"description": "POWER", "index": 21}], "category": "Standard", "default": 16383, "group": "OSD", "longDesc": "Configure / toggle support display options.", "max": 4194303, "min": 0, "name": "OSD_SYMBOLS", "shortDesc": "OSD Symbol Selection", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "PWM Outputs", "increment": 0.1, "longDesc": "Parameter used to model the nonlinear relationship between motor control signal (e.g. PWM) and static thrust. The model is: rel_thrust = factor * rel_signal^2 + (1-factor) * rel_signal, where rel_thrust is the normalized thrust between 0 and 1, and rel_signal is the relative motor control signal between 0 and 1.", "max": 1.0, "min": 0.0, "name": "THR_MDL_FAC", "shortDesc": "Thrust to motor control signal model parameter", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Payload Deliverer", "name": "PD_GRIPPER_EN", "rebootRequired": true, "shortDesc": "Enable Gripper actuation in Payload Deliverer", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 3.0, "group": "Payload Deliverer", "longDesc": "Maximum time Gripper will wait while the successful griper actuation isn't recognised. If the gripper has no feedback sensor, it will simply wait for this time before considering gripper actuation successful and publish a 'VehicleCommandAck' signaling successful gripper action", "min": 0.0, "name": "PD_GRIPPER_TO", "shortDesc": "Timeout for successful gripper actuation acknowledgement", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Payload Deliverer", "max": 0, "min": -1, "name": "PD_GRIPPER_TYPE", "shortDesc": "Type of Gripper (Servo, etc.)", "type": "Int32", "values": [{"description": "Undefined", "value": -1}, {"description": "Servo", "value": 0}]}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Precision Land", "increment": 0.5, "longDesc": "Time after which the landing target is considered lost without any new measurements.", "max": 50.0, "min": 0.0, "name": "PLD_BTOUT", "shortDesc": "Landing Target Timeout", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Precision Land", "increment": 0.1, "longDesc": "Allow final approach (without horizontal positioning) if losing landing target closer than this to the ground.", "max": 10.0, "min": 0.0, "name": "PLD_FAPPR_ALT", "shortDesc": "Final approach altitude", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "Precision Land", "increment": 0.1, "longDesc": "Start descending if closer above landing target than this.", "max": 10.0, "min": 0.0, "name": "PLD_HACC_RAD", "shortDesc": "Horizontal acceptance radius", "type": "Float", "units": "m"}, {"category": "Standard", "default": 3, "group": "Precision Land", "longDesc": "Maximum number of times to search for the landing target if it is lost during the precision landing.", "max": 100, "min": 0, "name": "PLD_MAX_SRCH", "shortDesc": "Maximum number of search attempts", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Precision Land", "increment": 0.1, "longDesc": "Altitude above home to which to climb when searching for the landing target.", "max": 100.0, "min": 0.0, "name": "PLD_SRCH_ALT", "shortDesc": "Search altitude", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Precision Land", "increment": 0.1, "longDesc": "Time allowed to search for the landing target before falling back to normal landing.", "max": 100.0, "min": 0.0, "name": "PLD_SRCH_TOUT", "shortDesc": "Search timeout", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Pure Pursuit", "increment": 0.01, "longDesc": "Lower value -> More aggressive controller (beware overshoot/oscillations)", "max": 100.0, "min": 0.1, "name": "PP_LOOKAHD_GAIN", "shortDesc": "Tuning parameter for the pure pursuit controller", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 10.0, "group": "Pure Pursuit", "increment": 0.01, "max": 100.0, "min": 0.1, "name": "PP_LOOKAHD_MAX", "shortDesc": "Maximum lookahead distance for the pure pursuit controller", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Pure Pursuit", "increment": 0.01, "max": 100.0, "min": 0.1, "name": "PP_LOOKAHD_MIN", "shortDesc": "Minimum lookahead distance for the pure pursuit controller", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC10_DZ", "shortDesc": "RC channel 10 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC10_MAX", "shortDesc": "RC channel 10 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC10_MIN", "shortDesc": "RC channel 10 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC10_REV", "shortDesc": "RC channel 10 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC10_TRIM", "shortDesc": "RC channel 10 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC11_DZ", "shortDesc": "RC channel 11 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC11_MAX", "shortDesc": "RC channel 11 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC11_MIN", "shortDesc": "RC channel 11 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC11_REV", "shortDesc": "RC channel 11 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC11_TRIM", "shortDesc": "RC channel 11 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC12_DZ", "shortDesc": "RC channel 12 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC12_MAX", "shortDesc": "RC channel 12 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC12_MIN", "shortDesc": "RC channel 12 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC12_REV", "shortDesc": "RC channel 12 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC12_TRIM", "shortDesc": "RC channel 12 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC13_DZ", "shortDesc": "RC channel 13 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC13_MAX", "shortDesc": "RC channel 13 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC13_MIN", "shortDesc": "RC channel 13 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC13_REV", "shortDesc": "RC channel 13 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC13_TRIM", "shortDesc": "RC channel 13 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC14_DZ", "shortDesc": "RC channel 14 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC14_MAX", "shortDesc": "RC channel 14 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC14_MIN", "shortDesc": "RC channel 14 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC14_REV", "shortDesc": "RC channel 14 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC14_TRIM", "shortDesc": "RC channel 14 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC15_DZ", "shortDesc": "RC channel 15 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC15_MAX", "shortDesc": "RC channel 15 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC15_MIN", "shortDesc": "RC channel 15 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC15_REV", "shortDesc": "RC channel 15 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC15_TRIM", "shortDesc": "RC channel 15 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC16_DZ", "shortDesc": "RC channel 16 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC16_MAX", "shortDesc": "RC channel 16 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC16_MIN", "shortDesc": "RC channel 16 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC16_REV", "shortDesc": "RC channel 16 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC16_TRIM", "shortDesc": "RC channel 16 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC17_DZ", "shortDesc": "RC channel 17 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC17_MAX", "shortDesc": "RC channel 17 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC17_MIN", "shortDesc": "RC channel 17 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC17_REV", "shortDesc": "RC channel 17 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC17_TRIM", "shortDesc": "RC channel 17 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC18_DZ", "shortDesc": "RC channel 18 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC18_MAX", "shortDesc": "RC channel 18 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC18_MIN", "shortDesc": "RC channel 18 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC18_REV", "shortDesc": "RC channel 18 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC18_TRIM", "shortDesc": "RC channel 18 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 10.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC1_DZ", "shortDesc": "RC channel 1 dead zone", "type": "Float", "units": "us"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for RC channel 1", "max": 2200.0, "min": 1500.0, "name": "RC1_MAX", "shortDesc": "RC channel 1 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for RC channel 1", "max": 1500.0, "min": 800.0, "name": "RC1_MIN", "shortDesc": "RC channel 1 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC1_REV", "shortDesc": "RC channel 1 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC1_TRIM", "shortDesc": "RC channel 1 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 10.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC2_DZ", "shortDesc": "RC channel 2 dead zone", "type": "Float", "units": "us"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC2_MAX", "shortDesc": "RC channel 2 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC2_MIN", "shortDesc": "RC channel 2 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC2_REV", "shortDesc": "RC channel 2 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC2_TRIM", "shortDesc": "RC channel 2 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 10.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC3_DZ", "shortDesc": "RC channel 3 dead zone", "type": "Float", "units": "us"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC3_MAX", "shortDesc": "RC channel 3 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC3_MIN", "shortDesc": "RC channel 3 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC3_REV", "shortDesc": "RC channel 3 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC3_TRIM", "shortDesc": "RC channel 3 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 10.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC4_DZ", "shortDesc": "RC channel 4 dead zone", "type": "Float", "units": "us"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC4_MAX", "shortDesc": "RC channel 4 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC4_MIN", "shortDesc": "RC channel 4 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC4_REV", "shortDesc": "RC channel 4 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC4_TRIM", "shortDesc": "RC channel 4 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 10.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC5_DZ", "shortDesc": "RC channel 5 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC5_MAX", "shortDesc": "RC channel 5 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC5_MIN", "shortDesc": "RC channel 5 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC5_REV", "shortDesc": "RC channel 5 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC5_TRIM", "shortDesc": "RC channel 5 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 10.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC6_DZ", "shortDesc": "RC channel 6 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC6_MAX", "shortDesc": "RC channel 6 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC6_MIN", "shortDesc": "RC channel 6 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC6_REV", "shortDesc": "RC channel 6 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC6_TRIM", "shortDesc": "RC channel 6 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 10.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC7_DZ", "shortDesc": "RC channel 7 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC7_MAX", "shortDesc": "RC channel 7 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC7_MIN", "shortDesc": "RC channel 7 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC7_REV", "shortDesc": "RC channel 7 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC7_TRIM", "shortDesc": "RC channel 7 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 10.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC8_DZ", "shortDesc": "RC channel 8 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC8_MAX", "shortDesc": "RC channel 8 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC8_MIN", "shortDesc": "RC channel 8 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC8_REV", "shortDesc": "RC channel 8 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC8_TRIM", "shortDesc": "RC channel 8 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0.0, "group": "Radio Calibration", "longDesc": "The +- range of this value around the trim value will be considered as zero.", "max": 100.0, "min": 0.0, "name": "RC9_DZ", "shortDesc": "RC channel 9 dead zone", "type": "Float"}, {"category": "Standard", "default": 2000.0, "group": "Radio Calibration", "longDesc": "Maximum value for this channel.", "max": 2200.0, "min": 1500.0, "name": "RC9_MAX", "shortDesc": "RC channel 9 maximum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1000.0, "group": "Radio Calibration", "longDesc": "Minimum value for this channel.", "max": 1500.0, "min": 800.0, "name": "RC9_MIN", "shortDesc": "RC channel 9 minimum", "type": "Float", "units": "us"}, {"category": "Standard", "default": 1.0, "group": "Radio Calibration", "longDesc": "Set to -1 to reverse channel.", "max": 1.0, "min": -1.0, "name": "RC9_REV", "shortDesc": "RC channel 9 reverse", "type": "Float", "values": [{"description": "Reverse", "value": -1.0}, {"description": "Normal", "value": 1.0}]}, {"category": "Standard", "default": 1500.0, "group": "Radio Calibration", "longDesc": "Mid point value", "max": 2200.0, "min": 800.0, "name": "RC9_TRIM", "shortDesc": "RC channel 9 trim", "type": "Float", "units": "us"}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "This parameter is used by Ground Station software to save the number of channels which were used during RC calibration. It is only meant for ground station use.", "max": 18, "min": 0, "name": "RC_CHAN_CNT", "shortDesc": "RC channel count", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "Use RC_MAP_FAILSAFE to specify which channel is used to indicate RC loss via this threshold. By default this is the throttle channel. Set to a PWM value slightly above the PWM value for the channel (e.g. throttle) in a failsafe event, but below the minimum PWM value for the channel during normal operation. Note: The default value of 0 disables the feature (it is below the expected range).", "max": 2200, "min": 0, "name": "RC_FAILS_THR", "shortDesc": "Failsafe channel PWM threshold", "type": "Int32", "units": "us"}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "max": 18, "min": 0, "name": "RC_MAP_AUX1", "shortDesc": "AUX1 Passthrough RC channel", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "max": 18, "min": 0, "name": "RC_MAP_AUX2", "shortDesc": "AUX2 Passthrough RC channel", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "max": 18, "min": 0, "name": "RC_MAP_AUX3", "shortDesc": "AUX3 Passthrough RC channel", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "max": 18, "min": 0, "name": "RC_MAP_AUX4", "shortDesc": "AUX4 Passthrough RC channel", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "max": 18, "min": 0, "name": "RC_MAP_AUX5", "shortDesc": "AUX5 Passthrough RC channel", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "max": 18, "min": 0, "name": "RC_MAP_AUX6", "shortDesc": "AUX6 Passthrough RC channel", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "max": 18, "min": 0, "name": "RC_MAP_ENG_MOT", "shortDesc": "RC channel to engage the main motor (for helicopters)", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "Configures which RC channel is used by the receiver to indicate the signal was lost (on receivers that use output a fixed signal value to report lost signal). If set to 0, the channel mapped to throttle is used. Use RC_FAILS_THR to set the threshold indicating lost signal. By default it's below the expected range and hence disabled.", "max": 18, "min": 0, "name": "RC_MAP_FAILSAFE", "shortDesc": "Failsafe channel mapping", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "Can be used for parameter tuning with the RC. This one is further referenced as the 1st parameter channel. Set to 0 to deactivate *", "max": 18, "min": 0, "name": "RC_MAP_PARAM1", "shortDesc": "PARAM1 tuning channel", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "Can be used for parameter tuning with the RC. This one is further referenced as the 2nd parameter channel. Set to 0 to deactivate *", "max": 18, "min": 0, "name": "RC_MAP_PARAM2", "shortDesc": "PARAM2 tuning channel", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "Can be used for parameter tuning with the RC. This one is further referenced as the 3th parameter channel. Set to 0 to deactivate *", "max": 18, "min": 0, "name": "RC_MAP_PARAM3", "shortDesc": "PARAM3 tuning channel", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "The channel index (starting from 1 for channel 1) indicates which channel should be used for reading pitch inputs from. A value of zero indicates the switch is not assigned.", "max": 18, "min": 0, "name": "RC_MAP_PITCH", "shortDesc": "Pitch control channel mapping", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "The channel index (starting from 1 for channel 1) indicates which channel should be used for reading roll inputs from. A value of zero indicates the switch is not assigned.", "max": 18, "min": 0, "name": "RC_MAP_ROLL", "shortDesc": "Roll control channel mapping", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "The channel index (starting from 1 for channel 1) indicates which channel should be used for reading throttle inputs from. A value of zero indicates the switch is not assigned.", "max": 18, "min": 0, "name": "RC_MAP_THROTTLE", "shortDesc": "Throttle control channel mapping", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "The channel index (starting from 1 for channel 1) indicates which channel should be used for reading yaw inputs from. A value of zero indicates the switch is not assigned.", "max": 18, "min": 0, "name": "RC_MAP_YAW", "shortDesc": "Yaw control channel mapping", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 0, "group": "Radio Calibration", "longDesc": "0: do not read RSSI from input channel 1-18: read RSSI from specified input channel Specify the range for RSSI input with RC_RSSI_PWM_MIN and RC_RSSI_PWM_MAX parameters.", "max": 18, "min": 0, "name": "RC_RSSI_PWM_CHAN", "shortDesc": "PWM input channel that provides RSSI", "type": "Int32", "values": [{"description": "Unassigned", "value": 0}, {"description": "Channel 1", "value": 1}, {"description": "Channel 2", "value": 2}, {"description": "Channel 3", "value": 3}, {"description": "Channel 4", "value": 4}, {"description": "Channel 5", "value": 5}, {"description": "Channel 6", "value": 6}, {"description": "Channel 7", "value": 7}, {"description": "Channel 8", "value": 8}, {"description": "Channel 9", "value": 9}, {"description": "Channel 10", "value": 10}, {"description": "Channel 11", "value": 11}, {"description": "Channel 12", "value": 12}, {"description": "Channel 13", "value": 13}, {"description": "Channel 14", "value": 14}, {"description": "Channel 15", "value": 15}, {"description": "Channel 16", "value": 16}, {"description": "Channel 17", "value": 17}, {"description": "Channel 18", "value": 18}]}, {"category": "Standard", "default": 2000, "group": "Radio Calibration", "longDesc": "Only used if RC_RSSI_PWM_CHAN > 0", "max": 2000, "min": 0, "name": "RC_RSSI_PWM_MAX", "shortDesc": "Max input value for RSSI reading", "type": "Int32"}, {"category": "Standard", "default": 1000, "group": "Radio Calibration", "longDesc": "Only used if RC_RSSI_PWM_CHAN > 0", "max": 2000, "min": 0, "name": "RC_RSSI_PWM_MIN", "shortDesc": "Min input value for RSSI reading", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Radio Calibration", "increment": 0.01, "longDesc": "The trim value is the actuator control value the system needs for straight and level flight.", "max": 0.5, "min": -0.5, "name": "TRIM_PITCH", "shortDesc": "Pitch trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Radio Calibration", "increment": 0.01, "longDesc": "The trim value is the actuator control value the system needs for straight and level flight.", "max": 0.5, "min": -0.5, "name": "TRIM_ROLL", "shortDesc": "Roll trim", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Radio Calibration", "increment": 0.01, "longDesc": "The trim value is the actuator control value the system needs for straight and level flight.", "max": 0.5, "min": -0.5, "name": "TRIM_YAW", "shortDesc": "Yaw trim", "type": "Float"}, {"category": "Standard", "default": 0.75, "group": "Radio Switches", "longDesc": "0-1 indicate where in the full channel range the threshold sits 0 : min 1 : max sign indicates polarity of comparison positive : true when channel>th negative : true when channelth negative : true when channelth negative : true when channelth negative : true when channelth negative : true when channelth negative : true when channelth negative : true when channelth negative : true when channelth negative : true when channel The rover starts to cut the corner earlier.", "max": 100.0, "min": 1.0, "name": "RA_ACC_RAD_GAIN", "shortDesc": "Tuning parameter for corner cutting", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Ackermann", "increment": 0.01, "longDesc": "The controller scales the acceptance radius based on the angle between the previous, current and next waypoint. Higher value -> smoother trajectory at the cost of how close the rover gets to the waypoint (Set to -1 to disable corner cutting).", "max": 100.0, "min": -1.0, "name": "RA_ACC_RAD_MAX", "shortDesc": "Maximum acceptance radius for the waypoints", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Rover Ackermann", "increment": 0.01, "max": 1.5708, "min": 0.0, "name": "RA_MAX_STR_ANG", "shortDesc": "Maximum steering angle", "type": "Float", "units": "rad"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Ackermann", "increment": 0.01, "longDesc": "Set to -1 to disable.", "max": 1000.0, "min": -1.0, "name": "RA_STR_RATE_LIM", "shortDesc": "Steering rate limit", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Rover Ackermann", "increment": 0.001, "longDesc": "Distance from the front to the rear axle.", "max": 100.0, "min": 0.0, "name": "RA_WHEEL_BASE", "shortDesc": "Wheel base", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Rover Attitude Control", "increment": 0.01, "max": 100.0, "min": 0.0, "name": "RO_YAW_P", "shortDesc": "Proportional gain for closed loop yaw controller", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Rover Differential", "increment": 0.01, "longDesc": "This parameter is used to calculate the feedforward term of the closed loop yaw rate control. The controller first calculates the required speed difference between the left and right motor to achieve the desired yaw rate. This desired speed difference is then linearly mapped to normalized motor commands. A good starting point is half the speed the rover drives at maximum throttle (RD_MAX_THR_SPD)). Increase this parameter if the rover turns faster than the setpoint, and decrease if the rover turns slower.", "max": 100.0, "min": 0.0, "name": "RD_MAX_THR_YAW_R", "shortDesc": "Yaw rate turning left/right wheels at max speed in opposite directions", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Differential", "increment": 0.01, "longDesc": "The waypoint transition speed is calculated as: Transition_speed = Maximum_speed * (1 - normalized_transition_angle * RM_MISS_VEL_GAIN) The normalized transition angle is the angle between the line segment from prev-curr WP and curr-next WP interpolated from [0, 180] -> [0, 1]. Higher value -> More speed reduction during waypoint transitions. Set to -1 to disable any speed reduction during waypoint transition.", "max": 100.0, "min": -1.0, "name": "RD_MISS_SPD_GAIN", "shortDesc": "Tuning parameter for the speed reduction during waypoint transition", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.174533, "group": "Rover Differential", "increment": 0.01, "longDesc": "This threshold is used for the state machine to switch from driving to turning based on the error between the desired and actual yaw. It is also used as the threshold whether the rover should come to a smooth stop at the next waypoint. This slow down effect is active if the angle between the line segments from prevWP-currWP and currWP-nextWP is smaller then 180 - RD_TRANS_DRV_TRN.", "max": 3.14159, "min": 0.001, "name": "RD_TRANS_DRV_TRN", "shortDesc": "Yaw error threshhold to switch from driving to spot turning", "type": "Float", "units": "rad"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0872665, "group": "Rover Differential", "increment": 0.01, "longDesc": "This threshold is used for the state machine to switch from turning to driving based on the error between the desired and actual yaw.", "max": 3.14159, "min": 0.001, "name": "RD_TRANS_TRN_DRV", "shortDesc": "Yaw error threshhold to switch from spot turning to driving", "type": "Float", "units": "rad"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Rover Differential", "increment": 0.001, "longDesc": "Distance from the center of the right wheel to the center of the left wheel.", "max": 100.0, "min": 0.0, "name": "RD_WHEEL_TRACK", "shortDesc": "Wheel track", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.17, "group": "Rover Mecanum", "increment": 0.01, "longDesc": "Threshold for the angle between the active cruise direction and the cruise direction given by the stick inputs. This can be understood as a deadzone for the combined stick inputs for forward/backwards and lateral speed which defines a course direction.", "max": 3.14, "min": 0.0, "name": "RM_COURSE_CTL_TH", "shortDesc": "Threshold to update course control in manual position mode", "type": "Float", "units": "rad"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Rover Mecanum", "increment": 0.01, "longDesc": "This parameter is used to calculate the feedforward term of the closed loop yaw rate control. The controller first calculates the required speed difference between the left and right motor to achieve the desired yaw rate. This desired speed difference is then linearly mapped to normalized motor commands. A good starting point is half the speed the rover drives at maximum throttle (RD_MAX_THR_SPD)). Increase this parameter if the rover turns faster than the setpoint, and decrease if the rover turns slower.", "max": 100.0, "min": 0.0, "name": "RM_MAX_THR_YAW_R", "shortDesc": "Yaw rate turning left/right wheels at max speed in opposite directions", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Mecanum", "increment": 0.01, "longDesc": "The waypoint transition speed is calculated as: Transition_speed = Maximum_speed * (1 - normalized_transition_angle * RM_MISS_VEL_GAIN) The normalized transition angle is the angle between the line segment from prev-curr waypoint and curr-next waypoint interpolated from [0, 180] -> [0, 1]. Higher value -> More speed reduction during waypoint transitions. Set to -1 to disable any speed reduction during waypoint transition.", "max": 100.0, "min": -1.0, "name": "RM_MISS_SPD_GAIN", "shortDesc": "Tuning parameter for the speed reduction during waypoint transition", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Rover Mecanum", "increment": 0.001, "longDesc": "Distance from the center of the right wheel to the center of the left wheel.", "max": 100.0, "min": 0.0, "name": "RM_WHEEL_TRACK", "shortDesc": "Wheel track", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.75, "group": "Rover Position Control (Deprecated)", "increment": 0.05, "longDesc": "Damping factor for L1 control.", "max": 0.9, "min": 0.6, "name": "GND_L1_DAMPING", "shortDesc": "L1 damping", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Rover Position Control (Deprecated)", "increment": 0.1, "longDesc": "This is the distance at which the next waypoint is activated. This should be set to about 2-4x of GND_WHEEL_BASE and not smaller than one meter (due to GPS accuracy).", "max": 50.0, "min": 1.0, "name": "GND_L1_DIST", "shortDesc": "L1 distance", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 5.0, "group": "Rover Position Control (Deprecated)", "increment": 0.5, "longDesc": "This is the L1 distance and defines the tracking point ahead of the rover it's following. Use values around 2-5m for a 0.3m wheel base. Tuning instructions: Shorten slowly during tuning until response is sharp without oscillation.", "max": 50.0, "min": 0.5, "name": "GND_L1_PERIOD", "shortDesc": "L1 period", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 150.0, "group": "Rover Position Control (Deprecated)", "max": 400.0, "min": 0.0, "name": "GND_MAN_Y_MAX", "shortDesc": "Max manual yaw rate", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.7854, "group": "Rover Position Control (Deprecated)", "increment": 0.01, "longDesc": "At a control output of 0, the steering wheels are at 0 radians. At a control output of 1, the steering wheels are at GND_MAX_ANG radians.", "max": 3.14159, "min": 0.0, "name": "GND_MAX_ANG", "shortDesc": "Maximum turn angle for Ackerman steering", "type": "Float", "units": "rad"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.001, "group": "Rover Position Control (Deprecated)", "increment": 0.005, "longDesc": "This is the derivative gain for the speed closed loop controller", "max": 50.0, "min": 0.0, "name": "GND_SPEED_D", "shortDesc": "Speed proportional gain", "type": "Float", "units": "%m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 3.0, "group": "Rover Position Control (Deprecated)", "increment": 0.005, "longDesc": "This is the integral gain for the speed closed loop controller", "max": 50.0, "min": 0.0, "name": "GND_SPEED_I", "shortDesc": "Speed Integral gain", "type": "Float", "units": "%m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Rover Position Control (Deprecated)", "increment": 0.005, "longDesc": "This is the maxim value the integral can reach to prevent wind-up.", "max": 50.0, "min": 0.005, "name": "GND_SPEED_IMAX", "shortDesc": "Speed integral maximum value", "type": "Float", "units": "%m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Rover Position Control (Deprecated)", "increment": 0.5, "max": 40.0, "min": 0.0, "name": "GND_SPEED_MAX", "shortDesc": "Maximum ground speed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 2.0, "group": "Rover Position Control (Deprecated)", "increment": 0.005, "longDesc": "This is the proportional gain for the speed closed loop controller", "max": 50.0, "min": 0.005, "name": "GND_SPEED_P", "shortDesc": "Speed proportional gain", "type": "Float", "units": "%m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "Rover Position Control (Deprecated)", "increment": 0.005, "longDesc": "This is a gain to map the speed control output to the throttle linearly.", "max": 50.0, "min": 0.005, "name": "GND_SPEED_THR_SC", "shortDesc": "Speed to throttle scaler", "type": "Float", "units": "%m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "Rover Position Control (Deprecated)", "increment": 0.5, "max": 40.0, "min": 0.0, "name": "GND_SPEED_TRIM", "shortDesc": "Trim ground speed", "type": "Float", "units": "m/s"}, {"category": "Standard", "default": 1, "group": "Rover Position Control (Deprecated)", "longDesc": "This allows the user to choose between closed loop gps speed or open loop cruise throttle speed", "max": 1, "min": 0, "name": "GND_SP_CTRL_MODE", "shortDesc": "Control mode for speed", "type": "Int32", "values": [{"description": "open loop control", "value": 0}, {"description": "close the loop with gps speed", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Rover Position Control (Deprecated)", "increment": 0.01, "longDesc": "This is the throttle setting required to achieve the desired cruise speed. 10% is ok for a traxxas stampede vxl with ESC set to training mode", "max": 1.0, "min": 0.0, "name": "GND_THR_CRUISE", "shortDesc": "Cruise throttle", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.3, "group": "Rover Position Control (Deprecated)", "increment": 0.01, "longDesc": "This is the maximum throttle % that can be used by the controller. For a Traxxas stampede vxl with the ESC set to training, 30 % is enough", "max": 1.0, "min": 0.0, "name": "GND_THR_MAX", "shortDesc": "Throttle limit max", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Rover Position Control (Deprecated)", "increment": 0.01, "longDesc": "This is the minimum throttle % that can be used by the controller. Set to 0 for rover", "max": 1.0, "min": 0.0, "name": "GND_THR_MIN", "shortDesc": "Throttle limit min", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.31, "group": "Rover Position Control (Deprecated)", "increment": 0.01, "longDesc": "A value of 0.31 is typical for 1/10 RC cars.", "min": 0.0, "name": "GND_WHEEL_BASE", "shortDesc": "Distance from front axle to rear axle", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Rate Control", "increment": 0.01, "longDesc": "Used to cap how quickly the magnitude of yaw rate setpoints can increase. Set to -1 to disable.", "max": 10000.0, "min": -1.0, "name": "RO_YAW_ACCEL_LIM", "shortDesc": "Yaw acceleration limit", "type": "Float", "units": "deg/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Rate Control", "increment": 0.01, "longDesc": "Used to cap how quickly the magnitude of yaw rate setpoints can decrease. Set to -1 to disable.", "max": 10000.0, "min": -1.0, "name": "RO_YAW_DECEL_LIM", "shortDesc": "Yaw deceleration limit", "type": "Float", "units": "deg/s^2"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Rover Rate Control", "increment": 0.01, "max": 100.0, "min": 0.0, "name": "RO_YAW_RATE_I", "shortDesc": "Integral gain for closed loop yaw rate controller", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Rover Rate Control", "increment": 0.01, "longDesc": "Used to cap yaw rate setpoints and map controller inputs to yaw rate setpoints in Acro, Stabilized and Position mode.", "max": 10000.0, "min": 0.0, "name": "RO_YAW_RATE_LIM", "shortDesc": "Yaw rate limit", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Rover Rate Control", "increment": 0.01, "max": 100.0, "min": 0.0, "name": "RO_YAW_RATE_P", "shortDesc": "Proportional gain for closed loop yaw rate controller", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 3.0, "group": "Rover Rate Control", "increment": 0.01, "longDesc": "The minimum threshold for the yaw rate measurement not to be interpreted as zero.", "max": 100.0, "min": 0.0, "name": "RO_YAW_RATE_TH", "shortDesc": "Yaw rate measurement threshold", "type": "Float", "units": "deg/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Rover Rate Control", "increment": 0.01, "longDesc": "Percentage of stick input range that will be interpreted as zero around the stick centered value.", "max": 1.0, "min": 0.0, "name": "RO_YAW_STICK_DZ", "shortDesc": "Yaw stick deadzone", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Velocity Control", "increment": 0.01, "longDesc": "Set to -1 to disable. For mecanum rovers this limit is used for longitudinal and lateral acceleration.", "max": 100.0, "min": -1.0, "name": "RO_ACCEL_LIM", "shortDesc": "Acceleration limit", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Velocity Control", "increment": 0.01, "longDesc": "Set to -1 to disable. Note that if it is disabled the rover will not slow down when approaching waypoints in auto modes. For mecanum rovers this limit is used for longitudinal and lateral deceleration.", "max": 100.0, "min": -1.0, "name": "RO_DECEL_LIM", "shortDesc": "Deceleration limit", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Velocity Control", "increment": 0.01, "longDesc": "Set to -1 to disable. Note that if it is disabled the rover will not slow down when approaching waypoints in auto modes. For mecanum rovers this limit is used for longitudinal and lateral jerk.", "max": 100.0, "min": -1.0, "name": "RO_JERK_LIM", "shortDesc": "Jerk limit", "type": "Float", "units": "m/s^3"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Rover Velocity Control", "increment": 0.01, "longDesc": "Used to linearly map speeds [m/s] to throttle values [-1. 1].", "max": 100.0, "min": 0.0, "name": "RO_MAX_THR_SPEED", "shortDesc": "Speed the rover drives at maximum throttle", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Rover Velocity Control", "increment": 0.001, "max": 100.0, "min": 0.0, "name": "RO_SPEED_I", "shortDesc": "Integral gain for ground speed controller", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": -1.0, "group": "Rover Velocity Control", "increment": 0.01, "longDesc": "Used to cap speed setpoints and map controller inputs to speed setpoints in Position mode.", "max": 100.0, "min": -1.0, "name": "RO_SPEED_LIM", "shortDesc": "Speed limit", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.0, "group": "Rover Velocity Control", "increment": 0.01, "max": 100.0, "min": 0.0, "name": "RO_SPEED_P", "shortDesc": "Proportional gain for ground speed controller", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "Rover Velocity Control", "increment": 0.01, "longDesc": "Set to -1 to disable. The minimum threshold for the speed measurement not to be interpreted as zero.", "max": 100.0, "min": 0.0, "name": "RO_SPEED_TH", "shortDesc": "Speed measurement threshold", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Runway Takeoff", "increment": 0.01, "max": 1.0, "min": 0.0, "name": "RWTO_MAX_THR", "shortDesc": "Throttle during runway takeoff", "type": "Float", "units": "norm"}, {"category": "Standard", "default": 1, "group": "Runway Takeoff", "longDesc": "This is useful when map, GNSS, or yaw errors on ground are misaligned with what the operator intends for takeoff course. Particularly useful for skinny runways or if the wheel servo is a bit off trim.", "name": "RWTO_NUDGE", "shortDesc": "Enable use of yaw stick for nudging the wheel during runway ground roll", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Runway Takeoff", "increment": 0.5, "longDesc": "A taildragger with steerable wheel might need to pitch up a little to keep its wheel on the ground before airspeed to takeoff is reached.", "max": 20.0, "min": -10.0, "name": "RWTO_PSP", "shortDesc": "Pitch setpoint during taxi / before takeoff rotation airspeed is reached", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 2.0, "group": "Runway Takeoff", "increment": 0.1, "max": 15.0, "min": 1.0, "name": "RWTO_RAMP_TIME", "shortDesc": "Throttle ramp up time for runway takeoff", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": -1.0, "group": "Runway Takeoff", "increment": 0.1, "longDesc": "The calibrated airspeed threshold during the takeoff ground roll when the plane should start rotating (pitching up). Must be less than the takeoff airspeed, will otherwise be capped at the takeoff airpeed (see FW_TKO_AIRSPD). If set <= 0.0, defaults to 0.9 * takeoff airspeed (see FW_TKO_AIRSPD)", "min": -1.0, "name": "RWTO_ROT_AIRSPD", "shortDesc": "Takeoff rotation airspeed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "Runway Takeoff", "increment": 0.1, "longDesc": "This is the time desired to linearly ramp in takeoff pitch constraints during the takeoff rotation", "min": 0.1, "name": "RWTO_ROT_TIME", "shortDesc": "Takeoff rotation time", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Runway Takeoff", "name": "RWTO_TKOFF", "shortDesc": "Runway takeoff with landing gear", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 2, "group": "SD Logging", "longDesc": "Selects the algorithm used for logfile encryption", "name": "SDLOG_ALGORITHM", "shortDesc": "Logfile Encryption algorithm", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "XChaCha20", "value": 2}]}, {"category": "Standard", "default": 0, "group": "SD Logging", "longDesc": "When enabled, logging will not start from boot if battery power is not detected (e.g. powered via USB on a test bench). This prevents extraneous flight logs from being created during bench testing. Note that this only applies to log-from-boot modes. This has no effect on arm-based modes.", "name": "SDLOG_BOOT_BAT", "shortDesc": "Battery-only Logging", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "SD Logging", "longDesc": "If there are more log directories than this value, the system will delete the oldest directories during startup. In addition, the system will delete old logs if there is not enough free space left. The minimum amount is 300 MB. If this is set to 0, old directories will only be removed if the free space falls below the minimum. Note: this does not apply to mission log files.", "max": 1000, "min": 0, "name": "SDLOG_DIRS_MAX", "rebootRequired": true, "shortDesc": "Maximum number of log directories to keep", "type": "Int32"}, {"category": "Standard", "default": 1, "group": "SD Logging", "longDesc": "If the logfile is encrypted using a symmetric key algorithm, the used encryption key is generated at logging start and stored on the sdcard RSA2048 encrypted using this key.", "max": 255, "min": 0, "name": "SDLOG_EXCH_KEY", "shortDesc": "Logfile Encryption key exchange key", "type": "Int32"}, {"category": "Standard", "default": 2, "group": "SD Logging", "longDesc": "Selects the key in keystore, used for encrypting the log. When using a symmetric encryption algorithm, the key is generated at logging start and kept stored in this index. For symmetric algorithms, the key is volatile and valid only for the duration of logging. The key is stored in encrypted format on the sdcard alongside the logfile, using an RSA2048 key defined by the SDLOG_EXCHANGE_KEY", "max": 255, "min": 0, "name": "SDLOG_KEY", "shortDesc": "Logfile Encryption key index", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "SD Logging", "longDesc": "If enabled, a small additional \"mission\" log file will be written to the SD card. The log contains just those messages that are useful for tasks like generating flight statistics and geotagging. The different modes can be used to further reduce the logged data (and thus the log file size). For example, choose geotagging mode to only log data required for geotagging. Note that the normal/full log is still created, and contains all the data in the mission log (and more).", "name": "SDLOG_MISSION", "rebootRequired": true, "shortDesc": "Mission Log", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "All mission messages", "value": 1}, {"description": "Geotagging messages", "value": 2}]}, {"category": "Standard", "default": 0, "group": "SD Logging", "longDesc": "Determines when to start and stop logging. By default, logging is started when arming the system, and stopped when disarming.", "name": "SDLOG_MODE", "rebootRequired": true, "shortDesc": "Logging Mode", "type": "Int32", "values": [{"description": "disabled", "value": -1}, {"description": "when armed until disarm (default)", "value": 0}, {"description": "from boot until disarm", "value": 1}, {"description": "from boot until shutdown", "value": 2}, {"description": "while manual input AUX1 >30%", "value": 3}, {"description": "from 1st armed until shutdown", "value": 4}]}, {"bitmask": [{"description": "Default set (general log analysis)", "index": 0}, {"description": "Estimator replay (EKF2)", "index": 1}, {"description": "Thermal calibration", "index": 2}, {"description": "System identification", "index": 3}, {"description": "High rate", "index": 4}, {"description": "Debug", "index": 5}, {"description": "Sensor comparison", "index": 6}, {"description": "Computer Vision and Avoidance", "index": 7}, {"description": "Raw FIFO high-rate IMU (Gyro)", "index": 8}, {"description": "Raw FIFO high-rate IMU (Accel)", "index": 9}, {"description": "Mavlink tunnel message logging", "index": 10}, {"description": "High rate sensors", "index": 11}], "category": "Standard", "default": 1, "group": "SD Logging", "longDesc": "This integer bitmask controls the set and rates of logged topics. The default allows for general log analysis while keeping the log file size reasonably small. Enabling multiple sets leads to higher bandwidth requirements and larger log files. Set bits true to enable: 0 : Default set (used for general log analysis) 1 : Full rate estimator (EKF2) replay topics 2 : Topics for thermal calibration (high rate raw IMU and Baro sensor data) 3 : Topics for system identification (high rate actuator control and IMU data) 4 : Full rates for analysis of fast maneuvers (RC, attitude, rates and actuators) 5 : Debugging topics (debug_*.msg topics, for custom code) 6 : Topics for sensor comparison (low rate raw IMU, Baro and magnetometer data) 7 : Topics for computer vision and collision prevention 8 : Raw FIFO high-rate IMU (Gyro) 9 : Raw FIFO high-rate IMU (Accel) 10: Logging of mavlink tunnel message (useful for payload communication debugging)", "max": 4095, "min": 0, "name": "SDLOG_PROFILE", "rebootRequired": true, "shortDesc": "Logging topic profile (integer bitmask)", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "SD Logging", "longDesc": "the difference in hours and minutes from Coordinated Universal Time (UTC) for a your place and date. for example, In case of South Korea(UTC+09:00), UTC offset is 540 min (9*60) refer to https://en.wikipedia.org/wiki/List_of_UTC_time_offsets", "max": 1000, "min": -1000, "name": "SDLOG_UTC_OFFSET", "shortDesc": "UTC offset (unit: min)", "type": "Int32", "units": "min"}, {"category": "Standard", "default": 1, "group": "SD Logging", "longDesc": "If set to 1, add an ID to the log, which uniquely identifies the vehicle", "name": "SDLOG_UUID", "shortDesc": "Log UUID", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 60.0, "group": "SITL", "increment": 1.0, "max": 86400.0, "min": 1.0, "name": "SIM_BAT_DRAIN", "shortDesc": "Simulator Battery drain interval", "type": "Float", "units": "s"}, {"category": "Standard", "default": 1, "group": "SITL", "longDesc": "Enable or disable the internal battery simulation. This is useful when the battery is simulated externally and interfaced with PX4 through MAVLink for example.", "name": "SIM_BAT_ENABLE", "shortDesc": "Simulator Battery enabled", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 50.0, "group": "SITL", "increment": 0.1, "longDesc": "Can be used to alter the battery level during SITL- or HITL-simulation on the fly. Particularly useful for testing different low-battery behaviour.", "max": 100.0, "min": 0.0, "name": "SIM_BAT_MIN_PCT", "shortDesc": "Simulator Battery minimal percentage", "type": "Float", "units": "%"}, {"category": "System", "decimalPlaces": 3, "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the accelerometer this calibration applies to.", "name": "CAL_ACC0_ID", "shortDesc": "Accelerometer 0 calibration device ID", "type": "Int32"}, {"category": "System", "decimalPlaces": 3, "default": -1, "group": "Sensor Calibration", "name": "CAL_ACC0_PRIO", "shortDesc": "Accelerometer 0 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero.", "max": 40, "min": -1, "name": "CAL_ACC0_ROT", "shortDesc": "Accelerometer 0 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC0_XOFF", "shortDesc": "Accelerometer 0 X-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC0_XSCALE", "shortDesc": "Accelerometer 0 X-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC0_YOFF", "shortDesc": "Accelerometer 0 Y-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC0_YSCALE", "shortDesc": "Accelerometer 0 Y-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC0_ZOFF", "shortDesc": "Accelerometer 0 Z-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC0_ZSCALE", "shortDesc": "Accelerometer 0 Z-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the accelerometer this calibration applies to.", "name": "CAL_ACC1_ID", "shortDesc": "Accelerometer 1 calibration device ID", "type": "Int32"}, {"category": "System", "decimalPlaces": 3, "default": -1, "group": "Sensor Calibration", "name": "CAL_ACC1_PRIO", "shortDesc": "Accelerometer 1 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero.", "max": 40, "min": -1, "name": "CAL_ACC1_ROT", "shortDesc": "Accelerometer 1 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC1_XOFF", "shortDesc": "Accelerometer 1 X-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC1_XSCALE", "shortDesc": "Accelerometer 1 X-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC1_YOFF", "shortDesc": "Accelerometer 1 Y-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC1_YSCALE", "shortDesc": "Accelerometer 1 Y-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC1_ZOFF", "shortDesc": "Accelerometer 1 Z-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC1_ZSCALE", "shortDesc": "Accelerometer 1 Z-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the accelerometer this calibration applies to.", "name": "CAL_ACC2_ID", "shortDesc": "Accelerometer 2 calibration device ID", "type": "Int32"}, {"category": "System", "decimalPlaces": 3, "default": -1, "group": "Sensor Calibration", "name": "CAL_ACC2_PRIO", "shortDesc": "Accelerometer 2 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero.", "max": 40, "min": -1, "name": "CAL_ACC2_ROT", "shortDesc": "Accelerometer 2 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC2_XOFF", "shortDesc": "Accelerometer 2 X-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC2_XSCALE", "shortDesc": "Accelerometer 2 X-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC2_YOFF", "shortDesc": "Accelerometer 2 Y-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC2_YSCALE", "shortDesc": "Accelerometer 2 Y-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC2_ZOFF", "shortDesc": "Accelerometer 2 Z-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC2_ZSCALE", "shortDesc": "Accelerometer 2 Z-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the accelerometer this calibration applies to.", "name": "CAL_ACC3_ID", "shortDesc": "Accelerometer 3 calibration device ID", "type": "Int32"}, {"category": "System", "decimalPlaces": 3, "default": -1, "group": "Sensor Calibration", "name": "CAL_ACC3_PRIO", "shortDesc": "Accelerometer 3 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero.", "max": 40, "min": -1, "name": "CAL_ACC3_ROT", "shortDesc": "Accelerometer 3 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC3_XOFF", "shortDesc": "Accelerometer 3 X-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC3_XSCALE", "shortDesc": "Accelerometer 3 X-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC3_YOFF", "shortDesc": "Accelerometer 3 Y-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC3_YSCALE", "shortDesc": "Accelerometer 3 Y-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_ACC3_ZOFF", "shortDesc": "Accelerometer 3 Z-axis offset", "type": "Float", "units": "m/s^2", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_ACC3_ZSCALE", "shortDesc": "Accelerometer 3 Z-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the barometer this calibration applies to.", "name": "CAL_BARO0_ID", "shortDesc": "Barometer 0 calibration device ID", "type": "Int32"}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_BARO0_OFF", "shortDesc": "Barometer 0 offset", "type": "Float", "volatile": true}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_BARO0_PRIO", "shortDesc": "Barometer 0 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the barometer this calibration applies to.", "name": "CAL_BARO1_ID", "shortDesc": "Barometer 1 calibration device ID", "type": "Int32"}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_BARO1_OFF", "shortDesc": "Barometer 1 offset", "type": "Float", "volatile": true}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_BARO1_PRIO", "shortDesc": "Barometer 1 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the barometer this calibration applies to.", "name": "CAL_BARO2_ID", "shortDesc": "Barometer 2 calibration device ID", "type": "Int32"}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_BARO2_OFF", "shortDesc": "Barometer 2 offset", "type": "Float", "volatile": true}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_BARO2_PRIO", "shortDesc": "Barometer 2 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the barometer this calibration applies to.", "name": "CAL_BARO3_ID", "shortDesc": "Barometer 3 calibration device ID", "type": "Int32"}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_BARO3_OFF", "shortDesc": "Barometer 3 offset", "type": "Float", "volatile": true}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_BARO3_PRIO", "shortDesc": "Barometer 3 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the gyroscope this calibration applies to.", "name": "CAL_GYRO0_ID", "shortDesc": "Gyroscope 0 calibration device ID", "type": "Int32"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_GYRO0_PRIO", "shortDesc": "Gyroscope 0 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero.", "max": 40, "min": -1, "name": "CAL_GYRO0_ROT", "shortDesc": "Gyroscope 0 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO0_XOFF", "shortDesc": "Gyroscope 0 X-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO0_YOFF", "shortDesc": "Gyroscope 0 Y-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO0_ZOFF", "shortDesc": "Gyroscope 0 Z-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the gyroscope this calibration applies to.", "name": "CAL_GYRO1_ID", "shortDesc": "Gyroscope 1 calibration device ID", "type": "Int32"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_GYRO1_PRIO", "shortDesc": "Gyroscope 1 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero.", "max": 40, "min": -1, "name": "CAL_GYRO1_ROT", "shortDesc": "Gyroscope 1 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO1_XOFF", "shortDesc": "Gyroscope 1 X-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO1_YOFF", "shortDesc": "Gyroscope 1 Y-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO1_ZOFF", "shortDesc": "Gyroscope 1 Z-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the gyroscope this calibration applies to.", "name": "CAL_GYRO2_ID", "shortDesc": "Gyroscope 2 calibration device ID", "type": "Int32"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_GYRO2_PRIO", "shortDesc": "Gyroscope 2 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero.", "max": 40, "min": -1, "name": "CAL_GYRO2_ROT", "shortDesc": "Gyroscope 2 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO2_XOFF", "shortDesc": "Gyroscope 2 X-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO2_YOFF", "shortDesc": "Gyroscope 2 Y-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO2_ZOFF", "shortDesc": "Gyroscope 2 Z-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the gyroscope this calibration applies to.", "name": "CAL_GYRO3_ID", "shortDesc": "Gyroscope 3 calibration device ID", "type": "Int32"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_GYRO3_PRIO", "shortDesc": "Gyroscope 3 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero.", "max": 40, "min": -1, "name": "CAL_GYRO3_ROT", "shortDesc": "Gyroscope 3 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO3_XOFF", "shortDesc": "Gyroscope 3 X-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO3_YOFF", "shortDesc": "Gyroscope 3 Y-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_GYRO3_ZOFF", "shortDesc": "Gyroscope 3 Z-axis offset", "type": "Float", "units": "rad/s", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the magnetometer this calibration applies to.", "name": "CAL_MAG0_ID", "shortDesc": "Magnetometer 0 calibration device ID", "type": "Int32"}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG0_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG0_PITCH", "shortDesc": "Magnetometer 0 Custom Euler Pitch Angle", "type": "Float", "units": "deg"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_MAG0_PRIO", "shortDesc": "Magnetometer 0 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG0_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG0_ROLL", "shortDesc": "Magnetometer 0 Custom Euler Roll Angle", "type": "Float", "units": "deg"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero. Set to \"Custom Euler Angle\" to define the rotation using CAL_MAG0_ROLL, CAL_MAG0_PITCH and CAL_MAG0_YAW.", "max": 100, "min": -1, "name": "CAL_MAG0_ROT", "shortDesc": "Magnetometer 0 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}, {"description": "Custom Euler Angle", "value": 100}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between X component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG0_XCOMP", "shortDesc": "Magnetometer 0 X Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG0_XODIAG", "shortDesc": "Magnetometer 0 X-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG0_XOFF", "shortDesc": "Magnetometer 0 X-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG0_XSCALE", "shortDesc": "Magnetometer 0 X-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG0_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG0_YAW", "shortDesc": "Magnetometer 0 Custom Euler Yaw Angle", "type": "Float", "units": "deg"}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between Y component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG0_YCOMP", "shortDesc": "Magnetometer 0 Y Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG0_YODIAG", "shortDesc": "Magnetometer 0 Y-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG0_YOFF", "shortDesc": "Magnetometer 0 Y-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG0_YSCALE", "shortDesc": "Magnetometer 0 Y-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between Z component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG0_ZCOMP", "shortDesc": "Magnetometer 0 Z Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG0_ZODIAG", "shortDesc": "Magnetometer 0 Z-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG0_ZOFF", "shortDesc": "Magnetometer 0 Z-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG0_ZSCALE", "shortDesc": "Magnetometer 0 Z-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the magnetometer this calibration applies to.", "name": "CAL_MAG1_ID", "shortDesc": "Magnetometer 1 calibration device ID", "type": "Int32"}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG1_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG1_PITCH", "shortDesc": "Magnetometer 1 Custom Euler Pitch Angle", "type": "Float", "units": "deg"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_MAG1_PRIO", "shortDesc": "Magnetometer 1 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG1_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG1_ROLL", "shortDesc": "Magnetometer 1 Custom Euler Roll Angle", "type": "Float", "units": "deg"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero. Set to \"Custom Euler Angle\" to define the rotation using CAL_MAG1_ROLL, CAL_MAG1_PITCH and CAL_MAG1_YAW.", "max": 100, "min": -1, "name": "CAL_MAG1_ROT", "shortDesc": "Magnetometer 1 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}, {"description": "Custom Euler Angle", "value": 100}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between X component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG1_XCOMP", "shortDesc": "Magnetometer 1 X Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG1_XODIAG", "shortDesc": "Magnetometer 1 X-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG1_XOFF", "shortDesc": "Magnetometer 1 X-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG1_XSCALE", "shortDesc": "Magnetometer 1 X-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG1_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG1_YAW", "shortDesc": "Magnetometer 1 Custom Euler Yaw Angle", "type": "Float", "units": "deg"}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between Y component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG1_YCOMP", "shortDesc": "Magnetometer 1 Y Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG1_YODIAG", "shortDesc": "Magnetometer 1 Y-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG1_YOFF", "shortDesc": "Magnetometer 1 Y-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG1_YSCALE", "shortDesc": "Magnetometer 1 Y-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between Z component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG1_ZCOMP", "shortDesc": "Magnetometer 1 Z Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG1_ZODIAG", "shortDesc": "Magnetometer 1 Z-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG1_ZOFF", "shortDesc": "Magnetometer 1 Z-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG1_ZSCALE", "shortDesc": "Magnetometer 1 Z-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the magnetometer this calibration applies to.", "name": "CAL_MAG2_ID", "shortDesc": "Magnetometer 2 calibration device ID", "type": "Int32"}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG2_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG2_PITCH", "shortDesc": "Magnetometer 2 Custom Euler Pitch Angle", "type": "Float", "units": "deg"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_MAG2_PRIO", "shortDesc": "Magnetometer 2 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG2_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG2_ROLL", "shortDesc": "Magnetometer 2 Custom Euler Roll Angle", "type": "Float", "units": "deg"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero. Set to \"Custom Euler Angle\" to define the rotation using CAL_MAG2_ROLL, CAL_MAG2_PITCH and CAL_MAG2_YAW.", "max": 100, "min": -1, "name": "CAL_MAG2_ROT", "shortDesc": "Magnetometer 2 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}, {"description": "Custom Euler Angle", "value": 100}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between X component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG2_XCOMP", "shortDesc": "Magnetometer 2 X Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG2_XODIAG", "shortDesc": "Magnetometer 2 X-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG2_XOFF", "shortDesc": "Magnetometer 2 X-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG2_XSCALE", "shortDesc": "Magnetometer 2 X-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG2_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG2_YAW", "shortDesc": "Magnetometer 2 Custom Euler Yaw Angle", "type": "Float", "units": "deg"}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between Y component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG2_YCOMP", "shortDesc": "Magnetometer 2 Y Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG2_YODIAG", "shortDesc": "Magnetometer 2 Y-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG2_YOFF", "shortDesc": "Magnetometer 2 Y-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG2_YSCALE", "shortDesc": "Magnetometer 2 Y-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between Z component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG2_ZCOMP", "shortDesc": "Magnetometer 2 Z Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG2_ZODIAG", "shortDesc": "Magnetometer 2 Z-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG2_ZOFF", "shortDesc": "Magnetometer 2 Z-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG2_ZSCALE", "shortDesc": "Magnetometer 2 Z-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Device ID of the magnetometer this calibration applies to.", "name": "CAL_MAG3_ID", "shortDesc": "Magnetometer 3 calibration device ID", "type": "Int32"}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG3_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG3_PITCH", "shortDesc": "Magnetometer 3 Custom Euler Pitch Angle", "type": "Float", "units": "deg"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "name": "CAL_MAG3_PRIO", "shortDesc": "Magnetometer 3 priority", "type": "Int32", "values": [{"description": "Uninitialized", "value": -1}, {"description": "Disabled", "value": 0}, {"description": "Min", "value": 1}, {"description": "Low", "value": 25}, {"description": "Medium (Default)", "value": 50}, {"description": "High", "value": 75}, {"description": "Max", "value": 100}]}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG3_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG3_ROLL", "shortDesc": "Magnetometer 3 Custom Euler Roll Angle", "type": "Float", "units": "deg"}, {"category": "System", "default": -1, "group": "Sensor Calibration", "longDesc": "An internal sensor will force a value of -1, so a GCS should only attempt to configure the rotation if the value is greater than or equal to zero. Set to \"Custom Euler Angle\" to define the rotation using CAL_MAG3_ROLL, CAL_MAG3_PITCH and CAL_MAG3_YAW.", "max": 100, "min": -1, "name": "CAL_MAG3_ROT", "shortDesc": "Magnetometer 3 rotation relative to airframe", "type": "Int32", "values": [{"description": "Internal", "value": -1}, {"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}, {"description": "Custom Euler Angle", "value": 100}]}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between X component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG3_XCOMP", "shortDesc": "Magnetometer 3 X Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG3_XODIAG", "shortDesc": "Magnetometer 3 X-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG3_XOFF", "shortDesc": "Magnetometer 3 X-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG3_XSCALE", "shortDesc": "Magnetometer 3 X-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Setting this parameter changes CAL_MAG3_ROT to \"Custom Euler Angle\"", "max": 180.0, "min": -180.0, "name": "CAL_MAG3_YAW", "shortDesc": "Magnetometer 3 Custom Euler Yaw Angle", "type": "Float", "units": "deg"}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between Y component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG3_YCOMP", "shortDesc": "Magnetometer 3 Y Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG3_YODIAG", "shortDesc": "Magnetometer 3 Y-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG3_YOFF", "shortDesc": "Magnetometer 3 Y-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG3_YSCALE", "shortDesc": "Magnetometer 3 Y-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "longDesc": "Coefficient describing linear relationship between Z component of magnetometer in body frame axis and either current or throttle depending on value of CAL_MAG_COMP_TYP. Unit for throttle-based compensation is [G] and for current-based compensation [G/kA]", "name": "CAL_MAG3_ZCOMP", "shortDesc": "Magnetometer 3 Z Axis throttle compensation", "type": "Float", "volatile": true}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG3_ZODIAG", "shortDesc": "Magnetometer 3 Z-axis off diagonal scale factor", "type": "Float", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 0.0, "group": "Sensor Calibration", "name": "CAL_MAG3_ZOFF", "shortDesc": "Magnetometer 3 Z-axis offset", "type": "Float", "units": "gauss", "volatile": true}, {"category": "System", "decimalPlaces": 3, "default": 1.0, "group": "Sensor Calibration", "max": 3.0, "min": 0.1, "name": "CAL_MAG3_ZSCALE", "shortDesc": "Magnetometer 3 Z-axis scaling factor", "type": "Float", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "name": "CAL_MAG_COMP_TYP", "shortDesc": "Type of magnetometer compensation", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Throttle-based compensation", "value": 1}, {"description": "Current-based compensation (battery_status instance 0)", "value": 2}, {"description": "Current-based compensation (battery_status instance 1)", "value": 3}]}, {"category": "Standard", "default": 0.0, "group": "Sensor Calibration", "longDesc": "Pick the appropriate scaling from the datasheet. this number defines the (linear) conversion from voltage to Pascal (pa). For the MPXV7002DP this is 1000. NOTE: If the sensor always registers zero, try switching the static and dynamic tubes.", "name": "SENS_DPRES_ANSC", "shortDesc": "Differential pressure sensor analog scaling", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Sensor Calibration", "longDesc": "The offset (zero-reading) in Pascal", "name": "SENS_DPRES_OFF", "shortDesc": "Differential pressure sensor offset", "type": "Float", "volatile": true}, {"category": "System", "default": 0, "group": "Sensor Calibration", "longDesc": "Reverse the raw measurements of all differential pressure sensors. This can be enabled if the sensors have static and dynamic ports swapped.", "name": "SENS_DPRES_REV", "shortDesc": "Reverse differential pressure sensor readings", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 100.0, "group": "Sensor Calibration", "increment": 0.1, "longDesc": "This parameter defines the maximum distance from ground at which the optical flow sensor operates reliably. The height setpoint will be limited to be no greater than this value when the navigation system is completely reliant on optical flow data and the height above ground estimate is valid. The sensor may be usable above this height, but accuracy will progressively degrade.", "max": 100.0, "min": 1.0, "name": "SENS_FLOW_MAXHGT", "shortDesc": "Maximum height above ground when reliant on optical flow", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 8.0, "group": "Sensor Calibration", "longDesc": "Optical flow data will not fused by the estimators if the magnitude of the flow rate exceeds this value and control loops will be instructed to limit ground speed such that the flow rate produced by movement over ground is less than 50% of this value.", "min": 1.0, "name": "SENS_FLOW_MAXR", "shortDesc": "Magnitude of maximum angular flow rate reliably measurable by the optical flow sensor", "type": "Float", "units": "rad/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.08, "group": "Sensor Calibration", "increment": 0.1, "longDesc": "This parameter defines the minimum distance from ground at which the optical flow sensor operates reliably. The sensor may be usable below this height, but accuracy will progressively reduce to loss of focus.", "max": 1.0, "min": 0.0, "name": "SENS_FLOW_MINHGT", "shortDesc": "Minimum height above ground when reliant on optical flow", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Sensors", "longDesc": "Model with Pitot CAL_AIR_TUBED_MM: Not used, 1.5 mm tubes assumed. CAL_AIR_TUBELEN: Length of the tubes connecting the pitot to the sensor. Model without Pitot (1.5 mm tubes) CAL_AIR_TUBED_MM: Not used, 1.5 mm tubes assumed. CAL_AIR_TUBELEN: Length of the tubes connecting the pitot to the sensor. Tube Pressure Drop CAL_AIR_TUBED_MM: Diameter in mm of the pitot and tubes, must have the same diameter. CAL_AIR_TUBELEN: Length of the tubes connecting the pitot to the sensor and the static + dynamic port length of the pitot.", "name": "CAL_AIR_CMODEL", "shortDesc": "Airspeed sensor compensation model for the SDP3x", "type": "Int32", "values": [{"description": "Model with Pitot", "value": 0}, {"description": "Model without Pitot (1.5 mm tubes)", "value": 1}, {"description": "Tube Pressure Drop", "value": 2}]}, {"category": "Standard", "default": 1.5, "group": "Sensors", "max": 100.0, "min": 1.5, "name": "CAL_AIR_TUBED_MM", "shortDesc": "Airspeed sensor tube diameter. Only used for the Tube Pressure Drop Compensation", "type": "Float", "units": "mm"}, {"category": "Standard", "default": 0.2, "group": "Sensors", "longDesc": "See the CAL_AIR_CMODEL explanation on how this parameter should be set.", "max": 2.0, "min": 0.01, "name": "CAL_AIR_TUBELEN", "shortDesc": "Airspeed sensor tube length", "type": "Float", "units": "m"}, {"category": "Developer", "default": 63, "group": "Sensors", "longDesc": "Use SENS_MAG_SIDES instead", "name": "CAL_MAG_SIDES", "shortDesc": "For legacy QGC support only", "type": "Int32"}, {"category": "Standard", "default": 30.0, "group": "Sensors", "longDesc": "The cutoff frequency for the 2nd order butterworth filter on the primary accelerometer. This only affects the signal sent to the controllers, not the estimators. 0 disables the filter.", "max": 1000.0, "min": 0.0, "name": "IMU_ACCEL_CUTOFF", "rebootRequired": true, "shortDesc": "Low pass filter cutoff frequency for accel", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 30.0, "group": "Sensors", "increment": 0.1, "longDesc": "The cutoff frequency for the 2nd order butterworth filter used on the time derivative of the measured angular velocity, also known as the D-term filter in the rate controller. The D-term uses the derivative of the rate and thus is the most susceptible to noise. Therefore, using a D-term filter allows to increase IMU_GYRO_CUTOFF, which leads to reduced control latency and permits to increase the P gains. A value of 0 disables the filter.", "max": 1000.0, "min": 0.0, "name": "IMU_DGYRO_CUTOFF", "rebootRequired": true, "shortDesc": "Cutoff frequency for angular acceleration (D-Term filter)", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 1, "group": "Sensors", "name": "IMU_GYRO_CAL_EN", "rebootRequired": true, "shortDesc": "IMU gyro auto calibration enable", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 1, "default": 40.0, "group": "Sensors", "increment": 0.1, "longDesc": "The cutoff frequency for the 2nd order butterworth filter on the primary gyro. This only affects the angular velocity sent to the controllers, not the estimators. It applies also to the angular acceleration (D-Term filter), see IMU_DGYRO_CUTOFF. A value of 0 disables the filter.", "max": 1000.0, "min": 0.0, "name": "IMU_GYRO_CUTOFF", "rebootRequired": true, "shortDesc": "Low pass filter cutoff frequency for gyro", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 15.0, "group": "Sensors", "increment": 0.1, "longDesc": "Bandwidth per notch filter when using dynamic notch filtering with ESC RPM.", "max": 30.0, "min": 5.0, "name": "IMU_GYRO_DNF_BW", "shortDesc": "IMU gyro ESC notch filter bandwidth", "type": "Float", "units": "Hz"}, {"bitmask": [{"description": "ESC RPM", "index": 0}, {"description": "FFT", "index": 1}], "category": "Standard", "default": 0, "group": "Sensors", "longDesc": "Enable bank of dynamically updating notch filters. Requires ESC RPM feedback or onboard FFT (IMU_GYRO_FFT_EN).", "max": 3, "min": 0, "name": "IMU_GYRO_DNF_EN", "shortDesc": "IMU gyro dynamic notch filtering", "type": "Int32"}, {"category": "Standard", "default": 3, "group": "Sensors", "longDesc": "ESC RPM number of harmonics (multiples of RPM) for ESC RPM dynamic notch filtering.", "max": 7, "min": 1, "name": "IMU_GYRO_DNF_HMC", "shortDesc": "IMU gyro dynamic notch filter harmonics", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 25.0, "group": "Sensors", "increment": 0.1, "longDesc": "Minimum notch filter frequency in Hz.", "name": "IMU_GYRO_DNF_MIN", "shortDesc": "IMU gyro dynamic notch filter minimum frequency", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 0, "group": "Sensors", "name": "IMU_GYRO_FFT_EN", "rebootRequired": true, "shortDesc": "IMU gyro FFT enable", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 512, "group": "Sensors", "name": "IMU_GYRO_FFT_LEN", "rebootRequired": true, "shortDesc": "IMU gyro FFT length", "type": "Int32", "units": "Hz", "values": [{"description": "256", "value": 256}, {"description": "512", "value": 512}, {"description": "1024", "value": 1024}, {"description": "4096", "value": 4096}]}, {"category": "Standard", "default": 150.0, "group": "Sensors", "max": 1000.0, "min": 1.0, "name": "IMU_GYRO_FFT_MAX", "rebootRequired": true, "shortDesc": "IMU gyro FFT maximum frequency", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 30.0, "group": "Sensors", "max": 1000.0, "min": 1.0, "name": "IMU_GYRO_FFT_MIN", "rebootRequired": true, "shortDesc": "IMU gyro FFT minimum frequency", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 10.0, "group": "Sensors", "max": 30.0, "min": 1.0, "name": "IMU_GYRO_FFT_SNR", "shortDesc": "IMU gyro FFT SNR", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 20.0, "group": "Sensors", "increment": 0.1, "longDesc": "The frequency width of the stop band for the 2nd order notch filter on the primary gyro. See \"IMU_GYRO_NF0_FRQ\" to activate the filter and to set the notch frequency. Applies to both angular velocity and angular acceleration sent to the controllers.", "max": 100.0, "min": 0.0, "name": "IMU_GYRO_NF0_BW", "rebootRequired": true, "shortDesc": "Notch filter bandwidth for gyro", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Sensors", "increment": 0.1, "longDesc": "The center frequency for the 2nd order notch filter on the primary gyro. This filter can be enabled to avoid feedback amplification of structural resonances at a specific frequency. This only affects the signal sent to the controllers, not the estimators. Applies to both angular velocity and angular acceleration sent to the controllers. See \"IMU_GYRO_NF0_BW\" to set the bandwidth of the filter. A value of 0 disables the filter.", "max": 1000.0, "min": 0.0, "name": "IMU_GYRO_NF0_FRQ", "rebootRequired": true, "shortDesc": "Notch filter frequency for gyro", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 20.0, "group": "Sensors", "increment": 0.1, "longDesc": "The frequency width of the stop band for the 2nd order notch filter on the primary gyro. See \"IMU_GYRO_NF1_FRQ\" to activate the filter and to set the notch frequency. Applies to both angular velocity and angular acceleration sent to the controllers.", "max": 100.0, "min": 0.0, "name": "IMU_GYRO_NF1_BW", "rebootRequired": true, "shortDesc": "Notch filter 1 bandwidth for gyro", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "Sensors", "increment": 0.1, "longDesc": "The center frequency for the 2nd order notch filter on the primary gyro. This filter can be enabled to avoid feedback amplification of structural resonances at a specific frequency. This only affects the signal sent to the controllers, not the estimators. Applies to both angular velocity and angular acceleration sent to the controllers. See \"IMU_GYRO_NF1_BW\" to set the bandwidth of the filter. A value of 0 disables the filter.", "max": 1000.0, "min": 0.0, "name": "IMU_GYRO_NF1_FRQ", "rebootRequired": true, "shortDesc": "Notch filter 2 frequency for gyro", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 400, "group": "Sensors", "longDesc": "The maximum rate the gyro control data (vehicle_angular_velocity) will be allowed to publish at. This is the loop rate for the rate controller and outputs. Note: sensor data is always read and filtered at the full raw rate (eg commonly 8 kHz) regardless of this setting.", "max": 2000, "min": 100, "name": "IMU_GYRO_RATEMAX", "rebootRequired": true, "shortDesc": "Gyro control data maximum publication rate (inner loop rate)", "type": "Int32", "units": "Hz", "values": [{"description": "100 Hz", "value": 100}, {"description": "250 Hz", "value": 250}, {"description": "400 Hz", "value": 400}, {"description": "800 Hz", "value": 800}, {"description": "1000 Hz", "value": 1000}, {"description": "2000 Hz", "value": 2000}]}, {"category": "Standard", "default": 200, "group": "Sensors", "longDesc": "The rate at which raw IMU data is integrated to produce delta angles and delta velocities. Recommended to set this to a multiple of the estimator update period (currently 10 ms for ekf2).", "max": 1000, "min": 100, "name": "IMU_INTEG_RATE", "rebootRequired": true, "shortDesc": "IMU integration rate", "type": "Int32", "units": "Hz", "values": [{"description": "100 Hz", "value": 100}, {"description": "200 Hz", "value": 200}, {"description": "250 Hz", "value": 250}, {"description": "400 Hz", "value": 400}]}, {"category": "Standard", "default": 1013.25, "group": "Sensors", "max": 1500.0, "min": 500.0, "name": "SENS_BARO_QNH", "shortDesc": "QNH for barometer", "type": "Float", "units": "hPa"}, {"category": "Standard", "default": 20.0, "group": "Sensors", "longDesc": "Barometric air data maximum publication rate. This is an upper bound, actual barometric data rate is still dependent on the sensor.", "max": 200.0, "min": 1.0, "name": "SENS_BARO_RATE", "shortDesc": "Baro max rate", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 0, "group": "Sensors", "longDesc": "This parameter defines the rotation of the FMU board relative to the platform.", "max": 40, "min": -1, "name": "SENS_BOARD_ROT", "rebootRequired": true, "shortDesc": "Board rotation", "type": "Int32", "values": [{"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}, {"description": "Roll 180\u00b0", "value": 8}, {"description": "Roll 180\u00b0, Yaw 45\u00b0", "value": 9}, {"description": "Roll 180\u00b0, Yaw 90\u00b0", "value": 10}, {"description": "Roll 180\u00b0, Yaw 135\u00b0", "value": 11}, {"description": "Pitch 180\u00b0", "value": 12}, {"description": "Roll 180\u00b0, Yaw 225\u00b0", "value": 13}, {"description": "Roll 180\u00b0, Yaw 270\u00b0", "value": 14}, {"description": "Roll 180\u00b0, Yaw 315\u00b0", "value": 15}, {"description": "Roll 90\u00b0", "value": 16}, {"description": "Roll 90\u00b0, Yaw 45\u00b0", "value": 17}, {"description": "Roll 90\u00b0, Yaw 90\u00b0", "value": 18}, {"description": "Roll 90\u00b0, Yaw 135\u00b0", "value": 19}, {"description": "Roll 270\u00b0", "value": 20}, {"description": "Roll 270\u00b0, Yaw 45\u00b0", "value": 21}, {"description": "Roll 270\u00b0, Yaw 90\u00b0", "value": 22}, {"description": "Roll 270\u00b0, Yaw 135\u00b0", "value": 23}, {"description": "Pitch 90\u00b0", "value": 24}, {"description": "Pitch 270\u00b0", "value": 25}, {"description": "Pitch 180\u00b0, Yaw 90\u00b0", "value": 26}, {"description": "Pitch 180\u00b0, Yaw 270\u00b0", "value": 27}, {"description": "Roll 90\u00b0, Pitch 90\u00b0", "value": 28}, {"description": "Roll 180\u00b0, Pitch 90\u00b0", "value": 29}, {"description": "Roll 270\u00b0, Pitch 90\u00b0", "value": 30}, {"description": "Roll 90\u00b0, Pitch 180\u00b0", "value": 31}, {"description": "Roll 270\u00b0, Pitch 180\u00b0", "value": 32}, {"description": "Roll 90\u00b0, Pitch 270\u00b0", "value": 33}, {"description": "Roll 180\u00b0, Pitch 270\u00b0", "value": 34}, {"description": "Roll 270\u00b0, Pitch 270\u00b0", "value": 35}, {"description": "Roll 90\u00b0, Pitch 180\u00b0, Yaw 90\u00b0", "value": 36}, {"description": "Roll 90\u00b0, Yaw 270\u00b0", "value": 37}, {"description": "Roll 90\u00b0, Pitch 68\u00b0, Yaw 293\u00b0", "value": 38}, {"description": "Pitch 315\u00b0", "value": 39}, {"description": "Roll 90\u00b0, Pitch 315\u00b0", "value": 40}]}, {"category": "Standard", "default": 0.0, "group": "Sensors", "longDesc": "This parameter defines a rotational offset in degrees around the X (Roll) axis It allows the user to fine tune the board offset in the event of misalignment.", "name": "SENS_BOARD_X_OFF", "shortDesc": "Board rotation X (Roll) offset", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0.0, "group": "Sensors", "longDesc": "This parameter defines a rotational offset in degrees around the Y (Pitch) axis. It allows the user to fine tune the board offset in the event of misalignment.", "name": "SENS_BOARD_Y_OFF", "shortDesc": "Board rotation Y (Pitch) offset", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0.0, "group": "Sensors", "longDesc": "This parameter defines a rotational offset in degrees around the Z (Yaw) axis. It allows the user to fine tune the board offset in the event of misalignment.", "name": "SENS_BOARD_Z_OFF", "shortDesc": "Board rotation Z (YAW) offset", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 0, "group": "Sensors", "max": 1, "min": 0, "name": "SENS_EN_AGPSIM", "rebootRequired": true, "shortDesc": "Simulate Aux Global Position (AGP)", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Sensors", "max": 1, "min": 0, "name": "SENS_EN_ARSPDSIM", "rebootRequired": true, "shortDesc": "Enable simulated airspeed sensor instance", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Sensors", "max": 1, "min": 0, "name": "SENS_EN_BAROSIM", "rebootRequired": true, "shortDesc": "Enable simulated barometer sensor instance", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Sensors", "max": 1, "min": 0, "name": "SENS_EN_GPSSIM", "rebootRequired": true, "shortDesc": "Enable simulated GPS sinstance", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "Sensors", "max": 1, "min": 0, "name": "SENS_EN_MAGSIM", "rebootRequired": true, "shortDesc": "Enable simulated magnetometer sensor instance", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": -1, "group": "Sensors", "name": "SENS_EN_THERMAL", "shortDesc": "Thermal control of sensor temperature", "type": "Int32", "values": [{"description": "Thermal control unavailable", "value": -1}, {"description": "Thermal control off", "value": 0}, {"description": "Thermal control enabled", "value": 1}]}, {"category": "System", "default": 1, "group": "Sensors", "longDesc": "Probe for optional external I2C devices.", "name": "SENS_EXT_I2C_PRB", "shortDesc": "External I2C probe", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 70.0, "group": "Sensors", "longDesc": "Optical flow data maximum publication rate. This is an upper bound, actual optical flow data rate is still dependent on the sensor.", "max": 200.0, "min": 1.0, "name": "SENS_FLOW_RATE", "rebootRequired": true, "shortDesc": "Optical flow max rate", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 0, "group": "Sensors", "longDesc": "This parameter defines the yaw rotation of the optical flow relative to the vehicle body frame. Zero rotation is defined as X on flow board pointing towards front of vehicle.", "name": "SENS_FLOW_ROT", "shortDesc": "Optical flow rotation", "type": "Int32", "values": [{"description": "No rotation", "value": 0}, {"description": "Yaw 45\u00b0", "value": 1}, {"description": "Yaw 90\u00b0", "value": 2}, {"description": "Yaw 135\u00b0", "value": 3}, {"description": "Yaw 180\u00b0", "value": 4}, {"description": "Yaw 225\u00b0", "value": 5}, {"description": "Yaw 270\u00b0", "value": 6}, {"description": "Yaw 315\u00b0", "value": 7}]}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Sensors", "max": 1.5, "min": 0.5, "name": "SENS_FLOW_SCALE", "shortDesc": "Optical flow scale factor", "type": "Float"}, {"bitmask": [{"description": "use speed accuracy", "index": 0}, {"description": "use hpos accuracy", "index": 1}, {"description": "use vpos accuracy", "index": 2}], "category": "Standard", "default": 7, "group": "Sensors", "longDesc": "Set bits in the following positions to set which GPS accuracy metrics will be used to calculate the blending weight. Set to zero to disable and always used first GPS instance. 0 : Set to true to use speed accuracy 1 : Set to true to use horizontal position accuracy 2 : Set to true to use vertical position accuracy", "max": 7, "min": 0, "name": "SENS_GPS_MASK", "shortDesc": "Multi GPS Blending Control Mask", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "Sensors", "longDesc": "When no blending is active, this defines the preferred GPS receiver instance. The GPS selection logic waits until the primary receiver is available to send data to the EKF even if a secondary instance is already available. The secondary instance is then only used if the primary one times out. To have an equal priority of all the instances, set this parameter to -1 and the best receiver will be used. This parameter has no effect if blending is active.", "max": 1, "min": -1, "name": "SENS_GPS_PRIME", "shortDesc": "Multi GPS primary instance", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 1, "default": 10.0, "group": "Sensors", "longDesc": "Sets the longest time constant that will be applied to the calculation of GPS position and height offsets used to correct data from multiple GPS data for steady state position differences.", "max": 100.0, "min": 1.0, "name": "SENS_GPS_TAU", "shortDesc": "Multi GPS Blending Time Constant", "type": "Float", "units": "s"}, {"category": "System", "default": 1, "group": "Sensors", "longDesc": "Automatically initialize IMU (accel/gyro) calibration from bias estimates if available.", "name": "SENS_IMU_AUTOCAL", "shortDesc": "IMU auto calibration", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": 1, "group": "Sensors", "longDesc": "Notify the user if the IMU is clipping", "name": "SENS_IMU_CLPNOTI", "shortDesc": "IMU notify clipping", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": 1, "group": "Sensors", "name": "SENS_IMU_MODE", "rebootRequired": true, "shortDesc": "Sensors hub IMU mode", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Publish primary IMU selection", "value": 1}]}, {"category": "System", "default": 1, "group": "Sensors", "longDesc": "For systems with an external barometer, this should be set to false to make sure that the external is used.", "name": "SENS_INT_BARO_EN", "rebootRequired": true, "shortDesc": "Enable internal barometers", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": 1, "group": "Sensors", "longDesc": "Automatically initialize magnetometer calibration from bias estimate if available.", "name": "SENS_MAG_AUTOCAL", "shortDesc": "Magnetometer auto calibration", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "Sensors", "longDesc": "During calibration attempt to automatically determine the rotation of external magnetometers.", "name": "SENS_MAG_AUTOROT", "shortDesc": "Automatically set external rotations", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": 1, "group": "Sensors", "name": "SENS_MAG_MODE", "rebootRequired": true, "shortDesc": "Sensors hub mag mode", "type": "Int32", "values": [{"description": "Publish all magnetometers", "value": 0}, {"description": "Publish primary magnetometer", "value": 1}]}, {"category": "Standard", "default": 15.0, "group": "Sensors", "longDesc": "Magnetometer data maximum publication rate. This is an upper bound, actual magnetometer data rate is still dependent on the sensor.", "max": 200.0, "min": 1.0, "name": "SENS_MAG_RATE", "rebootRequired": true, "shortDesc": "Magnetometer max rate", "type": "Float", "units": "Hz"}, {"category": "Standard", "default": 63, "group": "Sensors", "longDesc": "If set to two side calibration, only the offsets are estimated, the scale calibration is left unchanged. Thus an initial six side calibration is recommended. Bits: ORIENTATION_TAIL_DOWN = 1 ORIENTATION_NOSE_DOWN = 2 ORIENTATION_LEFT = 4 ORIENTATION_RIGHT = 8 ORIENTATION_UPSIDE_DOWN = 16 ORIENTATION_RIGHTSIDE_UP = 32", "max": 63, "min": 34, "name": "SENS_MAG_SIDES", "shortDesc": "Bitfield selecting mag sides for calibration", "type": "Int32", "values": [{"description": "Two side calibration", "value": 34}, {"description": "Three side calibration", "value": 38}, {"description": "Six side calibration", "value": 63}]}, {"category": "Standard", "default": 0, "group": "Sensors", "max": 1, "min": 0, "name": "SIM_ARSPD_FAIL", "rebootRequired": true, "shortDesc": "Dynamically simulate failure of airspeed sensor instance", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "decimalPlaces": 4, "default": 100.0, "group": "Simulation In Hardware", "increment": 0.01, "max": 1000.0, "min": 0.0, "name": "SIH_DISTSNSR_MAX", "shortDesc": "distance sensor maximum range", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 4, "default": 0.0, "group": "Simulation In Hardware", "increment": 0.01, "max": 10.0, "min": 0.0, "name": "SIH_DISTSNSR_MIN", "shortDesc": "distance sensor minimum range", "type": "Float", "units": "m"}, {"category": "Standard", "default": -1.0, "group": "Simulation In Hardware", "longDesc": "Absolute value superior to 10000 will disable distance sensor", "name": "SIH_DISTSNSR_OVR", "shortDesc": "if >= 0 the distance sensor measures will be overridden by this value", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.025, "group": "Simulation In Hardware", "increment": 0.005, "longDesc": "The inertia is a 3 by 3 symmetric matrix. It represents the difficulty of the vehicle to modify its angular rate.", "min": 0.0, "name": "SIH_IXX", "shortDesc": "Vehicle inertia about X axis", "type": "Float", "units": "kg m^2"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Simulation In Hardware", "increment": 0.005, "longDesc": "The inertia is a 3 by 3 symmetric matrix. This value can be set to 0 for a quad symmetric about its center of mass.", "name": "SIH_IXY", "shortDesc": "Vehicle cross term inertia xy", "type": "Float", "units": "kg m^2"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Simulation In Hardware", "increment": 0.005, "longDesc": "The inertia is a 3 by 3 symmetric matrix. This value can be set to 0 for a quad symmetric about its center of mass.", "name": "SIH_IXZ", "shortDesc": "Vehicle cross term inertia xz", "type": "Float", "units": "kg m^2"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.025, "group": "Simulation In Hardware", "increment": 0.005, "longDesc": "The inertia is a 3 by 3 symmetric matrix. It represents the difficulty of the vehicle to modify its angular rate.", "min": 0.0, "name": "SIH_IYY", "shortDesc": "Vehicle inertia about Y axis", "type": "Float", "units": "kg m^2"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "Simulation In Hardware", "increment": 0.005, "longDesc": "The inertia is a 3 by 3 symmetric matrix. This value can be set to 0 for a quad symmetric about its center of mass.", "name": "SIH_IYZ", "shortDesc": "Vehicle cross term inertia yz", "type": "Float", "units": "kg m^2"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.03, "group": "Simulation In Hardware", "increment": 0.005, "longDesc": "The inertia is a 3 by 3 symmetric matrix. It represents the difficulty of the vehicle to modify its angular rate.", "min": 0.0, "name": "SIH_IZZ", "shortDesc": "Vehicle inertia about Z axis", "type": "Float", "units": "kg m^2"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Simulation In Hardware", "increment": 0.05, "longDesc": "Physical coefficient representing the friction with air particules. The greater this value, the slower the quad will move. Drag force function of velocity: D=-KDV*V. The maximum freefall velocity can be computed as V=10*MASS/KDV [m/s]", "min": 0.0, "name": "SIH_KDV", "shortDesc": "First order drag coefficient", "type": "Float", "units": "N/(m/s)"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.025, "group": "Simulation In Hardware", "increment": 0.005, "longDesc": "Physical coefficient representing the friction with air particules during rotations. The greater this value, the slower the quad will rotate. Aerodynamic moment function of body rate: Ma=-KDW*W_B. This value can be set to 0 if unknown.", "min": 0.0, "name": "SIH_KDW", "shortDesc": "First order angular damper coefficient", "type": "Float", "units": "Nm/(rad/s)"}, {"category": "Standard", "decimalPlaces": 2, "default": 489.4, "group": "Simulation In Hardware", "increment": 0.01, "longDesc": "This value represents the Above Mean Sea Level (AMSL) altitude where the simulation begins. If using FlightGear as a visual animation, this value can be tweaked such that the vehicle lies on the ground at takeoff. LAT0, LON0, H0, MU_X, MU_Y, and MU_Z should ideally be consistent among each others to represent a physical ground location on Earth.", "max": 8848.0, "min": -420.0, "name": "SIH_LOC_H0", "shortDesc": "Initial AMSL ground altitude", "type": "Float", "units": "m"}, {"category": "Standard", "default": 47.397742, "group": "Simulation In Hardware", "longDesc": "This value represents the North-South location on Earth where the simulation begins. LAT0, LON0, H0, MU_X, MU_Y, and MU_Z should ideally be consistent among each others to represent a physical ground location on Earth.", "max": 90.0, "min": -90.0, "name": "SIH_LOC_LAT0", "shortDesc": "Initial geodetic latitude", "type": "Float", "units": "deg"}, {"category": "Standard", "default": 8.545594, "group": "Simulation In Hardware", "longDesc": "This value represents the East-West location on Earth where the simulation begins. LAT0, LON0, H0, MU_X, MU_Y, and MU_Z should ideally be consistent among each others to represent a physical ground location on Earth.", "max": 180.0, "min": -180.0, "name": "SIH_LOC_LON0", "shortDesc": "Initial geodetic longitude", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "Simulation In Hardware", "increment": 0.05, "longDesc": "This is the arm length generating the pitching moment This value can be measured with a ruler. This corresponds to half the distance between the front and rear motors.", "min": 0.0, "name": "SIH_L_PITCH", "shortDesc": "Pitch arm length", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.2, "group": "Simulation In Hardware", "increment": 0.05, "longDesc": "This is the arm length generating the rolling moment This value can be measured with a ruler. This corresponds to half the distance between the left and right motors.", "min": 0.0, "name": "SIH_L_ROLL", "shortDesc": "Roll arm length", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "Simulation In Hardware", "increment": 0.1, "longDesc": "This value can be measured by weighting the quad on a scale.", "min": 0.0, "name": "SIH_MASS", "shortDesc": "Vehicle mass", "type": "Float", "units": "kg"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.1, "group": "Simulation In Hardware", "increment": 0.05, "longDesc": "This is the maximum torque delivered by one propeller when the motor is running at full speed. This value is usually about few percent of the maximum thrust force.", "min": 0.0, "name": "SIH_Q_MAX", "shortDesc": "Max propeller torque", "type": "Float", "units": "Nm"}, {"category": "Standard", "decimalPlaces": 2, "default": 5.0, "group": "Simulation In Hardware", "increment": 0.5, "longDesc": "This is the maximum force delivered by one propeller when the motor is running at full speed. This value is usually about 5 times the mass of the quadrotor.", "min": 0.0, "name": "SIH_T_MAX", "shortDesc": "Max propeller thrust force", "type": "Float", "units": "N"}, {"category": "Standard", "default": 0.05, "group": "Simulation In Hardware", "longDesc": "the time taken for the thruster to step from 0 to 100% should be about 4 times tau", "name": "SIH_T_TAU", "shortDesc": "thruster time constant tau", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "Simulation In Hardware", "name": "SIH_VEHICLE_TYPE", "rebootRequired": true, "shortDesc": "Vehicle type", "type": "Int32", "values": [{"description": "Quadcopter", "value": 0}, {"description": "Fixed-Wing", "value": 1}, {"description": "Tailsitter", "value": 2}, {"description": "Standard VTOL", "value": 3}, {"description": "Hexacopter", "value": 4}]}, {"bitmask": [{"description": "Stuck", "index": 0}, {"description": "Drift", "index": 1}], "category": "Standard", "default": 0, "group": "Simulator", "longDesc": "Stuck: freeze the measurement to the current location Drift: add a linearly growing bias to the sensor data", "max": 3, "min": 0, "name": "SIM_AGP_FAIL", "shortDesc": "AGP failure mode", "type": "Int32"}, {"category": "Standard", "default": 0.0, "group": "Simulator", "name": "SIM_BARO_OFF_P", "shortDesc": "simulated barometer pressure offset", "type": "Float"}, {"category": "Standard", "default": 0.0, "group": "Simulator", "name": "SIM_BARO_OFF_T", "shortDesc": "simulated barometer temperature offset", "type": "Float", "units": "celcius"}, {"category": "Standard", "default": 10, "group": "Simulator", "max": 50, "min": 0, "name": "SIM_GPS_USED", "shortDesc": "simulated GPS number of satellites used", "type": "Int32"}, {"category": "Standard", "default": 0.0, "group": "Simulator", "name": "SIM_MAG_OFFSET_X", "shortDesc": "simulated magnetometer X offset", "type": "Float", "units": "gauss"}, {"category": "Standard", "default": 0.0, "group": "Simulator", "name": "SIM_MAG_OFFSET_Y", "shortDesc": "simulated magnetometer Y offset", "type": "Float", "units": "gauss"}, {"category": "Standard", "default": 0.0, "group": "Simulator", "name": "SIM_MAG_OFFSET_Z", "shortDesc": "simulated magnetometer Z offset", "type": "Float", "units": "gauss"}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "Set to 1 to reset parameters on next system startup (setting defaults). Platform-specific values are used if available. RC* parameters are preserved.", "name": "SYS_AUTOCONFIG", "shortDesc": "Automatically configure default values", "type": "Int32", "values": [{"description": "Keep parameters", "value": 0}, {"description": "Reset parameters to airframe defaults", "value": 1}]}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "CHANGING THIS VALUE REQUIRES A RESTART. Defines the auto-start script used to bootstrap the system.", "max": 9999999, "min": 0, "name": "SYS_AUTOSTART", "rebootRequired": true, "shortDesc": "Auto-start script index", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "If enabled, update the bootloader on the next boot. WARNING: do not cut the power during an update process, otherwise you will have to recover using some alternative method (e.g. JTAG). Instructions: - Insert an SD card - Enable this parameter - Reboot the board (plug the power or send a reboot command) - Wait until the board comes back up (or at least 2 minutes) - If it does not come back, check the file bootlog.txt on the SD card", "name": "SYS_BL_UPDATE", "rebootRequired": true, "shortDesc": "Bootloader update", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "0 : Set to 0 to do nothing 1 : Set to 1 to start a calibration at next boot This parameter is reset to zero when the temperature calibration starts. default (0, no calibration)", "max": 1, "min": 0, "name": "SYS_CAL_ACCEL", "shortDesc": "Enable auto start of accelerometer thermal calibration at the next power up", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "0 : Set to 0 to do nothing 1 : Set to 1 to start a calibration at next boot This parameter is reset to zero when the temperature calibration starts. default (0, no calibration)", "max": 1, "min": 0, "name": "SYS_CAL_BARO", "shortDesc": "Enable auto start of barometer thermal calibration at the next power up", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "0 : Set to 0 to do nothing 1 : Set to 1 to start a calibration at next boot This parameter is reset to zero when the temperature calibration starts. default (0, no calibration)", "max": 1, "min": 0, "name": "SYS_CAL_GYRO", "shortDesc": "Enable auto start of rate gyro thermal calibration at the next power up", "type": "Int32"}, {"category": "Standard", "default": 24, "group": "System", "longDesc": "A temperature increase greater than this value is required during calibration. Calibration will complete for each sensor when the temperature increase above the starting temperature exceeds the value set by SYS_CAL_TDEL. If the temperature rise is insufficient, the calibration will continue indefinitely and the board will need to be repowered to exit.", "min": 10, "name": "SYS_CAL_TDEL", "shortDesc": "Required temperature rise during thermal calibration", "type": "Int32", "units": "celcius"}, {"category": "Standard", "default": 10, "group": "System", "longDesc": "Temperature calibration will not start if the temperature of any sensor is higher than the value set by SYS_CAL_TMAX.", "name": "SYS_CAL_TMAX", "shortDesc": "Maximum starting temperature for thermal calibration", "type": "Int32", "units": "celcius"}, {"category": "Standard", "default": 5, "group": "System", "longDesc": "Temperature calibration for each sensor will ignore data if the temperature is lower than the value set by SYS_CAL_TMIN.", "name": "SYS_CAL_TMIN", "shortDesc": "Minimum starting temperature for thermal calibration", "type": "Int32", "units": "celcius"}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "If the board supports persistent storage (i.e., the KConfig variable DATAMAN_PERSISTENT_STORAGE is set), the 'Default storage' backend uses a file on persistent storage. If not supported, this backend uses non-persistent storage in RAM.", "name": "SYS_DM_BACKEND", "rebootRequired": true, "shortDesc": "Dataman storage backend", "type": "Int32", "values": [{"description": "Dataman disabled", "value": -1}, {"description": "Default storage", "value": 0}, {"description": "RAM storage", "value": 1}]}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "If enabled, future sensor calibrations will be stored to /fs/mtd_caldata. Note: this is only supported on boards with a separate calibration storage /fs/mtd_caldata.", "name": "SYS_FAC_CAL_MODE", "shortDesc": "Enable factory calibration mode", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "All sensors", "value": 1}, {"description": "All sensors except mag", "value": 2}]}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "If enabled allows MAVLink INJECT_FAILURE commands. WARNING: the failures can easily cause crashes and are to be used with caution!", "name": "SYS_FAILURE_EN", "shortDesc": "Enable failure injection", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "System", "longDesc": "Disable this if the board has no barometer, such as some of the Omnibus F4 SD variants. If disabled, the preflight checks will not check for the presence of a barometer.", "name": "SYS_HAS_BARO", "rebootRequired": true, "shortDesc": "Control if the vehicle has a barometer", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "System", "longDesc": "Disable this if the system has no GPS. If disabled, the sensors hub will not process sensor_gps, and GPS will not be available for the rest of the system.", "name": "SYS_HAS_GPS", "rebootRequired": true, "shortDesc": "Control if the vehicle has a GPS", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 1, "group": "System", "longDesc": "0: System has no magnetometer, preflight checks should pass without one. 1-N: Require the presence of N magnetometer sensors for check to pass.", "name": "SYS_HAS_MAG", "rebootRequired": true, "shortDesc": "Control if and how many magnetometers are expected", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "Set this to 0 if the board has no airspeed sensor. If set to 0, the preflight checks will not check for the presence of an airspeed sensor.", "max": 1, "min": 0, "name": "SYS_HAS_NUM_ASPD", "shortDesc": "Control if the vehicle has an airspeed sensor", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "The preflight check will fail if fewer than this number of distance sensors with valid data is present. Disable the check with 0.", "max": 4, "min": 0, "name": "SYS_HAS_NUM_DIST", "shortDesc": "Number of distance sensors to check being available", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "The preflight check will fail if fewer than this number of optical flow sensors with valid data are present.", "max": 1, "min": 0, "name": "SYS_HAS_NUM_OF", "shortDesc": "Number of optical flow sensors required to be available", "type": "Int32"}, {"category": "Standard", "default": 0, "group": "System", "longDesc": "While enabled the system will boot in Hardware-In-The-Loop (HITL) or Simulation-In-Hardware (SIH) mode and not enable all sensors and checks. When disabled the same vehicle can be flown normally. Set to 'external HITL', if the system should perform as if it were a real vehicle (the only difference to a real system is then only the parameter value, which can be used for log analysis).", "name": "SYS_HITL", "rebootRequired": true, "shortDesc": "Enable HITL/SIH mode on next boot", "type": "Int32", "values": [{"description": "external HITL", "value": -1}, {"description": "HITL and SIH disabled", "value": 0}, {"description": "HITL enabled", "value": 1}, {"description": "SIH enabled", "value": 2}]}, {"category": "Standard", "default": 1, "group": "System", "longDesc": "This is used internally only: an airframe configuration might set an expected parameter version value via PARAM_DEFAULTS_VER. This is checked on bootup against SYS_PARAM_VER, and if they do not match, parameters are reset and reloaded from the airframe configuration.", "min": 0, "name": "SYS_PARAM_VER", "shortDesc": "Parameter version", "type": "Int32"}, {"category": "Standard", "default": 1.0, "group": "System", "longDesc": "Set to 0 to disable, 1 for maximum brightness", "name": "SYS_RGB_MAXBRT", "shortDesc": "RGB Led brightness limit", "type": "Float", "units": "%"}, {"category": "Standard", "default": 1, "group": "System", "name": "SYS_STCK_EN", "shortDesc": "Enable stack checking", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 2, "group": "Testing", "name": "TEST_1", "shortDesc": "TEST_1", "type": "Int32"}, {"category": "Standard", "default": 4, "group": "Testing", "name": "TEST_2", "shortDesc": "TEST_2", "type": "Int32"}, {"category": "Standard", "default": 5.0, "group": "Testing", "name": "TEST_3", "shortDesc": "TEST_3", "type": "Float"}, {"category": "Standard", "default": 0.01, "group": "Testing", "name": "TEST_D", "shortDesc": "TEST_D", "type": "Float"}, {"category": "Standard", "default": 2.0, "group": "Testing", "name": "TEST_DEV", "shortDesc": "TEST_DEV", "type": "Float"}, {"category": "Standard", "default": 10.0, "group": "Testing", "name": "TEST_D_LP", "shortDesc": "TEST_D_LP", "type": "Float"}, {"category": "Standard", "default": 10.0, "group": "Testing", "name": "TEST_HP", "shortDesc": "TEST_HP", "type": "Float"}, {"category": "Standard", "default": 0.1, "group": "Testing", "name": "TEST_I", "shortDesc": "TEST_I", "type": "Float"}, {"category": "Standard", "default": 1.0, "group": "Testing", "name": "TEST_I_MAX", "shortDesc": "TEST_I_MAX", "type": "Float"}, {"category": "Standard", "default": 10.0, "group": "Testing", "name": "TEST_LP", "shortDesc": "TEST_LP", "type": "Float"}, {"category": "Standard", "default": 1.0, "group": "Testing", "name": "TEST_MAX", "shortDesc": "TEST_MAX", "type": "Float"}, {"category": "Standard", "default": 1.0, "group": "Testing", "name": "TEST_MEAN", "shortDesc": "TEST_MEAN", "type": "Float"}, {"category": "Standard", "default": -1.0, "group": "Testing", "name": "TEST_MIN", "shortDesc": "TEST_MIN", "type": "Float"}, {"category": "Standard", "default": 0.2, "group": "Testing", "name": "TEST_P", "shortDesc": "TEST_P", "type": "Float"}, {"category": "Standard", "default": 12345678, "group": "Testing", "name": "TEST_PARAMS", "shortDesc": "TEST_PARAMS", "type": "Int32"}, {"category": "Standard", "default": 16, "group": "Testing", "name": "TEST_RC2_X", "shortDesc": "TEST_RC2_X", "type": "Int32"}, {"category": "Standard", "default": 8, "group": "Testing", "name": "TEST_RC_X", "shortDesc": "TEST_RC_X", "type": "Int32"}, {"category": "Standard", "default": 0.5, "group": "Testing", "name": "TEST_TRIM", "shortDesc": "TEST_TRIM", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_A0_ID", "shortDesc": "ID of Accelerometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_A0_TMAX", "shortDesc": "Accelerometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_TMIN", "shortDesc": "Accelerometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_A0_TREF", "shortDesc": "Accelerometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X0_0", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X0_1", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X0_2", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X1_0", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X1_1", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X1_2", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X2_0", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X2_1", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X2_2", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X3_0", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X3_1", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A0_X3_2", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_A1_ID", "shortDesc": "ID of Accelerometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_A1_TMAX", "shortDesc": "Accelerometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_TMIN", "shortDesc": "Accelerometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_A1_TREF", "shortDesc": "Accelerometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X0_0", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X0_1", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X0_2", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X1_0", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X1_1", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X1_2", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X2_0", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X2_1", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X2_2", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X3_0", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X3_1", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A1_X3_2", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_A2_ID", "shortDesc": "ID of Accelerometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_A2_TMAX", "shortDesc": "Accelerometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_TMIN", "shortDesc": "Accelerometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_A2_TREF", "shortDesc": "Accelerometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X0_0", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X0_1", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X0_2", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X1_0", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X1_1", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X1_2", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X2_0", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X2_1", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X2_2", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X3_0", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X3_1", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A2_X3_2", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_A3_ID", "shortDesc": "ID of Accelerometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_A3_TMAX", "shortDesc": "Accelerometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_TMIN", "shortDesc": "Accelerometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_A3_TREF", "shortDesc": "Accelerometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X0_0", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X0_1", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X0_2", "shortDesc": "Accelerometer offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X1_0", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X1_1", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X1_2", "shortDesc": "Accelerometer offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X2_0", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X2_1", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X2_2", "shortDesc": "Accelerometer offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X3_0", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X3_1", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_A3_X3_2", "shortDesc": "Accelerometer offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Thermal Compensation", "name": "TC_A_ENABLE", "rebootRequired": true, "shortDesc": "Thermal compensation for accelerometer sensors", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_B0_ID", "shortDesc": "ID of Barometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 75.0, "group": "Thermal Compensation", "name": "TC_B0_TMAX", "shortDesc": "Barometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 5.0, "group": "Thermal Compensation", "name": "TC_B0_TMIN", "shortDesc": "Barometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 40.0, "group": "Thermal Compensation", "name": "TC_B0_TREF", "shortDesc": "Barometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B0_X0", "shortDesc": "Barometer offset temperature ^0 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B0_X1", "shortDesc": "Barometer offset temperature ^1 polynomial coefficients", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B0_X2", "shortDesc": "Barometer offset temperature ^2 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B0_X3", "shortDesc": "Barometer offset temperature ^3 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B0_X4", "shortDesc": "Barometer offset temperature ^4 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B0_X5", "shortDesc": "Barometer offset temperature ^5 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_B1_ID", "shortDesc": "ID of Barometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 75.0, "group": "Thermal Compensation", "name": "TC_B1_TMAX", "shortDesc": "Barometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 5.0, "group": "Thermal Compensation", "name": "TC_B1_TMIN", "shortDesc": "Barometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 40.0, "group": "Thermal Compensation", "name": "TC_B1_TREF", "shortDesc": "Barometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B1_X0", "shortDesc": "Barometer offset temperature ^0 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B1_X1", "shortDesc": "Barometer offset temperature ^1 polynomial coefficients", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B1_X2", "shortDesc": "Barometer offset temperature ^2 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B1_X3", "shortDesc": "Barometer offset temperature ^3 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B1_X4", "shortDesc": "Barometer offset temperature ^4 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B1_X5", "shortDesc": "Barometer offset temperature ^5 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_B2_ID", "shortDesc": "ID of Barometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 75.0, "group": "Thermal Compensation", "name": "TC_B2_TMAX", "shortDesc": "Barometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 5.0, "group": "Thermal Compensation", "name": "TC_B2_TMIN", "shortDesc": "Barometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 40.0, "group": "Thermal Compensation", "name": "TC_B2_TREF", "shortDesc": "Barometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B2_X0", "shortDesc": "Barometer offset temperature ^0 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B2_X1", "shortDesc": "Barometer offset temperature ^1 polynomial coefficients", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B2_X2", "shortDesc": "Barometer offset temperature ^2 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B2_X3", "shortDesc": "Barometer offset temperature ^3 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B2_X4", "shortDesc": "Barometer offset temperature ^4 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B2_X5", "shortDesc": "Barometer offset temperature ^5 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_B3_ID", "shortDesc": "ID of Barometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 75.0, "group": "Thermal Compensation", "name": "TC_B3_TMAX", "shortDesc": "Barometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 5.0, "group": "Thermal Compensation", "name": "TC_B3_TMIN", "shortDesc": "Barometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 40.0, "group": "Thermal Compensation", "name": "TC_B3_TREF", "shortDesc": "Barometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B3_X0", "shortDesc": "Barometer offset temperature ^0 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B3_X1", "shortDesc": "Barometer offset temperature ^1 polynomial coefficients", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B3_X2", "shortDesc": "Barometer offset temperature ^2 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B3_X3", "shortDesc": "Barometer offset temperature ^3 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B3_X4", "shortDesc": "Barometer offset temperature ^4 polynomial coefficient", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_B3_X5", "shortDesc": "Barometer offset temperature ^5 polynomial coefficient", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Thermal Compensation", "name": "TC_B_ENABLE", "rebootRequired": true, "shortDesc": "Thermal compensation for barometric pressure sensors", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_G0_ID", "shortDesc": "ID of Gyro that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_G0_TMAX", "shortDesc": "Gyro calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_TMIN", "shortDesc": "Gyro calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_G0_TREF", "shortDesc": "Gyro calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X0_0", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X0_1", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X0_2", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X1_0", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X1_1", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X1_2", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X2_0", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X2_1", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X2_2", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X3_0", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X3_1", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G0_X3_2", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_G1_ID", "shortDesc": "ID of Gyro that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_G1_TMAX", "shortDesc": "Gyro calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_TMIN", "shortDesc": "Gyro calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_G1_TREF", "shortDesc": "Gyro calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X0_0", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X0_1", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X0_2", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X1_0", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X1_1", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X1_2", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X2_0", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X2_1", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X2_2", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X3_0", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X3_1", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G1_X3_2", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_G2_ID", "shortDesc": "ID of Gyro that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_G2_TMAX", "shortDesc": "Gyro calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_TMIN", "shortDesc": "Gyro calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_G2_TREF", "shortDesc": "Gyro calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X0_0", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X0_1", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X0_2", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X1_0", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X1_1", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X1_2", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X2_0", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X2_1", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X2_2", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X3_0", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X3_1", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G2_X3_2", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_G3_ID", "shortDesc": "ID of Gyro that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_G3_TMAX", "shortDesc": "Gyro calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_TMIN", "shortDesc": "Gyro calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_G3_TREF", "shortDesc": "Gyro calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X0_0", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X0_1", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X0_2", "shortDesc": "Gyro rate offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X1_0", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X1_1", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X1_2", "shortDesc": "Gyro rate offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X2_0", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X2_1", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X2_2", "shortDesc": "Gyro rate offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X3_0", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X3_1", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_G3_X3_2", "shortDesc": "Gyro rate offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Thermal Compensation", "name": "TC_G_ENABLE", "rebootRequired": true, "shortDesc": "Thermal compensation for rate gyro sensors", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_M0_ID", "shortDesc": "ID of Magnetometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_M0_TMAX", "shortDesc": "Magnetometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_TMIN", "shortDesc": "Magnetometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_M0_TREF", "shortDesc": "Magnetometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X0_0", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X0_1", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X0_2", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X1_0", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X1_1", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X1_2", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X2_0", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X2_1", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X2_2", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X3_0", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X3_1", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M0_X3_2", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_M1_ID", "shortDesc": "ID of Magnetometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_M1_TMAX", "shortDesc": "Magnetometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_TMIN", "shortDesc": "Magnetometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_M1_TREF", "shortDesc": "Magnetometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X0_0", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X0_1", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X0_2", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X1_0", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X1_1", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X1_2", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X2_0", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X2_1", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X2_2", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X3_0", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X3_1", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M1_X3_2", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_M2_ID", "shortDesc": "ID of Magnetometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_M2_TMAX", "shortDesc": "Magnetometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_TMIN", "shortDesc": "Magnetometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_M2_TREF", "shortDesc": "Magnetometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X0_0", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X0_1", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X0_2", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X1_0", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X1_1", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X1_2", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X2_0", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X2_1", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X2_2", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X3_0", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X3_1", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M2_X3_2", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0, "group": "Thermal Compensation", "name": "TC_M3_ID", "shortDesc": "ID of Magnetometer that the calibration is for", "type": "Int32"}, {"category": "System", "default": 100.0, "group": "Thermal Compensation", "name": "TC_M3_TMAX", "shortDesc": "Magnetometer calibration maximum temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_TMIN", "shortDesc": "Magnetometer calibration minimum temperature", "type": "Float"}, {"category": "System", "default": 25.0, "group": "Thermal Compensation", "name": "TC_M3_TREF", "shortDesc": "Magnetometer calibration reference temperature", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X0_0", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X0_1", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X0_2", "shortDesc": "Magnetometer offset temperature ^0 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X1_0", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X1_1", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X1_2", "shortDesc": "Magnetometer offset temperature ^1 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X2_0", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X2_1", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X2_2", "shortDesc": "Magnetometer offset temperature ^2 polynomial coefficient - Z axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X3_0", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - X axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X3_1", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - Y axis", "type": "Float"}, {"category": "System", "default": 0.0, "group": "Thermal Compensation", "name": "TC_M3_X3_2", "shortDesc": "Magnetometer offset temperature ^3 polynomial coefficient - Z axis", "type": "Float"}, {"category": "Standard", "default": 0, "group": "Thermal Compensation", "name": "TC_M_ENABLE", "rebootRequired": true, "shortDesc": "Thermal compensation for magnetometer sensors", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0.0, "group": "UUV Attitude Control", "name": "UUV_DIRCT_PITCH", "shortDesc": "Direct pitch input", "type": "Float"}, {"category": "Standard", "default": 0.0, "group": "UUV Attitude Control", "name": "UUV_DIRCT_ROLL", "shortDesc": "Direct roll input", "type": "Float"}, {"category": "Standard", "default": 0.0, "group": "UUV Attitude Control", "name": "UUV_DIRCT_THRUST", "shortDesc": "Direct thrust input", "type": "Float"}, {"category": "Standard", "default": 0.0, "group": "UUV Attitude Control", "name": "UUV_DIRCT_YAW", "shortDesc": "Direct yaw input", "type": "Float"}, {"category": "Standard", "default": 0, "group": "UUV Attitude Control", "name": "UUV_INPUT_MODE", "shortDesc": "Select Input Mode", "type": "Int32", "values": [{"description": "use Attitude Setpoints", "value": 0}, {"description": "Direct Feedthrough", "value": 1}]}, {"category": "Standard", "decimalPlaces": 2, "default": 2.0, "group": "UUV Attitude Control", "name": "UUV_PITCH_D", "shortDesc": "Pitch differential gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 4.0, "group": "UUV Attitude Control", "name": "UUV_PITCH_P", "shortDesc": "Pitch proportional gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.5, "group": "UUV Attitude Control", "name": "UUV_ROLL_D", "shortDesc": "Roll differential gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 4.0, "group": "UUV Attitude Control", "name": "UUV_ROLL_P", "shortDesc": "Roll proportional gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 2.0, "group": "UUV Attitude Control", "name": "UUV_YAW_D", "shortDesc": "Yaw differential gain", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 4.0, "group": "UUV Attitude Control", "name": "UUV_YAW_P", "shortDesc": "Yawh proportional gain", "type": "Float"}, {"category": "Standard", "default": 0.2, "group": "UUV Position Control", "name": "UUV_GAIN_X_D", "shortDesc": "Gain of D controller X", "type": "Float"}, {"category": "Standard", "default": 1.0, "group": "UUV Position Control", "name": "UUV_GAIN_X_P", "shortDesc": "Gain of P controller X", "type": "Float"}, {"category": "Standard", "default": 0.2, "group": "UUV Position Control", "name": "UUV_GAIN_Y_D", "shortDesc": "Gain of D controller Y", "type": "Float"}, {"category": "Standard", "default": 1.0, "group": "UUV Position Control", "name": "UUV_GAIN_Y_P", "shortDesc": "Gain of P controller Y", "type": "Float"}, {"category": "Standard", "default": 0.2, "group": "UUV Position Control", "name": "UUV_GAIN_Z_D", "shortDesc": "Gain of D controller Z", "type": "Float"}, {"category": "Standard", "default": 1.0, "group": "UUV Position Control", "name": "UUV_GAIN_Z_P", "shortDesc": "Gain of P controller Z", "type": "Float"}, {"category": "Standard", "default": 1, "group": "UUV Position Control", "name": "UUV_STAB_MODE", "shortDesc": "Stabilization mode(1) or Position Control(0)", "type": "Int32", "values": [{"description": "Position Control", "value": 0}, {"description": "Stabilization Mode", "value": 1}]}, {"category": "Standard", "default": 2130706433, "group": "UXRCE-DDS Client", "longDesc": "If ethernet is enabled and is the selected configuration for uXRCE-DDS, the selected Agent IP address will be set and used. Decimal dot notation is not supported. IP address must be provided in int32 format. For example, 192.168.1.2 is mapped to -1062731518; 127.0.0.1 is mapped to 2130706433.", "name": "UXRCE_DDS_AG_IP", "rebootRequired": true, "shortDesc": "uXRCE-DDS Agent IP address", "type": "Int32"}, {"category": "System", "default": 0, "group": "UXRCE-DDS Client", "longDesc": "uXRCE-DDS domain ID", "name": "UXRCE_DDS_DOM_ID", "rebootRequired": true, "shortDesc": "uXRCE-DDS domain ID", "type": "Int32"}, {"category": "System", "default": 1, "group": "UXRCE-DDS Client", "longDesc": "uXRCE-DDS key, must be different from zero. In a single agent - multi client configuration, each client must have a unique session key.", "name": "UXRCE_DDS_KEY", "rebootRequired": true, "shortDesc": "uXRCE-DDS session key", "type": "Int32"}, {"category": "Standard", "default": 8888, "group": "UXRCE-DDS Client", "longDesc": "If ethernet is enabled and is the selected configuration for uXRCE-DDS, the selected UDP port will be set and used.", "max": 65535, "min": 0, "name": "UXRCE_DDS_PRT", "rebootRequired": true, "shortDesc": "uXRCE-DDS UDP port", "type": "Int32"}, {"category": "System", "default": 0, "group": "UXRCE-DDS Client", "longDesc": "Set the participant configuration on the Agent's system. 0: Use the default configuration. 1: Restrict messages to localhost (use in combination with ROS_LOCALHOST_ONLY=1). 2: Use a custom participant with the profile name \"px4_participant\".", "max": 2, "min": 0, "name": "UXRCE_DDS_PTCFG", "rebootRequired": true, "shortDesc": "uXRCE-DDS participant configuration", "type": "Int32", "values": [{"description": "Default", "value": 0}, {"description": "Localhost-only", "value": 1}, {"description": "Custom participant", "value": 2}]}, {"category": "System", "default": -1, "group": "UXRCE-DDS Client", "longDesc": "Specifies after how many seconds without receiving data the DDS connection is reestablished. A value less than one disables the RX rate timeout.", "name": "UXRCE_DDS_RX_TO", "rebootRequired": true, "shortDesc": "RX rate timeout configuration", "type": "Int32", "units": "s"}, {"category": "System", "default": 0, "group": "UXRCE-DDS Client", "longDesc": "When enabled along with UXRCE_DDS_SYNCT, uxrce_dds_client will set the system clock using the agents UTC timestamp.", "name": "UXRCE_DDS_SYNCC", "rebootRequired": true, "shortDesc": "Enable uXRCE-DDS system clock synchronization", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": 1, "group": "UXRCE-DDS Client", "longDesc": "When enabled, uxrce_dds_client will synchronize the timestamps of the incoming and outgoing messages measuring the offset between the Agent OS time and the PX4 time.", "name": "UXRCE_DDS_SYNCT", "rebootRequired": true, "shortDesc": "Enable uXRCE-DDS timestamp synchronization", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "System", "default": 3, "group": "UXRCE-DDS Client", "longDesc": "Specifies after how many seconds without sending data the DDS connection is reestablished. A value less than one disables the TX rate timeout.", "name": "UXRCE_DDS_TX_TO", "rebootRequired": true, "shortDesc": "TX rate timeout configuration", "type": "Int32", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 8.0, "group": "VTOL Attitude Control", "increment": 1.0, "longDesc": "Airspeed at which we can start blending both fw and mc controls. Set to 0 to disable.", "max": 30.0, "min": 0.0, "name": "VT_ARSP_BLEND", "shortDesc": "Transition blending airspeed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 2, "default": 10.0, "group": "VTOL Attitude Control", "increment": 1.0, "longDesc": "Airspeed at which we can switch to fw mode", "max": 30.0, "min": 0.0, "name": "VT_ARSP_TRANS", "shortDesc": "Transition airspeed", "type": "Float", "units": "m/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 1.0, "group": "VTOL Attitude Control", "increment": 0.1, "longDesc": "Time in seconds it takes to tilt form VT_TILT_FW to VT_TILT_MC.", "max": 10.0, "min": 0.1, "name": "VT_BT_TILT_DUR", "shortDesc": "Duration motor tilt up in backtransition", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "VTOL Attitude Control", "increment": 0.05, "max": 0.3, "min": 0.0, "name": "VT_B_DEC_I", "shortDesc": "Backtransition deceleration setpoint to pitch I gain", "type": "Float", "units": "rad s/m"}, {"category": "Standard", "decimalPlaces": 2, "default": 2.0, "group": "VTOL Attitude Control", "increment": 0.1, "longDesc": "Used to calculate back transition distance in an auto mode. For standard vtol and tiltrotors a controller is used to track this value during the transition.", "max": 10.0, "min": 0.5, "name": "VT_B_DEC_MSS", "shortDesc": "Approximate deceleration during back transition", "type": "Float", "units": "m/s^2"}, {"category": "Standard", "decimalPlaces": 2, "default": 10.0, "group": "VTOL Attitude Control", "increment": 1.0, "longDesc": "Transition is also declared over if the groundspeed drops below MPC_XY_CRUISE.", "max": 20.0, "min": 0.1, "name": "VT_B_TRANS_DUR", "shortDesc": "Maximum duration of a back transition", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": 3.0, "group": "VTOL Attitude Control", "increment": 0.1, "longDesc": "This sets the duration during which the MC motors ramp up to the commanded thrust during the back transition stage.", "max": 20.0, "min": 0.0, "name": "VT_B_TRANS_RAMP", "shortDesc": "Back transition MC motor ramp up time", "type": "Float", "units": "s"}, {"category": "Standard", "default": 1, "group": "VTOL Attitude Control", "longDesc": "If set to 1 the control surfaces are locked at the disarmed value in multicopter mode.", "name": "VT_ELEV_MC_LOCK", "shortDesc": "Lock control surfaces in hover", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled", "value": 1}]}, {"category": "Standard", "default": 0, "group": "VTOL Attitude Control", "longDesc": "Prevents downforce from pitching the body down when facing wind. Uses puller/pusher (standard VTOL), or forward-tilt (tiltrotor VTOL) to accelerate forward instead. Only active if demanded pitch is below VT_PITCH_MIN. Use VT_FWD_THRUST_SC to tune it. Descend mode is treated as Landing too. Only active (if enabled) in height-rate controlled modes.", "name": "VT_FWD_THRUST_EN", "shortDesc": "Use fixed-wing actuation in hover to accelerate forward", "type": "Int32", "values": [{"description": "Disabled", "value": 0}, {"description": "Enabled (except LANDING)", "value": 1}, {"description": "Enabled if above MPC_LAND_ALT1", "value": 2}, {"description": "Enabled if above MPC_LAND_ALT2", "value": 3}, {"description": "Enabled constantly", "value": 4}, {"description": "Enabled if above MPC_LAND_ALT1 (except LANDING)", "value": 5}, {"description": "Enabled if above MPC_LAND_ALT2 (except LANDING)", "value": 6}]}, {"category": "Standard", "decimalPlaces": 2, "default": 0.7, "group": "VTOL Attitude Control", "increment": 0.01, "longDesc": "Scale applied to the demanded pitch (below VT_PITCH_MIN) to get the fixed-wing forward actuation in hover mode. Enabled via VT_FWD_THRUST_EN.", "max": 5.0, "min": 0.0, "name": "VT_FWD_THRUST_SC", "shortDesc": "Fixed-wing actuation thrust scale in hover", "type": "Float"}, {"bitmask": [{"description": "Yaw", "index": 0}, {"description": "Roll", "index": 1}, {"description": "Pitch", "index": 2}], "category": "Standard", "default": 0, "group": "VTOL Attitude Control", "longDesc": "Enable differential thrust seperately for roll, pitch, yaw in forward (fixed-wing) mode. The effectiveness of differential thrust around the corresponding axis can be tuned by setting VT_FW_DIFTHR_S_R / VT_FW_DIFTHR_S_P / VT_FW_DIFTHR_S_Y.", "max": 7, "min": 0, "name": "VT_FW_DIFTHR_EN", "shortDesc": "Differential thrust in forwards flight", "type": "Int32"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "VTOL Attitude Control", "increment": 0.1, "longDesc": "Differential thrust in forward flight is enabled via VT_FW_DIFTHR_EN.", "max": 2.0, "min": 0.0, "name": "VT_FW_DIFTHR_S_P", "shortDesc": "Pitch differential thrust factor in forward flight", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 1.0, "group": "VTOL Attitude Control", "increment": 0.1, "longDesc": "Differential thrust in forward flight is enabled via VT_FW_DIFTHR_EN.", "max": 2.0, "min": 0.0, "name": "VT_FW_DIFTHR_S_R", "shortDesc": "Roll differential thrust factor in forward flight", "type": "Float"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.1, "group": "VTOL Attitude Control", "increment": 0.1, "longDesc": "Differential thrust in forward flight is enabled via VT_FW_DIFTHR_EN.", "max": 2.0, "min": 0.0, "name": "VT_FW_DIFTHR_S_Y", "shortDesc": "Yaw differential thrust factor in forward flight", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "VTOL Attitude Control", "increment": 1.0, "longDesc": "Minimum altitude for fixed-wing flight. When the vehicle is in fixed-wing mode and the altitude drops below this altitude (relative altitude above local origin), it will instantly switch back to MC mode and execute behavior defined in COM_QC_ACT.", "max": 200.0, "min": 0.0, "name": "VT_FW_MIN_ALT", "shortDesc": "Quad-chute altitude", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "VTOL Attitude Control", "increment": 1, "longDesc": "Maximum height above the ground (if available, otherwise above Home if available, otherwise above the local origin) where triggering a quad-chute is possible. At high altitudes there is a big risk to deplete the battery and therefore crash if quad-chuting there.", "min": 0, "name": "VT_FW_QC_HMAX", "shortDesc": "Quad-chute maximum height", "type": "Int32", "units": "m"}, {"category": "Standard", "default": 0, "group": "VTOL Attitude Control", "longDesc": "Absolute pitch threshold for quad-chute triggering in FW mode. Above this the vehicle will transition back to MC mode and execute behavior defined in COM_QC_ACT. Set to 0 do disable this threshold.", "max": 180, "min": 0, "name": "VT_FW_QC_P", "shortDesc": "Quad-chute max pitch threshold", "type": "Int32", "units": "deg"}, {"category": "Standard", "default": 0, "group": "VTOL Attitude Control", "longDesc": "Absolute roll threshold for quad-chute triggering in FW mode. Above this the vehicle will transition back to MC mode and execute behavior defined in COM_QC_ACT. Set to 0 do disable this threshold.", "max": 180, "min": 0, "name": "VT_FW_QC_R", "shortDesc": "Quad-chute max roll threshold", "type": "Int32", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 5.0, "group": "VTOL Attitude Control", "increment": 1.0, "longDesc": "Time in seconds used for a transition", "max": 20.0, "min": 0.1, "name": "VT_F_TRANS_DUR", "shortDesc": "Duration of a front transition", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "VTOL Attitude Control", "increment": 0.01, "max": 1.0, "min": 0.0, "name": "VT_F_TRANS_THR", "shortDesc": "Target throttle value for the transition to fixed-wing flight", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 6.0, "group": "VTOL Attitude Control", "increment": 0.5, "longDesc": "The duration of the front transition when there is no airspeed feedback available. When airspeed is used, transition timeout is declared if airspeed does not reach VT_ARSP_BLEND after this time.", "max": 30.0, "min": 1.0, "name": "VT_F_TR_OL_TM", "shortDesc": "Airspeed-less front transition time (open loop)", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 1, "default": -5.0, "group": "VTOL Attitude Control", "increment": 0.1, "longDesc": "Overrides VT_PITCH_MIN when the vehicle is in LAND mode (hovering). During landing it can be beneficial to reduce the pitch angle to reduce the generated lift in head wind.", "max": 45.0, "min": -10.0, "name": "VT_LND_PITCH_MIN", "shortDesc": "Minimum pitch angle during hover landing", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 1, "default": -5.0, "group": "VTOL Attitude Control", "increment": 0.1, "longDesc": "Any pitch setpoint below this value is translated to a forward force by the fixed-wing forward actuation if VT_FWD_TRHUST_EN is set.", "max": 45.0, "min": -10.0, "name": "VT_PITCH_MIN", "shortDesc": "Minimum pitch angle during hover", "type": "Float", "units": "deg"}, {"category": "Standard", "decimalPlaces": 2, "default": 0.33, "group": "VTOL Attitude Control", "increment": 0.01, "longDesc": "Defines the slew rate of the puller/pusher throttle during transitions. Zero will deactivate the slew rate limiting and thus produce an instant throttle rise to the transition throttle VT_F_TRANS_THR.", "min": 0.0, "name": "VT_PSHER_SLEW", "shortDesc": "Pusher throttle ramp up slew rate", "type": "Float", "units": "1/s"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "VTOL Attitude Control", "increment": 1.0, "longDesc": "Altitude error threshold for quad-chute triggering during fixed-wing flight. The check is only active if altitude is controlled and the vehicle is below the current altitude reference. The altitude error is relative to the highest altitude the vehicle has achieved since it has flown below the current altitude reference. Set to 0 do disable.", "max": 200.0, "min": 0.0, "name": "VT_QC_ALT_LOSS", "shortDesc": "Quad-chute uncommanded descent threshold", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 20.0, "group": "VTOL Attitude Control", "increment": 1.0, "longDesc": "Altitude loss threshold for quad-chute triggering during VTOL transition to fixed-wing flight in altitude-controlled flight modes. Active until 5s after completing transition to fixed-wing. If the current altitude is more than this value below the altitude at the beginning of the transition, it will instantly switch back to MC mode and execute behavior defined in COM_QC_ACT. Set to 0 do disable this threshold.", "max": 50.0, "min": 0.0, "name": "VT_QC_T_ALT_LOSS", "shortDesc": "Quad-chute transition altitude loss threshold", "type": "Float", "units": "m"}, {"category": "Standard", "decimalPlaces": 1, "default": 0.0, "group": "VTOL Attitude Control", "increment": 0.1, "max": 1.0, "min": -1.0, "name": "VT_SPOILER_MC_LD", "shortDesc": "Spoiler setting while landing (hover)", "type": "Float", "units": "norm"}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "VTOL Attitude Control", "increment": 0.01, "max": 1.0, "min": 0.0, "name": "VT_TILT_FW", "shortDesc": "Normalized tilt in FW", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.0, "group": "VTOL Attitude Control", "increment": 0.01, "max": 1.0, "min": 0.0, "name": "VT_TILT_MC", "shortDesc": "Normalized tilt in Hover", "type": "Float"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.4, "group": "VTOL Attitude Control", "increment": 0.01, "max": 1.0, "min": 0.0, "name": "VT_TILT_TRANS", "shortDesc": "Normalized tilt in transition to FW", "type": "Float"}, {"category": "Standard", "decimalPlaces": 1, "default": 2.0, "group": "VTOL Attitude Control", "increment": 0.1, "longDesc": "Minimum time in seconds for front transition.", "max": 20.0, "min": 0.0, "name": "VT_TRANS_MIN_TM", "shortDesc": "Front transition minimum time", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 3, "default": 0.5, "group": "VTOL Attitude Control", "increment": 0.01, "longDesc": "Time in seconds it takes to tilt form VT_TILT_TRANS to VT_TILT_FW.", "max": 5.0, "min": 0.1, "name": "VT_TRANS_P2_DUR", "shortDesc": "Duration of front transition phase 2", "type": "Float", "units": "s"}, {"category": "Standard", "decimalPlaces": 2, "default": 15.0, "group": "VTOL Attitude Control", "increment": 1.0, "longDesc": "Time in seconds after which transition will be cancelled.", "max": 30.0, "min": 0.1, "name": "VT_TRANS_TIMEOUT", "shortDesc": "Front transition timeout", "type": "Float", "units": "s"}, {"category": "Standard", "default": 0, "group": "VTOL Attitude Control", "max": 2, "min": 0, "name": "VT_TYPE", "rebootRequired": true, "shortDesc": "VTOL Type (Tailsitter=0, Tiltrotor=1, Standard=2)", "type": "Int32", "values": [{"description": "Tailsitter", "value": 0}, {"description": "Tiltrotor", "value": 1}, {"description": "Standard", "value": 2}]}, {"category": "Standard", "decimalPlaces": 3, "default": 1.0, "group": "VTOL Attitude Control", "increment": 0.01, "longDesc": "The desired gain to convert roll sp into yaw rate sp.", "max": 3.0, "min": 0.0, "name": "WV_GAIN", "shortDesc": "Weather-vane roll angle to yawrate", "type": "Float", "units": "Hz"}, {"category": "Standard", "decimalPlaces": 1, "default": 80.0, "group": "VTOL Takeoff", "increment": 1.0, "longDesc": "Altitude relative to home at which vehicle will loiter after front transition.", "max": 300.0, "min": 20.0, "name": "VTO_LOITER_ALT", "shortDesc": "VTOL Takeoff relative loiter altitude", "type": "Float", "units": "m"}, {"category": "Standard", "default": 0, "group": "Miscellaneous", "name": "UUV_SKIP_CTRL", "shortDesc": "Skip the controller", "type": "Int32", "values": [{"description": "use the module's controller", "value": 0}, {"description": "skip the controller and feedthrough the setpoints", "value": 1}]}], "translation": {"items": {"parameters": {"list": {"items": {"bitmask": {"list": {"key": "index", "translate": ["description"]}}, "values": {"list": {"key": "value", "translate": ["description"]}}}, "key": "name", "translate": ["shortDesc", "longDesc"], "translate-global": ["category", "group"]}}}}, "version": 1} \ No newline at end of file diff --git a/docs/public/middleware/graph_full.json b/docs/public/middleware/graph_full.json index a609e0877f..01bb52fd5b 100644 --- a/docs/public/middleware/graph_full.json +++ b/docs/public/middleware/graph_full.json @@ -1 +1 @@ -{"nodes": [{"id": "m_internal_combustion_engine_control", "name": "internal_combustion_engine_control", "type": "Module", "color": "#666666"}, {"id": "m_fw_autotune_attitude_control", "name": "fw_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_autotune_attitude_control", "name": "mc_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_landing_target_estimator", "name": "landing_target_estimator", "type": "Module", "color": "#666666"}, {"id": "m_local_position_estimator", "name": "local_position_estimator", "type": "Module", "color": "#666666"}, {"id": "m_temperature_compensation", "name": "temperature_compensation", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_serial", "name": "lightware_laser_serial", "type": "Module", "color": "#666666"}, {"id": "m_system_power_simulator", "name": "system_power_simulator", "type": "Module", "color": "#666666"}, {"id": "m_lightware_sf45_serial", "name": "lightware_sf45_serial", "type": "Module", "color": "#666666"}, {"id": "m_pm_selector_auterion", "name": "pm_selector_auterion", "type": "Module", "color": "#666666"}, {"id": "m_attitude_estimator_q", "name": "attitude_estimator_q", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_i2c", "name": "lightware_laser_i2c", "type": "Module", "color": "#666666"}, {"id": "m_sensor_airspeed_sim", "name": "sensor_airspeed_sim", "type": "Module", "color": "#666666"}, {"id": "m_flight_mode_manager", "name": "flight_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_airship_att_control", "name": "airship_att_control", "type": "Module", "color": "#666666"}, {"id": "m_rover_differential", "name": "rover_differential", "type": "Module", "color": "#666666"}, {"id": "m_mag_bias_estimator", "name": "mag_bias_estimator", "type": "Module", "color": "#666666"}, {"id": "m_io_bypass_control", "name": "io_bypass_control", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_is31fl3195", "name": "rgbled_is31fl3195", "type": "Module", "color": "#666666"}, {"id": "m_payload_deliverer", "name": "payload_deliverer", "type": "Module", "color": "#666666"}, {"id": "m_battery_simulator", "name": "battery_simulator", "type": "Module", "color": "#666666"}, {"id": "m_simulator_mavlink", "name": "simulator_mavlink", "type": "Module", "color": "#666666"}, {"id": "m_rover_pos_control", "name": "rover_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_control_allocator", "name": "control_allocator", "type": "Module", "color": "#666666"}, {"id": "m_airspeed_selector", "name": "airspeed_selector", "type": "Module", "color": "#666666"}, {"id": "m_cdcacm_autostart", "name": "cdcacm_autostart", "type": "Module", "color": "#666666"}, {"id": "m_uxrce_dds_client", "name": "uxrce_dds_client", "type": "Module", "color": "#666666"}, {"id": "m_gyro_calibration", "name": "gyro_calibration", "type": "Module", "color": "#666666"}, {"id": "m_vtol_att_control", "name": "vtol_att_control", "type": "Module", "color": "#666666"}, {"id": "m_pca9685_pwm_out", "name": "pca9685_pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_frsky_telemetry", "name": "frsky_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_ncp5623c", "name": "rgbled_ncp5623c", "type": "Module", "color": "#666666"}, {"id": "m_template_module", "name": "template_module", "type": "Module", "color": "#666666"}, {"id": "m_rover_ackermann", "name": "rover_ackermann", "type": "Module", "color": "#666666"}, {"id": "m_fw_rate_control", "name": "fw_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_camera_feedback", "name": "camera_feedback", "type": "Module", "color": "#666666"}, {"id": "m_sensor_baro_sim", "name": "sensor_baro_sim", "type": "Module", "color": "#666666"}, {"id": "m_uuv_pos_control", "name": "uuv_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_rate_control", "name": "mc_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_uuv_att_control", "name": "uuv_att_control", "type": "Module", "color": "#666666"}, {"id": "m_hott_telemetry", "name": "hott_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_camera_capture", "name": "camera_capture", "type": "Module", "color": "#666666"}, {"id": "m_camera_trigger", "name": "camera_trigger", "type": "Module", "color": "#666666"}, {"id": "m_ulanding_radar", "name": "ulanding_radar", "type": "Module", "color": "#666666"}, {"id": "m_fw_att_control", "name": "fw_att_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_att_control", "name": "mc_att_control", "type": "Module", "color": "#666666"}, {"id": "m_sensor_agp_sim", "name": "sensor_agp_sim", "type": "Module", "color": "#666666"}, {"id": "m_sensor_gps_sim", "name": "sensor_gps_sim", "type": "Module", "color": "#666666"}, {"id": "m_sensor_mag_sim", "name": "sensor_mag_sim", "type": "Module", "color": "#666666"}, {"id": "m_manual_control", "name": "manual_control", "type": "Module", "color": "#666666"}, {"id": "m_fw_pos_control", "name": "fw_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_battery_status", "name": "battery_status", "type": "Module", "color": "#666666"}, {"id": "m_mc_pos_control", "name": "mc_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_actuator_test", "name": "actuator_test", "type": "Module", "color": "#666666"}, {"id": "m_linux_pwm_out", "name": "linux_pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_rpm_simulator", "name": "rpm_simulator", "type": "Module", "color": "#666666"}, {"id": "m_safety_button", "name": "safety_button", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_lp5562", "name": "rgbled_lp5562", "type": "Module", "color": "#666666"}, {"id": "m_land_detector", "name": "land_detector", "type": "Module", "color": "#666666"}, {"id": "m_rover_mecanum", "name": "rover_mecanum", "type": "Module", "color": "#666666"}, {"id": "m_simulator_sih", "name": "simulator_sih", "type": "Module", "color": "#666666"}, {"id": "m_i2c_launcher", "name": "i2c_launcher", "type": "Module", "color": "#666666"}, {"id": "m_tune_control", "name": "tune_control", "type": "Module", "color": "#666666"}, {"id": "m_ets_airspeed", "name": "ets_airspeed", "type": "Module", "color": "#666666"}, {"id": "m_sagetech_mxs", "name": "sagetech_mxs", "type": "Module", "color": "#666666"}, {"id": "m_led_control", "name": "led_control", "type": "Module", "color": "#666666"}, {"id": "m_mpu9250_i2c", "name": "mpu9250_i2c", "type": "Module", "color": "#666666"}, {"id": "m_pps_capture", "name": "pps_capture", "type": "Module", "color": "#666666"}, {"id": "m_lsm9ds1_mag", "name": "lsm9ds1_mag", "type": "Module", "color": "#666666"}, {"id": "m_rpm_capture", "name": "rpm_capture", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out_sim", "name": "pwm_out_sim", "type": "Module", "color": "#666666"}, {"id": "m_esc_battery", "name": "esc_battery", "type": "Module", "color": "#666666"}, {"id": "m_microbench", "name": "microbench", "type": "Module", "color": "#666666"}, {"id": "m_septentrio", "name": "septentrio", "type": "Module", "color": "#666666"}, {"id": "m_iridiumsbd", "name": "iridiumsbd", "type": "Module", "color": "#666666"}, {"id": "m_iam20680hp", "name": "iam20680hp", "type": "Module", "color": "#666666"}, {"id": "m_bmi088_i2c", "name": "bmi088_i2c", "type": "Module", "color": "#666666"}, {"id": "m_tone_alarm", "name": "tone_alarm", "type": "Module", "color": "#666666"}, {"id": "m_batt_smbus", "name": "batt_smbus", "type": "Module", "color": "#666666"}, {"id": "m_teraranger", "name": "teraranger", "type": "Module", "color": "#666666"}, {"id": "m_ll40ls_pwm", "name": "ll40ls_pwm", "type": "Module", "color": "#666666"}, {"id": "m_leddar_one", "name": "leddar_one", "type": "Module", "color": "#666666"}, {"id": "m_uavcannode", "name": "uavcannode", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_pwm", "name": "rgbled_pwm", "type": "Module", "color": "#666666"}, {"id": "m_send_event", "name": "send_event", "type": "Module", "color": "#666666"}, {"id": "m_pwm_input", "name": "pwm_input", "type": "Module", "color": "#666666"}, {"id": "m_rpi_rc_in", "name": "rpi_rc_in", "type": "Module", "color": "#666666"}, {"id": "m_uwb_sr150", "name": "uwb_sr150", "type": "Module", "color": "#666666"}, {"id": "m_ms5525dso", "name": "ms5525dso", "type": "Module", "color": "#666666"}, {"id": "m_tattu_can", "name": "tattu_can", "type": "Module", "color": "#666666"}, {"id": "m_icm20608g", "name": "icm20608g", "type": "Module", "color": "#666666"}, {"id": "m_icm42670p", "name": "icm42670p", "type": "Module", "color": "#666666"}, {"id": "m_icm40609d", "name": "icm40609d", "type": "Module", "color": "#666666"}, {"id": "m_icm42688p", "name": "icm42688p", "type": "Module", "color": "#666666"}, {"id": "m_adis16507", "name": "adis16507", "type": "Module", "color": "#666666"}, {"id": "m_adis16477", "name": "adis16477", "type": "Module", "color": "#666666"}, {"id": "m_adis16448", "name": "adis16448", "type": "Module", "color": "#666666"}, {"id": "m_adis16470", "name": "adis16470", "type": "Module", "color": "#666666"}, {"id": "m_adis16497", "name": "adis16497", "type": "Module", "color": "#666666"}, {"id": "m_mmc5983ma", "name": "mmc5983ma", "type": "Module", "color": "#666666"}, {"id": "m_lsm303agr", "name": "lsm303agr", "type": "Module", "color": "#666666"}, {"id": "m_board_adc", "name": "board_adc", "type": "Module", "color": "#666666"}, {"id": "m_vertiq_io", "name": "vertiq_io", "type": "Module", "color": "#666666"}, {"id": "m_thoneflow", "name": "thoneflow", "type": "Module", "color": "#666666"}, {"id": "m_vectornav", "name": "vectornav", "type": "Module", "color": "#666666"}, {"id": "m_tcbp001ta", "name": "tcbp001ta", "type": "Module", "color": "#666666"}, {"id": "m_mpl3115a2", "name": "mpl3115a2", "type": "Module", "color": "#666666"}, {"id": "m_gz_bridge", "name": "gz_bridge", "type": "Module", "color": "#666666"}, {"id": "m_navigator", "name": "navigator", "type": "Module", "color": "#666666"}, {"id": "m_commander", "name": "commander", "type": "Module", "color": "#666666"}, {"id": "m_rc_update", "name": "rc_update", "type": "Module", "color": "#666666"}, {"id": "m_rc_input", "name": "rc_input", "type": "Module", "color": "#666666"}, {"id": "m_roboclaw", "name": "roboclaw", "type": "Module", "color": "#666666"}, {"id": "m_ms4525do", "name": "ms4525do", "type": "Module", "color": "#666666"}, {"id": "m_icm20649", "name": "icm20649", "type": "Module", "color": "#666666"}, {"id": "m_icm20948", "name": "icm20948", "type": "Module", "color": "#666666"}, {"id": "m_icm45686", "name": "icm45686", "type": "Module", "color": "#666666"}, {"id": "m_iim42652", "name": "iim42652", "type": "Module", "color": "#666666"}, {"id": "m_icm20602", "name": "icm20602", "type": "Module", "color": "#666666"}, {"id": "m_icm42605", "name": "icm42605", "type": "Module", "color": "#666666"}, {"id": "m_icm20689", "name": "icm20689", "type": "Module", "color": "#666666"}, {"id": "m_iim42653", "name": "iim42653", "type": "Module", "color": "#666666"}, {"id": "m_vcm1193l", "name": "vcm1193l", "type": "Module", "color": "#666666"}, {"id": "m_qmc5883l", "name": "qmc5883l", "type": "Module", "color": "#666666"}, {"id": "m_voxl_esc", "name": "voxl_esc", "type": "Module", "color": "#666666"}, {"id": "m_mappydot", "name": "mappydot", "type": "Module", "color": "#666666"}, {"id": "m_icp101xx", "name": "icp101xx", "type": "Module", "color": "#666666"}, {"id": "m_icp201xx", "name": "icp201xx", "type": "Module", "color": "#666666"}, {"id": "m_voxl2_io", "name": "voxl2_io", "type": "Module", "color": "#666666"}, {"id": "m_neopixel", "name": "neopixel", "type": "Module", "color": "#666666"}, {"id": "m_gyro_fft", "name": "gyro_fft", "type": "Module", "color": "#666666"}, {"id": "m_load_mon", "name": "load_mon", "type": "Module", "color": "#666666"}, {"id": "m_failure", "name": "failure", "type": "Module", "color": "#666666"}, {"id": "m_tap_esc", "name": "tap_esc", "type": "Module", "color": "#666666"}, {"id": "m_asp5033", "name": "asp5033", "type": "Module", "color": "#666666"}, {"id": "m_mpu6500", "name": "mpu6500", "type": "Module", "color": "#666666"}, {"id": "m_mpu9250", "name": "mpu9250", "type": "Module", "color": "#666666"}, {"id": "m_mpu6000", "name": "mpu6000", "type": "Module", "color": "#666666"}, {"id": "m_lsm303d", "name": "lsm303d", "type": "Module", "color": "#666666"}, {"id": "m_lsm9ds1", "name": "lsm9ds1", "type": "Module", "color": "#666666"}, {"id": "m_pcf8583", "name": "pcf8583", "type": "Module", "color": "#666666"}, {"id": "m_msp_osd", "name": "msp_osd", "type": "Module", "color": "#666666"}, {"id": "m_ak09916", "name": "ak09916", "type": "Module", "color": "#666666"}, {"id": "m_iis2mdc", "name": "iis2mdc", "type": "Module", "color": "#666666"}, {"id": "m_ist8308", "name": "ist8308", "type": "Module", "color": "#666666"}, {"id": "m_ist8310", "name": "ist8310", "type": "Module", "color": "#666666"}, {"id": "m_hmc5883", "name": "hmc5883", "type": "Module", "color": "#666666"}, {"id": "m_lis3mdl", "name": "lis3mdl", "type": "Module", "color": "#666666"}, {"id": "m_ads1115", "name": "ads1115", "type": "Module", "color": "#666666"}, {"id": "m_gy_us42", "name": "gy_us42", "type": "Module", "color": "#666666"}, {"id": "m_cm8jl65", "name": "cm8jl65", "type": "Module", "color": "#666666"}, {"id": "m_vl53l0x", "name": "vl53l0x", "type": "Module", "color": "#666666"}, {"id": "m_afbrs50", "name": "afbrs50", "type": "Module", "color": "#666666"}, {"id": "m_vl53l1x", "name": "vl53l1x", "type": "Module", "color": "#666666"}, {"id": "m_tf02pro", "name": "tf02pro", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out", "name": "pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_paw3902", "name": "paw3902", "type": "Module", "color": "#666666"}, {"id": "m_paa3905", "name": "paa3905", "type": "Module", "color": "#666666"}, {"id": "m_px4flow", "name": "px4flow", "type": "Module", "color": "#666666"}, {"id": "m_pmw3901", "name": "pmw3901", "type": "Module", "color": "#666666"}, {"id": "m_mpc2520", "name": "mpc2520", "type": "Module", "color": "#666666"}, {"id": "m_lps22hb", "name": "lps22hb", "type": "Module", "color": "#666666"}, {"id": "m_lps33hw", "name": "lps33hw", "type": "Module", "color": "#666666"}, {"id": "m_crsf_rc", "name": "crsf_rc", "type": "Module", "color": "#666666"}, {"id": "m_ghst_rc", "name": "ghst_rc", "type": "Module", "color": "#666666"}, {"id": "m_sbus_rc", "name": "sbus_rc", "type": "Module", "color": "#666666"}, {"id": "m_sensors", "name": "sensors", "type": "Module", "color": "#666666"}, {"id": "m_dataman", "name": "dataman", "type": "Module", "color": "#666666"}, {"id": "m_mavlink", "name": "mavlink", "type": "Module", "color": "#666666"}, {"id": "m_batmon", "name": "batmon", "type": "Module", "color": "#666666"}, {"id": "m_ms4515", "name": "ms4515", "type": "Module", "color": "#666666"}, {"id": "m_l3gd20", "name": "l3gd20", "type": "Module", "color": "#666666"}, {"id": "m_bmi085", "name": "bmi085", "type": "Module", "color": "#666666"}, {"id": "m_bmi055", "name": "bmi055", "type": "Module", "color": "#666666"}, {"id": "m_bmi270", "name": "bmi270", "type": "Module", "color": "#666666"}, {"id": "m_bmi088", "name": "bmi088", "type": "Module", "color": "#666666"}, {"id": "m_sch16t", "name": "sch16t", "type": "Module", "color": "#666666"}, {"id": "m_cyphal", "name": "cyphal", "type": "Module", "color": "#666666"}, {"id": "m_ina238", "name": "ina238", "type": "Module", "color": "#666666"}, {"id": "m_voxlpm", "name": "voxlpm", "type": "Module", "color": "#666666"}, {"id": "m_ina220", "name": "ina220", "type": "Module", "color": "#666666"}, {"id": "m_ina226", "name": "ina226", "type": "Module", "color": "#666666"}, {"id": "m_ina228", "name": "ina228", "type": "Module", "color": "#666666"}, {"id": "m_irlock", "name": "irlock", "type": "Module", "color": "#666666"}, {"id": "m_atxxxx", "name": "atxxxx", "type": "Module", "color": "#666666"}, {"id": "m_ak8963", "name": "ak8963", "type": "Module", "color": "#666666"}, {"id": "m_bmm150", "name": "bmm150", "type": "Module", "color": "#666666"}, {"id": "m_bmm350", "name": "bmm350", "type": "Module", "color": "#666666"}, {"id": "m_rm3100", "name": "rm3100", "type": "Module", "color": "#666666"}, {"id": "m_uavcan", "name": "uavcan", "type": "Module", "color": "#666666"}, {"id": "m_pga460", "name": "pga460", "type": "Module", "color": "#666666"}, {"id": "m_tfmini", "name": "tfmini", "type": "Module", "color": "#666666"}, {"id": "m_ll40ls", "name": "ll40ls", "type": "Module", "color": "#666666"}, {"id": "m_mb12xx", "name": "mb12xx", "type": "Module", "color": "#666666"}, {"id": "m_bmp581", "name": "bmp581", "type": "Module", "color": "#666666"}, {"id": "m_ms5611", "name": "ms5611", "type": "Module", "color": "#666666"}, {"id": "m_bmp280", "name": "bmp280", "type": "Module", "color": "#666666"}, {"id": "m_dps310", "name": "dps310", "type": "Module", "color": "#666666"}, {"id": "m_bmp388", "name": "bmp388", "type": "Module", "color": "#666666"}, {"id": "m_lps25h", "name": "lps25h", "type": "Module", "color": "#666666"}, {"id": "m_ms5837", "name": "ms5837", "type": "Module", "color": "#666666"}, {"id": "m_heater", "name": "heater", "type": "Module", "color": "#666666"}, {"id": "m_dsm_rc", "name": "dsm_rc", "type": "Module", "color": "#666666"}, {"id": "m_rgbled", "name": "rgbled", "type": "Module", "color": "#666666"}, {"id": "m_gimbal", "name": "gimbal", "type": "Module", "color": "#666666"}, {"id": "m_logger", "name": "logger", "type": "Module", "color": "#666666"}, {"id": "m_tests", "name": "tests", "type": "Module", "color": "#666666"}, {"id": "m_dshot", "name": "dshot", "type": "Module", "color": "#666666"}, {"id": "m_sht3x", "name": "sht3x", "type": "Module", "color": "#666666"}, {"id": "m_sdp3x", "name": "sdp3x", "type": "Module", "color": "#666666"}, {"id": "m_px4io", "name": "px4io", "type": "Module", "color": "#666666"}, {"id": "m_srf02", "name": "srf02", "type": "Module", "color": "#666666"}, {"id": "m_srf05", "name": "srf05", "type": "Module", "color": "#666666"}, {"id": "m_spl06", "name": "spl06", "type": "Module", "color": "#666666"}, {"id": "m_spa06", "name": "spa06", "type": "Module", "color": "#666666"}, {"id": "m_auav", "name": "auav", "type": "Module", "color": "#666666"}, {"id": "m_ekf2", "name": "ekf2", "type": "Module", "color": "#666666"}, {"id": "m_bst", "name": "bst", "type": "Module", "color": "#666666"}, {"id": "m_gps", "name": "gps", "type": "Module", "color": "#666666"}, {"id": "t_vehicle_angular_velocity_groundtruth", "name": "vehicle_angular_velocity_groundtruth", "type": "topic", "color": "#7341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor_mode_change_request", "name": "distance_sensor_mode_change_request", "type": "topic", "color": "#d87541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position_groundtruth", "name": "vehicle_global_position_groundtruth", "type": "topic", "color": "#41d842", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_landing_status", "name": "position_controller_landing_status", "type": "topic", "color": "#41d871", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_internal_combustion_engine_control", "name": "internal_combustion_engine_control", "type": "topic", "color": "#41d89b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_groundtruth", "name": "vehicle_local_position_groundtruth", "type": "topic", "color": "#d8419e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_manual_control", "name": "gimbal_manager_set_manual_control", "type": "topic", "color": "#41d866", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_internal_combustion_engine_status", "name": "internal_combustion_engine_status", "type": "topic", "color": "#d84164", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_autotune_attitude_control_status", "name": "autotune_attitude_control_status", "type": "topic", "color": "#4154d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_setpoint", "name": "vehicle_local_position_setpoint", "type": "topic", "color": "#d84146", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_attitude_status", "name": "gimbal_device_attitude_status", "type": "topic", "color": "#d85841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_register_ext_component_reply", "name": "register_ext_component_reply", "type": "topic", "color": "#d85e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_groundtruth", "name": "vehicle_attitude_groundtruth", "type": "topic", "color": "#c6d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mc_virtual_attitude_setpoint", "name": "mc_virtual_attitude_setpoint", "type": "topic", "color": "#41d8a6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fw_virtual_attitude_setpoint", "name": "fw_virtual_attitude_setpoint", "type": "topic", "color": "#7f41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_attitude", "name": "gimbal_manager_set_attitude", "type": "topic", "color": "#4160d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_information", "name": "gimbal_manager_information", "type": "topic", "color": "#d1d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_status", "name": "position_controller_status", "type": "topic", "color": "#c0d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_controls_status_0", "name": "actuator_controls_status_0", "type": "topic", "color": "#b4d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorControlsStatus.msg"}, {"id": "t_gimbal_device_set_attitude", "name": "gimbal_device_set_attitude", "type": "topic", "color": "#8b41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_selector_status", "name": "estimator_selector_status", "type": "topic", "color": "#d88d41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_setpoint", "name": "vehicle_attitude_setpoint", "type": "topic", "color": "#aed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_setpoint_triplet", "name": "position_setpoint_triplet", "type": "topic", "color": "#9141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_operator_id", "name": "open_drone_id_operator_id", "type": "topic", "color": "#d841aa", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_information", "name": "gimbal_device_information", "type": "topic", "color": "#d84152", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_arm_status", "name": "open_drone_id_arm_status", "type": "topic", "color": "#d8a441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tiltrotor_extra_controls", "name": "tiltrotor_extra_controls", "type": "topic", "color": "#d8b041", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_request", "name": "uavcan_parameter_request", "type": "topic", "color": "#8bd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_control_allocator_status", "name": "control_allocator_status", "type": "topic", "color": "#4171d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_attitude_setpoint", "name": "rover_attitude_setpoint", "type": "topic", "color": "#62d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_steering_setpoint", "name": "rover_steering_setpoint", "type": "topic", "color": "#41d848", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_setpoint", "name": "manual_control_setpoint", "type": "topic", "color": "#41d877", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_throttle_setpoint", "name": "rover_throttle_setpoint", "type": "topic", "color": "#41d8be", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_velocity_setpoint", "name": "rover_velocity_setpoint", "type": "topic", "color": "#41a0d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_switches", "name": "manual_control_switches", "type": "topic", "color": "#5641d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_obstacle_distance_fused", "name": "obstacle_distance_fused", "type": "topic", "color": "#5c41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ObstacleDistance.msg"}, {"id": "t_flight_phase_estimation", "name": "flight_phase_estimation", "type": "topic", "color": "#7941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position", "name": "vehicle_global_position", "type": "topic", "color": "#9d41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_launch_detection_status", "name": "launch_detection_status", "type": "topic", "color": "#ba41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_visual_odometry", "name": "vehicle_visual_odometry", "type": "topic", "color": "#c641d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failure_detector_status", "name": "failure_detector_status", "type": "topic", "color": "#d741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_position_setpoint", "name": "rover_position_setpoint", "type": "topic", "color": "#d841b6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_torque_setpoint", "name": "vehicle_torque_setpoint", "type": "topic", "color": "#d84181", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleTorqueSetpoint.msg"}, {"id": "t_vehicle_thrust_setpoint", "name": "vehicle_thrust_setpoint", "type": "topic", "color": "#d8416a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleThrustSetpoint.msg"}, {"id": "t_vehicle_local_position", "name": "vehicle_local_position", "type": "topic", "color": "#7fd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_mocap_odometry", "name": "vehicle_mocap_odometry", "type": "topic", "color": "#56d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_rates_setpoint", "name": "vehicle_rates_setpoint", "type": "topic", "color": "#41a6d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status_flags", "name": "estimator_status_flags", "type": "topic", "color": "#a241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_value", "name": "uavcan_parameter_value", "type": "topic", "color": "#a841d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_sensor_bias", "name": "estimator_sensor_bias", "type": "topic", "color": "#85d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_land_detected", "name": "vehicle_land_detected", "type": "topic", "color": "#41d88f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_self_id", "name": "open_drone_id_self_id", "type": "topic", "color": "#419bd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_status", "name": "gimbal_manager_status", "type": "topic", "color": "#ae41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_offboard_control_mode", "name": "offboard_control_mode", "type": "topic", "color": "#d141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_differential_pressure", "name": "differential_pressure", "type": "topic", "color": "#d841b0", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_control_mode", "name": "vehicle_control_mode", "type": "topic", "color": "#d87b41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs_sim", "name": "actuator_outputs_sim", "type": "topic", "color": "#d7d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_actuator_servos_trim", "name": "actuator_servos_trim", "type": "topic", "color": "#a2d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_system", "name": "open_drone_id_system", "type": "topic", "color": "#41d8ac", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vtol_vehicle_status", "name": "vtol_vehicle_status", "type": "topic", "color": "#d8aa41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_optical_flow", "name": "sensor_optical_flow", "type": "topic", "color": "#d8b641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_target_pose", "name": "landing_target_pose", "type": "topic", "color": "#73d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command_ack", "name": "vehicle_command_ack", "type": "topic", "color": "#68d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_constraints", "name": "vehicle_constraints", "type": "topic", "color": "#41d86c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_trajectory_setpoint", "name": "trajectory_setpoint", "type": "topic", "color": "#41d8b2", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_figure_eight_status", "name": "figure_eight_status", "type": "topic", "color": "#41d8c4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_esc_serial_passthru", "name": "esc_serial_passthru", "type": "topic", "color": "#4148d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/MavlinkTunnel.msg"}, {"id": "t_rover_rate_setpoint", "name": "rover_rate_setpoint", "type": "topic", "color": "#d841cd", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_aux_global_position", "name": "aux_global_position", "type": "topic", "color": "#d84199", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource2d.msg"}, {"id": "t_transponder_report", "name": "transponder_report", "type": "topic", "color": "#d89e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_power_button_state", "name": "power_button_state", "type": "topic", "color": "#d8c841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensors_status_imu", "name": "sensors_status_imu", "type": "topic", "color": "#79d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed_validated", "name": "airspeed_validated", "type": "topic", "color": "#5cd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear_wheel", "name": "landing_gear_wheel", "type": "topic", "color": "#41d87d", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu_status", "name": "vehicle_imu_status", "type": "topic", "color": "#41d8ca", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mount_orientation", "name": "mount_orientation", "type": "topic", "color": "#d88741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_hygrometer", "name": "sensor_hygrometer", "type": "topic", "color": "#d8cd41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_iridiumsbd_status", "name": "iridiumsbd_status", "type": "topic", "color": "#97d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_time_estimate", "name": "rtl_time_estimate", "type": "topic", "color": "#50d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_obstacle_distance", "name": "obstacle_distance", "type": "topic", "color": "#6241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ObstacleDistance.msg"}, {"id": "t_gimbal_v1_command", "name": "gimbal_v1_command", "type": "topic", "color": "#9741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_spoilers_setpoint", "name": "spoilers_setpoint", "type": "topic", "color": "#d841d3", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_sensor_correction", "name": "sensor_correction", "type": "topic", "color": "#d8417b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status", "name": "estimator_status", "type": "topic", "color": "#d84c41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_response", "name": "dataman_response", "type": "topic", "color": "#ccd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_navigator_status", "name": "navigator_status", "type": "topic", "color": "#9dd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro_fifo", "name": "sensor_gyro_fifo", "type": "topic", "color": "#4183d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rc_parameter_map", "name": "rc_parameter_map", "type": "topic", "color": "#6841d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude", "name": "vehicle_attitude", "type": "topic", "color": "#8541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_selection", "name": "sensor_selection", "type": "topic", "color": "#d841c8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_odometry", "name": "vehicle_odometry", "type": "topic", "color": "#d841bc", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs", "name": "actuator_outputs", "type": "topic", "color": "#d841a4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_telemetry_status", "name": "telemetry_status", "type": "topic", "color": "#d8414c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_combined", "name": "sensor_combined", "type": "topic", "color": "#4ad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_request", "name": "dataman_request", "type": "topic", "color": "#44d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_key_value", "name": "debug_key_value", "type": "topic", "color": "#41d889", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream_ack", "name": "ulog_stream_ack", "type": "topic", "color": "#41d8a0", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor", "name": "distance_sensor", "type": "topic", "color": "#41cfd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_servos", "name": "actuator_servos", "type": "topic", "color": "#41c4d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_motors", "name": "actuator_motors", "type": "topic", "color": "#41bed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gps_inject_data", "name": "gps_inject_data", "type": "topic", "color": "#41b2d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_result", "name": "geofence_result", "type": "topic", "color": "#418fd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command", "name": "vehicle_command", "type": "topic", "color": "#4189d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_status", "name": "geofence_status", "type": "topic", "color": "#d841c2", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_controls", "name": "gimbal_controls", "type": "topic", "color": "#d8415e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_action_request", "name": "action_request", "type": "topic", "color": "#41d84e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_trigger", "name": "camera_trigger", "type": "topic", "color": "#41d85a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_armed", "name": "actuator_armed", "type": "topic", "color": "#417dd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_status", "name": "vehicle_status", "type": "topic", "color": "#4177d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_battery_status", "name": "battery_status", "type": "topic", "color": "#416cd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_satellite_info", "name": "satellite_info", "type": "topic", "color": "#414ed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_takeoff_status", "name": "takeoff_status", "type": "topic", "color": "#5041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission_result", "name": "mission_result", "type": "topic", "color": "#6e41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_capture", "name": "camera_capture", "type": "topic", "color": "#b441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flaps_setpoint", "name": "flaps_setpoint", "type": "topic", "color": "#cc41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_failsafe_flags", "name": "failsafe_flags", "type": "topic", "color": "#d8418d", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_health_report", "name": "health_report", "type": "topic", "color": "#d85241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_safety_button", "name": "safety_button", "type": "topic", "color": "#d8d341", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_actuator_test", "name": "actuator_test", "type": "topic", "color": "#a8d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_home_position", "name": "home_position", "type": "topic", "color": "#6ed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_irlock_report", "name": "irlock_report", "type": "topic", "color": "#4142d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_logger_status", "name": "logger_status", "type": "topic", "color": "#4441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_status", "name": "camera_status", "type": "topic", "color": "#d84170", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tune_control", "name": "tune_control", "type": "topic", "color": "#d86a41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear", "name": "landing_gear", "type": "topic", "color": "#bad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_orbit_status", "name": "orbit_status", "type": "topic", "color": "#41d860", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_system_power", "name": "system_power", "type": "topic", "color": "#41acd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_accel", "name": "sensor_accel", "type": "topic", "color": "#4195d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_px4io_status", "name": "px4io_status", "type": "topic", "color": "#d84187", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu", "name": "vehicle_imu", "type": "topic", "color": "#d84641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_array", "name": "debug_array", "type": "topic", "color": "#d87041", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_roi", "name": "vehicle_roi", "type": "topic", "color": "#91d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream", "name": "ulog_stream", "type": "topic", "color": "#41d854", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_baro", "name": "sensor_baro", "type": "topic", "color": "#41d8cf", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_pps_capture", "name": "pps_capture", "type": "topic", "color": "#41cad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_led_control", "name": "led_control", "type": "topic", "color": "#4166d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tecs_status", "name": "tecs_status", "type": "topic", "color": "#415ad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_value", "name": "debug_value", "type": "topic", "color": "#c041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro", "name": "sensor_gyro", "type": "topic", "color": "#d84193", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_mag", "name": "sensor_mag", "type": "topic", "color": "#d86441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gps", "name": "sensor_gps", "type": "topic", "color": "#d88141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/SensorGps.msg"}, {"id": "t_adc_report", "name": "adc_report", "type": "topic", "color": "#d89941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_esc_status", "name": "esc_status", "type": "topic", "color": "#d8c241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_uwb", "name": "sensor_uwb", "type": "topic", "color": "#41d883", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_vect", "name": "debug_vect", "type": "topic", "color": "#4a41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_status", "name": "rtl_status", "type": "topic", "color": "#d84158", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_pwm_input", "name": "pwm_input", "type": "topic", "color": "#d84141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed", "name": "airspeed", "type": "topic", "color": "#41d5d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource1d.msg"}, {"id": "t_input_rc", "name": "input_rc", "type": "topic", "color": "#41b8d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_cpuload", "name": "cpuload", "type": "topic", "color": "#41d8b8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gripper", "name": "gripper", "type": "topic", "color": "#41d8d5", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission", "name": "mission", "type": "topic", "color": "#d84175", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_event", "name": "event", "type": "topic", "color": "#d89341", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_wind", "name": "wind", "type": "topic", "color": "#41d895", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/Wind.msg"}, {"id": "t_rpm", "name": "rpm", "type": "topic", "color": "#d8bc41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}], "links": [{"source": "m_actuator_test", "target": "t_actuator_test", "color": "#a8d841", "style": "dashed"}, {"source": "m_led_control", "target": "t_led_control", "color": "#4166d8", "style": "dashed"}, {"source": "m_failure", "target": "t_vehicle_command", "color": "#4189d8", "style": "dashed"}, {"source": "m_tests", "target": "t_dataman_request", "color": "#44d841", "style": "dashed"}, {"source": "m_io_bypass_control", "target": "t_actuator_test", "color": "#a8d841", "style": "dashed"}, {"source": "m_io_bypass_control", "target": "t_actuator_outputs", "color": "#d841a4", "style": "dashed"}, {"source": "m_tune_control", "target": "t_tune_control", "color": "#d86a41", "style": "dashed"}, {"source": "m_pwm_input", "target": "t_pwm_input", "color": "#d84141", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command", "color": "#4189d8", "style": "dashed"}, {"source": "m_rc_input", "target": "t_input_rc", "color": "#41b8d8", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_rpi_rc_in", "target": "t_input_rc", "color": "#41b8d8", "style": "dashed"}, {"source": "m_batmon", "target": "t_battery_status", "color": "#416cd8", "style": "dashed"}, {"source": "m_dshot", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_outputs", "color": "#d841a4", "style": "dashed"}, {"source": "m_dshot", "target": "t_esc_status", "color": "#d8c241", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_servos", "color": "#41c4d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_armed", "color": "#417dd8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_motors", "color": "#41bed8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_test", "color": "#a8d841", "style": "dashed"}, {"source": "m_uwb_sr150", "target": "t_sensor_uwb", "color": "#41d883", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_outputs", "color": "#d841a4", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_esc_status", "color": "#d8c241", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_servos", "color": "#41c4d8", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_armed", "color": "#417dd8", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_motors", "color": "#41bed8", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_test", "color": "#a8d841", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_outputs", "color": "#d841a4", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_servos", "color": "#41c4d8", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_armed", "color": "#417dd8", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_motors", "color": "#41bed8", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_test", "color": "#a8d841", "style": "dashed"}, {"source": "m_septentrio", "target": "t_gps_inject_data", "color": "#41b2d8", "style": "dashed"}, {"source": "m_septentrio", "target": "t_sensor_gps", "color": "#d88141", "style": "dashed"}, {"source": "m_septentrio", "target": "t_satellite_info", "color": "#414ed8", "style": "dashed"}, {"source": "m_sht3x", "target": "t_sensor_hygrometer", "color": "#d8cd41", "style": "dashed"}, {"source": "m_iridiumsbd", "target": "t_iridiumsbd_status", "color": "#97d841", "style": "dashed"}, {"source": "m_hott_telemetry", "target": "t_esc_status", "color": "#d8c241", "style": "dashed"}, {"source": "m_ms4525do", "target": "t_differential_pressure", "color": "#d841b0", "style": "dashed"}, {"source": "m_ms5525dso", "target": "t_differential_pressure", "color": "#d841b0", "style": "dashed"}, {"source": "m_sdp3x", "target": "t_differential_pressure", "color": "#d841b0", "style": "dashed"}, {"source": "m_asp5033", "target": "t_differential_pressure", "color": "#d841b0", "style": "dashed"}, {"source": "m_auav", "target": "t_differential_pressure", "color": "#d841b0", "style": "dashed"}, {"source": "m_auav", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_ms4515", "target": "t_differential_pressure", "color": "#d841b0", "style": "dashed"}, {"source": "m_ets_airspeed", "target": "t_differential_pressure", "color": "#d841b0", "style": "dashed"}, {"source": "m_sagetech_mxs", "target": "t_transponder_report", "color": "#d89e41", "style": "dashed"}, {"source": "m_tattu_can", "target": "t_battery_status", "color": "#416cd8", "style": "dashed"}, {"source": "m_px4io", "target": "t_led_control", "color": "#4166d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_test", "color": "#a8d841", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_outputs", "color": "#d841a4", "style": "dashed"}, {"source": "m_px4io", "target": "t_tune_control", "color": "#d86a41", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command", "color": "#4189d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_px4io_status", "color": "#d84187", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_servos", "color": "#41c4d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_armed", "color": "#417dd8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_motors", "color": "#41bed8", "style": "dashed"}, {"source": "m_px4io", "target": "t_input_rc", "color": "#41b8d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_safety_button", "color": "#d8d341", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_icm20608g", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_icm20608g", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_icm20608g", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_mpu6500", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_mpu6500", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_mpu6500", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_icm42670p", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_icm42670p", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_icm42670p", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_icm45686", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_icm45686", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_icm45686", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_icm40609d", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_icm40609d", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_icm40609d", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_mpu9250_i2c", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_mpu9250_i2c", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_mpu9250_i2c", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_icm42605", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_icm42605", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_icm42605", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_icm20689", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_icm20689", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_icm20689", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_iam20680hp", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_iam20680hp", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_iam20680hp", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_iim42653", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_iim42653", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_iim42653", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_mpu6000", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_mpu6000", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_mpu6000", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_lsm303d", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_lsm303d", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_l3gd20", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_l3gd20", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_lsm9ds1", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_lsm9ds1", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_lsm9ds1", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_bmi085", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_bmi085", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_bmi085", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_bmi055", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_bmi055", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_bmi055", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_bmi270", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_bmi270", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_bmi270", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_bmi088_i2c", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_bmi088_i2c", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_bmi088_i2c", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_sch16t", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_sch16t", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_sch16t", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_adis16507", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_adis16507", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_adis16507", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_adis16477", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_adis16477", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_adis16477", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_adis16470", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_adis16470", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_adis16470", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_adis16497", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_adis16497", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_adis16497", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_outputs", "color": "#d841a4", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_servos", "color": "#41c4d8", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_armed", "color": "#417dd8", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_motors", "color": "#41bed8", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_test", "color": "#a8d841", "style": "dashed"}, {"source": "m_gps", "target": "t_gps_inject_data", "color": "#41b2d8", "style": "dashed"}, {"source": "m_gps", "target": "t_satellite_info", "color": "#414ed8", "style": "dashed"}, {"source": "m_gps", "target": "t_sensor_gps", "color": "#d88141", "style": "dashed"}, {"source": "m_rpm_simulator", "target": "t_rpm", "color": "#d8bc41", "style": "dashed"}, {"source": "m_pcf8583", "target": "t_rpm", "color": "#d8bc41", "style": "dashed"}, {"source": "m_cyphal", "target": "t_esc_status", "color": "#d8c241", "style": "dashed"}, {"source": "m_cyphal", "target": "t_battery_status", "color": "#416cd8", "style": "dashed"}, {"source": "m_safety_button", "target": "t_led_control", "color": "#4166d8", "style": "dashed"}, {"source": "m_safety_button", "target": "t_vehicle_command", "color": "#4189d8", "style": "dashed"}, {"source": "m_safety_button", "target": "t_tune_control", "color": "#d86a41", "style": "dashed"}, {"source": "m_safety_button", "target": "t_safety_button", "color": "#d8d341", "style": "dashed"}, {"source": "m_tone_alarm", "target": "t_tune_control", "color": "#d86a41", "style": "dashed"}, {"source": "m_ina238", "target": "t_battery_status", "color": "#416cd8", "style": "dashed"}, {"source": "m_voxlpm", "target": "t_battery_status", "color": "#416cd8", "style": "dashed"}, {"source": "m_ina220", "target": "t_battery_status", "color": "#416cd8", "style": "dashed"}, {"source": "m_ina226", "target": "t_battery_status", "color": "#416cd8", "style": "dashed"}, {"source": "m_ina228", "target": "t_battery_status", "color": "#416cd8", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_camera_trigger", "color": "#41d85a", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_irlock", "target": "t_irlock_report", "color": "#4142d8", "style": "dashed"}, {"source": "m_pps_capture", "target": "t_pps_capture", "color": "#41cad8", "style": "dashed"}, {"source": "m_ak09916", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_ak8963", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_mmc5983ma", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_lsm303agr", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_iis2mdc", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_vcm1193l", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_ist8308", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_ist8310", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_bmm150", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_bmm350", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_qmc5883l", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_lsm9ds1_mag", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_hmc5883", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_rm3100", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_lis3mdl", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_ads1115", "target": "t_adc_report", "color": "#d89941", "style": "dashed"}, {"source": "m_board_adc", "target": "t_adc_report", "color": "#d89941", "style": "dashed"}, {"source": "m_board_adc", "target": "t_system_power", "color": "#41acd8", "style": "dashed"}, {"source": "m_batt_smbus", "target": "t_battery_status", "color": "#416cd8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_led_control", "color": "#4166d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_open_drone_id_arm_status", "color": "#d8a441", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_uavcan_parameter_value", "color": "#a841d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_outputs", "color": "#d841a4", "style": "dashed"}, {"source": "m_uavcan", "target": "t_esc_status", "color": "#d8c241", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command", "color": "#4189d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_tune_control", "color": "#d86a41", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_servos", "color": "#41c4d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_armed", "color": "#417dd8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_motors", "color": "#41bed8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_test", "color": "#a8d841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_safety_button", "color": "#d8d341", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_outputs", "color": "#d841a4", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_esc_status", "color": "#d8c241", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_servos", "color": "#41c4d8", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_armed", "color": "#417dd8", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_motors", "color": "#41bed8", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_test", "color": "#a8d841", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_battery_status", "color": "#416cd8", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_outputs", "color": "#d841a4", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_esc_status", "color": "#d8c241", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_servos", "color": "#41c4d8", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_armed", "color": "#417dd8", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_motors", "color": "#41bed8", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_test", "color": "#a8d841", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command", "color": "#4189d8", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_camera_trigger", "color": "#41d85a", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_lightware_laser_serial", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_gy_us42", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_srf02", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_teraranger", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_lightware_laser_i2c", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_pga460", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_cm8jl65", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_vl53l0x", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_afbrs50", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_tfmini", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_ulanding_radar", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_ll40ls", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_ll40ls_pwm", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_vl53l1x", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_mb12xx", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_mappydot", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_leddar_one", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_lightware_sf45_serial", "target": "t_obstacle_distance_fused", "color": "#5c41d8", "style": "dashed"}, {"source": "m_lightware_sf45_serial", "target": "t_obstacle_distance", "color": "#6241d8", "style": "dashed"}, {"source": "m_lightware_sf45_serial", "target": "t_vehicle_command", "color": "#4189d8", "style": "dashed"}, {"source": "m_lightware_sf45_serial", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_lightware_sf45_serial", "target": "t_vehicle_attitude", "color": "#8541d8", "style": "dashed"}, {"source": "m_srf05", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_tf02pro", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_outputs", "color": "#d841a4", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_servos", "color": "#41c4d8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_armed", "color": "#417dd8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_motors", "color": "#41bed8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_test", "color": "#a8d841", "style": "dashed"}, {"source": "m_paw3902", "target": "t_sensor_optical_flow", "color": "#d8b641", "style": "dashed"}, {"source": "m_paa3905", "target": "t_sensor_optical_flow", "color": "#d8b641", "style": "dashed"}, {"source": "m_px4flow", "target": "t_sensor_optical_flow", "color": "#d8b641", "style": "dashed"}, {"source": "m_pmw3901", "target": "t_sensor_optical_flow", "color": "#d8b641", "style": "dashed"}, {"source": "m_thoneflow", "target": "t_sensor_optical_flow", "color": "#d8b641", "style": "dashed"}, {"source": "m_vectornav", "target": "t_sensor_gps", "color": "#d88141", "style": "dashed"}, {"source": "m_vectornav", "target": "t_sensor_selection", "color": "#d841c8", "style": "dashed"}, {"source": "m_vectornav", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_vectornav", "target": "t_estimator_status", "color": "#d84c41", "style": "dashed"}, {"source": "m_bmp581", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_ms5611", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_icp101xx", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_icp201xx", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_mpc2520", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_bmp280", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_dps310", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_tcbp001ta", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_spl06", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_spa06", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_lps22hb", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_lps33hw", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_bmp388", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_mpl3115a2", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_lps25h", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_ms5837", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_rpm_capture", "target": "t_pwm_input", "color": "#d84141", "style": "dashed"}, {"source": "m_rpm_capture", "target": "t_rpm", "color": "#d8bc41", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_test", "color": "#a8d841", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_outputs", "color": "#d841a4", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_servos", "color": "#41c4d8", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_armed", "color": "#417dd8", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_motors", "color": "#41bed8", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_input_rc", "color": "#41b8d8", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_led_control", "color": "#4166d8", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_gps_inject_data", "color": "#41b2d8", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_tune_control", "color": "#d86a41", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_actuator_servos", "color": "#41c4d8", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_actuator_armed", "color": "#417dd8", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_actuator_motors", "color": "#41bed8", "style": "dashed"}, {"source": "m_crsf_rc", "target": "t_input_rc", "color": "#41b8d8", "style": "dashed"}, {"source": "m_ghst_rc", "target": "t_input_rc", "color": "#41b8d8", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_vehicle_command", "color": "#4189d8", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_input_rc", "color": "#41b8d8", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_sbus_rc", "target": "t_input_rc", "color": "#41b8d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_attitude_setpoint", "color": "#62d841", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_velocity_setpoint", "color": "#41a0d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_throttle_setpoint", "color": "#41d8be", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_rate_setpoint", "color": "#d841cd", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_steering_setpoint", "color": "#41d848", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_position_controller_status", "color": "#c0d841", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_actuator_servos", "color": "#41c4d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_actuator_motors", "color": "#41bed8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_position_setpoint", "color": "#d841b6", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status", "color": "#d84c41", "style": "dashed"}, {"source": "m_ekf2", "target": "t_sensor_selection", "color": "#d841c8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_odometry", "color": "#d841bc", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_selector_status", "color": "#d88d41", "style": "dashed"}, {"source": "m_ekf2", "target": "t_wind", "color": "#41d895", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_attitude", "color": "#8541d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_global_position", "color": "#9d41d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status_flags", "color": "#a241d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_sensor_bias", "color": "#85d841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_local_position", "color": "#7fd841", "style": "dashed"}, {"source": "m_uxrce_dds_client", "target": "t_vehicle_command", "color": "#4189d8", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_vehicle_command", "color": "#4189d8", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_gripper", "color": "#41d8d5", "style": "dashed"}, {"source": "m_landing_target_estimator", "target": "t_landing_target_pose", "color": "#73d841", "style": "dashed"}, {"source": "m_fw_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#4154d8", "style": "dashed"}, {"source": "m_land_detector", "target": "t_vehicle_land_detected", "color": "#41d88f", "style": "dashed"}, {"source": "m_mc_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#4154d8", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_vehicle_rates_setpoint", "color": "#41a6d8", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_landing_gear_wheel", "color": "#41d87d", "style": "dashed"}, {"source": "m_mc_att_control", "target": "t_vehicle_rates_setpoint", "color": "#41a6d8", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_flaps_setpoint", "color": "#cc41d8", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#41a6d8", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_spoilers_setpoint", "color": "#d841d3", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_attitude_setpoint", "color": "#62d841", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_velocity_setpoint", "color": "#41a0d8", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_throttle_setpoint", "color": "#41d8be", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_rate_setpoint", "color": "#d841cd", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_steering_setpoint", "color": "#41d848", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_actuator_motors", "color": "#41bed8", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_position_setpoint", "color": "#d841b6", "style": "dashed"}, {"source": "m_camera_feedback", "target": "t_camera_capture", "color": "#b441d8", "style": "dashed"}, {"source": "m_system_power_simulator", "target": "t_system_power", "color": "#41acd8", "style": "dashed"}, {"source": "m_sensor_agp_sim", "target": "t_aux_global_position", "color": "#d84199", "style": "dashed"}, {"source": "m_sensor_baro_sim", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_attitude_groundtruth", "color": "#c6d841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_local_position_groundtruth", "color": "#d8419e", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_airspeed", "color": "#41d5d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_global_position_groundtruth", "color": "#41d842", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_angular_velocity_groundtruth", "color": "#7341d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_battery_simulator", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_battery_simulator", "target": "t_battery_status", "color": "#416cd8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs_sim", "color": "#d7d841", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs", "color": "#d841a4", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_servos", "color": "#41c4d8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_armed", "color": "#417dd8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_motors", "color": "#41bed8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_test", "color": "#a8d841", "style": "dashed"}, {"source": "m_sensor_airspeed_sim", "target": "t_differential_pressure", "color": "#d841b0", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_visual_odometry", "color": "#c641d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_gimbal_device_attitude_status", "color": "#d85841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_global_position_groundtruth", "color": "#41d842", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_armed", "color": "#417dd8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_gps", "color": "#d88141", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_differential_pressure", "color": "#d841b0", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_local_position_groundtruth", "color": "#d8419e", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_optical_flow", "color": "#d8b641", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_outputs", "color": "#d841a4", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_esc_status", "color": "#d8c241", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_obstacle_distance", "color": "#6241d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_attitude_groundtruth", "color": "#c6d841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_angular_velocity_groundtruth", "color": "#7341d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_test", "color": "#a8d841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_gimbal_device_information", "color": "#d84152", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_servos", "color": "#41c4d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_motors", "color": "#41bed8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_visual_odometry", "color": "#c641d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_mocap_odometry", "color": "#56d841", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_global_position_groundtruth", "color": "#41d842", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_differential_pressure", "color": "#d841b0", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_local_position_groundtruth", "color": "#d8419e", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_optical_flow", "color": "#d8b641", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_rpm", "color": "#d8bc41", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_esc_status", "color": "#d8c241", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_irlock_report", "color": "#4142d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_attitude_groundtruth", "color": "#c6d841", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_angular_velocity_groundtruth", "color": "#7341d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_input_rc", "color": "#41b8d8", "style": "dashed"}, {"source": "m_sensor_gps_sim", "target": "t_sensor_gps", "color": "#d88141", "style": "dashed"}, {"source": "m_sensor_mag_sim", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_navigator", "target": "t_home_position", "color": "#6ed841", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_time_estimate", "color": "#50d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_result", "color": "#418fd8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command", "color": "#4189d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_distance_sensor_mode_change_request", "color": "#d87541", "style": "dashed"}, {"source": "m_navigator", "target": "t_dataman_request", "color": "#44d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_status", "color": "#d841c2", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_status", "color": "#4177d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_transponder_report", "color": "#d89e41", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission", "color": "#d84175", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission_result", "color": "#6e41d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_land_detected", "color": "#41d88f", "style": "dashed"}, {"source": "m_navigator", "target": "t_navigator_status", "color": "#9dd841", "style": "dashed"}, {"source": "m_navigator", "target": "t_position_setpoint_triplet", "color": "#9141d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_global_position", "color": "#9d41d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_status", "color": "#d84158", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_roi", "color": "#91d841", "style": "dashed"}, {"source": "m_send_event", "target": "t_led_control", "color": "#4166d8", "style": "dashed"}, {"source": "m_send_event", "target": "t_tune_control", "color": "#d86a41", "style": "dashed"}, {"source": "m_send_event", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_commander", "target": "t_led_control", "color": "#4166d8", "style": "dashed"}, {"source": "m_commander", "target": "t_home_position", "color": "#6ed841", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_commander", "target": "t_register_ext_component_reply", "color": "#d85e41", "style": "dashed"}, {"source": "m_commander", "target": "t_health_report", "color": "#d85241", "style": "dashed"}, {"source": "m_commander", "target": "t_failure_detector_status", "color": "#d741d8", "style": "dashed"}, {"source": "m_commander", "target": "t_tune_control", "color": "#d86a41", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command", "color": "#4189d8", "style": "dashed"}, {"source": "m_commander", "target": "t_failsafe_flags", "color": "#d8418d", "style": "dashed"}, {"source": "m_commander", "target": "t_power_button_state", "color": "#d8c841", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_control_mode", "color": "#d87b41", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_status", "color": "#4177d8", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_test", "color": "#a8d841", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_armed", "color": "#417dd8", "style": "dashed"}, {"source": "m_commander", "target": "t_event", "color": "#d89341", "style": "dashed"}, {"source": "m_esc_battery", "target": "t_battery_status", "color": "#416cd8", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_vehicle_constraints", "color": "#41d86c", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_trajectory_setpoint", "color": "#41d8b2", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_landing_gear", "color": "#bad841", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_switches", "color": "#5641d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_command", "color": "#4189d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_landing_gear", "color": "#bad841", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_setpoint", "color": "#41d877", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_status", "color": "#4177d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_action_request", "color": "#41d84e", "style": "dashed"}, {"source": "m_uuv_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#aed841", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_thrust_setpoint", "color": "#d8416a", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_torque_setpoint", "color": "#d84181", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_position_controller_status", "color": "#c0d841", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#aed841", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#41a6d8", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_actuator_controls_status_0", "color": "#b4d841", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_motors", "color": "#41bed8", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos", "color": "#41c4d8", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos_trim", "color": "#a2d841", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_control_allocator_status", "color": "#4171d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu", "color": "#d84641", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu_status", "color": "#41d8ca", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_combined", "color": "#4ad841", "style": "dashed"}, {"source": "m_sensors", "target": "t_airspeed", "color": "#41d5d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_selection", "color": "#d841c8", "style": "dashed"}, {"source": "m_sensors", "target": "t_differential_pressure", "color": "#d841b0", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensors_status_imu", "color": "#79d841", "style": "dashed"}, {"source": "m_airship_att_control", "target": "t_vehicle_torque_setpoint", "color": "#d84181", "style": "dashed"}, {"source": "m_airship_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#d8416a", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_torque_setpoint", "color": "#d84181", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#d8416a", "style": "dashed"}, {"source": "m_dataman", "target": "t_dataman_response", "color": "#ccd841", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_flaps_setpoint", "color": "#cc41d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_tecs_status", "color": "#415ad8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_orbit_status", "color": "#41d860", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_figure_eight_status", "color": "#41d8c4", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_spoilers_setpoint", "color": "#d841d3", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_position_controller_status", "color": "#c0d841", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_position_controller_landing_status", "color": "#41d871", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_launch_detection_status", "color": "#ba41d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_flight_phase_estimation", "color": "#7941d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_landing_gear", "color": "#bad841", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#d84146", "style": "dashed"}, {"source": "m_internal_combustion_engine_control", "target": "t_internal_combustion_engine_status", "color": "#d84164", "style": "dashed"}, {"source": "m_internal_combustion_engine_control", "target": "t_internal_combustion_engine_control", "color": "#41d89b", "style": "dashed"}, {"source": "m_load_mon", "target": "t_cpuload", "color": "#41d8b8", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_global_position", "color": "#9d41d8", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_estimator_status", "color": "#d84c41", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_local_position", "color": "#7fd841", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_odometry", "color": "#d841bc", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gps_inject_data", "color": "#41b2d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_visual_odometry", "color": "#c641d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_rates_setpoint", "color": "#41a6d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_attitude_status", "color": "#d85841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_offboard_control_mode", "color": "#d141d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_self_id", "color": "#419bd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_mocap_odometry", "color": "#56d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_accel", "color": "#4195d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_tune_control", "color": "#d86a41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_array", "color": "#d87041", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command", "color": "#4189d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_dataman_request", "color": "#44d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_mag", "color": "#d86441", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gyro_fifo", "color": "#4183d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gps", "color": "#d88141", "style": "dashed"}, {"source": "m_mavlink", "target": "t_differential_pressure", "color": "#d841b0", "style": "dashed"}, {"source": "m_mavlink", "target": "t_battery_status", "color": "#416cd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_attitude", "color": "#4160d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_transponder_report", "color": "#d89e41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_event", "color": "#d89341", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_operator_id", "color": "#d841aa", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_manual_control", "color": "#41d866", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_optical_flow", "color": "#d8b641", "style": "dashed"}, {"source": "m_mavlink", "target": "t_irlock_report", "color": "#4142d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_esc_serial_passthru", "color": "#4148d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gyro", "color": "#d84193", "style": "dashed"}, {"source": "m_mavlink", "target": "t_camera_status", "color": "#d84170", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_vect", "color": "#4a41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mission", "color": "#d84175", "style": "dashed"}, {"source": "m_mavlink", "target": "t_obstacle_distance", "color": "#6241d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_key_value", "color": "#41d889", "style": "dashed"}, {"source": "m_mavlink", "target": "t_rc_parameter_map", "color": "#6841d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mc_virtual_attitude_setpoint", "color": "#41d8a6", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude_setpoint", "color": "#aed841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_fw_virtual_attitude_setpoint", "color": "#7f41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude", "color": "#8541d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_ulog_stream_ack", "color": "#41d8a0", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_global_position", "color": "#9d41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_system", "color": "#41d8ac", "style": "dashed"}, {"source": "m_mavlink", "target": "t_trajectory_setpoint", "color": "#41d8b2", "style": "dashed"}, {"source": "m_mavlink", "target": "t_uavcan_parameter_request", "color": "#8bd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_information", "color": "#d84152", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_baro", "color": "#41d8cf", "style": "dashed"}, {"source": "m_mavlink", "target": "t_airspeed", "color": "#41d5d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_local_position", "color": "#7fd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_distance_sensor", "color": "#41cfd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_value", "color": "#c041d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_telemetry_status", "color": "#d8414c", "style": "dashed"}, {"source": "m_mavlink", "target": "t_input_rc", "color": "#41b8d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_landing_target_pose", "color": "#73d841", "style": "dashed"}, {"source": "m_battery_status", "target": "t_battery_status", "color": "#416cd8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_information", "color": "#d1d841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_attitude_status", "color": "#d85841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_status", "color": "#ae41d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command", "color": "#4189d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_controls", "color": "#d8415e", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_set_attitude", "color": "#8b41d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_mount_orientation", "color": "#d88741", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_v1_command", "color": "#9741d8", "style": "dashed"}, {"source": "m_logger", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_logger", "target": "t_logger_status", "color": "#4441d8", "style": "dashed"}, {"source": "m_logger", "target": "t_ulog_stream", "color": "#41d854", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_flaps_setpoint", "color": "#cc41d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_tiltrotor_extra_controls", "color": "#d8b041", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vtol_vehicle_status", "color": "#d8aa41", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_spoilers_setpoint", "color": "#d841d3", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#d8416a", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_torque_setpoint", "color": "#d84181", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_attitude_setpoint", "color": "#aed841", "style": "dashed"}, {"source": "m_airspeed_selector", "target": "t_airspeed_validated", "color": "#5cd841", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_led_control", "color": "#4166d8", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command", "color": "#4189d8", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command_ack", "color": "#68d841", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_sensor_correction", "color": "#d8417b", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_trajectory_setpoint", "color": "#41d8b2", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_constraints", "color": "#41d86c", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#aed841", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#d84146", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_takeoff_status", "color": "#5041d8", "style": "dashed"}, {"source": "m_rc_update", "target": "t_manual_control_switches", "color": "#5641d8", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_attitude_setpoint", "color": "#62d841", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_velocity_setpoint", "color": "#41a0d8", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_throttle_setpoint", "color": "#41d8be", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_rate_setpoint", "color": "#d841cd", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_steering_setpoint", "color": "#41d848", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_actuator_motors", "color": "#41bed8", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_position_setpoint", "color": "#d841b6", "style": "dashed"}, {"source": "m_attitude_estimator_q", "target": "t_vehicle_attitude", "color": "#8541d8", "style": "dashed"}, {"source": "t_vehicle_status", "target": "m_i2c_launcher", "color": "#4177d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_microbench", "color": "#d84193", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_microbench", "color": "#7fd841", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_microbench", "color": "#d8418d", "style": "normal"}, {"source": "t_sensor_gyro_fifo", "target": "m_microbench", "color": "#4183d8", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_failure", "color": "#68d841", "style": "normal"}, {"source": "t_dataman_response", "target": "m_tests", "color": "#ccd841", "style": "normal"}, {"source": "t_input_rc", "target": "m_tests", "color": "#41b8d8", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_io_bypass_control", "color": "#d841a4", "style": "normal"}, {"source": "t_adc_report", "target": "m_rc_input", "color": "#d89941", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rc_input", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_rc_input", "color": "#4189d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_rc_input", "color": "#4177d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_rc_input", "color": "#416cd8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_dshot", "color": "#41d877", "style": "normal"}, {"source": "t_gripper", "target": "m_dshot", "color": "#41d8d5", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dshot", "color": "#4189d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_dshot", "color": "#41d89b", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_dshot", "color": "#d8415e", "style": "normal"}, {"source": "t_landing_gear", "target": "m_dshot", "color": "#bad841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_dshot", "color": "#41bed8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_dshot", "color": "#a8d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_dshot", "color": "#417dd8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_dshot", "color": "#a2d841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_dshot", "color": "#41d87d", "style": "normal"}, {"source": "t_sensor_uwb", "target": "m_uwb_sr150", "color": "#41d883", "style": "normal"}, {"source": "t_led_control", "target": "m_tap_esc", "color": "#4166d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_tap_esc", "color": "#41d877", "style": "normal"}, {"source": "t_gripper", "target": "m_tap_esc", "color": "#41d8d5", "style": "normal"}, {"source": "t_tune_control", "target": "m_tap_esc", "color": "#d86a41", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_tap_esc", "color": "#4189d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_tap_esc", "color": "#d8415e", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_tap_esc", "color": "#41d89b", "style": "normal"}, {"source": "t_landing_gear", "target": "m_tap_esc", "color": "#bad841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_tap_esc", "color": "#41bed8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_tap_esc", "color": "#a8d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_tap_esc", "color": "#417dd8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_tap_esc", "color": "#a2d841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_tap_esc", "color": "#41d87d", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pca9685_pwm_out", "color": "#41d877", "style": "normal"}, {"source": "t_gripper", "target": "m_pca9685_pwm_out", "color": "#41d8d5", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pca9685_pwm_out", "color": "#4189d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_pca9685_pwm_out", "color": "#41d89b", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pca9685_pwm_out", "color": "#d8415e", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pca9685_pwm_out", "color": "#bad841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pca9685_pwm_out", "color": "#41bed8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pca9685_pwm_out", "color": "#a8d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pca9685_pwm_out", "color": "#417dd8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pca9685_pwm_out", "color": "#a2d841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pca9685_pwm_out", "color": "#41d87d", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_septentrio", "color": "#41b2d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_roboclaw", "color": "#417dd8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_bst", "color": "#8541d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_bst", "color": "#416cd8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_frsky_telemetry", "color": "#9d41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_frsky_telemetry", "color": "#7fd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_frsky_telemetry", "color": "#4177d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_frsky_telemetry", "color": "#416cd8", "style": "normal"}, {"source": "t_home_position", "target": "m_hott_telemetry", "color": "#6ed841", "style": "normal"}, {"source": "t_airspeed", "target": "m_hott_telemetry", "color": "#41d5d8", "style": "normal"}, {"source": "t_esc_status", "target": "m_hott_telemetry", "color": "#d8c241", "style": "normal"}, {"source": "t_battery_status", "target": "m_hott_telemetry", "color": "#416cd8", "style": "normal"}, {"source": "t_transponder_report", "target": "m_sagetech_mxs", "color": "#d89e41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_sagetech_mxs", "color": "#4177d8", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_sagetech_mxs", "color": "#d88141", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_sagetech_mxs", "color": "#41d88f", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_px4io", "color": "#41d877", "style": "normal"}, {"source": "t_gripper", "target": "m_px4io", "color": "#41d8d5", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_px4io", "color": "#4189d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_px4io", "color": "#d8415e", "style": "normal"}, {"source": "t_px4io_status", "target": "m_px4io", "color": "#d84187", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_px4io", "color": "#41d89b", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_px4io", "color": "#417dd8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_px4io", "color": "#41bed8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_px4io", "color": "#bad841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_px4io", "color": "#4177d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_px4io", "color": "#a8d841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_px4io", "color": "#a2d841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_px4io", "color": "#41d87d", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_linux_pwm_out", "color": "#41d877", "style": "normal"}, {"source": "t_gripper", "target": "m_linux_pwm_out", "color": "#41d8d5", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_linux_pwm_out", "color": "#4189d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_linux_pwm_out", "color": "#41d89b", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_linux_pwm_out", "color": "#d8415e", "style": "normal"}, {"source": "t_landing_gear", "target": "m_linux_pwm_out", "color": "#bad841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_linux_pwm_out", "color": "#41bed8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_linux_pwm_out", "color": "#a8d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_linux_pwm_out", "color": "#417dd8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_linux_pwm_out", "color": "#a2d841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_linux_pwm_out", "color": "#41d87d", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_gps", "color": "#41b2d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_cdcacm_autostart", "color": "#417dd8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_cyphal", "color": "#a8d841", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_cyphal", "color": "#d88141", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_cyphal", "color": "#417dd8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_safety_button", "color": "#417dd8", "style": "normal"}, {"source": "t_tune_control", "target": "m_tone_alarm", "color": "#d86a41", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pm_selector_auterion", "color": "#417dd8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina238", "color": "#4177d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina238", "color": "#7941d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_voxlpm", "color": "#4177d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_voxlpm", "color": "#7941d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina220", "color": "#4177d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina220", "color": "#7941d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina226", "color": "#4177d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina226", "color": "#7941d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina228", "color": "#4177d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina228", "color": "#7941d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_capture", "color": "#4189d8", "style": "normal"}, {"source": "t_pps_capture", "target": "m_camera_capture", "color": "#41cad8", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_pps_capture", "color": "#d88141", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_msp_osd", "color": "#9d41d8", "style": "normal"}, {"source": "t_home_position", "target": "m_msp_osd", "color": "#6ed841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_msp_osd", "color": "#5cd841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_msp_osd", "color": "#7fd841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_msp_osd", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_msp_osd", "color": "#4177d8", "style": "normal"}, {"source": "t_input_rc", "target": "m_msp_osd", "color": "#41b8d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_msp_osd", "color": "#416cd8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_atxxxx", "color": "#7fd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_atxxxx", "color": "#4177d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_atxxxx", "color": "#416cd8", "style": "normal"}, {"source": "t_adc_report", "target": "m_board_adc", "color": "#d89941", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_uavcan", "color": "#41b2d8", "style": "normal"}, {"source": "t_home_position", "target": "m_uavcan", "color": "#6ed841", "style": "normal"}, {"source": "t_open_drone_id_self_id", "target": "m_uavcan", "color": "#419bd8", "style": "normal"}, {"source": "t_tune_control", "target": "m_uavcan", "color": "#d86a41", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_uavcan", "color": "#4189d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_uavcan", "color": "#417dd8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_uavcan", "color": "#4177d8", "style": "normal"}, {"source": "t_led_control", "target": "m_uavcan", "color": "#4166d8", "style": "normal"}, {"source": "t_open_drone_id_operator_id", "target": "m_uavcan", "color": "#d841aa", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uavcan", "color": "#41d877", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_uavcan", "color": "#41d87d", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_uavcan", "color": "#41d88f", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_uavcan", "color": "#d8415e", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_uavcan", "color": "#41d89b", "style": "normal"}, {"source": "t_landing_gear", "target": "m_uavcan", "color": "#bad841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_uavcan", "color": "#a8d841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_uavcan", "color": "#a2d841", "style": "normal"}, {"source": "t_open_drone_id_system", "target": "m_uavcan", "color": "#41d8ac", "style": "normal"}, {"source": "t_uavcan_parameter_request", "target": "m_uavcan", "color": "#8bd841", "style": "normal"}, {"source": "t_gripper", "target": "m_uavcan", "color": "#41d8d5", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uavcan", "color": "#7fd841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_uavcan", "color": "#41bed8", "style": "normal"}, {"source": "t_led_control", "target": "m_voxl_esc", "color": "#4166d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_voxl_esc", "color": "#41bed8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_voxl_esc", "color": "#41d877", "style": "normal"}, {"source": "t_gripper", "target": "m_voxl_esc", "color": "#41d8d5", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_voxl_esc", "color": "#4189d8", "style": "normal"}, {"source": "t_esc_serial_passthru", "target": "m_voxl_esc", "color": "#4148d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_voxl_esc", "color": "#d8415e", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_voxl_esc", "color": "#41d89b", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_voxl_esc", "color": "#7941d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_voxl_esc", "color": "#bad841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_voxl_esc", "color": "#d87b41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_voxl_esc", "color": "#4177d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_voxl_esc", "color": "#a8d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_voxl_esc", "color": "#417dd8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_voxl_esc", "color": "#a2d841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_voxl_esc", "color": "#41d87d", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_vertiq_io", "color": "#41d877", "style": "normal"}, {"source": "t_gripper", "target": "m_vertiq_io", "color": "#41d8d5", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_vertiq_io", "color": "#4189d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_vertiq_io", "color": "#d8415e", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_vertiq_io", "color": "#41d89b", "style": "normal"}, {"source": "t_landing_gear", "target": "m_vertiq_io", "color": "#bad841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_vertiq_io", "color": "#41bed8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_vertiq_io", "color": "#a8d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_vertiq_io", "color": "#417dd8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_vertiq_io", "color": "#a2d841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_vertiq_io", "color": "#41d87d", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_trigger", "color": "#4189d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_camera_trigger", "color": "#7fd841", "style": "normal"}, {"source": "t_pps_capture", "target": "m_camera_trigger", "color": "#41cad8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_lightware_laser_i2c", "color": "#4177d8", "style": "normal"}, {"source": "t_distance_sensor_mode_change_request", "target": "m_lightware_laser_i2c", "color": "#d87541", "style": "normal"}, {"source": "t_pwm_input", "target": "m_ll40ls_pwm", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_lightware_sf45_serial", "color": "#8541d8", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_lightware_sf45_serial", "color": "#41cfd8", "style": "normal"}, {"source": "t_obstacle_distance", "target": "m_lightware_sf45_serial", "color": "#6241d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out", "color": "#41d877", "style": "normal"}, {"source": "t_gripper", "target": "m_pwm_out", "color": "#41d8d5", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out", "color": "#4189d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_pwm_out", "color": "#41d89b", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out", "color": "#d8415e", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out", "color": "#bad841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out", "color": "#41bed8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out", "color": "#a8d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out", "color": "#417dd8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out", "color": "#a2d841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out", "color": "#41d87d", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_heater", "color": "#4195d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_voxl2_io", "color": "#41d877", "style": "normal"}, {"source": "t_gripper", "target": "m_voxl2_io", "color": "#41d8d5", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_voxl2_io", "color": "#4189d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_voxl2_io", "color": "#41d89b", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_voxl2_io", "color": "#d8415e", "style": "normal"}, {"source": "t_landing_gear", "target": "m_voxl2_io", "color": "#bad841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_voxl2_io", "color": "#41bed8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_voxl2_io", "color": "#a8d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_voxl2_io", "color": "#417dd8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_voxl2_io", "color": "#a2d841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_voxl2_io", "color": "#41d87d", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_crsf_rc", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_crsf_rc", "color": "#4177d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_crsf_rc", "color": "#416cd8", "style": "normal"}, {"source": "t_battery_status", "target": "m_ghst_rc", "color": "#416cd8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dsm_rc", "color": "#4189d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_dsm_rc", "color": "#4177d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_is31fl3195", "color": "#4166d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled", "color": "#4166d8", "style": "normal"}, {"source": "t_led_control", "target": "m_neopixel", "color": "#4166d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_ncp5623c", "color": "#4166d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_pwm", "color": "#4166d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_lp5562", "color": "#4166d8", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_template_module", "color": "#4ad841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_rover_ackermann", "color": "#41bed8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_ackermann", "color": "#41d8b2", "style": "normal"}, {"source": "t_rover_attitude_setpoint", "target": "m_rover_ackermann", "color": "#62d841", "style": "normal"}, {"source": "t_rover_velocity_setpoint", "target": "m_rover_ackermann", "color": "#41a0d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_ackermann", "color": "#8541d8", "style": "normal"}, {"source": "t_rover_throttle_setpoint", "target": "m_rover_ackermann", "color": "#41d8be", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_rover_ackermann", "color": "#d141d8", "style": "normal"}, {"source": "t_rover_rate_setpoint", "target": "m_rover_ackermann", "color": "#d841cd", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_ackermann", "color": "#41d877", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_ackermann", "color": "#7fd841", "style": "normal"}, {"source": "t_actuator_servos", "target": "m_rover_ackermann", "color": "#41c4d8", "style": "normal"}, {"source": "t_rover_steering_setpoint", "target": "m_rover_ackermann", "color": "#41d848", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_ackermann", "color": "#d87b41", "style": "normal"}, {"source": "t_rover_position_setpoint", "target": "m_rover_ackermann", "color": "#d841b6", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_ackermann", "color": "#9141d8", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_ekf2", "color": "#c641d8", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_ekf2", "color": "#d84641", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_ekf2", "color": "#5cd841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_ekf2", "color": "#41d88f", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_ekf2", "color": "#4ad841", "style": "normal"}, {"source": "t_aux_global_position", "target": "m_ekf2", "color": "#d84199", "style": "normal"}, {"source": "t_airspeed", "target": "m_ekf2", "color": "#41d5d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_ekf2", "color": "#4189d8", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_ekf2", "color": "#41cfd8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_ekf2", "color": "#d841c8", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_ekf2", "color": "#ba41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ekf2", "color": "#4177d8", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_ekf2", "color": "#79d841", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_ekf2", "color": "#73d841", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_uxrce_dds_client", "color": "#68d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_payload_deliverer", "color": "#4189d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_landing_target_estimator", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_landing_target_estimator", "color": "#7fd841", "style": "normal"}, {"source": "t_irlock_report", "target": "m_landing_target_estimator", "color": "#4142d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_autotune_attitude_control", "color": "#41d877", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_autotune_attitude_control", "color": "#4177d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_land_detector", "color": "#9d41d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_land_detector", "color": "#41d8b2", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_land_detector", "color": "#5cd841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_land_detector", "color": "#41d8ca", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_land_detector", "color": "#d8416a", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_land_detector", "color": "#7fd841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_land_detector", "color": "#d841c8", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_land_detector", "color": "#ba41d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_land_detector", "color": "#417dd8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_land_detector", "color": "#d87b41", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_land_detector", "color": "#9141d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_land_detector", "color": "#4177d8", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_land_detector", "color": "#5041d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_calibration", "color": "#d84193", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_gyro_calibration", "color": "#4195d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_gyro_calibration", "color": "#4177d8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_gyro_calibration", "color": "#d8417b", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#d84181", "style": "normal"}, {"source": "t_actuator_controls_status_0", "target": "m_mc_autotune_attitude_control", "color": "#b4d841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#41d877", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_autotune_attitude_control", "color": "#4177d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_att_control", "color": "#d87b41", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_att_control", "color": "#5cd841", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_fw_att_control", "color": "#4154d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_att_control", "color": "#41d88f", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_att_control", "color": "#7fd841", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_fw_att_control", "color": "#aed841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_att_control", "color": "#41d877", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_att_control", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_att_control", "color": "#4177d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mc_att_control", "color": "#8541d8", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mc_att_control", "color": "#4154d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_att_control", "color": "#41d88f", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_att_control", "color": "#7fd841", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mc_att_control", "color": "#aed841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_att_control", "color": "#41d877", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_att_control", "color": "#d87b41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_att_control", "color": "#4177d8", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_fw_rate_control", "color": "#41a6d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_rate_control", "color": "#5cd841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_rate_control", "color": "#41d88f", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_rate_control", "color": "#41d877", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_rate_control", "color": "#d87b41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_rate_control", "color": "#4177d8", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_fw_rate_control", "color": "#4171d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_fw_rate_control", "color": "#416cd8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_rover_mecanum", "color": "#41bed8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_mecanum", "color": "#41d8b2", "style": "normal"}, {"source": "t_rover_attitude_setpoint", "target": "m_rover_mecanum", "color": "#62d841", "style": "normal"}, {"source": "t_rover_velocity_setpoint", "target": "m_rover_mecanum", "color": "#41a0d8", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_rover_mecanum", "color": "#d141d8", "style": "normal"}, {"source": "t_rover_throttle_setpoint", "target": "m_rover_mecanum", "color": "#41d8be", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_mecanum", "color": "#8541d8", "style": "normal"}, {"source": "t_rover_rate_setpoint", "target": "m_rover_mecanum", "color": "#d841cd", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_mecanum", "color": "#41d877", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_mecanum", "color": "#7fd841", "style": "normal"}, {"source": "t_rover_steering_setpoint", "target": "m_rover_mecanum", "color": "#41d848", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_mecanum", "color": "#d87b41", "style": "normal"}, {"source": "t_rover_position_setpoint", "target": "m_rover_mecanum", "color": "#d841b6", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_mecanum", "color": "#9141d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_camera_feedback", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_camera_feedback", "color": "#9d41d8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_camera_feedback", "color": "#d85841", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_camera_feedback", "color": "#41d85a", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_agp_sim", "color": "#41d842", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_baro_sim", "color": "#41d842", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_simulator_sih", "color": "#d7d841", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_simulator_sih", "color": "#d841a4", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_battery_simulator", "color": "#4189d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_simulator", "color": "#4177d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_battery_simulator", "color": "#7941d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out_sim", "color": "#41d877", "style": "normal"}, {"source": "t_gripper", "target": "m_pwm_out_sim", "color": "#41d8d5", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out_sim", "color": "#4189d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_pwm_out_sim", "color": "#41d89b", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out_sim", "color": "#d8415e", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out_sim", "color": "#bad841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out_sim", "color": "#41bed8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out_sim", "color": "#a8d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out_sim", "color": "#417dd8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out_sim", "color": "#a2d841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out_sim", "color": "#41d87d", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_sensor_airspeed_sim", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_sensor_airspeed_sim", "color": "#d8419e", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_airspeed_sim", "color": "#41d842", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gz_bridge", "color": "#41d877", "style": "normal"}, {"source": "t_gripper", "target": "m_gz_bridge", "color": "#41d8d5", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gz_bridge", "color": "#4189d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_gz_bridge", "color": "#d8415e", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_gz_bridge", "color": "#41d89b", "style": "normal"}, {"source": "t_landing_gear", "target": "m_gz_bridge", "color": "#bad841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_gz_bridge", "color": "#41bed8", "style": "normal"}, {"source": "t_gimbal_device_set_attitude", "target": "m_gz_bridge", "color": "#8b41d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_gz_bridge", "color": "#a8d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_gz_bridge", "color": "#417dd8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_gz_bridge", "color": "#a2d841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_gz_bridge", "color": "#41d87d", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_simulator_mavlink", "color": "#d7d841", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_simulator_mavlink", "color": "#d841a4", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_simulator_mavlink", "color": "#4189d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_simulator_mavlink", "color": "#4177d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_simulator_mavlink", "color": "#416cd8", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#d8419e", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#41d842", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_sensor_mag_sim", "color": "#c6d841", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_mag_sim", "color": "#41d842", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_navigator", "color": "#9d41d8", "style": "normal"}, {"source": "t_transponder_report", "target": "m_navigator", "color": "#d89e41", "style": "normal"}, {"source": "t_home_position", "target": "m_navigator", "color": "#6ed841", "style": "normal"}, {"source": "t_rtl_status", "target": "m_navigator", "color": "#d84158", "style": "normal"}, {"source": "t_dataman_response", "target": "m_navigator", "color": "#ccd841", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_navigator", "color": "#c0d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_navigator", "color": "#41d88f", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_navigator", "color": "#4189d8", "style": "normal"}, {"source": "t_wind", "target": "m_navigator", "color": "#41d895", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_navigator", "color": "#7fd841", "style": "normal"}, {"source": "t_geofence_status", "target": "m_navigator", "color": "#d841c2", "style": "normal"}, {"source": "t_position_controller_landing_status", "target": "m_navigator", "color": "#41d871", "style": "normal"}, {"source": "t_mission", "target": "m_navigator", "color": "#d84175", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_navigator", "color": "#4177d8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_navigator", "color": "#73d841", "style": "normal"}, {"source": "t_cpuload", "target": "m_send_event", "color": "#41d8b8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_send_event", "color": "#4189d8", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_send_event", "color": "#d8418d", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_send_event", "color": "#4177d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_send_event", "color": "#416cd8", "style": "normal"}, {"source": "t_system_power", "target": "m_commander", "color": "#41acd8", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_commander", "color": "#68d841", "style": "normal"}, {"source": "t_pwm_input", "target": "m_commander", "color": "#d84141", "style": "normal"}, {"source": "t_home_position", "target": "m_commander", "color": "#6ed841", "style": "normal"}, {"source": "t_estimator_status", "target": "m_commander", "color": "#d84c41", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_commander", "color": "#d141d8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_commander", "color": "#4195d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_commander", "color": "#5cd841", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_commander", "color": "#d86441", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_commander", "color": "#50d841", "style": "normal"}, {"source": "t_geofence_result", "target": "m_commander", "color": "#418fd8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_commander", "color": "#4189d8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_commander", "color": "#d841c8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_commander", "color": "#417dd8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_commander", "color": "#4177d8", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_commander", "color": "#d88141", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_commander", "color": "#d841b0", "style": "normal"}, {"source": "t_action_request", "target": "m_commander", "color": "#41d84e", "style": "normal"}, {"source": "t_battery_status", "target": "m_commander", "color": "#416cd8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_commander", "color": "#41bed8", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_commander", "color": "#d88d41", "style": "normal"}, {"source": "t_event", "target": "m_commander", "color": "#d89341", "style": "normal"}, {"source": "t_vtol_vehicle_status", "target": "m_commander", "color": "#d8aa41", "style": "normal"}, {"source": "t_esc_status", "target": "m_commander", "color": "#d8c241", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_commander", "color": "#d84193", "style": "normal"}, {"source": "t_logger_status", "target": "m_commander", "color": "#4441d8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_commander", "color": "#d8417b", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_commander", "color": "#41d877", "style": "normal"}, {"source": "t_power_button_state", "target": "m_commander", "color": "#d8c841", "style": "normal"}, {"source": "t_safety_button", "target": "m_commander", "color": "#d8d341", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_commander", "color": "#5641d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_commander", "color": "#41d88f", "style": "normal"}, {"source": "t_mission_result", "target": "m_commander", "color": "#6e41d8", "style": "normal"}, {"source": "t_wind", "target": "m_commander", "color": "#41d895", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_commander", "color": "#8541d8", "style": "normal"}, {"source": "t_navigator_status", "target": "m_commander", "color": "#9dd841", "style": "normal"}, {"source": "t_iridiumsbd_status", "target": "m_commander", "color": "#97d841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_commander", "color": "#9d41d8", "style": "normal"}, {"source": "t_estimator_status_flags", "target": "m_commander", "color": "#a241d8", "style": "normal"}, {"source": "t_cpuload", "target": "m_commander", "color": "#41d8b8", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_commander", "color": "#41d8ca", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_commander", "color": "#85d841", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_commander", "color": "#41d8cf", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_commander", "color": "#7fd841", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_commander", "color": "#41cfd8", "style": "normal"}, {"source": "t_telemetry_status", "target": "m_commander", "color": "#d8414c", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_commander", "color": "#79d841", "style": "normal"}, {"source": "t_esc_status", "target": "m_esc_battery", "color": "#d8c241", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_esc_battery", "color": "#4177d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_esc_battery", "color": "#7941d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_fft", "color": "#d84193", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_gyro_fft", "color": "#41d8ca", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_gyro_fft", "color": "#d841c8", "style": "normal"}, {"source": "t_sensor_gyro_fifo", "target": "m_gyro_fft", "color": "#4183d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_flight_mode_manager", "color": "#41d88f", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_flight_mode_manager", "color": "#4189d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_flight_mode_manager", "color": "#7fd841", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_flight_mode_manager", "color": "#aed841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_flight_mode_manager", "color": "#d87b41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_flight_mode_manager", "color": "#4177d8", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_flight_mode_manager", "color": "#5041d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_manual_control", "color": "#41d877", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_manual_control", "color": "#5641d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_manual_control", "color": "#4177d8", "style": "normal"}, {"source": "t_action_request", "target": "m_manual_control", "color": "#41d84e", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_pos_control", "color": "#d87b41", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_pos_control", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uuv_pos_control", "color": "#7fd841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_uuv_pos_control", "color": "#41d8b2", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_rover_pos_control", "color": "#9d41d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_pos_control", "color": "#41d8b2", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_pos_control", "color": "#41d877", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_pos_control", "color": "#7fd841", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_rover_pos_control", "color": "#aed841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_pos_control", "color": "#d87b41", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_pos_control", "color": "#8541d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_pos_control", "color": "#9141d8", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mc_rate_control", "color": "#41a6d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_rate_control", "color": "#41d88f", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_rate_control", "color": "#41d877", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_rate_control", "color": "#d87b41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_rate_control", "color": "#4177d8", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_mc_rate_control", "color": "#4171d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_mc_rate_control", "color": "#416cd8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_control_allocator", "color": "#5641d8", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_control_allocator", "color": "#cc41d8", "style": "normal"}, {"source": "t_tiltrotor_extra_controls", "target": "m_control_allocator", "color": "#d8b041", "style": "normal"}, {"source": "t_failure_detector_status", "target": "m_control_allocator", "color": "#d741d8", "style": "normal"}, {"source": "t_spoilers_setpoint", "target": "m_control_allocator", "color": "#d841d3", "style": "normal"}, {"source": "t_rpm", "target": "m_control_allocator", "color": "#d8bc41", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_control_allocator", "color": "#d8416a", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_control_allocator", "color": "#d84181", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_control_allocator", "color": "#d87b41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_control_allocator", "color": "#4177d8", "style": "normal"}, {"source": "t_adc_report", "target": "m_sensors", "color": "#d89941", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_sensors", "color": "#d84641", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_sensors", "color": "#4195d8", "style": "normal"}, {"source": "t_sensor_optical_flow", "target": "m_sensors", "color": "#d8b641", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_sensors", "color": "#41d8ca", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_sensors", "color": "#85d841", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_sensors", "color": "#d86441", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_sensors", "color": "#d84193", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_sensors", "color": "#d841c8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_sensors", "color": "#d8417b", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_sensors", "color": "#d87b41", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_sensors", "color": "#d841b0", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_airship_att_control", "color": "#41d877", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airship_att_control", "color": "#4177d8", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_uuv_att_control", "color": "#41a6d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_att_control", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_uuv_att_control", "color": "#aed841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uuv_att_control", "color": "#41d877", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_att_control", "color": "#d87b41", "style": "normal"}, {"source": "t_dataman_request", "target": "m_dataman", "color": "#44d841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_fw_pos_control", "color": "#9d41d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_fw_pos_control", "color": "#41d8b2", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_pos_control", "color": "#5cd841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_pos_control", "color": "#41d877", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_pos_control", "color": "#41d88f", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_fw_pos_control", "color": "#4189d8", "style": "normal"}, {"source": "t_wind", "target": "m_fw_pos_control", "color": "#41d895", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_pos_control", "color": "#7fd841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_pos_control", "color": "#d87b41", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_pos_control", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_pos_control", "color": "#4177d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_fw_pos_control", "color": "#9141d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_internal_combustion_engine_control", "color": "#41d877", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_internal_combustion_engine_control", "color": "#4177d8", "style": "normal"}, {"source": "t_rpm", "target": "m_internal_combustion_engine_control", "color": "#d8bc41", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_internal_combustion_engine_control", "color": "#41bed8", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_local_position_estimator", "color": "#c641d8", "style": "normal"}, {"source": "t_vehicle_mocap_odometry", "target": "m_local_position_estimator", "color": "#56d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_local_position_estimator", "color": "#41d88f", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_local_position_estimator", "color": "#4ad841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_local_position_estimator", "color": "#4189d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_local_position_estimator", "color": "#7fd841", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_local_position_estimator", "color": "#41cfd8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_local_position_estimator", "color": "#417dd8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_local_position_estimator", "color": "#8541d8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_local_position_estimator", "color": "#73d841", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_mavlink", "color": "#d84641", "style": "normal"}, {"source": "t_estimator_status", "target": "m_mavlink", "color": "#d84c41", "style": "normal"}, {"source": "t_register_ext_component_reply", "target": "m_mavlink", "color": "#d85e41", "style": "normal"}, {"source": "t_health_report", "target": "m_mavlink", "color": "#d85241", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_mavlink", "color": "#d85841", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mavlink", "color": "#d86441", "style": "normal"}, {"source": "t_debug_array", "target": "m_mavlink", "color": "#d87041", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mavlink", "color": "#d87b41", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_mavlink", "color": "#d88141", "style": "normal"}, {"source": "t_mount_orientation", "target": "m_mavlink", "color": "#d88741", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_mavlink", "color": "#d88d41", "style": "normal"}, {"source": "t_event", "target": "m_mavlink", "color": "#d89341", "style": "normal"}, {"source": "t_transponder_report", "target": "m_mavlink", "color": "#d89e41", "style": "normal"}, {"source": "t_open_drone_id_arm_status", "target": "m_mavlink", "color": "#d8a441", "style": "normal"}, {"source": "t_rpm", "target": "m_mavlink", "color": "#d8bc41", "style": "normal"}, {"source": "t_esc_status", "target": "m_mavlink", "color": "#d8c241", "style": "normal"}, {"source": "t_sensor_hygrometer", "target": "m_mavlink", "color": "#d8cd41", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_mavlink", "color": "#d7d841", "style": "normal"}, {"source": "t_gimbal_manager_information", "target": "m_mavlink", "color": "#d1d841", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_mavlink", "color": "#c6d841", "style": "normal"}, {"source": "t_dataman_response", "target": "m_mavlink", "color": "#ccd841", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_mavlink", "color": "#c0d841", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mavlink", "color": "#aed841", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_mavlink", "color": "#85d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mavlink", "color": "#7fd841", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_mavlink", "color": "#73d841", "style": "normal"}, {"source": "t_home_position", "target": "m_mavlink", "color": "#6ed841", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_mavlink", "color": "#68d841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_mavlink", "color": "#5cd841", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_mavlink", "color": "#50d841", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_mavlink", "color": "#41d842", "style": "normal"}, {"source": "t_ulog_stream", "target": "m_mavlink", "color": "#41d854", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_mavlink", "color": "#41d85a", "style": "normal"}, {"source": "t_orbit_status", "target": "m_mavlink", "color": "#41d860", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mavlink", "color": "#41d877", "style": "normal"}, {"source": "t_debug_key_value", "target": "m_mavlink", "color": "#41d889", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mavlink", "color": "#41d88f", "style": "normal"}, {"source": "t_wind", "target": "m_mavlink", "color": "#41d895", "style": "normal"}, {"source": "t_cpuload", "target": "m_mavlink", "color": "#41d8b8", "style": "normal"}, {"source": "t_figure_eight_status", "target": "m_mavlink", "color": "#41d8c4", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_mavlink", "color": "#41d8ca", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_mavlink", "color": "#41d8cf", "style": "normal"}, {"source": "t_airspeed", "target": "m_mavlink", "color": "#41d5d8", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_mavlink", "color": "#41cfd8", "style": "normal"}, {"source": "t_input_rc", "target": "m_mavlink", "color": "#41b8d8", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_mavlink", "color": "#41b2d8", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mavlink", "color": "#41a6d8", "style": "normal"}, {"source": "t_geofence_result", "target": "m_mavlink", "color": "#418fd8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_mavlink", "color": "#4189d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_mavlink", "color": "#417dd8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mavlink", "color": "#4177d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_mavlink", "color": "#416cd8", "style": "normal"}, {"source": "t_tecs_status", "target": "m_mavlink", "color": "#415ad8", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mavlink", "color": "#4154d8", "style": "normal"}, {"source": "t_satellite_info", "target": "m_mavlink", "color": "#414ed8", "style": "normal"}, {"source": "t_debug_vect", "target": "m_mavlink", "color": "#4a41d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_mavlink", "color": "#5641d8", "style": "normal"}, {"source": "t_obstacle_distance_fused", "target": "m_mavlink", "color": "#5c41d8", "style": "normal"}, {"source": "t_mission_result", "target": "m_mavlink", "color": "#6e41d8", "style": "normal"}, {"source": "t_vehicle_angular_velocity_groundtruth", "target": "m_mavlink", "color": "#7341d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mavlink", "color": "#8541d8", "style": "normal"}, {"source": "t_gimbal_device_set_attitude", "target": "m_mavlink", "color": "#8b41d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_mavlink", "color": "#9141d8", "style": "normal"}, {"source": "t_gimbal_v1_command", "target": "m_mavlink", "color": "#9741d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_mavlink", "color": "#9d41d8", "style": "normal"}, {"source": "t_uavcan_parameter_value", "target": "m_mavlink", "color": "#a841d8", "style": "normal"}, {"source": "t_gimbal_manager_status", "target": "m_mavlink", "color": "#ae41d8", "style": "normal"}, {"source": "t_camera_capture", "target": "m_mavlink", "color": "#b441d8", "style": "normal"}, {"source": "t_debug_value", "target": "m_mavlink", "color": "#c041d8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_mavlink", "color": "#d841c8", "style": "normal"}, {"source": "t_vehicle_odometry", "target": "m_mavlink", "color": "#d841bc", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_mavlink", "color": "#d841b0", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_mavlink", "color": "#d8419e", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_mavlink", "color": "#d841a4", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_mavlink", "color": "#d8418d", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_mavlink", "color": "#d8417b", "style": "normal"}, {"source": "t_camera_status", "target": "m_mavlink", "color": "#d84170", "style": "normal"}, {"source": "t_mission", "target": "m_mavlink", "color": "#d84175", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_mavlink", "color": "#d8416a", "style": "normal"}, {"source": "t_internal_combustion_engine_status", "target": "m_mavlink", "color": "#d84164", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_mavlink", "color": "#d84152", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_mavlink", "color": "#d84146", "style": "normal"}, {"source": "t_adc_report", "target": "m_battery_status", "color": "#d89941", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_status", "color": "#4177d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_battery_status", "color": "#7941d8", "style": "normal"}, {"source": "t_gimbal_manager_set_attitude", "target": "m_gimbal", "color": "#4160d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_gimbal", "color": "#9d41d8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_gimbal", "color": "#d85841", "style": "normal"}, {"source": "t_vehicle_roi", "target": "m_gimbal", "color": "#91d841", "style": "normal"}, {"source": "t_gimbal_manager_set_manual_control", "target": "m_gimbal", "color": "#41d866", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_gimbal", "color": "#d84152", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_gimbal", "color": "#41d88f", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gimbal", "color": "#4189d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gimbal", "color": "#41d877", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_gimbal", "color": "#8541d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_gimbal", "color": "#9141d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_logger", "color": "#4189d8", "style": "normal"}, {"source": "t_ulog_stream_ack", "target": "m_logger", "color": "#41d8a0", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_logger", "color": "#41d877", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_logger", "color": "#4177d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_logger", "color": "#416cd8", "style": "normal"}, {"source": "t_home_position", "target": "m_vtol_att_control", "color": "#6ed841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_vtol_att_control", "color": "#5cd841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_vtol_att_control", "color": "#4189d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_vtol_att_control", "color": "#d87b41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_vtol_att_control", "color": "#4177d8", "style": "normal"}, {"source": "t_action_request", "target": "m_vtol_att_control", "color": "#41d84e", "style": "normal"}, {"source": "t_tecs_status", "target": "m_vtol_att_control", "color": "#415ad8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_vtol_att_control", "color": "#41d88f", "style": "normal"}, {"source": "t_mc_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#41d8a6", "style": "normal"}, {"source": "t_fw_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#7f41d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_vtol_att_control", "color": "#8541d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_vtol_att_control", "color": "#9141d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_vtol_att_control", "color": "#7fd841", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_vtol_att_control", "color": "#d84146", "style": "normal"}, {"source": "t_tecs_status", "target": "m_airspeed_selector", "color": "#415ad8", "style": "normal"}, {"source": "t_estimator_status", "target": "m_airspeed_selector", "color": "#d84c41", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_airspeed_selector", "color": "#d8416a", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_airspeed_selector", "color": "#41d88f", "style": "normal"}, {"source": "t_airspeed", "target": "m_airspeed_selector", "color": "#41d5d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_airspeed_selector", "color": "#7fd841", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_airspeed_selector", "color": "#ba41d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_airspeed_selector", "color": "#7941d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_airspeed_selector", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airspeed_selector", "color": "#4177d8", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_airspeed_selector", "color": "#d88d41", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_temperature_compensation", "color": "#4195d8", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_temperature_compensation", "color": "#41d8cf", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_temperature_compensation", "color": "#d86441", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_temperature_compensation", "color": "#4189d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_temperature_compensation", "color": "#d84193", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_mc_pos_control", "color": "#41d8b2", "style": "normal"}, {"source": "t_vehicle_constraints", "target": "m_mc_pos_control", "color": "#41d86c", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_pos_control", "color": "#41d88f", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_pos_control", "color": "#7fd841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_pos_control", "color": "#d87b41", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_rc_update", "color": "#5641d8", "style": "normal"}, {"source": "t_rc_parameter_map", "target": "m_rc_update", "color": "#6841d8", "style": "normal"}, {"source": "t_input_rc", "target": "m_rc_update", "color": "#41b8d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_rover_differential", "color": "#41bed8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_differential", "color": "#41d8b2", "style": "normal"}, {"source": "t_rover_attitude_setpoint", "target": "m_rover_differential", "color": "#62d841", "style": "normal"}, {"source": "t_rover_velocity_setpoint", "target": "m_rover_differential", "color": "#41a0d8", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_rover_differential", "color": "#d141d8", "style": "normal"}, {"source": "t_rover_throttle_setpoint", "target": "m_rover_differential", "color": "#41d8be", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_differential", "color": "#8541d8", "style": "normal"}, {"source": "t_rover_rate_setpoint", "target": "m_rover_differential", "color": "#d841cd", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_differential", "color": "#41d877", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_differential", "color": "#7fd841", "style": "normal"}, {"source": "t_rover_steering_setpoint", "target": "m_rover_differential", "color": "#41d848", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_differential", "color": "#d87b41", "style": "normal"}, {"source": "t_rover_position_setpoint", "target": "m_rover_differential", "color": "#d841b6", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_differential", "color": "#9141d8", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_attitude_estimator_q", "color": "#c641d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_attitude_estimator_q", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_mocap_odometry", "target": "m_attitude_estimator_q", "color": "#56d841", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_attitude_estimator_q", "color": "#4ad841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_attitude_estimator_q", "color": "#7fd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mag_bias_estimator", "color": "#4177d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mag_bias_estimator", "color": "#d86441", "style": "normal"}]} \ No newline at end of file +{"nodes": [{"id": "m_internal_combustion_engine_control", "name": "internal_combustion_engine_control", "type": "Module", "color": "#666666"}, {"id": "m_fw_autotune_attitude_control", "name": "fw_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_autotune_attitude_control", "name": "mc_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_landing_target_estimator", "name": "landing_target_estimator", "type": "Module", "color": "#666666"}, {"id": "m_local_position_estimator", "name": "local_position_estimator", "type": "Module", "color": "#666666"}, {"id": "m_temperature_compensation", "name": "temperature_compensation", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_serial", "name": "lightware_laser_serial", "type": "Module", "color": "#666666"}, {"id": "m_system_power_simulator", "name": "system_power_simulator", "type": "Module", "color": "#666666"}, {"id": "m_lightware_sf45_serial", "name": "lightware_sf45_serial", "type": "Module", "color": "#666666"}, {"id": "m_pm_selector_auterion", "name": "pm_selector_auterion", "type": "Module", "color": "#666666"}, {"id": "m_attitude_estimator_q", "name": "attitude_estimator_q", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_i2c", "name": "lightware_laser_i2c", "type": "Module", "color": "#666666"}, {"id": "m_sensor_airspeed_sim", "name": "sensor_airspeed_sim", "type": "Module", "color": "#666666"}, {"id": "m_flight_mode_manager", "name": "flight_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_airship_att_control", "name": "airship_att_control", "type": "Module", "color": "#666666"}, {"id": "m_fw_lat_lon_control", "name": "fw_lat_lon_control", "type": "Module", "color": "#666666"}, {"id": "m_rover_differential", "name": "rover_differential", "type": "Module", "color": "#666666"}, {"id": "m_mag_bias_estimator", "name": "mag_bias_estimator", "type": "Module", "color": "#666666"}, {"id": "m_io_bypass_control", "name": "io_bypass_control", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_is31fl3195", "name": "rgbled_is31fl3195", "type": "Module", "color": "#666666"}, {"id": "m_payload_deliverer", "name": "payload_deliverer", "type": "Module", "color": "#666666"}, {"id": "m_battery_simulator", "name": "battery_simulator", "type": "Module", "color": "#666666"}, {"id": "m_simulator_mavlink", "name": "simulator_mavlink", "type": "Module", "color": "#666666"}, {"id": "m_rover_pos_control", "name": "rover_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_control_allocator", "name": "control_allocator", "type": "Module", "color": "#666666"}, {"id": "m_airspeed_selector", "name": "airspeed_selector", "type": "Module", "color": "#666666"}, {"id": "m_cdcacm_autostart", "name": "cdcacm_autostart", "type": "Module", "color": "#666666"}, {"id": "m_uxrce_dds_client", "name": "uxrce_dds_client", "type": "Module", "color": "#666666"}, {"id": "m_gyro_calibration", "name": "gyro_calibration", "type": "Module", "color": "#666666"}, {"id": "m_vtol_att_control", "name": "vtol_att_control", "type": "Module", "color": "#666666"}, {"id": "m_pca9685_pwm_out", "name": "pca9685_pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_frsky_telemetry", "name": "frsky_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_ncp5623c", "name": "rgbled_ncp5623c", "type": "Module", "color": "#666666"}, {"id": "m_template_module", "name": "template_module", "type": "Module", "color": "#666666"}, {"id": "m_rover_ackermann", "name": "rover_ackermann", "type": "Module", "color": "#666666"}, {"id": "m_fw_rate_control", "name": "fw_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_camera_feedback", "name": "camera_feedback", "type": "Module", "color": "#666666"}, {"id": "m_sensor_baro_sim", "name": "sensor_baro_sim", "type": "Module", "color": "#666666"}, {"id": "m_uuv_pos_control", "name": "uuv_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_rate_control", "name": "mc_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_fw_mode_manager", "name": "fw_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_uuv_att_control", "name": "uuv_att_control", "type": "Module", "color": "#666666"}, {"id": "m_hott_telemetry", "name": "hott_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_camera_capture", "name": "camera_capture", "type": "Module", "color": "#666666"}, {"id": "m_camera_trigger", "name": "camera_trigger", "type": "Module", "color": "#666666"}, {"id": "m_ulanding_radar", "name": "ulanding_radar", "type": "Module", "color": "#666666"}, {"id": "m_fw_att_control", "name": "fw_att_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_att_control", "name": "mc_att_control", "type": "Module", "color": "#666666"}, {"id": "m_sensor_agp_sim", "name": "sensor_agp_sim", "type": "Module", "color": "#666666"}, {"id": "m_sensor_gps_sim", "name": "sensor_gps_sim", "type": "Module", "color": "#666666"}, {"id": "m_sensor_mag_sim", "name": "sensor_mag_sim", "type": "Module", "color": "#666666"}, {"id": "m_manual_control", "name": "manual_control", "type": "Module", "color": "#666666"}, {"id": "m_battery_status", "name": "battery_status", "type": "Module", "color": "#666666"}, {"id": "m_mc_pos_control", "name": "mc_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_actuator_test", "name": "actuator_test", "type": "Module", "color": "#666666"}, {"id": "m_linux_pwm_out", "name": "linux_pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_rpm_simulator", "name": "rpm_simulator", "type": "Module", "color": "#666666"}, {"id": "m_safety_button", "name": "safety_button", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_lp5562", "name": "rgbled_lp5562", "type": "Module", "color": "#666666"}, {"id": "m_land_detector", "name": "land_detector", "type": "Module", "color": "#666666"}, {"id": "m_rover_mecanum", "name": "rover_mecanum", "type": "Module", "color": "#666666"}, {"id": "m_simulator_sih", "name": "simulator_sih", "type": "Module", "color": "#666666"}, {"id": "m_i2c_launcher", "name": "i2c_launcher", "type": "Module", "color": "#666666"}, {"id": "m_tune_control", "name": "tune_control", "type": "Module", "color": "#666666"}, {"id": "m_ets_airspeed", "name": "ets_airspeed", "type": "Module", "color": "#666666"}, {"id": "m_sagetech_mxs", "name": "sagetech_mxs", "type": "Module", "color": "#666666"}, {"id": "m_led_control", "name": "led_control", "type": "Module", "color": "#666666"}, {"id": "m_mpu9250_i2c", "name": "mpu9250_i2c", "type": "Module", "color": "#666666"}, {"id": "m_pps_capture", "name": "pps_capture", "type": "Module", "color": "#666666"}, {"id": "m_lsm9ds1_mag", "name": "lsm9ds1_mag", "type": "Module", "color": "#666666"}, {"id": "m_rpm_capture", "name": "rpm_capture", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out_sim", "name": "pwm_out_sim", "type": "Module", "color": "#666666"}, {"id": "m_esc_battery", "name": "esc_battery", "type": "Module", "color": "#666666"}, {"id": "m_microbench", "name": "microbench", "type": "Module", "color": "#666666"}, {"id": "m_septentrio", "name": "septentrio", "type": "Module", "color": "#666666"}, {"id": "m_iridiumsbd", "name": "iridiumsbd", "type": "Module", "color": "#666666"}, {"id": "m_iam20680hp", "name": "iam20680hp", "type": "Module", "color": "#666666"}, {"id": "m_bmi088_i2c", "name": "bmi088_i2c", "type": "Module", "color": "#666666"}, {"id": "m_tone_alarm", "name": "tone_alarm", "type": "Module", "color": "#666666"}, {"id": "m_batt_smbus", "name": "batt_smbus", "type": "Module", "color": "#666666"}, {"id": "m_teraranger", "name": "teraranger", "type": "Module", "color": "#666666"}, {"id": "m_ll40ls_pwm", "name": "ll40ls_pwm", "type": "Module", "color": "#666666"}, {"id": "m_leddar_one", "name": "leddar_one", "type": "Module", "color": "#666666"}, {"id": "m_uavcannode", "name": "uavcannode", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_pwm", "name": "rgbled_pwm", "type": "Module", "color": "#666666"}, {"id": "m_send_event", "name": "send_event", "type": "Module", "color": "#666666"}, {"id": "m_pwm_input", "name": "pwm_input", "type": "Module", "color": "#666666"}, {"id": "m_rpi_rc_in", "name": "rpi_rc_in", "type": "Module", "color": "#666666"}, {"id": "m_uwb_sr150", "name": "uwb_sr150", "type": "Module", "color": "#666666"}, {"id": "m_ms5525dso", "name": "ms5525dso", "type": "Module", "color": "#666666"}, {"id": "m_tattu_can", "name": "tattu_can", "type": "Module", "color": "#666666"}, {"id": "m_icm20608g", "name": "icm20608g", "type": "Module", "color": "#666666"}, {"id": "m_icm42670p", "name": "icm42670p", "type": "Module", "color": "#666666"}, {"id": "m_icm40609d", "name": "icm40609d", "type": "Module", "color": "#666666"}, {"id": "m_icm42688p", "name": "icm42688p", "type": "Module", "color": "#666666"}, {"id": "m_adis16507", "name": "adis16507", "type": "Module", "color": "#666666"}, {"id": "m_adis16477", "name": "adis16477", "type": "Module", "color": "#666666"}, {"id": "m_adis16448", "name": "adis16448", "type": "Module", "color": "#666666"}, {"id": "m_adis16470", "name": "adis16470", "type": "Module", "color": "#666666"}, {"id": "m_adis16497", "name": "adis16497", "type": "Module", "color": "#666666"}, {"id": "m_mmc5983ma", "name": "mmc5983ma", "type": "Module", "color": "#666666"}, {"id": "m_lsm303agr", "name": "lsm303agr", "type": "Module", "color": "#666666"}, {"id": "m_board_adc", "name": "board_adc", "type": "Module", "color": "#666666"}, {"id": "m_vertiq_io", "name": "vertiq_io", "type": "Module", "color": "#666666"}, {"id": "m_thoneflow", "name": "thoneflow", "type": "Module", "color": "#666666"}, {"id": "m_vectornav", "name": "vectornav", "type": "Module", "color": "#666666"}, {"id": "m_tcbp001ta", "name": "tcbp001ta", "type": "Module", "color": "#666666"}, {"id": "m_mpl3115a2", "name": "mpl3115a2", "type": "Module", "color": "#666666"}, {"id": "m_gz_bridge", "name": "gz_bridge", "type": "Module", "color": "#666666"}, {"id": "m_navigator", "name": "navigator", "type": "Module", "color": "#666666"}, {"id": "m_commander", "name": "commander", "type": "Module", "color": "#666666"}, {"id": "m_rc_update", "name": "rc_update", "type": "Module", "color": "#666666"}, {"id": "m_rc_input", "name": "rc_input", "type": "Module", "color": "#666666"}, {"id": "m_roboclaw", "name": "roboclaw", "type": "Module", "color": "#666666"}, {"id": "m_ms4525do", "name": "ms4525do", "type": "Module", "color": "#666666"}, {"id": "m_icm20649", "name": "icm20649", "type": "Module", "color": "#666666"}, {"id": "m_icm20948", "name": "icm20948", "type": "Module", "color": "#666666"}, {"id": "m_icm45686", "name": "icm45686", "type": "Module", "color": "#666666"}, {"id": "m_iim42652", "name": "iim42652", "type": "Module", "color": "#666666"}, {"id": "m_icm20602", "name": "icm20602", "type": "Module", "color": "#666666"}, {"id": "m_icm42605", "name": "icm42605", "type": "Module", "color": "#666666"}, {"id": "m_icm20689", "name": "icm20689", "type": "Module", "color": "#666666"}, {"id": "m_iim42653", "name": "iim42653", "type": "Module", "color": "#666666"}, {"id": "m_vcm1193l", "name": "vcm1193l", "type": "Module", "color": "#666666"}, {"id": "m_qmc5883l", "name": "qmc5883l", "type": "Module", "color": "#666666"}, {"id": "m_voxl_esc", "name": "voxl_esc", "type": "Module", "color": "#666666"}, {"id": "m_mappydot", "name": "mappydot", "type": "Module", "color": "#666666"}, {"id": "m_icp101xx", "name": "icp101xx", "type": "Module", "color": "#666666"}, {"id": "m_icp201xx", "name": "icp201xx", "type": "Module", "color": "#666666"}, {"id": "m_voxl2_io", "name": "voxl2_io", "type": "Module", "color": "#666666"}, {"id": "m_neopixel", "name": "neopixel", "type": "Module", "color": "#666666"}, {"id": "m_gyro_fft", "name": "gyro_fft", "type": "Module", "color": "#666666"}, {"id": "m_load_mon", "name": "load_mon", "type": "Module", "color": "#666666"}, {"id": "m_failure", "name": "failure", "type": "Module", "color": "#666666"}, {"id": "m_tap_esc", "name": "tap_esc", "type": "Module", "color": "#666666"}, {"id": "m_asp5033", "name": "asp5033", "type": "Module", "color": "#666666"}, {"id": "m_mpu6500", "name": "mpu6500", "type": "Module", "color": "#666666"}, {"id": "m_mpu9250", "name": "mpu9250", "type": "Module", "color": "#666666"}, {"id": "m_mpu6000", "name": "mpu6000", "type": "Module", "color": "#666666"}, {"id": "m_lsm303d", "name": "lsm303d", "type": "Module", "color": "#666666"}, {"id": "m_lsm9ds1", "name": "lsm9ds1", "type": "Module", "color": "#666666"}, {"id": "m_pcf8583", "name": "pcf8583", "type": "Module", "color": "#666666"}, {"id": "m_msp_osd", "name": "msp_osd", "type": "Module", "color": "#666666"}, {"id": "m_ak09916", "name": "ak09916", "type": "Module", "color": "#666666"}, {"id": "m_iis2mdc", "name": "iis2mdc", "type": "Module", "color": "#666666"}, {"id": "m_ist8308", "name": "ist8308", "type": "Module", "color": "#666666"}, {"id": "m_ist8310", "name": "ist8310", "type": "Module", "color": "#666666"}, {"id": "m_hmc5883", "name": "hmc5883", "type": "Module", "color": "#666666"}, {"id": "m_lis3mdl", "name": "lis3mdl", "type": "Module", "color": "#666666"}, {"id": "m_ads1115", "name": "ads1115", "type": "Module", "color": "#666666"}, {"id": "m_gy_us42", "name": "gy_us42", "type": "Module", "color": "#666666"}, {"id": "m_cm8jl65", "name": "cm8jl65", "type": "Module", "color": "#666666"}, {"id": "m_vl53l0x", "name": "vl53l0x", "type": "Module", "color": "#666666"}, {"id": "m_afbrs50", "name": "afbrs50", "type": "Module", "color": "#666666"}, {"id": "m_vl53l1x", "name": "vl53l1x", "type": "Module", "color": "#666666"}, {"id": "m_tf02pro", "name": "tf02pro", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out", "name": "pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_paw3902", "name": "paw3902", "type": "Module", "color": "#666666"}, {"id": "m_paa3905", "name": "paa3905", "type": "Module", "color": "#666666"}, {"id": "m_px4flow", "name": "px4flow", "type": "Module", "color": "#666666"}, {"id": "m_pmw3901", "name": "pmw3901", "type": "Module", "color": "#666666"}, {"id": "m_mpc2520", "name": "mpc2520", "type": "Module", "color": "#666666"}, {"id": "m_lps22hb", "name": "lps22hb", "type": "Module", "color": "#666666"}, {"id": "m_lps33hw", "name": "lps33hw", "type": "Module", "color": "#666666"}, {"id": "m_crsf_rc", "name": "crsf_rc", "type": "Module", "color": "#666666"}, {"id": "m_ghst_rc", "name": "ghst_rc", "type": "Module", "color": "#666666"}, {"id": "m_sbus_rc", "name": "sbus_rc", "type": "Module", "color": "#666666"}, {"id": "m_sensors", "name": "sensors", "type": "Module", "color": "#666666"}, {"id": "m_dataman", "name": "dataman", "type": "Module", "color": "#666666"}, {"id": "m_mavlink", "name": "mavlink", "type": "Module", "color": "#666666"}, {"id": "m_batmon", "name": "batmon", "type": "Module", "color": "#666666"}, {"id": "m_ms4515", "name": "ms4515", "type": "Module", "color": "#666666"}, {"id": "m_l3gd20", "name": "l3gd20", "type": "Module", "color": "#666666"}, {"id": "m_bmi085", "name": "bmi085", "type": "Module", "color": "#666666"}, {"id": "m_bmi055", "name": "bmi055", "type": "Module", "color": "#666666"}, {"id": "m_bmi270", "name": "bmi270", "type": "Module", "color": "#666666"}, {"id": "m_bmi088", "name": "bmi088", "type": "Module", "color": "#666666"}, {"id": "m_sch16t", "name": "sch16t", "type": "Module", "color": "#666666"}, {"id": "m_cyphal", "name": "cyphal", "type": "Module", "color": "#666666"}, {"id": "m_ina238", "name": "ina238", "type": "Module", "color": "#666666"}, {"id": "m_voxlpm", "name": "voxlpm", "type": "Module", "color": "#666666"}, {"id": "m_ina220", "name": "ina220", "type": "Module", "color": "#666666"}, {"id": "m_ina226", "name": "ina226", "type": "Module", "color": "#666666"}, {"id": "m_ina228", "name": "ina228", "type": "Module", "color": "#666666"}, {"id": "m_irlock", "name": "irlock", "type": "Module", "color": "#666666"}, {"id": "m_atxxxx", "name": "atxxxx", "type": "Module", "color": "#666666"}, {"id": "m_ak8963", "name": "ak8963", "type": "Module", "color": "#666666"}, {"id": "m_bmm150", "name": "bmm150", "type": "Module", "color": "#666666"}, {"id": "m_bmm350", "name": "bmm350", "type": "Module", "color": "#666666"}, {"id": "m_rm3100", "name": "rm3100", "type": "Module", "color": "#666666"}, {"id": "m_uavcan", "name": "uavcan", "type": "Module", "color": "#666666"}, {"id": "m_pga460", "name": "pga460", "type": "Module", "color": "#666666"}, {"id": "m_tfmini", "name": "tfmini", "type": "Module", "color": "#666666"}, {"id": "m_ll40ls", "name": "ll40ls", "type": "Module", "color": "#666666"}, {"id": "m_mb12xx", "name": "mb12xx", "type": "Module", "color": "#666666"}, {"id": "m_bmp581", "name": "bmp581", "type": "Module", "color": "#666666"}, {"id": "m_ms5611", "name": "ms5611", "type": "Module", "color": "#666666"}, {"id": "m_bmp280", "name": "bmp280", "type": "Module", "color": "#666666"}, {"id": "m_dps310", "name": "dps310", "type": "Module", "color": "#666666"}, {"id": "m_bmp388", "name": "bmp388", "type": "Module", "color": "#666666"}, {"id": "m_lps25h", "name": "lps25h", "type": "Module", "color": "#666666"}, {"id": "m_ms5837", "name": "ms5837", "type": "Module", "color": "#666666"}, {"id": "m_heater", "name": "heater", "type": "Module", "color": "#666666"}, {"id": "m_dsm_rc", "name": "dsm_rc", "type": "Module", "color": "#666666"}, {"id": "m_rgbled", "name": "rgbled", "type": "Module", "color": "#666666"}, {"id": "m_gimbal", "name": "gimbal", "type": "Module", "color": "#666666"}, {"id": "m_logger", "name": "logger", "type": "Module", "color": "#666666"}, {"id": "m_tests", "name": "tests", "type": "Module", "color": "#666666"}, {"id": "m_dshot", "name": "dshot", "type": "Module", "color": "#666666"}, {"id": "m_sht3x", "name": "sht3x", "type": "Module", "color": "#666666"}, {"id": "m_sdp3x", "name": "sdp3x", "type": "Module", "color": "#666666"}, {"id": "m_px4io", "name": "px4io", "type": "Module", "color": "#666666"}, {"id": "m_srf02", "name": "srf02", "type": "Module", "color": "#666666"}, {"id": "m_srf05", "name": "srf05", "type": "Module", "color": "#666666"}, {"id": "m_spl06", "name": "spl06", "type": "Module", "color": "#666666"}, {"id": "m_spa06", "name": "spa06", "type": "Module", "color": "#666666"}, {"id": "m_auav", "name": "auav", "type": "Module", "color": "#666666"}, {"id": "m_ekf2", "name": "ekf2", "type": "Module", "color": "#666666"}, {"id": "m_bst", "name": "bst", "type": "Module", "color": "#666666"}, {"id": "m_gps", "name": "gps", "type": "Module", "color": "#666666"}, {"id": "t_vehicle_angular_velocity_groundtruth", "name": "vehicle_angular_velocity_groundtruth", "type": "topic", "color": "#7bd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position_groundtruth", "name": "vehicle_global_position_groundtruth", "type": "topic", "color": "#418ed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor_mode_change_request", "name": "distance_sensor_mode_change_request", "type": "topic", "color": "#d84174", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_longitudinal_control_configuration", "name": "longitudinal_control_configuration", "type": "topic", "color": "#d8a141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_groundtruth", "name": "vehicle_local_position_groundtruth", "type": "topic", "color": "#6ad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_landing_status", "name": "position_controller_landing_status", "type": "topic", "color": "#41d84a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_internal_combustion_engine_control", "name": "internal_combustion_engine_control", "type": "topic", "color": "#d84196", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_internal_combustion_engine_status", "name": "internal_combustion_engine_status", "type": "topic", "color": "#41d89a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_manual_control", "name": "gimbal_manager_set_manual_control", "type": "topic", "color": "#6541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_autotune_attitude_control_status", "name": "autotune_attitude_control_status", "type": "topic", "color": "#87d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_longitudinal_setpoint", "name": "fixed_wing_longitudinal_setpoint", "type": "topic", "color": "#d8415d", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_setpoint", "name": "vehicle_local_position_setpoint", "type": "topic", "color": "#41a5d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_attitude_status", "name": "gimbal_device_attitude_status", "type": "topic", "color": "#41cdd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_lateral_control_configuration", "name": "lateral_control_configuration", "type": "topic", "color": "#d841c3", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_groundtruth", "name": "vehicle_attitude_groundtruth", "type": "topic", "color": "#4ed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fw_virtual_attitude_setpoint", "name": "fw_virtual_attitude_setpoint", "type": "topic", "color": "#41d883", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mc_virtual_attitude_setpoint", "name": "mc_virtual_attitude_setpoint", "type": "topic", "color": "#41c1d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_register_ext_component_reply", "name": "register_ext_component_reply", "type": "topic", "color": "#6a41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_lateral_setpoint", "name": "fixed_wing_lateral_setpoint", "type": "topic", "color": "#d8ad41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_attitude", "name": "gimbal_manager_set_attitude", "type": "topic", "color": "#cbd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_set_attitude", "name": "gimbal_device_set_attitude", "type": "topic", "color": "#d8be41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_status", "name": "position_controller_status", "type": "topic", "color": "#41d8c1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_information", "name": "gimbal_manager_information", "type": "topic", "color": "#a941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_controls_status_0", "name": "actuator_controls_status_0", "type": "topic", "color": "#ba41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorControlsStatus.msg"}, {"id": "t_fixed_wing_runway_control", "name": "fixed_wing_runway_control", "type": "topic", "color": "#d85241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_operator_id", "name": "open_drone_id_operator_id", "type": "topic", "color": "#d85741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_selector_status", "name": "estimator_selector_status", "type": "topic", "color": "#d88541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_setpoint", "name": "vehicle_attitude_setpoint", "type": "topic", "color": "#41d88e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_information", "name": "gimbal_device_information", "type": "topic", "color": "#5f41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_setpoint_triplet", "name": "position_setpoint_triplet", "type": "topic", "color": "#8741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_control_allocator_status", "name": "control_allocator_status", "type": "topic", "color": "#c5d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tiltrotor_extra_controls", "name": "tiltrotor_extra_controls", "type": "topic", "color": "#c0d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_arm_status", "name": "open_drone_id_arm_status", "type": "topic", "color": "#419ad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_request", "name": "uavcan_parameter_request", "type": "topic", "color": "#d8419c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_throttle_setpoint", "name": "rover_throttle_setpoint", "type": "topic", "color": "#d86341", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_obstacle_distance_fused", "name": "obstacle_distance_fused", "type": "topic", "color": "#d89041", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ObstacleDistance.msg"}, {"id": "t_vehicle_global_position", "name": "vehicle_global_position", "type": "topic", "color": "#d89641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_position_setpoint", "name": "rover_position_setpoint", "type": "topic", "color": "#d8a741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failure_detector_status", "name": "failure_detector_status", "type": "topic", "color": "#d8b241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flight_phase_estimation", "name": "flight_phase_estimation", "type": "topic", "color": "#afd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_launch_detection_status", "name": "launch_detection_status", "type": "topic", "color": "#9dd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_thrust_setpoint", "name": "vehicle_thrust_setpoint", "type": "topic", "color": "#5fd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleThrustSetpoint.msg"}, {"id": "t_vehicle_torque_setpoint", "name": "vehicle_torque_setpoint", "type": "topic", "color": "#41d861", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleTorqueSetpoint.msg"}, {"id": "t_manual_control_setpoint", "name": "manual_control_setpoint", "type": "topic", "color": "#41abd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_switches", "name": "manual_control_switches", "type": "topic", "color": "#5341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_visual_odometry", "name": "vehicle_visual_odometry", "type": "topic", "color": "#8141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_velocity_setpoint", "name": "rover_velocity_setpoint", "type": "topic", "color": "#c541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_attitude_setpoint", "name": "rover_attitude_setpoint", "type": "topic", "color": "#d841ad", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_steering_setpoint", "name": "rover_steering_setpoint", "type": "topic", "color": "#d841a1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_mocap_odometry", "name": "vehicle_mocap_odometry", "type": "topic", "color": "#d89c41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_rates_setpoint", "name": "vehicle_rates_setpoint", "type": "topic", "color": "#41d844", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_value", "name": "uavcan_parameter_value", "type": "topic", "color": "#4144d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status_flags", "name": "estimator_status_flags", "type": "topic", "color": "#d841a7", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position", "name": "vehicle_local_position", "type": "topic", "color": "#d84146", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_offboard_control_mode", "name": "offboard_control_mode", "type": "topic", "color": "#d8c941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_self_id", "name": "open_drone_id_self_id", "type": "topic", "color": "#d8d441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_status", "name": "gimbal_manager_status", "type": "topic", "color": "#41b6d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_sensor_bias", "name": "estimator_sensor_bias", "type": "topic", "color": "#4841d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_differential_pressure", "name": "differential_pressure", "type": "topic", "color": "#4e41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_land_detected", "name": "vehicle_land_detected", "type": "topic", "color": "#c041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_control_mode", "name": "vehicle_control_mode", "type": "topic", "color": "#d1d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_system", "name": "open_drone_id_system", "type": "topic", "color": "#9d41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_servos_trim", "name": "actuator_servos_trim", "type": "topic", "color": "#d841cf", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs_sim", "name": "actuator_outputs_sim", "type": "topic", "color": "#d8417f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_sensor_optical_flow", "name": "sensor_optical_flow", "type": "topic", "color": "#d86e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_rate_setpoint", "name": "rover_rate_setpoint", "type": "topic", "color": "#a9d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_figure_eight_status", "name": "figure_eight_status", "type": "topic", "color": "#81d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_trajectory_setpoint", "name": "trajectory_setpoint", "type": "topic", "color": "#65d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_aux_global_position", "name": "aux_global_position", "type": "topic", "color": "#41d872", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource2d.msg"}, {"id": "t_vehicle_command_ack", "name": "vehicle_command_ack", "type": "topic", "color": "#41d3d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vtol_vehicle_status", "name": "vtol_vehicle_status", "type": "topic", "color": "#41b0d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_target_pose", "name": "landing_target_pose", "type": "topic", "color": "#4166d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_esc_serial_passthru", "name": "esc_serial_passthru", "type": "topic", "color": "#7041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/MavlinkTunnel.msg"}, {"id": "t_vehicle_constraints", "name": "vehicle_constraints", "type": "topic", "color": "#d84157", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu_status", "name": "vehicle_imu_status", "type": "topic", "color": "#41d866", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_power_button_state", "name": "power_button_state", "type": "topic", "color": "#41d894", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed_validated", "name": "airspeed_validated", "type": "topic", "color": "#4172d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_transponder_report", "name": "transponder_report", "type": "topic", "color": "#5941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensors_status_imu", "name": "sensors_status_imu", "type": "topic", "color": "#d8416e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear_wheel", "name": "landing_gear_wheel", "type": "topic", "color": "#d84168", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_obstacle_distance", "name": "obstacle_distance", "type": "topic", "color": "#d87941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ObstacleDistance.msg"}, {"id": "t_sensor_correction", "name": "sensor_correction", "type": "topic", "color": "#d6d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mount_orientation", "name": "mount_orientation", "type": "topic", "color": "#59d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_spoilers_setpoint", "name": "spoilers_setpoint", "type": "topic", "color": "#41d878", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_sensor_hygrometer", "name": "sensor_hygrometer", "type": "topic", "color": "#41d8c7", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_iridiumsbd_status", "name": "iridiumsbd_status", "type": "topic", "color": "#414ad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_time_estimate", "name": "rtl_time_estimate", "type": "topic", "color": "#8c41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_v1_command", "name": "gimbal_v1_command", "type": "topic", "color": "#d8418a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_telemetry_status", "name": "telemetry_status", "type": "topic", "color": "#d84c41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rc_parameter_map", "name": "rc_parameter_map", "type": "topic", "color": "#d8cf41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_response", "name": "dataman_response", "type": "topic", "color": "#92d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_navigator_status", "name": "navigator_status", "type": "topic", "color": "#42d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_odometry", "name": "vehicle_odometry", "type": "topic", "color": "#41d87d", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status", "name": "estimator_status", "type": "topic", "color": "#41c7d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_selection", "name": "sensor_selection", "type": "topic", "color": "#4189d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude", "name": "vehicle_attitude", "type": "topic", "color": "#415bd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs", "name": "actuator_outputs", "type": "topic", "color": "#9241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_sensor_gyro_fifo", "name": "sensor_gyro_fifo", "type": "topic", "color": "#d841c9", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_combined", "name": "sensor_combined", "type": "topic", "color": "#d87f41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_status", "name": "geofence_status", "type": "topic", "color": "#bad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_servos", "name": "actuator_servos", "type": "topic", "color": "#98d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream_ack", "name": "ulog_stream_ack", "type": "topic", "color": "#41d855", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gps_inject_data", "name": "gps_inject_data", "type": "topic", "color": "#41d86c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command", "name": "vehicle_command", "type": "topic", "color": "#41d89f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_controls", "name": "gimbal_controls", "type": "topic", "color": "#41d8cd", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_request", "name": "dataman_request", "type": "topic", "color": "#41d8d3", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_key_value", "name": "debug_key_value", "type": "topic", "color": "#4155d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_motors", "name": "actuator_motors", "type": "topic", "color": "#4241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor", "name": "distance_sensor", "type": "topic", "color": "#d84163", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_result", "name": "geofence_result", "type": "topic", "color": "#d84152", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_trigger", "name": "camera_trigger", "type": "topic", "color": "#d84141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_takeoff_status", "name": "takeoff_status", "type": "topic", "color": "#d85d41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flaps_setpoint", "name": "flaps_setpoint", "type": "topic", "color": "#53d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_failsafe_flags", "name": "failsafe_flags", "type": "topic", "color": "#41d889", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_satellite_info", "name": "satellite_info", "type": "topic", "color": "#41d8ab", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_status", "name": "vehicle_status", "type": "topic", "color": "#4178d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission_result", "name": "mission_result", "type": "topic", "color": "#416cd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_armed", "name": "actuator_armed", "type": "topic", "color": "#a341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_action_request", "name": "action_request", "type": "topic", "color": "#d841d4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_capture", "name": "camera_capture", "type": "topic", "color": "#d841be", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_battery_status", "name": "battery_status", "type": "topic", "color": "#d84185", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_irlock_report", "name": "irlock_report", "type": "topic", "color": "#d84641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_test", "name": "actuator_test", "type": "topic", "color": "#41d85b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_logger_status", "name": "logger_status", "type": "topic", "color": "#41d8b6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_safety_button", "name": "safety_button", "type": "topic", "color": "#41bcd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_home_position", "name": "home_position", "type": "topic", "color": "#417dd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_health_report", "name": "health_report", "type": "topic", "color": "#4161d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_status", "name": "camera_status", "type": "topic", "color": "#af41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_orbit_status", "name": "orbit_status", "type": "topic", "color": "#8cd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_px4io_status", "name": "px4io_status", "type": "topic", "color": "#419fd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_accel", "name": "sensor_accel", "type": "topic", "color": "#cb41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tune_control", "name": "tune_control", "type": "topic", "color": "#d641d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_system_power", "name": "system_power", "type": "topic", "color": "#d841b2", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear", "name": "landing_gear", "type": "topic", "color": "#d84190", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro", "name": "sensor_gyro", "type": "topic", "color": "#d86841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_led_control", "name": "led_control", "type": "topic", "color": "#d8b841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_value", "name": "debug_value", "type": "topic", "color": "#d8c341", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_array", "name": "debug_array", "type": "topic", "color": "#76d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_pps_capture", "name": "pps_capture", "type": "topic", "color": "#41d8bc", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_roi", "name": "vehicle_roi", "type": "topic", "color": "#4194d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tecs_status", "name": "tecs_status", "type": "topic", "color": "#7641d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu", "name": "vehicle_imu", "type": "topic", "color": "#9841d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_baro", "name": "sensor_baro", "type": "topic", "color": "#b441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream", "name": "ulog_stream", "type": "topic", "color": "#d841b8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_mag", "name": "sensor_mag", "type": "topic", "color": "#d87441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_esc_status", "name": "esc_status", "type": "topic", "color": "#d88a41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_vect", "name": "debug_vect", "type": "topic", "color": "#a3d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_adc_report", "name": "adc_report", "type": "topic", "color": "#70d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_uwb", "name": "sensor_uwb", "type": "topic", "color": "#d141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gps", "name": "sensor_gps", "type": "topic", "color": "#d84179", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/SensorGps.msg"}, {"id": "t_rtl_status", "name": "rtl_status", "type": "topic", "color": "#d8414c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_pwm_input", "name": "pwm_input", "type": "topic", "color": "#7b41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_input_rc", "name": "input_rc", "type": "topic", "color": "#b4d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed", "name": "airspeed", "type": "topic", "color": "#41d8d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource1d.msg"}, {"id": "t_mission", "name": "mission", "type": "topic", "color": "#48d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gripper", "name": "gripper", "type": "topic", "color": "#41d850", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_cpuload", "name": "cpuload", "type": "topic", "color": "#4150d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_event", "name": "event", "type": "topic", "color": "#41d8b0", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_wind", "name": "wind", "type": "topic", "color": "#41d8a5", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/Wind.msg"}, {"id": "t_rpm", "name": "rpm", "type": "topic", "color": "#4183d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}], "links": [{"source": "m_actuator_test", "target": "t_actuator_test", "color": "#41d85b", "style": "dashed"}, {"source": "m_led_control", "target": "t_led_control", "color": "#d8b841", "style": "dashed"}, {"source": "m_failure", "target": "t_vehicle_command", "color": "#41d89f", "style": "dashed"}, {"source": "m_tests", "target": "t_dataman_request", "color": "#41d8d3", "style": "dashed"}, {"source": "m_io_bypass_control", "target": "t_actuator_test", "color": "#41d85b", "style": "dashed"}, {"source": "m_io_bypass_control", "target": "t_actuator_outputs", "color": "#9241d8", "style": "dashed"}, {"source": "m_tune_control", "target": "t_tune_control", "color": "#d641d8", "style": "dashed"}, {"source": "m_pwm_input", "target": "t_pwm_input", "color": "#7b41d8", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command", "color": "#41d89f", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_rc_input", "target": "t_input_rc", "color": "#b4d841", "style": "dashed"}, {"source": "m_rpi_rc_in", "target": "t_input_rc", "color": "#b4d841", "style": "dashed"}, {"source": "m_batmon", "target": "t_battery_status", "color": "#d84185", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_motors", "color": "#4241d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_outputs", "color": "#9241d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_esc_status", "color": "#d88a41", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_armed", "color": "#a341d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_test", "color": "#41d85b", "style": "dashed"}, {"source": "m_dshot", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_servos", "color": "#98d841", "style": "dashed"}, {"source": "m_uwb_sr150", "target": "t_sensor_uwb", "color": "#d141d8", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_motors", "color": "#4241d8", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_outputs", "color": "#9241d8", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_esc_status", "color": "#d88a41", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_test", "color": "#41d85b", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_armed", "color": "#a341d8", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_servos", "color": "#98d841", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_motors", "color": "#4241d8", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_outputs", "color": "#9241d8", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_test", "color": "#41d85b", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_armed", "color": "#a341d8", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_servos", "color": "#98d841", "style": "dashed"}, {"source": "m_septentrio", "target": "t_gps_inject_data", "color": "#41d86c", "style": "dashed"}, {"source": "m_septentrio", "target": "t_sensor_gps", "color": "#d84179", "style": "dashed"}, {"source": "m_septentrio", "target": "t_satellite_info", "color": "#41d8ab", "style": "dashed"}, {"source": "m_sht3x", "target": "t_sensor_hygrometer", "color": "#41d8c7", "style": "dashed"}, {"source": "m_iridiumsbd", "target": "t_iridiumsbd_status", "color": "#414ad8", "style": "dashed"}, {"source": "m_hott_telemetry", "target": "t_esc_status", "color": "#d88a41", "style": "dashed"}, {"source": "m_ms4525do", "target": "t_differential_pressure", "color": "#4e41d8", "style": "dashed"}, {"source": "m_ms5525dso", "target": "t_differential_pressure", "color": "#4e41d8", "style": "dashed"}, {"source": "m_sdp3x", "target": "t_differential_pressure", "color": "#4e41d8", "style": "dashed"}, {"source": "m_asp5033", "target": "t_differential_pressure", "color": "#4e41d8", "style": "dashed"}, {"source": "m_auav", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_auav", "target": "t_differential_pressure", "color": "#4e41d8", "style": "dashed"}, {"source": "m_ms4515", "target": "t_differential_pressure", "color": "#4e41d8", "style": "dashed"}, {"source": "m_ets_airspeed", "target": "t_differential_pressure", "color": "#4e41d8", "style": "dashed"}, {"source": "m_sagetech_mxs", "target": "t_transponder_report", "color": "#5941d8", "style": "dashed"}, {"source": "m_tattu_can", "target": "t_battery_status", "color": "#d84185", "style": "dashed"}, {"source": "m_px4io", "target": "t_safety_button", "color": "#41bcd8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_motors", "color": "#4241d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_outputs", "color": "#9241d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_led_control", "color": "#d8b841", "style": "dashed"}, {"source": "m_px4io", "target": "t_input_rc", "color": "#b4d841", "style": "dashed"}, {"source": "m_px4io", "target": "t_tune_control", "color": "#d641d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_armed", "color": "#a341d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_test", "color": "#41d85b", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command", "color": "#41d89f", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_px4io_status", "color": "#419fd8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_servos", "color": "#98d841", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_icm20608g", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_icm20608g", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_icm20608g", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_mpu6500", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_mpu6500", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_mpu6500", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_icm42670p", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_icm42670p", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_icm42670p", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_icm45686", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_icm45686", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_icm45686", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_icm40609d", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_icm40609d", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_icm40609d", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_mpu9250_i2c", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_mpu9250_i2c", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_mpu9250_i2c", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_icm42605", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_icm42605", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_icm42605", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_icm20689", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_icm20689", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_icm20689", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_iam20680hp", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_iam20680hp", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_iam20680hp", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_iim42653", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_iim42653", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_iim42653", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_mpu6000", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_mpu6000", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_mpu6000", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_lsm303d", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_lsm303d", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_l3gd20", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_l3gd20", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_lsm9ds1", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_lsm9ds1", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_lsm9ds1", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_bmi085", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_bmi085", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_bmi085", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_bmi055", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_bmi055", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_bmi055", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_bmi270", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_bmi270", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_bmi270", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_bmi088_i2c", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_bmi088_i2c", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_bmi088_i2c", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_sch16t", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_sch16t", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_sch16t", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_adis16507", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_adis16507", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_adis16507", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_adis16477", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_adis16477", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_adis16477", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_adis16470", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_adis16470", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_adis16470", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_adis16497", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_adis16497", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_adis16497", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_motors", "color": "#4241d8", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_outputs", "color": "#9241d8", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_test", "color": "#41d85b", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_armed", "color": "#a341d8", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_servos", "color": "#98d841", "style": "dashed"}, {"source": "m_gps", "target": "t_satellite_info", "color": "#41d8ab", "style": "dashed"}, {"source": "m_gps", "target": "t_sensor_gps", "color": "#d84179", "style": "dashed"}, {"source": "m_gps", "target": "t_gps_inject_data", "color": "#41d86c", "style": "dashed"}, {"source": "m_rpm_simulator", "target": "t_rpm", "color": "#4183d8", "style": "dashed"}, {"source": "m_pcf8583", "target": "t_rpm", "color": "#4183d8", "style": "dashed"}, {"source": "m_cyphal", "target": "t_esc_status", "color": "#d88a41", "style": "dashed"}, {"source": "m_cyphal", "target": "t_battery_status", "color": "#d84185", "style": "dashed"}, {"source": "m_safety_button", "target": "t_vehicle_command", "color": "#41d89f", "style": "dashed"}, {"source": "m_safety_button", "target": "t_tune_control", "color": "#d641d8", "style": "dashed"}, {"source": "m_safety_button", "target": "t_safety_button", "color": "#41bcd8", "style": "dashed"}, {"source": "m_safety_button", "target": "t_led_control", "color": "#d8b841", "style": "dashed"}, {"source": "m_tone_alarm", "target": "t_tune_control", "color": "#d641d8", "style": "dashed"}, {"source": "m_ina238", "target": "t_battery_status", "color": "#d84185", "style": "dashed"}, {"source": "m_voxlpm", "target": "t_battery_status", "color": "#d84185", "style": "dashed"}, {"source": "m_ina220", "target": "t_battery_status", "color": "#d84185", "style": "dashed"}, {"source": "m_ina226", "target": "t_battery_status", "color": "#d84185", "style": "dashed"}, {"source": "m_ina228", "target": "t_battery_status", "color": "#d84185", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_camera_trigger", "color": "#d84141", "style": "dashed"}, {"source": "m_irlock", "target": "t_irlock_report", "color": "#d84641", "style": "dashed"}, {"source": "m_pps_capture", "target": "t_pps_capture", "color": "#41d8bc", "style": "dashed"}, {"source": "m_ak09916", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_ak8963", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_mmc5983ma", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_lsm303agr", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_iis2mdc", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_vcm1193l", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_ist8308", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_ist8310", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_bmm150", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_bmm350", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_qmc5883l", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_lsm9ds1_mag", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_hmc5883", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_rm3100", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_lis3mdl", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_ads1115", "target": "t_adc_report", "color": "#70d841", "style": "dashed"}, {"source": "m_board_adc", "target": "t_system_power", "color": "#d841b2", "style": "dashed"}, {"source": "m_board_adc", "target": "t_adc_report", "color": "#70d841", "style": "dashed"}, {"source": "m_batt_smbus", "target": "t_battery_status", "color": "#d84185", "style": "dashed"}, {"source": "m_uavcan", "target": "t_uavcan_parameter_value", "color": "#4144d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_uavcan", "target": "t_safety_button", "color": "#41bcd8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_motors", "color": "#4241d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_outputs", "color": "#9241d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_led_control", "color": "#d8b841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_tune_control", "color": "#d641d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_esc_status", "color": "#d88a41", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_armed", "color": "#a341d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_test", "color": "#41d85b", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command", "color": "#41d89f", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_open_drone_id_arm_status", "color": "#419ad8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_servos", "color": "#98d841", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_motors", "color": "#4241d8", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_outputs", "color": "#9241d8", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_battery_status", "color": "#d84185", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_esc_status", "color": "#d88a41", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_armed", "color": "#a341d8", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_test", "color": "#41d85b", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_servos", "color": "#98d841", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_motors", "color": "#4241d8", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_outputs", "color": "#9241d8", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_esc_status", "color": "#d88a41", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_test", "color": "#41d85b", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_armed", "color": "#a341d8", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_servos", "color": "#98d841", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command", "color": "#41d89f", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_camera_trigger", "color": "#d84141", "style": "dashed"}, {"source": "m_lightware_laser_serial", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_gy_us42", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_srf02", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_teraranger", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_lightware_laser_i2c", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_pga460", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_cm8jl65", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_vl53l0x", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_afbrs50", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_tfmini", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_ulanding_radar", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_ll40ls", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_ll40ls_pwm", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_vl53l1x", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_mb12xx", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_mappydot", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_leddar_one", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_lightware_sf45_serial", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_lightware_sf45_serial", "target": "t_obstacle_distance", "color": "#d87941", "style": "dashed"}, {"source": "m_lightware_sf45_serial", "target": "t_obstacle_distance_fused", "color": "#d89041", "style": "dashed"}, {"source": "m_lightware_sf45_serial", "target": "t_vehicle_command", "color": "#41d89f", "style": "dashed"}, {"source": "m_lightware_sf45_serial", "target": "t_vehicle_attitude", "color": "#415bd8", "style": "dashed"}, {"source": "m_srf05", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_tf02pro", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_motors", "color": "#4241d8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_outputs", "color": "#9241d8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_test", "color": "#41d85b", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_armed", "color": "#a341d8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_servos", "color": "#98d841", "style": "dashed"}, {"source": "m_paw3902", "target": "t_sensor_optical_flow", "color": "#d86e41", "style": "dashed"}, {"source": "m_paa3905", "target": "t_sensor_optical_flow", "color": "#d86e41", "style": "dashed"}, {"source": "m_px4flow", "target": "t_sensor_optical_flow", "color": "#d86e41", "style": "dashed"}, {"source": "m_pmw3901", "target": "t_sensor_optical_flow", "color": "#d86e41", "style": "dashed"}, {"source": "m_thoneflow", "target": "t_sensor_optical_flow", "color": "#d86e41", "style": "dashed"}, {"source": "m_vectornav", "target": "t_sensor_selection", "color": "#4189d8", "style": "dashed"}, {"source": "m_vectornav", "target": "t_estimator_status", "color": "#41c7d8", "style": "dashed"}, {"source": "m_vectornav", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_vectornav", "target": "t_sensor_gps", "color": "#d84179", "style": "dashed"}, {"source": "m_bmp581", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_ms5611", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_icp101xx", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_icp201xx", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_mpc2520", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_bmp280", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_dps310", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_tcbp001ta", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_spl06", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_spa06", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_lps22hb", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_lps33hw", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_bmp388", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_mpl3115a2", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_lps25h", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_ms5837", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_rpm_capture", "target": "t_rpm", "color": "#4183d8", "style": "dashed"}, {"source": "m_rpm_capture", "target": "t_pwm_input", "color": "#7b41d8", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_motors", "color": "#4241d8", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_outputs", "color": "#9241d8", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_input_rc", "color": "#b4d841", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_test", "color": "#41d85b", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_armed", "color": "#a341d8", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_servos", "color": "#98d841", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_actuator_motors", "color": "#4241d8", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_led_control", "color": "#d8b841", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_tune_control", "color": "#d641d8", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_actuator_armed", "color": "#a341d8", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_gps_inject_data", "color": "#41d86c", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_actuator_servos", "color": "#98d841", "style": "dashed"}, {"source": "m_crsf_rc", "target": "t_input_rc", "color": "#b4d841", "style": "dashed"}, {"source": "m_ghst_rc", "target": "t_input_rc", "color": "#b4d841", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_vehicle_command", "color": "#41d89f", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_input_rc", "color": "#b4d841", "style": "dashed"}, {"source": "m_sbus_rc", "target": "t_input_rc", "color": "#b4d841", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_steering_setpoint", "color": "#d841a1", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_velocity_setpoint", "color": "#c541d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_throttle_setpoint", "color": "#d86341", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_actuator_motors", "color": "#4241d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_position_controller_status", "color": "#41d8c1", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_rate_setpoint", "color": "#a9d841", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_position_setpoint", "color": "#d8a741", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_attitude_setpoint", "color": "#d841ad", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_actuator_servos", "color": "#98d841", "style": "dashed"}, {"source": "m_fw_lat_lon_control", "target": "t_tecs_status", "color": "#7641d8", "style": "dashed"}, {"source": "m_fw_lat_lon_control", "target": "t_flight_phase_estimation", "color": "#afd841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_sensor_selection", "color": "#4189d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_selector_status", "color": "#d88541", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_global_position", "color": "#d89641", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_odometry", "color": "#41d87d", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_attitude", "color": "#415bd8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status_flags", "color": "#d841a7", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_sensor_bias", "color": "#4841d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_wind", "color": "#41d8a5", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status", "color": "#41c7d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_local_position", "color": "#d84146", "style": "dashed"}, {"source": "m_uxrce_dds_client", "target": "t_vehicle_command", "color": "#41d89f", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_vehicle_command", "color": "#41d89f", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_gripper", "color": "#41d850", "style": "dashed"}, {"source": "m_landing_target_estimator", "target": "t_landing_target_pose", "color": "#4166d8", "style": "dashed"}, {"source": "m_fw_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#87d841", "style": "dashed"}, {"source": "m_land_detector", "target": "t_vehicle_land_detected", "color": "#c041d8", "style": "dashed"}, {"source": "m_mc_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#87d841", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_vehicle_rates_setpoint", "color": "#41d844", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_landing_gear_wheel", "color": "#d84168", "style": "dashed"}, {"source": "m_mc_att_control", "target": "t_vehicle_rates_setpoint", "color": "#41d844", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_spoilers_setpoint", "color": "#41d878", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#41d844", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_flaps_setpoint", "color": "#53d841", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_steering_setpoint", "color": "#d841a1", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_velocity_setpoint", "color": "#c541d8", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_throttle_setpoint", "color": "#d86341", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_actuator_motors", "color": "#4241d8", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_rate_setpoint", "color": "#a9d841", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_position_setpoint", "color": "#d8a741", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_attitude_setpoint", "color": "#d841ad", "style": "dashed"}, {"source": "m_camera_feedback", "target": "t_camera_capture", "color": "#d841be", "style": "dashed"}, {"source": "m_system_power_simulator", "target": "t_system_power", "color": "#d841b2", "style": "dashed"}, {"source": "m_sensor_agp_sim", "target": "t_aux_global_position", "color": "#41d872", "style": "dashed"}, {"source": "m_sensor_baro_sim", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_global_position_groundtruth", "color": "#418ed8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_angular_velocity_groundtruth", "color": "#7bd841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_local_position_groundtruth", "color": "#6ad841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_airspeed", "color": "#41d8d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_attitude_groundtruth", "color": "#4ed841", "style": "dashed"}, {"source": "m_battery_simulator", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_battery_simulator", "target": "t_battery_status", "color": "#d84185", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_motors", "color": "#4241d8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs", "color": "#9241d8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs_sim", "color": "#d8417f", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_test", "color": "#41d85b", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_armed", "color": "#a341d8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_servos", "color": "#98d841", "style": "dashed"}, {"source": "m_sensor_airspeed_sim", "target": "t_differential_pressure", "color": "#4e41d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_outputs", "color": "#9241d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_angular_velocity_groundtruth", "color": "#7bd841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_local_position_groundtruth", "color": "#6ad841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_armed", "color": "#a341d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_attitude_groundtruth", "color": "#4ed841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_global_position_groundtruth", "color": "#418ed8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_optical_flow", "color": "#d86e41", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_obstacle_distance", "color": "#d87941", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_esc_status", "color": "#d88a41", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_test", "color": "#41d85b", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_motors", "color": "#4241d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_differential_pressure", "color": "#4e41d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_gps", "color": "#d84179", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_gimbal_device_information", "color": "#5f41d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_gimbal_device_attitude_status", "color": "#41cdd8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_visual_odometry", "color": "#8141d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_servos", "color": "#98d841", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_angular_velocity_groundtruth", "color": "#7bd841", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_irlock_report", "color": "#d84641", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_local_position_groundtruth", "color": "#6ad841", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_attitude_groundtruth", "color": "#4ed841", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_optical_flow", "color": "#d86e41", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_global_position_groundtruth", "color": "#418ed8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_rpm", "color": "#4183d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_esc_status", "color": "#d88a41", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_mocap_odometry", "color": "#d89c41", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_differential_pressure", "color": "#4e41d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_input_rc", "color": "#b4d841", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_visual_odometry", "color": "#8141d8", "style": "dashed"}, {"source": "m_sensor_gps_sim", "target": "t_sensor_gps", "color": "#d84179", "style": "dashed"}, {"source": "m_sensor_mag_sim", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_navigator", "target": "t_position_setpoint_triplet", "color": "#8741d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_time_estimate", "color": "#8c41d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_roi", "color": "#4194d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission", "color": "#48d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_land_detected", "color": "#c041d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_navigator_status", "color": "#42d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_home_position", "color": "#417dd8", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission_result", "color": "#416cd8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_status", "color": "#4178d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_global_position", "color": "#d89641", "style": "dashed"}, {"source": "m_navigator", "target": "t_distance_sensor_mode_change_request", "color": "#d84174", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command", "color": "#41d89f", "style": "dashed"}, {"source": "m_navigator", "target": "t_transponder_report", "color": "#5941d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_status", "color": "#bad841", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_result", "color": "#d84152", "style": "dashed"}, {"source": "m_navigator", "target": "t_dataman_request", "color": "#41d8d3", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_status", "color": "#d8414c", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_send_event", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_send_event", "target": "t_tune_control", "color": "#d641d8", "style": "dashed"}, {"source": "m_send_event", "target": "t_led_control", "color": "#d8b841", "style": "dashed"}, {"source": "m_commander", "target": "t_failsafe_flags", "color": "#41d889", "style": "dashed"}, {"source": "m_commander", "target": "t_event", "color": "#41d8b0", "style": "dashed"}, {"source": "m_commander", "target": "t_led_control", "color": "#d8b841", "style": "dashed"}, {"source": "m_commander", "target": "t_power_button_state", "color": "#41d894", "style": "dashed"}, {"source": "m_commander", "target": "t_tune_control", "color": "#d641d8", "style": "dashed"}, {"source": "m_commander", "target": "t_home_position", "color": "#417dd8", "style": "dashed"}, {"source": "m_commander", "target": "t_register_ext_component_reply", "color": "#6a41d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_status", "color": "#4178d8", "style": "dashed"}, {"source": "m_commander", "target": "t_health_report", "color": "#4161d8", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_test", "color": "#41d85b", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_armed", "color": "#a341d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command", "color": "#41d89f", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_control_mode", "color": "#d1d841", "style": "dashed"}, {"source": "m_commander", "target": "t_failure_detector_status", "color": "#d8b241", "style": "dashed"}, {"source": "m_esc_battery", "target": "t_battery_status", "color": "#d84185", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_trajectory_setpoint", "color": "#65d841", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_landing_gear", "color": "#d84190", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_vehicle_constraints", "color": "#d84157", "style": "dashed"}, {"source": "m_manual_control", "target": "t_landing_gear", "color": "#d84190", "style": "dashed"}, {"source": "m_manual_control", "target": "t_action_request", "color": "#d841d4", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_status", "color": "#4178d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_switches", "color": "#5341d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_setpoint", "color": "#41abd8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_command", "color": "#41d89f", "style": "dashed"}, {"source": "m_uuv_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#41d88e", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#41d88e", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_thrust_setpoint", "color": "#5fd841", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_torque_setpoint", "color": "#41d861", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_position_controller_status", "color": "#41d8c1", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_actuator_controls_status_0", "color": "#ba41d8", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#41d844", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_control_allocator_status", "color": "#c5d841", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_motors", "color": "#4241d8", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos_trim", "color": "#d841cf", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos", "color": "#98d841", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_selection", "color": "#4189d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_combined", "color": "#d87f41", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu", "color": "#9841d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_differential_pressure", "color": "#4e41d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu_status", "color": "#41d866", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensors_status_imu", "color": "#d8416e", "style": "dashed"}, {"source": "m_sensors", "target": "t_airspeed", "color": "#41d8d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_orbit_status", "color": "#8cd841", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_longitudinal_setpoint", "color": "#d8415d", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_landing_gear", "color": "#d84190", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_figure_eight_status", "color": "#81d841", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_position_controller_landing_status", "color": "#41d84a", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_vehicle_local_position_setpoint", "color": "#41a5d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_lateral_control_configuration", "color": "#d841c3", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_longitudinal_control_configuration", "color": "#d8a141", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_lateral_setpoint", "color": "#d8ad41", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_launch_detection_status", "color": "#9dd841", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_spoilers_setpoint", "color": "#41d878", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_runway_control", "color": "#d85241", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_flaps_setpoint", "color": "#53d841", "style": "dashed"}, {"source": "m_airship_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#5fd841", "style": "dashed"}, {"source": "m_airship_att_control", "target": "t_vehicle_torque_setpoint", "color": "#41d861", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#5fd841", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_torque_setpoint", "color": "#41d861", "style": "dashed"}, {"source": "m_dataman", "target": "t_dataman_response", "color": "#92d841", "style": "dashed"}, {"source": "m_internal_combustion_engine_control", "target": "t_internal_combustion_engine_status", "color": "#41d89a", "style": "dashed"}, {"source": "m_internal_combustion_engine_control", "target": "t_internal_combustion_engine_control", "color": "#d84196", "style": "dashed"}, {"source": "m_load_mon", "target": "t_cpuload", "color": "#4150d8", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_global_position", "color": "#d89641", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_estimator_status", "color": "#41c7d8", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_odometry", "color": "#41d87d", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_local_position", "color": "#d84146", "style": "dashed"}, {"source": "m_mavlink", "target": "t_irlock_report", "color": "#d84641", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_array", "color": "#76d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_system", "color": "#9d41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_camera_status", "color": "#af41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_trajectory_setpoint", "color": "#65d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_baro", "color": "#b441d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_telemetry_status", "color": "#d84c41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_operator_id", "color": "#d85741", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mission", "color": "#48d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_rates_setpoint", "color": "#41d844", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_accel", "color": "#cb41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gyro", "color": "#d86841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_optical_flow", "color": "#d86e41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_mag", "color": "#d87441", "style": "dashed"}, {"source": "m_mavlink", "target": "t_obstacle_distance", "color": "#d87941", "style": "dashed"}, {"source": "m_mavlink", "target": "t_tune_control", "color": "#d641d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gyro_fifo", "color": "#d841c9", "style": "dashed"}, {"source": "m_mavlink", "target": "t_ulog_stream_ack", "color": "#41d855", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_global_position", "color": "#d89641", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_mocap_odometry", "color": "#d89c41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_landing_target_pose", "color": "#4166d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude", "color": "#415bd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_fw_virtual_attitude_setpoint", "color": "#41d883", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_key_value", "color": "#4155d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gps_inject_data", "color": "#41d86c", "style": "dashed"}, {"source": "m_mavlink", "target": "t_uavcan_parameter_request", "color": "#d8419c", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude_setpoint", "color": "#41d88e", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_value", "color": "#d8c341", "style": "dashed"}, {"source": "m_mavlink", "target": "t_differential_pressure", "color": "#4e41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_battery_status", "color": "#d84185", "style": "dashed"}, {"source": "m_mavlink", "target": "t_offboard_control_mode", "color": "#d8c941", "style": "dashed"}, {"source": "m_mavlink", "target": "t_rc_parameter_map", "color": "#d8cf41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_self_id", "color": "#d8d441", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gps", "color": "#d84179", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command", "color": "#41d89f", "style": "dashed"}, {"source": "m_mavlink", "target": "t_transponder_report", "color": "#5941d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_attitude", "color": "#cbd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_information", "color": "#5f41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_airspeed", "color": "#41d8d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_distance_sensor", "color": "#d84163", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_manual_control", "color": "#6541d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_event", "color": "#41d8b0", "style": "dashed"}, {"source": "m_mavlink", "target": "t_input_rc", "color": "#b4d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_esc_serial_passthru", "color": "#7041d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_dataman_request", "color": "#41d8d3", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_vect", "color": "#a3d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_attitude_status", "color": "#41cdd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mc_virtual_attitude_setpoint", "color": "#41c1d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_visual_odometry", "color": "#8141d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_local_position", "color": "#d84146", "style": "dashed"}, {"source": "m_battery_status", "target": "t_battery_status", "color": "#d84185", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_attitude_status", "color": "#41cdd8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_v1_command", "color": "#d8418a", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_set_attitude", "color": "#d8be41", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_status", "color": "#41b6d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_controls", "color": "#41d8cd", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_information", "color": "#a941d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command", "color": "#41d89f", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_mount_orientation", "color": "#59d841", "style": "dashed"}, {"source": "m_logger", "target": "t_ulog_stream", "color": "#d841b8", "style": "dashed"}, {"source": "m_logger", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_logger", "target": "t_logger_status", "color": "#41d8b6", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_tiltrotor_extra_controls", "color": "#c0d841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#5fd841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_attitude_setpoint", "color": "#41d88e", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vtol_vehicle_status", "color": "#41b0d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_torque_setpoint", "color": "#41d861", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_spoilers_setpoint", "color": "#41d878", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_flaps_setpoint", "color": "#53d841", "style": "dashed"}, {"source": "m_airspeed_selector", "target": "t_airspeed_validated", "color": "#4172d8", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command", "color": "#41d89f", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_sensor_correction", "color": "#d6d841", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command_ack", "color": "#41d3d8", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_led_control", "color": "#d8b841", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_takeoff_status", "color": "#d85d41", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#41d88e", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_constraints", "color": "#d84157", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#41a5d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_trajectory_setpoint", "color": "#65d841", "style": "dashed"}, {"source": "m_rc_update", "target": "t_manual_control_switches", "color": "#5341d8", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_steering_setpoint", "color": "#d841a1", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_velocity_setpoint", "color": "#c541d8", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_throttle_setpoint", "color": "#d86341", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_actuator_motors", "color": "#4241d8", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_rate_setpoint", "color": "#a9d841", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_position_setpoint", "color": "#d8a741", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_attitude_setpoint", "color": "#d841ad", "style": "dashed"}, {"source": "m_attitude_estimator_q", "target": "t_vehicle_attitude", "color": "#415bd8", "style": "dashed"}, {"source": "t_vehicle_status", "target": "m_i2c_launcher", "color": "#4178d8", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_microbench", "color": "#41d889", "style": "normal"}, {"source": "t_sensor_gyro_fifo", "target": "m_microbench", "color": "#d841c9", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_microbench", "color": "#d86841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_microbench", "color": "#d84146", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_failure", "color": "#41d3d8", "style": "normal"}, {"source": "t_input_rc", "target": "m_tests", "color": "#b4d841", "style": "normal"}, {"source": "t_dataman_response", "target": "m_tests", "color": "#92d841", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_io_bypass_control", "color": "#9241d8", "style": "normal"}, {"source": "t_adc_report", "target": "m_rc_input", "color": "#70d841", "style": "normal"}, {"source": "t_battery_status", "target": "m_rc_input", "color": "#d84185", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_rc_input", "color": "#4178d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_rc_input", "color": "#41d89f", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rc_input", "color": "#415bd8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_dshot", "color": "#4241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_dshot", "color": "#d84196", "style": "normal"}, {"source": "t_landing_gear", "target": "m_dshot", "color": "#d84190", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_dshot", "color": "#d841cf", "style": "normal"}, {"source": "t_gripper", "target": "m_dshot", "color": "#41d850", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_dshot", "color": "#a341d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_dshot", "color": "#41d8cd", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_dshot", "color": "#41abd8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_dshot", "color": "#41d85b", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dshot", "color": "#41d89f", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_dshot", "color": "#d84168", "style": "normal"}, {"source": "t_sensor_uwb", "target": "m_uwb_sr150", "color": "#d141d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_tap_esc", "color": "#4241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_tap_esc", "color": "#d84196", "style": "normal"}, {"source": "t_landing_gear", "target": "m_tap_esc", "color": "#d84190", "style": "normal"}, {"source": "t_led_control", "target": "m_tap_esc", "color": "#d8b841", "style": "normal"}, {"source": "t_tune_control", "target": "m_tap_esc", "color": "#d641d8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_tap_esc", "color": "#d841cf", "style": "normal"}, {"source": "t_gripper", "target": "m_tap_esc", "color": "#41d850", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_tap_esc", "color": "#a341d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_tap_esc", "color": "#41d8cd", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_tap_esc", "color": "#41abd8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_tap_esc", "color": "#41d85b", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_tap_esc", "color": "#41d89f", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_tap_esc", "color": "#d84168", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pca9685_pwm_out", "color": "#4241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_pca9685_pwm_out", "color": "#d84196", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pca9685_pwm_out", "color": "#d84190", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pca9685_pwm_out", "color": "#d841cf", "style": "normal"}, {"source": "t_gripper", "target": "m_pca9685_pwm_out", "color": "#41d850", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pca9685_pwm_out", "color": "#a341d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pca9685_pwm_out", "color": "#41d8cd", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pca9685_pwm_out", "color": "#41abd8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pca9685_pwm_out", "color": "#41d85b", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pca9685_pwm_out", "color": "#41d89f", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pca9685_pwm_out", "color": "#d84168", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_septentrio", "color": "#41d86c", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_roboclaw", "color": "#a341d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_bst", "color": "#415bd8", "style": "normal"}, {"source": "t_battery_status", "target": "m_bst", "color": "#d84185", "style": "normal"}, {"source": "t_battery_status", "target": "m_frsky_telemetry", "color": "#d84185", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_frsky_telemetry", "color": "#4178d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_frsky_telemetry", "color": "#d89641", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_frsky_telemetry", "color": "#d84146", "style": "normal"}, {"source": "t_home_position", "target": "m_hott_telemetry", "color": "#417dd8", "style": "normal"}, {"source": "t_battery_status", "target": "m_hott_telemetry", "color": "#d84185", "style": "normal"}, {"source": "t_esc_status", "target": "m_hott_telemetry", "color": "#d88a41", "style": "normal"}, {"source": "t_airspeed", "target": "m_hott_telemetry", "color": "#41d8d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_sagetech_mxs", "color": "#c041d8", "style": "normal"}, {"source": "t_transponder_report", "target": "m_sagetech_mxs", "color": "#5941d8", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_sagetech_mxs", "color": "#d84179", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_sagetech_mxs", "color": "#4178d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_px4io", "color": "#4241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_px4io", "color": "#d84196", "style": "normal"}, {"source": "t_landing_gear", "target": "m_px4io", "color": "#d84190", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_px4io", "color": "#d841cf", "style": "normal"}, {"source": "t_gripper", "target": "m_px4io", "color": "#41d850", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_px4io", "color": "#4178d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_px4io", "color": "#a341d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_px4io", "color": "#41d8cd", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_px4io", "color": "#41abd8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_px4io", "color": "#41d85b", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_px4io", "color": "#41d89f", "style": "normal"}, {"source": "t_px4io_status", "target": "m_px4io", "color": "#419fd8", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_px4io", "color": "#d84168", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_linux_pwm_out", "color": "#4241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_linux_pwm_out", "color": "#d84196", "style": "normal"}, {"source": "t_landing_gear", "target": "m_linux_pwm_out", "color": "#d84190", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_linux_pwm_out", "color": "#d841cf", "style": "normal"}, {"source": "t_gripper", "target": "m_linux_pwm_out", "color": "#41d850", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_linux_pwm_out", "color": "#a341d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_linux_pwm_out", "color": "#41d8cd", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_linux_pwm_out", "color": "#41abd8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_linux_pwm_out", "color": "#41d85b", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_linux_pwm_out", "color": "#41d89f", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_linux_pwm_out", "color": "#d84168", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_gps", "color": "#41d86c", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_cdcacm_autostart", "color": "#a341d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_cyphal", "color": "#41d85b", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_cyphal", "color": "#a341d8", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_cyphal", "color": "#d84179", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_safety_button", "color": "#a341d8", "style": "normal"}, {"source": "t_tune_control", "target": "m_tone_alarm", "color": "#d641d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pm_selector_auterion", "color": "#a341d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina238", "color": "#afd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina238", "color": "#4178d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_voxlpm", "color": "#afd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_voxlpm", "color": "#4178d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina220", "color": "#afd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina220", "color": "#4178d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina226", "color": "#afd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina226", "color": "#4178d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina228", "color": "#afd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina228", "color": "#4178d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_capture", "color": "#41d89f", "style": "normal"}, {"source": "t_pps_capture", "target": "m_camera_capture", "color": "#41d8bc", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_pps_capture", "color": "#d84179", "style": "normal"}, {"source": "t_input_rc", "target": "m_msp_osd", "color": "#b4d841", "style": "normal"}, {"source": "t_home_position", "target": "m_msp_osd", "color": "#417dd8", "style": "normal"}, {"source": "t_battery_status", "target": "m_msp_osd", "color": "#d84185", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_msp_osd", "color": "#4172d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_msp_osd", "color": "#4178d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_msp_osd", "color": "#d89641", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_msp_osd", "color": "#415bd8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_msp_osd", "color": "#d84146", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_atxxxx", "color": "#4178d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_atxxxx", "color": "#d84185", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_atxxxx", "color": "#d84146", "style": "normal"}, {"source": "t_adc_report", "target": "m_board_adc", "color": "#70d841", "style": "normal"}, {"source": "t_open_drone_id_system", "target": "m_uavcan", "color": "#9d41d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_uavcan", "color": "#a341d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uavcan", "color": "#41abd8", "style": "normal"}, {"source": "t_open_drone_id_operator_id", "target": "m_uavcan", "color": "#d85741", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_uavcan", "color": "#c041d8", "style": "normal"}, {"source": "t_tune_control", "target": "m_uavcan", "color": "#d641d8", "style": "normal"}, {"source": "t_home_position", "target": "m_uavcan", "color": "#417dd8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_uavcan", "color": "#d841cf", "style": "normal"}, {"source": "t_gripper", "target": "m_uavcan", "color": "#41d850", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_uavcan", "color": "#4178d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_uavcan", "color": "#41d85b", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_uavcan", "color": "#41d86c", "style": "normal"}, {"source": "t_uavcan_parameter_request", "target": "m_uavcan", "color": "#d8419c", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_uavcan", "color": "#4241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_uavcan", "color": "#d84196", "style": "normal"}, {"source": "t_led_control", "target": "m_uavcan", "color": "#d8b841", "style": "normal"}, {"source": "t_landing_gear", "target": "m_uavcan", "color": "#d84190", "style": "normal"}, {"source": "t_open_drone_id_self_id", "target": "m_uavcan", "color": "#d8d441", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_uavcan", "color": "#41d89f", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_uavcan", "color": "#d84168", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_uavcan", "color": "#41d8cd", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uavcan", "color": "#d84146", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_voxl_esc", "color": "#4241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_voxl_esc", "color": "#d84196", "style": "normal"}, {"source": "t_led_control", "target": "m_voxl_esc", "color": "#d8b841", "style": "normal"}, {"source": "t_landing_gear", "target": "m_voxl_esc", "color": "#d84190", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_voxl_esc", "color": "#d841cf", "style": "normal"}, {"source": "t_gripper", "target": "m_voxl_esc", "color": "#41d850", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_voxl_esc", "color": "#afd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_voxl_esc", "color": "#4178d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_voxl_esc", "color": "#41d85b", "style": "normal"}, {"source": "t_esc_serial_passthru", "target": "m_voxl_esc", "color": "#7041d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_voxl_esc", "color": "#41abd8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_voxl_esc", "color": "#a341d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_voxl_esc", "color": "#41d8cd", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_voxl_esc", "color": "#41d89f", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_voxl_esc", "color": "#d1d841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_voxl_esc", "color": "#d84168", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_vertiq_io", "color": "#4241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_vertiq_io", "color": "#d84196", "style": "normal"}, {"source": "t_landing_gear", "target": "m_vertiq_io", "color": "#d84190", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_vertiq_io", "color": "#d841cf", "style": "normal"}, {"source": "t_gripper", "target": "m_vertiq_io", "color": "#41d850", "style": "normal"}, {"source": "t_actuator_test", "target": "m_vertiq_io", "color": "#41d85b", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_vertiq_io", "color": "#a341d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_vertiq_io", "color": "#41d8cd", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_vertiq_io", "color": "#41abd8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_vertiq_io", "color": "#41d89f", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_vertiq_io", "color": "#d84168", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_trigger", "color": "#41d89f", "style": "normal"}, {"source": "t_pps_capture", "target": "m_camera_trigger", "color": "#41d8bc", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_camera_trigger", "color": "#d84146", "style": "normal"}, {"source": "t_distance_sensor_mode_change_request", "target": "m_lightware_laser_i2c", "color": "#d84174", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_lightware_laser_i2c", "color": "#4178d8", "style": "normal"}, {"source": "t_pwm_input", "target": "m_ll40ls_pwm", "color": "#7b41d8", "style": "normal"}, {"source": "t_obstacle_distance", "target": "m_lightware_sf45_serial", "color": "#d87941", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_lightware_sf45_serial", "color": "#d84163", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_lightware_sf45_serial", "color": "#415bd8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out", "color": "#4241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_pwm_out", "color": "#d84196", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out", "color": "#d84190", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out", "color": "#d841cf", "style": "normal"}, {"source": "t_gripper", "target": "m_pwm_out", "color": "#41d850", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out", "color": "#a341d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out", "color": "#41d8cd", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out", "color": "#41abd8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out", "color": "#41d85b", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out", "color": "#41d89f", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out", "color": "#d84168", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_heater", "color": "#cb41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_voxl2_io", "color": "#4241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_voxl2_io", "color": "#d84196", "style": "normal"}, {"source": "t_landing_gear", "target": "m_voxl2_io", "color": "#d84190", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_voxl2_io", "color": "#d841cf", "style": "normal"}, {"source": "t_gripper", "target": "m_voxl2_io", "color": "#41d850", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_voxl2_io", "color": "#a341d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_voxl2_io", "color": "#41d8cd", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_voxl2_io", "color": "#41abd8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_voxl2_io", "color": "#41d85b", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_voxl2_io", "color": "#41d89f", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_voxl2_io", "color": "#d84168", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_crsf_rc", "color": "#415bd8", "style": "normal"}, {"source": "t_battery_status", "target": "m_crsf_rc", "color": "#d84185", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_crsf_rc", "color": "#4178d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_ghst_rc", "color": "#d84185", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dsm_rc", "color": "#41d89f", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_dsm_rc", "color": "#4178d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_is31fl3195", "color": "#d8b841", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled", "color": "#d8b841", "style": "normal"}, {"source": "t_led_control", "target": "m_neopixel", "color": "#d8b841", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_ncp5623c", "color": "#d8b841", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_pwm", "color": "#d8b841", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_lp5562", "color": "#d8b841", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_template_module", "color": "#d87f41", "style": "normal"}, {"source": "t_rover_steering_setpoint", "target": "m_rover_ackermann", "color": "#d841a1", "style": "normal"}, {"source": "t_rover_velocity_setpoint", "target": "m_rover_ackermann", "color": "#c541d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_rover_ackermann", "color": "#4241d8", "style": "normal"}, {"source": "t_rover_throttle_setpoint", "target": "m_rover_ackermann", "color": "#d86341", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_ackermann", "color": "#8741d8", "style": "normal"}, {"source": "t_actuator_servos", "target": "m_rover_ackermann", "color": "#98d841", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_rover_ackermann", "color": "#41d8c1", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_rover_ackermann", "color": "#d8c941", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_ackermann", "color": "#41abd8", "style": "normal"}, {"source": "t_rover_rate_setpoint", "target": "m_rover_ackermann", "color": "#a9d841", "style": "normal"}, {"source": "t_rover_position_setpoint", "target": "m_rover_ackermann", "color": "#d8a741", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_ackermann", "color": "#d1d841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_ackermann", "color": "#65d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_ackermann", "color": "#415bd8", "style": "normal"}, {"source": "t_rover_attitude_setpoint", "target": "m_rover_ackermann", "color": "#d841ad", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_ackermann", "color": "#d84146", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_lat_lon_control", "color": "#c041d8", "style": "normal"}, {"source": "t_wind", "target": "m_fw_lat_lon_control", "color": "#41d8a5", "style": "normal"}, {"source": "t_fixed_wing_longitudinal_setpoint", "target": "m_fw_lat_lon_control", "color": "#d8415d", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_lat_lon_control", "color": "#4172d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_lat_lon_control", "color": "#4178d8", "style": "normal"}, {"source": "t_longitudinal_control_configuration", "target": "m_fw_lat_lon_control", "color": "#d8a141", "style": "normal"}, {"source": "t_lateral_control_configuration", "target": "m_fw_lat_lon_control", "color": "#d841c3", "style": "normal"}, {"source": "t_fixed_wing_lateral_setpoint", "target": "m_fw_lat_lon_control", "color": "#d8ad41", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_lat_lon_control", "color": "#d1d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_lat_lon_control", "color": "#415bd8", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_fw_lat_lon_control", "color": "#53d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_lat_lon_control", "color": "#d84146", "style": "normal"}, {"source": "t_airspeed", "target": "m_ekf2", "color": "#41d8d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_ekf2", "color": "#c041d8", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_ekf2", "color": "#d84163", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_ekf2", "color": "#9dd841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_ekf2", "color": "#4189d8", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_ekf2", "color": "#d87f41", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_ekf2", "color": "#9841d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ekf2", "color": "#4178d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_ekf2", "color": "#4172d8", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_ekf2", "color": "#8141d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_ekf2", "color": "#41d89f", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_ekf2", "color": "#d8416e", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_ekf2", "color": "#4166d8", "style": "normal"}, {"source": "t_aux_global_position", "target": "m_ekf2", "color": "#41d872", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_uxrce_dds_client", "color": "#41d3d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_payload_deliverer", "color": "#41d89f", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_landing_target_estimator", "color": "#415bd8", "style": "normal"}, {"source": "t_irlock_report", "target": "m_landing_target_estimator", "color": "#d84641", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_landing_target_estimator", "color": "#d84146", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_autotune_attitude_control", "color": "#41abd8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_autotune_attitude_control", "color": "#4178d8", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_land_detector", "color": "#d85d41", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_land_detector", "color": "#8741d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_land_detector", "color": "#d1d841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_land_detector", "color": "#4189d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_land_detector", "color": "#4178d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_land_detector", "color": "#4172d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_land_detector", "color": "#a341d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_land_detector", "color": "#d89641", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_land_detector", "color": "#41d866", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_land_detector", "color": "#9dd841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_land_detector", "color": "#65d841", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_land_detector", "color": "#5fd841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_land_detector", "color": "#d84146", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_gyro_calibration", "color": "#d6d841", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_gyro_calibration", "color": "#cb41d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_calibration", "color": "#d86841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_gyro_calibration", "color": "#4178d8", "style": "normal"}, {"source": "t_actuator_controls_status_0", "target": "m_mc_autotune_attitude_control", "color": "#ba41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_autotune_attitude_control", "color": "#4178d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#41abd8", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#41d861", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_att_control", "color": "#c041d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_fw_att_control", "color": "#41d88e", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_fw_att_control", "color": "#87d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_att_control", "color": "#4178d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_att_control", "color": "#4172d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_att_control", "color": "#41abd8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_att_control", "color": "#d1d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_att_control", "color": "#415bd8", "style": "normal"}, {"source": "t_fixed_wing_runway_control", "target": "m_fw_att_control", "color": "#d85241", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_att_control", "color": "#d84146", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_att_control", "color": "#c041d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mc_att_control", "color": "#41d88e", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mc_att_control", "color": "#87d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_att_control", "color": "#4178d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_att_control", "color": "#41abd8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_att_control", "color": "#d1d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mc_att_control", "color": "#415bd8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_att_control", "color": "#d84146", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_fw_rate_control", "color": "#c5d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_rate_control", "color": "#c041d8", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_fw_rate_control", "color": "#41d844", "style": "normal"}, {"source": "t_battery_status", "target": "m_fw_rate_control", "color": "#d84185", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_rate_control", "color": "#4178d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_rate_control", "color": "#4172d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_rate_control", "color": "#41abd8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_rate_control", "color": "#d1d841", "style": "normal"}, {"source": "t_rover_steering_setpoint", "target": "m_rover_mecanum", "color": "#d841a1", "style": "normal"}, {"source": "t_rover_velocity_setpoint", "target": "m_rover_mecanum", "color": "#c541d8", "style": "normal"}, {"source": "t_rover_throttle_setpoint", "target": "m_rover_mecanum", "color": "#d86341", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_rover_mecanum", "color": "#4241d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_mecanum", "color": "#8741d8", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_rover_mecanum", "color": "#d8c941", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_mecanum", "color": "#41abd8", "style": "normal"}, {"source": "t_rover_rate_setpoint", "target": "m_rover_mecanum", "color": "#a9d841", "style": "normal"}, {"source": "t_rover_position_setpoint", "target": "m_rover_mecanum", "color": "#d8a741", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_mecanum", "color": "#d1d841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_mecanum", "color": "#65d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_mecanum", "color": "#415bd8", "style": "normal"}, {"source": "t_rover_attitude_setpoint", "target": "m_rover_mecanum", "color": "#d841ad", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_mecanum", "color": "#d84146", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_camera_feedback", "color": "#41cdd8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_camera_feedback", "color": "#d89641", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_camera_feedback", "color": "#415bd8", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_camera_feedback", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_agp_sim", "color": "#418ed8", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_baro_sim", "color": "#418ed8", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_simulator_sih", "color": "#9241d8", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_simulator_sih", "color": "#d8417f", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_battery_simulator", "color": "#41d89f", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_battery_simulator", "color": "#afd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_simulator", "color": "#4178d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out_sim", "color": "#4241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_pwm_out_sim", "color": "#d84196", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out_sim", "color": "#d84190", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out_sim", "color": "#d841cf", "style": "normal"}, {"source": "t_gripper", "target": "m_pwm_out_sim", "color": "#41d850", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out_sim", "color": "#a341d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out_sim", "color": "#41d8cd", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out_sim", "color": "#41abd8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out_sim", "color": "#41d85b", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out_sim", "color": "#41d89f", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out_sim", "color": "#d84168", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_sensor_airspeed_sim", "color": "#6ad841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_sensor_airspeed_sim", "color": "#415bd8", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_airspeed_sim", "color": "#418ed8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_gz_bridge", "color": "#4241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_gz_bridge", "color": "#d84196", "style": "normal"}, {"source": "t_landing_gear", "target": "m_gz_bridge", "color": "#d84190", "style": "normal"}, {"source": "t_gimbal_device_set_attitude", "target": "m_gz_bridge", "color": "#d8be41", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_gz_bridge", "color": "#d841cf", "style": "normal"}, {"source": "t_gripper", "target": "m_gz_bridge", "color": "#41d850", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_gz_bridge", "color": "#a341d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_gz_bridge", "color": "#41d8cd", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gz_bridge", "color": "#41abd8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_gz_bridge", "color": "#41d85b", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gz_bridge", "color": "#41d89f", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_gz_bridge", "color": "#d84168", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_simulator_mavlink", "color": "#9241d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_simulator_mavlink", "color": "#d84185", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_simulator_mavlink", "color": "#d8417f", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_simulator_mavlink", "color": "#4178d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_simulator_mavlink", "color": "#41d89f", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#6ad841", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#418ed8", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_mag_sim", "color": "#418ed8", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_sensor_mag_sim", "color": "#4ed841", "style": "normal"}, {"source": "t_mission", "target": "m_navigator", "color": "#48d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_navigator", "color": "#c041d8", "style": "normal"}, {"source": "t_wind", "target": "m_navigator", "color": "#41d8a5", "style": "normal"}, {"source": "t_geofence_status", "target": "m_navigator", "color": "#bad841", "style": "normal"}, {"source": "t_dataman_response", "target": "m_navigator", "color": "#92d841", "style": "normal"}, {"source": "t_rtl_status", "target": "m_navigator", "color": "#d8414c", "style": "normal"}, {"source": "t_home_position", "target": "m_navigator", "color": "#417dd8", "style": "normal"}, {"source": "t_position_controller_landing_status", "target": "m_navigator", "color": "#41d84a", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_navigator", "color": "#41d8c1", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_navigator", "color": "#4178d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_navigator", "color": "#d89641", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_navigator", "color": "#41d89f", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_navigator", "color": "#4166d8", "style": "normal"}, {"source": "t_transponder_report", "target": "m_navigator", "color": "#5941d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_navigator", "color": "#d84146", "style": "normal"}, {"source": "t_cpuload", "target": "m_send_event", "color": "#4150d8", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_send_event", "color": "#41d889", "style": "normal"}, {"source": "t_battery_status", "target": "m_send_event", "color": "#d84185", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_send_event", "color": "#4178d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_send_event", "color": "#41d89f", "style": "normal"}, {"source": "t_safety_button", "target": "m_commander", "color": "#41bcd8", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_commander", "color": "#8c41d8", "style": "normal"}, {"source": "t_vtol_vehicle_status", "target": "m_commander", "color": "#41b0d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_commander", "color": "#a341d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_commander", "color": "#41abd8", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_commander", "color": "#b441d8", "style": "normal"}, {"source": "t_telemetry_status", "target": "m_commander", "color": "#d84c41", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_commander", "color": "#c041d8", "style": "normal"}, {"source": "t_navigator_status", "target": "m_commander", "color": "#42d841", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_commander", "color": "#cb41d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_commander", "color": "#d86841", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_commander", "color": "#d87441", "style": "normal"}, {"source": "t_action_request", "target": "m_commander", "color": "#d841d4", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_commander", "color": "#4189d8", "style": "normal"}, {"source": "t_home_position", "target": "m_commander", "color": "#417dd8", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_commander", "color": "#d88541", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_commander", "color": "#4178d8", "style": "normal"}, {"source": "t_mission_result", "target": "m_commander", "color": "#416cd8", "style": "normal"}, {"source": "t_esc_status", "target": "m_commander", "color": "#d88a41", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_commander", "color": "#4172d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_commander", "color": "#d89641", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_commander", "color": "#41d866", "style": "normal"}, {"source": "t_system_power", "target": "m_commander", "color": "#d841b2", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_commander", "color": "#415bd8", "style": "normal"}, {"source": "t_estimator_status_flags", "target": "m_commander", "color": "#d841a7", "style": "normal"}, {"source": "t_cpuload", "target": "m_commander", "color": "#4150d8", "style": "normal"}, {"source": "t_iridiumsbd_status", "target": "m_commander", "color": "#414ad8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_commander", "color": "#4241d8", "style": "normal"}, {"source": "t_power_button_state", "target": "m_commander", "color": "#41d894", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_commander", "color": "#4841d8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_commander", "color": "#4e41d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_commander", "color": "#d84185", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_commander", "color": "#d8c941", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_commander", "color": "#5341d8", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_commander", "color": "#d84179", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_commander", "color": "#41d89f", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_commander", "color": "#d6d841", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_commander", "color": "#d8416e", "style": "normal"}, {"source": "t_wind", "target": "m_commander", "color": "#41d8a5", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_commander", "color": "#d84163", "style": "normal"}, {"source": "t_event", "target": "m_commander", "color": "#41d8b0", "style": "normal"}, {"source": "t_geofence_result", "target": "m_commander", "color": "#d84152", "style": "normal"}, {"source": "t_logger_status", "target": "m_commander", "color": "#41d8b6", "style": "normal"}, {"source": "t_estimator_status", "target": "m_commander", "color": "#41c7d8", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_commander", "color": "#41d3d8", "style": "normal"}, {"source": "t_pwm_input", "target": "m_commander", "color": "#7b41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_commander", "color": "#d84146", "style": "normal"}, {"source": "t_esc_status", "target": "m_esc_battery", "color": "#d88a41", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_esc_battery", "color": "#afd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_esc_battery", "color": "#4178d8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_gyro_fft", "color": "#4189d8", "style": "normal"}, {"source": "t_sensor_gyro_fifo", "target": "m_gyro_fft", "color": "#d841c9", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_fft", "color": "#d86841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_gyro_fft", "color": "#41d866", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_flight_mode_manager", "color": "#d85d41", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_flight_mode_manager", "color": "#c041d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_flight_mode_manager", "color": "#41d88e", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_flight_mode_manager", "color": "#4178d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_flight_mode_manager", "color": "#41d89f", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_flight_mode_manager", "color": "#d1d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_flight_mode_manager", "color": "#d84146", "style": "normal"}, {"source": "t_action_request", "target": "m_manual_control", "color": "#d841d4", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_manual_control", "color": "#5341d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_manual_control", "color": "#41abd8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_manual_control", "color": "#4178d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_pos_control", "color": "#d1d841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_uuv_pos_control", "color": "#65d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_pos_control", "color": "#415bd8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uuv_pos_control", "color": "#d84146", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_pos_control", "color": "#8741d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_rover_pos_control", "color": "#41d88e", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_rover_pos_control", "color": "#d89641", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_pos_control", "color": "#41abd8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_pos_control", "color": "#d1d841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_pos_control", "color": "#65d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_pos_control", "color": "#415bd8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_pos_control", "color": "#d84146", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_mc_rate_control", "color": "#c5d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_rate_control", "color": "#c041d8", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mc_rate_control", "color": "#41d844", "style": "normal"}, {"source": "t_battery_status", "target": "m_mc_rate_control", "color": "#d84185", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_rate_control", "color": "#4178d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_rate_control", "color": "#41abd8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_rate_control", "color": "#d1d841", "style": "normal"}, {"source": "t_tiltrotor_extra_controls", "target": "m_control_allocator", "color": "#c0d841", "style": "normal"}, {"source": "t_rpm", "target": "m_control_allocator", "color": "#4183d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_control_allocator", "color": "#4178d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_control_allocator", "color": "#5341d8", "style": "normal"}, {"source": "t_spoilers_setpoint", "target": "m_control_allocator", "color": "#41d878", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_control_allocator", "color": "#41d861", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_control_allocator", "color": "#d1d841", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_control_allocator", "color": "#53d841", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_control_allocator", "color": "#5fd841", "style": "normal"}, {"source": "t_failure_detector_status", "target": "m_control_allocator", "color": "#d8b241", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_sensors", "color": "#cb41d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_sensors", "color": "#d86841", "style": "normal"}, {"source": "t_sensor_optical_flow", "target": "m_sensors", "color": "#d86e41", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_sensors", "color": "#d87441", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_sensors", "color": "#4189d8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_sensors", "color": "#4841d8", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_sensors", "color": "#9841d8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_sensors", "color": "#4e41d8", "style": "normal"}, {"source": "t_adc_report", "target": "m_sensors", "color": "#70d841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_sensors", "color": "#41d866", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_sensors", "color": "#d6d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_sensors", "color": "#d1d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_mode_manager", "color": "#c041d8", "style": "normal"}, {"source": "t_wind", "target": "m_fw_mode_manager", "color": "#41d8a5", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_fw_mode_manager", "color": "#8741d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_mode_manager", "color": "#4172d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_mode_manager", "color": "#4178d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_fw_mode_manager", "color": "#d89641", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_mode_manager", "color": "#41abd8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_fw_mode_manager", "color": "#41d89f", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_mode_manager", "color": "#d1d841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_fw_mode_manager", "color": "#65d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_mode_manager", "color": "#415bd8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_mode_manager", "color": "#d84146", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_airship_att_control", "color": "#41abd8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airship_att_control", "color": "#4178d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_uuv_att_control", "color": "#41d88e", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_uuv_att_control", "color": "#41d844", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uuv_att_control", "color": "#41abd8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_att_control", "color": "#d1d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_att_control", "color": "#415bd8", "style": "normal"}, {"source": "t_dataman_request", "target": "m_dataman", "color": "#41d8d3", "style": "normal"}, {"source": "t_rpm", "target": "m_internal_combustion_engine_control", "color": "#4183d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_internal_combustion_engine_control", "color": "#4241d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_internal_combustion_engine_control", "color": "#41abd8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_internal_combustion_engine_control", "color": "#4178d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_local_position_estimator", "color": "#c041d8", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_local_position_estimator", "color": "#d84163", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_local_position_estimator", "color": "#d87f41", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_local_position_estimator", "color": "#a341d8", "style": "normal"}, {"source": "t_vehicle_mocap_odometry", "target": "m_local_position_estimator", "color": "#d89c41", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_local_position_estimator", "color": "#41d89f", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_local_position_estimator", "color": "#4166d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_local_position_estimator", "color": "#415bd8", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_local_position_estimator", "color": "#8141d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_local_position_estimator", "color": "#d84146", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_mavlink", "color": "#d84141", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mavlink", "color": "#d87441", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_mavlink", "color": "#d88541", "style": "normal"}, {"source": "t_esc_status", "target": "m_mavlink", "color": "#d88a41", "style": "normal"}, {"source": "t_obstacle_distance_fused", "target": "m_mavlink", "color": "#d89041", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_mavlink", "color": "#d89641", "style": "normal"}, {"source": "t_gimbal_device_set_attitude", "target": "m_mavlink", "color": "#d8be41", "style": "normal"}, {"source": "t_debug_value", "target": "m_mavlink", "color": "#d8c341", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_mavlink", "color": "#d6d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mavlink", "color": "#d1d841", "style": "normal"}, {"source": "t_input_rc", "target": "m_mavlink", "color": "#b4d841", "style": "normal"}, {"source": "t_debug_vect", "target": "m_mavlink", "color": "#a3d841", "style": "normal"}, {"source": "t_dataman_response", "target": "m_mavlink", "color": "#92d841", "style": "normal"}, {"source": "t_orbit_status", "target": "m_mavlink", "color": "#8cd841", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mavlink", "color": "#87d841", "style": "normal"}, {"source": "t_figure_eight_status", "target": "m_mavlink", "color": "#81d841", "style": "normal"}, {"source": "t_vehicle_angular_velocity_groundtruth", "target": "m_mavlink", "color": "#7bd841", "style": "normal"}, {"source": "t_debug_array", "target": "m_mavlink", "color": "#76d841", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_mavlink", "color": "#6ad841", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_mavlink", "color": "#5fd841", "style": "normal"}, {"source": "t_mount_orientation", "target": "m_mavlink", "color": "#59d841", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_mavlink", "color": "#4ed841", "style": "normal"}, {"source": "t_mission", "target": "m_mavlink", "color": "#48d841", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mavlink", "color": "#41d844", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_mavlink", "color": "#41d866", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_mavlink", "color": "#41d86c", "style": "normal"}, {"source": "t_vehicle_odometry", "target": "m_mavlink", "color": "#41d87d", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mavlink", "color": "#41d88e", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_mavlink", "color": "#41d889", "style": "normal"}, {"source": "t_internal_combustion_engine_status", "target": "m_mavlink", "color": "#41d89a", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_mavlink", "color": "#41d89f", "style": "normal"}, {"source": "t_wind", "target": "m_mavlink", "color": "#41d8a5", "style": "normal"}, {"source": "t_satellite_info", "target": "m_mavlink", "color": "#41d8ab", "style": "normal"}, {"source": "t_event", "target": "m_mavlink", "color": "#41d8b0", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_mavlink", "color": "#41d8c1", "style": "normal"}, {"source": "t_sensor_hygrometer", "target": "m_mavlink", "color": "#41d8c7", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_mavlink", "color": "#41cdd8", "style": "normal"}, {"source": "t_airspeed", "target": "m_mavlink", "color": "#41d8d8", "style": "normal"}, {"source": "t_estimator_status", "target": "m_mavlink", "color": "#41c7d8", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_mavlink", "color": "#41d3d8", "style": "normal"}, {"source": "t_gimbal_manager_status", "target": "m_mavlink", "color": "#41b6d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mavlink", "color": "#41abd8", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_mavlink", "color": "#41a5d8", "style": "normal"}, {"source": "t_open_drone_id_arm_status", "target": "m_mavlink", "color": "#419ad8", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_mavlink", "color": "#418ed8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_mavlink", "color": "#4189d8", "style": "normal"}, {"source": "t_rpm", "target": "m_mavlink", "color": "#4183d8", "style": "normal"}, {"source": "t_home_position", "target": "m_mavlink", "color": "#417dd8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mavlink", "color": "#4178d8", "style": "normal"}, {"source": "t_mission_result", "target": "m_mavlink", "color": "#416cd8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_mavlink", "color": "#4172d8", "style": "normal"}, {"source": "t_health_report", "target": "m_mavlink", "color": "#4161d8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_mavlink", "color": "#4166d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mavlink", "color": "#415bd8", "style": "normal"}, {"source": "t_debug_key_value", "target": "m_mavlink", "color": "#4155d8", "style": "normal"}, {"source": "t_cpuload", "target": "m_mavlink", "color": "#4150d8", "style": "normal"}, {"source": "t_uavcan_parameter_value", "target": "m_mavlink", "color": "#4144d8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_mavlink", "color": "#4841d8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_mavlink", "color": "#4e41d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_mavlink", "color": "#5341d8", "style": "normal"}, {"source": "t_transponder_report", "target": "m_mavlink", "color": "#5941d8", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_mavlink", "color": "#5f41d8", "style": "normal"}, {"source": "t_register_ext_component_reply", "target": "m_mavlink", "color": "#6a41d8", "style": "normal"}, {"source": "t_tecs_status", "target": "m_mavlink", "color": "#7641d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_mavlink", "color": "#8741d8", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_mavlink", "color": "#8c41d8", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_mavlink", "color": "#9241d8", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_mavlink", "color": "#9841d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_mavlink", "color": "#a341d8", "style": "normal"}, {"source": "t_gimbal_manager_information", "target": "m_mavlink", "color": "#a941d8", "style": "normal"}, {"source": "t_camera_status", "target": "m_mavlink", "color": "#af41d8", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_mavlink", "color": "#b441d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mavlink", "color": "#c041d8", "style": "normal"}, {"source": "t_camera_capture", "target": "m_mavlink", "color": "#d841be", "style": "normal"}, {"source": "t_ulog_stream", "target": "m_mavlink", "color": "#d841b8", "style": "normal"}, {"source": "t_gimbal_v1_command", "target": "m_mavlink", "color": "#d8418a", "style": "normal"}, {"source": "t_battery_status", "target": "m_mavlink", "color": "#d84185", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_mavlink", "color": "#d8417f", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_mavlink", "color": "#d84179", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_mavlink", "color": "#d84163", "style": "normal"}, {"source": "t_geofence_result", "target": "m_mavlink", "color": "#d84152", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mavlink", "color": "#d84146", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_battery_status", "color": "#afd841", "style": "normal"}, {"source": "t_adc_report", "target": "m_battery_status", "color": "#70d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_status", "color": "#4178d8", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_gimbal", "color": "#5f41d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_gimbal", "color": "#c041d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_gimbal", "color": "#8741d8", "style": "normal"}, {"source": "t_gimbal_manager_set_manual_control", "target": "m_gimbal", "color": "#6541d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gimbal", "color": "#41d89f", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_gimbal", "color": "#d89641", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gimbal", "color": "#41abd8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_gimbal", "color": "#41cdd8", "style": "normal"}, {"source": "t_gimbal_manager_set_attitude", "target": "m_gimbal", "color": "#cbd841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_gimbal", "color": "#415bd8", "style": "normal"}, {"source": "t_vehicle_roi", "target": "m_gimbal", "color": "#4194d8", "style": "normal"}, {"source": "t_ulog_stream_ack", "target": "m_logger", "color": "#41d855", "style": "normal"}, {"source": "t_battery_status", "target": "m_logger", "color": "#d84185", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_logger", "color": "#4178d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_logger", "color": "#41abd8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_logger", "color": "#41d89f", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_vtol_att_control", "color": "#8741d8", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_vtol_att_control", "color": "#41a5d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_vtol_att_control", "color": "#c041d8", "style": "normal"}, {"source": "t_action_request", "target": "m_vtol_att_control", "color": "#d841d4", "style": "normal"}, {"source": "t_home_position", "target": "m_vtol_att_control", "color": "#417dd8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_vtol_att_control", "color": "#4172d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_vtol_att_control", "color": "#4178d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_vtol_att_control", "color": "#415bd8", "style": "normal"}, {"source": "t_fw_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#41d883", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_vtol_att_control", "color": "#41d89f", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_vtol_att_control", "color": "#d1d841", "style": "normal"}, {"source": "t_tecs_status", "target": "m_vtol_att_control", "color": "#7641d8", "style": "normal"}, {"source": "t_mc_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#41c1d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_vtol_att_control", "color": "#d84146", "style": "normal"}, {"source": "t_airspeed", "target": "m_airspeed_selector", "color": "#41d8d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_airspeed_selector", "color": "#c041d8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_airspeed_selector", "color": "#5fd841", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_airspeed_selector", "color": "#d88541", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_airspeed_selector", "color": "#afd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airspeed_selector", "color": "#4178d8", "style": "normal"}, {"source": "t_tecs_status", "target": "m_airspeed_selector", "color": "#7641d8", "style": "normal"}, {"source": "t_estimator_status", "target": "m_airspeed_selector", "color": "#41c7d8", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_airspeed_selector", "color": "#9dd841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_airspeed_selector", "color": "#415bd8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_airspeed_selector", "color": "#d84146", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_temperature_compensation", "color": "#cb41d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_temperature_compensation", "color": "#d86841", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_temperature_compensation", "color": "#d87441", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_temperature_compensation", "color": "#41d89f", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_temperature_compensation", "color": "#b441d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_pos_control", "color": "#c041d8", "style": "normal"}, {"source": "t_vehicle_constraints", "target": "m_mc_pos_control", "color": "#d84157", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_pos_control", "color": "#d1d841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_mc_pos_control", "color": "#65d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_pos_control", "color": "#d84146", "style": "normal"}, {"source": "t_input_rc", "target": "m_rc_update", "color": "#b4d841", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_rc_update", "color": "#5341d8", "style": "normal"}, {"source": "t_rc_parameter_map", "target": "m_rc_update", "color": "#d8cf41", "style": "normal"}, {"source": "t_rover_steering_setpoint", "target": "m_rover_differential", "color": "#d841a1", "style": "normal"}, {"source": "t_rover_velocity_setpoint", "target": "m_rover_differential", "color": "#c541d8", "style": "normal"}, {"source": "t_rover_throttle_setpoint", "target": "m_rover_differential", "color": "#d86341", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_rover_differential", "color": "#4241d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_differential", "color": "#8741d8", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_rover_differential", "color": "#d8c941", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_differential", "color": "#41abd8", "style": "normal"}, {"source": "t_rover_rate_setpoint", "target": "m_rover_differential", "color": "#a9d841", "style": "normal"}, {"source": "t_rover_position_setpoint", "target": "m_rover_differential", "color": "#d8a741", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_differential", "color": "#d1d841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_differential", "color": "#65d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_differential", "color": "#415bd8", "style": "normal"}, {"source": "t_rover_attitude_setpoint", "target": "m_rover_differential", "color": "#d841ad", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_differential", "color": "#d84146", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_attitude_estimator_q", "color": "#d87f41", "style": "normal"}, {"source": "t_vehicle_mocap_odometry", "target": "m_attitude_estimator_q", "color": "#d89c41", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_attitude_estimator_q", "color": "#415bd8", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_attitude_estimator_q", "color": "#8141d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_attitude_estimator_q", "color": "#d84146", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mag_bias_estimator", "color": "#d87441", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mag_bias_estimator", "color": "#4178d8", "style": "normal"}]} \ No newline at end of file diff --git a/docs/public/middleware/graph_full_no_mavlink.json b/docs/public/middleware/graph_full_no_mavlink.json index 2164f67cc1..6f6ffe10df 100644 --- a/docs/public/middleware/graph_full_no_mavlink.json +++ b/docs/public/middleware/graph_full_no_mavlink.json @@ -1 +1 @@ -{"nodes": [{"id": "m_internal_combustion_engine_control", "name": "internal_combustion_engine_control", "type": "Module", "color": "#666666"}, {"id": "m_fw_autotune_attitude_control", "name": "fw_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_autotune_attitude_control", "name": "mc_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_landing_target_estimator", "name": "landing_target_estimator", "type": "Module", "color": "#666666"}, {"id": "m_local_position_estimator", "name": "local_position_estimator", "type": "Module", "color": "#666666"}, {"id": "m_temperature_compensation", "name": "temperature_compensation", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_serial", "name": "lightware_laser_serial", "type": "Module", "color": "#666666"}, {"id": "m_system_power_simulator", "name": "system_power_simulator", "type": "Module", "color": "#666666"}, {"id": "m_lightware_sf45_serial", "name": "lightware_sf45_serial", "type": "Module", "color": "#666666"}, {"id": "m_pm_selector_auterion", "name": "pm_selector_auterion", "type": "Module", "color": "#666666"}, {"id": "m_attitude_estimator_q", "name": "attitude_estimator_q", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_i2c", "name": "lightware_laser_i2c", "type": "Module", "color": "#666666"}, {"id": "m_sensor_airspeed_sim", "name": "sensor_airspeed_sim", "type": "Module", "color": "#666666"}, {"id": "m_flight_mode_manager", "name": "flight_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_airship_att_control", "name": "airship_att_control", "type": "Module", "color": "#666666"}, {"id": "m_rover_differential", "name": "rover_differential", "type": "Module", "color": "#666666"}, {"id": "m_mag_bias_estimator", "name": "mag_bias_estimator", "type": "Module", "color": "#666666"}, {"id": "m_io_bypass_control", "name": "io_bypass_control", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_is31fl3195", "name": "rgbled_is31fl3195", "type": "Module", "color": "#666666"}, {"id": "m_payload_deliverer", "name": "payload_deliverer", "type": "Module", "color": "#666666"}, {"id": "m_battery_simulator", "name": "battery_simulator", "type": "Module", "color": "#666666"}, {"id": "m_simulator_mavlink", "name": "simulator_mavlink", "type": "Module", "color": "#666666"}, {"id": "m_rover_pos_control", "name": "rover_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_control_allocator", "name": "control_allocator", "type": "Module", "color": "#666666"}, {"id": "m_airspeed_selector", "name": "airspeed_selector", "type": "Module", "color": "#666666"}, {"id": "m_cdcacm_autostart", "name": "cdcacm_autostart", "type": "Module", "color": "#666666"}, {"id": "m_uxrce_dds_client", "name": "uxrce_dds_client", "type": "Module", "color": "#666666"}, {"id": "m_gyro_calibration", "name": "gyro_calibration", "type": "Module", "color": "#666666"}, {"id": "m_vtol_att_control", "name": "vtol_att_control", "type": "Module", "color": "#666666"}, {"id": "m_pca9685_pwm_out", "name": "pca9685_pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_frsky_telemetry", "name": "frsky_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_ncp5623c", "name": "rgbled_ncp5623c", "type": "Module", "color": "#666666"}, {"id": "m_template_module", "name": "template_module", "type": "Module", "color": "#666666"}, {"id": "m_rover_ackermann", "name": "rover_ackermann", "type": "Module", "color": "#666666"}, {"id": "m_fw_rate_control", "name": "fw_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_camera_feedback", "name": "camera_feedback", "type": "Module", "color": "#666666"}, {"id": "m_sensor_baro_sim", "name": "sensor_baro_sim", "type": "Module", "color": "#666666"}, {"id": "m_uuv_pos_control", "name": "uuv_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_rate_control", "name": "mc_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_uuv_att_control", "name": "uuv_att_control", "type": "Module", "color": "#666666"}, {"id": "m_hott_telemetry", "name": "hott_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_camera_capture", "name": "camera_capture", "type": "Module", "color": "#666666"}, {"id": "m_camera_trigger", "name": "camera_trigger", "type": "Module", "color": "#666666"}, {"id": "m_ulanding_radar", "name": "ulanding_radar", "type": "Module", "color": "#666666"}, {"id": "m_fw_att_control", "name": "fw_att_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_att_control", "name": "mc_att_control", "type": "Module", "color": "#666666"}, {"id": "m_sensor_agp_sim", "name": "sensor_agp_sim", "type": "Module", "color": "#666666"}, {"id": "m_sensor_gps_sim", "name": "sensor_gps_sim", "type": "Module", "color": "#666666"}, {"id": "m_sensor_mag_sim", "name": "sensor_mag_sim", "type": "Module", "color": "#666666"}, {"id": "m_manual_control", "name": "manual_control", "type": "Module", "color": "#666666"}, {"id": "m_fw_pos_control", "name": "fw_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_battery_status", "name": "battery_status", "type": "Module", "color": "#666666"}, {"id": "m_mc_pos_control", "name": "mc_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_actuator_test", "name": "actuator_test", "type": "Module", "color": "#666666"}, {"id": "m_linux_pwm_out", "name": "linux_pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_rpm_simulator", "name": "rpm_simulator", "type": "Module", "color": "#666666"}, {"id": "m_safety_button", "name": "safety_button", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_lp5562", "name": "rgbled_lp5562", "type": "Module", "color": "#666666"}, {"id": "m_land_detector", "name": "land_detector", "type": "Module", "color": "#666666"}, {"id": "m_rover_mecanum", "name": "rover_mecanum", "type": "Module", "color": "#666666"}, {"id": "m_simulator_sih", "name": "simulator_sih", "type": "Module", "color": "#666666"}, {"id": "m_i2c_launcher", "name": "i2c_launcher", "type": "Module", "color": "#666666"}, {"id": "m_tune_control", "name": "tune_control", "type": "Module", "color": "#666666"}, {"id": "m_ets_airspeed", "name": "ets_airspeed", "type": "Module", "color": "#666666"}, {"id": "m_sagetech_mxs", "name": "sagetech_mxs", "type": "Module", "color": "#666666"}, {"id": "m_led_control", "name": "led_control", "type": "Module", "color": "#666666"}, {"id": "m_mpu9250_i2c", "name": "mpu9250_i2c", "type": "Module", "color": "#666666"}, {"id": "m_pps_capture", "name": "pps_capture", "type": "Module", "color": "#666666"}, {"id": "m_lsm9ds1_mag", "name": "lsm9ds1_mag", "type": "Module", "color": "#666666"}, {"id": "m_rpm_capture", "name": "rpm_capture", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out_sim", "name": "pwm_out_sim", "type": "Module", "color": "#666666"}, {"id": "m_esc_battery", "name": "esc_battery", "type": "Module", "color": "#666666"}, {"id": "m_microbench", "name": "microbench", "type": "Module", "color": "#666666"}, {"id": "m_septentrio", "name": "septentrio", "type": "Module", "color": "#666666"}, {"id": "m_iridiumsbd", "name": "iridiumsbd", "type": "Module", "color": "#666666"}, {"id": "m_iam20680hp", "name": "iam20680hp", "type": "Module", "color": "#666666"}, {"id": "m_bmi088_i2c", "name": "bmi088_i2c", "type": "Module", "color": "#666666"}, {"id": "m_tone_alarm", "name": "tone_alarm", "type": "Module", "color": "#666666"}, {"id": "m_batt_smbus", "name": "batt_smbus", "type": "Module", "color": "#666666"}, {"id": "m_teraranger", "name": "teraranger", "type": "Module", "color": "#666666"}, {"id": "m_ll40ls_pwm", "name": "ll40ls_pwm", "type": "Module", "color": "#666666"}, {"id": "m_leddar_one", "name": "leddar_one", "type": "Module", "color": "#666666"}, {"id": "m_uavcannode", "name": "uavcannode", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_pwm", "name": "rgbled_pwm", "type": "Module", "color": "#666666"}, {"id": "m_send_event", "name": "send_event", "type": "Module", "color": "#666666"}, {"id": "m_pwm_input", "name": "pwm_input", "type": "Module", "color": "#666666"}, {"id": "m_rpi_rc_in", "name": "rpi_rc_in", "type": "Module", "color": "#666666"}, {"id": "m_uwb_sr150", "name": "uwb_sr150", "type": "Module", "color": "#666666"}, {"id": "m_ms5525dso", "name": "ms5525dso", "type": "Module", "color": "#666666"}, {"id": "m_tattu_can", "name": "tattu_can", "type": "Module", "color": "#666666"}, {"id": "m_icm20608g", "name": "icm20608g", "type": "Module", "color": "#666666"}, {"id": "m_icm42670p", "name": "icm42670p", "type": "Module", "color": "#666666"}, {"id": "m_icm40609d", "name": "icm40609d", "type": "Module", "color": "#666666"}, {"id": "m_icm42688p", "name": "icm42688p", "type": "Module", "color": "#666666"}, {"id": "m_adis16507", "name": "adis16507", "type": "Module", "color": "#666666"}, {"id": "m_adis16477", "name": "adis16477", "type": "Module", "color": "#666666"}, {"id": "m_adis16448", "name": "adis16448", "type": "Module", "color": "#666666"}, {"id": "m_adis16470", "name": "adis16470", "type": "Module", "color": "#666666"}, {"id": "m_adis16497", "name": "adis16497", "type": "Module", "color": "#666666"}, {"id": "m_mmc5983ma", "name": "mmc5983ma", "type": "Module", "color": "#666666"}, {"id": "m_lsm303agr", "name": "lsm303agr", "type": "Module", "color": "#666666"}, {"id": "m_board_adc", "name": "board_adc", "type": "Module", "color": "#666666"}, {"id": "m_vertiq_io", "name": "vertiq_io", "type": "Module", "color": "#666666"}, {"id": "m_thoneflow", "name": "thoneflow", "type": "Module", "color": "#666666"}, {"id": "m_vectornav", "name": "vectornav", "type": "Module", "color": "#666666"}, {"id": "m_tcbp001ta", "name": "tcbp001ta", "type": "Module", "color": "#666666"}, {"id": "m_mpl3115a2", "name": "mpl3115a2", "type": "Module", "color": "#666666"}, {"id": "m_gz_bridge", "name": "gz_bridge", "type": "Module", "color": "#666666"}, {"id": "m_navigator", "name": "navigator", "type": "Module", "color": "#666666"}, {"id": "m_commander", "name": "commander", "type": "Module", "color": "#666666"}, {"id": "m_rc_update", "name": "rc_update", "type": "Module", "color": "#666666"}, {"id": "m_rc_input", "name": "rc_input", "type": "Module", "color": "#666666"}, {"id": "m_roboclaw", "name": "roboclaw", "type": "Module", "color": "#666666"}, {"id": "m_ms4525do", "name": "ms4525do", "type": "Module", "color": "#666666"}, {"id": "m_icm20649", "name": "icm20649", "type": "Module", "color": "#666666"}, {"id": "m_icm20948", "name": "icm20948", "type": "Module", "color": "#666666"}, {"id": "m_icm45686", "name": "icm45686", "type": "Module", "color": "#666666"}, {"id": "m_iim42652", "name": "iim42652", "type": "Module", "color": "#666666"}, {"id": "m_icm20602", "name": "icm20602", "type": "Module", "color": "#666666"}, {"id": "m_icm42605", "name": "icm42605", "type": "Module", "color": "#666666"}, {"id": "m_icm20689", "name": "icm20689", "type": "Module", "color": "#666666"}, {"id": "m_iim42653", "name": "iim42653", "type": "Module", "color": "#666666"}, {"id": "m_vcm1193l", "name": "vcm1193l", "type": "Module", "color": "#666666"}, {"id": "m_qmc5883l", "name": "qmc5883l", "type": "Module", "color": "#666666"}, {"id": "m_voxl_esc", "name": "voxl_esc", "type": "Module", "color": "#666666"}, {"id": "m_mappydot", "name": "mappydot", "type": "Module", "color": "#666666"}, {"id": "m_icp101xx", "name": "icp101xx", "type": "Module", "color": "#666666"}, {"id": "m_icp201xx", "name": "icp201xx", "type": "Module", "color": "#666666"}, {"id": "m_voxl2_io", "name": "voxl2_io", "type": "Module", "color": "#666666"}, {"id": "m_neopixel", "name": "neopixel", "type": "Module", "color": "#666666"}, {"id": "m_gyro_fft", "name": "gyro_fft", "type": "Module", "color": "#666666"}, {"id": "m_load_mon", "name": "load_mon", "type": "Module", "color": "#666666"}, {"id": "m_failure", "name": "failure", "type": "Module", "color": "#666666"}, {"id": "m_tap_esc", "name": "tap_esc", "type": "Module", "color": "#666666"}, {"id": "m_asp5033", "name": "asp5033", "type": "Module", "color": "#666666"}, {"id": "m_mpu6500", "name": "mpu6500", "type": "Module", "color": "#666666"}, {"id": "m_mpu9250", "name": "mpu9250", "type": "Module", "color": "#666666"}, {"id": "m_mpu6000", "name": "mpu6000", "type": "Module", "color": "#666666"}, {"id": "m_lsm303d", "name": "lsm303d", "type": "Module", "color": "#666666"}, {"id": "m_lsm9ds1", "name": "lsm9ds1", "type": "Module", "color": "#666666"}, {"id": "m_pcf8583", "name": "pcf8583", "type": "Module", "color": "#666666"}, {"id": "m_msp_osd", "name": "msp_osd", "type": "Module", "color": "#666666"}, {"id": "m_ak09916", "name": "ak09916", "type": "Module", "color": "#666666"}, {"id": "m_iis2mdc", "name": "iis2mdc", "type": "Module", "color": "#666666"}, {"id": "m_ist8308", "name": "ist8308", "type": "Module", "color": "#666666"}, {"id": "m_ist8310", "name": "ist8310", "type": "Module", "color": "#666666"}, {"id": "m_hmc5883", "name": "hmc5883", "type": "Module", "color": "#666666"}, {"id": "m_lis3mdl", "name": "lis3mdl", "type": "Module", "color": "#666666"}, {"id": "m_ads1115", "name": "ads1115", "type": "Module", "color": "#666666"}, {"id": "m_gy_us42", "name": "gy_us42", "type": "Module", "color": "#666666"}, {"id": "m_cm8jl65", "name": "cm8jl65", "type": "Module", "color": "#666666"}, {"id": "m_vl53l0x", "name": "vl53l0x", "type": "Module", "color": "#666666"}, {"id": "m_afbrs50", "name": "afbrs50", "type": "Module", "color": "#666666"}, {"id": "m_vl53l1x", "name": "vl53l1x", "type": "Module", "color": "#666666"}, {"id": "m_tf02pro", "name": "tf02pro", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out", "name": "pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_paw3902", "name": "paw3902", "type": "Module", "color": "#666666"}, {"id": "m_paa3905", "name": "paa3905", "type": "Module", "color": "#666666"}, {"id": "m_px4flow", "name": "px4flow", "type": "Module", "color": "#666666"}, {"id": "m_pmw3901", "name": "pmw3901", "type": "Module", "color": "#666666"}, {"id": "m_mpc2520", "name": "mpc2520", "type": "Module", "color": "#666666"}, {"id": "m_lps22hb", "name": "lps22hb", "type": "Module", "color": "#666666"}, {"id": "m_lps33hw", "name": "lps33hw", "type": "Module", "color": "#666666"}, {"id": "m_crsf_rc", "name": "crsf_rc", "type": "Module", "color": "#666666"}, {"id": "m_ghst_rc", "name": "ghst_rc", "type": "Module", "color": "#666666"}, {"id": "m_sbus_rc", "name": "sbus_rc", "type": "Module", "color": "#666666"}, {"id": "m_sensors", "name": "sensors", "type": "Module", "color": "#666666"}, {"id": "m_dataman", "name": "dataman", "type": "Module", "color": "#666666"}, {"id": "m_batmon", "name": "batmon", "type": "Module", "color": "#666666"}, {"id": "m_ms4515", "name": "ms4515", "type": "Module", "color": "#666666"}, {"id": "m_l3gd20", "name": "l3gd20", "type": "Module", "color": "#666666"}, {"id": "m_bmi085", "name": "bmi085", "type": "Module", "color": "#666666"}, {"id": "m_bmi055", "name": "bmi055", "type": "Module", "color": "#666666"}, {"id": "m_bmi270", "name": "bmi270", "type": "Module", "color": "#666666"}, {"id": "m_bmi088", "name": "bmi088", "type": "Module", "color": "#666666"}, {"id": "m_sch16t", "name": "sch16t", "type": "Module", "color": "#666666"}, {"id": "m_cyphal", "name": "cyphal", "type": "Module", "color": "#666666"}, {"id": "m_ina238", "name": "ina238", "type": "Module", "color": "#666666"}, {"id": "m_voxlpm", "name": "voxlpm", "type": "Module", "color": "#666666"}, {"id": "m_ina220", "name": "ina220", "type": "Module", "color": "#666666"}, {"id": "m_ina226", "name": "ina226", "type": "Module", "color": "#666666"}, {"id": "m_ina228", "name": "ina228", "type": "Module", "color": "#666666"}, {"id": "m_irlock", "name": "irlock", "type": "Module", "color": "#666666"}, {"id": "m_atxxxx", "name": "atxxxx", "type": "Module", "color": "#666666"}, {"id": "m_ak8963", "name": "ak8963", "type": "Module", "color": "#666666"}, {"id": "m_bmm150", "name": "bmm150", "type": "Module", "color": "#666666"}, {"id": "m_bmm350", "name": "bmm350", "type": "Module", "color": "#666666"}, {"id": "m_rm3100", "name": "rm3100", "type": "Module", "color": "#666666"}, {"id": "m_uavcan", "name": "uavcan", "type": "Module", "color": "#666666"}, {"id": "m_pga460", "name": "pga460", "type": "Module", "color": "#666666"}, {"id": "m_tfmini", "name": "tfmini", "type": "Module", "color": "#666666"}, {"id": "m_ll40ls", "name": "ll40ls", "type": "Module", "color": "#666666"}, {"id": "m_mb12xx", "name": "mb12xx", "type": "Module", "color": "#666666"}, {"id": "m_bmp581", "name": "bmp581", "type": "Module", "color": "#666666"}, {"id": "m_ms5611", "name": "ms5611", "type": "Module", "color": "#666666"}, {"id": "m_bmp280", "name": "bmp280", "type": "Module", "color": "#666666"}, {"id": "m_dps310", "name": "dps310", "type": "Module", "color": "#666666"}, {"id": "m_bmp388", "name": "bmp388", "type": "Module", "color": "#666666"}, {"id": "m_lps25h", "name": "lps25h", "type": "Module", "color": "#666666"}, {"id": "m_ms5837", "name": "ms5837", "type": "Module", "color": "#666666"}, {"id": "m_heater", "name": "heater", "type": "Module", "color": "#666666"}, {"id": "m_dsm_rc", "name": "dsm_rc", "type": "Module", "color": "#666666"}, {"id": "m_rgbled", "name": "rgbled", "type": "Module", "color": "#666666"}, {"id": "m_gimbal", "name": "gimbal", "type": "Module", "color": "#666666"}, {"id": "m_logger", "name": "logger", "type": "Module", "color": "#666666"}, {"id": "m_tests", "name": "tests", "type": "Module", "color": "#666666"}, {"id": "m_dshot", "name": "dshot", "type": "Module", "color": "#666666"}, {"id": "m_sdp3x", "name": "sdp3x", "type": "Module", "color": "#666666"}, {"id": "m_px4io", "name": "px4io", "type": "Module", "color": "#666666"}, {"id": "m_srf02", "name": "srf02", "type": "Module", "color": "#666666"}, {"id": "m_srf05", "name": "srf05", "type": "Module", "color": "#666666"}, {"id": "m_spl06", "name": "spl06", "type": "Module", "color": "#666666"}, {"id": "m_spa06", "name": "spa06", "type": "Module", "color": "#666666"}, {"id": "m_auav", "name": "auav", "type": "Module", "color": "#666666"}, {"id": "m_ekf2", "name": "ekf2", "type": "Module", "color": "#666666"}, {"id": "m_bst", "name": "bst", "type": "Module", "color": "#666666"}, {"id": "m_gps", "name": "gps", "type": "Module", "color": "#666666"}, {"id": "t_distance_sensor_mode_change_request", "name": "distance_sensor_mode_change_request", "type": "topic", "color": "#5d41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position_groundtruth", "name": "vehicle_global_position_groundtruth", "type": "topic", "color": "#d84185", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_internal_combustion_engine_control", "name": "internal_combustion_engine_control", "type": "topic", "color": "#92d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_groundtruth", "name": "vehicle_local_position_groundtruth", "type": "topic", "color": "#4180d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_landing_status", "name": "position_controller_landing_status", "type": "topic", "color": "#b141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_autotune_attitude_control_status", "name": "autotune_attitude_control_status", "type": "topic", "color": "#414bd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_setpoint", "name": "vehicle_local_position_setpoint", "type": "topic", "color": "#41d8bd", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_attitude_status", "name": "gimbal_device_attitude_status", "type": "topic", "color": "#d86e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_groundtruth", "name": "vehicle_attitude_groundtruth", "type": "topic", "color": "#4dd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_set_attitude", "name": "gimbal_device_set_attitude", "type": "topic", "color": "#41d897", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_controls_status_0", "name": "actuator_controls_status_0", "type": "topic", "color": "#41d8cd", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorControlsStatus.msg"}, {"id": "t_position_controller_status", "name": "position_controller_status", "type": "topic", "color": "#d841d2", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_setpoint_triplet", "name": "position_setpoint_triplet", "type": "topic", "color": "#41d84b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_information", "name": "gimbal_device_information", "type": "topic", "color": "#4d41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_selector_status", "name": "estimator_selector_status", "type": "topic", "color": "#c041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_setpoint", "name": "vehicle_attitude_setpoint", "type": "topic", "color": "#d841a4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tiltrotor_extra_controls", "name": "tiltrotor_extra_controls", "type": "topic", "color": "#419fd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_control_allocator_status", "name": "control_allocator_status", "type": "topic", "color": "#4179d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position", "name": "vehicle_global_position", "type": "topic", "color": "#d89c41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_steering_setpoint", "name": "rover_steering_setpoint", "type": "topic", "color": "#d8c341", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_switches", "name": "manual_control_switches", "type": "topic", "color": "#d8d241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_velocity_setpoint", "name": "rover_velocity_setpoint", "type": "topic", "color": "#74d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_attitude_setpoint", "name": "rover_attitude_setpoint", "type": "topic", "color": "#64d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_throttle_setpoint", "name": "rover_throttle_setpoint", "type": "topic", "color": "#41d888", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_setpoint", "name": "manual_control_setpoint", "type": "topic", "color": "#41c5d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_visual_odometry", "name": "vehicle_visual_odometry", "type": "topic", "color": "#41a7d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_launch_detection_status", "name": "launch_detection_status", "type": "topic", "color": "#4162d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flight_phase_estimation", "name": "flight_phase_estimation", "type": "topic", "color": "#415ad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_thrust_setpoint", "name": "vehicle_thrust_setpoint", "type": "topic", "color": "#6c41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleThrustSetpoint.msg"}, {"id": "t_rover_position_setpoint", "name": "rover_position_setpoint", "type": "topic", "color": "#8a41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_torque_setpoint", "name": "vehicle_torque_setpoint", "type": "topic", "color": "#d84167", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleTorqueSetpoint.msg"}, {"id": "t_failure_detector_status", "name": "failure_detector_status", "type": "topic", "color": "#d84157", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_mocap_odometry", "name": "vehicle_mocap_odometry", "type": "topic", "color": "#d8b341", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status_flags", "name": "estimator_status_flags", "type": "topic", "color": "#cfd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_rates_setpoint", "name": "vehicle_rates_setpoint", "type": "topic", "color": "#41d852", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position", "name": "vehicle_local_position", "type": "topic", "color": "#41bdd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_land_detected", "name": "vehicle_land_detected", "type": "topic", "color": "#d84141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_sensor_bias", "name": "estimator_sensor_bias", "type": "topic", "color": "#a9d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_differential_pressure", "name": "differential_pressure", "type": "topic", "color": "#a141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_control_mode", "name": "vehicle_control_mode", "type": "topic", "color": "#41d89f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_servos_trim", "name": "actuator_servos_trim", "type": "topic", "color": "#d741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs_sim", "name": "actuator_outputs_sim", "type": "topic", "color": "#d84148", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_vehicle_constraints", "name": "vehicle_constraints", "type": "topic", "color": "#6cd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_trajectory_setpoint", "name": "trajectory_setpoint", "type": "topic", "color": "#41d871", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command_ack", "name": "vehicle_command_ack", "type": "topic", "color": "#41d890", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_target_pose", "name": "landing_target_pose", "type": "topic", "color": "#4143d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_rate_setpoint", "name": "rover_rate_setpoint", "type": "topic", "color": "#d841ca", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_optical_flow", "name": "sensor_optical_flow", "type": "topic", "color": "#d841c3", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_aux_global_position", "name": "aux_global_position", "type": "topic", "color": "#d841b3", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource2d.msg"}, {"id": "t_vtol_vehicle_status", "name": "vtol_vehicle_status", "type": "topic", "color": "#d84176", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_transponder_report", "name": "transponder_report", "type": "topic", "color": "#d85741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed_validated", "name": "airspeed_validated", "type": "topic", "color": "#41d8a7", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu_status", "name": "vehicle_imu_status", "type": "topic", "color": "#41d4d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_power_button_state", "name": "power_button_state", "type": "topic", "color": "#7b41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear_wheel", "name": "landing_gear_wheel", "type": "topic", "color": "#9a41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensors_status_imu", "name": "sensors_status_imu", "type": "topic", "color": "#a941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_iridiumsbd_status", "name": "iridiumsbd_status", "type": "topic", "color": "#c0d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_correction", "name": "sensor_correction", "type": "topic", "color": "#55d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_obstacle_distance", "name": "obstacle_distance", "type": "topic", "color": "#41d85a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ObstacleDistance.msg"}, {"id": "t_spoilers_setpoint", "name": "spoilers_setpoint", "type": "topic", "color": "#41b6d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_rtl_time_estimate", "name": "rtl_time_estimate", "type": "topic", "color": "#d8415f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude", "name": "vehicle_attitude", "type": "topic", "color": "#d88541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status", "name": "estimator_status", "type": "topic", "color": "#9ad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_selection", "name": "sensor_selection", "type": "topic", "color": "#41d8ae", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_response", "name": "dataman_response", "type": "topic", "color": "#5541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro_fifo", "name": "sensor_gyro_fifo", "type": "topic", "color": "#d841bb", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs", "name": "actuator_outputs", "type": "topic", "color": "#d84195", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_navigator_status", "name": "navigator_status", "type": "topic", "color": "#d8418d", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_status", "name": "geofence_status", "type": "topic", "color": "#d85f41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command", "name": "vehicle_command", "type": "topic", "color": "#d8ca41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gps_inject_data", "name": "gps_inject_data", "type": "topic", "color": "#d7d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_combined", "name": "sensor_combined", "type": "topic", "color": "#41d862", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_request", "name": "dataman_request", "type": "topic", "color": "#4188d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_servos", "name": "actuator_servos", "type": "topic", "color": "#4169d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_controls", "name": "gimbal_controls", "type": "topic", "color": "#4152d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor", "name": "distance_sensor", "type": "topic", "color": "#8341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_result", "name": "geofence_result", "type": "topic", "color": "#cf41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_motors", "name": "actuator_motors", "type": "topic", "color": "#d8419c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_trigger", "name": "camera_trigger", "type": "topic", "color": "#d85041", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_takeoff_status", "name": "takeoff_status", "type": "topic", "color": "#d8ac41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_action_request", "name": "action_request", "type": "topic", "color": "#b8d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_armed", "name": "actuator_armed", "type": "topic", "color": "#83d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failsafe_flags", "name": "failsafe_flags", "type": "topic", "color": "#41d843", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_battery_status", "name": "battery_status", "type": "topic", "color": "#7441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flaps_setpoint", "name": "flaps_setpoint", "type": "topic", "color": "#b841d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_mission_result", "name": "mission_result", "type": "topic", "color": "#d841ac", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_status", "name": "vehicle_status", "type": "topic", "color": "#d84150", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_home_position", "name": "home_position", "type": "topic", "color": "#d87e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_safety_button", "name": "safety_button", "type": "topic", "color": "#c8d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_actuator_test", "name": "actuator_test", "type": "topic", "color": "#41d8b6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_logger_status", "name": "logger_status", "type": "topic", "color": "#4197d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_irlock_report", "name": "irlock_report", "type": "topic", "color": "#4641d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tune_control", "name": "tune_control", "type": "topic", "color": "#d84841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_px4io_status", "name": "px4io_status", "type": "topic", "color": "#46d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_system_power", "name": "system_power", "type": "topic", "color": "#41aed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear", "name": "landing_gear", "type": "topic", "color": "#4171d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_accel", "name": "sensor_accel", "type": "topic", "color": "#6441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_pps_capture", "name": "pps_capture", "type": "topic", "color": "#d87641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu", "name": "vehicle_imu", "type": "topic", "color": "#b1d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_baro", "name": "sensor_baro", "type": "topic", "color": "#7bd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_led_control", "name": "led_control", "type": "topic", "color": "#5dd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tecs_status", "name": "tecs_status", "type": "topic", "color": "#41d880", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro", "name": "sensor_gyro", "type": "topic", "color": "#c841d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_roi", "name": "vehicle_roi", "type": "topic", "color": "#d8417e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_uwb", "name": "sensor_uwb", "type": "topic", "color": "#d86741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_mag", "name": "sensor_mag", "type": "topic", "color": "#8ad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_adc_report", "name": "adc_report", "type": "topic", "color": "#41d869", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_esc_status", "name": "esc_status", "type": "topic", "color": "#41d8c5", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gps", "name": "sensor_gps", "type": "topic", "color": "#41d8d4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/SensorGps.msg"}, {"id": "t_rtl_status", "name": "rtl_status", "type": "topic", "color": "#41cdd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_pwm_input", "name": "pwm_input", "type": "topic", "color": "#d89541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_input_rc", "name": "input_rc", "type": "topic", "color": "#d88d41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed", "name": "airspeed", "type": "topic", "color": "#4190d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource1d.msg"}, {"id": "t_mission", "name": "mission", "type": "topic", "color": "#d8bb41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_cpuload", "name": "cpuload", "type": "topic", "color": "#41d879", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gripper", "name": "gripper", "type": "topic", "color": "#9241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_event", "name": "event", "type": "topic", "color": "#d8a441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_wind", "name": "wind", "type": "topic", "color": "#a1d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/Wind.msg"}, {"id": "t_rpm", "name": "rpm", "type": "topic", "color": "#d8416e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}], "links": [{"source": "m_actuator_test", "target": "t_actuator_test", "color": "#41d8b6", "style": "dashed"}, {"source": "m_led_control", "target": "t_led_control", "color": "#5dd841", "style": "dashed"}, {"source": "m_failure", "target": "t_vehicle_command", "color": "#d8ca41", "style": "dashed"}, {"source": "m_tests", "target": "t_dataman_request", "color": "#4188d8", "style": "dashed"}, {"source": "m_io_bypass_control", "target": "t_actuator_test", "color": "#41d8b6", "style": "dashed"}, {"source": "m_io_bypass_control", "target": "t_actuator_outputs", "color": "#d84195", "style": "dashed"}, {"source": "m_tune_control", "target": "t_tune_control", "color": "#d84841", "style": "dashed"}, {"source": "m_pwm_input", "target": "t_pwm_input", "color": "#d89541", "style": "dashed"}, {"source": "m_rc_input", "target": "t_input_rc", "color": "#d88d41", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command", "color": "#d8ca41", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command_ack", "color": "#41d890", "style": "dashed"}, {"source": "m_rpi_rc_in", "target": "t_input_rc", "color": "#d88d41", "style": "dashed"}, {"source": "m_batmon", "target": "t_battery_status", "color": "#7441d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_outputs", "color": "#d84195", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_servos", "color": "#4169d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_armed", "color": "#83d841", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_test", "color": "#41d8b6", "style": "dashed"}, {"source": "m_dshot", "target": "t_vehicle_command_ack", "color": "#41d890", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_motors", "color": "#d8419c", "style": "dashed"}, {"source": "m_dshot", "target": "t_esc_status", "color": "#41d8c5", "style": "dashed"}, {"source": "m_uwb_sr150", "target": "t_sensor_uwb", "color": "#d86741", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_outputs", "color": "#d84195", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_servos", "color": "#4169d8", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_armed", "color": "#83d841", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_test", "color": "#41d8b6", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_motors", "color": "#d8419c", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_esc_status", "color": "#41d8c5", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_servos", "color": "#4169d8", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_armed", "color": "#83d841", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_test", "color": "#41d8b6", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_motors", "color": "#d8419c", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_outputs", "color": "#d84195", "style": "dashed"}, {"source": "m_septentrio", "target": "t_sensor_gps", "color": "#41d8d4", "style": "dashed"}, {"source": "m_septentrio", "target": "t_gps_inject_data", "color": "#d7d841", "style": "dashed"}, {"source": "m_iridiumsbd", "target": "t_iridiumsbd_status", "color": "#c0d841", "style": "dashed"}, {"source": "m_hott_telemetry", "target": "t_esc_status", "color": "#41d8c5", "style": "dashed"}, {"source": "m_ms4525do", "target": "t_differential_pressure", "color": "#a141d8", "style": "dashed"}, {"source": "m_ms5525dso", "target": "t_differential_pressure", "color": "#a141d8", "style": "dashed"}, {"source": "m_sdp3x", "target": "t_differential_pressure", "color": "#a141d8", "style": "dashed"}, {"source": "m_asp5033", "target": "t_differential_pressure", "color": "#a141d8", "style": "dashed"}, {"source": "m_auav", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_auav", "target": "t_differential_pressure", "color": "#a141d8", "style": "dashed"}, {"source": "m_ms4515", "target": "t_differential_pressure", "color": "#a141d8", "style": "dashed"}, {"source": "m_ets_airspeed", "target": "t_differential_pressure", "color": "#a141d8", "style": "dashed"}, {"source": "m_sagetech_mxs", "target": "t_transponder_report", "color": "#d85741", "style": "dashed"}, {"source": "m_tattu_can", "target": "t_battery_status", "color": "#7441d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_servos", "color": "#4169d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command", "color": "#d8ca41", "style": "dashed"}, {"source": "m_px4io", "target": "t_led_control", "color": "#5dd841", "style": "dashed"}, {"source": "m_px4io", "target": "t_px4io_status", "color": "#46d841", "style": "dashed"}, {"source": "m_px4io", "target": "t_tune_control", "color": "#d84841", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_armed", "color": "#83d841", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_test", "color": "#41d8b6", "style": "dashed"}, {"source": "m_px4io", "target": "t_safety_button", "color": "#c8d841", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command_ack", "color": "#41d890", "style": "dashed"}, {"source": "m_px4io", "target": "t_input_rc", "color": "#d88d41", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_motors", "color": "#d8419c", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_outputs", "color": "#d84195", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_icm20608g", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_icm20608g", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_icm20608g", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_mpu6500", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_mpu6500", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_mpu6500", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_icm42670p", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_icm42670p", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_icm42670p", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_icm45686", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_icm45686", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_icm45686", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_icm40609d", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_icm40609d", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_icm40609d", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_mpu9250_i2c", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_mpu9250_i2c", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_mpu9250_i2c", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_icm42605", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_icm42605", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_icm42605", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_icm20689", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_icm20689", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_icm20689", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_iam20680hp", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_iam20680hp", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_iam20680hp", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_iim42653", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_iim42653", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_iim42653", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_mpu6000", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_mpu6000", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_mpu6000", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_lsm303d", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_lsm303d", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_l3gd20", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_l3gd20", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_lsm9ds1", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_lsm9ds1", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_lsm9ds1", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_bmi085", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_bmi085", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_bmi085", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_bmi055", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_bmi055", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_bmi055", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_bmi270", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_bmi270", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_bmi270", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_bmi088_i2c", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_bmi088_i2c", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_bmi088_i2c", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_sch16t", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_sch16t", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_sch16t", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_adis16507", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_adis16507", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_adis16507", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_adis16477", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_adis16477", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_adis16477", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_adis16470", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_adis16470", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_adis16470", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_adis16497", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_adis16497", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_adis16497", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_servos", "color": "#4169d8", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_armed", "color": "#83d841", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_test", "color": "#41d8b6", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_motors", "color": "#d8419c", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_outputs", "color": "#d84195", "style": "dashed"}, {"source": "m_gps", "target": "t_sensor_gps", "color": "#41d8d4", "style": "dashed"}, {"source": "m_gps", "target": "t_gps_inject_data", "color": "#d7d841", "style": "dashed"}, {"source": "m_rpm_simulator", "target": "t_rpm", "color": "#d8416e", "style": "dashed"}, {"source": "m_pcf8583", "target": "t_rpm", "color": "#d8416e", "style": "dashed"}, {"source": "m_cyphal", "target": "t_battery_status", "color": "#7441d8", "style": "dashed"}, {"source": "m_cyphal", "target": "t_esc_status", "color": "#41d8c5", "style": "dashed"}, {"source": "m_safety_button", "target": "t_vehicle_command", "color": "#d8ca41", "style": "dashed"}, {"source": "m_safety_button", "target": "t_safety_button", "color": "#c8d841", "style": "dashed"}, {"source": "m_safety_button", "target": "t_tune_control", "color": "#d84841", "style": "dashed"}, {"source": "m_safety_button", "target": "t_led_control", "color": "#5dd841", "style": "dashed"}, {"source": "m_tone_alarm", "target": "t_tune_control", "color": "#d84841", "style": "dashed"}, {"source": "m_ina238", "target": "t_battery_status", "color": "#7441d8", "style": "dashed"}, {"source": "m_voxlpm", "target": "t_battery_status", "color": "#7441d8", "style": "dashed"}, {"source": "m_ina220", "target": "t_battery_status", "color": "#7441d8", "style": "dashed"}, {"source": "m_ina226", "target": "t_battery_status", "color": "#7441d8", "style": "dashed"}, {"source": "m_ina228", "target": "t_battery_status", "color": "#7441d8", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_camera_trigger", "color": "#d85041", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_vehicle_command_ack", "color": "#41d890", "style": "dashed"}, {"source": "m_irlock", "target": "t_irlock_report", "color": "#4641d8", "style": "dashed"}, {"source": "m_pps_capture", "target": "t_pps_capture", "color": "#d87641", "style": "dashed"}, {"source": "m_ak09916", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_ak8963", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_mmc5983ma", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_lsm303agr", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_iis2mdc", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_vcm1193l", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_ist8308", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_ist8310", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_bmm150", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_bmm350", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_qmc5883l", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_lsm9ds1_mag", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_hmc5883", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_rm3100", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_lis3mdl", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_ads1115", "target": "t_adc_report", "color": "#41d869", "style": "dashed"}, {"source": "m_board_adc", "target": "t_system_power", "color": "#41aed8", "style": "dashed"}, {"source": "m_board_adc", "target": "t_adc_report", "color": "#41d869", "style": "dashed"}, {"source": "m_batt_smbus", "target": "t_battery_status", "color": "#7441d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_outputs", "color": "#d84195", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_servos", "color": "#4169d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command", "color": "#d8ca41", "style": "dashed"}, {"source": "m_uavcan", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_motors", "color": "#d8419c", "style": "dashed"}, {"source": "m_uavcan", "target": "t_led_control", "color": "#5dd841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_tune_control", "color": "#d84841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_armed", "color": "#83d841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_test", "color": "#41d8b6", "style": "dashed"}, {"source": "m_uavcan", "target": "t_safety_button", "color": "#c8d841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command_ack", "color": "#41d890", "style": "dashed"}, {"source": "m_uavcan", "target": "t_esc_status", "color": "#41d8c5", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_outputs", "color": "#d84195", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_servos", "color": "#4169d8", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_motors", "color": "#d8419c", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_armed", "color": "#83d841", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_test", "color": "#41d8b6", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_battery_status", "color": "#7441d8", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_esc_status", "color": "#41d8c5", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_outputs", "color": "#d84195", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_servos", "color": "#4169d8", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_armed", "color": "#83d841", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_test", "color": "#41d8b6", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_motors", "color": "#d8419c", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_esc_status", "color": "#41d8c5", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command", "color": "#d8ca41", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_camera_trigger", "color": "#d85041", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command_ack", "color": "#41d890", "style": "dashed"}, {"source": "m_lightware_laser_serial", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_gy_us42", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_srf02", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_teraranger", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_lightware_laser_i2c", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_pga460", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_cm8jl65", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_vl53l0x", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_afbrs50", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_tfmini", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_ulanding_radar", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_ll40ls", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_ll40ls_pwm", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_vl53l1x", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_mb12xx", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_mappydot", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_leddar_one", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_lightware_sf45_serial", "target": "t_vehicle_command", "color": "#d8ca41", "style": "dashed"}, {"source": "m_lightware_sf45_serial", "target": "t_obstacle_distance", "color": "#41d85a", "style": "dashed"}, {"source": "m_lightware_sf45_serial", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_lightware_sf45_serial", "target": "t_vehicle_attitude", "color": "#d88541", "style": "dashed"}, {"source": "m_srf05", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_tf02pro", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_servos", "color": "#4169d8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_armed", "color": "#83d841", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_test", "color": "#41d8b6", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_motors", "color": "#d8419c", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_outputs", "color": "#d84195", "style": "dashed"}, {"source": "m_paw3902", "target": "t_sensor_optical_flow", "color": "#d841c3", "style": "dashed"}, {"source": "m_paa3905", "target": "t_sensor_optical_flow", "color": "#d841c3", "style": "dashed"}, {"source": "m_px4flow", "target": "t_sensor_optical_flow", "color": "#d841c3", "style": "dashed"}, {"source": "m_pmw3901", "target": "t_sensor_optical_flow", "color": "#d841c3", "style": "dashed"}, {"source": "m_thoneflow", "target": "t_sensor_optical_flow", "color": "#d841c3", "style": "dashed"}, {"source": "m_vectornav", "target": "t_sensor_gps", "color": "#41d8d4", "style": "dashed"}, {"source": "m_vectornav", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_vectornav", "target": "t_sensor_selection", "color": "#41d8ae", "style": "dashed"}, {"source": "m_vectornav", "target": "t_estimator_status", "color": "#9ad841", "style": "dashed"}, {"source": "m_bmp581", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_ms5611", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_icp101xx", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_icp201xx", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_mpc2520", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_bmp280", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_dps310", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_tcbp001ta", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_spl06", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_spa06", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_lps22hb", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_lps33hw", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_bmp388", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_mpl3115a2", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_lps25h", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_ms5837", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_rpm_capture", "target": "t_rpm", "color": "#d8416e", "style": "dashed"}, {"source": "m_rpm_capture", "target": "t_pwm_input", "color": "#d89541", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_servos", "color": "#4169d8", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_armed", "color": "#83d841", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_test", "color": "#41d8b6", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_input_rc", "color": "#d88d41", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_motors", "color": "#d8419c", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_outputs", "color": "#d84195", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_actuator_servos", "color": "#4169d8", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_led_control", "color": "#5dd841", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_gps_inject_data", "color": "#d7d841", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_actuator_armed", "color": "#83d841", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_actuator_motors", "color": "#d8419c", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_tune_control", "color": "#d84841", "style": "dashed"}, {"source": "m_crsf_rc", "target": "t_input_rc", "color": "#d88d41", "style": "dashed"}, {"source": "m_ghst_rc", "target": "t_input_rc", "color": "#d88d41", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_input_rc", "color": "#d88d41", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_vehicle_command", "color": "#d8ca41", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_vehicle_command_ack", "color": "#41d890", "style": "dashed"}, {"source": "m_sbus_rc", "target": "t_input_rc", "color": "#d88d41", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_attitude_setpoint", "color": "#64d841", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_steering_setpoint", "color": "#d8c341", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_actuator_servos", "color": "#4169d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_position_setpoint", "color": "#8a41d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_throttle_setpoint", "color": "#41d888", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_velocity_setpoint", "color": "#74d841", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_position_controller_status", "color": "#d841d2", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_rate_setpoint", "color": "#d841ca", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_actuator_motors", "color": "#d8419c", "style": "dashed"}, {"source": "m_ekf2", "target": "t_sensor_selection", "color": "#41d8ae", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status_flags", "color": "#cfd841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_sensor_bias", "color": "#a9d841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_wind", "color": "#a1d841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_local_position", "color": "#41bdd8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_selector_status", "color": "#c041d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status", "color": "#9ad841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_attitude", "color": "#d88541", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_global_position", "color": "#d89c41", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_command_ack", "color": "#41d890", "style": "dashed"}, {"source": "m_uxrce_dds_client", "target": "t_vehicle_command", "color": "#d8ca41", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_vehicle_command_ack", "color": "#41d890", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_vehicle_command", "color": "#d8ca41", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_gripper", "color": "#9241d8", "style": "dashed"}, {"source": "m_landing_target_estimator", "target": "t_landing_target_pose", "color": "#4143d8", "style": "dashed"}, {"source": "m_fw_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#414bd8", "style": "dashed"}, {"source": "m_land_detector", "target": "t_vehicle_land_detected", "color": "#d84141", "style": "dashed"}, {"source": "m_mc_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#414bd8", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_vehicle_rates_setpoint", "color": "#41d852", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_landing_gear_wheel", "color": "#9a41d8", "style": "dashed"}, {"source": "m_mc_att_control", "target": "t_vehicle_rates_setpoint", "color": "#41d852", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#41d852", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_spoilers_setpoint", "color": "#41b6d8", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_flaps_setpoint", "color": "#b841d8", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_attitude_setpoint", "color": "#64d841", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_steering_setpoint", "color": "#d8c341", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_position_setpoint", "color": "#8a41d8", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_throttle_setpoint", "color": "#41d888", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_velocity_setpoint", "color": "#74d841", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_rate_setpoint", "color": "#d841ca", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_actuator_motors", "color": "#d8419c", "style": "dashed"}, {"source": "m_system_power_simulator", "target": "t_system_power", "color": "#41aed8", "style": "dashed"}, {"source": "m_sensor_agp_sim", "target": "t_aux_global_position", "color": "#d841b3", "style": "dashed"}, {"source": "m_sensor_baro_sim", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_airspeed", "color": "#4190d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_attitude_groundtruth", "color": "#4dd841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_local_position_groundtruth", "color": "#4180d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_global_position_groundtruth", "color": "#d84185", "style": "dashed"}, {"source": "m_battery_simulator", "target": "t_battery_status", "color": "#7441d8", "style": "dashed"}, {"source": "m_battery_simulator", "target": "t_vehicle_command_ack", "color": "#41d890", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_servos", "color": "#4169d8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_armed", "color": "#83d841", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_test", "color": "#41d8b6", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs_sim", "color": "#d84148", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_motors", "color": "#d8419c", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs", "color": "#d84195", "style": "dashed"}, {"source": "m_sensor_airspeed_sim", "target": "t_differential_pressure", "color": "#a141d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_distance_sensor", "color": "#8341d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_test", "color": "#41d8b6", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_esc_status", "color": "#41d8c5", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_differential_pressure", "color": "#a141d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_gps", "color": "#41d8d4", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_armed", "color": "#83d841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_optical_flow", "color": "#d841c3", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_visual_odometry", "color": "#41a7d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_gimbal_device_attitude_status", "color": "#d86e41", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_attitude_groundtruth", "color": "#4dd841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_local_position_groundtruth", "color": "#4180d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_motors", "color": "#d8419c", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_outputs", "color": "#d84195", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_global_position_groundtruth", "color": "#d84185", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_servos", "color": "#4169d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_obstacle_distance", "color": "#41d85a", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_gimbal_device_information", "color": "#4d41d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_command_ack", "color": "#41d890", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_esc_status", "color": "#41d8c5", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_differential_pressure", "color": "#a141d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_gyro", "color": "#c841d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_baro", "color": "#7bd841", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_optical_flow", "color": "#d841c3", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_visual_odometry", "color": "#41a7d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_gyro_fifo", "color": "#d841bb", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_attitude_groundtruth", "color": "#4dd841", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_local_position_groundtruth", "color": "#4180d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_input_rc", "color": "#d88d41", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_global_position_groundtruth", "color": "#d84185", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_rpm", "color": "#d8416e", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_irlock_report", "color": "#4641d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_accel", "color": "#6441d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_mocap_odometry", "color": "#d8b341", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_command_ack", "color": "#41d890", "style": "dashed"}, {"source": "m_sensor_gps_sim", "target": "t_sensor_gps", "color": "#41d8d4", "style": "dashed"}, {"source": "m_sensor_mag_sim", "target": "t_sensor_mag", "color": "#8ad841", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command", "color": "#d8ca41", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_land_detected", "color": "#d84141", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_status", "color": "#41cdd8", "style": "dashed"}, {"source": "m_navigator", "target": "t_transponder_report", "color": "#d85741", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_status", "color": "#d85f41", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_result", "color": "#cf41d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_home_position", "color": "#d87e41", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission_result", "color": "#d841ac", "style": "dashed"}, {"source": "m_navigator", "target": "t_dataman_request", "color": "#4188d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_navigator_status", "color": "#d8418d", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_roi", "color": "#d8417e", "style": "dashed"}, {"source": "m_navigator", "target": "t_position_setpoint_triplet", "color": "#41d84b", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_time_estimate", "color": "#d8415f", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_global_position", "color": "#d89c41", "style": "dashed"}, {"source": "m_navigator", "target": "t_distance_sensor_mode_change_request", "color": "#5d41d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_status", "color": "#d84150", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command_ack", "color": "#41d890", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission", "color": "#d8bb41", "style": "dashed"}, {"source": "m_send_event", "target": "t_led_control", "color": "#5dd841", "style": "dashed"}, {"source": "m_send_event", "target": "t_tune_control", "color": "#d84841", "style": "dashed"}, {"source": "m_send_event", "target": "t_vehicle_command_ack", "color": "#41d890", "style": "dashed"}, {"source": "m_commander", "target": "t_power_button_state", "color": "#7b41d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command", "color": "#d8ca41", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_control_mode", "color": "#41d89f", "style": "dashed"}, {"source": "m_commander", "target": "t_home_position", "color": "#d87e41", "style": "dashed"}, {"source": "m_commander", "target": "t_led_control", "color": "#5dd841", "style": "dashed"}, {"source": "m_commander", "target": "t_failure_detector_status", "color": "#d84157", "style": "dashed"}, {"source": "m_commander", "target": "t_event", "color": "#d8a441", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_armed", "color": "#83d841", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_test", "color": "#41d8b6", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_status", "color": "#d84150", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command_ack", "color": "#41d890", "style": "dashed"}, {"source": "m_commander", "target": "t_failsafe_flags", "color": "#41d843", "style": "dashed"}, {"source": "m_commander", "target": "t_tune_control", "color": "#d84841", "style": "dashed"}, {"source": "m_esc_battery", "target": "t_battery_status", "color": "#7441d8", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_trajectory_setpoint", "color": "#41d871", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_vehicle_constraints", "color": "#6cd841", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_landing_gear", "color": "#4171d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_command", "color": "#d8ca41", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_setpoint", "color": "#41c5d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_switches", "color": "#d8d241", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_status", "color": "#d84150", "style": "dashed"}, {"source": "m_manual_control", "target": "t_landing_gear", "color": "#4171d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_action_request", "color": "#b8d841", "style": "dashed"}, {"source": "m_uuv_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#d841a4", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#d841a4", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_position_controller_status", "color": "#d841d2", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_torque_setpoint", "color": "#d84167", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_thrust_setpoint", "color": "#6c41d8", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_actuator_controls_status_0", "color": "#41d8cd", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#41d852", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos_trim", "color": "#d741d8", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos", "color": "#4169d8", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_motors", "color": "#d8419c", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_control_allocator_status", "color": "#4179d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu_status", "color": "#41d4d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_combined", "color": "#41d862", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_selection", "color": "#41d8ae", "style": "dashed"}, {"source": "m_sensors", "target": "t_airspeed", "color": "#4190d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu", "color": "#b1d841", "style": "dashed"}, {"source": "m_sensors", "target": "t_differential_pressure", "color": "#a141d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensors_status_imu", "color": "#a941d8", "style": "dashed"}, {"source": "m_airship_att_control", "target": "t_vehicle_torque_setpoint", "color": "#d84167", "style": "dashed"}, {"source": "m_airship_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#6c41d8", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_torque_setpoint", "color": "#d84167", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#6c41d8", "style": "dashed"}, {"source": "m_dataman", "target": "t_dataman_response", "color": "#5541d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_flaps_setpoint", "color": "#b841d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_launch_detection_status", "color": "#4162d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_flight_phase_estimation", "color": "#415ad8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_tecs_status", "color": "#41d880", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_spoilers_setpoint", "color": "#41b6d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#41d8bd", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_position_controller_status", "color": "#d841d2", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_landing_gear", "color": "#4171d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_position_controller_landing_status", "color": "#b141d8", "style": "dashed"}, {"source": "m_internal_combustion_engine_control", "target": "t_internal_combustion_engine_control", "color": "#92d841", "style": "dashed"}, {"source": "m_load_mon", "target": "t_cpuload", "color": "#41d879", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_global_position", "color": "#d89c41", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_local_position", "color": "#41bdd8", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_estimator_status", "color": "#9ad841", "style": "dashed"}, {"source": "m_battery_status", "target": "t_battery_status", "color": "#7441d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command", "color": "#d8ca41", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_attitude_status", "color": "#d86e41", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_controls", "color": "#4152d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command_ack", "color": "#41d890", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_set_attitude", "color": "#41d897", "style": "dashed"}, {"source": "m_logger", "target": "t_logger_status", "color": "#4197d8", "style": "dashed"}, {"source": "m_logger", "target": "t_vehicle_command_ack", "color": "#41d890", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_tiltrotor_extra_controls", "color": "#419fd8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_flaps_setpoint", "color": "#b841d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vtol_vehicle_status", "color": "#d84176", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_torque_setpoint", "color": "#d84167", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_spoilers_setpoint", "color": "#41b6d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_command_ack", "color": "#41d890", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#6c41d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_attitude_setpoint", "color": "#d841a4", "style": "dashed"}, {"source": "m_airspeed_selector", "target": "t_airspeed_validated", "color": "#41d8a7", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command", "color": "#d8ca41", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_led_control", "color": "#5dd841", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_sensor_correction", "color": "#55d841", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command_ack", "color": "#41d890", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_trajectory_setpoint", "color": "#41d871", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_constraints", "color": "#6cd841", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_takeoff_status", "color": "#d8ac41", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#41d8bd", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#d841a4", "style": "dashed"}, {"source": "m_rc_update", "target": "t_manual_control_switches", "color": "#d8d241", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_attitude_setpoint", "color": "#64d841", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_steering_setpoint", "color": "#d8c341", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_position_setpoint", "color": "#8a41d8", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_throttle_setpoint", "color": "#41d888", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_velocity_setpoint", "color": "#74d841", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_rate_setpoint", "color": "#d841ca", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_actuator_motors", "color": "#d8419c", "style": "dashed"}, {"source": "m_attitude_estimator_q", "target": "t_vehicle_attitude", "color": "#d88541", "style": "dashed"}, {"source": "t_vehicle_status", "target": "m_i2c_launcher", "color": "#d84150", "style": "normal"}, {"source": "t_sensor_gyro_fifo", "target": "m_microbench", "color": "#d841bb", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_microbench", "color": "#41bdd8", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_microbench", "color": "#41d843", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_microbench", "color": "#c841d8", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_failure", "color": "#41d890", "style": "normal"}, {"source": "t_dataman_response", "target": "m_tests", "color": "#5541d8", "style": "normal"}, {"source": "t_input_rc", "target": "m_tests", "color": "#d88d41", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_io_bypass_control", "color": "#d84195", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_rc_input", "color": "#d8ca41", "style": "normal"}, {"source": "t_adc_report", "target": "m_rc_input", "color": "#41d869", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_rc_input", "color": "#d84150", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rc_input", "color": "#d88541", "style": "normal"}, {"source": "t_battery_status", "target": "m_rc_input", "color": "#7441d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dshot", "color": "#d8ca41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_dshot", "color": "#41c5d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_dshot", "color": "#4152d8", "style": "normal"}, {"source": "t_gripper", "target": "m_dshot", "color": "#9241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_dshot", "color": "#92d841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_dshot", "color": "#d741d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_dshot", "color": "#83d841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_dshot", "color": "#41d8b6", "style": "normal"}, {"source": "t_landing_gear", "target": "m_dshot", "color": "#4171d8", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_dshot", "color": "#9a41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_dshot", "color": "#d8419c", "style": "normal"}, {"source": "t_sensor_uwb", "target": "m_uwb_sr150", "color": "#d86741", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_tap_esc", "color": "#d8ca41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_tap_esc", "color": "#41c5d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_tap_esc", "color": "#4152d8", "style": "normal"}, {"source": "t_led_control", "target": "m_tap_esc", "color": "#5dd841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_tap_esc", "color": "#d8419c", "style": "normal"}, {"source": "t_gripper", "target": "m_tap_esc", "color": "#9241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_tap_esc", "color": "#92d841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_tap_esc", "color": "#d741d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_tap_esc", "color": "#83d841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_tap_esc", "color": "#41d8b6", "style": "normal"}, {"source": "t_landing_gear", "target": "m_tap_esc", "color": "#4171d8", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_tap_esc", "color": "#9a41d8", "style": "normal"}, {"source": "t_tune_control", "target": "m_tap_esc", "color": "#d84841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pca9685_pwm_out", "color": "#d8ca41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pca9685_pwm_out", "color": "#41c5d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pca9685_pwm_out", "color": "#4152d8", "style": "normal"}, {"source": "t_gripper", "target": "m_pca9685_pwm_out", "color": "#9241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_pca9685_pwm_out", "color": "#92d841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pca9685_pwm_out", "color": "#d741d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pca9685_pwm_out", "color": "#83d841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pca9685_pwm_out", "color": "#41d8b6", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pca9685_pwm_out", "color": "#4171d8", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pca9685_pwm_out", "color": "#9a41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pca9685_pwm_out", "color": "#d8419c", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_septentrio", "color": "#d7d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_roboclaw", "color": "#83d841", "style": "normal"}, {"source": "t_battery_status", "target": "m_bst", "color": "#7441d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_bst", "color": "#d88541", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_frsky_telemetry", "color": "#d89c41", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_frsky_telemetry", "color": "#41bdd8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_frsky_telemetry", "color": "#d84150", "style": "normal"}, {"source": "t_battery_status", "target": "m_frsky_telemetry", "color": "#7441d8", "style": "normal"}, {"source": "t_airspeed", "target": "m_hott_telemetry", "color": "#4190d8", "style": "normal"}, {"source": "t_home_position", "target": "m_hott_telemetry", "color": "#d87e41", "style": "normal"}, {"source": "t_battery_status", "target": "m_hott_telemetry", "color": "#7441d8", "style": "normal"}, {"source": "t_esc_status", "target": "m_hott_telemetry", "color": "#41d8c5", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_sagetech_mxs", "color": "#41d8d4", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_sagetech_mxs", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_sagetech_mxs", "color": "#d84150", "style": "normal"}, {"source": "t_transponder_report", "target": "m_sagetech_mxs", "color": "#d85741", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_px4io", "color": "#d8ca41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_px4io", "color": "#41c5d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_px4io", "color": "#4152d8", "style": "normal"}, {"source": "t_gripper", "target": "m_px4io", "color": "#9241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_px4io", "color": "#92d841", "style": "normal"}, {"source": "t_px4io_status", "target": "m_px4io", "color": "#46d841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_px4io", "color": "#d741d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_px4io", "color": "#83d841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_px4io", "color": "#41d8b6", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_px4io", "color": "#d84150", "style": "normal"}, {"source": "t_landing_gear", "target": "m_px4io", "color": "#4171d8", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_px4io", "color": "#9a41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_px4io", "color": "#d8419c", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_linux_pwm_out", "color": "#d8ca41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_linux_pwm_out", "color": "#41c5d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_linux_pwm_out", "color": "#4152d8", "style": "normal"}, {"source": "t_gripper", "target": "m_linux_pwm_out", "color": "#9241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_linux_pwm_out", "color": "#92d841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_linux_pwm_out", "color": "#d741d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_linux_pwm_out", "color": "#83d841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_linux_pwm_out", "color": "#41d8b6", "style": "normal"}, {"source": "t_landing_gear", "target": "m_linux_pwm_out", "color": "#4171d8", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_linux_pwm_out", "color": "#9a41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_linux_pwm_out", "color": "#d8419c", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_gps", "color": "#d7d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_cdcacm_autostart", "color": "#83d841", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_cyphal", "color": "#41d8d4", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_cyphal", "color": "#83d841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_cyphal", "color": "#41d8b6", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_safety_button", "color": "#83d841", "style": "normal"}, {"source": "t_tune_control", "target": "m_tone_alarm", "color": "#d84841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pm_selector_auterion", "color": "#83d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina238", "color": "#d84150", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina238", "color": "#415ad8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_voxlpm", "color": "#d84150", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_voxlpm", "color": "#415ad8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina220", "color": "#d84150", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina220", "color": "#415ad8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina226", "color": "#d84150", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina226", "color": "#415ad8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina228", "color": "#d84150", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina228", "color": "#415ad8", "style": "normal"}, {"source": "t_pps_capture", "target": "m_camera_capture", "color": "#d87641", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_capture", "color": "#d8ca41", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_pps_capture", "color": "#41d8d4", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_msp_osd", "color": "#d89c41", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_msp_osd", "color": "#41d8a7", "style": "normal"}, {"source": "t_home_position", "target": "m_msp_osd", "color": "#d87e41", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_msp_osd", "color": "#41bdd8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_msp_osd", "color": "#d88541", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_msp_osd", "color": "#d84150", "style": "normal"}, {"source": "t_input_rc", "target": "m_msp_osd", "color": "#d88d41", "style": "normal"}, {"source": "t_battery_status", "target": "m_msp_osd", "color": "#7441d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_atxxxx", "color": "#d84150", "style": "normal"}, {"source": "t_battery_status", "target": "m_atxxxx", "color": "#7441d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_atxxxx", "color": "#41bdd8", "style": "normal"}, {"source": "t_adc_report", "target": "m_board_adc", "color": "#41d869", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_uavcan", "color": "#d8ca41", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_uavcan", "color": "#d7d841", "style": "normal"}, {"source": "t_gripper", "target": "m_uavcan", "color": "#9241d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_uavcan", "color": "#41d8b6", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_uavcan", "color": "#d84141", "style": "normal"}, {"source": "t_tune_control", "target": "m_uavcan", "color": "#d84841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_uavcan", "color": "#9a41d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uavcan", "color": "#41c5d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uavcan", "color": "#41bdd8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_uavcan", "color": "#92d841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_uavcan", "color": "#d741d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_uavcan", "color": "#83d841", "style": "normal"}, {"source": "t_home_position", "target": "m_uavcan", "color": "#d87e41", "style": "normal"}, {"source": "t_led_control", "target": "m_uavcan", "color": "#5dd841", "style": "normal"}, {"source": "t_landing_gear", "target": "m_uavcan", "color": "#4171d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_uavcan", "color": "#d8419c", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_uavcan", "color": "#4152d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_uavcan", "color": "#d84150", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_voxl_esc", "color": "#d8ca41", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_voxl_esc", "color": "#415ad8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_voxl_esc", "color": "#41c5d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_voxl_esc", "color": "#41d89f", "style": "normal"}, {"source": "t_led_control", "target": "m_voxl_esc", "color": "#5dd841", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_voxl_esc", "color": "#4152d8", "style": "normal"}, {"source": "t_gripper", "target": "m_voxl_esc", "color": "#9241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_voxl_esc", "color": "#92d841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_voxl_esc", "color": "#d741d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_voxl_esc", "color": "#83d841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_voxl_esc", "color": "#41d8b6", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_voxl_esc", "color": "#d84150", "style": "normal"}, {"source": "t_landing_gear", "target": "m_voxl_esc", "color": "#4171d8", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_voxl_esc", "color": "#9a41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_voxl_esc", "color": "#d8419c", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_vertiq_io", "color": "#d8ca41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_vertiq_io", "color": "#41c5d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_vertiq_io", "color": "#4152d8", "style": "normal"}, {"source": "t_gripper", "target": "m_vertiq_io", "color": "#9241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_vertiq_io", "color": "#92d841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_vertiq_io", "color": "#d741d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_vertiq_io", "color": "#83d841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_vertiq_io", "color": "#41d8b6", "style": "normal"}, {"source": "t_landing_gear", "target": "m_vertiq_io", "color": "#4171d8", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_vertiq_io", "color": "#9a41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_vertiq_io", "color": "#d8419c", "style": "normal"}, {"source": "t_pps_capture", "target": "m_camera_trigger", "color": "#d87641", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_trigger", "color": "#d8ca41", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_camera_trigger", "color": "#41bdd8", "style": "normal"}, {"source": "t_distance_sensor_mode_change_request", "target": "m_lightware_laser_i2c", "color": "#5d41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_lightware_laser_i2c", "color": "#d84150", "style": "normal"}, {"source": "t_pwm_input", "target": "m_ll40ls_pwm", "color": "#d89541", "style": "normal"}, {"source": "t_obstacle_distance", "target": "m_lightware_sf45_serial", "color": "#41d85a", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_lightware_sf45_serial", "color": "#d88541", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_lightware_sf45_serial", "color": "#8341d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out", "color": "#d8ca41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out", "color": "#41c5d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out", "color": "#4152d8", "style": "normal"}, {"source": "t_gripper", "target": "m_pwm_out", "color": "#9241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_pwm_out", "color": "#92d841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out", "color": "#d741d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out", "color": "#83d841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out", "color": "#41d8b6", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out", "color": "#4171d8", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out", "color": "#9a41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out", "color": "#d8419c", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_heater", "color": "#6441d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_voxl2_io", "color": "#d8ca41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_voxl2_io", "color": "#41c5d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_voxl2_io", "color": "#4152d8", "style": "normal"}, {"source": "t_gripper", "target": "m_voxl2_io", "color": "#9241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_voxl2_io", "color": "#92d841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_voxl2_io", "color": "#d741d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_voxl2_io", "color": "#83d841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_voxl2_io", "color": "#41d8b6", "style": "normal"}, {"source": "t_landing_gear", "target": "m_voxl2_io", "color": "#4171d8", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_voxl2_io", "color": "#9a41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_voxl2_io", "color": "#d8419c", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_crsf_rc", "color": "#d84150", "style": "normal"}, {"source": "t_battery_status", "target": "m_crsf_rc", "color": "#7441d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_crsf_rc", "color": "#d88541", "style": "normal"}, {"source": "t_battery_status", "target": "m_ghst_rc", "color": "#7441d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dsm_rc", "color": "#d8ca41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_dsm_rc", "color": "#d84150", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_is31fl3195", "color": "#5dd841", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled", "color": "#5dd841", "style": "normal"}, {"source": "t_led_control", "target": "m_neopixel", "color": "#5dd841", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_ncp5623c", "color": "#5dd841", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_pwm", "color": "#5dd841", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_lp5562", "color": "#5dd841", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_template_module", "color": "#41d862", "style": "normal"}, {"source": "t_rover_attitude_setpoint", "target": "m_rover_ackermann", "color": "#64d841", "style": "normal"}, {"source": "t_rover_steering_setpoint", "target": "m_rover_ackermann", "color": "#d8c341", "style": "normal"}, {"source": "t_actuator_servos", "target": "m_rover_ackermann", "color": "#4169d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_ackermann", "color": "#41c5d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_ackermann", "color": "#41d871", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_ackermann", "color": "#41d89f", "style": "normal"}, {"source": "t_rover_position_setpoint", "target": "m_rover_ackermann", "color": "#8a41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_ackermann", "color": "#41bdd8", "style": "normal"}, {"source": "t_rover_throttle_setpoint", "target": "m_rover_ackermann", "color": "#41d888", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_ackermann", "color": "#d88541", "style": "normal"}, {"source": "t_rover_velocity_setpoint", "target": "m_rover_ackermann", "color": "#74d841", "style": "normal"}, {"source": "t_rover_rate_setpoint", "target": "m_rover_ackermann", "color": "#d841ca", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_rover_ackermann", "color": "#d8419c", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_ackermann", "color": "#41d84b", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_ekf2", "color": "#d8ca41", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_ekf2", "color": "#4162d8", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_ekf2", "color": "#41d862", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_ekf2", "color": "#8341d8", "style": "normal"}, {"source": "t_airspeed", "target": "m_ekf2", "color": "#4190d8", "style": "normal"}, {"source": "t_aux_global_position", "target": "m_ekf2", "color": "#d841b3", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_ekf2", "color": "#4143d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_ekf2", "color": "#41d8a7", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_ekf2", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ekf2", "color": "#d84150", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_ekf2", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_ekf2", "color": "#b1d841", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_ekf2", "color": "#a941d8", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_ekf2", "color": "#41a7d8", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_uxrce_dds_client", "color": "#41d890", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_payload_deliverer", "color": "#d8ca41", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_landing_target_estimator", "color": "#d88541", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_landing_target_estimator", "color": "#41bdd8", "style": "normal"}, {"source": "t_irlock_report", "target": "m_landing_target_estimator", "color": "#4641d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_autotune_attitude_control", "color": "#d84150", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_autotune_attitude_control", "color": "#41c5d8", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_land_detector", "color": "#41d4d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_land_detector", "color": "#41d84b", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_land_detector", "color": "#4162d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_land_detector", "color": "#d89c41", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_land_detector", "color": "#41d871", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_land_detector", "color": "#41d89f", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_land_detector", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_land_detector", "color": "#41bdd8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_land_detector", "color": "#41d8a7", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_land_detector", "color": "#83d841", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_land_detector", "color": "#d8ac41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_land_detector", "color": "#d84150", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_land_detector", "color": "#6c41d8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_gyro_calibration", "color": "#55d841", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_gyro_calibration", "color": "#6441d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_gyro_calibration", "color": "#d84150", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_calibration", "color": "#c841d8", "style": "normal"}, {"source": "t_actuator_controls_status_0", "target": "m_mc_autotune_attitude_control", "color": "#41d8cd", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#41c5d8", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#d84167", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_autotune_attitude_control", "color": "#d84150", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_att_control", "color": "#41c5d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_att_control", "color": "#41d89f", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_fw_att_control", "color": "#414bd8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_att_control", "color": "#41bdd8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_att_control", "color": "#41d8a7", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_att_control", "color": "#d88541", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_att_control", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_att_control", "color": "#d84150", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_fw_att_control", "color": "#d841a4", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_att_control", "color": "#41c5d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_att_control", "color": "#41d89f", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mc_att_control", "color": "#414bd8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_att_control", "color": "#41bdd8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_att_control", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_att_control", "color": "#d84150", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mc_att_control", "color": "#d88541", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mc_att_control", "color": "#d841a4", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_fw_rate_control", "color": "#41d852", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_rate_control", "color": "#41c5d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_rate_control", "color": "#41d89f", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_rate_control", "color": "#41d8a7", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_rate_control", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_rate_control", "color": "#d84150", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_fw_rate_control", "color": "#4179d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_fw_rate_control", "color": "#7441d8", "style": "normal"}, {"source": "t_rover_attitude_setpoint", "target": "m_rover_mecanum", "color": "#64d841", "style": "normal"}, {"source": "t_rover_steering_setpoint", "target": "m_rover_mecanum", "color": "#d8c341", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_mecanum", "color": "#41c5d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_mecanum", "color": "#41d871", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_mecanum", "color": "#41d89f", "style": "normal"}, {"source": "t_rover_position_setpoint", "target": "m_rover_mecanum", "color": "#8a41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_mecanum", "color": "#41bdd8", "style": "normal"}, {"source": "t_rover_throttle_setpoint", "target": "m_rover_mecanum", "color": "#41d888", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_mecanum", "color": "#d88541", "style": "normal"}, {"source": "t_rover_velocity_setpoint", "target": "m_rover_mecanum", "color": "#74d841", "style": "normal"}, {"source": "t_rover_rate_setpoint", "target": "m_rover_mecanum", "color": "#d841ca", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_rover_mecanum", "color": "#d8419c", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_mecanum", "color": "#41d84b", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_camera_feedback", "color": "#d89c41", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_camera_feedback", "color": "#d88541", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_camera_feedback", "color": "#d85041", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_camera_feedback", "color": "#d86e41", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_agp_sim", "color": "#d84185", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_baro_sim", "color": "#d84185", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_simulator_sih", "color": "#d84148", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_simulator_sih", "color": "#d84195", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_battery_simulator", "color": "#d8ca41", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_battery_simulator", "color": "#415ad8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_simulator", "color": "#d84150", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out_sim", "color": "#d8ca41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out_sim", "color": "#41c5d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out_sim", "color": "#4152d8", "style": "normal"}, {"source": "t_gripper", "target": "m_pwm_out_sim", "color": "#9241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_pwm_out_sim", "color": "#92d841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out_sim", "color": "#d741d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out_sim", "color": "#83d841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out_sim", "color": "#41d8b6", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out_sim", "color": "#4171d8", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out_sim", "color": "#9a41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out_sim", "color": "#d8419c", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_sensor_airspeed_sim", "color": "#4180d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_sensor_airspeed_sim", "color": "#d88541", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_airspeed_sim", "color": "#d84185", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gz_bridge", "color": "#d8ca41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gz_bridge", "color": "#41c5d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_gz_bridge", "color": "#4152d8", "style": "normal"}, {"source": "t_gripper", "target": "m_gz_bridge", "color": "#9241d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_gz_bridge", "color": "#92d841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_gz_bridge", "color": "#d741d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_gz_bridge", "color": "#83d841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_gz_bridge", "color": "#41d8b6", "style": "normal"}, {"source": "t_landing_gear", "target": "m_gz_bridge", "color": "#4171d8", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_gz_bridge", "color": "#9a41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_gz_bridge", "color": "#d8419c", "style": "normal"}, {"source": "t_gimbal_device_set_attitude", "target": "m_gz_bridge", "color": "#41d897", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_simulator_mavlink", "color": "#d8ca41", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_simulator_mavlink", "color": "#d84148", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_simulator_mavlink", "color": "#d84150", "style": "normal"}, {"source": "t_battery_status", "target": "m_simulator_mavlink", "color": "#7441d8", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_simulator_mavlink", "color": "#d84195", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#4180d8", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#d84185", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_sensor_mag_sim", "color": "#4dd841", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_mag_sim", "color": "#d84185", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_navigator", "color": "#d8ca41", "style": "normal"}, {"source": "t_rtl_status", "target": "m_navigator", "color": "#41cdd8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_navigator", "color": "#d89c41", "style": "normal"}, {"source": "t_wind", "target": "m_navigator", "color": "#a1d841", "style": "normal"}, {"source": "t_transponder_report", "target": "m_navigator", "color": "#d85741", "style": "normal"}, {"source": "t_home_position", "target": "m_navigator", "color": "#d87e41", "style": "normal"}, {"source": "t_geofence_status", "target": "m_navigator", "color": "#d85f41", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_navigator", "color": "#4143d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_navigator", "color": "#41bdd8", "style": "normal"}, {"source": "t_dataman_response", "target": "m_navigator", "color": "#5541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_navigator", "color": "#d84150", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_navigator", "color": "#d84141", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_navigator", "color": "#d841d2", "style": "normal"}, {"source": "t_mission", "target": "m_navigator", "color": "#d8bb41", "style": "normal"}, {"source": "t_position_controller_landing_status", "target": "m_navigator", "color": "#b141d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_send_event", "color": "#d8ca41", "style": "normal"}, {"source": "t_cpuload", "target": "m_send_event", "color": "#41d879", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_send_event", "color": "#d84150", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_send_event", "color": "#41d843", "style": "normal"}, {"source": "t_battery_status", "target": "m_send_event", "color": "#7441d8", "style": "normal"}, {"source": "t_power_button_state", "target": "m_commander", "color": "#7b41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_commander", "color": "#d8ca41", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_commander", "color": "#8341d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_commander", "color": "#d8d241", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_commander", "color": "#41d8a7", "style": "normal"}, {"source": "t_estimator_status_flags", "target": "m_commander", "color": "#cfd841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_commander", "color": "#41d8ae", "style": "normal"}, {"source": "t_safety_button", "target": "m_commander", "color": "#c8d841", "style": "normal"}, {"source": "t_iridiumsbd_status", "target": "m_commander", "color": "#c0d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_commander", "color": "#d84141", "style": "normal"}, {"source": "t_action_request", "target": "m_commander", "color": "#b8d841", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_commander", "color": "#a141d8", "style": "normal"}, {"source": "t_esc_status", "target": "m_commander", "color": "#41d8c5", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_commander", "color": "#a941d8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_commander", "color": "#a9d841", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_commander", "color": "#41d8d4", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_commander", "color": "#41d4d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_commander", "color": "#41c5d8", "style": "normal"}, {"source": "t_wind", "target": "m_commander", "color": "#a1d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_commander", "color": "#41bdd8", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_commander", "color": "#c041d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_commander", "color": "#c841d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_commander", "color": "#8ad841", "style": "normal"}, {"source": "t_estimator_status", "target": "m_commander", "color": "#9ad841", "style": "normal"}, {"source": "t_geofence_result", "target": "m_commander", "color": "#cf41d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_commander", "color": "#83d841", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_commander", "color": "#7bd841", "style": "normal"}, {"source": "t_system_power", "target": "m_commander", "color": "#41aed8", "style": "normal"}, {"source": "t_logger_status", "target": "m_commander", "color": "#4197d8", "style": "normal"}, {"source": "t_home_position", "target": "m_commander", "color": "#d87e41", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_commander", "color": "#55d841", "style": "normal"}, {"source": "t_mission_result", "target": "m_commander", "color": "#d841ac", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_commander", "color": "#d88541", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_commander", "color": "#d8419c", "style": "normal"}, {"source": "t_navigator_status", "target": "m_commander", "color": "#d8418d", "style": "normal"}, {"source": "t_pwm_input", "target": "m_commander", "color": "#d89541", "style": "normal"}, {"source": "t_vtol_vehicle_status", "target": "m_commander", "color": "#d84176", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_commander", "color": "#d89c41", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_commander", "color": "#d8415f", "style": "normal"}, {"source": "t_cpuload", "target": "m_commander", "color": "#41d879", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_commander", "color": "#6441d8", "style": "normal"}, {"source": "t_event", "target": "m_commander", "color": "#d8a441", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_commander", "color": "#d84150", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_commander", "color": "#41d890", "style": "normal"}, {"source": "t_battery_status", "target": "m_commander", "color": "#7441d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_esc_battery", "color": "#d84150", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_esc_battery", "color": "#415ad8", "style": "normal"}, {"source": "t_esc_status", "target": "m_esc_battery", "color": "#41d8c5", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_gyro_fft", "color": "#41d4d8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_gyro_fft", "color": "#41d8ae", "style": "normal"}, {"source": "t_sensor_gyro_fifo", "target": "m_gyro_fft", "color": "#d841bb", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_fft", "color": "#c841d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_flight_mode_manager", "color": "#d8ca41", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_flight_mode_manager", "color": "#41d89f", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_flight_mode_manager", "color": "#41bdd8", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_flight_mode_manager", "color": "#d8ac41", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_flight_mode_manager", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_flight_mode_manager", "color": "#d84150", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_flight_mode_manager", "color": "#d841a4", "style": "normal"}, {"source": "t_action_request", "target": "m_manual_control", "color": "#b8d841", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_manual_control", "color": "#d8d241", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_manual_control", "color": "#d84150", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_manual_control", "color": "#41c5d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_uuv_pos_control", "color": "#41d871", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_pos_control", "color": "#41d89f", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uuv_pos_control", "color": "#41bdd8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_pos_control", "color": "#d88541", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_pos_control", "color": "#41c5d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_rover_pos_control", "color": "#d89c41", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_pos_control", "color": "#41d871", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_pos_control", "color": "#41d89f", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_pos_control", "color": "#41bdd8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_pos_control", "color": "#d88541", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_rover_pos_control", "color": "#d841a4", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_pos_control", "color": "#41d84b", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mc_rate_control", "color": "#41d852", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_rate_control", "color": "#41c5d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_rate_control", "color": "#41d89f", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_rate_control", "color": "#d84141", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_mc_rate_control", "color": "#4179d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_rate_control", "color": "#d84150", "style": "normal"}, {"source": "t_battery_status", "target": "m_mc_rate_control", "color": "#7441d8", "style": "normal"}, {"source": "t_tiltrotor_extra_controls", "target": "m_control_allocator", "color": "#419fd8", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_control_allocator", "color": "#b841d8", "style": "normal"}, {"source": "t_rpm", "target": "m_control_allocator", "color": "#d8416e", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_control_allocator", "color": "#d84167", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_control_allocator", "color": "#41d89f", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_control_allocator", "color": "#d8d241", "style": "normal"}, {"source": "t_failure_detector_status", "target": "m_control_allocator", "color": "#d84157", "style": "normal"}, {"source": "t_spoilers_setpoint", "target": "m_control_allocator", "color": "#41b6d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_control_allocator", "color": "#d84150", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_control_allocator", "color": "#6c41d8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_sensors", "color": "#a9d841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_sensors", "color": "#41d4d8", "style": "normal"}, {"source": "t_adc_report", "target": "m_sensors", "color": "#41d869", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_sensors", "color": "#41d89f", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_sensors", "color": "#41d8ae", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_sensors", "color": "#55d841", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_sensors", "color": "#8ad841", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_sensors", "color": "#c841d8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_sensors", "color": "#6441d8", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_sensors", "color": "#b1d841", "style": "normal"}, {"source": "t_sensor_optical_flow", "target": "m_sensors", "color": "#d841c3", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_sensors", "color": "#a141d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airship_att_control", "color": "#d84150", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_airship_att_control", "color": "#41c5d8", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_uuv_att_control", "color": "#41d852", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uuv_att_control", "color": "#41c5d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_att_control", "color": "#41d89f", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_att_control", "color": "#d88541", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_uuv_att_control", "color": "#d841a4", "style": "normal"}, {"source": "t_dataman_request", "target": "m_dataman", "color": "#4188d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_fw_pos_control", "color": "#d8ca41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_pos_control", "color": "#41c5d8", "style": "normal"}, {"source": "t_wind", "target": "m_fw_pos_control", "color": "#a1d841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_fw_pos_control", "color": "#d89c41", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_fw_pos_control", "color": "#41d871", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_pos_control", "color": "#41d89f", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_pos_control", "color": "#41d8a7", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_pos_control", "color": "#41bdd8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_pos_control", "color": "#d88541", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_pos_control", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_pos_control", "color": "#d84150", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_fw_pos_control", "color": "#41d84b", "style": "normal"}, {"source": "t_rpm", "target": "m_internal_combustion_engine_control", "color": "#d8416e", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_internal_combustion_engine_control", "color": "#d8419c", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_internal_combustion_engine_control", "color": "#d84150", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_internal_combustion_engine_control", "color": "#41c5d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_local_position_estimator", "color": "#d8ca41", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_local_position_estimator", "color": "#41d862", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_local_position_estimator", "color": "#8341d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_local_position_estimator", "color": "#41bdd8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_local_position_estimator", "color": "#4143d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_local_position_estimator", "color": "#83d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_local_position_estimator", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_local_position_estimator", "color": "#d88541", "style": "normal"}, {"source": "t_vehicle_mocap_odometry", "target": "m_local_position_estimator", "color": "#d8b341", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_local_position_estimator", "color": "#41a7d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_battery_status", "color": "#415ad8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_status", "color": "#d84150", "style": "normal"}, {"source": "t_adc_report", "target": "m_battery_status", "color": "#41d869", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_gimbal", "color": "#41d84b", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gimbal", "color": "#d8ca41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gimbal", "color": "#41c5d8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_gimbal", "color": "#d86e41", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_gimbal", "color": "#d89c41", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_gimbal", "color": "#4d41d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_gimbal", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_gimbal", "color": "#d88541", "style": "normal"}, {"source": "t_vehicle_roi", "target": "m_gimbal", "color": "#d8417e", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_logger", "color": "#d8ca41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_logger", "color": "#41c5d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_logger", "color": "#d84150", "style": "normal"}, {"source": "t_battery_status", "target": "m_logger", "color": "#7441d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_vtol_att_control", "color": "#d8ca41", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_vtol_att_control", "color": "#41d89f", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_vtol_att_control", "color": "#41d8a7", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_vtol_att_control", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_vtol_att_control", "color": "#41d8bd", "style": "normal"}, {"source": "t_action_request", "target": "m_vtol_att_control", "color": "#b8d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_vtol_att_control", "color": "#41bdd8", "style": "normal"}, {"source": "t_home_position", "target": "m_vtol_att_control", "color": "#d87e41", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_vtol_att_control", "color": "#d88541", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_vtol_att_control", "color": "#41d84b", "style": "normal"}, {"source": "t_tecs_status", "target": "m_vtol_att_control", "color": "#41d880", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_vtol_att_control", "color": "#d84150", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_airspeed_selector", "color": "#4162d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_airspeed_selector", "color": "#415ad8", "style": "normal"}, {"source": "t_airspeed", "target": "m_airspeed_selector", "color": "#4190d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_airspeed_selector", "color": "#41bdd8", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_airspeed_selector", "color": "#c041d8", "style": "normal"}, {"source": "t_estimator_status", "target": "m_airspeed_selector", "color": "#9ad841", "style": "normal"}, {"source": "t_tecs_status", "target": "m_airspeed_selector", "color": "#41d880", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_airspeed_selector", "color": "#6c41d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_airspeed_selector", "color": "#d88541", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_airspeed_selector", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airspeed_selector", "color": "#d84150", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_temperature_compensation", "color": "#d8ca41", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_temperature_compensation", "color": "#8ad841", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_temperature_compensation", "color": "#c841d8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_temperature_compensation", "color": "#6441d8", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_temperature_compensation", "color": "#7bd841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_mc_pos_control", "color": "#41d871", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_pos_control", "color": "#41d89f", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_pos_control", "color": "#41bdd8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_pos_control", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_constraints", "target": "m_mc_pos_control", "color": "#6cd841", "style": "normal"}, {"source": "t_input_rc", "target": "m_rc_update", "color": "#d88d41", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_rc_update", "color": "#d8d241", "style": "normal"}, {"source": "t_rover_attitude_setpoint", "target": "m_rover_differential", "color": "#64d841", "style": "normal"}, {"source": "t_rover_steering_setpoint", "target": "m_rover_differential", "color": "#d8c341", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_differential", "color": "#41c5d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_differential", "color": "#41d871", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_differential", "color": "#41d89f", "style": "normal"}, {"source": "t_rover_position_setpoint", "target": "m_rover_differential", "color": "#8a41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_differential", "color": "#41bdd8", "style": "normal"}, {"source": "t_rover_throttle_setpoint", "target": "m_rover_differential", "color": "#41d888", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_differential", "color": "#d88541", "style": "normal"}, {"source": "t_rover_velocity_setpoint", "target": "m_rover_differential", "color": "#74d841", "style": "normal"}, {"source": "t_rover_rate_setpoint", "target": "m_rover_differential", "color": "#d841ca", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_rover_differential", "color": "#d8419c", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_differential", "color": "#41d84b", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_attitude_estimator_q", "color": "#41d862", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_attitude_estimator_q", "color": "#41bdd8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_attitude_estimator_q", "color": "#d88541", "style": "normal"}, {"source": "t_vehicle_mocap_odometry", "target": "m_attitude_estimator_q", "color": "#d8b341", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_attitude_estimator_q", "color": "#41a7d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mag_bias_estimator", "color": "#d84150", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mag_bias_estimator", "color": "#8ad841", "style": "normal"}]} \ No newline at end of file +{"nodes": [{"id": "m_internal_combustion_engine_control", "name": "internal_combustion_engine_control", "type": "Module", "color": "#666666"}, {"id": "m_fw_autotune_attitude_control", "name": "fw_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_autotune_attitude_control", "name": "mc_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_landing_target_estimator", "name": "landing_target_estimator", "type": "Module", "color": "#666666"}, {"id": "m_local_position_estimator", "name": "local_position_estimator", "type": "Module", "color": "#666666"}, {"id": "m_temperature_compensation", "name": "temperature_compensation", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_serial", "name": "lightware_laser_serial", "type": "Module", "color": "#666666"}, {"id": "m_system_power_simulator", "name": "system_power_simulator", "type": "Module", "color": "#666666"}, {"id": "m_lightware_sf45_serial", "name": "lightware_sf45_serial", "type": "Module", "color": "#666666"}, {"id": "m_pm_selector_auterion", "name": "pm_selector_auterion", "type": "Module", "color": "#666666"}, {"id": "m_attitude_estimator_q", "name": "attitude_estimator_q", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_i2c", "name": "lightware_laser_i2c", "type": "Module", "color": "#666666"}, {"id": "m_sensor_airspeed_sim", "name": "sensor_airspeed_sim", "type": "Module", "color": "#666666"}, {"id": "m_flight_mode_manager", "name": "flight_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_airship_att_control", "name": "airship_att_control", "type": "Module", "color": "#666666"}, {"id": "m_fw_lat_lon_control", "name": "fw_lat_lon_control", "type": "Module", "color": "#666666"}, {"id": "m_rover_differential", "name": "rover_differential", "type": "Module", "color": "#666666"}, {"id": "m_mag_bias_estimator", "name": "mag_bias_estimator", "type": "Module", "color": "#666666"}, {"id": "m_io_bypass_control", "name": "io_bypass_control", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_is31fl3195", "name": "rgbled_is31fl3195", "type": "Module", "color": "#666666"}, {"id": "m_payload_deliverer", "name": "payload_deliverer", "type": "Module", "color": "#666666"}, {"id": "m_battery_simulator", "name": "battery_simulator", "type": "Module", "color": "#666666"}, {"id": "m_simulator_mavlink", "name": "simulator_mavlink", "type": "Module", "color": "#666666"}, {"id": "m_rover_pos_control", "name": "rover_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_control_allocator", "name": "control_allocator", "type": "Module", "color": "#666666"}, {"id": "m_airspeed_selector", "name": "airspeed_selector", "type": "Module", "color": "#666666"}, {"id": "m_cdcacm_autostart", "name": "cdcacm_autostart", "type": "Module", "color": "#666666"}, {"id": "m_uxrce_dds_client", "name": "uxrce_dds_client", "type": "Module", "color": "#666666"}, {"id": "m_gyro_calibration", "name": "gyro_calibration", "type": "Module", "color": "#666666"}, {"id": "m_vtol_att_control", "name": "vtol_att_control", "type": "Module", "color": "#666666"}, {"id": "m_pca9685_pwm_out", "name": "pca9685_pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_frsky_telemetry", "name": "frsky_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_ncp5623c", "name": "rgbled_ncp5623c", "type": "Module", "color": "#666666"}, {"id": "m_template_module", "name": "template_module", "type": "Module", "color": "#666666"}, {"id": "m_rover_ackermann", "name": "rover_ackermann", "type": "Module", "color": "#666666"}, {"id": "m_fw_rate_control", "name": "fw_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_camera_feedback", "name": "camera_feedback", "type": "Module", "color": "#666666"}, {"id": "m_sensor_baro_sim", "name": "sensor_baro_sim", "type": "Module", "color": "#666666"}, {"id": "m_uuv_pos_control", "name": "uuv_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_rate_control", "name": "mc_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_fw_mode_manager", "name": "fw_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_uuv_att_control", "name": "uuv_att_control", "type": "Module", "color": "#666666"}, {"id": "m_hott_telemetry", "name": "hott_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_camera_capture", "name": "camera_capture", "type": "Module", "color": "#666666"}, {"id": "m_camera_trigger", "name": "camera_trigger", "type": "Module", "color": "#666666"}, {"id": "m_ulanding_radar", "name": "ulanding_radar", "type": "Module", "color": "#666666"}, {"id": "m_fw_att_control", "name": "fw_att_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_att_control", "name": "mc_att_control", "type": "Module", "color": "#666666"}, {"id": "m_sensor_agp_sim", "name": "sensor_agp_sim", "type": "Module", "color": "#666666"}, {"id": "m_sensor_gps_sim", "name": "sensor_gps_sim", "type": "Module", "color": "#666666"}, {"id": "m_sensor_mag_sim", "name": "sensor_mag_sim", "type": "Module", "color": "#666666"}, {"id": "m_manual_control", "name": "manual_control", "type": "Module", "color": "#666666"}, {"id": "m_battery_status", "name": "battery_status", "type": "Module", "color": "#666666"}, {"id": "m_mc_pos_control", "name": "mc_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_actuator_test", "name": "actuator_test", "type": "Module", "color": "#666666"}, {"id": "m_linux_pwm_out", "name": "linux_pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_rpm_simulator", "name": "rpm_simulator", "type": "Module", "color": "#666666"}, {"id": "m_safety_button", "name": "safety_button", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_lp5562", "name": "rgbled_lp5562", "type": "Module", "color": "#666666"}, {"id": "m_land_detector", "name": "land_detector", "type": "Module", "color": "#666666"}, {"id": "m_rover_mecanum", "name": "rover_mecanum", "type": "Module", "color": "#666666"}, {"id": "m_simulator_sih", "name": "simulator_sih", "type": "Module", "color": "#666666"}, {"id": "m_i2c_launcher", "name": "i2c_launcher", "type": "Module", "color": "#666666"}, {"id": "m_tune_control", "name": "tune_control", "type": "Module", "color": "#666666"}, {"id": "m_ets_airspeed", "name": "ets_airspeed", "type": "Module", "color": "#666666"}, {"id": "m_sagetech_mxs", "name": "sagetech_mxs", "type": "Module", "color": "#666666"}, {"id": "m_led_control", "name": "led_control", "type": "Module", "color": "#666666"}, {"id": "m_mpu9250_i2c", "name": "mpu9250_i2c", "type": "Module", "color": "#666666"}, {"id": "m_pps_capture", "name": "pps_capture", "type": "Module", "color": "#666666"}, {"id": "m_lsm9ds1_mag", "name": "lsm9ds1_mag", "type": "Module", "color": "#666666"}, {"id": "m_rpm_capture", "name": "rpm_capture", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out_sim", "name": "pwm_out_sim", "type": "Module", "color": "#666666"}, {"id": "m_esc_battery", "name": "esc_battery", "type": "Module", "color": "#666666"}, {"id": "m_microbench", "name": "microbench", "type": "Module", "color": "#666666"}, {"id": "m_septentrio", "name": "septentrio", "type": "Module", "color": "#666666"}, {"id": "m_iridiumsbd", "name": "iridiumsbd", "type": "Module", "color": "#666666"}, {"id": "m_iam20680hp", "name": "iam20680hp", "type": "Module", "color": "#666666"}, {"id": "m_bmi088_i2c", "name": "bmi088_i2c", "type": "Module", "color": "#666666"}, {"id": "m_tone_alarm", "name": "tone_alarm", "type": "Module", "color": "#666666"}, {"id": "m_batt_smbus", "name": "batt_smbus", "type": "Module", "color": "#666666"}, {"id": "m_teraranger", "name": "teraranger", "type": "Module", "color": "#666666"}, {"id": "m_ll40ls_pwm", "name": "ll40ls_pwm", "type": "Module", "color": "#666666"}, {"id": "m_leddar_one", "name": "leddar_one", "type": "Module", "color": "#666666"}, {"id": "m_uavcannode", "name": "uavcannode", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_pwm", "name": "rgbled_pwm", "type": "Module", "color": "#666666"}, {"id": "m_send_event", "name": "send_event", "type": "Module", "color": "#666666"}, {"id": "m_pwm_input", "name": "pwm_input", "type": "Module", "color": "#666666"}, {"id": "m_rpi_rc_in", "name": "rpi_rc_in", "type": "Module", "color": "#666666"}, {"id": "m_uwb_sr150", "name": "uwb_sr150", "type": "Module", "color": "#666666"}, {"id": "m_ms5525dso", "name": "ms5525dso", "type": "Module", "color": "#666666"}, {"id": "m_tattu_can", "name": "tattu_can", "type": "Module", "color": "#666666"}, {"id": "m_icm20608g", "name": "icm20608g", "type": "Module", "color": "#666666"}, {"id": "m_icm42670p", "name": "icm42670p", "type": "Module", "color": "#666666"}, {"id": "m_icm40609d", "name": "icm40609d", "type": "Module", "color": "#666666"}, {"id": "m_icm42688p", "name": "icm42688p", "type": "Module", "color": "#666666"}, {"id": "m_adis16507", "name": "adis16507", "type": "Module", "color": "#666666"}, {"id": "m_adis16477", "name": "adis16477", "type": "Module", "color": "#666666"}, {"id": "m_adis16448", "name": "adis16448", "type": "Module", "color": "#666666"}, {"id": "m_adis16470", "name": "adis16470", "type": "Module", "color": "#666666"}, {"id": "m_adis16497", "name": "adis16497", "type": "Module", "color": "#666666"}, {"id": "m_mmc5983ma", "name": "mmc5983ma", "type": "Module", "color": "#666666"}, {"id": "m_lsm303agr", "name": "lsm303agr", "type": "Module", "color": "#666666"}, {"id": "m_board_adc", "name": "board_adc", "type": "Module", "color": "#666666"}, {"id": "m_vertiq_io", "name": "vertiq_io", "type": "Module", "color": "#666666"}, {"id": "m_thoneflow", "name": "thoneflow", "type": "Module", "color": "#666666"}, {"id": "m_vectornav", "name": "vectornav", "type": "Module", "color": "#666666"}, {"id": "m_tcbp001ta", "name": "tcbp001ta", "type": "Module", "color": "#666666"}, {"id": "m_mpl3115a2", "name": "mpl3115a2", "type": "Module", "color": "#666666"}, {"id": "m_gz_bridge", "name": "gz_bridge", "type": "Module", "color": "#666666"}, {"id": "m_navigator", "name": "navigator", "type": "Module", "color": "#666666"}, {"id": "m_commander", "name": "commander", "type": "Module", "color": "#666666"}, {"id": "m_rc_update", "name": "rc_update", "type": "Module", "color": "#666666"}, {"id": "m_rc_input", "name": "rc_input", "type": "Module", "color": "#666666"}, {"id": "m_roboclaw", "name": "roboclaw", "type": "Module", "color": "#666666"}, {"id": "m_ms4525do", "name": "ms4525do", "type": "Module", "color": "#666666"}, {"id": "m_icm20649", "name": "icm20649", "type": "Module", "color": "#666666"}, {"id": "m_icm20948", "name": "icm20948", "type": "Module", "color": "#666666"}, {"id": "m_icm45686", "name": "icm45686", "type": "Module", "color": "#666666"}, {"id": "m_iim42652", "name": "iim42652", "type": "Module", "color": "#666666"}, {"id": "m_icm20602", "name": "icm20602", "type": "Module", "color": "#666666"}, {"id": "m_icm42605", "name": "icm42605", "type": "Module", "color": "#666666"}, {"id": "m_icm20689", "name": "icm20689", "type": "Module", "color": "#666666"}, {"id": "m_iim42653", "name": "iim42653", "type": "Module", "color": "#666666"}, {"id": "m_vcm1193l", "name": "vcm1193l", "type": "Module", "color": "#666666"}, {"id": "m_qmc5883l", "name": "qmc5883l", "type": "Module", "color": "#666666"}, {"id": "m_voxl_esc", "name": "voxl_esc", "type": "Module", "color": "#666666"}, {"id": "m_mappydot", "name": "mappydot", "type": "Module", "color": "#666666"}, {"id": "m_icp101xx", "name": "icp101xx", "type": "Module", "color": "#666666"}, {"id": "m_icp201xx", "name": "icp201xx", "type": "Module", "color": "#666666"}, {"id": "m_voxl2_io", "name": "voxl2_io", "type": "Module", "color": "#666666"}, {"id": "m_neopixel", "name": "neopixel", "type": "Module", "color": "#666666"}, {"id": "m_gyro_fft", "name": "gyro_fft", "type": "Module", "color": "#666666"}, {"id": "m_load_mon", "name": "load_mon", "type": "Module", "color": "#666666"}, {"id": "m_failure", "name": "failure", "type": "Module", "color": "#666666"}, {"id": "m_tap_esc", "name": "tap_esc", "type": "Module", "color": "#666666"}, {"id": "m_asp5033", "name": "asp5033", "type": "Module", "color": "#666666"}, {"id": "m_mpu6500", "name": "mpu6500", "type": "Module", "color": "#666666"}, {"id": "m_mpu9250", "name": "mpu9250", "type": "Module", "color": "#666666"}, {"id": "m_mpu6000", "name": "mpu6000", "type": "Module", "color": "#666666"}, {"id": "m_lsm303d", "name": "lsm303d", "type": "Module", "color": "#666666"}, {"id": "m_lsm9ds1", "name": "lsm9ds1", "type": "Module", "color": "#666666"}, {"id": "m_pcf8583", "name": "pcf8583", "type": "Module", "color": "#666666"}, {"id": "m_msp_osd", "name": "msp_osd", "type": "Module", "color": "#666666"}, {"id": "m_ak09916", "name": "ak09916", "type": "Module", "color": "#666666"}, {"id": "m_iis2mdc", "name": "iis2mdc", "type": "Module", "color": "#666666"}, {"id": "m_ist8308", "name": "ist8308", "type": "Module", "color": "#666666"}, {"id": "m_ist8310", "name": "ist8310", "type": "Module", "color": "#666666"}, {"id": "m_hmc5883", "name": "hmc5883", "type": "Module", "color": "#666666"}, {"id": "m_lis3mdl", "name": "lis3mdl", "type": "Module", "color": "#666666"}, {"id": "m_ads1115", "name": "ads1115", "type": "Module", "color": "#666666"}, {"id": "m_gy_us42", "name": "gy_us42", "type": "Module", "color": "#666666"}, {"id": "m_cm8jl65", "name": "cm8jl65", "type": "Module", "color": "#666666"}, {"id": "m_vl53l0x", "name": "vl53l0x", "type": "Module", "color": "#666666"}, {"id": "m_afbrs50", "name": "afbrs50", "type": "Module", "color": "#666666"}, {"id": "m_vl53l1x", "name": "vl53l1x", "type": "Module", "color": "#666666"}, {"id": "m_tf02pro", "name": "tf02pro", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out", "name": "pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_paw3902", "name": "paw3902", "type": "Module", "color": "#666666"}, {"id": "m_paa3905", "name": "paa3905", "type": "Module", "color": "#666666"}, {"id": "m_px4flow", "name": "px4flow", "type": "Module", "color": "#666666"}, {"id": "m_pmw3901", "name": "pmw3901", "type": "Module", "color": "#666666"}, {"id": "m_mpc2520", "name": "mpc2520", "type": "Module", "color": "#666666"}, {"id": "m_lps22hb", "name": "lps22hb", "type": "Module", "color": "#666666"}, {"id": "m_lps33hw", "name": "lps33hw", "type": "Module", "color": "#666666"}, {"id": "m_crsf_rc", "name": "crsf_rc", "type": "Module", "color": "#666666"}, {"id": "m_ghst_rc", "name": "ghst_rc", "type": "Module", "color": "#666666"}, {"id": "m_sbus_rc", "name": "sbus_rc", "type": "Module", "color": "#666666"}, {"id": "m_sensors", "name": "sensors", "type": "Module", "color": "#666666"}, {"id": "m_dataman", "name": "dataman", "type": "Module", "color": "#666666"}, {"id": "m_batmon", "name": "batmon", "type": "Module", "color": "#666666"}, {"id": "m_ms4515", "name": "ms4515", "type": "Module", "color": "#666666"}, {"id": "m_l3gd20", "name": "l3gd20", "type": "Module", "color": "#666666"}, {"id": "m_bmi085", "name": "bmi085", "type": "Module", "color": "#666666"}, {"id": "m_bmi055", "name": "bmi055", "type": "Module", "color": "#666666"}, {"id": "m_bmi270", "name": "bmi270", "type": "Module", "color": "#666666"}, {"id": "m_bmi088", "name": "bmi088", "type": "Module", "color": "#666666"}, {"id": "m_sch16t", "name": "sch16t", "type": "Module", "color": "#666666"}, {"id": "m_cyphal", "name": "cyphal", "type": "Module", "color": "#666666"}, {"id": "m_ina238", "name": "ina238", "type": "Module", "color": "#666666"}, {"id": "m_voxlpm", "name": "voxlpm", "type": "Module", "color": "#666666"}, {"id": "m_ina220", "name": "ina220", "type": "Module", "color": "#666666"}, {"id": "m_ina226", "name": "ina226", "type": "Module", "color": "#666666"}, {"id": "m_ina228", "name": "ina228", "type": "Module", "color": "#666666"}, {"id": "m_irlock", "name": "irlock", "type": "Module", "color": "#666666"}, {"id": "m_atxxxx", "name": "atxxxx", "type": "Module", "color": "#666666"}, {"id": "m_ak8963", "name": "ak8963", "type": "Module", "color": "#666666"}, {"id": "m_bmm150", "name": "bmm150", "type": "Module", "color": "#666666"}, {"id": "m_bmm350", "name": "bmm350", "type": "Module", "color": "#666666"}, {"id": "m_rm3100", "name": "rm3100", "type": "Module", "color": "#666666"}, {"id": "m_uavcan", "name": "uavcan", "type": "Module", "color": "#666666"}, {"id": "m_pga460", "name": "pga460", "type": "Module", "color": "#666666"}, {"id": "m_tfmini", "name": "tfmini", "type": "Module", "color": "#666666"}, {"id": "m_ll40ls", "name": "ll40ls", "type": "Module", "color": "#666666"}, {"id": "m_mb12xx", "name": "mb12xx", "type": "Module", "color": "#666666"}, {"id": "m_bmp581", "name": "bmp581", "type": "Module", "color": "#666666"}, {"id": "m_ms5611", "name": "ms5611", "type": "Module", "color": "#666666"}, {"id": "m_bmp280", "name": "bmp280", "type": "Module", "color": "#666666"}, {"id": "m_dps310", "name": "dps310", "type": "Module", "color": "#666666"}, {"id": "m_bmp388", "name": "bmp388", "type": "Module", "color": "#666666"}, {"id": "m_lps25h", "name": "lps25h", "type": "Module", "color": "#666666"}, {"id": "m_ms5837", "name": "ms5837", "type": "Module", "color": "#666666"}, {"id": "m_heater", "name": "heater", "type": "Module", "color": "#666666"}, {"id": "m_dsm_rc", "name": "dsm_rc", "type": "Module", "color": "#666666"}, {"id": "m_rgbled", "name": "rgbled", "type": "Module", "color": "#666666"}, {"id": "m_gimbal", "name": "gimbal", "type": "Module", "color": "#666666"}, {"id": "m_logger", "name": "logger", "type": "Module", "color": "#666666"}, {"id": "m_tests", "name": "tests", "type": "Module", "color": "#666666"}, {"id": "m_dshot", "name": "dshot", "type": "Module", "color": "#666666"}, {"id": "m_sdp3x", "name": "sdp3x", "type": "Module", "color": "#666666"}, {"id": "m_px4io", "name": "px4io", "type": "Module", "color": "#666666"}, {"id": "m_srf02", "name": "srf02", "type": "Module", "color": "#666666"}, {"id": "m_srf05", "name": "srf05", "type": "Module", "color": "#666666"}, {"id": "m_spl06", "name": "spl06", "type": "Module", "color": "#666666"}, {"id": "m_spa06", "name": "spa06", "type": "Module", "color": "#666666"}, {"id": "m_auav", "name": "auav", "type": "Module", "color": "#666666"}, {"id": "m_ekf2", "name": "ekf2", "type": "Module", "color": "#666666"}, {"id": "m_bst", "name": "bst", "type": "Module", "color": "#666666"}, {"id": "m_gps", "name": "gps", "type": "Module", "color": "#666666"}, {"id": "t_distance_sensor_mode_change_request", "name": "distance_sensor_mode_change_request", "type": "topic", "color": "#d89941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position_groundtruth", "name": "vehicle_global_position_groundtruth", "type": "topic", "color": "#d8bd41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_groundtruth", "name": "vehicle_local_position_groundtruth", "type": "topic", "color": "#d8a741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_landing_status", "name": "position_controller_landing_status", "type": "topic", "color": "#41d863", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_internal_combustion_engine_control", "name": "internal_combustion_engine_control", "type": "topic", "color": "#41d880", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_longitudinal_control_configuration", "name": "longitudinal_control_configuration", "type": "topic", "color": "#d84199", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_autotune_attitude_control_status", "name": "autotune_attitude_control_status", "type": "topic", "color": "#41d854", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_longitudinal_setpoint", "name": "fixed_wing_longitudinal_setpoint", "type": "topic", "color": "#416ad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_setpoint", "name": "vehicle_local_position_setpoint", "type": "topic", "color": "#9441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_lateral_control_configuration", "name": "lateral_control_configuration", "type": "topic", "color": "#d841cc", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_attitude_status", "name": "gimbal_device_attitude_status", "type": "topic", "color": "#d841a7", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_groundtruth", "name": "vehicle_attitude_groundtruth", "type": "topic", "color": "#415bd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_lateral_setpoint", "name": "fixed_wing_lateral_setpoint", "type": "topic", "color": "#4341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_controls_status_0", "name": "actuator_controls_status_0", "type": "topic", "color": "#a2d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorControlsStatus.msg"}, {"id": "t_gimbal_device_set_attitude", "name": "gimbal_device_set_attitude", "type": "topic", "color": "#4163d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_status", "name": "position_controller_status", "type": "topic", "color": "#7641d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_setpoint_triplet", "name": "position_setpoint_triplet", "type": "topic", "color": "#b1d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_setpoint", "name": "vehicle_attitude_setpoint", "type": "topic", "color": "#41d89e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_information", "name": "gimbal_device_information", "type": "topic", "color": "#41d8d1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_runway_control", "name": "fixed_wing_runway_control", "type": "topic", "color": "#419ed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_selector_status", "name": "estimator_selector_status", "type": "topic", "color": "#418fd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tiltrotor_extra_controls", "name": "tiltrotor_extra_controls", "type": "topic", "color": "#76d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_control_allocator_status", "name": "control_allocator_status", "type": "topic", "color": "#d841bd", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_visual_odometry", "name": "vehicle_visual_odometry", "type": "topic", "color": "#d84141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_position_setpoint", "name": "rover_position_setpoint", "type": "topic", "color": "#d84841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flight_phase_estimation", "name": "flight_phase_estimation", "type": "topic", "color": "#d8c541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_launch_detection_status", "name": "launch_detection_status", "type": "topic", "color": "#ced841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_torque_setpoint", "name": "vehicle_torque_setpoint", "type": "topic", "color": "#85d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleTorqueSetpoint.msg"}, {"id": "t_rover_steering_setpoint", "name": "rover_steering_setpoint", "type": "topic", "color": "#68d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_switches", "name": "manual_control_switches", "type": "topic", "color": "#41d86a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_attitude_setpoint", "name": "rover_attitude_setpoint", "type": "topic", "color": "#41d896", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position", "name": "vehicle_global_position", "type": "topic", "color": "#4196d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_thrust_setpoint", "name": "vehicle_thrust_setpoint", "type": "topic", "color": "#6841d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleThrustSetpoint.msg"}, {"id": "t_manual_control_setpoint", "name": "manual_control_setpoint", "type": "topic", "color": "#7e41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_velocity_setpoint", "name": "rover_velocity_setpoint", "type": "topic", "color": "#ce41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_throttle_setpoint", "name": "rover_throttle_setpoint", "type": "topic", "color": "#d641d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failure_detector_status", "name": "failure_detector_status", "type": "topic", "color": "#d84183", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status_flags", "name": "estimator_status_flags", "type": "topic", "color": "#41d871", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_mocap_odometry", "name": "vehicle_mocap_odometry", "type": "topic", "color": "#41d8ac", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position", "name": "vehicle_local_position", "type": "topic", "color": "#a241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_rates_setpoint", "name": "vehicle_rates_setpoint", "type": "topic", "color": "#d84191", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_land_detected", "name": "vehicle_land_detected", "type": "topic", "color": "#d8b641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_sensor_bias", "name": "estimator_sensor_bias", "type": "topic", "color": "#6fd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_differential_pressure", "name": "differential_pressure", "type": "topic", "color": "#41d8b4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_control_mode", "name": "vehicle_control_mode", "type": "topic", "color": "#aad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs_sim", "name": "actuator_outputs_sim", "type": "topic", "color": "#41d84d", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_actuator_servos_trim", "name": "actuator_servos_trim", "type": "topic", "color": "#b141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_optical_flow", "name": "sensor_optical_flow", "type": "topic", "color": "#d84f41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_rate_setpoint", "name": "rover_rate_setpoint", "type": "topic", "color": "#d8d341", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command_ack", "name": "vehicle_command_ack", "type": "topic", "color": "#43d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_aux_global_position", "name": "aux_global_position", "type": "topic", "color": "#41d8a5", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource2d.msg"}, {"id": "t_vtol_vehicle_status", "name": "vtol_vehicle_status", "type": "topic", "color": "#41d1d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_trajectory_setpoint", "name": "trajectory_setpoint", "type": "topic", "color": "#c741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_target_pose", "name": "landing_target_pose", "type": "topic", "color": "#d8416d", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_constraints", "name": "vehicle_constraints", "type": "topic", "color": "#d84148", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_power_button_state", "name": "power_button_state", "type": "topic", "color": "#d87b41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed_validated", "name": "airspeed_validated", "type": "topic", "color": "#d8cc41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensors_status_imu", "name": "sensors_status_imu", "type": "topic", "color": "#60d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_transponder_report", "name": "transponder_report", "type": "topic", "color": "#4ad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear_wheel", "name": "landing_gear_wheel", "type": "topic", "color": "#41d887", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu_status", "name": "vehicle_imu_status", "type": "topic", "color": "#41d88f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_iridiumsbd_status", "name": "iridiumsbd_status", "type": "topic", "color": "#d8a041", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_obstacle_distance", "name": "obstacle_distance", "type": "topic", "color": "#41cad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ObstacleDistance.msg"}, {"id": "t_spoilers_setpoint", "name": "spoilers_setpoint", "type": "topic", "color": "#4179d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_sensor_correction", "name": "sensor_correction", "type": "topic", "color": "#d841c5", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_time_estimate", "name": "rtl_time_estimate", "type": "topic", "color": "#d84165", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status", "name": "estimator_status", "type": "topic", "color": "#d86d41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_navigator_status", "name": "navigator_status", "type": "topic", "color": "#d88341", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_response", "name": "dataman_response", "type": "topic", "color": "#d88a41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude", "name": "vehicle_attitude", "type": "topic", "color": "#41d8d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_selection", "name": "sensor_selection", "type": "topic", "color": "#d841af", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs", "name": "actuator_outputs", "type": "topic", "color": "#d8418a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_sensor_gyro_fifo", "name": "sensor_gyro_fifo", "type": "topic", "color": "#d8415e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor", "name": "distance_sensor", "type": "topic", "color": "#d86541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_combined", "name": "sensor_combined", "type": "topic", "color": "#c0d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_result", "name": "geofence_result", "type": "topic", "color": "#b8d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_status", "name": "geofence_status", "type": "topic", "color": "#59d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_controls", "name": "gimbal_controls", "type": "topic", "color": "#41d845", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gps_inject_data", "name": "gps_inject_data", "type": "topic", "color": "#41d8bb", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_motors", "name": "actuator_motors", "type": "topic", "color": "#4187d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_servos", "name": "actuator_servos", "type": "topic", "color": "#4180d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command", "name": "vehicle_command", "type": "topic", "color": "#8541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_request", "name": "dataman_request", "type": "topic", "color": "#d841d3", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failsafe_flags", "name": "failsafe_flags", "type": "topic", "color": "#d85741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_status", "name": "vehicle_status", "type": "topic", "color": "#c7d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_armed", "name": "actuator_armed", "type": "topic", "color": "#9bd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_action_request", "name": "action_request", "type": "topic", "color": "#41d85b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_takeoff_status", "name": "takeoff_status", "type": "topic", "color": "#41bbd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_battery_status", "name": "battery_status", "type": "topic", "color": "#4171d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission_result", "name": "mission_result", "type": "topic", "color": "#4154d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flaps_setpoint", "name": "flaps_setpoint", "type": "topic", "color": "#5241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_camera_trigger", "name": "camera_trigger", "type": "topic", "color": "#d8417b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_safety_button", "name": "safety_button", "type": "topic", "color": "#d89141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_irlock_report", "name": "irlock_report", "type": "topic", "color": "#7ed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_home_position", "name": "home_position", "type": "topic", "color": "#414dd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_logger_status", "name": "logger_status", "type": "topic", "color": "#d841b6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_test", "name": "actuator_test", "type": "topic", "color": "#d841a0", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tune_control", "name": "tune_control", "type": "topic", "color": "#41d879", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_px4io_status", "name": "px4io_status", "type": "topic", "color": "#41d8ca", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_accel", "name": "sensor_accel", "type": "topic", "color": "#41a5d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear", "name": "landing_gear", "type": "topic", "color": "#4145d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_system_power", "name": "system_power", "type": "topic", "color": "#d84157", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_roi", "name": "vehicle_roi", "type": "topic", "color": "#d87441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_pps_capture", "name": "pps_capture", "type": "topic", "color": "#8cd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu", "name": "vehicle_imu", "type": "topic", "color": "#41acd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_led_control", "name": "led_control", "type": "topic", "color": "#5941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_baro", "name": "sensor_baro", "type": "topic", "color": "#6041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro", "name": "sensor_gyro", "type": "topic", "color": "#aa41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tecs_status", "name": "tecs_status", "type": "topic", "color": "#c041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gps", "name": "sensor_gps", "type": "topic", "color": "#94d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/SensorGps.msg"}, {"id": "t_rtl_status", "name": "rtl_status", "type": "topic", "color": "#41c2d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_adc_report", "name": "adc_report", "type": "topic", "color": "#41b4d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_esc_status", "name": "esc_status", "type": "topic", "color": "#6f41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_uwb", "name": "sensor_uwb", "type": "topic", "color": "#b841d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_mag", "name": "sensor_mag", "type": "topic", "color": "#d8414f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_pwm_input", "name": "pwm_input", "type": "topic", "color": "#52d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed", "name": "airspeed", "type": "topic", "color": "#d8af41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource1d.msg"}, {"id": "t_input_rc", "name": "input_rc", "type": "topic", "color": "#d6d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission", "name": "mission", "type": "topic", "color": "#d85e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gripper", "name": "gripper", "type": "topic", "color": "#41d8c2", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_cpuload", "name": "cpuload", "type": "topic", "color": "#4a41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_event", "name": "event", "type": "topic", "color": "#9b41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_wind", "name": "wind", "type": "topic", "color": "#8c41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/Wind.msg"}, {"id": "t_rpm", "name": "rpm", "type": "topic", "color": "#d84174", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}], "links": [{"source": "m_actuator_test", "target": "t_actuator_test", "color": "#d841a0", "style": "dashed"}, {"source": "m_led_control", "target": "t_led_control", "color": "#5941d8", "style": "dashed"}, {"source": "m_failure", "target": "t_vehicle_command", "color": "#8541d8", "style": "dashed"}, {"source": "m_tests", "target": "t_dataman_request", "color": "#d841d3", "style": "dashed"}, {"source": "m_io_bypass_control", "target": "t_actuator_outputs", "color": "#d8418a", "style": "dashed"}, {"source": "m_io_bypass_control", "target": "t_actuator_test", "color": "#d841a0", "style": "dashed"}, {"source": "m_tune_control", "target": "t_tune_control", "color": "#41d879", "style": "dashed"}, {"source": "m_pwm_input", "target": "t_pwm_input", "color": "#52d841", "style": "dashed"}, {"source": "m_rc_input", "target": "t_input_rc", "color": "#d6d841", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command_ack", "color": "#43d841", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command", "color": "#8541d8", "style": "dashed"}, {"source": "m_rpi_rc_in", "target": "t_input_rc", "color": "#d6d841", "style": "dashed"}, {"source": "m_batmon", "target": "t_battery_status", "color": "#4171d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_servos", "color": "#4180d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_vehicle_command_ack", "color": "#43d841", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_test", "color": "#d841a0", "style": "dashed"}, {"source": "m_dshot", "target": "t_esc_status", "color": "#6f41d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_armed", "color": "#9bd841", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_outputs", "color": "#d8418a", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_motors", "color": "#4187d8", "style": "dashed"}, {"source": "m_uwb_sr150", "target": "t_sensor_uwb", "color": "#b841d8", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_servos", "color": "#4180d8", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_test", "color": "#d841a0", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_esc_status", "color": "#6f41d8", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_outputs", "color": "#d8418a", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_armed", "color": "#9bd841", "style": "dashed"}, {"source": "m_tap_esc", "target": "t_actuator_motors", "color": "#4187d8", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_servos", "color": "#4180d8", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_test", "color": "#d841a0", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_armed", "color": "#9bd841", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_outputs", "color": "#d8418a", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_motors", "color": "#4187d8", "style": "dashed"}, {"source": "m_septentrio", "target": "t_sensor_gps", "color": "#94d841", "style": "dashed"}, {"source": "m_septentrio", "target": "t_gps_inject_data", "color": "#41d8bb", "style": "dashed"}, {"source": "m_iridiumsbd", "target": "t_iridiumsbd_status", "color": "#d8a041", "style": "dashed"}, {"source": "m_hott_telemetry", "target": "t_esc_status", "color": "#6f41d8", "style": "dashed"}, {"source": "m_ms4525do", "target": "t_differential_pressure", "color": "#41d8b4", "style": "dashed"}, {"source": "m_ms5525dso", "target": "t_differential_pressure", "color": "#41d8b4", "style": "dashed"}, {"source": "m_sdp3x", "target": "t_differential_pressure", "color": "#41d8b4", "style": "dashed"}, {"source": "m_asp5033", "target": "t_differential_pressure", "color": "#41d8b4", "style": "dashed"}, {"source": "m_auav", "target": "t_differential_pressure", "color": "#41d8b4", "style": "dashed"}, {"source": "m_auav", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_ms4515", "target": "t_differential_pressure", "color": "#41d8b4", "style": "dashed"}, {"source": "m_ets_airspeed", "target": "t_differential_pressure", "color": "#41d8b4", "style": "dashed"}, {"source": "m_sagetech_mxs", "target": "t_transponder_report", "color": "#4ad841", "style": "dashed"}, {"source": "m_tattu_can", "target": "t_battery_status", "color": "#4171d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_servos", "color": "#4180d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_led_control", "color": "#5941d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_tune_control", "color": "#41d879", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command_ack", "color": "#43d841", "style": "dashed"}, {"source": "m_px4io", "target": "t_safety_button", "color": "#d89141", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_test", "color": "#d841a0", "style": "dashed"}, {"source": "m_px4io", "target": "t_px4io_status", "color": "#41d8ca", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_armed", "color": "#9bd841", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_outputs", "color": "#d8418a", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_motors", "color": "#4187d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_input_rc", "color": "#d6d841", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command", "color": "#8541d8", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_icm20608g", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_icm20608g", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_icm20608g", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_mpu6500", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_mpu6500", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_mpu6500", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_icm42670p", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_icm42670p", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_icm42670p", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_icm45686", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_icm45686", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_icm45686", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_icm40609d", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_icm40609d", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_icm40609d", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_mpu9250_i2c", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_mpu9250_i2c", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_mpu9250_i2c", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_icm42605", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_icm42605", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_icm42605", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_icm20689", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_icm20689", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_icm20689", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_iam20680hp", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_iam20680hp", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_iam20680hp", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_iim42653", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_iim42653", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_iim42653", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_mpu6000", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_mpu6000", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_mpu6000", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_lsm303d", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_lsm303d", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_l3gd20", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_l3gd20", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_lsm9ds1", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_lsm9ds1", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_lsm9ds1", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_bmi085", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_bmi085", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_bmi085", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_bmi055", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_bmi055", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_bmi055", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_bmi270", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_bmi270", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_bmi270", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_bmi088_i2c", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_bmi088_i2c", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_bmi088_i2c", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_sch16t", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_sch16t", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_sch16t", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_adis16507", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_adis16507", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_adis16507", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_adis16477", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_adis16477", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_adis16477", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_adis16470", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_adis16470", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_adis16470", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_adis16497", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_adis16497", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_adis16497", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_servos", "color": "#4180d8", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_test", "color": "#d841a0", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_armed", "color": "#9bd841", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_outputs", "color": "#d8418a", "style": "dashed"}, {"source": "m_linux_pwm_out", "target": "t_actuator_motors", "color": "#4187d8", "style": "dashed"}, {"source": "m_gps", "target": "t_gps_inject_data", "color": "#41d8bb", "style": "dashed"}, {"source": "m_gps", "target": "t_sensor_gps", "color": "#94d841", "style": "dashed"}, {"source": "m_rpm_simulator", "target": "t_rpm", "color": "#d84174", "style": "dashed"}, {"source": "m_pcf8583", "target": "t_rpm", "color": "#d84174", "style": "dashed"}, {"source": "m_cyphal", "target": "t_esc_status", "color": "#6f41d8", "style": "dashed"}, {"source": "m_cyphal", "target": "t_battery_status", "color": "#4171d8", "style": "dashed"}, {"source": "m_safety_button", "target": "t_led_control", "color": "#5941d8", "style": "dashed"}, {"source": "m_safety_button", "target": "t_tune_control", "color": "#41d879", "style": "dashed"}, {"source": "m_safety_button", "target": "t_safety_button", "color": "#d89141", "style": "dashed"}, {"source": "m_safety_button", "target": "t_vehicle_command", "color": "#8541d8", "style": "dashed"}, {"source": "m_tone_alarm", "target": "t_tune_control", "color": "#41d879", "style": "dashed"}, {"source": "m_ina238", "target": "t_battery_status", "color": "#4171d8", "style": "dashed"}, {"source": "m_voxlpm", "target": "t_battery_status", "color": "#4171d8", "style": "dashed"}, {"source": "m_ina220", "target": "t_battery_status", "color": "#4171d8", "style": "dashed"}, {"source": "m_ina226", "target": "t_battery_status", "color": "#4171d8", "style": "dashed"}, {"source": "m_ina228", "target": "t_battery_status", "color": "#4171d8", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_vehicle_command_ack", "color": "#43d841", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_camera_trigger", "color": "#d8417b", "style": "dashed"}, {"source": "m_irlock", "target": "t_irlock_report", "color": "#7ed841", "style": "dashed"}, {"source": "m_pps_capture", "target": "t_pps_capture", "color": "#8cd841", "style": "dashed"}, {"source": "m_ak09916", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_ak8963", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_mmc5983ma", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_lsm303agr", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_iis2mdc", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_vcm1193l", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_ist8308", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_ist8310", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_bmm150", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_bmm350", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_qmc5883l", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_lsm9ds1_mag", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_hmc5883", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_rm3100", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_lis3mdl", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_ads1115", "target": "t_adc_report", "color": "#41b4d8", "style": "dashed"}, {"source": "m_board_adc", "target": "t_adc_report", "color": "#41b4d8", "style": "dashed"}, {"source": "m_board_adc", "target": "t_system_power", "color": "#d84157", "style": "dashed"}, {"source": "m_batt_smbus", "target": "t_battery_status", "color": "#4171d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_servos", "color": "#4180d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_led_control", "color": "#5941d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_tune_control", "color": "#41d879", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command_ack", "color": "#43d841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_safety_button", "color": "#d89141", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_test", "color": "#d841a0", "style": "dashed"}, {"source": "m_uavcan", "target": "t_esc_status", "color": "#6f41d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_armed", "color": "#9bd841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_outputs", "color": "#d8418a", "style": "dashed"}, {"source": "m_uavcan", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_motors", "color": "#4187d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command", "color": "#8541d8", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_servos", "color": "#4180d8", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_battery_status", "color": "#4171d8", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_test", "color": "#d841a0", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_esc_status", "color": "#6f41d8", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_armed", "color": "#9bd841", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_outputs", "color": "#d8418a", "style": "dashed"}, {"source": "m_voxl_esc", "target": "t_actuator_motors", "color": "#4187d8", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_servos", "color": "#4180d8", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_test", "color": "#d841a0", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_esc_status", "color": "#6f41d8", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_outputs", "color": "#d8418a", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_armed", "color": "#9bd841", "style": "dashed"}, {"source": "m_vertiq_io", "target": "t_actuator_motors", "color": "#4187d8", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command_ack", "color": "#43d841", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command", "color": "#8541d8", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_camera_trigger", "color": "#d8417b", "style": "dashed"}, {"source": "m_lightware_laser_serial", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_gy_us42", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_srf02", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_teraranger", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_lightware_laser_i2c", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_pga460", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_cm8jl65", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_vl53l0x", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_afbrs50", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_tfmini", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_ulanding_radar", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_ll40ls", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_ll40ls_pwm", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_vl53l1x", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_mb12xx", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_mappydot", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_leddar_one", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_lightware_sf45_serial", "target": "t_obstacle_distance", "color": "#41cad8", "style": "dashed"}, {"source": "m_lightware_sf45_serial", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_lightware_sf45_serial", "target": "t_vehicle_attitude", "color": "#41d8d8", "style": "dashed"}, {"source": "m_lightware_sf45_serial", "target": "t_vehicle_command", "color": "#8541d8", "style": "dashed"}, {"source": "m_srf05", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_tf02pro", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_servos", "color": "#4180d8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_test", "color": "#d841a0", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_armed", "color": "#9bd841", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_outputs", "color": "#d8418a", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_motors", "color": "#4187d8", "style": "dashed"}, {"source": "m_paw3902", "target": "t_sensor_optical_flow", "color": "#d84f41", "style": "dashed"}, {"source": "m_paa3905", "target": "t_sensor_optical_flow", "color": "#d84f41", "style": "dashed"}, {"source": "m_px4flow", "target": "t_sensor_optical_flow", "color": "#d84f41", "style": "dashed"}, {"source": "m_pmw3901", "target": "t_sensor_optical_flow", "color": "#d84f41", "style": "dashed"}, {"source": "m_thoneflow", "target": "t_sensor_optical_flow", "color": "#d84f41", "style": "dashed"}, {"source": "m_vectornav", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_vectornav", "target": "t_sensor_gps", "color": "#94d841", "style": "dashed"}, {"source": "m_vectornav", "target": "t_estimator_status", "color": "#d86d41", "style": "dashed"}, {"source": "m_vectornav", "target": "t_sensor_selection", "color": "#d841af", "style": "dashed"}, {"source": "m_bmp581", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_ms5611", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_icp101xx", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_icp201xx", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_mpc2520", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_bmp280", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_dps310", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_tcbp001ta", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_spl06", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_spa06", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_lps22hb", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_lps33hw", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_bmp388", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_mpl3115a2", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_lps25h", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_ms5837", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_rpm_capture", "target": "t_rpm", "color": "#d84174", "style": "dashed"}, {"source": "m_rpm_capture", "target": "t_pwm_input", "color": "#52d841", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_servos", "color": "#4180d8", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_test", "color": "#d841a0", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_armed", "color": "#9bd841", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_outputs", "color": "#d8418a", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_actuator_motors", "color": "#4187d8", "style": "dashed"}, {"source": "m_voxl2_io", "target": "t_input_rc", "color": "#d6d841", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_actuator_servos", "color": "#4180d8", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_led_control", "color": "#5941d8", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_tune_control", "color": "#41d879", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_gps_inject_data", "color": "#41d8bb", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_actuator_armed", "color": "#9bd841", "style": "dashed"}, {"source": "m_uavcannode", "target": "t_actuator_motors", "color": "#4187d8", "style": "dashed"}, {"source": "m_crsf_rc", "target": "t_input_rc", "color": "#d6d841", "style": "dashed"}, {"source": "m_ghst_rc", "target": "t_input_rc", "color": "#d6d841", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_input_rc", "color": "#d6d841", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_vehicle_command_ack", "color": "#43d841", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_vehicle_command", "color": "#8541d8", "style": "dashed"}, {"source": "m_sbus_rc", "target": "t_input_rc", "color": "#d6d841", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_actuator_servos", "color": "#4180d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_rate_setpoint", "color": "#d8d341", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_position_setpoint", "color": "#d84841", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_velocity_setpoint", "color": "#ce41d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_attitude_setpoint", "color": "#41d896", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_steering_setpoint", "color": "#68d841", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_throttle_setpoint", "color": "#d641d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_actuator_motors", "color": "#4187d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_position_controller_status", "color": "#7641d8", "style": "dashed"}, {"source": "m_fw_lat_lon_control", "target": "t_tecs_status", "color": "#c041d8", "style": "dashed"}, {"source": "m_fw_lat_lon_control", "target": "t_flight_phase_estimation", "color": "#d8c541", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_global_position", "color": "#4196d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_sensor_bias", "color": "#6fd841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_selector_status", "color": "#418fd8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status", "color": "#d86d41", "style": "dashed"}, {"source": "m_ekf2", "target": "t_sensor_selection", "color": "#d841af", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_command_ack", "color": "#43d841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status_flags", "color": "#41d871", "style": "dashed"}, {"source": "m_ekf2", "target": "t_wind", "color": "#8c41d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_attitude", "color": "#41d8d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_local_position", "color": "#a241d8", "style": "dashed"}, {"source": "m_uxrce_dds_client", "target": "t_vehicle_command", "color": "#8541d8", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_vehicle_command_ack", "color": "#43d841", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_vehicle_command", "color": "#8541d8", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_gripper", "color": "#41d8c2", "style": "dashed"}, {"source": "m_landing_target_estimator", "target": "t_landing_target_pose", "color": "#d8416d", "style": "dashed"}, {"source": "m_fw_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#41d854", "style": "dashed"}, {"source": "m_land_detector", "target": "t_vehicle_land_detected", "color": "#d8b641", "style": "dashed"}, {"source": "m_mc_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#41d854", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_vehicle_rates_setpoint", "color": "#d84191", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_landing_gear_wheel", "color": "#41d887", "style": "dashed"}, {"source": "m_mc_att_control", "target": "t_vehicle_rates_setpoint", "color": "#d84191", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#d84191", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_spoilers_setpoint", "color": "#4179d8", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_flaps_setpoint", "color": "#5241d8", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_rate_setpoint", "color": "#d8d341", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_position_setpoint", "color": "#d84841", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_velocity_setpoint", "color": "#ce41d8", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_attitude_setpoint", "color": "#41d896", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_steering_setpoint", "color": "#68d841", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_throttle_setpoint", "color": "#d641d8", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_actuator_motors", "color": "#4187d8", "style": "dashed"}, {"source": "m_system_power_simulator", "target": "t_system_power", "color": "#d84157", "style": "dashed"}, {"source": "m_sensor_agp_sim", "target": "t_aux_global_position", "color": "#41d8a5", "style": "dashed"}, {"source": "m_sensor_baro_sim", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_attitude_groundtruth", "color": "#415bd8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_local_position_groundtruth", "color": "#d8a741", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_airspeed", "color": "#d8af41", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_global_position_groundtruth", "color": "#d8bd41", "style": "dashed"}, {"source": "m_battery_simulator", "target": "t_vehicle_command_ack", "color": "#43d841", "style": "dashed"}, {"source": "m_battery_simulator", "target": "t_battery_status", "color": "#4171d8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_servos", "color": "#4180d8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs_sim", "color": "#41d84d", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_test", "color": "#d841a0", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_armed", "color": "#9bd841", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs", "color": "#d8418a", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_motors", "color": "#4187d8", "style": "dashed"}, {"source": "m_sensor_airspeed_sim", "target": "t_differential_pressure", "color": "#41d8b4", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_obstacle_distance", "color": "#41cad8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_visual_odometry", "color": "#d84141", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_optical_flow", "color": "#d84f41", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_distance_sensor", "color": "#d86541", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_motors", "color": "#4187d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_servos", "color": "#4180d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_attitude_groundtruth", "color": "#415bd8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_gimbal_device_attitude_status", "color": "#d841a7", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_command_ack", "color": "#43d841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_test", "color": "#d841a0", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_local_position_groundtruth", "color": "#d8a741", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_global_position_groundtruth", "color": "#d8bd41", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_esc_status", "color": "#6f41d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_outputs", "color": "#d8418a", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_differential_pressure", "color": "#41d8b4", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_armed", "color": "#9bd841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_gps", "color": "#94d841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_gimbal_device_information", "color": "#41d8d1", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_gyro", "color": "#aa41d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_visual_odometry", "color": "#d84141", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_optical_flow", "color": "#d84f41", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_accel", "color": "#41a5d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_attitude_groundtruth", "color": "#415bd8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_command_ack", "color": "#43d841", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_local_position_groundtruth", "color": "#d8a741", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_global_position_groundtruth", "color": "#d8bd41", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_baro", "color": "#6041d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_esc_status", "color": "#6f41d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_input_rc", "color": "#d6d841", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_rpm", "color": "#d84174", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_mocap_odometry", "color": "#41d8ac", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_differential_pressure", "color": "#41d8b4", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_gyro_fifo", "color": "#d8415e", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_irlock_report", "color": "#7ed841", "style": "dashed"}, {"source": "m_sensor_gps_sim", "target": "t_sensor_gps", "color": "#94d841", "style": "dashed"}, {"source": "m_sensor_mag_sim", "target": "t_sensor_mag", "color": "#d8414f", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_status", "color": "#41c2d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission", "color": "#d85e41", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_global_position", "color": "#4196d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_dataman_request", "color": "#d841d3", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_roi", "color": "#d87441", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_status", "color": "#59d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission_result", "color": "#4154d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_navigator_status", "color": "#d88341", "style": "dashed"}, {"source": "m_navigator", "target": "t_transponder_report", "color": "#4ad841", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command_ack", "color": "#43d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_home_position", "color": "#414dd8", "style": "dashed"}, {"source": "m_navigator", "target": "t_distance_sensor_mode_change_request", "color": "#d89941", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_land_detected", "color": "#d8b641", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command", "color": "#8541d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_status", "color": "#c7d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_result", "color": "#b8d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_time_estimate", "color": "#d84165", "style": "dashed"}, {"source": "m_navigator", "target": "t_position_setpoint_triplet", "color": "#b1d841", "style": "dashed"}, {"source": "m_send_event", "target": "t_led_control", "color": "#5941d8", "style": "dashed"}, {"source": "m_send_event", "target": "t_tune_control", "color": "#41d879", "style": "dashed"}, {"source": "m_send_event", "target": "t_vehicle_command_ack", "color": "#43d841", "style": "dashed"}, {"source": "m_commander", "target": "t_led_control", "color": "#5941d8", "style": "dashed"}, {"source": "m_commander", "target": "t_tune_control", "color": "#41d879", "style": "dashed"}, {"source": "m_commander", "target": "t_power_button_state", "color": "#d87b41", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_control_mode", "color": "#aad841", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command_ack", "color": "#43d841", "style": "dashed"}, {"source": "m_commander", "target": "t_failsafe_flags", "color": "#d85741", "style": "dashed"}, {"source": "m_commander", "target": "t_home_position", "color": "#414dd8", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_test", "color": "#d841a0", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_armed", "color": "#9bd841", "style": "dashed"}, {"source": "m_commander", "target": "t_failure_detector_status", "color": "#d84183", "style": "dashed"}, {"source": "m_commander", "target": "t_event", "color": "#9b41d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command", "color": "#8541d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_status", "color": "#c7d841", "style": "dashed"}, {"source": "m_esc_battery", "target": "t_battery_status", "color": "#4171d8", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_landing_gear", "color": "#4145d8", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_vehicle_constraints", "color": "#d84148", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_trajectory_setpoint", "color": "#c741d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_landing_gear", "color": "#4145d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_action_request", "color": "#41d85b", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_switches", "color": "#41d86a", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_setpoint", "color": "#7e41d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_command", "color": "#8541d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_status", "color": "#c7d841", "style": "dashed"}, {"source": "m_uuv_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#41d89e", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_position_controller_status", "color": "#7641d8", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_torque_setpoint", "color": "#85d841", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#41d89e", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_thrust_setpoint", "color": "#6841d8", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#d84191", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_actuator_controls_status_0", "color": "#a2d841", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos", "color": "#4180d8", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos_trim", "color": "#b141d8", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_control_allocator_status", "color": "#d841bd", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_motors", "color": "#4187d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_combined", "color": "#c0d841", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_selection", "color": "#d841af", "style": "dashed"}, {"source": "m_sensors", "target": "t_differential_pressure", "color": "#41d8b4", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu", "color": "#41acd8", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu_status", "color": "#41d88f", "style": "dashed"}, {"source": "m_sensors", "target": "t_airspeed", "color": "#d8af41", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensors_status_imu", "color": "#60d841", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_spoilers_setpoint", "color": "#4179d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_longitudinal_setpoint", "color": "#416ad8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_runway_control", "color": "#419ed8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_landing_gear", "color": "#4145d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_lateral_setpoint", "color": "#4341d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_vehicle_local_position_setpoint", "color": "#9441d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_flaps_setpoint", "color": "#5241d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_longitudinal_control_configuration", "color": "#d84199", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_position_controller_landing_status", "color": "#41d863", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_launch_detection_status", "color": "#ced841", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_lateral_control_configuration", "color": "#d841cc", "style": "dashed"}, {"source": "m_airship_att_control", "target": "t_vehicle_torque_setpoint", "color": "#85d841", "style": "dashed"}, {"source": "m_airship_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#6841d8", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_torque_setpoint", "color": "#85d841", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#6841d8", "style": "dashed"}, {"source": "m_dataman", "target": "t_dataman_response", "color": "#d88a41", "style": "dashed"}, {"source": "m_internal_combustion_engine_control", "target": "t_internal_combustion_engine_control", "color": "#41d880", "style": "dashed"}, {"source": "m_load_mon", "target": "t_cpuload", "color": "#4a41d8", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_global_position", "color": "#4196d8", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_estimator_status", "color": "#d86d41", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_local_position", "color": "#a241d8", "style": "dashed"}, {"source": "m_battery_status", "target": "t_battery_status", "color": "#4171d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_set_attitude", "color": "#4163d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_attitude_status", "color": "#d841a7", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command_ack", "color": "#43d841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_controls", "color": "#41d845", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command", "color": "#8541d8", "style": "dashed"}, {"source": "m_logger", "target": "t_vehicle_command_ack", "color": "#43d841", "style": "dashed"}, {"source": "m_logger", "target": "t_logger_status", "color": "#d841b6", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vtol_vehicle_status", "color": "#41d1d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_spoilers_setpoint", "color": "#4179d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_command_ack", "color": "#43d841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_tiltrotor_extra_controls", "color": "#76d841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#6841d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_torque_setpoint", "color": "#85d841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_attitude_setpoint", "color": "#41d89e", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_flaps_setpoint", "color": "#5241d8", "style": "dashed"}, {"source": "m_airspeed_selector", "target": "t_airspeed_validated", "color": "#d8cc41", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_led_control", "color": "#5941d8", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command_ack", "color": "#43d841", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command", "color": "#8541d8", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_sensor_correction", "color": "#d841c5", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_takeoff_status", "color": "#41bbd8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_trajectory_setpoint", "color": "#c741d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#9441d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_constraints", "color": "#d84148", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#41d89e", "style": "dashed"}, {"source": "m_rc_update", "target": "t_manual_control_switches", "color": "#41d86a", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_rate_setpoint", "color": "#d8d341", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_position_setpoint", "color": "#d84841", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_velocity_setpoint", "color": "#ce41d8", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_attitude_setpoint", "color": "#41d896", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_steering_setpoint", "color": "#68d841", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_throttle_setpoint", "color": "#d641d8", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_actuator_motors", "color": "#4187d8", "style": "dashed"}, {"source": "m_attitude_estimator_q", "target": "t_vehicle_attitude", "color": "#41d8d8", "style": "dashed"}, {"source": "t_vehicle_status", "target": "m_i2c_launcher", "color": "#c7d841", "style": "normal"}, {"source": "t_sensor_gyro_fifo", "target": "m_microbench", "color": "#d8415e", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_microbench", "color": "#d85741", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_microbench", "color": "#aa41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_microbench", "color": "#a241d8", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_failure", "color": "#43d841", "style": "normal"}, {"source": "t_input_rc", "target": "m_tests", "color": "#d6d841", "style": "normal"}, {"source": "t_dataman_response", "target": "m_tests", "color": "#d88a41", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_io_bypass_control", "color": "#d8418a", "style": "normal"}, {"source": "t_battery_status", "target": "m_rc_input", "color": "#4171d8", "style": "normal"}, {"source": "t_adc_report", "target": "m_rc_input", "color": "#41b4d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rc_input", "color": "#41d8d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_rc_input", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_rc_input", "color": "#c7d841", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_dshot", "color": "#41d880", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_dshot", "color": "#b141d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_dshot", "color": "#41d845", "style": "normal"}, {"source": "t_gripper", "target": "m_dshot", "color": "#41d8c2", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_dshot", "color": "#41d887", "style": "normal"}, {"source": "t_landing_gear", "target": "m_dshot", "color": "#4145d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_dshot", "color": "#9bd841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_dshot", "color": "#d841a0", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_dshot", "color": "#4187d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_dshot", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dshot", "color": "#8541d8", "style": "normal"}, {"source": "t_sensor_uwb", "target": "m_uwb_sr150", "color": "#b841d8", "style": "normal"}, {"source": "t_led_control", "target": "m_tap_esc", "color": "#5941d8", "style": "normal"}, {"source": "t_tune_control", "target": "m_tap_esc", "color": "#41d879", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_tap_esc", "color": "#41d880", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_tap_esc", "color": "#b141d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_tap_esc", "color": "#41d845", "style": "normal"}, {"source": "t_gripper", "target": "m_tap_esc", "color": "#41d8c2", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_tap_esc", "color": "#41d887", "style": "normal"}, {"source": "t_landing_gear", "target": "m_tap_esc", "color": "#4145d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_tap_esc", "color": "#9bd841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_tap_esc", "color": "#d841a0", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_tap_esc", "color": "#4187d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_tap_esc", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_tap_esc", "color": "#8541d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_pca9685_pwm_out", "color": "#41d880", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pca9685_pwm_out", "color": "#b141d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pca9685_pwm_out", "color": "#41d845", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pca9685_pwm_out", "color": "#41d887", "style": "normal"}, {"source": "t_gripper", "target": "m_pca9685_pwm_out", "color": "#41d8c2", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pca9685_pwm_out", "color": "#4145d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pca9685_pwm_out", "color": "#9bd841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pca9685_pwm_out", "color": "#d841a0", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pca9685_pwm_out", "color": "#4187d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pca9685_pwm_out", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pca9685_pwm_out", "color": "#8541d8", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_septentrio", "color": "#41d8bb", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_roboclaw", "color": "#9bd841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_bst", "color": "#41d8d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_bst", "color": "#4171d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_frsky_telemetry", "color": "#4171d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_frsky_telemetry", "color": "#4196d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_frsky_telemetry", "color": "#c7d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_frsky_telemetry", "color": "#a241d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_hott_telemetry", "color": "#4171d8", "style": "normal"}, {"source": "t_home_position", "target": "m_hott_telemetry", "color": "#414dd8", "style": "normal"}, {"source": "t_esc_status", "target": "m_hott_telemetry", "color": "#6f41d8", "style": "normal"}, {"source": "t_airspeed", "target": "m_hott_telemetry", "color": "#d8af41", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_sagetech_mxs", "color": "#d8b641", "style": "normal"}, {"source": "t_transponder_report", "target": "m_sagetech_mxs", "color": "#4ad841", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_sagetech_mxs", "color": "#94d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_sagetech_mxs", "color": "#c7d841", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_px4io", "color": "#41d880", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_px4io", "color": "#b141d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_px4io", "color": "#41d845", "style": "normal"}, {"source": "t_px4io_status", "target": "m_px4io", "color": "#41d8ca", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_px4io", "color": "#9bd841", "style": "normal"}, {"source": "t_gripper", "target": "m_px4io", "color": "#41d8c2", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_px4io", "color": "#41d887", "style": "normal"}, {"source": "t_landing_gear", "target": "m_px4io", "color": "#4145d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_px4io", "color": "#d841a0", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_px4io", "color": "#4187d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_px4io", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_px4io", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_px4io", "color": "#c7d841", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_linux_pwm_out", "color": "#41d880", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_linux_pwm_out", "color": "#b141d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_linux_pwm_out", "color": "#41d845", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_linux_pwm_out", "color": "#41d887", "style": "normal"}, {"source": "t_gripper", "target": "m_linux_pwm_out", "color": "#41d8c2", "style": "normal"}, {"source": "t_landing_gear", "target": "m_linux_pwm_out", "color": "#4145d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_linux_pwm_out", "color": "#9bd841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_linux_pwm_out", "color": "#d841a0", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_linux_pwm_out", "color": "#4187d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_linux_pwm_out", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_linux_pwm_out", "color": "#8541d8", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_gps", "color": "#41d8bb", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_cdcacm_autostart", "color": "#9bd841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_cyphal", "color": "#9bd841", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_cyphal", "color": "#94d841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_cyphal", "color": "#d841a0", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_safety_button", "color": "#9bd841", "style": "normal"}, {"source": "t_tune_control", "target": "m_tone_alarm", "color": "#41d879", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pm_selector_auterion", "color": "#9bd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina238", "color": "#c7d841", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina238", "color": "#d8c541", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_voxlpm", "color": "#c7d841", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_voxlpm", "color": "#d8c541", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina220", "color": "#c7d841", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina220", "color": "#d8c541", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina226", "color": "#c7d841", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina226", "color": "#d8c541", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina228", "color": "#c7d841", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina228", "color": "#d8c541", "style": "normal"}, {"source": "t_pps_capture", "target": "m_camera_capture", "color": "#8cd841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_capture", "color": "#8541d8", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_pps_capture", "color": "#94d841", "style": "normal"}, {"source": "t_battery_status", "target": "m_msp_osd", "color": "#4171d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_msp_osd", "color": "#a241d8", "style": "normal"}, {"source": "t_home_position", "target": "m_msp_osd", "color": "#414dd8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_msp_osd", "color": "#4196d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_msp_osd", "color": "#d8cc41", "style": "normal"}, {"source": "t_input_rc", "target": "m_msp_osd", "color": "#d6d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_msp_osd", "color": "#c7d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_msp_osd", "color": "#41d8d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_atxxxx", "color": "#4171d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_atxxxx", "color": "#c7d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_atxxxx", "color": "#a241d8", "style": "normal"}, {"source": "t_adc_report", "target": "m_board_adc", "color": "#41b4d8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_uavcan", "color": "#b141d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_uavcan", "color": "#4187d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_uavcan", "color": "#41d845", "style": "normal"}, {"source": "t_home_position", "target": "m_uavcan", "color": "#414dd8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_uavcan", "color": "#d841a0", "style": "normal"}, {"source": "t_landing_gear", "target": "m_uavcan", "color": "#4145d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_uavcan", "color": "#d8b641", "style": "normal"}, {"source": "t_led_control", "target": "m_uavcan", "color": "#5941d8", "style": "normal"}, {"source": "t_tune_control", "target": "m_uavcan", "color": "#41d879", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_uavcan", "color": "#41d880", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_uavcan", "color": "#41d887", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uavcan", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_uavcan", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_uavcan", "color": "#c7d841", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_uavcan", "color": "#41d8bb", "style": "normal"}, {"source": "t_gripper", "target": "m_uavcan", "color": "#41d8c2", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_uavcan", "color": "#9bd841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uavcan", "color": "#a241d8", "style": "normal"}, {"source": "t_led_control", "target": "m_voxl_esc", "color": "#5941d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_voxl_esc", "color": "#41d880", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_voxl_esc", "color": "#b141d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_voxl_esc", "color": "#aad841", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_voxl_esc", "color": "#41d845", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_voxl_esc", "color": "#d8c541", "style": "normal"}, {"source": "t_actuator_test", "target": "m_voxl_esc", "color": "#d841a0", "style": "normal"}, {"source": "t_gripper", "target": "m_voxl_esc", "color": "#41d8c2", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_voxl_esc", "color": "#41d887", "style": "normal"}, {"source": "t_landing_gear", "target": "m_voxl_esc", "color": "#4145d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_voxl_esc", "color": "#9bd841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_voxl_esc", "color": "#4187d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_voxl_esc", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_voxl_esc", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_voxl_esc", "color": "#c7d841", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_vertiq_io", "color": "#41d880", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_vertiq_io", "color": "#b141d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_vertiq_io", "color": "#41d845", "style": "normal"}, {"source": "t_gripper", "target": "m_vertiq_io", "color": "#41d8c2", "style": "normal"}, {"source": "t_actuator_test", "target": "m_vertiq_io", "color": "#d841a0", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_vertiq_io", "color": "#41d887", "style": "normal"}, {"source": "t_landing_gear", "target": "m_vertiq_io", "color": "#4145d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_vertiq_io", "color": "#9bd841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_vertiq_io", "color": "#4187d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_vertiq_io", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_vertiq_io", "color": "#8541d8", "style": "normal"}, {"source": "t_pps_capture", "target": "m_camera_trigger", "color": "#8cd841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_trigger", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_camera_trigger", "color": "#a241d8", "style": "normal"}, {"source": "t_distance_sensor_mode_change_request", "target": "m_lightware_laser_i2c", "color": "#d89941", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_lightware_laser_i2c", "color": "#c7d841", "style": "normal"}, {"source": "t_pwm_input", "target": "m_ll40ls_pwm", "color": "#52d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_lightware_sf45_serial", "color": "#41d8d8", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_lightware_sf45_serial", "color": "#d86541", "style": "normal"}, {"source": "t_obstacle_distance", "target": "m_lightware_sf45_serial", "color": "#41cad8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_pwm_out", "color": "#41d880", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out", "color": "#b141d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out", "color": "#41d845", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out", "color": "#41d887", "style": "normal"}, {"source": "t_gripper", "target": "m_pwm_out", "color": "#41d8c2", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out", "color": "#4145d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out", "color": "#9bd841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out", "color": "#d841a0", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out", "color": "#4187d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out", "color": "#8541d8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_heater", "color": "#41a5d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_voxl2_io", "color": "#41d880", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_voxl2_io", "color": "#b141d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_voxl2_io", "color": "#41d845", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_voxl2_io", "color": "#41d887", "style": "normal"}, {"source": "t_gripper", "target": "m_voxl2_io", "color": "#41d8c2", "style": "normal"}, {"source": "t_landing_gear", "target": "m_voxl2_io", "color": "#4145d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_voxl2_io", "color": "#9bd841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_voxl2_io", "color": "#d841a0", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_voxl2_io", "color": "#4187d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_voxl2_io", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_voxl2_io", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_crsf_rc", "color": "#41d8d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_crsf_rc", "color": "#4171d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_crsf_rc", "color": "#c7d841", "style": "normal"}, {"source": "t_battery_status", "target": "m_ghst_rc", "color": "#4171d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dsm_rc", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_dsm_rc", "color": "#c7d841", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_is31fl3195", "color": "#5941d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled", "color": "#5941d8", "style": "normal"}, {"source": "t_led_control", "target": "m_neopixel", "color": "#5941d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_ncp5623c", "color": "#5941d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_pwm", "color": "#5941d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_lp5562", "color": "#5941d8", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_template_module", "color": "#c0d841", "style": "normal"}, {"source": "t_actuator_servos", "target": "m_rover_ackermann", "color": "#4180d8", "style": "normal"}, {"source": "t_rover_rate_setpoint", "target": "m_rover_ackermann", "color": "#d8d341", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_ackermann", "color": "#b1d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_ackermann", "color": "#aad841", "style": "normal"}, {"source": "t_rover_position_setpoint", "target": "m_rover_ackermann", "color": "#d84841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_ackermann", "color": "#c741d8", "style": "normal"}, {"source": "t_rover_velocity_setpoint", "target": "m_rover_ackermann", "color": "#ce41d8", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_rover_ackermann", "color": "#7641d8", "style": "normal"}, {"source": "t_rover_attitude_setpoint", "target": "m_rover_ackermann", "color": "#41d896", "style": "normal"}, {"source": "t_rover_steering_setpoint", "target": "m_rover_ackermann", "color": "#68d841", "style": "normal"}, {"source": "t_rover_throttle_setpoint", "target": "m_rover_ackermann", "color": "#d641d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_rover_ackermann", "color": "#4187d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_ackermann", "color": "#41d8d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_ackermann", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_ackermann", "color": "#a241d8", "style": "normal"}, {"source": "t_fixed_wing_longitudinal_setpoint", "target": "m_fw_lat_lon_control", "color": "#416ad8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_lat_lon_control", "color": "#a241d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_lat_lon_control", "color": "#aad841", "style": "normal"}, {"source": "t_lateral_control_configuration", "target": "m_fw_lat_lon_control", "color": "#d841cc", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_lat_lon_control", "color": "#d8cc41", "style": "normal"}, {"source": "t_fixed_wing_lateral_setpoint", "target": "m_fw_lat_lon_control", "color": "#4341d8", "style": "normal"}, {"source": "t_longitudinal_control_configuration", "target": "m_fw_lat_lon_control", "color": "#d84199", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_lat_lon_control", "color": "#d8b641", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_lat_lon_control", "color": "#c7d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_lat_lon_control", "color": "#41d8d8", "style": "normal"}, {"source": "t_wind", "target": "m_fw_lat_lon_control", "color": "#8c41d8", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_fw_lat_lon_control", "color": "#5241d8", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_ekf2", "color": "#c0d841", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_ekf2", "color": "#d8416d", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_ekf2", "color": "#d84141", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_ekf2", "color": "#d841af", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_ekf2", "color": "#41acd8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_ekf2", "color": "#d8cc41", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_ekf2", "color": "#d86541", "style": "normal"}, {"source": "t_airspeed", "target": "m_ekf2", "color": "#d8af41", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_ekf2", "color": "#60d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_ekf2", "color": "#d8b641", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_ekf2", "color": "#ced841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_ekf2", "color": "#8541d8", "style": "normal"}, {"source": "t_aux_global_position", "target": "m_ekf2", "color": "#41d8a5", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ekf2", "color": "#c7d841", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_uxrce_dds_client", "color": "#43d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_payload_deliverer", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_landing_target_estimator", "color": "#41d8d8", "style": "normal"}, {"source": "t_irlock_report", "target": "m_landing_target_estimator", "color": "#7ed841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_landing_target_estimator", "color": "#a241d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_autotune_attitude_control", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_autotune_attitude_control", "color": "#c7d841", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_land_detector", "color": "#41bbd8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_land_detector", "color": "#b1d841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_land_detector", "color": "#d841af", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_land_detector", "color": "#aad841", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_land_detector", "color": "#6841d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_land_detector", "color": "#9bd841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_land_detector", "color": "#41d88f", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_land_detector", "color": "#d8cc41", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_land_detector", "color": "#c741d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_land_detector", "color": "#4196d8", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_land_detector", "color": "#ced841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_land_detector", "color": "#c7d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_land_detector", "color": "#a241d8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_gyro_calibration", "color": "#41a5d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_calibration", "color": "#aa41d8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_gyro_calibration", "color": "#d841c5", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_gyro_calibration", "color": "#c7d841", "style": "normal"}, {"source": "t_actuator_controls_status_0", "target": "m_mc_autotune_attitude_control", "color": "#a2d841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#85d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_autotune_attitude_control", "color": "#c7d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_att_control", "color": "#aad841", "style": "normal"}, {"source": "t_fixed_wing_runway_control", "target": "m_fw_att_control", "color": "#419ed8", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_fw_att_control", "color": "#41d854", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_att_control", "color": "#d8cc41", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_att_control", "color": "#d8b641", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_att_control", "color": "#41d8d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_att_control", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_fw_att_control", "color": "#41d89e", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_att_control", "color": "#c7d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_att_control", "color": "#a241d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_att_control", "color": "#aad841", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mc_att_control", "color": "#41d854", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_att_control", "color": "#d8b641", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mc_att_control", "color": "#41d8d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_att_control", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mc_att_control", "color": "#41d89e", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_att_control", "color": "#c7d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_att_control", "color": "#a241d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_fw_rate_control", "color": "#4171d8", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_fw_rate_control", "color": "#d841bd", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_rate_control", "color": "#aad841", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_fw_rate_control", "color": "#d84191", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_rate_control", "color": "#d8cc41", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_rate_control", "color": "#d8b641", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_rate_control", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_rate_control", "color": "#c7d841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_mecanum", "color": "#b1d841", "style": "normal"}, {"source": "t_rover_rate_setpoint", "target": "m_rover_mecanum", "color": "#d8d341", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_mecanum", "color": "#aad841", "style": "normal"}, {"source": "t_rover_position_setpoint", "target": "m_rover_mecanum", "color": "#d84841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_mecanum", "color": "#c741d8", "style": "normal"}, {"source": "t_rover_velocity_setpoint", "target": "m_rover_mecanum", "color": "#ce41d8", "style": "normal"}, {"source": "t_rover_attitude_setpoint", "target": "m_rover_mecanum", "color": "#41d896", "style": "normal"}, {"source": "t_rover_steering_setpoint", "target": "m_rover_mecanum", "color": "#68d841", "style": "normal"}, {"source": "t_rover_throttle_setpoint", "target": "m_rover_mecanum", "color": "#d641d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_rover_mecanum", "color": "#4187d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_mecanum", "color": "#41d8d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_mecanum", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_mecanum", "color": "#a241d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_camera_feedback", "color": "#4196d8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_camera_feedback", "color": "#d841a7", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_camera_feedback", "color": "#41d8d8", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_camera_feedback", "color": "#d8417b", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_agp_sim", "color": "#d8bd41", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_baro_sim", "color": "#d8bd41", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_simulator_sih", "color": "#d8418a", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_simulator_sih", "color": "#41d84d", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_battery_simulator", "color": "#d8c541", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_battery_simulator", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_simulator", "color": "#c7d841", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_pwm_out_sim", "color": "#41d880", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out_sim", "color": "#b141d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out_sim", "color": "#41d845", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out_sim", "color": "#41d887", "style": "normal"}, {"source": "t_gripper", "target": "m_pwm_out_sim", "color": "#41d8c2", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out_sim", "color": "#4145d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out_sim", "color": "#9bd841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out_sim", "color": "#d841a0", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out_sim", "color": "#4187d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out_sim", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out_sim", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_sensor_airspeed_sim", "color": "#41d8d8", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_sensor_airspeed_sim", "color": "#d8a741", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_airspeed_sim", "color": "#d8bd41", "style": "normal"}, {"source": "t_gimbal_device_set_attitude", "target": "m_gz_bridge", "color": "#4163d8", "style": "normal"}, {"source": "t_internal_combustion_engine_control", "target": "m_gz_bridge", "color": "#41d880", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_gz_bridge", "color": "#b141d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_gz_bridge", "color": "#41d845", "style": "normal"}, {"source": "t_gripper", "target": "m_gz_bridge", "color": "#41d8c2", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_gz_bridge", "color": "#41d887", "style": "normal"}, {"source": "t_landing_gear", "target": "m_gz_bridge", "color": "#4145d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_gz_bridge", "color": "#9bd841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_gz_bridge", "color": "#d841a0", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_gz_bridge", "color": "#4187d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gz_bridge", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gz_bridge", "color": "#8541d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_simulator_mavlink", "color": "#4171d8", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_simulator_mavlink", "color": "#41d84d", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_simulator_mavlink", "color": "#d8418a", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_simulator_mavlink", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_simulator_mavlink", "color": "#c7d841", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#d8a741", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#d8bd41", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_mag_sim", "color": "#d8bd41", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_sensor_mag_sim", "color": "#415bd8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_navigator", "color": "#d8416d", "style": "normal"}, {"source": "t_rtl_status", "target": "m_navigator", "color": "#41c2d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_navigator", "color": "#a241d8", "style": "normal"}, {"source": "t_dataman_response", "target": "m_navigator", "color": "#d88a41", "style": "normal"}, {"source": "t_transponder_report", "target": "m_navigator", "color": "#4ad841", "style": "normal"}, {"source": "t_mission", "target": "m_navigator", "color": "#d85e41", "style": "normal"}, {"source": "t_home_position", "target": "m_navigator", "color": "#414dd8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_navigator", "color": "#4196d8", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_navigator", "color": "#7641d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_navigator", "color": "#d8b641", "style": "normal"}, {"source": "t_position_controller_landing_status", "target": "m_navigator", "color": "#41d863", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_navigator", "color": "#8541d8", "style": "normal"}, {"source": "t_wind", "target": "m_navigator", "color": "#8c41d8", "style": "normal"}, {"source": "t_geofence_status", "target": "m_navigator", "color": "#59d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_navigator", "color": "#c7d841", "style": "normal"}, {"source": "t_battery_status", "target": "m_send_event", "color": "#4171d8", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_send_event", "color": "#d85741", "style": "normal"}, {"source": "t_cpuload", "target": "m_send_event", "color": "#4a41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_send_event", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_send_event", "color": "#c7d841", "style": "normal"}, {"source": "t_vtol_vehicle_status", "target": "m_commander", "color": "#41d1d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_commander", "color": "#aa41d8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_commander", "color": "#41a5d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_commander", "color": "#4196d8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_commander", "color": "#6fd841", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_commander", "color": "#d86541", "style": "normal"}, {"source": "t_estimator_status", "target": "m_commander", "color": "#d86d41", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_commander", "color": "#418fd8", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_commander", "color": "#60d841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_commander", "color": "#4187d8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_commander", "color": "#d841c5", "style": "normal"}, {"source": "t_power_button_state", "target": "m_commander", "color": "#d87b41", "style": "normal"}, {"source": "t_battery_status", "target": "m_commander", "color": "#4171d8", "style": "normal"}, {"source": "t_mission_result", "target": "m_commander", "color": "#4154d8", "style": "normal"}, {"source": "t_pwm_input", "target": "m_commander", "color": "#52d841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_commander", "color": "#d841af", "style": "normal"}, {"source": "t_logger_status", "target": "m_commander", "color": "#d841b6", "style": "normal"}, {"source": "t_navigator_status", "target": "m_commander", "color": "#d88341", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_commander", "color": "#43d841", "style": "normal"}, {"source": "t_safety_button", "target": "m_commander", "color": "#d89141", "style": "normal"}, {"source": "t_home_position", "target": "m_commander", "color": "#414dd8", "style": "normal"}, {"source": "t_iridiumsbd_status", "target": "m_commander", "color": "#d8a041", "style": "normal"}, {"source": "t_action_request", "target": "m_commander", "color": "#41d85b", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_commander", "color": "#d8b641", "style": "normal"}, {"source": "t_cpuload", "target": "m_commander", "color": "#4a41d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_commander", "color": "#41d86a", "style": "normal"}, {"source": "t_estimator_status_flags", "target": "m_commander", "color": "#41d871", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_commander", "color": "#6041d8", "style": "normal"}, {"source": "t_esc_status", "target": "m_commander", "color": "#6f41d8", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_commander", "color": "#41d88f", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_commander", "color": "#d8cc41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_commander", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_commander", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_commander", "color": "#c7d841", "style": "normal"}, {"source": "t_wind", "target": "m_commander", "color": "#8c41d8", "style": "normal"}, {"source": "t_geofence_result", "target": "m_commander", "color": "#b8d841", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_commander", "color": "#d84165", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_commander", "color": "#41d8b4", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_commander", "color": "#9bd841", "style": "normal"}, {"source": "t_system_power", "target": "m_commander", "color": "#d84157", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_commander", "color": "#94d841", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_commander", "color": "#d8414f", "style": "normal"}, {"source": "t_event", "target": "m_commander", "color": "#9b41d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_commander", "color": "#41d8d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_commander", "color": "#a241d8", "style": "normal"}, {"source": "t_esc_status", "target": "m_esc_battery", "color": "#6f41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_esc_battery", "color": "#c7d841", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_esc_battery", "color": "#d8c541", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_gyro_fft", "color": "#41d88f", "style": "normal"}, {"source": "t_sensor_gyro_fifo", "target": "m_gyro_fft", "color": "#d8415e", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_fft", "color": "#aa41d8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_gyro_fft", "color": "#d841af", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_flight_mode_manager", "color": "#41bbd8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_flight_mode_manager", "color": "#aad841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_flight_mode_manager", "color": "#d8b641", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_flight_mode_manager", "color": "#41d89e", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_flight_mode_manager", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_flight_mode_manager", "color": "#c7d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_flight_mode_manager", "color": "#a241d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_manual_control", "color": "#41d86a", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_manual_control", "color": "#7e41d8", "style": "normal"}, {"source": "t_action_request", "target": "m_manual_control", "color": "#41d85b", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_manual_control", "color": "#c7d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_pos_control", "color": "#aad841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_pos_control", "color": "#41d8d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uuv_pos_control", "color": "#a241d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_uuv_pos_control", "color": "#c741d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_pos_control", "color": "#b1d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_pos_control", "color": "#aad841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_rover_pos_control", "color": "#4196d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_pos_control", "color": "#c741d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_pos_control", "color": "#41d8d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_pos_control", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_rover_pos_control", "color": "#41d89e", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_pos_control", "color": "#a241d8", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_mc_rate_control", "color": "#d841bd", "style": "normal"}, {"source": "t_battery_status", "target": "m_mc_rate_control", "color": "#4171d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_rate_control", "color": "#aad841", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mc_rate_control", "color": "#d84191", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_rate_control", "color": "#d8b641", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_rate_control", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_rate_control", "color": "#c7d841", "style": "normal"}, {"source": "t_rpm", "target": "m_control_allocator", "color": "#d84174", "style": "normal"}, {"source": "t_spoilers_setpoint", "target": "m_control_allocator", "color": "#4179d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_control_allocator", "color": "#aad841", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_control_allocator", "color": "#6841d8", "style": "normal"}, {"source": "t_tiltrotor_extra_controls", "target": "m_control_allocator", "color": "#76d841", "style": "normal"}, {"source": "t_failure_detector_status", "target": "m_control_allocator", "color": "#d84183", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_control_allocator", "color": "#41d86a", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_control_allocator", "color": "#85d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_control_allocator", "color": "#c7d841", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_control_allocator", "color": "#5241d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_sensors", "color": "#aa41d8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_sensors", "color": "#d841af", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_sensors", "color": "#41d8b4", "style": "normal"}, {"source": "t_sensor_optical_flow", "target": "m_sensors", "color": "#d84f41", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_sensors", "color": "#aad841", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_sensors", "color": "#41a5d8", "style": "normal"}, {"source": "t_adc_report", "target": "m_sensors", "color": "#41b4d8", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_sensors", "color": "#41acd8", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_sensors", "color": "#41d88f", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_sensors", "color": "#6fd841", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_sensors", "color": "#d8414f", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_sensors", "color": "#d841c5", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_fw_mode_manager", "color": "#b1d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_mode_manager", "color": "#aad841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_fw_mode_manager", "color": "#c741d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_fw_mode_manager", "color": "#4196d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_mode_manager", "color": "#d8cc41", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_mode_manager", "color": "#d8b641", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_mode_manager", "color": "#41d8d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_mode_manager", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_fw_mode_manager", "color": "#8541d8", "style": "normal"}, {"source": "t_wind", "target": "m_fw_mode_manager", "color": "#8c41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_mode_manager", "color": "#c7d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_mode_manager", "color": "#a241d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_airship_att_control", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airship_att_control", "color": "#c7d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_att_control", "color": "#aad841", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_uuv_att_control", "color": "#d84191", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_att_control", "color": "#41d8d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uuv_att_control", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_uuv_att_control", "color": "#41d89e", "style": "normal"}, {"source": "t_dataman_request", "target": "m_dataman", "color": "#d841d3", "style": "normal"}, {"source": "t_rpm", "target": "m_internal_combustion_engine_control", "color": "#d84174", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_internal_combustion_engine_control", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_internal_combustion_engine_control", "color": "#c7d841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_internal_combustion_engine_control", "color": "#4187d8", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_local_position_estimator", "color": "#c0d841", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_local_position_estimator", "color": "#d8416d", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_local_position_estimator", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_mocap_odometry", "target": "m_local_position_estimator", "color": "#41d8ac", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_local_position_estimator", "color": "#9bd841", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_local_position_estimator", "color": "#d86541", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_local_position_estimator", "color": "#d8b641", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_local_position_estimator", "color": "#41d8d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_local_position_estimator", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_local_position_estimator", "color": "#a241d8", "style": "normal"}, {"source": "t_adc_report", "target": "m_battery_status", "color": "#41b4d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_battery_status", "color": "#d8c541", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_status", "color": "#c7d841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_gimbal", "color": "#b1d841", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_gimbal", "color": "#d841a7", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_gimbal", "color": "#4196d8", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_gimbal", "color": "#41d8d1", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_gimbal", "color": "#d8b641", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_gimbal", "color": "#41d8d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gimbal", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gimbal", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_roi", "target": "m_gimbal", "color": "#d87441", "style": "normal"}, {"source": "t_battery_status", "target": "m_logger", "color": "#4171d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_logger", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_logger", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_logger", "color": "#c7d841", "style": "normal"}, {"source": "t_tecs_status", "target": "m_vtol_att_control", "color": "#c041d8", "style": "normal"}, {"source": "t_home_position", "target": "m_vtol_att_control", "color": "#414dd8", "style": "normal"}, {"source": "t_action_request", "target": "m_vtol_att_control", "color": "#41d85b", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_vtol_att_control", "color": "#d8b641", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_vtol_att_control", "color": "#d8cc41", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_vtol_att_control", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_vtol_att_control", "color": "#c7d841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_vtol_att_control", "color": "#b1d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_vtol_att_control", "color": "#aad841", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_vtol_att_control", "color": "#9441d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_vtol_att_control", "color": "#41d8d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_vtol_att_control", "color": "#a241d8", "style": "normal"}, {"source": "t_tecs_status", "target": "m_airspeed_selector", "color": "#c041d8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_airspeed_selector", "color": "#6841d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_airspeed_selector", "color": "#d8c541", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_airspeed_selector", "color": "#418fd8", "style": "normal"}, {"source": "t_estimator_status", "target": "m_airspeed_selector", "color": "#d86d41", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_airspeed_selector", "color": "#d8b641", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_airspeed_selector", "color": "#ced841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airspeed_selector", "color": "#c7d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_airspeed_selector", "color": "#41d8d8", "style": "normal"}, {"source": "t_airspeed", "target": "m_airspeed_selector", "color": "#d8af41", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_airspeed_selector", "color": "#a241d8", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_temperature_compensation", "color": "#6041d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_temperature_compensation", "color": "#aa41d8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_temperature_compensation", "color": "#41a5d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_temperature_compensation", "color": "#d8414f", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_temperature_compensation", "color": "#8541d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_pos_control", "color": "#aad841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_mc_pos_control", "color": "#c741d8", "style": "normal"}, {"source": "t_vehicle_constraints", "target": "m_mc_pos_control", "color": "#d84148", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_pos_control", "color": "#d8b641", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_pos_control", "color": "#a241d8", "style": "normal"}, {"source": "t_input_rc", "target": "m_rc_update", "color": "#d6d841", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_rc_update", "color": "#41d86a", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_differential", "color": "#b1d841", "style": "normal"}, {"source": "t_rover_rate_setpoint", "target": "m_rover_differential", "color": "#d8d341", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_differential", "color": "#aad841", "style": "normal"}, {"source": "t_rover_position_setpoint", "target": "m_rover_differential", "color": "#d84841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_differential", "color": "#c741d8", "style": "normal"}, {"source": "t_rover_velocity_setpoint", "target": "m_rover_differential", "color": "#ce41d8", "style": "normal"}, {"source": "t_rover_attitude_setpoint", "target": "m_rover_differential", "color": "#41d896", "style": "normal"}, {"source": "t_rover_steering_setpoint", "target": "m_rover_differential", "color": "#68d841", "style": "normal"}, {"source": "t_rover_throttle_setpoint", "target": "m_rover_differential", "color": "#d641d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_rover_differential", "color": "#4187d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_differential", "color": "#41d8d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_differential", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_differential", "color": "#a241d8", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_attitude_estimator_q", "color": "#c0d841", "style": "normal"}, {"source": "t_vehicle_mocap_odometry", "target": "m_attitude_estimator_q", "color": "#41d8ac", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_attitude_estimator_q", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_attitude_estimator_q", "color": "#41d8d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_attitude_estimator_q", "color": "#a241d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mag_bias_estimator", "color": "#c7d841", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mag_bias_estimator", "color": "#d8414f", "style": "normal"}]} \ No newline at end of file diff --git a/docs/public/middleware/graph_px4_fmu-v2.json b/docs/public/middleware/graph_px4_fmu-v2.json index 202abfcb01..86eeea468f 100644 --- a/docs/public/middleware/graph_px4_fmu-v2.json +++ b/docs/public/middleware/graph_px4_fmu-v2.json @@ -1 +1 @@ -{"nodes": [{"id": "m_flight_mode_manager", "name": "flight_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_control_allocator", "name": "control_allocator", "type": "Module", "color": "#666666"}, {"id": "m_cdcacm_autostart", "name": "cdcacm_autostart", "type": "Module", "color": "#666666"}, {"id": "m_mc_rate_control", "name": "mc_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_battery_status", "name": "battery_status", "type": "Module", "color": "#666666"}, {"id": "m_manual_control", "name": "manual_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_att_control", "name": "mc_att_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_pos_control", "name": "mc_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_land_detector", "name": "land_detector", "type": "Module", "color": "#666666"}, {"id": "m_tune_control", "name": "tune_control", "type": "Module", "color": "#666666"}, {"id": "m_septentrio", "name": "septentrio", "type": "Module", "color": "#666666"}, {"id": "m_tone_alarm", "name": "tone_alarm", "type": "Module", "color": "#666666"}, {"id": "m_board_adc", "name": "board_adc", "type": "Module", "color": "#666666"}, {"id": "m_commander", "name": "commander", "type": "Module", "color": "#666666"}, {"id": "m_navigator", "name": "navigator", "type": "Module", "color": "#666666"}, {"id": "m_rc_update", "name": "rc_update", "type": "Module", "color": "#666666"}, {"id": "m_mpu6000", "name": "mpu6000", "type": "Module", "color": "#666666"}, {"id": "m_lsm303d", "name": "lsm303d", "type": "Module", "color": "#666666"}, {"id": "m_hmc5883", "name": "hmc5883", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out", "name": "pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_dataman", "name": "dataman", "type": "Module", "color": "#666666"}, {"id": "m_mavlink", "name": "mavlink", "type": "Module", "color": "#666666"}, {"id": "m_sensors", "name": "sensors", "type": "Module", "color": "#666666"}, {"id": "m_ms5611", "name": "ms5611", "type": "Module", "color": "#666666"}, {"id": "m_l3gd20", "name": "l3gd20", "type": "Module", "color": "#666666"}, {"id": "m_rgbled", "name": "rgbled", "type": "Module", "color": "#666666"}, {"id": "m_logger", "name": "logger", "type": "Module", "color": "#666666"}, {"id": "m_px4io", "name": "px4io", "type": "Module", "color": "#666666"}, {"id": "m_ekf2", "name": "ekf2", "type": "Module", "color": "#666666"}, {"id": "m_gps", "name": "gps", "type": "Module", "color": "#666666"}, {"id": "t_vehicle_local_position_setpoint", "name": "vehicle_local_position_setpoint", "type": "topic", "color": "#41d855", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_attitude_status", "name": "gimbal_device_attitude_status", "type": "topic", "color": "#d8a941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_register_ext_component_reply", "name": "register_ext_component_reply", "type": "topic", "color": "#d89f41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_information", "name": "gimbal_device_information", "type": "topic", "color": "#bed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_setpoint_triplet", "name": "position_setpoint_triplet", "type": "topic", "color": "#55d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_setpoint", "name": "vehicle_attitude_setpoint", "type": "topic", "color": "#4175d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_selector_status", "name": "estimator_selector_status", "type": "topic", "color": "#d341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_control_allocator_status", "name": "control_allocator_status", "type": "topic", "color": "#d86041", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_visual_odometry", "name": "vehicle_visual_odometry", "type": "topic", "color": "#a9d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_setpoint", "name": "manual_control_setpoint", "type": "topic", "color": "#94d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failure_detector_status", "name": "failure_detector_status", "type": "topic", "color": "#41d86a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_switches", "name": "manual_control_switches", "type": "topic", "color": "#41a9d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position", "name": "vehicle_global_position", "type": "topic", "color": "#d8418a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status_flags", "name": "estimator_status_flags", "type": "topic", "color": "#d3d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position", "name": "vehicle_local_position", "type": "topic", "color": "#41d8be", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_rates_setpoint", "name": "vehicle_rates_setpoint", "type": "topic", "color": "#d841a9", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_land_detected", "name": "vehicle_land_detected", "type": "topic", "color": "#41d8c9", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_differential_pressure", "name": "differential_pressure", "type": "topic", "color": "#6a41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_offboard_control_mode", "name": "offboard_control_mode", "type": "topic", "color": "#d84194", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_sensor_bias", "name": "estimator_sensor_bias", "type": "topic", "color": "#d8417f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_control_mode", "name": "vehicle_control_mode", "type": "topic", "color": "#d87541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_servos_trim", "name": "actuator_servos_trim", "type": "topic", "color": "#41d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_trajectory_setpoint", "name": "trajectory_setpoint", "type": "topic", "color": "#c9d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_target_pose", "name": "landing_target_pose", "type": "topic", "color": "#41d88a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command_ack", "name": "vehicle_command_ack", "type": "topic", "color": "#419fd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_constraints", "name": "vehicle_constraints", "type": "topic", "color": "#416ad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_optical_flow", "name": "sensor_optical_flow", "type": "topic", "color": "#d84155", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu_status", "name": "vehicle_imu_status", "type": "topic", "color": "#41d89f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_transponder_report", "name": "transponder_report", "type": "topic", "color": "#41d8b4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensors_status_imu", "name": "sensors_status_imu", "type": "topic", "color": "#7f41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_power_button_state", "name": "power_button_state", "type": "topic", "color": "#a941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_time_estimate", "name": "rtl_time_estimate", "type": "topic", "color": "#9f41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_odometry", "name": "vehicle_odometry", "type": "topic", "color": "#d84b41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_response", "name": "dataman_response", "type": "topic", "color": "#d86a41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs", "name": "actuator_outputs", "type": "topic", "color": "#d88a41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_navigator_status", "name": "navigator_status", "type": "topic", "color": "#b4d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude", "name": "vehicle_attitude", "type": "topic", "color": "#41d3d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_telemetry_status", "name": "telemetry_status", "type": "topic", "color": "#414bd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rc_parameter_map", "name": "rc_parameter_map", "type": "topic", "color": "#6041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_selection", "name": "sensor_selection", "type": "topic", "color": "#d841c9", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status", "name": "estimator_status", "type": "topic", "color": "#d8414b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_request", "name": "dataman_request", "type": "topic", "color": "#d85541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_key_value", "name": "debug_key_value", "type": "topic", "color": "#d8d341", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor", "name": "distance_sensor", "type": "topic", "color": "#41d84b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_motors", "name": "actuator_motors", "type": "topic", "color": "#41d860", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gps_inject_data", "name": "gps_inject_data", "type": "topic", "color": "#41d894", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command", "name": "vehicle_command", "type": "topic", "color": "#41b4d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_result", "name": "geofence_result", "type": "topic", "color": "#4194d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_status", "name": "geofence_status", "type": "topic", "color": "#b441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_combined", "name": "sensor_combined", "type": "topic", "color": "#c941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream_ack", "name": "ulog_stream_ack", "type": "topic", "color": "#d841d3", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_takeoff_status", "name": "takeoff_status", "type": "topic", "color": "#d89441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_status", "name": "vehicle_status", "type": "topic", "color": "#d8be41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_battery_status", "name": "battery_status", "type": "topic", "color": "#6ad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission_result", "name": "mission_result", "type": "topic", "color": "#4141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_armed", "name": "actuator_armed", "type": "topic", "color": "#be41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_action_request", "name": "action_request", "type": "topic", "color": "#d8419f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_satellite_info", "name": "satellite_info", "type": "topic", "color": "#d8416a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failsafe_flags", "name": "failsafe_flags", "type": "topic", "color": "#d84160", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_safety_button", "name": "safety_button", "type": "topic", "color": "#9fd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_actuator_test", "name": "actuator_test", "type": "topic", "color": "#41bed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_status", "name": "camera_status", "type": "topic", "color": "#417fd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_health_report", "name": "health_report", "type": "topic", "color": "#4b41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_logger_status", "name": "logger_status", "type": "topic", "color": "#8a41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_home_position", "name": "home_position", "type": "topic", "color": "#9441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_px4io_status", "name": "px4io_status", "type": "topic", "color": "#d8c941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear", "name": "landing_gear", "type": "topic", "color": "#8ad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tune_control", "name": "tune_control", "type": "topic", "color": "#41d8d3", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_system_power", "name": "system_power", "type": "topic", "color": "#5541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_accel", "name": "sensor_accel", "type": "topic", "color": "#d841be", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_led_control", "name": "led_control", "type": "topic", "color": "#7fd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_baro", "name": "sensor_baro", "type": "topic", "color": "#41d87f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream", "name": "ulog_stream", "type": "topic", "color": "#41c9d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_value", "name": "debug_value", "type": "topic", "color": "#4160d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_array", "name": "debug_array", "type": "topic", "color": "#4155d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro", "name": "sensor_gyro", "type": "topic", "color": "#7541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu", "name": "vehicle_imu", "type": "topic", "color": "#d84175", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_vect", "name": "debug_vect", "type": "topic", "color": "#d84141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gps", "name": "sensor_gps", "type": "topic", "color": "#d87f41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/SensorGps.msg"}, {"id": "t_rtl_status", "name": "rtl_status", "type": "topic", "color": "#d8b441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_mag", "name": "sensor_mag", "type": "topic", "color": "#41d875", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_adc_report", "name": "adc_report", "type": "topic", "color": "#d841b4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_input_rc", "name": "input_rc", "type": "topic", "color": "#75d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed", "name": "airspeed", "type": "topic", "color": "#4bd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource1d.msg"}, {"id": "t_mission", "name": "mission", "type": "topic", "color": "#418ad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_event", "name": "event", "type": "topic", "color": "#60d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_wind", "name": "wind", "type": "topic", "color": "#41d8a9", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/Wind.msg"}], "links": [{"source": "m_board_adc", "target": "t_adc_report", "color": "#d841b4", "style": "dashed"}, {"source": "m_board_adc", "target": "t_system_power", "color": "#5541d8", "style": "dashed"}, {"source": "m_ms5611", "target": "t_sensor_baro", "color": "#41d87f", "style": "dashed"}, {"source": "m_septentrio", "target": "t_satellite_info", "color": "#d8416a", "style": "dashed"}, {"source": "m_septentrio", "target": "t_gps_inject_data", "color": "#41d894", "style": "dashed"}, {"source": "m_septentrio", "target": "t_sensor_gps", "color": "#d87f41", "style": "dashed"}, {"source": "m_gps", "target": "t_gps_inject_data", "color": "#41d894", "style": "dashed"}, {"source": "m_gps", "target": "t_satellite_info", "color": "#d8416a", "style": "dashed"}, {"source": "m_gps", "target": "t_sensor_gps", "color": "#d87f41", "style": "dashed"}, {"source": "m_mpu6000", "target": "t_sensor_accel", "color": "#d841be", "style": "dashed"}, {"source": "m_mpu6000", "target": "t_sensor_gyro", "color": "#7541d8", "style": "dashed"}, {"source": "m_l3gd20", "target": "t_sensor_gyro", "color": "#7541d8", "style": "dashed"}, {"source": "m_lsm303d", "target": "t_sensor_accel", "color": "#d841be", "style": "dashed"}, {"source": "m_lsm303d", "target": "t_sensor_mag", "color": "#41d875", "style": "dashed"}, {"source": "m_hmc5883", "target": "t_sensor_mag", "color": "#41d875", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_armed", "color": "#be41d8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_motors", "color": "#41d860", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_test", "color": "#41bed8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_outputs", "color": "#d88a41", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_armed", "color": "#be41d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_motors", "color": "#41d860", "style": "dashed"}, {"source": "m_px4io", "target": "t_safety_button", "color": "#9fd841", "style": "dashed"}, {"source": "m_px4io", "target": "t_led_control", "color": "#7fd841", "style": "dashed"}, {"source": "m_px4io", "target": "t_input_rc", "color": "#75d841", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_test", "color": "#41bed8", "style": "dashed"}, {"source": "m_px4io", "target": "t_px4io_status", "color": "#d8c941", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command", "color": "#41b4d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_tune_control", "color": "#41d8d3", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command_ack", "color": "#419fd8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_outputs", "color": "#d88a41", "style": "dashed"}, {"source": "m_tone_alarm", "target": "t_tune_control", "color": "#41d8d3", "style": "dashed"}, {"source": "m_battery_status", "target": "t_battery_status", "color": "#6ad841", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_armed", "color": "#be41d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_control_mode", "color": "#d87541", "style": "dashed"}, {"source": "m_commander", "target": "t_register_ext_component_reply", "color": "#d89f41", "style": "dashed"}, {"source": "m_commander", "target": "t_failure_detector_status", "color": "#41d86a", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_test", "color": "#41bed8", "style": "dashed"}, {"source": "m_commander", "target": "t_led_control", "color": "#7fd841", "style": "dashed"}, {"source": "m_commander", "target": "t_event", "color": "#60d841", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_status", "color": "#d8be41", "style": "dashed"}, {"source": "m_commander", "target": "t_power_button_state", "color": "#a941d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command", "color": "#41b4d8", "style": "dashed"}, {"source": "m_commander", "target": "t_home_position", "color": "#9441d8", "style": "dashed"}, {"source": "m_commander", "target": "t_failsafe_flags", "color": "#d84160", "style": "dashed"}, {"source": "m_commander", "target": "t_tune_control", "color": "#41d8d3", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command_ack", "color": "#419fd8", "style": "dashed"}, {"source": "m_commander", "target": "t_health_report", "color": "#4b41d8", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_control_allocator_status", "color": "#d86041", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos_trim", "color": "#41d841", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_motors", "color": "#41d860", "style": "dashed"}, {"source": "m_dataman", "target": "t_dataman_response", "color": "#d86a41", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_odometry", "color": "#d84b41", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_selector_status", "color": "#d341d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_sensor_selection", "color": "#d841c9", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status_flags", "color": "#d3d841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_wind", "color": "#41d8a9", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_local_position", "color": "#41d8be", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_attitude", "color": "#41d3d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_global_position", "color": "#d8418a", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_sensor_bias", "color": "#d8417f", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_command_ack", "color": "#419fd8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status", "color": "#d8414b", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_trajectory_setpoint", "color": "#c9d841", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_landing_gear", "color": "#8ad841", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_vehicle_constraints", "color": "#416ad8", "style": "dashed"}, {"source": "m_land_detector", "target": "t_vehicle_land_detected", "color": "#41d8c9", "style": "dashed"}, {"source": "m_logger", "target": "t_ulog_stream", "color": "#41c9d8", "style": "dashed"}, {"source": "m_logger", "target": "t_logger_status", "color": "#8a41d8", "style": "dashed"}, {"source": "m_logger", "target": "t_vehicle_command_ack", "color": "#419fd8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_landing_gear", "color": "#8ad841", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_status", "color": "#d8be41", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_command", "color": "#41b4d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_switches", "color": "#41a9d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_action_request", "color": "#d8419f", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_setpoint", "color": "#94d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_vect", "color": "#d84141", "style": "dashed"}, {"source": "m_mavlink", "target": "t_airspeed", "color": "#4bd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_distance_sensor", "color": "#41d84b", "style": "dashed"}, {"source": "m_mavlink", "target": "t_dataman_request", "color": "#d85541", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mission", "color": "#418ad8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_camera_status", "color": "#417fd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gps", "color": "#d87f41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude_setpoint", "color": "#4175d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_attitude_status", "color": "#d8a941", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_value", "color": "#4160d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_array", "color": "#4155d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command_ack", "color": "#419fd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_ulog_stream_ack", "color": "#d841d3", "style": "dashed"}, {"source": "m_mavlink", "target": "t_telemetry_status", "color": "#414bd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_key_value", "color": "#d8d341", "style": "dashed"}, {"source": "m_mavlink", "target": "t_trajectory_setpoint", "color": "#c9d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_accel", "color": "#d841be", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_information", "color": "#bed841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_visual_odometry", "color": "#a9d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_mag", "color": "#41d875", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_baro", "color": "#41d87f", "style": "dashed"}, {"source": "m_mavlink", "target": "t_landing_target_pose", "color": "#41d88a", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gps_inject_data", "color": "#41d894", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_rates_setpoint", "color": "#d841a9", "style": "dashed"}, {"source": "m_mavlink", "target": "t_rc_parameter_map", "color": "#6041d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_transponder_report", "color": "#41d8b4", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_local_position", "color": "#41d8be", "style": "dashed"}, {"source": "m_mavlink", "target": "t_tune_control", "color": "#41d8d3", "style": "dashed"}, {"source": "m_mavlink", "target": "t_differential_pressure", "color": "#6a41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_offboard_control_mode", "color": "#d84194", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude", "color": "#41d3d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_global_position", "color": "#d8418a", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gyro", "color": "#7541d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_input_rc", "color": "#75d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_battery_status", "color": "#6ad841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_event", "color": "#60d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command", "color": "#41b4d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_optical_flow", "color": "#d84155", "style": "dashed"}, {"source": "m_mc_att_control", "target": "t_vehicle_rates_setpoint", "color": "#d841a9", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#41d855", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#4175d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_takeoff_status", "color": "#d89441", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_constraints", "color": "#416ad8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_trajectory_setpoint", "color": "#c9d841", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#d841a9", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_time_estimate", "color": "#9f41d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_result", "color": "#4194d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_dataman_request", "color": "#d85541", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission", "color": "#418ad8", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_status", "color": "#b441d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_status", "color": "#d8b441", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_status", "color": "#d8be41", "style": "dashed"}, {"source": "m_navigator", "target": "t_navigator_status", "color": "#b4d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission_result", "color": "#4141d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_transponder_report", "color": "#41d8b4", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_land_detected", "color": "#41d8c9", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_global_position", "color": "#d8418a", "style": "dashed"}, {"source": "m_navigator", "target": "t_home_position", "color": "#9441d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command", "color": "#41b4d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_position_setpoint_triplet", "color": "#55d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command_ack", "color": "#419fd8", "style": "dashed"}, {"source": "m_rc_update", "target": "t_manual_control_switches", "color": "#41a9d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_combined", "color": "#c941d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensors_status_imu", "color": "#7f41d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu", "color": "#d84175", "style": "dashed"}, {"source": "m_sensors", "target": "t_airspeed", "color": "#4bd841", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_selection", "color": "#d841c9", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu_status", "color": "#41d89f", "style": "dashed"}, {"source": "m_sensors", "target": "t_differential_pressure", "color": "#6a41d8", "style": "dashed"}, {"source": "m_tune_control", "target": "t_tune_control", "color": "#41d8d3", "style": "dashed"}, {"source": "t_adc_report", "target": "m_board_adc", "color": "#d841b4", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_cdcacm_autostart", "color": "#be41d8", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_septentrio", "color": "#41d894", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_gps", "color": "#41d894", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled", "color": "#7fd841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out", "color": "#be41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out", "color": "#41d860", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out", "color": "#8ad841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out", "color": "#41d841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out", "color": "#41bed8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out", "color": "#41b4d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out", "color": "#94d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_px4io", "color": "#be41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_px4io", "color": "#41d860", "style": "normal"}, {"source": "t_landing_gear", "target": "m_px4io", "color": "#8ad841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_px4io", "color": "#41d841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_px4io", "color": "#41bed8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_px4io", "color": "#d8be41", "style": "normal"}, {"source": "t_px4io_status", "target": "m_px4io", "color": "#d8c941", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_px4io", "color": "#41b4d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_px4io", "color": "#94d841", "style": "normal"}, {"source": "t_tune_control", "target": "m_tone_alarm", "color": "#41d8d3", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_status", "color": "#d8be41", "style": "normal"}, {"source": "t_adc_report", "target": "m_battery_status", "color": "#d841b4", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_commander", "color": "#9f41d8", "style": "normal"}, {"source": "t_geofence_result", "target": "m_commander", "color": "#4194d8", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_commander", "color": "#41d84b", "style": "normal"}, {"source": "t_power_button_state", "target": "m_commander", "color": "#a941d8", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_commander", "color": "#d87f41", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_commander", "color": "#be41d8", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_commander", "color": "#d341d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_commander", "color": "#41d860", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_commander", "color": "#d8be41", "style": "normal"}, {"source": "t_telemetry_status", "target": "m_commander", "color": "#414bd8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_commander", "color": "#d841c9", "style": "normal"}, {"source": "t_estimator_status_flags", "target": "m_commander", "color": "#d3d841", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_commander", "color": "#d841be", "style": "normal"}, {"source": "t_mission_result", "target": "m_commander", "color": "#4141d8", "style": "normal"}, {"source": "t_navigator_status", "target": "m_commander", "color": "#b4d841", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_commander", "color": "#41d875", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_commander", "color": "#41d87f", "style": "normal"}, {"source": "t_safety_button", "target": "m_commander", "color": "#9fd841", "style": "normal"}, {"source": "t_system_power", "target": "m_commander", "color": "#5541d8", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_commander", "color": "#41d89f", "style": "normal"}, {"source": "t_action_request", "target": "m_commander", "color": "#d8419f", "style": "normal"}, {"source": "t_wind", "target": "m_commander", "color": "#41d8a9", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_commander", "color": "#41d8be", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_commander", "color": "#41d8c9", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_commander", "color": "#6a41d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_commander", "color": "#94d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_commander", "color": "#41d3d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_commander", "color": "#7541d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_commander", "color": "#d8418a", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_commander", "color": "#d84194", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_commander", "color": "#7f41d8", "style": "normal"}, {"source": "t_logger_status", "target": "m_commander", "color": "#8a41d8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_commander", "color": "#d8417f", "style": "normal"}, {"source": "t_battery_status", "target": "m_commander", "color": "#6ad841", "style": "normal"}, {"source": "t_event", "target": "m_commander", "color": "#60d841", "style": "normal"}, {"source": "t_home_position", "target": "m_commander", "color": "#9441d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_commander", "color": "#41b4d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_commander", "color": "#41a9d8", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_commander", "color": "#419fd8", "style": "normal"}, {"source": "t_estimator_status", "target": "m_commander", "color": "#d8414b", "style": "normal"}, {"source": "t_failure_detector_status", "target": "m_control_allocator", "color": "#41d86a", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_control_allocator", "color": "#d8be41", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_control_allocator", "color": "#41a9d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_control_allocator", "color": "#d87541", "style": "normal"}, {"source": "t_dataman_request", "target": "m_dataman", "color": "#d85541", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_ekf2", "color": "#7f41d8", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_ekf2", "color": "#c941d8", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_ekf2", "color": "#d84175", "style": "normal"}, {"source": "t_airspeed", "target": "m_ekf2", "color": "#4bd841", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_ekf2", "color": "#41d88a", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_ekf2", "color": "#41d84b", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ekf2", "color": "#d8be41", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_ekf2", "color": "#d841c9", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_ekf2", "color": "#41b4d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_ekf2", "color": "#41d8c9", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_ekf2", "color": "#a9d841", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_flight_mode_manager", "color": "#4175d8", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_flight_mode_manager", "color": "#d89441", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_flight_mode_manager", "color": "#41d8be", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_flight_mode_manager", "color": "#d8be41", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_flight_mode_manager", "color": "#41b4d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_flight_mode_manager", "color": "#41d8c9", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_flight_mode_manager", "color": "#d87541", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_land_detector", "color": "#be41d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_land_detector", "color": "#d8418a", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_land_detector", "color": "#d89441", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_land_detector", "color": "#d8be41", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_land_detector", "color": "#d841c9", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_land_detector", "color": "#41d89f", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_land_detector", "color": "#c9d841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_land_detector", "color": "#55d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_land_detector", "color": "#41d8be", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_land_detector", "color": "#d87541", "style": "normal"}, {"source": "t_ulog_stream_ack", "target": "m_logger", "color": "#d841d3", "style": "normal"}, {"source": "t_battery_status", "target": "m_logger", "color": "#6ad841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_logger", "color": "#d8be41", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_logger", "color": "#41b4d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_logger", "color": "#94d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_manual_control", "color": "#d8be41", "style": "normal"}, {"source": "t_action_request", "target": "m_manual_control", "color": "#d8419f", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_manual_control", "color": "#41a9d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_manual_control", "color": "#94d841", "style": "normal"}, {"source": "t_debug_vect", "target": "m_mavlink", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_odometry", "target": "m_mavlink", "color": "#d84b41", "style": "normal"}, {"source": "t_dataman_response", "target": "m_mavlink", "color": "#d86a41", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mavlink", "color": "#d87541", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_mavlink", "color": "#d87f41", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_mavlink", "color": "#d88a41", "style": "normal"}, {"source": "t_register_ext_component_reply", "target": "m_mavlink", "color": "#d89f41", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_mavlink", "color": "#d8a941", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mavlink", "color": "#d8be41", "style": "normal"}, {"source": "t_debug_key_value", "target": "m_mavlink", "color": "#d8d341", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_mavlink", "color": "#bed841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mavlink", "color": "#94d841", "style": "normal"}, {"source": "t_input_rc", "target": "m_mavlink", "color": "#75d841", "style": "normal"}, {"source": "t_battery_status", "target": "m_mavlink", "color": "#6ad841", "style": "normal"}, {"source": "t_event", "target": "m_mavlink", "color": "#60d841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_mavlink", "color": "#55d841", "style": "normal"}, {"source": "t_airspeed", "target": "m_mavlink", "color": "#4bd841", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_mavlink", "color": "#41d84b", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_mavlink", "color": "#41d855", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mavlink", "color": "#41d875", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_mavlink", "color": "#41d87f", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_mavlink", "color": "#41d88a", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_mavlink", "color": "#41d894", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_mavlink", "color": "#41d89f", "style": "normal"}, {"source": "t_wind", "target": "m_mavlink", "color": "#41d8a9", "style": "normal"}, {"source": "t_transponder_report", "target": "m_mavlink", "color": "#41d8b4", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mavlink", "color": "#41d8be", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mavlink", "color": "#41d8c9", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mavlink", "color": "#41d3d8", "style": "normal"}, {"source": "t_ulog_stream", "target": "m_mavlink", "color": "#41c9d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_mavlink", "color": "#41b4d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_mavlink", "color": "#41a9d8", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_mavlink", "color": "#419fd8", "style": "normal"}, {"source": "t_geofence_result", "target": "m_mavlink", "color": "#4194d8", "style": "normal"}, {"source": "t_mission", "target": "m_mavlink", "color": "#418ad8", "style": "normal"}, {"source": "t_camera_status", "target": "m_mavlink", "color": "#417fd8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mavlink", "color": "#4175d8", "style": "normal"}, {"source": "t_debug_value", "target": "m_mavlink", "color": "#4160d8", "style": "normal"}, {"source": "t_debug_array", "target": "m_mavlink", "color": "#4155d8", "style": "normal"}, {"source": "t_mission_result", "target": "m_mavlink", "color": "#4141d8", "style": "normal"}, {"source": "t_health_report", "target": "m_mavlink", "color": "#4b41d8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_mavlink", "color": "#6a41d8", "style": "normal"}, {"source": "t_home_position", "target": "m_mavlink", "color": "#9441d8", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_mavlink", "color": "#9f41d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_mavlink", "color": "#be41d8", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_mavlink", "color": "#d341d8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_mavlink", "color": "#d841c9", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mavlink", "color": "#d841a9", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_mavlink", "color": "#d8418a", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_mavlink", "color": "#d84175", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_mavlink", "color": "#d8417f", "style": "normal"}, {"source": "t_satellite_info", "target": "m_mavlink", "color": "#d8416a", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_mavlink", "color": "#d84160", "style": "normal"}, {"source": "t_estimator_status", "target": "m_mavlink", "color": "#d8414b", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mc_att_control", "color": "#41d3d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mc_att_control", "color": "#4175d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_att_control", "color": "#41d8be", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_att_control", "color": "#d8be41", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_att_control", "color": "#41d8c9", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_att_control", "color": "#d87541", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_att_control", "color": "#94d841", "style": "normal"}, {"source": "t_vehicle_constraints", "target": "m_mc_pos_control", "color": "#416ad8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_pos_control", "color": "#41d8c9", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_mc_pos_control", "color": "#c9d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_pos_control", "color": "#41d8be", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_pos_control", "color": "#d87541", "style": "normal"}, {"source": "t_battery_status", "target": "m_mc_rate_control", "color": "#6ad841", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_mc_rate_control", "color": "#d86041", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_rate_control", "color": "#d8be41", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mc_rate_control", "color": "#d841a9", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_rate_control", "color": "#41d8c9", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_rate_control", "color": "#d87541", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_rate_control", "color": "#94d841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_navigator", "color": "#d8418a", "style": "normal"}, {"source": "t_transponder_report", "target": "m_navigator", "color": "#41d8b4", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_navigator", "color": "#41d8be", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_navigator", "color": "#41d88a", "style": "normal"}, {"source": "t_rtl_status", "target": "m_navigator", "color": "#d8b441", "style": "normal"}, {"source": "t_mission", "target": "m_navigator", "color": "#418ad8", "style": "normal"}, {"source": "t_home_position", "target": "m_navigator", "color": "#9441d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_navigator", "color": "#d8be41", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_navigator", "color": "#41b4d8", "style": "normal"}, {"source": "t_dataman_response", "target": "m_navigator", "color": "#d86a41", "style": "normal"}, {"source": "t_geofence_status", "target": "m_navigator", "color": "#b441d8", "style": "normal"}, {"source": "t_wind", "target": "m_navigator", "color": "#41d8a9", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_navigator", "color": "#41d8c9", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_rc_update", "color": "#41a9d8", "style": "normal"}, {"source": "t_input_rc", "target": "m_rc_update", "color": "#75d841", "style": "normal"}, {"source": "t_rc_parameter_map", "target": "m_rc_update", "color": "#6041d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_sensors", "color": "#7541d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_sensors", "color": "#41d875", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_sensors", "color": "#d84175", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_sensors", "color": "#d8417f", "style": "normal"}, {"source": "t_adc_report", "target": "m_sensors", "color": "#d841b4", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_sensors", "color": "#41d89f", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_sensors", "color": "#d841c9", "style": "normal"}, {"source": "t_sensor_optical_flow", "target": "m_sensors", "color": "#d84155", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_sensors", "color": "#d841be", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_sensors", "color": "#d87541", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_sensors", "color": "#6a41d8", "style": "normal"}]} \ No newline at end of file +{"nodes": [{"id": "m_flight_mode_manager", "name": "flight_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_control_allocator", "name": "control_allocator", "type": "Module", "color": "#666666"}, {"id": "m_cdcacm_autostart", "name": "cdcacm_autostart", "type": "Module", "color": "#666666"}, {"id": "m_mc_rate_control", "name": "mc_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_battery_status", "name": "battery_status", "type": "Module", "color": "#666666"}, {"id": "m_manual_control", "name": "manual_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_att_control", "name": "mc_att_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_pos_control", "name": "mc_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_land_detector", "name": "land_detector", "type": "Module", "color": "#666666"}, {"id": "m_tune_control", "name": "tune_control", "type": "Module", "color": "#666666"}, {"id": "m_septentrio", "name": "septentrio", "type": "Module", "color": "#666666"}, {"id": "m_tone_alarm", "name": "tone_alarm", "type": "Module", "color": "#666666"}, {"id": "m_board_adc", "name": "board_adc", "type": "Module", "color": "#666666"}, {"id": "m_commander", "name": "commander", "type": "Module", "color": "#666666"}, {"id": "m_navigator", "name": "navigator", "type": "Module", "color": "#666666"}, {"id": "m_rc_update", "name": "rc_update", "type": "Module", "color": "#666666"}, {"id": "m_mpu6000", "name": "mpu6000", "type": "Module", "color": "#666666"}, {"id": "m_lsm303d", "name": "lsm303d", "type": "Module", "color": "#666666"}, {"id": "m_hmc5883", "name": "hmc5883", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out", "name": "pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_dataman", "name": "dataman", "type": "Module", "color": "#666666"}, {"id": "m_mavlink", "name": "mavlink", "type": "Module", "color": "#666666"}, {"id": "m_sensors", "name": "sensors", "type": "Module", "color": "#666666"}, {"id": "m_ms5611", "name": "ms5611", "type": "Module", "color": "#666666"}, {"id": "m_l3gd20", "name": "l3gd20", "type": "Module", "color": "#666666"}, {"id": "m_rgbled", "name": "rgbled", "type": "Module", "color": "#666666"}, {"id": "m_logger", "name": "logger", "type": "Module", "color": "#666666"}, {"id": "m_px4io", "name": "px4io", "type": "Module", "color": "#666666"}, {"id": "m_ekf2", "name": "ekf2", "type": "Module", "color": "#666666"}, {"id": "m_gps", "name": "gps", "type": "Module", "color": "#666666"}, {"id": "t_vehicle_local_position_setpoint", "name": "vehicle_local_position_setpoint", "type": "topic", "color": "#c941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_attitude_status", "name": "gimbal_device_attitude_status", "type": "topic", "color": "#6ad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_register_ext_component_reply", "name": "register_ext_component_reply", "type": "topic", "color": "#6a41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_information", "name": "gimbal_device_information", "type": "topic", "color": "#d87541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_selector_status", "name": "estimator_selector_status", "type": "topic", "color": "#8ad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_setpoint", "name": "vehicle_attitude_setpoint", "type": "topic", "color": "#4155d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_setpoint_triplet", "name": "position_setpoint_triplet", "type": "topic", "color": "#d84160", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_control_allocator_status", "name": "control_allocator_status", "type": "topic", "color": "#d86a41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failure_detector_status", "name": "failure_detector_status", "type": "topic", "color": "#41d84b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_visual_odometry", "name": "vehicle_visual_odometry", "type": "topic", "color": "#416ad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_setpoint", "name": "manual_control_setpoint", "type": "topic", "color": "#5541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_switches", "name": "manual_control_switches", "type": "topic", "color": "#a941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position", "name": "vehicle_global_position", "type": "topic", "color": "#d8416a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status_flags", "name": "estimator_status_flags", "type": "topic", "color": "#9fd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position", "name": "vehicle_local_position", "type": "topic", "color": "#41b4d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_rates_setpoint", "name": "vehicle_rates_setpoint", "type": "topic", "color": "#b441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_differential_pressure", "name": "differential_pressure", "type": "topic", "color": "#d8a941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_sensor_bias", "name": "estimator_sensor_bias", "type": "topic", "color": "#c9d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_offboard_control_mode", "name": "offboard_control_mode", "type": "topic", "color": "#41d88a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_land_detected", "name": "vehicle_land_detected", "type": "topic", "color": "#41d8a9", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_servos_trim", "name": "actuator_servos_trim", "type": "topic", "color": "#d88a41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_control_mode", "name": "vehicle_control_mode", "type": "topic", "color": "#75d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_constraints", "name": "vehicle_constraints", "type": "topic", "color": "#7fd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_target_pose", "name": "landing_target_pose", "type": "topic", "color": "#60d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command_ack", "name": "vehicle_command_ack", "type": "topic", "color": "#417fd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_optical_flow", "name": "sensor_optical_flow", "type": "topic", "color": "#7f41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_trajectory_setpoint", "name": "trajectory_setpoint", "type": "topic", "color": "#d84194", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensors_status_imu", "name": "sensors_status_imu", "type": "topic", "color": "#d85541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu_status", "name": "vehicle_imu_status", "type": "topic", "color": "#41d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_power_button_state", "name": "power_button_state", "type": "topic", "color": "#41c9d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_transponder_report", "name": "transponder_report", "type": "topic", "color": "#4b41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_time_estimate", "name": "rtl_time_estimate", "type": "topic", "color": "#414bd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rc_parameter_map", "name": "rc_parameter_map", "type": "topic", "color": "#d87f41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs", "name": "actuator_outputs", "type": "topic", "color": "#d8b441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_vehicle_odometry", "name": "vehicle_odometry", "type": "topic", "color": "#d8c941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status", "name": "estimator_status", "type": "topic", "color": "#b4d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_selection", "name": "sensor_selection", "type": "topic", "color": "#418ad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude", "name": "vehicle_attitude", "type": "topic", "color": "#d841d3", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_response", "name": "dataman_response", "type": "topic", "color": "#d8419f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_navigator_status", "name": "navigator_status", "type": "topic", "color": "#d8418a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_telemetry_status", "name": "telemetry_status", "type": "topic", "color": "#d8417f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_request", "name": "dataman_request", "type": "topic", "color": "#d84b41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor", "name": "distance_sensor", "type": "topic", "color": "#41d855", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_key_value", "name": "debug_key_value", "type": "topic", "color": "#41d860", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gps_inject_data", "name": "gps_inject_data", "type": "topic", "color": "#41d3d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_status", "name": "geofence_status", "type": "topic", "color": "#41bed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_combined", "name": "sensor_combined", "type": "topic", "color": "#41a9d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_result", "name": "geofence_result", "type": "topic", "color": "#419fd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_motors", "name": "actuator_motors", "type": "topic", "color": "#4194d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream_ack", "name": "ulog_stream_ack", "type": "topic", "color": "#4141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command", "name": "vehicle_command", "type": "topic", "color": "#be41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_armed", "name": "actuator_armed", "type": "topic", "color": "#d86041", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_action_request", "name": "action_request", "type": "topic", "color": "#d89441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_battery_status", "name": "battery_status", "type": "topic", "color": "#4bd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_satellite_info", "name": "satellite_info", "type": "topic", "color": "#41d8b4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission_result", "name": "mission_result", "type": "topic", "color": "#41d8be", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failsafe_flags", "name": "failsafe_flags", "type": "topic", "color": "#4160d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_status", "name": "vehicle_status", "type": "topic", "color": "#9441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_takeoff_status", "name": "takeoff_status", "type": "topic", "color": "#d84175", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_health_report", "name": "health_report", "type": "topic", "color": "#41d894", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_logger_status", "name": "logger_status", "type": "topic", "color": "#41d8c9", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_home_position", "name": "home_position", "type": "topic", "color": "#7541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_status", "name": "camera_status", "type": "topic", "color": "#8a41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_safety_button", "name": "safety_button", "type": "topic", "color": "#9f41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_actuator_test", "name": "actuator_test", "type": "topic", "color": "#d841b4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_system_power", "name": "system_power", "type": "topic", "color": "#d84141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_accel", "name": "sensor_accel", "type": "topic", "color": "#bed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_px4io_status", "name": "px4io_status", "type": "topic", "color": "#41d89f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tune_control", "name": "tune_control", "type": "topic", "color": "#6041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear", "name": "landing_gear", "type": "topic", "color": "#d341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu", "name": "vehicle_imu", "type": "topic", "color": "#d8d341", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream", "name": "ulog_stream", "type": "topic", "color": "#d3d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_baro", "name": "sensor_baro", "type": "topic", "color": "#94d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_array", "name": "debug_array", "type": "topic", "color": "#55d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_led_control", "name": "led_control", "type": "topic", "color": "#4175d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_value", "name": "debug_value", "type": "topic", "color": "#d841a9", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro", "name": "sensor_gyro", "type": "topic", "color": "#d84155", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_mag", "name": "sensor_mag", "type": "topic", "color": "#d8be41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_vect", "name": "debug_vect", "type": "topic", "color": "#a9d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_adc_report", "name": "adc_report", "type": "topic", "color": "#41d86a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_status", "name": "rtl_status", "type": "topic", "color": "#41d875", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gps", "name": "sensor_gps", "type": "topic", "color": "#d8414b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/SensorGps.msg"}, {"id": "t_input_rc", "name": "input_rc", "type": "topic", "color": "#41d87f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed", "name": "airspeed", "type": "topic", "color": "#41d8d3", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource1d.msg"}, {"id": "t_mission", "name": "mission", "type": "topic", "color": "#d841be", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_event", "name": "event", "type": "topic", "color": "#d841c9", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_wind", "name": "wind", "type": "topic", "color": "#d89f41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/Wind.msg"}], "links": [{"source": "m_board_adc", "target": "t_system_power", "color": "#d84141", "style": "dashed"}, {"source": "m_board_adc", "target": "t_adc_report", "color": "#41d86a", "style": "dashed"}, {"source": "m_ms5611", "target": "t_sensor_baro", "color": "#94d841", "style": "dashed"}, {"source": "m_septentrio", "target": "t_gps_inject_data", "color": "#41d3d8", "style": "dashed"}, {"source": "m_septentrio", "target": "t_sensor_gps", "color": "#d8414b", "style": "dashed"}, {"source": "m_septentrio", "target": "t_satellite_info", "color": "#41d8b4", "style": "dashed"}, {"source": "m_gps", "target": "t_gps_inject_data", "color": "#41d3d8", "style": "dashed"}, {"source": "m_gps", "target": "t_satellite_info", "color": "#41d8b4", "style": "dashed"}, {"source": "m_gps", "target": "t_sensor_gps", "color": "#d8414b", "style": "dashed"}, {"source": "m_mpu6000", "target": "t_sensor_accel", "color": "#bed841", "style": "dashed"}, {"source": "m_mpu6000", "target": "t_sensor_gyro", "color": "#d84155", "style": "dashed"}, {"source": "m_l3gd20", "target": "t_sensor_gyro", "color": "#d84155", "style": "dashed"}, {"source": "m_lsm303d", "target": "t_sensor_accel", "color": "#bed841", "style": "dashed"}, {"source": "m_lsm303d", "target": "t_sensor_mag", "color": "#d8be41", "style": "dashed"}, {"source": "m_hmc5883", "target": "t_sensor_mag", "color": "#d8be41", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_motors", "color": "#4194d8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_armed", "color": "#d86041", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_outputs", "color": "#d8b441", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_test", "color": "#d841b4", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_motors", "color": "#4194d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command_ack", "color": "#417fd8", "style": "dashed"}, {"source": "m_px4io", "target": "t_led_control", "color": "#4175d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_safety_button", "color": "#9f41d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_armed", "color": "#d86041", "style": "dashed"}, {"source": "m_px4io", "target": "t_tune_control", "color": "#6041d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_test", "color": "#d841b4", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command", "color": "#be41d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_outputs", "color": "#d8b441", "style": "dashed"}, {"source": "m_px4io", "target": "t_px4io_status", "color": "#41d89f", "style": "dashed"}, {"source": "m_px4io", "target": "t_input_rc", "color": "#41d87f", "style": "dashed"}, {"source": "m_tone_alarm", "target": "t_tune_control", "color": "#6041d8", "style": "dashed"}, {"source": "m_battery_status", "target": "t_battery_status", "color": "#4bd841", "style": "dashed"}, {"source": "m_commander", "target": "t_failsafe_flags", "color": "#4160d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_status", "color": "#9441d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_control_mode", "color": "#75d841", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command_ack", "color": "#417fd8", "style": "dashed"}, {"source": "m_commander", "target": "t_event", "color": "#d841c9", "style": "dashed"}, {"source": "m_commander", "target": "t_led_control", "color": "#4175d8", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_armed", "color": "#d86041", "style": "dashed"}, {"source": "m_commander", "target": "t_tune_control", "color": "#6041d8", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_test", "color": "#d841b4", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command", "color": "#be41d8", "style": "dashed"}, {"source": "m_commander", "target": "t_power_button_state", "color": "#41c9d8", "style": "dashed"}, {"source": "m_commander", "target": "t_home_position", "color": "#7541d8", "style": "dashed"}, {"source": "m_commander", "target": "t_register_ext_component_reply", "color": "#6a41d8", "style": "dashed"}, {"source": "m_commander", "target": "t_health_report", "color": "#41d894", "style": "dashed"}, {"source": "m_commander", "target": "t_failure_detector_status", "color": "#41d84b", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_control_allocator_status", "color": "#d86a41", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_motors", "color": "#4194d8", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos_trim", "color": "#d88a41", "style": "dashed"}, {"source": "m_dataman", "target": "t_dataman_response", "color": "#d8419f", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_attitude", "color": "#d841d3", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_local_position", "color": "#41b4d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_sensor_selection", "color": "#418ad8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_command_ack", "color": "#417fd8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_wind", "color": "#d89f41", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_odometry", "color": "#d8c941", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_sensor_bias", "color": "#c9d841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status", "color": "#b4d841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_global_position", "color": "#d8416a", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status_flags", "color": "#9fd841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_selector_status", "color": "#8ad841", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_vehicle_constraints", "color": "#7fd841", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_trajectory_setpoint", "color": "#d84194", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_landing_gear", "color": "#d341d8", "style": "dashed"}, {"source": "m_land_detector", "target": "t_vehicle_land_detected", "color": "#41d8a9", "style": "dashed"}, {"source": "m_logger", "target": "t_logger_status", "color": "#41d8c9", "style": "dashed"}, {"source": "m_logger", "target": "t_vehicle_command_ack", "color": "#417fd8", "style": "dashed"}, {"source": "m_logger", "target": "t_ulog_stream", "color": "#d3d841", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_status", "color": "#9441d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_action_request", "color": "#d89441", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_setpoint", "color": "#5541d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_command", "color": "#be41d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_landing_gear", "color": "#d341d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_switches", "color": "#a941d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gps_inject_data", "color": "#41d3d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_attitude_status", "color": "#6ad841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_dataman_request", "color": "#d84b41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_rates_setpoint", "color": "#b441d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_landing_target_pose", "color": "#60d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_baro", "color": "#94d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_array", "color": "#55d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_information", "color": "#d87541", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command", "color": "#be41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_battery_status", "color": "#4bd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude", "color": "#d841d3", "style": "dashed"}, {"source": "m_mavlink", "target": "t_rc_parameter_map", "color": "#d87f41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_distance_sensor", "color": "#41d855", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_local_position", "color": "#41b4d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_key_value", "color": "#41d860", "style": "dashed"}, {"source": "m_mavlink", "target": "t_event", "color": "#d841c9", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command_ack", "color": "#417fd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mission", "color": "#d841be", "style": "dashed"}, {"source": "m_mavlink", "target": "t_differential_pressure", "color": "#d8a941", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_visual_odometry", "color": "#416ad8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_input_rc", "color": "#41d87f", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_value", "color": "#d841a9", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_mag", "color": "#d8be41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_trajectory_setpoint", "color": "#d84194", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude_setpoint", "color": "#4155d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_offboard_control_mode", "color": "#41d88a", "style": "dashed"}, {"source": "m_mavlink", "target": "t_transponder_report", "color": "#4b41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_ulog_stream_ack", "color": "#4141d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_tune_control", "color": "#6041d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_accel", "color": "#bed841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_optical_flow", "color": "#7f41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_camera_status", "color": "#8a41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_telemetry_status", "color": "#d8417f", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_global_position", "color": "#d8416a", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_vect", "color": "#a9d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gyro", "color": "#d84155", "style": "dashed"}, {"source": "m_mavlink", "target": "t_airspeed", "color": "#41d8d3", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gps", "color": "#d8414b", "style": "dashed"}, {"source": "m_mc_att_control", "target": "t_vehicle_rates_setpoint", "color": "#b441d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_trajectory_setpoint", "color": "#d84194", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#4155d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_takeoff_status", "color": "#d84175", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#c941d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_constraints", "color": "#7fd841", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#b441d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_dataman_request", "color": "#d84b41", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command", "color": "#be41d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_status", "color": "#41bed8", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_result", "color": "#419fd8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command_ack", "color": "#417fd8", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission", "color": "#d841be", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_status", "color": "#41d875", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_time_estimate", "color": "#414bd8", "style": "dashed"}, {"source": "m_navigator", "target": "t_transponder_report", "color": "#4b41d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_navigator_status", "color": "#d8418a", "style": "dashed"}, {"source": "m_navigator", "target": "t_home_position", "color": "#7541d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_land_detected", "color": "#41d8a9", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_status", "color": "#9441d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission_result", "color": "#41d8be", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_global_position", "color": "#d8416a", "style": "dashed"}, {"source": "m_navigator", "target": "t_position_setpoint_triplet", "color": "#d84160", "style": "dashed"}, {"source": "m_rc_update", "target": "t_manual_control_switches", "color": "#a941d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensors_status_imu", "color": "#d85541", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_combined", "color": "#41a9d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_selection", "color": "#418ad8", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu", "color": "#d8d341", "style": "dashed"}, {"source": "m_sensors", "target": "t_differential_pressure", "color": "#d8a941", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu_status", "color": "#41d841", "style": "dashed"}, {"source": "m_sensors", "target": "t_airspeed", "color": "#41d8d3", "style": "dashed"}, {"source": "m_tune_control", "target": "t_tune_control", "color": "#6041d8", "style": "dashed"}, {"source": "t_adc_report", "target": "m_board_adc", "color": "#41d86a", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_cdcacm_autostart", "color": "#d86041", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_septentrio", "color": "#41d3d8", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_gps", "color": "#41d3d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled", "color": "#4175d8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out", "color": "#d88a41", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out", "color": "#4194d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out", "color": "#d86041", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out", "color": "#5541d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out", "color": "#d841b4", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out", "color": "#be41d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out", "color": "#d341d8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_px4io", "color": "#d88a41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_px4io", "color": "#9441d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_px4io", "color": "#4194d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_px4io", "color": "#d86041", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_px4io", "color": "#5541d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_px4io", "color": "#d841b4", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_px4io", "color": "#be41d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_px4io", "color": "#d341d8", "style": "normal"}, {"source": "t_px4io_status", "target": "m_px4io", "color": "#41d89f", "style": "normal"}, {"source": "t_tune_control", "target": "m_tone_alarm", "color": "#6041d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_status", "color": "#9441d8", "style": "normal"}, {"source": "t_adc_report", "target": "m_battery_status", "color": "#41d86a", "style": "normal"}, {"source": "t_system_power", "target": "m_commander", "color": "#d84141", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_commander", "color": "#d85541", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_commander", "color": "#d86041", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_commander", "color": "#be41d8", "style": "normal"}, {"source": "t_power_button_state", "target": "m_commander", "color": "#41c9d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_commander", "color": "#4bd841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_commander", "color": "#d841d3", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_commander", "color": "#41d841", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_commander", "color": "#41d855", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_commander", "color": "#41b4d8", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_commander", "color": "#d8414b", "style": "normal"}, {"source": "t_geofence_result", "target": "m_commander", "color": "#419fd8", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_commander", "color": "#417fd8", "style": "normal"}, {"source": "t_action_request", "target": "m_commander", "color": "#d89441", "style": "normal"}, {"source": "t_event", "target": "m_commander", "color": "#d841c9", "style": "normal"}, {"source": "t_wind", "target": "m_commander", "color": "#d89f41", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_commander", "color": "#d8a941", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_commander", "color": "#418ad8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_commander", "color": "#4194d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_commander", "color": "#a941d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_commander", "color": "#d8be41", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_commander", "color": "#41d88a", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_commander", "color": "#414bd8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_commander", "color": "#c9d841", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_commander", "color": "#bed841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_commander", "color": "#5541d8", "style": "normal"}, {"source": "t_navigator_status", "target": "m_commander", "color": "#d8418a", "style": "normal"}, {"source": "t_home_position", "target": "m_commander", "color": "#7541d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_commander", "color": "#41d8a9", "style": "normal"}, {"source": "t_telemetry_status", "target": "m_commander", "color": "#d8417f", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_commander", "color": "#9441d8", "style": "normal"}, {"source": "t_mission_result", "target": "m_commander", "color": "#41d8be", "style": "normal"}, {"source": "t_estimator_status", "target": "m_commander", "color": "#b4d841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_commander", "color": "#d8416a", "style": "normal"}, {"source": "t_safety_button", "target": "m_commander", "color": "#9f41d8", "style": "normal"}, {"source": "t_estimator_status_flags", "target": "m_commander", "color": "#9fd841", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_commander", "color": "#d84155", "style": "normal"}, {"source": "t_logger_status", "target": "m_commander", "color": "#41d8c9", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_commander", "color": "#94d841", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_commander", "color": "#8ad841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_control_allocator", "color": "#9441d8", "style": "normal"}, {"source": "t_failure_detector_status", "target": "m_control_allocator", "color": "#41d84b", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_control_allocator", "color": "#a941d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_control_allocator", "color": "#75d841", "style": "normal"}, {"source": "t_dataman_request", "target": "m_dataman", "color": "#d84b41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ekf2", "color": "#9441d8", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_ekf2", "color": "#d85541", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_ekf2", "color": "#41a9d8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_ekf2", "color": "#60d841", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_ekf2", "color": "#d8d341", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_ekf2", "color": "#418ad8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_ekf2", "color": "#be41d8", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_ekf2", "color": "#416ad8", "style": "normal"}, {"source": "t_airspeed", "target": "m_ekf2", "color": "#41d8d3", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_ekf2", "color": "#41d8a9", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_ekf2", "color": "#41d855", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_flight_mode_manager", "color": "#41b4d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_flight_mode_manager", "color": "#4155d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_flight_mode_manager", "color": "#9441d8", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_flight_mode_manager", "color": "#d84175", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_flight_mode_manager", "color": "#75d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_flight_mode_manager", "color": "#be41d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_flight_mode_manager", "color": "#41d8a9", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_land_detector", "color": "#41b4d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_land_detector", "color": "#d84194", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_land_detector", "color": "#9441d8", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_land_detector", "color": "#d84175", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_land_detector", "color": "#418ad8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_land_detector", "color": "#d8416a", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_land_detector", "color": "#d84160", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_land_detector", "color": "#d86041", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_land_detector", "color": "#41d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_land_detector", "color": "#75d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_logger", "color": "#9441d8", "style": "normal"}, {"source": "t_ulog_stream_ack", "target": "m_logger", "color": "#4141d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_logger", "color": "#5541d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_logger", "color": "#be41d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_logger", "color": "#4bd841", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_manual_control", "color": "#a941d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_manual_control", "color": "#5541d8", "style": "normal"}, {"source": "t_action_request", "target": "m_manual_control", "color": "#d89441", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_manual_control", "color": "#9441d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_mavlink", "color": "#d86041", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_mavlink", "color": "#d87541", "style": "normal"}, {"source": "t_wind", "target": "m_mavlink", "color": "#d89f41", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_mavlink", "color": "#d8a941", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_mavlink", "color": "#d8b441", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mavlink", "color": "#d8be41", "style": "normal"}, {"source": "t_vehicle_odometry", "target": "m_mavlink", "color": "#d8c941", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_mavlink", "color": "#d8d341", "style": "normal"}, {"source": "t_ulog_stream", "target": "m_mavlink", "color": "#d3d841", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_mavlink", "color": "#c9d841", "style": "normal"}, {"source": "t_estimator_status", "target": "m_mavlink", "color": "#b4d841", "style": "normal"}, {"source": "t_debug_vect", "target": "m_mavlink", "color": "#a9d841", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_mavlink", "color": "#94d841", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_mavlink", "color": "#8ad841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mavlink", "color": "#75d841", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_mavlink", "color": "#6ad841", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_mavlink", "color": "#60d841", "style": "normal"}, {"source": "t_debug_array", "target": "m_mavlink", "color": "#55d841", "style": "normal"}, {"source": "t_battery_status", "target": "m_mavlink", "color": "#4bd841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_mavlink", "color": "#41d841", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_mavlink", "color": "#41d855", "style": "normal"}, {"source": "t_debug_key_value", "target": "m_mavlink", "color": "#41d860", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_mavlink", "color": "#d8414b", "style": "normal"}, {"source": "t_input_rc", "target": "m_mavlink", "color": "#41d87f", "style": "normal"}, {"source": "t_health_report", "target": "m_mavlink", "color": "#41d894", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mavlink", "color": "#41d8a9", "style": "normal"}, {"source": "t_satellite_info", "target": "m_mavlink", "color": "#41d8b4", "style": "normal"}, {"source": "t_mission_result", "target": "m_mavlink", "color": "#41d8be", "style": "normal"}, {"source": "t_airspeed", "target": "m_mavlink", "color": "#41d8d3", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_mavlink", "color": "#41d3d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mavlink", "color": "#41b4d8", "style": "normal"}, {"source": "t_geofence_result", "target": "m_mavlink", "color": "#419fd8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_mavlink", "color": "#418ad8", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_mavlink", "color": "#417fd8", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_mavlink", "color": "#4160d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mavlink", "color": "#4155d8", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_mavlink", "color": "#414bd8", "style": "normal"}, {"source": "t_transponder_report", "target": "m_mavlink", "color": "#4b41d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mavlink", "color": "#5541d8", "style": "normal"}, {"source": "t_register_ext_component_reply", "target": "m_mavlink", "color": "#6a41d8", "style": "normal"}, {"source": "t_home_position", "target": "m_mavlink", "color": "#7541d8", "style": "normal"}, {"source": "t_camera_status", "target": "m_mavlink", "color": "#8a41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mavlink", "color": "#9441d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_mavlink", "color": "#a941d8", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mavlink", "color": "#b441d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_mavlink", "color": "#be41d8", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_mavlink", "color": "#c941d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mavlink", "color": "#d841d3", "style": "normal"}, {"source": "t_event", "target": "m_mavlink", "color": "#d841c9", "style": "normal"}, {"source": "t_mission", "target": "m_mavlink", "color": "#d841be", "style": "normal"}, {"source": "t_debug_value", "target": "m_mavlink", "color": "#d841a9", "style": "normal"}, {"source": "t_dataman_response", "target": "m_mavlink", "color": "#d8419f", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_mavlink", "color": "#d8416a", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_mavlink", "color": "#d84160", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_att_control", "color": "#41b4d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mc_att_control", "color": "#4155d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_att_control", "color": "#9441d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_att_control", "color": "#5541d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mc_att_control", "color": "#d841d3", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_att_control", "color": "#41d8a9", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_att_control", "color": "#75d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_pos_control", "color": "#41b4d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_mc_pos_control", "color": "#d84194", "style": "normal"}, {"source": "t_vehicle_constraints", "target": "m_mc_pos_control", "color": "#7fd841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_pos_control", "color": "#41d8a9", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_pos_control", "color": "#75d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_rate_control", "color": "#9441d8", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mc_rate_control", "color": "#b441d8", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_mc_rate_control", "color": "#d86a41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_rate_control", "color": "#5541d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_mc_rate_control", "color": "#4bd841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_rate_control", "color": "#41d8a9", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_rate_control", "color": "#75d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_navigator", "color": "#41b4d8", "style": "normal"}, {"source": "t_dataman_response", "target": "m_navigator", "color": "#d8419f", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_navigator", "color": "#9441d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_navigator", "color": "#d8416a", "style": "normal"}, {"source": "t_transponder_report", "target": "m_navigator", "color": "#4b41d8", "style": "normal"}, {"source": "t_wind", "target": "m_navigator", "color": "#d89f41", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_navigator", "color": "#60d841", "style": "normal"}, {"source": "t_mission", "target": "m_navigator", "color": "#d841be", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_navigator", "color": "#be41d8", "style": "normal"}, {"source": "t_home_position", "target": "m_navigator", "color": "#7541d8", "style": "normal"}, {"source": "t_rtl_status", "target": "m_navigator", "color": "#41d875", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_navigator", "color": "#41d8a9", "style": "normal"}, {"source": "t_geofence_status", "target": "m_navigator", "color": "#41bed8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_rc_update", "color": "#a941d8", "style": "normal"}, {"source": "t_input_rc", "target": "m_rc_update", "color": "#41d87f", "style": "normal"}, {"source": "t_rc_parameter_map", "target": "m_rc_update", "color": "#d87f41", "style": "normal"}, {"source": "t_adc_report", "target": "m_sensors", "color": "#41d86a", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_sensors", "color": "#418ad8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_sensors", "color": "#75d841", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_sensors", "color": "#d8d341", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_sensors", "color": "#d8a941", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_sensors", "color": "#c9d841", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_sensors", "color": "#bed841", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_sensors", "color": "#d84155", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_sensors", "color": "#41d841", "style": "normal"}, {"source": "t_sensor_optical_flow", "target": "m_sensors", "color": "#7f41d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_sensors", "color": "#d8be41", "style": "normal"}]} \ No newline at end of file diff --git a/docs/public/middleware/graph_px4_fmu-v4.json b/docs/public/middleware/graph_px4_fmu-v4.json index 3c4197a667..2f2a7e7b5e 100644 --- a/docs/public/middleware/graph_px4_fmu-v4.json +++ b/docs/public/middleware/graph_px4_fmu-v4.json @@ -1 +1 @@ -{"nodes": [{"id": "m_fw_autotune_attitude_control", "name": "fw_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_autotune_attitude_control", "name": "mc_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_landing_target_estimator", "name": "landing_target_estimator", "type": "Module", "color": "#666666"}, {"id": "m_local_position_estimator", "name": "local_position_estimator", "type": "Module", "color": "#666666"}, {"id": "m_temperature_compensation", "name": "temperature_compensation", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_serial", "name": "lightware_laser_serial", "type": "Module", "color": "#666666"}, {"id": "m_attitude_estimator_q", "name": "attitude_estimator_q", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_i2c", "name": "lightware_laser_i2c", "type": "Module", "color": "#666666"}, {"id": "m_flight_mode_manager", "name": "flight_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_mag_bias_estimator", "name": "mag_bias_estimator", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_is31fl3195", "name": "rgbled_is31fl3195", "type": "Module", "color": "#666666"}, {"id": "m_airspeed_selector", "name": "airspeed_selector", "type": "Module", "color": "#666666"}, {"id": "m_control_allocator", "name": "control_allocator", "type": "Module", "color": "#666666"}, {"id": "m_rover_pos_control", "name": "rover_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_cdcacm_autostart", "name": "cdcacm_autostart", "type": "Module", "color": "#666666"}, {"id": "m_gyro_calibration", "name": "gyro_calibration", "type": "Module", "color": "#666666"}, {"id": "m_uxrce_dds_client", "name": "uxrce_dds_client", "type": "Module", "color": "#666666"}, {"id": "m_vtol_att_control", "name": "vtol_att_control", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_ncp5623c", "name": "rgbled_ncp5623c", "type": "Module", "color": "#666666"}, {"id": "m_pca9685_pwm_out", "name": "pca9685_pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_frsky_telemetry", "name": "frsky_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_camera_feedback", "name": "camera_feedback", "type": "Module", "color": "#666666"}, {"id": "m_fw_rate_control", "name": "fw_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_rate_control", "name": "mc_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_sensor_baro_sim", "name": "sensor_baro_sim", "type": "Module", "color": "#666666"}, {"id": "m_uuv_att_control", "name": "uuv_att_control", "type": "Module", "color": "#666666"}, {"id": "m_uuv_pos_control", "name": "uuv_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_camera_capture", "name": "camera_capture", "type": "Module", "color": "#666666"}, {"id": "m_camera_trigger", "name": "camera_trigger", "type": "Module", "color": "#666666"}, {"id": "m_ulanding_radar", "name": "ulanding_radar", "type": "Module", "color": "#666666"}, {"id": "m_hott_telemetry", "name": "hott_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_battery_status", "name": "battery_status", "type": "Module", "color": "#666666"}, {"id": "m_fw_att_control", "name": "fw_att_control", "type": "Module", "color": "#666666"}, {"id": "m_fw_pos_control", "name": "fw_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_manual_control", "name": "manual_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_att_control", "name": "mc_att_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_pos_control", "name": "mc_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_sensor_gps_sim", "name": "sensor_gps_sim", "type": "Module", "color": "#666666"}, {"id": "m_sensor_mag_sim", "name": "sensor_mag_sim", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_lp5562", "name": "rgbled_lp5562", "type": "Module", "color": "#666666"}, {"id": "m_safety_button", "name": "safety_button", "type": "Module", "color": "#666666"}, {"id": "m_land_detector", "name": "land_detector", "type": "Module", "color": "#666666"}, {"id": "m_simulator_sih", "name": "simulator_sih", "type": "Module", "color": "#666666"}, {"id": "m_actuator_test", "name": "actuator_test", "type": "Module", "color": "#666666"}, {"id": "m_tune_control", "name": "tune_control", "type": "Module", "color": "#666666"}, {"id": "m_mpu9250_i2c", "name": "mpu9250_i2c", "type": "Module", "color": "#666666"}, {"id": "m_esc_battery", "name": "esc_battery", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out_sim", "name": "pwm_out_sim", "type": "Module", "color": "#666666"}, {"id": "m_led_control", "name": "led_control", "type": "Module", "color": "#666666"}, {"id": "m_batt_smbus", "name": "batt_smbus", "type": "Module", "color": "#666666"}, {"id": "m_teraranger", "name": "teraranger", "type": "Module", "color": "#666666"}, {"id": "m_septentrio", "name": "septentrio", "type": "Module", "color": "#666666"}, {"id": "m_tone_alarm", "name": "tone_alarm", "type": "Module", "color": "#666666"}, {"id": "m_send_event", "name": "send_event", "type": "Module", "color": "#666666"}, {"id": "m_board_adc", "name": "board_adc", "type": "Module", "color": "#666666"}, {"id": "m_ms5525dso", "name": "ms5525dso", "type": "Module", "color": "#666666"}, {"id": "m_adis16448", "name": "adis16448", "type": "Module", "color": "#666666"}, {"id": "m_icm20608g", "name": "icm20608g", "type": "Module", "color": "#666666"}, {"id": "m_vectornav", "name": "vectornav", "type": "Module", "color": "#666666"}, {"id": "m_lsm303agr", "name": "lsm303agr", "type": "Module", "color": "#666666"}, {"id": "m_mmc5983ma", "name": "mmc5983ma", "type": "Module", "color": "#666666"}, {"id": "m_thoneflow", "name": "thoneflow", "type": "Module", "color": "#666666"}, {"id": "m_pwm_input", "name": "pwm_input", "type": "Module", "color": "#666666"}, {"id": "m_commander", "name": "commander", "type": "Module", "color": "#666666"}, {"id": "m_navigator", "name": "navigator", "type": "Module", "color": "#666666"}, {"id": "m_rc_update", "name": "rc_update", "type": "Module", "color": "#666666"}, {"id": "m_icp101xx", "name": "icp101xx", "type": "Module", "color": "#666666"}, {"id": "m_icp201xx", "name": "icp201xx", "type": "Module", "color": "#666666"}, {"id": "m_ms4525do", "name": "ms4525do", "type": "Module", "color": "#666666"}, {"id": "m_icm20602", "name": "icm20602", "type": "Module", "color": "#666666"}, {"id": "m_icm20948", "name": "icm20948", "type": "Module", "color": "#666666"}, {"id": "m_qmc5883l", "name": "qmc5883l", "type": "Module", "color": "#666666"}, {"id": "m_vcm1193l", "name": "vcm1193l", "type": "Module", "color": "#666666"}, {"id": "m_rc_input", "name": "rc_input", "type": "Module", "color": "#666666"}, {"id": "m_load_mon", "name": "load_mon", "type": "Module", "color": "#666666"}, {"id": "m_fake_gps", "name": "fake_gps", "type": "Module", "color": "#666666"}, {"id": "m_ads1115", "name": "ads1115", "type": "Module", "color": "#666666"}, {"id": "m_lps22hb", "name": "lps22hb", "type": "Module", "color": "#666666"}, {"id": "m_lps33hw", "name": "lps33hw", "type": "Module", "color": "#666666"}, {"id": "m_mpc2520", "name": "mpc2520", "type": "Module", "color": "#666666"}, {"id": "m_cm8jl65", "name": "cm8jl65", "type": "Module", "color": "#666666"}, {"id": "m_tf02pro", "name": "tf02pro", "type": "Module", "color": "#666666"}, {"id": "m_vl53l0x", "name": "vl53l0x", "type": "Module", "color": "#666666"}, {"id": "m_vl53l1x", "name": "vl53l1x", "type": "Module", "color": "#666666"}, {"id": "m_mpu9250", "name": "mpu9250", "type": "Module", "color": "#666666"}, {"id": "m_ak09916", "name": "ak09916", "type": "Module", "color": "#666666"}, {"id": "m_hmc5883", "name": "hmc5883", "type": "Module", "color": "#666666"}, {"id": "m_ist8308", "name": "ist8308", "type": "Module", "color": "#666666"}, {"id": "m_ist8310", "name": "ist8310", "type": "Module", "color": "#666666"}, {"id": "m_lis3mdl", "name": "lis3mdl", "type": "Module", "color": "#666666"}, {"id": "m_iis2mdc", "name": "iis2mdc", "type": "Module", "color": "#666666"}, {"id": "m_paa3905", "name": "paa3905", "type": "Module", "color": "#666666"}, {"id": "m_paw3902", "name": "paw3902", "type": "Module", "color": "#666666"}, {"id": "m_pmw3901", "name": "pmw3901", "type": "Module", "color": "#666666"}, {"id": "m_px4flow", "name": "px4flow", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out", "name": "pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_dataman", "name": "dataman", "type": "Module", "color": "#666666"}, {"id": "m_mavlink", "name": "mavlink", "type": "Module", "color": "#666666"}, {"id": "m_sensors", "name": "sensors", "type": "Module", "color": "#666666"}, {"id": "m_bmp280", "name": "bmp280", "type": "Module", "color": "#666666"}, {"id": "m_bmp388", "name": "bmp388", "type": "Module", "color": "#666666"}, {"id": "m_bmp581", "name": "bmp581", "type": "Module", "color": "#666666"}, {"id": "m_dps310", "name": "dps310", "type": "Module", "color": "#666666"}, {"id": "m_ms5611", "name": "ms5611", "type": "Module", "color": "#666666"}, {"id": "m_ll40ls", "name": "ll40ls", "type": "Module", "color": "#666666"}, {"id": "m_tfmini", "name": "tfmini", "type": "Module", "color": "#666666"}, {"id": "m_heater", "name": "heater", "type": "Module", "color": "#666666"}, {"id": "m_irlock", "name": "irlock", "type": "Module", "color": "#666666"}, {"id": "m_rgbled", "name": "rgbled", "type": "Module", "color": "#666666"}, {"id": "m_ak8963", "name": "ak8963", "type": "Module", "color": "#666666"}, {"id": "m_bmm150", "name": "bmm150", "type": "Module", "color": "#666666"}, {"id": "m_rm3100", "name": "rm3100", "type": "Module", "color": "#666666"}, {"id": "m_ina226", "name": "ina226", "type": "Module", "color": "#666666"}, {"id": "m_batmon", "name": "batmon", "type": "Module", "color": "#666666"}, {"id": "m_uavcan", "name": "uavcan", "type": "Module", "color": "#666666"}, {"id": "m_gimbal", "name": "gimbal", "type": "Module", "color": "#666666"}, {"id": "m_logger", "name": "logger", "type": "Module", "color": "#666666"}, {"id": "m_spa06", "name": "spa06", "type": "Module", "color": "#666666"}, {"id": "m_spl06", "name": "spl06", "type": "Module", "color": "#666666"}, {"id": "m_sdp3x", "name": "sdp3x", "type": "Module", "color": "#666666"}, {"id": "m_dshot", "name": "dshot", "type": "Module", "color": "#666666"}, {"id": "m_ekf2", "name": "ekf2", "type": "Module", "color": "#666666"}, {"id": "m_gps", "name": "gps", "type": "Module", "color": "#666666"}, {"id": "m_bst", "name": "bst", "type": "Module", "color": "#666666"}, {"id": "t_vehicle_angular_velocity_groundtruth", "name": "vehicle_angular_velocity_groundtruth", "type": "topic", "color": "#41d8c4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor_mode_change_request", "name": "distance_sensor_mode_change_request", "type": "topic", "color": "#7bd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position_groundtruth", "name": "vehicle_global_position_groundtruth", "type": "topic", "color": "#41d887", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_landing_status", "name": "position_controller_landing_status", "type": "topic", "color": "#b9d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_groundtruth", "name": "vehicle_local_position_groundtruth", "type": "topic", "color": "#abd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_manual_control", "name": "gimbal_manager_set_manual_control", "type": "topic", "color": "#d8bb41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_autotune_attitude_control_status", "name": "autotune_attitude_control_status", "type": "topic", "color": "#d88b41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_setpoint", "name": "vehicle_local_position_setpoint", "type": "topic", "color": "#60d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_attitude_status", "name": "gimbal_device_attitude_status", "type": "topic", "color": "#7541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_groundtruth", "name": "vehicle_attitude_groundtruth", "type": "topic", "color": "#41d8a9", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_register_ext_component_reply", "name": "register_ext_component_reply", "type": "topic", "color": "#41d8cb", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fw_virtual_attitude_setpoint", "name": "fw_virtual_attitude_setpoint", "type": "topic", "color": "#414ad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mc_virtual_attitude_setpoint", "name": "mc_virtual_attitude_setpoint", "type": "topic", "color": "#d84184", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_attitude", "name": "gimbal_manager_set_attitude", "type": "topic", "color": "#d89241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_information", "name": "gimbal_manager_information", "type": "topic", "color": "#d85541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_controls_status_0", "name": "actuator_controls_status_0", "type": "topic", "color": "#d86941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorControlsStatus.msg"}, {"id": "t_position_controller_status", "name": "position_controller_status", "type": "topic", "color": "#41afd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_set_attitude", "name": "gimbal_device_set_attitude", "type": "topic", "color": "#4165d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_selector_status", "name": "estimator_selector_status", "type": "topic", "color": "#d86241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_information", "name": "gimbal_device_information", "type": "topic", "color": "#d87e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_operator_id", "name": "open_drone_id_operator_id", "type": "topic", "color": "#41cbd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_setpoint_triplet", "name": "position_setpoint_triplet", "type": "topic", "color": "#41bdd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_setpoint", "name": "vehicle_attitude_setpoint", "type": "topic", "color": "#d8418b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tiltrotor_extra_controls", "name": "tiltrotor_extra_controls", "type": "topic", "color": "#67d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_arm_status", "name": "open_drone_id_arm_status", "type": "topic", "color": "#41d8d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_request", "name": "uavcan_parameter_request", "type": "topic", "color": "#4c41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_control_allocator_status", "name": "control_allocator_status", "type": "topic", "color": "#b941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failure_detector_status", "name": "failure_detector_status", "type": "topic", "color": "#d85c41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_setpoint", "name": "manual_control_setpoint", "type": "topic", "color": "#d8b441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_visual_odometry", "name": "vehicle_visual_odometry", "type": "topic", "color": "#5341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position", "name": "vehicle_global_position", "type": "topic", "color": "#7b41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flight_phase_estimation", "name": "flight_phase_estimation", "type": "topic", "color": "#9041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_switches", "name": "manual_control_switches", "type": "topic", "color": "#b241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_thrust_setpoint", "name": "vehicle_thrust_setpoint", "type": "topic", "color": "#bf41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleThrustSetpoint.msg"}, {"id": "t_launch_detection_status", "name": "launch_detection_status", "type": "topic", "color": "#c641d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_torque_setpoint", "name": "vehicle_torque_setpoint", "type": "topic", "color": "#d84155", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleTorqueSetpoint.msg"}, {"id": "t_vehicle_local_position", "name": "vehicle_local_position", "type": "topic", "color": "#d84141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status_flags", "name": "estimator_status_flags", "type": "topic", "color": "#d8c241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_mocap_odometry", "name": "vehicle_mocap_odometry", "type": "topic", "color": "#b2d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_value", "name": "uavcan_parameter_value", "type": "topic", "color": "#59d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_rates_setpoint", "name": "vehicle_rates_setpoint", "type": "topic", "color": "#41d8af", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_land_detected", "name": "vehicle_land_detected", "type": "topic", "color": "#d87041", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_self_id", "name": "open_drone_id_self_id", "type": "topic", "color": "#d8d641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_offboard_control_mode", "name": "offboard_control_mode", "type": "topic", "color": "#41d857", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_differential_pressure", "name": "differential_pressure", "type": "topic", "color": "#41a2d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_sensor_bias", "name": "estimator_sensor_bias", "type": "topic", "color": "#d841b4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_status", "name": "gimbal_manager_status", "type": "topic", "color": "#d84169", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_servos_trim", "name": "actuator_servos_trim", "type": "topic", "color": "#9dd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs_sim", "name": "actuator_outputs_sim", "type": "topic", "color": "#45d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_vehicle_control_mode", "name": "vehicle_control_mode", "type": "topic", "color": "#41d1d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_system", "name": "open_drone_id_system", "type": "topic", "color": "#418ed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_figure_eight_status", "name": "figure_eight_status", "type": "topic", "color": "#d84e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command_ack", "name": "vehicle_command_ack", "type": "topic", "color": "#41d865", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_trajectory_setpoint", "name": "trajectory_setpoint", "type": "topic", "color": "#415ed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vtol_vehicle_status", "name": "vtol_vehicle_status", "type": "topic", "color": "#6041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_constraints", "name": "vehicle_constraints", "type": "topic", "color": "#d441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_optical_flow", "name": "sensor_optical_flow", "type": "topic", "color": "#d841a0", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_target_pose", "name": "landing_target_pose", "type": "topic", "color": "#d84192", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_power_button_state", "name": "power_button_state", "type": "topic", "color": "#d84741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu_status", "name": "vehicle_imu_status", "type": "topic", "color": "#41d8bd", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear_wheel", "name": "landing_gear_wheel", "type": "topic", "color": "#a441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed_validated", "name": "airspeed_validated", "type": "topic", "color": "#d841cf", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_transponder_report", "name": "transponder_report", "type": "topic", "color": "#d841a6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensors_status_imu", "name": "sensors_status_imu", "type": "topic", "color": "#d8417e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_correction", "name": "sensor_correction", "type": "topic", "color": "#6ed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mount_orientation", "name": "mount_orientation", "type": "topic", "color": "#4cd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_spoilers_setpoint", "name": "spoilers_setpoint", "type": "topic", "color": "#41d85e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_rtl_time_estimate", "name": "rtl_time_estimate", "type": "topic", "color": "#41d872", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_v1_command", "name": "gimbal_v1_command", "type": "topic", "color": "#4143d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_telemetry_status", "name": "telemetry_status", "type": "topic", "color": "#d8c841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_response", "name": "dataman_response", "type": "topic", "color": "#75d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_selection", "name": "sensor_selection", "type": "topic", "color": "#53d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude", "name": "vehicle_attitude", "type": "topic", "color": "#41d88e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_odometry", "name": "vehicle_odometry", "type": "topic", "color": "#4157d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rc_parameter_map", "name": "rc_parameter_map", "type": "topic", "color": "#cd41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs", "name": "actuator_outputs", "type": "topic", "color": "#d841d6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_estimator_status", "name": "estimator_status", "type": "topic", "color": "#d841bb", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_navigator_status", "name": "navigator_status", "type": "topic", "color": "#d84162", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gps_inject_data", "name": "gps_inject_data", "type": "topic", "color": "#d89941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command", "name": "vehicle_command", "type": "topic", "color": "#cdd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor", "name": "distance_sensor", "type": "topic", "color": "#97d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_status", "name": "geofence_status", "type": "topic", "color": "#90d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_key_value", "name": "debug_key_value", "type": "topic", "color": "#41d894", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_request", "name": "dataman_request", "type": "topic", "color": "#41d8a2", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_controls", "name": "gimbal_controls", "type": "topic", "color": "#4179d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_combined", "name": "sensor_combined", "type": "topic", "color": "#4172d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream_ack", "name": "ulog_stream_ack", "type": "topic", "color": "#5941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_result", "name": "geofence_result", "type": "topic", "color": "#8941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_motors", "name": "actuator_motors", "type": "topic", "color": "#d8415c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_status", "name": "vehicle_status", "type": "topic", "color": "#d8a641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_capture", "name": "camera_capture", "type": "topic", "color": "#d8cf41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_armed", "name": "actuator_armed", "type": "topic", "color": "#41d84a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission_result", "name": "mission_result", "type": "topic", "color": "#41d850", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_action_request", "name": "action_request", "type": "topic", "color": "#41d8b6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_trigger", "name": "camera_trigger", "type": "topic", "color": "#41c4d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_satellite_info", "name": "satellite_info", "type": "topic", "color": "#4194d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flaps_setpoint", "name": "flaps_setpoint", "type": "topic", "color": "#4541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_takeoff_status", "name": "takeoff_status", "type": "topic", "color": "#d841c2", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_battery_status", "name": "battery_status", "type": "topic", "color": "#d84199", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failsafe_flags", "name": "failsafe_flags", "type": "topic", "color": "#d8414e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_test", "name": "actuator_test", "type": "topic", "color": "#d8ad41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_safety_button", "name": "safety_button", "type": "topic", "color": "#d4d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_logger_status", "name": "logger_status", "type": "topic", "color": "#a4d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_irlock_report", "name": "irlock_report", "type": "topic", "color": "#41d89b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_health_report", "name": "health_report", "type": "topic", "color": "#41d8d1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_home_position", "name": "home_position", "type": "topic", "color": "#4187d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_status", "name": "camera_status", "type": "topic", "color": "#d84177", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_orbit_status", "name": "orbit_status", "type": "topic", "color": "#41d86c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tune_control", "name": "tune_control", "type": "topic", "color": "#41d880", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear", "name": "landing_gear", "type": "topic", "color": "#41a9d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_accel", "name": "sensor_accel", "type": "topic", "color": "#4150d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_system_power", "name": "system_power", "type": "topic", "color": "#6741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream", "name": "ulog_stream", "type": "topic", "color": "#bfd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro", "name": "sensor_gyro", "type": "topic", "color": "#41d843", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_value", "name": "debug_value", "type": "topic", "color": "#41d879", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_array", "name": "debug_array", "type": "topic", "color": "#41b6d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_led_control", "name": "led_control", "type": "topic", "color": "#4180d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_roi", "name": "vehicle_roi", "type": "topic", "color": "#416cd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tecs_status", "name": "tecs_status", "type": "topic", "color": "#8241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_baro", "name": "sensor_baro", "type": "topic", "color": "#9d41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu", "name": "vehicle_imu", "type": "topic", "color": "#d841ad", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_status", "name": "rtl_status", "type": "topic", "color": "#d88441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_vect", "name": "debug_vect", "type": "topic", "color": "#d8a041", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_esc_status", "name": "esc_status", "type": "topic", "color": "#c6d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_mag", "name": "sensor_mag", "type": "topic", "color": "#82d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gps", "name": "sensor_gps", "type": "topic", "color": "#6e41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/SensorGps.msg"}, {"id": "t_adc_report", "name": "adc_report", "type": "topic", "color": "#d84147", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_pwm_input", "name": "pwm_input", "type": "topic", "color": "#d841c8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_input_rc", "name": "input_rc", "type": "topic", "color": "#419bd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed", "name": "airspeed", "type": "topic", "color": "#d84170", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource1d.msg"}, {"id": "t_mission", "name": "mission", "type": "topic", "color": "#89d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_cpuload", "name": "cpuload", "type": "topic", "color": "#ab41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_event", "name": "event", "type": "topic", "color": "#9741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_wind", "name": "wind", "type": "topic", "color": "#d87741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/Wind.msg"}], "links": [{"source": "m_ads1115", "target": "t_adc_report", "color": "#d84147", "style": "dashed"}, {"source": "m_board_adc", "target": "t_system_power", "color": "#6741d8", "style": "dashed"}, {"source": "m_board_adc", "target": "t_adc_report", "color": "#d84147", "style": "dashed"}, {"source": "m_bmp280", "target": "t_sensor_baro", "color": "#9d41d8", "style": "dashed"}, {"source": "m_bmp388", "target": "t_sensor_baro", "color": "#9d41d8", "style": "dashed"}, {"source": "m_bmp581", "target": "t_sensor_baro", "color": "#9d41d8", "style": "dashed"}, {"source": "m_dps310", "target": "t_sensor_baro", "color": "#9d41d8", "style": "dashed"}, {"source": "m_spa06", "target": "t_sensor_baro", "color": "#9d41d8", "style": "dashed"}, {"source": "m_spl06", "target": "t_sensor_baro", "color": "#9d41d8", "style": "dashed"}, {"source": "m_icp101xx", "target": "t_sensor_baro", "color": "#9d41d8", "style": "dashed"}, {"source": "m_icp201xx", "target": "t_sensor_baro", "color": "#9d41d8", "style": "dashed"}, {"source": "m_lps22hb", "target": "t_sensor_baro", "color": "#9d41d8", "style": "dashed"}, {"source": "m_lps33hw", "target": "t_sensor_baro", "color": "#9d41d8", "style": "dashed"}, {"source": "m_mpc2520", "target": "t_sensor_baro", "color": "#9d41d8", "style": "dashed"}, {"source": "m_ms5611", "target": "t_sensor_baro", "color": "#9d41d8", "style": "dashed"}, {"source": "m_batt_smbus", "target": "t_battery_status", "color": "#d84199", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_vehicle_command_ack", "color": "#41d865", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_camera_trigger", "color": "#41c4d8", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command_ack", "color": "#41d865", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command", "color": "#cdd841", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_camera_trigger", "color": "#41c4d8", "style": "dashed"}, {"source": "m_ms4525do", "target": "t_differential_pressure", "color": "#41a2d8", "style": "dashed"}, {"source": "m_ms5525dso", "target": "t_differential_pressure", "color": "#41a2d8", "style": "dashed"}, {"source": "m_sdp3x", "target": "t_differential_pressure", "color": "#41a2d8", "style": "dashed"}, {"source": "m_cm8jl65", "target": "t_distance_sensor", "color": "#97d841", "style": "dashed"}, {"source": "m_lightware_laser_i2c", "target": "t_distance_sensor", "color": "#97d841", "style": "dashed"}, {"source": "m_lightware_laser_serial", "target": "t_distance_sensor", "color": "#97d841", "style": "dashed"}, {"source": "m_ll40ls", "target": "t_distance_sensor", "color": "#97d841", "style": "dashed"}, {"source": "m_teraranger", "target": "t_distance_sensor", "color": "#97d841", "style": "dashed"}, {"source": "m_tf02pro", "target": "t_distance_sensor", "color": "#97d841", "style": "dashed"}, {"source": "m_tfmini", "target": "t_distance_sensor", "color": "#97d841", "style": "dashed"}, {"source": "m_ulanding_radar", "target": "t_distance_sensor", "color": "#97d841", "style": "dashed"}, {"source": "m_vl53l0x", "target": "t_distance_sensor", "color": "#97d841", "style": "dashed"}, {"source": "m_vl53l1x", "target": "t_distance_sensor", "color": "#97d841", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_outputs", "color": "#d841d6", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_motors", "color": "#d8415c", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_test", "color": "#d8ad41", "style": "dashed"}, {"source": "m_dshot", "target": "t_esc_status", "color": "#c6d841", "style": "dashed"}, {"source": "m_dshot", "target": "t_vehicle_command_ack", "color": "#41d865", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_armed", "color": "#41d84a", "style": "dashed"}, {"source": "m_septentrio", "target": "t_gps_inject_data", "color": "#d89941", "style": "dashed"}, {"source": "m_septentrio", "target": "t_satellite_info", "color": "#4194d8", "style": "dashed"}, {"source": "m_septentrio", "target": "t_sensor_gps", "color": "#6e41d8", "style": "dashed"}, {"source": "m_gps", "target": "t_gps_inject_data", "color": "#d89941", "style": "dashed"}, {"source": "m_gps", "target": "t_sensor_gps", "color": "#6e41d8", "style": "dashed"}, {"source": "m_gps", "target": "t_satellite_info", "color": "#4194d8", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_baro", "color": "#9d41d8", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_accel", "color": "#4150d8", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_mag", "color": "#82d841", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_gyro", "color": "#41d843", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_accel", "color": "#4150d8", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_gyro", "color": "#41d843", "style": "dashed"}, {"source": "m_icm20608g", "target": "t_sensor_accel", "color": "#4150d8", "style": "dashed"}, {"source": "m_icm20608g", "target": "t_sensor_gyro", "color": "#41d843", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_accel", "color": "#4150d8", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_mag", "color": "#82d841", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_gyro", "color": "#41d843", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_accel", "color": "#4150d8", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_mag", "color": "#82d841", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_gyro", "color": "#41d843", "style": "dashed"}, {"source": "m_mpu9250_i2c", "target": "t_sensor_accel", "color": "#4150d8", "style": "dashed"}, {"source": "m_mpu9250_i2c", "target": "t_sensor_gyro", "color": "#41d843", "style": "dashed"}, {"source": "m_vectornav", "target": "t_sensor_baro", "color": "#9d41d8", "style": "dashed"}, {"source": "m_vectornav", "target": "t_estimator_status", "color": "#d841bb", "style": "dashed"}, {"source": "m_vectornav", "target": "t_sensor_gps", "color": "#6e41d8", "style": "dashed"}, {"source": "m_vectornav", "target": "t_sensor_selection", "color": "#53d841", "style": "dashed"}, {"source": "m_irlock", "target": "t_irlock_report", "color": "#41d89b", "style": "dashed"}, {"source": "m_ak09916", "target": "t_sensor_mag", "color": "#82d841", "style": "dashed"}, {"source": "m_ak8963", "target": "t_sensor_mag", "color": "#82d841", "style": "dashed"}, {"source": "m_bmm150", "target": "t_sensor_mag", "color": "#82d841", "style": "dashed"}, {"source": "m_hmc5883", "target": "t_sensor_mag", "color": "#82d841", "style": "dashed"}, {"source": "m_ist8308", "target": "t_sensor_mag", "color": "#82d841", "style": "dashed"}, {"source": "m_ist8310", "target": "t_sensor_mag", "color": "#82d841", "style": "dashed"}, {"source": "m_lis3mdl", "target": "t_sensor_mag", "color": "#82d841", "style": "dashed"}, {"source": "m_lsm303agr", "target": "t_sensor_mag", "color": "#82d841", "style": "dashed"}, {"source": "m_mmc5983ma", "target": "t_sensor_mag", "color": "#82d841", "style": "dashed"}, {"source": "m_qmc5883l", "target": "t_sensor_mag", "color": "#82d841", "style": "dashed"}, {"source": "m_rm3100", "target": "t_sensor_mag", "color": "#82d841", "style": "dashed"}, {"source": "m_iis2mdc", "target": "t_sensor_mag", "color": "#82d841", "style": "dashed"}, {"source": "m_vcm1193l", "target": "t_sensor_mag", "color": "#82d841", "style": "dashed"}, {"source": "m_paa3905", "target": "t_sensor_optical_flow", "color": "#d841a0", "style": "dashed"}, {"source": "m_paw3902", "target": "t_sensor_optical_flow", "color": "#d841a0", "style": "dashed"}, {"source": "m_pmw3901", "target": "t_sensor_optical_flow", "color": "#d841a0", "style": "dashed"}, {"source": "m_px4flow", "target": "t_sensor_optical_flow", "color": "#d841a0", "style": "dashed"}, {"source": "m_thoneflow", "target": "t_sensor_optical_flow", "color": "#d841a0", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_outputs", "color": "#d841d6", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_motors", "color": "#d8415c", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_test", "color": "#d8ad41", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_armed", "color": "#41d84a", "style": "dashed"}, {"source": "m_ina226", "target": "t_battery_status", "color": "#d84199", "style": "dashed"}, {"source": "m_pwm_input", "target": "t_pwm_input", "color": "#d841c8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_outputs", "color": "#d841d6", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_motors", "color": "#d8415c", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_test", "color": "#d8ad41", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_armed", "color": "#41d84a", "style": "dashed"}, {"source": "m_rc_input", "target": "t_input_rc", "color": "#419bd8", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command_ack", "color": "#41d865", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command", "color": "#cdd841", "style": "dashed"}, {"source": "m_safety_button", "target": "t_safety_button", "color": "#d4d841", "style": "dashed"}, {"source": "m_safety_button", "target": "t_led_control", "color": "#4180d8", "style": "dashed"}, {"source": "m_safety_button", "target": "t_tune_control", "color": "#41d880", "style": "dashed"}, {"source": "m_safety_button", "target": "t_vehicle_command", "color": "#cdd841", "style": "dashed"}, {"source": "m_batmon", "target": "t_battery_status", "color": "#d84199", "style": "dashed"}, {"source": "m_hott_telemetry", "target": "t_esc_status", "color": "#c6d841", "style": "dashed"}, {"source": "m_tone_alarm", "target": "t_tune_control", "color": "#41d880", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_outputs", "color": "#d841d6", "style": "dashed"}, {"source": "m_uavcan", "target": "t_tune_control", "color": "#41d880", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_motors", "color": "#d8415c", "style": "dashed"}, {"source": "m_uavcan", "target": "t_safety_button", "color": "#d4d841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_distance_sensor", "color": "#97d841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_test", "color": "#d8ad41", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command", "color": "#cdd841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_esc_status", "color": "#c6d841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_open_drone_id_arm_status", "color": "#41d8d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_uavcan_parameter_value", "color": "#59d841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command_ack", "color": "#41d865", "style": "dashed"}, {"source": "m_uavcan", "target": "t_led_control", "color": "#4180d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_armed", "color": "#41d84a", "style": "dashed"}, {"source": "m_airspeed_selector", "target": "t_airspeed_validated", "color": "#d841cf", "style": "dashed"}, {"source": "m_attitude_estimator_q", "target": "t_vehicle_attitude", "color": "#41d88e", "style": "dashed"}, {"source": "m_battery_status", "target": "t_battery_status", "color": "#d84199", "style": "dashed"}, {"source": "m_camera_feedback", "target": "t_camera_capture", "color": "#d8cf41", "style": "dashed"}, {"source": "m_commander", "target": "t_tune_control", "color": "#41d880", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_status", "color": "#d8a641", "style": "dashed"}, {"source": "m_commander", "target": "t_failsafe_flags", "color": "#d8414e", "style": "dashed"}, {"source": "m_commander", "target": "t_power_button_state", "color": "#d84741", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_test", "color": "#d8ad41", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command", "color": "#cdd841", "style": "dashed"}, {"source": "m_commander", "target": "t_register_ext_component_reply", "color": "#41d8cb", "style": "dashed"}, {"source": "m_commander", "target": "t_health_report", "color": "#41d8d1", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_control_mode", "color": "#41d1d8", "style": "dashed"}, {"source": "m_commander", "target": "t_home_position", "color": "#4187d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command_ack", "color": "#41d865", "style": "dashed"}, {"source": "m_commander", "target": "t_led_control", "color": "#4180d8", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_armed", "color": "#41d84a", "style": "dashed"}, {"source": "m_commander", "target": "t_failure_detector_status", "color": "#d85c41", "style": "dashed"}, {"source": "m_commander", "target": "t_event", "color": "#9741d8", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_motors", "color": "#d8415c", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos_trim", "color": "#9dd841", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_control_allocator_status", "color": "#b941d8", "style": "dashed"}, {"source": "m_dataman", "target": "t_dataman_response", "color": "#75d841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_local_position", "color": "#d84141", "style": "dashed"}, {"source": "m_ekf2", "target": "t_sensor_selection", "color": "#53d841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_selector_status", "color": "#d86241", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_sensor_bias", "color": "#d841b4", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status", "color": "#d841bb", "style": "dashed"}, {"source": "m_ekf2", "target": "t_wind", "color": "#d87741", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_odometry", "color": "#4157d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status_flags", "color": "#d8c241", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_command_ack", "color": "#41d865", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_global_position", "color": "#7b41d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_attitude", "color": "#41d88e", "style": "dashed"}, {"source": "m_esc_battery", "target": "t_battery_status", "color": "#d84199", "style": "dashed"}, {"source": "m_send_event", "target": "t_vehicle_command_ack", "color": "#41d865", "style": "dashed"}, {"source": "m_send_event", "target": "t_led_control", "color": "#4180d8", "style": "dashed"}, {"source": "m_send_event", "target": "t_tune_control", "color": "#41d880", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_landing_gear", "color": "#41a9d8", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_trajectory_setpoint", "color": "#415ed8", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_vehicle_constraints", "color": "#d441d8", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_landing_gear_wheel", "color": "#a441d8", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_vehicle_rates_setpoint", "color": "#41d8af", "style": "dashed"}, {"source": "m_fw_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#d88b41", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_position_controller_status", "color": "#41afd8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_landing_gear", "color": "#41a9d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_spoilers_setpoint", "color": "#41d85e", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_figure_eight_status", "color": "#d84e41", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_tecs_status", "color": "#8241d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_launch_detection_status", "color": "#c641d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_position_controller_landing_status", "color": "#b9d841", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#60d841", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_flaps_setpoint", "color": "#4541d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_flight_phase_estimation", "color": "#9041d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_orbit_status", "color": "#41d86c", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_flaps_setpoint", "color": "#4541d8", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_spoilers_setpoint", "color": "#41d85e", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#41d8af", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_controls", "color": "#4179d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_set_attitude", "color": "#4165d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_mount_orientation", "color": "#4cd841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_attitude_status", "color": "#7541d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_information", "color": "#d85541", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command", "color": "#cdd841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_v1_command", "color": "#4143d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_status", "color": "#d84169", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command_ack", "color": "#41d865", "style": "dashed"}, {"source": "m_land_detector", "target": "t_vehicle_land_detected", "color": "#d87041", "style": "dashed"}, {"source": "m_landing_target_estimator", "target": "t_landing_target_pose", "color": "#d84192", "style": "dashed"}, {"source": "m_load_mon", "target": "t_cpuload", "color": "#ab41d8", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_local_position", "color": "#d84141", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_estimator_status", "color": "#d841bb", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_odometry", "color": "#4157d8", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_global_position", "color": "#7b41d8", "style": "dashed"}, {"source": "m_logger", "target": "t_logger_status", "color": "#a4d841", "style": "dashed"}, {"source": "m_logger", "target": "t_vehicle_command_ack", "color": "#41d865", "style": "dashed"}, {"source": "m_logger", "target": "t_ulog_stream", "color": "#bfd841", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_status", "color": "#d8a641", "style": "dashed"}, {"source": "m_manual_control", "target": "t_landing_gear", "color": "#41a9d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_action_request", "color": "#41d8b6", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_switches", "color": "#b241d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_command", "color": "#cdd841", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_setpoint", "color": "#d8b441", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_baro", "color": "#9d41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_local_position", "color": "#d84141", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_rates_setpoint", "color": "#41d8af", "style": "dashed"}, {"source": "m_mavlink", "target": "t_distance_sensor", "color": "#97d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mission", "color": "#89d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_mag", "color": "#82d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_rc_parameter_map", "color": "#cd41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_operator_id", "color": "#41cbd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_array", "color": "#41b6d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_differential_pressure", "color": "#41a2d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_key_value", "color": "#41d894", "style": "dashed"}, {"source": "m_mavlink", "target": "t_input_rc", "color": "#419bd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_information", "color": "#d87e41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gyro", "color": "#41d843", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_system", "color": "#418ed8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_transponder_report", "color": "#d841a6", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_optical_flow", "color": "#d841a0", "style": "dashed"}, {"source": "m_mavlink", "target": "t_battery_status", "color": "#d84199", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_attitude", "color": "#d89241", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gps_inject_data", "color": "#d89941", "style": "dashed"}, {"source": "m_mavlink", "target": "t_landing_target_pose", "color": "#d84192", "style": "dashed"}, {"source": "m_mavlink", "target": "t_offboard_control_mode", "color": "#41d857", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_vect", "color": "#d8a041", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude_setpoint", "color": "#d8418b", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mc_virtual_attitude_setpoint", "color": "#d84184", "style": "dashed"}, {"source": "m_mavlink", "target": "t_trajectory_setpoint", "color": "#415ed8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_accel", "color": "#4150d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_camera_status", "color": "#d84177", "style": "dashed"}, {"source": "m_mavlink", "target": "t_airspeed", "color": "#d84170", "style": "dashed"}, {"source": "m_mavlink", "target": "t_fw_virtual_attitude_setpoint", "color": "#414ad8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_manual_control", "color": "#d8bb41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_ulog_stream_ack", "color": "#5941d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_visual_odometry", "color": "#5341d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command_ack", "color": "#41d865", "style": "dashed"}, {"source": "m_mavlink", "target": "t_uavcan_parameter_request", "color": "#4c41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_telemetry_status", "color": "#d8c841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_value", "color": "#41d879", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_self_id", "color": "#d8d641", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gps", "color": "#6e41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_tune_control", "color": "#41d880", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_attitude_status", "color": "#7541d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_global_position", "color": "#7b41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command", "color": "#cdd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude", "color": "#41d88e", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_mocap_odometry", "color": "#b2d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_irlock_report", "color": "#41d89b", "style": "dashed"}, {"source": "m_mavlink", "target": "t_dataman_request", "color": "#41d8a2", "style": "dashed"}, {"source": "m_mavlink", "target": "t_event", "color": "#9741d8", "style": "dashed"}, {"source": "m_mc_att_control", "target": "t_vehicle_rates_setpoint", "color": "#41d8af", "style": "dashed"}, {"source": "m_mc_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#d88b41", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_takeoff_status", "color": "#d841c2", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#d8418b", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_trajectory_setpoint", "color": "#415ed8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#60d841", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_constraints", "color": "#d441d8", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#41d8af", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_actuator_controls_status_0", "color": "#d86941", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_status", "color": "#90d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission", "color": "#89d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_distance_sensor_mode_change_request", "color": "#7bd841", "style": "dashed"}, {"source": "m_navigator", "target": "t_position_setpoint_triplet", "color": "#41bdd8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_land_detected", "color": "#d87041", "style": "dashed"}, {"source": "m_navigator", "target": "t_home_position", "color": "#4187d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_transponder_report", "color": "#d841a6", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_status", "color": "#d88441", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission_result", "color": "#41d850", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_roi", "color": "#416cd8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_status", "color": "#d8a641", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command_ack", "color": "#41d865", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_time_estimate", "color": "#41d872", "style": "dashed"}, {"source": "m_navigator", "target": "t_navigator_status", "color": "#d84162", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command", "color": "#cdd841", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_global_position", "color": "#7b41d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_result", "color": "#8941d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_dataman_request", "color": "#41d8a2", "style": "dashed"}, {"source": "m_rc_update", "target": "t_manual_control_switches", "color": "#b241d8", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#d8418b", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_thrust_setpoint", "color": "#bf41d8", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_torque_setpoint", "color": "#d84155", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_position_controller_status", "color": "#41afd8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_combined", "color": "#4172d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_differential_pressure", "color": "#41a2d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu", "color": "#d841ad", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensors_status_imu", "color": "#d8417e", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu_status", "color": "#41d8bd", "style": "dashed"}, {"source": "m_sensors", "target": "t_airspeed", "color": "#d84170", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_selection", "color": "#53d841", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs", "color": "#d841d6", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_motors", "color": "#d8415c", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_test", "color": "#d8ad41", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs_sim", "color": "#45d841", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_armed", "color": "#41d84a", "style": "dashed"}, {"source": "m_sensor_baro_sim", "target": "t_sensor_baro", "color": "#9d41d8", "style": "dashed"}, {"source": "m_sensor_gps_sim", "target": "t_sensor_gps", "color": "#6e41d8", "style": "dashed"}, {"source": "m_sensor_mag_sim", "target": "t_sensor_mag", "color": "#82d841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_global_position_groundtruth", "color": "#41d887", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_distance_sensor", "color": "#97d841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_angular_velocity_groundtruth", "color": "#41d8c4", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_accel", "color": "#4150d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_gyro", "color": "#41d843", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_airspeed", "color": "#d84170", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_local_position_groundtruth", "color": "#abd841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_attitude_groundtruth", "color": "#41d8a9", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command_ack", "color": "#41d865", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_led_control", "color": "#4180d8", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_sensor_correction", "color": "#6ed841", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command", "color": "#cdd841", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#bf41d8", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_torque_setpoint", "color": "#d84155", "style": "dashed"}, {"source": "m_uuv_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#d8418b", "style": "dashed"}, {"source": "m_uxrce_dds_client", "target": "t_vehicle_command", "color": "#cdd841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vtol_vehicle_status", "color": "#6041d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_torque_setpoint", "color": "#d84155", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_spoilers_setpoint", "color": "#41d85e", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_attitude_setpoint", "color": "#d8418b", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#bf41d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_tiltrotor_extra_controls", "color": "#67d841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_flaps_setpoint", "color": "#4541d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_command_ack", "color": "#41d865", "style": "dashed"}, {"source": "m_actuator_test", "target": "t_actuator_test", "color": "#d8ad41", "style": "dashed"}, {"source": "m_led_control", "target": "t_led_control", "color": "#4180d8", "style": "dashed"}, {"source": "m_tune_control", "target": "t_tune_control", "color": "#41d880", "style": "dashed"}, {"source": "m_fake_gps", "target": "t_sensor_gps", "color": "#6e41d8", "style": "dashed"}, {"source": "t_adc_report", "target": "m_board_adc", "color": "#d84147", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_capture", "color": "#cdd841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_camera_trigger", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_trigger", "color": "#cdd841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_cdcacm_autostart", "color": "#41d84a", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_lightware_laser_i2c", "color": "#d8a641", "style": "normal"}, {"source": "t_distance_sensor_mode_change_request", "target": "m_lightware_laser_i2c", "color": "#7bd841", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_dshot", "color": "#4179d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_dshot", "color": "#d8415c", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_dshot", "color": "#a441d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_dshot", "color": "#41a9d8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_dshot", "color": "#9dd841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_dshot", "color": "#d8ad41", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dshot", "color": "#cdd841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_dshot", "color": "#d8b441", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_dshot", "color": "#41d84a", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_septentrio", "color": "#d89941", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_gps", "color": "#d89941", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_heater", "color": "#4150d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled", "color": "#4180d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_is31fl3195", "color": "#4180d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_lp5562", "color": "#4180d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_ncp5623c", "color": "#4180d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pca9685_pwm_out", "color": "#4179d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pca9685_pwm_out", "color": "#d8415c", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pca9685_pwm_out", "color": "#a441d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pca9685_pwm_out", "color": "#41a9d8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pca9685_pwm_out", "color": "#9dd841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pca9685_pwm_out", "color": "#d8ad41", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pca9685_pwm_out", "color": "#cdd841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pca9685_pwm_out", "color": "#d8b441", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pca9685_pwm_out", "color": "#41d84a", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina226", "color": "#d8a641", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina226", "color": "#9041d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out", "color": "#4179d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out", "color": "#d8415c", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out", "color": "#a441d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out", "color": "#41a9d8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out", "color": "#9dd841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out", "color": "#d8ad41", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out", "color": "#cdd841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out", "color": "#d8b441", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out", "color": "#41d84a", "style": "normal"}, {"source": "t_battery_status", "target": "m_rc_input", "color": "#d84199", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_rc_input", "color": "#d8a641", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_rc_input", "color": "#cdd841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rc_input", "color": "#41d88e", "style": "normal"}, {"source": "t_adc_report", "target": "m_rc_input", "color": "#d84147", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_safety_button", "color": "#41d84a", "style": "normal"}, {"source": "t_battery_status", "target": "m_bst", "color": "#d84199", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_bst", "color": "#41d88e", "style": "normal"}, {"source": "t_battery_status", "target": "m_frsky_telemetry", "color": "#d84199", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_frsky_telemetry", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_frsky_telemetry", "color": "#d8a641", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_frsky_telemetry", "color": "#7b41d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_hott_telemetry", "color": "#d84199", "style": "normal"}, {"source": "t_esc_status", "target": "m_hott_telemetry", "color": "#c6d841", "style": "normal"}, {"source": "t_airspeed", "target": "m_hott_telemetry", "color": "#d84170", "style": "normal"}, {"source": "t_home_position", "target": "m_hott_telemetry", "color": "#4187d8", "style": "normal"}, {"source": "t_tune_control", "target": "m_tone_alarm", "color": "#41d880", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uavcan", "color": "#d84141", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_uavcan", "color": "#a441d8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_uavcan", "color": "#9dd841", "style": "normal"}, {"source": "t_open_drone_id_operator_id", "target": "m_uavcan", "color": "#41cbd8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_uavcan", "color": "#d87041", "style": "normal"}, {"source": "t_landing_gear", "target": "m_uavcan", "color": "#41a9d8", "style": "normal"}, {"source": "t_open_drone_id_system", "target": "m_uavcan", "color": "#418ed8", "style": "normal"}, {"source": "t_home_position", "target": "m_uavcan", "color": "#4187d8", "style": "normal"}, {"source": "t_led_control", "target": "m_uavcan", "color": "#4180d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_uavcan", "color": "#41d84a", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_uavcan", "color": "#d89941", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_uavcan", "color": "#4179d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_uavcan", "color": "#d8a641", "style": "normal"}, {"source": "t_actuator_test", "target": "m_uavcan", "color": "#d8ad41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uavcan", "color": "#d8b441", "style": "normal"}, {"source": "t_uavcan_parameter_request", "target": "m_uavcan", "color": "#4c41d8", "style": "normal"}, {"source": "t_open_drone_id_self_id", "target": "m_uavcan", "color": "#d8d641", "style": "normal"}, {"source": "t_tune_control", "target": "m_uavcan", "color": "#41d880", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_uavcan", "color": "#d8415c", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_uavcan", "color": "#cdd841", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_airspeed_selector", "color": "#d86241", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_airspeed_selector", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airspeed_selector", "color": "#d8a641", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_airspeed_selector", "color": "#d87041", "style": "normal"}, {"source": "t_estimator_status", "target": "m_airspeed_selector", "color": "#d841bb", "style": "normal"}, {"source": "t_tecs_status", "target": "m_airspeed_selector", "color": "#8241d8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_airspeed_selector", "color": "#bf41d8", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_airspeed_selector", "color": "#c641d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_airspeed_selector", "color": "#41d88e", "style": "normal"}, {"source": "t_airspeed", "target": "m_airspeed_selector", "color": "#d84170", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_airspeed_selector", "color": "#9041d8", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_attitude_estimator_q", "color": "#4172d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_attitude_estimator_q", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_attitude_estimator_q", "color": "#41d88e", "style": "normal"}, {"source": "t_vehicle_mocap_odometry", "target": "m_attitude_estimator_q", "color": "#b2d841", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_attitude_estimator_q", "color": "#5341d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_status", "color": "#d8a641", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_battery_status", "color": "#9041d8", "style": "normal"}, {"source": "t_adc_report", "target": "m_battery_status", "color": "#d84147", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_camera_feedback", "color": "#7b41d8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_camera_feedback", "color": "#7541d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_camera_feedback", "color": "#41d88e", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_camera_feedback", "color": "#41c4d8", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_commander", "color": "#9d41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_commander", "color": "#d84141", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_commander", "color": "#97d841", "style": "normal"}, {"source": "t_action_request", "target": "m_commander", "color": "#41d8b6", "style": "normal"}, {"source": "t_cpuload", "target": "m_commander", "color": "#ab41d8", "style": "normal"}, {"source": "t_power_button_state", "target": "m_commander", "color": "#d84741", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_commander", "color": "#41d8bd", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_commander", "color": "#82d841", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_commander", "color": "#b241d8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_commander", "color": "#6ed841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_commander", "color": "#53d841", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_commander", "color": "#d86241", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_commander", "color": "#d841cf", "style": "normal"}, {"source": "t_pwm_input", "target": "m_commander", "color": "#d841c8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_commander", "color": "#41a2d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_commander", "color": "#d87041", "style": "normal"}, {"source": "t_estimator_status", "target": "m_commander", "color": "#d841bb", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_commander", "color": "#d841b4", "style": "normal"}, {"source": "t_wind", "target": "m_commander", "color": "#d87741", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_commander", "color": "#41d843", "style": "normal"}, {"source": "t_home_position", "target": "m_commander", "color": "#4187d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_commander", "color": "#41d84a", "style": "normal"}, {"source": "t_battery_status", "target": "m_commander", "color": "#d84199", "style": "normal"}, {"source": "t_mission_result", "target": "m_commander", "color": "#41d850", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_commander", "color": "#41d857", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_commander", "color": "#d8a641", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_commander", "color": "#d8417e", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_commander", "color": "#4150d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_commander", "color": "#d8b441", "style": "normal"}, {"source": "t_estimator_status_flags", "target": "m_commander", "color": "#d8c241", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_commander", "color": "#41d865", "style": "normal"}, {"source": "t_telemetry_status", "target": "m_commander", "color": "#d8c841", "style": "normal"}, {"source": "t_vtol_vehicle_status", "target": "m_commander", "color": "#6041d8", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_commander", "color": "#41d872", "style": "normal"}, {"source": "t_system_power", "target": "m_commander", "color": "#6741d8", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_commander", "color": "#6e41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_commander", "color": "#d8415c", "style": "normal"}, {"source": "t_navigator_status", "target": "m_commander", "color": "#d84162", "style": "normal"}, {"source": "t_safety_button", "target": "m_commander", "color": "#d4d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_commander", "color": "#cdd841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_commander", "color": "#7b41d8", "style": "normal"}, {"source": "t_esc_status", "target": "m_commander", "color": "#c6d841", "style": "normal"}, {"source": "t_geofence_result", "target": "m_commander", "color": "#8941d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_commander", "color": "#41d88e", "style": "normal"}, {"source": "t_event", "target": "m_commander", "color": "#9741d8", "style": "normal"}, {"source": "t_logger_status", "target": "m_commander", "color": "#a4d841", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_control_allocator", "color": "#d84155", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_control_allocator", "color": "#d8a641", "style": "normal"}, {"source": "t_spoilers_setpoint", "target": "m_control_allocator", "color": "#41d85e", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_control_allocator", "color": "#b241d8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_control_allocator", "color": "#bf41d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_control_allocator", "color": "#41d1d8", "style": "normal"}, {"source": "t_tiltrotor_extra_controls", "target": "m_control_allocator", "color": "#67d841", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_control_allocator", "color": "#4541d8", "style": "normal"}, {"source": "t_failure_detector_status", "target": "m_control_allocator", "color": "#d85c41", "style": "normal"}, {"source": "t_dataman_request", "target": "m_dataman", "color": "#41d8a2", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_ekf2", "color": "#d84192", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_ekf2", "color": "#d841cf", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_ekf2", "color": "#4172d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ekf2", "color": "#d8a641", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_ekf2", "color": "#d87041", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_ekf2", "color": "#97d841", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_ekf2", "color": "#d841ad", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_ekf2", "color": "#d8417e", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_ekf2", "color": "#cdd841", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_ekf2", "color": "#c641d8", "style": "normal"}, {"source": "t_airspeed", "target": "m_ekf2", "color": "#d84170", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_ekf2", "color": "#5341d8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_ekf2", "color": "#53d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_esc_battery", "color": "#d8a641", "style": "normal"}, {"source": "t_esc_status", "target": "m_esc_battery", "color": "#c6d841", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_esc_battery", "color": "#9041d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_send_event", "color": "#d84199", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_send_event", "color": "#d8a641", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_send_event", "color": "#d8414e", "style": "normal"}, {"source": "t_cpuload", "target": "m_send_event", "color": "#ab41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_send_event", "color": "#cdd841", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_flight_mode_manager", "color": "#d841c2", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_flight_mode_manager", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_flight_mode_manager", "color": "#d8a641", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_flight_mode_manager", "color": "#d8418b", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_flight_mode_manager", "color": "#d87041", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_flight_mode_manager", "color": "#cdd841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_flight_mode_manager", "color": "#41d1d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_att_control", "color": "#d841cf", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_att_control", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_att_control", "color": "#d8a641", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_fw_att_control", "color": "#d8418b", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_att_control", "color": "#d87041", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_att_control", "color": "#d8b441", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_att_control", "color": "#41d88e", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_att_control", "color": "#41d1d8", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_fw_att_control", "color": "#d88b41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_autotune_attitude_control", "color": "#d8a641", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_autotune_attitude_control", "color": "#d8b441", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_fw_pos_control", "color": "#41bdd8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_pos_control", "color": "#d841cf", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_pos_control", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_pos_control", "color": "#d8a641", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_pos_control", "color": "#d87041", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_fw_pos_control", "color": "#415ed8", "style": "normal"}, {"source": "t_wind", "target": "m_fw_pos_control", "color": "#d87741", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_fw_pos_control", "color": "#7b41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_fw_pos_control", "color": "#cdd841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_pos_control", "color": "#d8b441", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_pos_control", "color": "#41d88e", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_pos_control", "color": "#41d1d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_fw_rate_control", "color": "#d84199", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_rate_control", "color": "#d841cf", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_fw_rate_control", "color": "#41d8af", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_rate_control", "color": "#d8a641", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_rate_control", "color": "#d87041", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_fw_rate_control", "color": "#b941d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_rate_control", "color": "#d8b441", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_rate_control", "color": "#41d1d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_gimbal", "color": "#41bdd8", "style": "normal"}, {"source": "t_gimbal_manager_set_attitude", "target": "m_gimbal", "color": "#d89241", "style": "normal"}, {"source": "t_vehicle_roi", "target": "m_gimbal", "color": "#416cd8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_gimbal", "color": "#d87041", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_gimbal", "color": "#7541d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gimbal", "color": "#cdd841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_gimbal", "color": "#7b41d8", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_gimbal", "color": "#d87e41", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_gimbal", "color": "#41d88e", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gimbal", "color": "#d8b441", "style": "normal"}, {"source": "t_gimbal_manager_set_manual_control", "target": "m_gimbal", "color": "#d8bb41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_gyro_calibration", "color": "#d8a641", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_gyro_calibration", "color": "#4150d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_calibration", "color": "#41d843", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_gyro_calibration", "color": "#6ed841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_land_detector", "color": "#41bdd8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_land_detector", "color": "#d841cf", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_land_detector", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_land_detector", "color": "#d8a641", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_land_detector", "color": "#d841c2", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_land_detector", "color": "#41d8bd", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_land_detector", "color": "#415ed8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_land_detector", "color": "#7b41d8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_land_detector", "color": "#bf41d8", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_land_detector", "color": "#c641d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_land_detector", "color": "#41d1d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_land_detector", "color": "#41d84a", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_land_detector", "color": "#53d841", "style": "normal"}, {"source": "t_irlock_report", "target": "m_landing_target_estimator", "color": "#41d89b", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_landing_target_estimator", "color": "#41d88e", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_landing_target_estimator", "color": "#d84141", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_local_position_estimator", "color": "#d84192", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_local_position_estimator", "color": "#4172d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_local_position_estimator", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_local_position_estimator", "color": "#d87041", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_local_position_estimator", "color": "#97d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_local_position_estimator", "color": "#cdd841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_local_position_estimator", "color": "#41d88e", "style": "normal"}, {"source": "t_vehicle_mocap_odometry", "target": "m_local_position_estimator", "color": "#b2d841", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_local_position_estimator", "color": "#5341d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_local_position_estimator", "color": "#41d84a", "style": "normal"}, {"source": "t_battery_status", "target": "m_logger", "color": "#d84199", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_logger", "color": "#d8a641", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_logger", "color": "#cdd841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_logger", "color": "#d8b441", "style": "normal"}, {"source": "t_ulog_stream_ack", "target": "m_logger", "color": "#5941d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mag_bias_estimator", "color": "#82d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mag_bias_estimator", "color": "#d8a641", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_manual_control", "color": "#d8a641", "style": "normal"}, {"source": "t_action_request", "target": "m_manual_control", "color": "#41d8b6", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_manual_control", "color": "#d8b441", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_manual_control", "color": "#b241d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mavlink", "color": "#d84141", "style": "normal"}, {"source": "t_figure_eight_status", "target": "m_mavlink", "color": "#d84e41", "style": "normal"}, {"source": "t_gimbal_manager_information", "target": "m_mavlink", "color": "#d85541", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_mavlink", "color": "#d86241", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mavlink", "color": "#d87041", "style": "normal"}, {"source": "t_wind", "target": "m_mavlink", "color": "#d87741", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_mavlink", "color": "#d87e41", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mavlink", "color": "#d88b41", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_mavlink", "color": "#d89941", "style": "normal"}, {"source": "t_debug_vect", "target": "m_mavlink", "color": "#d8a041", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mavlink", "color": "#d8a641", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mavlink", "color": "#d8b441", "style": "normal"}, {"source": "t_camera_capture", "target": "m_mavlink", "color": "#d8cf41", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_mavlink", "color": "#cdd841", "style": "normal"}, {"source": "t_esc_status", "target": "m_mavlink", "color": "#c6d841", "style": "normal"}, {"source": "t_ulog_stream", "target": "m_mavlink", "color": "#bfd841", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_mavlink", "color": "#abd841", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_mavlink", "color": "#97d841", "style": "normal"}, {"source": "t_mission", "target": "m_mavlink", "color": "#89d841", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mavlink", "color": "#82d841", "style": "normal"}, {"source": "t_dataman_response", "target": "m_mavlink", "color": "#75d841", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_mavlink", "color": "#6ed841", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_mavlink", "color": "#60d841", "style": "normal"}, {"source": "t_uavcan_parameter_value", "target": "m_mavlink", "color": "#59d841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_mavlink", "color": "#53d841", "style": "normal"}, {"source": "t_mount_orientation", "target": "m_mavlink", "color": "#4cd841", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_mavlink", "color": "#45d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_mavlink", "color": "#41d84a", "style": "normal"}, {"source": "t_mission_result", "target": "m_mavlink", "color": "#41d850", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_mavlink", "color": "#41d865", "style": "normal"}, {"source": "t_orbit_status", "target": "m_mavlink", "color": "#41d86c", "style": "normal"}, {"source": "t_debug_value", "target": "m_mavlink", "color": "#41d879", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_mavlink", "color": "#41d872", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_mavlink", "color": "#41d887", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mavlink", "color": "#41d88e", "style": "normal"}, {"source": "t_debug_key_value", "target": "m_mavlink", "color": "#41d894", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_mavlink", "color": "#41d8a9", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mavlink", "color": "#41d8af", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_mavlink", "color": "#41d8bd", "style": "normal"}, {"source": "t_vehicle_angular_velocity_groundtruth", "target": "m_mavlink", "color": "#41d8c4", "style": "normal"}, {"source": "t_register_ext_component_reply", "target": "m_mavlink", "color": "#41d8cb", "style": "normal"}, {"source": "t_health_report", "target": "m_mavlink", "color": "#41d8d1", "style": "normal"}, {"source": "t_open_drone_id_arm_status", "target": "m_mavlink", "color": "#41d8d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mavlink", "color": "#41d1d8", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_mavlink", "color": "#41c4d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_mavlink", "color": "#41bdd8", "style": "normal"}, {"source": "t_debug_array", "target": "m_mavlink", "color": "#41b6d8", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_mavlink", "color": "#41afd8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_mavlink", "color": "#41a2d8", "style": "normal"}, {"source": "t_input_rc", "target": "m_mavlink", "color": "#419bd8", "style": "normal"}, {"source": "t_satellite_info", "target": "m_mavlink", "color": "#4194d8", "style": "normal"}, {"source": "t_home_position", "target": "m_mavlink", "color": "#4187d8", "style": "normal"}, {"source": "t_gimbal_device_set_attitude", "target": "m_mavlink", "color": "#4165d8", "style": "normal"}, {"source": "t_vehicle_odometry", "target": "m_mavlink", "color": "#4157d8", "style": "normal"}, {"source": "t_gimbal_v1_command", "target": "m_mavlink", "color": "#4143d8", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_mavlink", "color": "#6e41d8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_mavlink", "color": "#7541d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_mavlink", "color": "#7b41d8", "style": "normal"}, {"source": "t_geofence_result", "target": "m_mavlink", "color": "#8941d8", "style": "normal"}, {"source": "t_tecs_status", "target": "m_mavlink", "color": "#8241d8", "style": "normal"}, {"source": "t_event", "target": "m_mavlink", "color": "#9741d8", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_mavlink", "color": "#9d41d8", "style": "normal"}, {"source": "t_cpuload", "target": "m_mavlink", "color": "#ab41d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_mavlink", "color": "#b241d8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_mavlink", "color": "#bf41d8", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_mavlink", "color": "#d841d6", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_mavlink", "color": "#d841cf", "style": "normal"}, {"source": "t_estimator_status", "target": "m_mavlink", "color": "#d841bb", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_mavlink", "color": "#d841ad", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_mavlink", "color": "#d841b4", "style": "normal"}, {"source": "t_transponder_report", "target": "m_mavlink", "color": "#d841a6", "style": "normal"}, {"source": "t_battery_status", "target": "m_mavlink", "color": "#d84199", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_mavlink", "color": "#d84192", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mavlink", "color": "#d8418b", "style": "normal"}, {"source": "t_camera_status", "target": "m_mavlink", "color": "#d84177", "style": "normal"}, {"source": "t_airspeed", "target": "m_mavlink", "color": "#d84170", "style": "normal"}, {"source": "t_gimbal_manager_status", "target": "m_mavlink", "color": "#d84169", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_mavlink", "color": "#d8414e", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_att_control", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_att_control", "color": "#d8a641", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mc_att_control", "color": "#d8418b", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_att_control", "color": "#d87041", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_att_control", "color": "#d8b441", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mc_att_control", "color": "#41d88e", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_att_control", "color": "#41d1d8", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mc_att_control", "color": "#d88b41", "style": "normal"}, {"source": "t_actuator_controls_status_0", "target": "m_mc_autotune_attitude_control", "color": "#d86941", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_autotune_attitude_control", "color": "#d8a641", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#d84155", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#d8b441", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_pos_control", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_pos_control", "color": "#d87041", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_mc_pos_control", "color": "#415ed8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_pos_control", "color": "#41d1d8", "style": "normal"}, {"source": "t_vehicle_constraints", "target": "m_mc_pos_control", "color": "#d441d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_mc_rate_control", "color": "#d84199", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mc_rate_control", "color": "#41d8af", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_rate_control", "color": "#d8a641", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_rate_control", "color": "#d87041", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_mc_rate_control", "color": "#b941d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_rate_control", "color": "#d8b441", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_rate_control", "color": "#41d1d8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_navigator", "color": "#d84192", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_navigator", "color": "#d84141", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_navigator", "color": "#41afd8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_navigator", "color": "#d8a641", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_navigator", "color": "#d87041", "style": "normal"}, {"source": "t_geofence_status", "target": "m_navigator", "color": "#90d841", "style": "normal"}, {"source": "t_mission", "target": "m_navigator", "color": "#89d841", "style": "normal"}, {"source": "t_wind", "target": "m_navigator", "color": "#d87741", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_navigator", "color": "#7b41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_navigator", "color": "#cdd841", "style": "normal"}, {"source": "t_dataman_response", "target": "m_navigator", "color": "#75d841", "style": "normal"}, {"source": "t_position_controller_landing_status", "target": "m_navigator", "color": "#b9d841", "style": "normal"}, {"source": "t_home_position", "target": "m_navigator", "color": "#4187d8", "style": "normal"}, {"source": "t_transponder_report", "target": "m_navigator", "color": "#d841a6", "style": "normal"}, {"source": "t_rtl_status", "target": "m_navigator", "color": "#d88441", "style": "normal"}, {"source": "t_input_rc", "target": "m_rc_update", "color": "#419bd8", "style": "normal"}, {"source": "t_rc_parameter_map", "target": "m_rc_update", "color": "#cd41d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_rc_update", "color": "#b241d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_pos_control", "color": "#41bdd8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_pos_control", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_rover_pos_control", "color": "#d8418b", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_pos_control", "color": "#415ed8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_rover_pos_control", "color": "#7b41d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_pos_control", "color": "#d8b441", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_pos_control", "color": "#41d88e", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_pos_control", "color": "#41d1d8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_sensors", "color": "#41a2d8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_sensors", "color": "#d841b4", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_sensors", "color": "#d841ad", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_sensors", "color": "#41d8bd", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_sensors", "color": "#4150d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_sensors", "color": "#82d841", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_sensors", "color": "#41d843", "style": "normal"}, {"source": "t_adc_report", "target": "m_sensors", "color": "#d84147", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_sensors", "color": "#41d1d8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_sensors", "color": "#6ed841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_sensors", "color": "#53d841", "style": "normal"}, {"source": "t_sensor_optical_flow", "target": "m_sensors", "color": "#d841a0", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out_sim", "color": "#4179d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out_sim", "color": "#d8415c", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out_sim", "color": "#a441d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out_sim", "color": "#41a9d8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out_sim", "color": "#9dd841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out_sim", "color": "#d8ad41", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out_sim", "color": "#cdd841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out_sim", "color": "#d8b441", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out_sim", "color": "#41d84a", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_baro_sim", "color": "#41d887", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#41d887", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#abd841", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_mag_sim", "color": "#41d887", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_sensor_mag_sim", "color": "#41d8a9", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_simulator_sih", "color": "#d841d6", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_simulator_sih", "color": "#45d841", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_temperature_compensation", "color": "#9d41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_temperature_compensation", "color": "#cdd841", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_temperature_compensation", "color": "#4150d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_temperature_compensation", "color": "#82d841", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_temperature_compensation", "color": "#41d843", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_uuv_att_control", "color": "#41d8af", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_uuv_att_control", "color": "#d8418b", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uuv_att_control", "color": "#d8b441", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_att_control", "color": "#41d88e", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_att_control", "color": "#41d1d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uuv_pos_control", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_pos_control", "color": "#41d88e", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_uuv_pos_control", "color": "#415ed8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_pos_control", "color": "#41d1d8", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_uxrce_dds_client", "color": "#41d865", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_vtol_att_control", "color": "#d84141", "style": "normal"}, {"source": "t_action_request", "target": "m_vtol_att_control", "color": "#41d8b6", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_vtol_att_control", "color": "#41d1d8", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_vtol_att_control", "color": "#60d841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_vtol_att_control", "color": "#41bdd8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_vtol_att_control", "color": "#d841cf", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_vtol_att_control", "color": "#d87041", "style": "normal"}, {"source": "t_home_position", "target": "m_vtol_att_control", "color": "#4187d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_vtol_att_control", "color": "#d8a641", "style": "normal"}, {"source": "t_mc_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#d84184", "style": "normal"}, {"source": "t_fw_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#414ad8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_vtol_att_control", "color": "#cdd841", "style": "normal"}, {"source": "t_tecs_status", "target": "m_vtol_att_control", "color": "#8241d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_vtol_att_control", "color": "#41d88e", "style": "normal"}]} \ No newline at end of file +{"nodes": [{"id": "m_fw_autotune_attitude_control", "name": "fw_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_autotune_attitude_control", "name": "mc_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_landing_target_estimator", "name": "landing_target_estimator", "type": "Module", "color": "#666666"}, {"id": "m_local_position_estimator", "name": "local_position_estimator", "type": "Module", "color": "#666666"}, {"id": "m_temperature_compensation", "name": "temperature_compensation", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_serial", "name": "lightware_laser_serial", "type": "Module", "color": "#666666"}, {"id": "m_attitude_estimator_q", "name": "attitude_estimator_q", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_i2c", "name": "lightware_laser_i2c", "type": "Module", "color": "#666666"}, {"id": "m_flight_mode_manager", "name": "flight_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_fw_lat_lon_control", "name": "fw_lat_lon_control", "type": "Module", "color": "#666666"}, {"id": "m_mag_bias_estimator", "name": "mag_bias_estimator", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_is31fl3195", "name": "rgbled_is31fl3195", "type": "Module", "color": "#666666"}, {"id": "m_airspeed_selector", "name": "airspeed_selector", "type": "Module", "color": "#666666"}, {"id": "m_control_allocator", "name": "control_allocator", "type": "Module", "color": "#666666"}, {"id": "m_rover_pos_control", "name": "rover_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_cdcacm_autostart", "name": "cdcacm_autostart", "type": "Module", "color": "#666666"}, {"id": "m_gyro_calibration", "name": "gyro_calibration", "type": "Module", "color": "#666666"}, {"id": "m_uxrce_dds_client", "name": "uxrce_dds_client", "type": "Module", "color": "#666666"}, {"id": "m_vtol_att_control", "name": "vtol_att_control", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_ncp5623c", "name": "rgbled_ncp5623c", "type": "Module", "color": "#666666"}, {"id": "m_pca9685_pwm_out", "name": "pca9685_pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_frsky_telemetry", "name": "frsky_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_camera_feedback", "name": "camera_feedback", "type": "Module", "color": "#666666"}, {"id": "m_fw_mode_manager", "name": "fw_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_fw_rate_control", "name": "fw_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_rate_control", "name": "mc_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_sensor_baro_sim", "name": "sensor_baro_sim", "type": "Module", "color": "#666666"}, {"id": "m_uuv_att_control", "name": "uuv_att_control", "type": "Module", "color": "#666666"}, {"id": "m_uuv_pos_control", "name": "uuv_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_camera_capture", "name": "camera_capture", "type": "Module", "color": "#666666"}, {"id": "m_camera_trigger", "name": "camera_trigger", "type": "Module", "color": "#666666"}, {"id": "m_ulanding_radar", "name": "ulanding_radar", "type": "Module", "color": "#666666"}, {"id": "m_hott_telemetry", "name": "hott_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_battery_status", "name": "battery_status", "type": "Module", "color": "#666666"}, {"id": "m_fw_att_control", "name": "fw_att_control", "type": "Module", "color": "#666666"}, {"id": "m_manual_control", "name": "manual_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_att_control", "name": "mc_att_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_pos_control", "name": "mc_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_sensor_gps_sim", "name": "sensor_gps_sim", "type": "Module", "color": "#666666"}, {"id": "m_sensor_mag_sim", "name": "sensor_mag_sim", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_lp5562", "name": "rgbled_lp5562", "type": "Module", "color": "#666666"}, {"id": "m_safety_button", "name": "safety_button", "type": "Module", "color": "#666666"}, {"id": "m_land_detector", "name": "land_detector", "type": "Module", "color": "#666666"}, {"id": "m_simulator_sih", "name": "simulator_sih", "type": "Module", "color": "#666666"}, {"id": "m_actuator_test", "name": "actuator_test", "type": "Module", "color": "#666666"}, {"id": "m_tune_control", "name": "tune_control", "type": "Module", "color": "#666666"}, {"id": "m_mpu9250_i2c", "name": "mpu9250_i2c", "type": "Module", "color": "#666666"}, {"id": "m_esc_battery", "name": "esc_battery", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out_sim", "name": "pwm_out_sim", "type": "Module", "color": "#666666"}, {"id": "m_led_control", "name": "led_control", "type": "Module", "color": "#666666"}, {"id": "m_batt_smbus", "name": "batt_smbus", "type": "Module", "color": "#666666"}, {"id": "m_teraranger", "name": "teraranger", "type": "Module", "color": "#666666"}, {"id": "m_septentrio", "name": "septentrio", "type": "Module", "color": "#666666"}, {"id": "m_tone_alarm", "name": "tone_alarm", "type": "Module", "color": "#666666"}, {"id": "m_send_event", "name": "send_event", "type": "Module", "color": "#666666"}, {"id": "m_board_adc", "name": "board_adc", "type": "Module", "color": "#666666"}, {"id": "m_ms5525dso", "name": "ms5525dso", "type": "Module", "color": "#666666"}, {"id": "m_adis16448", "name": "adis16448", "type": "Module", "color": "#666666"}, {"id": "m_icm20608g", "name": "icm20608g", "type": "Module", "color": "#666666"}, {"id": "m_vectornav", "name": "vectornav", "type": "Module", "color": "#666666"}, {"id": "m_lsm303agr", "name": "lsm303agr", "type": "Module", "color": "#666666"}, {"id": "m_mmc5983ma", "name": "mmc5983ma", "type": "Module", "color": "#666666"}, {"id": "m_thoneflow", "name": "thoneflow", "type": "Module", "color": "#666666"}, {"id": "m_pwm_input", "name": "pwm_input", "type": "Module", "color": "#666666"}, {"id": "m_commander", "name": "commander", "type": "Module", "color": "#666666"}, {"id": "m_navigator", "name": "navigator", "type": "Module", "color": "#666666"}, {"id": "m_rc_update", "name": "rc_update", "type": "Module", "color": "#666666"}, {"id": "m_icp101xx", "name": "icp101xx", "type": "Module", "color": "#666666"}, {"id": "m_icp201xx", "name": "icp201xx", "type": "Module", "color": "#666666"}, {"id": "m_ms4525do", "name": "ms4525do", "type": "Module", "color": "#666666"}, {"id": "m_icm20602", "name": "icm20602", "type": "Module", "color": "#666666"}, {"id": "m_icm20948", "name": "icm20948", "type": "Module", "color": "#666666"}, {"id": "m_qmc5883l", "name": "qmc5883l", "type": "Module", "color": "#666666"}, {"id": "m_vcm1193l", "name": "vcm1193l", "type": "Module", "color": "#666666"}, {"id": "m_rc_input", "name": "rc_input", "type": "Module", "color": "#666666"}, {"id": "m_load_mon", "name": "load_mon", "type": "Module", "color": "#666666"}, {"id": "m_fake_gps", "name": "fake_gps", "type": "Module", "color": "#666666"}, {"id": "m_ads1115", "name": "ads1115", "type": "Module", "color": "#666666"}, {"id": "m_lps22hb", "name": "lps22hb", "type": "Module", "color": "#666666"}, {"id": "m_lps33hw", "name": "lps33hw", "type": "Module", "color": "#666666"}, {"id": "m_mpc2520", "name": "mpc2520", "type": "Module", "color": "#666666"}, {"id": "m_cm8jl65", "name": "cm8jl65", "type": "Module", "color": "#666666"}, {"id": "m_tf02pro", "name": "tf02pro", "type": "Module", "color": "#666666"}, {"id": "m_vl53l0x", "name": "vl53l0x", "type": "Module", "color": "#666666"}, {"id": "m_vl53l1x", "name": "vl53l1x", "type": "Module", "color": "#666666"}, {"id": "m_mpu9250", "name": "mpu9250", "type": "Module", "color": "#666666"}, {"id": "m_ak09916", "name": "ak09916", "type": "Module", "color": "#666666"}, {"id": "m_hmc5883", "name": "hmc5883", "type": "Module", "color": "#666666"}, {"id": "m_ist8308", "name": "ist8308", "type": "Module", "color": "#666666"}, {"id": "m_ist8310", "name": "ist8310", "type": "Module", "color": "#666666"}, {"id": "m_lis3mdl", "name": "lis3mdl", "type": "Module", "color": "#666666"}, {"id": "m_iis2mdc", "name": "iis2mdc", "type": "Module", "color": "#666666"}, {"id": "m_paa3905", "name": "paa3905", "type": "Module", "color": "#666666"}, {"id": "m_paw3902", "name": "paw3902", "type": "Module", "color": "#666666"}, {"id": "m_pmw3901", "name": "pmw3901", "type": "Module", "color": "#666666"}, {"id": "m_px4flow", "name": "px4flow", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out", "name": "pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_dataman", "name": "dataman", "type": "Module", "color": "#666666"}, {"id": "m_mavlink", "name": "mavlink", "type": "Module", "color": "#666666"}, {"id": "m_sensors", "name": "sensors", "type": "Module", "color": "#666666"}, {"id": "m_bmp280", "name": "bmp280", "type": "Module", "color": "#666666"}, {"id": "m_bmp388", "name": "bmp388", "type": "Module", "color": "#666666"}, {"id": "m_bmp581", "name": "bmp581", "type": "Module", "color": "#666666"}, {"id": "m_dps310", "name": "dps310", "type": "Module", "color": "#666666"}, {"id": "m_ms5611", "name": "ms5611", "type": "Module", "color": "#666666"}, {"id": "m_ll40ls", "name": "ll40ls", "type": "Module", "color": "#666666"}, {"id": "m_tfmini", "name": "tfmini", "type": "Module", "color": "#666666"}, {"id": "m_heater", "name": "heater", "type": "Module", "color": "#666666"}, {"id": "m_irlock", "name": "irlock", "type": "Module", "color": "#666666"}, {"id": "m_rgbled", "name": "rgbled", "type": "Module", "color": "#666666"}, {"id": "m_ak8963", "name": "ak8963", "type": "Module", "color": "#666666"}, {"id": "m_bmm150", "name": "bmm150", "type": "Module", "color": "#666666"}, {"id": "m_rm3100", "name": "rm3100", "type": "Module", "color": "#666666"}, {"id": "m_ina226", "name": "ina226", "type": "Module", "color": "#666666"}, {"id": "m_batmon", "name": "batmon", "type": "Module", "color": "#666666"}, {"id": "m_uavcan", "name": "uavcan", "type": "Module", "color": "#666666"}, {"id": "m_gimbal", "name": "gimbal", "type": "Module", "color": "#666666"}, {"id": "m_logger", "name": "logger", "type": "Module", "color": "#666666"}, {"id": "m_spa06", "name": "spa06", "type": "Module", "color": "#666666"}, {"id": "m_spl06", "name": "spl06", "type": "Module", "color": "#666666"}, {"id": "m_sdp3x", "name": "sdp3x", "type": "Module", "color": "#666666"}, {"id": "m_dshot", "name": "dshot", "type": "Module", "color": "#666666"}, {"id": "m_ekf2", "name": "ekf2", "type": "Module", "color": "#666666"}, {"id": "m_gps", "name": "gps", "type": "Module", "color": "#666666"}, {"id": "m_bst", "name": "bst", "type": "Module", "color": "#666666"}, {"id": "t_vehicle_angular_velocity_groundtruth", "name": "vehicle_angular_velocity_groundtruth", "type": "topic", "color": "#a5d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position_groundtruth", "name": "vehicle_global_position_groundtruth", "type": "topic", "color": "#d8a941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor_mode_change_request", "name": "distance_sensor_mode_change_request", "type": "topic", "color": "#41d8a7", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_groundtruth", "name": "vehicle_local_position_groundtruth", "type": "topic", "color": "#d8b641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_landing_status", "name": "position_controller_landing_status", "type": "topic", "color": "#d8c441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_longitudinal_control_configuration", "name": "longitudinal_control_configuration", "type": "topic", "color": "#d84161", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_manual_control", "name": "gimbal_manager_set_manual_control", "type": "topic", "color": "#d8ca41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_autotune_attitude_control_status", "name": "autotune_attitude_control_status", "type": "topic", "color": "#6ad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_longitudinal_setpoint", "name": "fixed_wing_longitudinal_setpoint", "type": "topic", "color": "#4152d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_setpoint", "name": "vehicle_local_position_setpoint", "type": "topic", "color": "#41d880", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_lateral_control_configuration", "name": "lateral_control_configuration", "type": "topic", "color": "#4941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_attitude_status", "name": "gimbal_device_attitude_status", "type": "topic", "color": "#d841d7", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_groundtruth", "name": "vehicle_attitude_groundtruth", "type": "topic", "color": "#d86141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fw_virtual_attitude_setpoint", "name": "fw_virtual_attitude_setpoint", "type": "topic", "color": "#d3d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mc_virtual_attitude_setpoint", "name": "mc_virtual_attitude_setpoint", "type": "topic", "color": "#ccd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_register_ext_component_reply", "name": "register_ext_component_reply", "type": "topic", "color": "#84d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_attitude", "name": "gimbal_manager_set_attitude", "type": "topic", "color": "#9ed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_lateral_setpoint", "name": "fixed_wing_lateral_setpoint", "type": "topic", "color": "#d841bd", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_controls_status_0", "name": "actuator_controls_status_0", "type": "topic", "color": "#d85441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorControlsStatus.msg"}, {"id": "t_position_controller_status", "name": "position_controller_status", "type": "topic", "color": "#d85b41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_set_attitude", "name": "gimbal_device_set_attitude", "type": "topic", "color": "#d88941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_information", "name": "gimbal_manager_information", "type": "topic", "color": "#b241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_operator_id", "name": "open_drone_id_operator_id", "type": "topic", "color": "#b9d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_setpoint_triplet", "name": "position_setpoint_triplet", "type": "topic", "color": "#71d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_setpoint", "name": "vehicle_attitude_setpoint", "type": "topic", "color": "#41d852", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_information", "name": "gimbal_device_information", "type": "topic", "color": "#41d8b4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_runway_control", "name": "fixed_wing_runway_control", "type": "topic", "color": "#ab41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_selector_status", "name": "estimator_selector_status", "type": "topic", "color": "#bf41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_request", "name": "uavcan_parameter_request", "type": "topic", "color": "#d87541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_control_allocator_status", "name": "control_allocator_status", "type": "topic", "color": "#41bbd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tiltrotor_extra_controls", "name": "tiltrotor_extra_controls", "type": "topic", "color": "#9841d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_arm_status", "name": "open_drone_id_arm_status", "type": "topic", "color": "#d8414e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_thrust_setpoint", "name": "vehicle_thrust_setpoint", "type": "topic", "color": "#d88241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleThrustSetpoint.msg"}, {"id": "t_launch_detection_status", "name": "launch_detection_status", "type": "topic", "color": "#56d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_setpoint", "name": "manual_control_setpoint", "type": "topic", "color": "#41d86c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_torque_setpoint", "name": "vehicle_torque_setpoint", "type": "topic", "color": "#41d873", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleTorqueSetpoint.msg"}, {"id": "t_vehicle_global_position", "name": "vehicle_global_position", "type": "topic", "color": "#41d89a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flight_phase_estimation", "name": "flight_phase_estimation", "type": "topic", "color": "#41c8d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_switches", "name": "manual_control_switches", "type": "topic", "color": "#41c1d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failure_detector_status", "name": "failure_detector_status", "type": "topic", "color": "#4173d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_visual_odometry", "name": "vehicle_visual_odometry", "type": "topic", "color": "#d841a9", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status_flags", "name": "estimator_status_flags", "type": "topic", "color": "#d86e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_rates_setpoint", "name": "vehicle_rates_setpoint", "type": "topic", "color": "#b2d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_mocap_odometry", "name": "vehicle_mocap_odometry", "type": "topic", "color": "#49d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_value", "name": "uavcan_parameter_value", "type": "topic", "color": "#41ced8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position", "name": "vehicle_local_position", "type": "topic", "color": "#d841b6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_differential_pressure", "name": "differential_pressure", "type": "topic", "color": "#91d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_sensor_bias", "name": "estimator_sensor_bias", "type": "topic", "color": "#41d859", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_land_detected", "name": "vehicle_land_detected", "type": "topic", "color": "#41d8ae", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_self_id", "name": "open_drone_id_self_id", "type": "topic", "color": "#5041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_offboard_control_mode", "name": "offboard_control_mode", "type": "topic", "color": "#d8417b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_status", "name": "gimbal_manager_status", "type": "topic", "color": "#d84147", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_servos_trim", "name": "actuator_servos_trim", "type": "topic", "color": "#d8bd41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs_sim", "name": "actuator_outputs_sim", "type": "topic", "color": "#abd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_vehicle_control_mode", "name": "vehicle_control_mode", "type": "topic", "color": "#63d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_system", "name": "open_drone_id_system", "type": "topic", "color": "#41d8bb", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_figure_eight_status", "name": "figure_eight_status", "type": "topic", "color": "#d87b41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_constraints", "name": "vehicle_constraints", "type": "topic", "color": "#41a7d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_trajectory_setpoint", "name": "trajectory_setpoint", "type": "topic", "color": "#4179d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_target_pose", "name": "landing_target_pose", "type": "topic", "color": "#416cd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_optical_flow", "name": "sensor_optical_flow", "type": "topic", "color": "#4145d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command_ack", "name": "vehicle_command_ack", "type": "topic", "color": "#6a41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vtol_vehicle_status", "name": "vtol_vehicle_status", "type": "topic", "color": "#9141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed_validated", "name": "airspeed_validated", "type": "topic", "color": "#98d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear_wheel", "name": "landing_gear_wheel", "type": "topic", "color": "#4193d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_power_button_state", "name": "power_button_state", "type": "topic", "color": "#4166d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_transponder_report", "name": "transponder_report", "type": "topic", "color": "#7741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu_status", "name": "vehicle_imu_status", "type": "topic", "color": "#a541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensors_status_imu", "name": "sensors_status_imu", "type": "topic", "color": "#d84175", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mount_orientation", "name": "mount_orientation", "type": "topic", "color": "#41d8d5", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_time_estimate", "name": "rtl_time_estimate", "type": "topic", "color": "#418dd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_correction", "name": "sensor_correction", "type": "topic", "color": "#d841c4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_spoilers_setpoint", "name": "spoilers_setpoint", "type": "topic", "color": "#d841b0", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_gimbal_v1_command", "name": "gimbal_v1_command", "type": "topic", "color": "#d841a3", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_selection", "name": "sensor_selection", "type": "topic", "color": "#d86841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rc_parameter_map", "name": "rc_parameter_map", "type": "topic", "color": "#bfd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_odometry", "name": "vehicle_odometry", "type": "topic", "color": "#5dd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_navigator_status", "name": "navigator_status", "type": "topic", "color": "#41d8c1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_telemetry_status", "name": "telemetry_status", "type": "topic", "color": "#41d8ce", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status", "name": "estimator_status", "type": "topic", "color": "#4341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_response", "name": "dataman_response", "type": "topic", "color": "#7141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude", "name": "vehicle_attitude", "type": "topic", "color": "#8b41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs", "name": "actuator_outputs", "type": "topic", "color": "#b941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_gimbal_controls", "name": "gimbal_controls", "type": "topic", "color": "#d8b041", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_motors", "name": "actuator_motors", "type": "topic", "color": "#d8d741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor", "name": "distance_sensor", "type": "topic", "color": "#41d845", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_result", "name": "geofence_result", "type": "topic", "color": "#41d84b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_request", "name": "dataman_request", "type": "topic", "color": "#41d85f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream_ack", "name": "ulog_stream_ack", "type": "topic", "color": "#41d893", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_combined", "name": "sensor_combined", "type": "topic", "color": "#41d8a1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gps_inject_data", "name": "gps_inject_data", "type": "topic", "color": "#4159d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_status", "name": "geofence_status", "type": "topic", "color": "#414bd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_key_value", "name": "debug_key_value", "type": "topic", "color": "#cc41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command", "name": "vehicle_command", "type": "topic", "color": "#d341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_battery_status", "name": "battery_status", "type": "topic", "color": "#d89c41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_armed", "name": "actuator_armed", "type": "topic", "color": "#c6d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission_result", "name": "mission_result", "type": "topic", "color": "#41d866", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_trigger", "name": "camera_trigger", "type": "topic", "color": "#41d886", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_status", "name": "vehicle_status", "type": "topic", "color": "#4186d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_capture", "name": "camera_capture", "type": "topic", "color": "#4180d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failsafe_flags", "name": "failsafe_flags", "type": "topic", "color": "#415fd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_satellite_info", "name": "satellite_info", "type": "topic", "color": "#d8418f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_takeoff_status", "name": "takeoff_status", "type": "topic", "color": "#d8416e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_action_request", "name": "action_request", "type": "topic", "color": "#d84168", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flaps_setpoint", "name": "flaps_setpoint", "type": "topic", "color": "#d84154", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_health_report", "name": "health_report", "type": "topic", "color": "#d84e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_test", "name": "actuator_test", "type": "topic", "color": "#50d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_safety_button", "name": "safety_button", "type": "topic", "color": "#41b4d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_home_position", "name": "home_position", "type": "topic", "color": "#41aed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_status", "name": "camera_status", "type": "topic", "color": "#7e41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_logger_status", "name": "logger_status", "type": "topic", "color": "#9e41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_irlock_report", "name": "irlock_report", "type": "topic", "color": "#d8415b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear", "name": "landing_gear", "type": "topic", "color": "#d84741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_system_power", "name": "system_power", "type": "topic", "color": "#7ed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tune_control", "name": "tune_control", "type": "topic", "color": "#77d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_accel", "name": "sensor_accel", "type": "topic", "color": "#d841ca", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_orbit_status", "name": "orbit_status", "type": "topic", "color": "#d8419c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_roi", "name": "vehicle_roi", "type": "topic", "color": "#d84141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tecs_status", "name": "tecs_status", "type": "topic", "color": "#d8a341", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream", "name": "ulog_stream", "type": "topic", "color": "#d8d141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_value", "name": "debug_value", "type": "topic", "color": "#8bd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro", "name": "sensor_gyro", "type": "topic", "color": "#41d879", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_baro", "name": "sensor_baro", "type": "topic", "color": "#41d8c8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu", "name": "vehicle_imu", "type": "topic", "color": "#6341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_led_control", "name": "led_control", "type": "topic", "color": "#8441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_array", "name": "debug_array", "type": "topic", "color": "#d84182", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_esc_status", "name": "esc_status", "type": "topic", "color": "#41d5d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_vect", "name": "debug_vect", "type": "topic", "color": "#41a1d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_adc_report", "name": "adc_report", "type": "topic", "color": "#419ad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_mag", "name": "sensor_mag", "type": "topic", "color": "#5d41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gps", "name": "sensor_gps", "type": "topic", "color": "#c641d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/SensorGps.msg"}, {"id": "t_rtl_status", "name": "rtl_status", "type": "topic", "color": "#d84189", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_pwm_input", "name": "pwm_input", "type": "topic", "color": "#d89641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed", "name": "airspeed", "type": "topic", "color": "#d88f41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource1d.msg"}, {"id": "t_input_rc", "name": "input_rc", "type": "topic", "color": "#43d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_cpuload", "name": "cpuload", "type": "topic", "color": "#5641d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission", "name": "mission", "type": "topic", "color": "#d841d1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_event", "name": "event", "type": "topic", "color": "#41d88d", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_wind", "name": "wind", "type": "topic", "color": "#d84196", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/Wind.msg"}], "links": [{"source": "m_ads1115", "target": "t_adc_report", "color": "#419ad8", "style": "dashed"}, {"source": "m_board_adc", "target": "t_adc_report", "color": "#419ad8", "style": "dashed"}, {"source": "m_board_adc", "target": "t_system_power", "color": "#7ed841", "style": "dashed"}, {"source": "m_bmp280", "target": "t_sensor_baro", "color": "#41d8c8", "style": "dashed"}, {"source": "m_bmp388", "target": "t_sensor_baro", "color": "#41d8c8", "style": "dashed"}, {"source": "m_bmp581", "target": "t_sensor_baro", "color": "#41d8c8", "style": "dashed"}, {"source": "m_dps310", "target": "t_sensor_baro", "color": "#41d8c8", "style": "dashed"}, {"source": "m_spa06", "target": "t_sensor_baro", "color": "#41d8c8", "style": "dashed"}, {"source": "m_spl06", "target": "t_sensor_baro", "color": "#41d8c8", "style": "dashed"}, {"source": "m_icp101xx", "target": "t_sensor_baro", "color": "#41d8c8", "style": "dashed"}, {"source": "m_icp201xx", "target": "t_sensor_baro", "color": "#41d8c8", "style": "dashed"}, {"source": "m_lps22hb", "target": "t_sensor_baro", "color": "#41d8c8", "style": "dashed"}, {"source": "m_lps33hw", "target": "t_sensor_baro", "color": "#41d8c8", "style": "dashed"}, {"source": "m_mpc2520", "target": "t_sensor_baro", "color": "#41d8c8", "style": "dashed"}, {"source": "m_ms5611", "target": "t_sensor_baro", "color": "#41d8c8", "style": "dashed"}, {"source": "m_batt_smbus", "target": "t_battery_status", "color": "#d89c41", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_vehicle_command_ack", "color": "#6a41d8", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_camera_trigger", "color": "#41d886", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command_ack", "color": "#6a41d8", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_camera_trigger", "color": "#41d886", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command", "color": "#d341d8", "style": "dashed"}, {"source": "m_ms4525do", "target": "t_differential_pressure", "color": "#91d841", "style": "dashed"}, {"source": "m_ms5525dso", "target": "t_differential_pressure", "color": "#91d841", "style": "dashed"}, {"source": "m_sdp3x", "target": "t_differential_pressure", "color": "#91d841", "style": "dashed"}, {"source": "m_cm8jl65", "target": "t_distance_sensor", "color": "#41d845", "style": "dashed"}, {"source": "m_lightware_laser_i2c", "target": "t_distance_sensor", "color": "#41d845", "style": "dashed"}, {"source": "m_lightware_laser_serial", "target": "t_distance_sensor", "color": "#41d845", "style": "dashed"}, {"source": "m_ll40ls", "target": "t_distance_sensor", "color": "#41d845", "style": "dashed"}, {"source": "m_teraranger", "target": "t_distance_sensor", "color": "#41d845", "style": "dashed"}, {"source": "m_tf02pro", "target": "t_distance_sensor", "color": "#41d845", "style": "dashed"}, {"source": "m_tfmini", "target": "t_distance_sensor", "color": "#41d845", "style": "dashed"}, {"source": "m_ulanding_radar", "target": "t_distance_sensor", "color": "#41d845", "style": "dashed"}, {"source": "m_vl53l0x", "target": "t_distance_sensor", "color": "#41d845", "style": "dashed"}, {"source": "m_vl53l1x", "target": "t_distance_sensor", "color": "#41d845", "style": "dashed"}, {"source": "m_dshot", "target": "t_vehicle_command_ack", "color": "#6a41d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_outputs", "color": "#b941d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_test", "color": "#50d841", "style": "dashed"}, {"source": "m_dshot", "target": "t_esc_status", "color": "#41d5d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_armed", "color": "#c6d841", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_motors", "color": "#d8d741", "style": "dashed"}, {"source": "m_septentrio", "target": "t_satellite_info", "color": "#d8418f", "style": "dashed"}, {"source": "m_septentrio", "target": "t_gps_inject_data", "color": "#4159d8", "style": "dashed"}, {"source": "m_septentrio", "target": "t_sensor_gps", "color": "#c641d8", "style": "dashed"}, {"source": "m_gps", "target": "t_satellite_info", "color": "#d8418f", "style": "dashed"}, {"source": "m_gps", "target": "t_sensor_gps", "color": "#c641d8", "style": "dashed"}, {"source": "m_gps", "target": "t_gps_inject_data", "color": "#4159d8", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_baro", "color": "#41d8c8", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_gyro", "color": "#41d879", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_mag", "color": "#5d41d8", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_accel", "color": "#d841ca", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_gyro", "color": "#41d879", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_accel", "color": "#d841ca", "style": "dashed"}, {"source": "m_icm20608g", "target": "t_sensor_gyro", "color": "#41d879", "style": "dashed"}, {"source": "m_icm20608g", "target": "t_sensor_accel", "color": "#d841ca", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_gyro", "color": "#41d879", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_mag", "color": "#5d41d8", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_accel", "color": "#d841ca", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_gyro", "color": "#41d879", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_mag", "color": "#5d41d8", "style": "dashed"}, {"source": "m_mpu9250", "target": "t_sensor_accel", "color": "#d841ca", "style": "dashed"}, {"source": "m_mpu9250_i2c", "target": "t_sensor_gyro", "color": "#41d879", "style": "dashed"}, {"source": "m_mpu9250_i2c", "target": "t_sensor_accel", "color": "#d841ca", "style": "dashed"}, {"source": "m_vectornav", "target": "t_estimator_status", "color": "#4341d8", "style": "dashed"}, {"source": "m_vectornav", "target": "t_sensor_baro", "color": "#41d8c8", "style": "dashed"}, {"source": "m_vectornav", "target": "t_sensor_selection", "color": "#d86841", "style": "dashed"}, {"source": "m_vectornav", "target": "t_sensor_gps", "color": "#c641d8", "style": "dashed"}, {"source": "m_irlock", "target": "t_irlock_report", "color": "#d8415b", "style": "dashed"}, {"source": "m_ak09916", "target": "t_sensor_mag", "color": "#5d41d8", "style": "dashed"}, {"source": "m_ak8963", "target": "t_sensor_mag", "color": "#5d41d8", "style": "dashed"}, {"source": "m_bmm150", "target": "t_sensor_mag", "color": "#5d41d8", "style": "dashed"}, {"source": "m_hmc5883", "target": "t_sensor_mag", "color": "#5d41d8", "style": "dashed"}, {"source": "m_ist8308", "target": "t_sensor_mag", "color": "#5d41d8", "style": "dashed"}, {"source": "m_ist8310", "target": "t_sensor_mag", "color": "#5d41d8", "style": "dashed"}, {"source": "m_lis3mdl", "target": "t_sensor_mag", "color": "#5d41d8", "style": "dashed"}, {"source": "m_lsm303agr", "target": "t_sensor_mag", "color": "#5d41d8", "style": "dashed"}, {"source": "m_mmc5983ma", "target": "t_sensor_mag", "color": "#5d41d8", "style": "dashed"}, {"source": "m_qmc5883l", "target": "t_sensor_mag", "color": "#5d41d8", "style": "dashed"}, {"source": "m_rm3100", "target": "t_sensor_mag", "color": "#5d41d8", "style": "dashed"}, {"source": "m_iis2mdc", "target": "t_sensor_mag", "color": "#5d41d8", "style": "dashed"}, {"source": "m_vcm1193l", "target": "t_sensor_mag", "color": "#5d41d8", "style": "dashed"}, {"source": "m_paa3905", "target": "t_sensor_optical_flow", "color": "#4145d8", "style": "dashed"}, {"source": "m_paw3902", "target": "t_sensor_optical_flow", "color": "#4145d8", "style": "dashed"}, {"source": "m_pmw3901", "target": "t_sensor_optical_flow", "color": "#4145d8", "style": "dashed"}, {"source": "m_px4flow", "target": "t_sensor_optical_flow", "color": "#4145d8", "style": "dashed"}, {"source": "m_thoneflow", "target": "t_sensor_optical_flow", "color": "#4145d8", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_outputs", "color": "#b941d8", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_test", "color": "#50d841", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_armed", "color": "#c6d841", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_motors", "color": "#d8d741", "style": "dashed"}, {"source": "m_ina226", "target": "t_battery_status", "color": "#d89c41", "style": "dashed"}, {"source": "m_pwm_input", "target": "t_pwm_input", "color": "#d89641", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_outputs", "color": "#b941d8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_test", "color": "#50d841", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_armed", "color": "#c6d841", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_motors", "color": "#d8d741", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command_ack", "color": "#6a41d8", "style": "dashed"}, {"source": "m_rc_input", "target": "t_input_rc", "color": "#43d841", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command", "color": "#d341d8", "style": "dashed"}, {"source": "m_safety_button", "target": "t_tune_control", "color": "#77d841", "style": "dashed"}, {"source": "m_safety_button", "target": "t_led_control", "color": "#8441d8", "style": "dashed"}, {"source": "m_safety_button", "target": "t_safety_button", "color": "#41b4d8", "style": "dashed"}, {"source": "m_safety_button", "target": "t_vehicle_command", "color": "#d341d8", "style": "dashed"}, {"source": "m_batmon", "target": "t_battery_status", "color": "#d89c41", "style": "dashed"}, {"source": "m_hott_telemetry", "target": "t_esc_status", "color": "#41d5d8", "style": "dashed"}, {"source": "m_tone_alarm", "target": "t_tune_control", "color": "#77d841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command_ack", "color": "#6a41d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_outputs", "color": "#b941d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_test", "color": "#50d841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_uavcan_parameter_value", "color": "#41ced8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_esc_status", "color": "#41d5d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_open_drone_id_arm_status", "color": "#d8414e", "style": "dashed"}, {"source": "m_uavcan", "target": "t_led_control", "color": "#8441d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_tune_control", "color": "#77d841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_armed", "color": "#c6d841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command", "color": "#d341d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_motors", "color": "#d8d741", "style": "dashed"}, {"source": "m_uavcan", "target": "t_distance_sensor", "color": "#41d845", "style": "dashed"}, {"source": "m_uavcan", "target": "t_safety_button", "color": "#41b4d8", "style": "dashed"}, {"source": "m_airspeed_selector", "target": "t_airspeed_validated", "color": "#98d841", "style": "dashed"}, {"source": "m_attitude_estimator_q", "target": "t_vehicle_attitude", "color": "#8b41d8", "style": "dashed"}, {"source": "m_battery_status", "target": "t_battery_status", "color": "#d89c41", "style": "dashed"}, {"source": "m_camera_feedback", "target": "t_camera_capture", "color": "#4180d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command_ack", "color": "#6a41d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_control_mode", "color": "#63d841", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_status", "color": "#4186d8", "style": "dashed"}, {"source": "m_commander", "target": "t_health_report", "color": "#d84e41", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_test", "color": "#50d841", "style": "dashed"}, {"source": "m_commander", "target": "t_led_control", "color": "#8441d8", "style": "dashed"}, {"source": "m_commander", "target": "t_failure_detector_status", "color": "#4173d8", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_armed", "color": "#c6d841", "style": "dashed"}, {"source": "m_commander", "target": "t_register_ext_component_reply", "color": "#84d841", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command", "color": "#d341d8", "style": "dashed"}, {"source": "m_commander", "target": "t_event", "color": "#41d88d", "style": "dashed"}, {"source": "m_commander", "target": "t_power_button_state", "color": "#4166d8", "style": "dashed"}, {"source": "m_commander", "target": "t_tune_control", "color": "#77d841", "style": "dashed"}, {"source": "m_commander", "target": "t_failsafe_flags", "color": "#415fd8", "style": "dashed"}, {"source": "m_commander", "target": "t_home_position", "color": "#41aed8", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_motors", "color": "#d8d741", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_control_allocator_status", "color": "#41bbd8", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos_trim", "color": "#d8bd41", "style": "dashed"}, {"source": "m_dataman", "target": "t_dataman_response", "color": "#7141d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_selector_status", "color": "#bf41d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_sensor_selection", "color": "#d86841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status_flags", "color": "#d86e41", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_odometry", "color": "#5dd841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_local_position", "color": "#d841b6", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_sensor_bias", "color": "#41d859", "style": "dashed"}, {"source": "m_ekf2", "target": "t_wind", "color": "#d84196", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status", "color": "#4341d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_command_ack", "color": "#6a41d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_global_position", "color": "#41d89a", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_attitude", "color": "#8b41d8", "style": "dashed"}, {"source": "m_esc_battery", "target": "t_battery_status", "color": "#d89c41", "style": "dashed"}, {"source": "m_send_event", "target": "t_tune_control", "color": "#77d841", "style": "dashed"}, {"source": "m_send_event", "target": "t_vehicle_command_ack", "color": "#6a41d8", "style": "dashed"}, {"source": "m_send_event", "target": "t_led_control", "color": "#8441d8", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_vehicle_constraints", "color": "#41a7d8", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_trajectory_setpoint", "color": "#4179d8", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_landing_gear", "color": "#d84741", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_vehicle_rates_setpoint", "color": "#b2d841", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_landing_gear_wheel", "color": "#4193d8", "style": "dashed"}, {"source": "m_fw_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#6ad841", "style": "dashed"}, {"source": "m_fw_lat_lon_control", "target": "t_tecs_status", "color": "#d8a341", "style": "dashed"}, {"source": "m_fw_lat_lon_control", "target": "t_flight_phase_estimation", "color": "#41c8d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_longitudinal_control_configuration", "color": "#d84161", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_orbit_status", "color": "#d8419c", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_lateral_setpoint", "color": "#d841bd", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_figure_eight_status", "color": "#d87b41", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_landing_gear", "color": "#d84741", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_launch_detection_status", "color": "#56d841", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_flaps_setpoint", "color": "#d84154", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_lateral_control_configuration", "color": "#4941d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_position_controller_landing_status", "color": "#d8c441", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_vehicle_local_position_setpoint", "color": "#41d880", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_spoilers_setpoint", "color": "#d841b0", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_runway_control", "color": "#ab41d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_longitudinal_setpoint", "color": "#4152d8", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_flaps_setpoint", "color": "#d84154", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#b2d841", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_spoilers_setpoint", "color": "#d841b0", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command_ack", "color": "#6a41d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_controls", "color": "#d8b041", "style": "dashed"}, {"source": "m_gimbal", "target": "t_mount_orientation", "color": "#41d8d5", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_set_attitude", "color": "#d88941", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command", "color": "#d341d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_attitude_status", "color": "#d841d7", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_information", "color": "#b241d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_v1_command", "color": "#d841a3", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_status", "color": "#d84147", "style": "dashed"}, {"source": "m_land_detector", "target": "t_vehicle_land_detected", "color": "#41d8ae", "style": "dashed"}, {"source": "m_landing_target_estimator", "target": "t_landing_target_pose", "color": "#416cd8", "style": "dashed"}, {"source": "m_load_mon", "target": "t_cpuload", "color": "#5641d8", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_odometry", "color": "#5dd841", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_global_position", "color": "#41d89a", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_estimator_status", "color": "#4341d8", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_local_position", "color": "#d841b6", "style": "dashed"}, {"source": "m_logger", "target": "t_vehicle_command_ack", "color": "#6a41d8", "style": "dashed"}, {"source": "m_logger", "target": "t_logger_status", "color": "#9e41d8", "style": "dashed"}, {"source": "m_logger", "target": "t_ulog_stream", "color": "#d8d141", "style": "dashed"}, {"source": "m_manual_control", "target": "t_action_request", "color": "#d84168", "style": "dashed"}, {"source": "m_manual_control", "target": "t_landing_gear", "color": "#d84741", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_status", "color": "#4186d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_setpoint", "color": "#41d86c", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_switches", "color": "#41c1d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_command", "color": "#d341d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_operator_id", "color": "#b9d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_rates_setpoint", "color": "#b2d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_baro", "color": "#41d8c8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_telemetry_status", "color": "#41d8ce", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_attitude", "color": "#9ed841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gps", "color": "#c641d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_key_value", "color": "#cc41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_differential_pressure", "color": "#91d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_value", "color": "#8bd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command", "color": "#d341d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_attitude_status", "color": "#d841d7", "style": "dashed"}, {"source": "m_mavlink", "target": "t_tune_control", "color": "#77d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mission", "color": "#d841d1", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_vect", "color": "#41a1d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_accel", "color": "#d841ca", "style": "dashed"}, {"source": "m_mavlink", "target": "t_uavcan_parameter_request", "color": "#d87541", "style": "dashed"}, {"source": "m_mavlink", "target": "t_trajectory_setpoint", "color": "#4179d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_local_position", "color": "#d841b6", "style": "dashed"}, {"source": "m_mavlink", "target": "t_landing_target_pose", "color": "#416cd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_mocap_odometry", "color": "#49d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_visual_odometry", "color": "#d841a9", "style": "dashed"}, {"source": "m_mavlink", "target": "t_airspeed", "color": "#d88f41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_input_rc", "color": "#43d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_battery_status", "color": "#d89c41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude_setpoint", "color": "#41d852", "style": "dashed"}, {"source": "m_mavlink", "target": "t_distance_sensor", "color": "#41d845", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gps_inject_data", "color": "#4159d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_optical_flow", "color": "#4145d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_dataman_request", "color": "#41d85f", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_self_id", "color": "#5041d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gyro", "color": "#41d879", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_manual_control", "color": "#d8ca41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_array", "color": "#d84182", "style": "dashed"}, {"source": "m_mavlink", "target": "t_event", "color": "#41d88d", "style": "dashed"}, {"source": "m_mavlink", "target": "t_offboard_control_mode", "color": "#d8417b", "style": "dashed"}, {"source": "m_mavlink", "target": "t_rc_parameter_map", "color": "#bfd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_mag", "color": "#5d41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_fw_virtual_attitude_setpoint", "color": "#d3d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mc_virtual_attitude_setpoint", "color": "#ccd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command_ack", "color": "#6a41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_ulog_stream_ack", "color": "#41d893", "style": "dashed"}, {"source": "m_mavlink", "target": "t_irlock_report", "color": "#d8415b", "style": "dashed"}, {"source": "m_mavlink", "target": "t_transponder_report", "color": "#7741d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_camera_status", "color": "#7e41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_global_position", "color": "#41d89a", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude", "color": "#8b41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_information", "color": "#41d8b4", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_system", "color": "#41d8bb", "style": "dashed"}, {"source": "m_mc_att_control", "target": "t_vehicle_rates_setpoint", "color": "#b2d841", "style": "dashed"}, {"source": "m_mc_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#6ad841", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_constraints", "color": "#41a7d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_trajectory_setpoint", "color": "#4179d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#41d880", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_takeoff_status", "color": "#d8416e", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#41d852", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_actuator_controls_status_0", "color": "#d85441", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#b2d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_roi", "color": "#d84141", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command", "color": "#d341d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission", "color": "#d841d1", "style": "dashed"}, {"source": "m_navigator", "target": "t_home_position", "color": "#41aed8", "style": "dashed"}, {"source": "m_navigator", "target": "t_position_setpoint_triplet", "color": "#71d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_time_estimate", "color": "#418dd8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_status", "color": "#4186d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_result", "color": "#41d84b", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_status", "color": "#414bd8", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission_result", "color": "#41d866", "style": "dashed"}, {"source": "m_navigator", "target": "t_dataman_request", "color": "#41d85f", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_status", "color": "#d84189", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command_ack", "color": "#6a41d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_transponder_report", "color": "#7741d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_global_position", "color": "#41d89a", "style": "dashed"}, {"source": "m_navigator", "target": "t_distance_sensor_mode_change_request", "color": "#41d8a7", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_land_detected", "color": "#41d8ae", "style": "dashed"}, {"source": "m_navigator", "target": "t_navigator_status", "color": "#41d8c1", "style": "dashed"}, {"source": "m_rc_update", "target": "t_manual_control_switches", "color": "#41c1d8", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_position_controller_status", "color": "#d85b41", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_torque_setpoint", "color": "#41d873", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#41d852", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_thrust_setpoint", "color": "#d88241", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_combined", "color": "#41d8a1", "style": "dashed"}, {"source": "m_sensors", "target": "t_differential_pressure", "color": "#91d841", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensors_status_imu", "color": "#d84175", "style": "dashed"}, {"source": "m_sensors", "target": "t_airspeed", "color": "#d88f41", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu_status", "color": "#a541d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu", "color": "#6341d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_selection", "color": "#d86841", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs", "color": "#b941d8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs_sim", "color": "#abd841", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_test", "color": "#50d841", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_armed", "color": "#c6d841", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_motors", "color": "#d8d741", "style": "dashed"}, {"source": "m_sensor_baro_sim", "target": "t_sensor_baro", "color": "#41d8c8", "style": "dashed"}, {"source": "m_sensor_gps_sim", "target": "t_sensor_gps", "color": "#c641d8", "style": "dashed"}, {"source": "m_sensor_mag_sim", "target": "t_sensor_mag", "color": "#5d41d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_local_position_groundtruth", "color": "#d8b641", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_angular_velocity_groundtruth", "color": "#a5d841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_gyro", "color": "#41d879", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_airspeed", "color": "#d88f41", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_attitude_groundtruth", "color": "#d86141", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_distance_sensor", "color": "#41d845", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_global_position_groundtruth", "color": "#d8a941", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_accel", "color": "#d841ca", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command_ack", "color": "#6a41d8", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_sensor_correction", "color": "#d841c4", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_led_control", "color": "#8441d8", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command", "color": "#d341d8", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_torque_setpoint", "color": "#41d873", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#d88241", "style": "dashed"}, {"source": "m_uuv_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#41d852", "style": "dashed"}, {"source": "m_uxrce_dds_client", "target": "t_vehicle_command", "color": "#d341d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_command_ack", "color": "#6a41d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#d88241", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_flaps_setpoint", "color": "#d84154", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_torque_setpoint", "color": "#41d873", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vtol_vehicle_status", "color": "#9141d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_tiltrotor_extra_controls", "color": "#9841d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_spoilers_setpoint", "color": "#d841b0", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_attitude_setpoint", "color": "#41d852", "style": "dashed"}, {"source": "m_actuator_test", "target": "t_actuator_test", "color": "#50d841", "style": "dashed"}, {"source": "m_led_control", "target": "t_led_control", "color": "#8441d8", "style": "dashed"}, {"source": "m_tune_control", "target": "t_tune_control", "color": "#77d841", "style": "dashed"}, {"source": "m_fake_gps", "target": "t_sensor_gps", "color": "#c641d8", "style": "dashed"}, {"source": "t_adc_report", "target": "m_board_adc", "color": "#419ad8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_capture", "color": "#d341d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_trigger", "color": "#d341d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_camera_trigger", "color": "#d841b6", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_cdcacm_autostart", "color": "#c6d841", "style": "normal"}, {"source": "t_distance_sensor_mode_change_request", "target": "m_lightware_laser_i2c", "color": "#41d8a7", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_lightware_laser_i2c", "color": "#4186d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_dshot", "color": "#d8b041", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_dshot", "color": "#4193d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_dshot", "color": "#d84741", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_dshot", "color": "#41d86c", "style": "normal"}, {"source": "t_actuator_test", "target": "m_dshot", "color": "#50d841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_dshot", "color": "#d8bd41", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_dshot", "color": "#c6d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dshot", "color": "#d341d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_dshot", "color": "#d8d741", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_septentrio", "color": "#4159d8", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_gps", "color": "#4159d8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_heater", "color": "#d841ca", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled", "color": "#8441d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_is31fl3195", "color": "#8441d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_lp5562", "color": "#8441d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_ncp5623c", "color": "#8441d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pca9685_pwm_out", "color": "#d8b041", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pca9685_pwm_out", "color": "#4193d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pca9685_pwm_out", "color": "#d84741", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pca9685_pwm_out", "color": "#41d86c", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pca9685_pwm_out", "color": "#50d841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pca9685_pwm_out", "color": "#d8bd41", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pca9685_pwm_out", "color": "#c6d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pca9685_pwm_out", "color": "#d341d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pca9685_pwm_out", "color": "#d8d741", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina226", "color": "#4186d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina226", "color": "#41c8d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out", "color": "#d8b041", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out", "color": "#4193d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out", "color": "#d84741", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out", "color": "#41d86c", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out", "color": "#50d841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out", "color": "#d8bd41", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out", "color": "#c6d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out", "color": "#d341d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out", "color": "#d8d741", "style": "normal"}, {"source": "t_adc_report", "target": "m_rc_input", "color": "#419ad8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_rc_input", "color": "#4186d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rc_input", "color": "#8b41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_rc_input", "color": "#d341d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_rc_input", "color": "#d89c41", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_safety_button", "color": "#c6d841", "style": "normal"}, {"source": "t_battery_status", "target": "m_bst", "color": "#d89c41", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_bst", "color": "#8b41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_frsky_telemetry", "color": "#4186d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_frsky_telemetry", "color": "#41d89a", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_frsky_telemetry", "color": "#d841b6", "style": "normal"}, {"source": "t_battery_status", "target": "m_frsky_telemetry", "color": "#d89c41", "style": "normal"}, {"source": "t_esc_status", "target": "m_hott_telemetry", "color": "#41d5d8", "style": "normal"}, {"source": "t_airspeed", "target": "m_hott_telemetry", "color": "#d88f41", "style": "normal"}, {"source": "t_battery_status", "target": "m_hott_telemetry", "color": "#d89c41", "style": "normal"}, {"source": "t_home_position", "target": "m_hott_telemetry", "color": "#41aed8", "style": "normal"}, {"source": "t_tune_control", "target": "m_tone_alarm", "color": "#77d841", "style": "normal"}, {"source": "t_open_drone_id_operator_id", "target": "m_uavcan", "color": "#b9d841", "style": "normal"}, {"source": "t_landing_gear", "target": "m_uavcan", "color": "#d84741", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_uavcan", "color": "#d341d8", "style": "normal"}, {"source": "t_tune_control", "target": "m_uavcan", "color": "#77d841", "style": "normal"}, {"source": "t_home_position", "target": "m_uavcan", "color": "#41aed8", "style": "normal"}, {"source": "t_uavcan_parameter_request", "target": "m_uavcan", "color": "#d87541", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_uavcan", "color": "#4193d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_uavcan", "color": "#4186d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_uavcan", "color": "#50d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uavcan", "color": "#d841b6", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_uavcan", "color": "#4159d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_uavcan", "color": "#d8b041", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uavcan", "color": "#41d86c", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_uavcan", "color": "#d8bd41", "style": "normal"}, {"source": "t_open_drone_id_self_id", "target": "m_uavcan", "color": "#5041d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_uavcan", "color": "#d8d741", "style": "normal"}, {"source": "t_led_control", "target": "m_uavcan", "color": "#8441d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_uavcan", "color": "#41d8ae", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_uavcan", "color": "#c6d841", "style": "normal"}, {"source": "t_open_drone_id_system", "target": "m_uavcan", "color": "#41d8bb", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airspeed_selector", "color": "#4186d8", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_airspeed_selector", "color": "#bf41d8", "style": "normal"}, {"source": "t_estimator_status", "target": "m_airspeed_selector", "color": "#4341d8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_airspeed_selector", "color": "#d88241", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_airspeed_selector", "color": "#56d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_airspeed_selector", "color": "#8b41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_airspeed_selector", "color": "#d841b6", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_airspeed_selector", "color": "#41c8d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_airspeed_selector", "color": "#41d8ae", "style": "normal"}, {"source": "t_airspeed", "target": "m_airspeed_selector", "color": "#d88f41", "style": "normal"}, {"source": "t_tecs_status", "target": "m_airspeed_selector", "color": "#d8a341", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_attitude_estimator_q", "color": "#8b41d8", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_attitude_estimator_q", "color": "#41d8a1", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_attitude_estimator_q", "color": "#d841b6", "style": "normal"}, {"source": "t_vehicle_mocap_odometry", "target": "m_attitude_estimator_q", "color": "#49d841", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_attitude_estimator_q", "color": "#d841a9", "style": "normal"}, {"source": "t_adc_report", "target": "m_battery_status", "color": "#419ad8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_status", "color": "#4186d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_battery_status", "color": "#41c8d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_camera_feedback", "color": "#41d89a", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_camera_feedback", "color": "#41d886", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_camera_feedback", "color": "#8b41d8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_camera_feedback", "color": "#d841d7", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_commander", "color": "#41d8c8", "style": "normal"}, {"source": "t_telemetry_status", "target": "m_commander", "color": "#41d8ce", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_commander", "color": "#bf41d8", "style": "normal"}, {"source": "t_esc_status", "target": "m_commander", "color": "#41d5d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_commander", "color": "#98d841", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_commander", "color": "#c641d8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_commander", "color": "#91d841", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_commander", "color": "#41c1d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_commander", "color": "#d341d8", "style": "normal"}, {"source": "t_system_power", "target": "m_commander", "color": "#7ed841", "style": "normal"}, {"source": "t_safety_button", "target": "m_commander", "color": "#41b4d8", "style": "normal"}, {"source": "t_home_position", "target": "m_commander", "color": "#41aed8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_commander", "color": "#d841ca", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_commander", "color": "#d86841", "style": "normal"}, {"source": "t_estimator_status_flags", "target": "m_commander", "color": "#d86e41", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_commander", "color": "#d841c4", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_commander", "color": "#418dd8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_commander", "color": "#4186d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_commander", "color": "#d841b6", "style": "normal"}, {"source": "t_power_button_state", "target": "m_commander", "color": "#4166d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_commander", "color": "#d89c41", "style": "normal"}, {"source": "t_pwm_input", "target": "m_commander", "color": "#d89641", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_commander", "color": "#41d845", "style": "normal"}, {"source": "t_geofence_result", "target": "m_commander", "color": "#41d84b", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_commander", "color": "#41d859", "style": "normal"}, {"source": "t_mission_result", "target": "m_commander", "color": "#41d866", "style": "normal"}, {"source": "t_wind", "target": "m_commander", "color": "#d84196", "style": "normal"}, {"source": "t_estimator_status", "target": "m_commander", "color": "#4341d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_commander", "color": "#41d86c", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_commander", "color": "#41d879", "style": "normal"}, {"source": "t_cpuload", "target": "m_commander", "color": "#5641d8", "style": "normal"}, {"source": "t_event", "target": "m_commander", "color": "#41d88d", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_commander", "color": "#d8417b", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_commander", "color": "#d84175", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_commander", "color": "#5d41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_commander", "color": "#d8d741", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_commander", "color": "#6a41d8", "style": "normal"}, {"source": "t_action_request", "target": "m_commander", "color": "#d84168", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_commander", "color": "#41d89a", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_commander", "color": "#8b41d8", "style": "normal"}, {"source": "t_vtol_vehicle_status", "target": "m_commander", "color": "#9141d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_commander", "color": "#41d8ae", "style": "normal"}, {"source": "t_logger_status", "target": "m_commander", "color": "#9e41d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_commander", "color": "#c6d841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_commander", "color": "#a541d8", "style": "normal"}, {"source": "t_navigator_status", "target": "m_commander", "color": "#41d8c1", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_control_allocator", "color": "#63d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_control_allocator", "color": "#4186d8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_control_allocator", "color": "#d88241", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_control_allocator", "color": "#d84154", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_control_allocator", "color": "#41d873", "style": "normal"}, {"source": "t_tiltrotor_extra_controls", "target": "m_control_allocator", "color": "#9841d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_control_allocator", "color": "#41c1d8", "style": "normal"}, {"source": "t_failure_detector_status", "target": "m_control_allocator", "color": "#4173d8", "style": "normal"}, {"source": "t_spoilers_setpoint", "target": "m_control_allocator", "color": "#d841b0", "style": "normal"}, {"source": "t_dataman_request", "target": "m_dataman", "color": "#41d85f", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ekf2", "color": "#4186d8", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_ekf2", "color": "#56d841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_ekf2", "color": "#d86841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_ekf2", "color": "#98d841", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_ekf2", "color": "#41d8a1", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_ekf2", "color": "#41d8ae", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_ekf2", "color": "#416cd8", "style": "normal"}, {"source": "t_airspeed", "target": "m_ekf2", "color": "#d88f41", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_ekf2", "color": "#d84175", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_ekf2", "color": "#d841a9", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_ekf2", "color": "#d341d8", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_ekf2", "color": "#6341d8", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_ekf2", "color": "#41d845", "style": "normal"}, {"source": "t_esc_status", "target": "m_esc_battery", "color": "#41d5d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_esc_battery", "color": "#4186d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_esc_battery", "color": "#41c8d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_send_event", "color": "#4186d8", "style": "normal"}, {"source": "t_cpuload", "target": "m_send_event", "color": "#5641d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_send_event", "color": "#d341d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_send_event", "color": "#d89c41", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_send_event", "color": "#415fd8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_flight_mode_manager", "color": "#63d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_flight_mode_manager", "color": "#4186d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_flight_mode_manager", "color": "#d841b6", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_flight_mode_manager", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_flight_mode_manager", "color": "#d341d8", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_flight_mode_manager", "color": "#d8416e", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_flight_mode_manager", "color": "#41d852", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_fw_att_control", "color": "#6ad841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_att_control", "color": "#63d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_att_control", "color": "#4186d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_att_control", "color": "#41d86c", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_att_control", "color": "#8b41d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_att_control", "color": "#98d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_att_control", "color": "#d841b6", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_att_control", "color": "#41d8ae", "style": "normal"}, {"source": "t_fixed_wing_runway_control", "target": "m_fw_att_control", "color": "#ab41d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_fw_att_control", "color": "#41d852", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_autotune_attitude_control", "color": "#41d86c", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_autotune_attitude_control", "color": "#4186d8", "style": "normal"}, {"source": "t_longitudinal_control_configuration", "target": "m_fw_lat_lon_control", "color": "#d84161", "style": "normal"}, {"source": "t_wind", "target": "m_fw_lat_lon_control", "color": "#d84196", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_lat_lon_control", "color": "#63d841", "style": "normal"}, {"source": "t_fixed_wing_lateral_setpoint", "target": "m_fw_lat_lon_control", "color": "#d841bd", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_lat_lon_control", "color": "#4186d8", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_fw_lat_lon_control", "color": "#d84154", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_lat_lon_control", "color": "#8b41d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_lat_lon_control", "color": "#98d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_lat_lon_control", "color": "#d841b6", "style": "normal"}, {"source": "t_lateral_control_configuration", "target": "m_fw_lat_lon_control", "color": "#4941d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_lat_lon_control", "color": "#41d8ae", "style": "normal"}, {"source": "t_fixed_wing_longitudinal_setpoint", "target": "m_fw_lat_lon_control", "color": "#4152d8", "style": "normal"}, {"source": "t_wind", "target": "m_fw_mode_manager", "color": "#d84196", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_mode_manager", "color": "#63d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_mode_manager", "color": "#4186d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_fw_mode_manager", "color": "#41d89a", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_mode_manager", "color": "#41d86c", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_mode_manager", "color": "#8b41d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_mode_manager", "color": "#98d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_mode_manager", "color": "#d841b6", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_fw_mode_manager", "color": "#4179d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_mode_manager", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_fw_mode_manager", "color": "#d341d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_fw_mode_manager", "color": "#71d841", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_fw_rate_control", "color": "#b2d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_rate_control", "color": "#63d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_rate_control", "color": "#4186d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_rate_control", "color": "#41d86c", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_fw_rate_control", "color": "#41bbd8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_rate_control", "color": "#98d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_rate_control", "color": "#41d8ae", "style": "normal"}, {"source": "t_battery_status", "target": "m_fw_rate_control", "color": "#d89c41", "style": "normal"}, {"source": "t_vehicle_roi", "target": "m_gimbal", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_gimbal", "color": "#41d89a", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gimbal", "color": "#41d86c", "style": "normal"}, {"source": "t_gimbal_manager_set_attitude", "target": "m_gimbal", "color": "#9ed841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_gimbal", "color": "#8b41d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_gimbal", "color": "#41d8ae", "style": "normal"}, {"source": "t_gimbal_manager_set_manual_control", "target": "m_gimbal", "color": "#d8ca41", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gimbal", "color": "#d341d8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_gimbal", "color": "#d841d7", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_gimbal", "color": "#41d8b4", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_gimbal", "color": "#71d841", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_gyro_calibration", "color": "#d841c4", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_calibration", "color": "#41d879", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_gyro_calibration", "color": "#4186d8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_gyro_calibration", "color": "#d841ca", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_land_detector", "color": "#63d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_land_detector", "color": "#4186d8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_land_detector", "color": "#d88241", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_land_detector", "color": "#56d841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_land_detector", "color": "#41d89a", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_land_detector", "color": "#98d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_land_detector", "color": "#d841b6", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_land_detector", "color": "#4179d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_land_detector", "color": "#c6d841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_land_detector", "color": "#a541d8", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_land_detector", "color": "#d8416e", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_land_detector", "color": "#71d841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_land_detector", "color": "#d86841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_landing_target_estimator", "color": "#8b41d8", "style": "normal"}, {"source": "t_irlock_report", "target": "m_landing_target_estimator", "color": "#d8415b", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_landing_target_estimator", "color": "#d841b6", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_local_position_estimator", "color": "#8b41d8", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_local_position_estimator", "color": "#41d845", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_local_position_estimator", "color": "#d841b6", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_local_position_estimator", "color": "#41d8a1", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_local_position_estimator", "color": "#41d8ae", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_local_position_estimator", "color": "#c6d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_local_position_estimator", "color": "#d341d8", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_local_position_estimator", "color": "#d841a9", "style": "normal"}, {"source": "t_vehicle_mocap_odometry", "target": "m_local_position_estimator", "color": "#49d841", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_local_position_estimator", "color": "#416cd8", "style": "normal"}, {"source": "t_ulog_stream_ack", "target": "m_logger", "color": "#41d893", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_logger", "color": "#4186d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_logger", "color": "#41d86c", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_logger", "color": "#d341d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_logger", "color": "#d89c41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mag_bias_estimator", "color": "#4186d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mag_bias_estimator", "color": "#5d41d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_manual_control", "color": "#41c1d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_manual_control", "color": "#41d86c", "style": "normal"}, {"source": "t_action_request", "target": "m_manual_control", "color": "#d84168", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_manual_control", "color": "#4186d8", "style": "normal"}, {"source": "t_health_report", "target": "m_mavlink", "color": "#d84e41", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_mavlink", "color": "#d85b41", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_mavlink", "color": "#d86141", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_mavlink", "color": "#d86841", "style": "normal"}, {"source": "t_figure_eight_status", "target": "m_mavlink", "color": "#d87b41", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_mavlink", "color": "#d88241", "style": "normal"}, {"source": "t_gimbal_device_set_attitude", "target": "m_mavlink", "color": "#d88941", "style": "normal"}, {"source": "t_airspeed", "target": "m_mavlink", "color": "#d88f41", "style": "normal"}, {"source": "t_battery_status", "target": "m_mavlink", "color": "#d89c41", "style": "normal"}, {"source": "t_tecs_status", "target": "m_mavlink", "color": "#d8a341", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_mavlink", "color": "#d8a941", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_mavlink", "color": "#d8b641", "style": "normal"}, {"source": "t_ulog_stream", "target": "m_mavlink", "color": "#d8d141", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_mavlink", "color": "#c6d841", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mavlink", "color": "#b2d841", "style": "normal"}, {"source": "t_vehicle_angular_velocity_groundtruth", "target": "m_mavlink", "color": "#a5d841", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_mavlink", "color": "#abd841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_mavlink", "color": "#98d841", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_mavlink", "color": "#91d841", "style": "normal"}, {"source": "t_register_ext_component_reply", "target": "m_mavlink", "color": "#84d841", "style": "normal"}, {"source": "t_debug_value", "target": "m_mavlink", "color": "#8bd841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_mavlink", "color": "#71d841", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mavlink", "color": "#6ad841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mavlink", "color": "#63d841", "style": "normal"}, {"source": "t_vehicle_odometry", "target": "m_mavlink", "color": "#5dd841", "style": "normal"}, {"source": "t_input_rc", "target": "m_mavlink", "color": "#43d841", "style": "normal"}, {"source": "t_geofence_result", "target": "m_mavlink", "color": "#41d84b", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mavlink", "color": "#41d852", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_mavlink", "color": "#41d845", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_mavlink", "color": "#41d859", "style": "normal"}, {"source": "t_mission_result", "target": "m_mavlink", "color": "#41d866", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mavlink", "color": "#41d86c", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_mavlink", "color": "#41d880", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_mavlink", "color": "#41d886", "style": "normal"}, {"source": "t_event", "target": "m_mavlink", "color": "#41d88d", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_mavlink", "color": "#41d89a", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mavlink", "color": "#41d8ae", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_mavlink", "color": "#41d8b4", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_mavlink", "color": "#41d8c8", "style": "normal"}, {"source": "t_mount_orientation", "target": "m_mavlink", "color": "#41d8d5", "style": "normal"}, {"source": "t_esc_status", "target": "m_mavlink", "color": "#41d5d8", "style": "normal"}, {"source": "t_uavcan_parameter_value", "target": "m_mavlink", "color": "#41ced8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_mavlink", "color": "#41c1d8", "style": "normal"}, {"source": "t_home_position", "target": "m_mavlink", "color": "#41aed8", "style": "normal"}, {"source": "t_debug_vect", "target": "m_mavlink", "color": "#41a1d8", "style": "normal"}, {"source": "t_camera_capture", "target": "m_mavlink", "color": "#4180d8", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_mavlink", "color": "#418dd8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mavlink", "color": "#4186d8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_mavlink", "color": "#416cd8", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_mavlink", "color": "#415fd8", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_mavlink", "color": "#4159d8", "style": "normal"}, {"source": "t_estimator_status", "target": "m_mavlink", "color": "#4341d8", "style": "normal"}, {"source": "t_cpuload", "target": "m_mavlink", "color": "#5641d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mavlink", "color": "#5d41d8", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_mavlink", "color": "#6341d8", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_mavlink", "color": "#6a41d8", "style": "normal"}, {"source": "t_dataman_response", "target": "m_mavlink", "color": "#7141d8", "style": "normal"}, {"source": "t_transponder_report", "target": "m_mavlink", "color": "#7741d8", "style": "normal"}, {"source": "t_camera_status", "target": "m_mavlink", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mavlink", "color": "#8b41d8", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_mavlink", "color": "#a541d8", "style": "normal"}, {"source": "t_gimbal_manager_information", "target": "m_mavlink", "color": "#b241d8", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_mavlink", "color": "#b941d8", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_mavlink", "color": "#bf41d8", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_mavlink", "color": "#c641d8", "style": "normal"}, {"source": "t_debug_key_value", "target": "m_mavlink", "color": "#cc41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_mavlink", "color": "#d341d8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_mavlink", "color": "#d841d7", "style": "normal"}, {"source": "t_mission", "target": "m_mavlink", "color": "#d841d1", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_mavlink", "color": "#d841c4", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mavlink", "color": "#d841b6", "style": "normal"}, {"source": "t_gimbal_v1_command", "target": "m_mavlink", "color": "#d841a3", "style": "normal"}, {"source": "t_orbit_status", "target": "m_mavlink", "color": "#d8419c", "style": "normal"}, {"source": "t_wind", "target": "m_mavlink", "color": "#d84196", "style": "normal"}, {"source": "t_satellite_info", "target": "m_mavlink", "color": "#d8418f", "style": "normal"}, {"source": "t_debug_array", "target": "m_mavlink", "color": "#d84182", "style": "normal"}, {"source": "t_open_drone_id_arm_status", "target": "m_mavlink", "color": "#d8414e", "style": "normal"}, {"source": "t_gimbal_manager_status", "target": "m_mavlink", "color": "#d84147", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mc_att_control", "color": "#6ad841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_att_control", "color": "#63d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_att_control", "color": "#4186d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_att_control", "color": "#41d86c", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mc_att_control", "color": "#8b41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_att_control", "color": "#d841b6", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_att_control", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mc_att_control", "color": "#41d852", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_autotune_attitude_control", "color": "#4186d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#41d86c", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#41d873", "style": "normal"}, {"source": "t_actuator_controls_status_0", "target": "m_mc_autotune_attitude_control", "color": "#d85441", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_pos_control", "color": "#63d841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_mc_pos_control", "color": "#4179d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_pos_control", "color": "#d841b6", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_pos_control", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_constraints", "target": "m_mc_pos_control", "color": "#41a7d8", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mc_rate_control", "color": "#b2d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_rate_control", "color": "#63d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_rate_control", "color": "#4186d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_rate_control", "color": "#41d86c", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_mc_rate_control", "color": "#41bbd8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_rate_control", "color": "#41d8ae", "style": "normal"}, {"source": "t_battery_status", "target": "m_mc_rate_control", "color": "#d89c41", "style": "normal"}, {"source": "t_dataman_response", "target": "m_navigator", "color": "#7141d8", "style": "normal"}, {"source": "t_wind", "target": "m_navigator", "color": "#d84196", "style": "normal"}, {"source": "t_transponder_report", "target": "m_navigator", "color": "#7741d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_navigator", "color": "#4186d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_navigator", "color": "#41d89a", "style": "normal"}, {"source": "t_rtl_status", "target": "m_navigator", "color": "#d84189", "style": "normal"}, {"source": "t_position_controller_landing_status", "target": "m_navigator", "color": "#d8c441", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_navigator", "color": "#d841b6", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_navigator", "color": "#41d8ae", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_navigator", "color": "#416cd8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_navigator", "color": "#d341d8", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_navigator", "color": "#d85b41", "style": "normal"}, {"source": "t_mission", "target": "m_navigator", "color": "#d841d1", "style": "normal"}, {"source": "t_geofence_status", "target": "m_navigator", "color": "#414bd8", "style": "normal"}, {"source": "t_home_position", "target": "m_navigator", "color": "#41aed8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_rc_update", "color": "#41c1d8", "style": "normal"}, {"source": "t_rc_parameter_map", "target": "m_rc_update", "color": "#bfd841", "style": "normal"}, {"source": "t_input_rc", "target": "m_rc_update", "color": "#43d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_pos_control", "color": "#63d841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_rover_pos_control", "color": "#41d89a", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_pos_control", "color": "#41d86c", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_pos_control", "color": "#8b41d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_pos_control", "color": "#4179d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_pos_control", "color": "#d841b6", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_rover_pos_control", "color": "#41d852", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_pos_control", "color": "#71d841", "style": "normal"}, {"source": "t_sensor_optical_flow", "target": "m_sensors", "color": "#4145d8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_sensors", "color": "#d841c4", "style": "normal"}, {"source": "t_adc_report", "target": "m_sensors", "color": "#419ad8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_sensors", "color": "#63d841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_sensors", "color": "#d86841", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_sensors", "color": "#41d879", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_sensors", "color": "#91d841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_sensors", "color": "#a541d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_sensors", "color": "#5d41d8", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_sensors", "color": "#6341d8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_sensors", "color": "#41d859", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_sensors", "color": "#d841ca", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out_sim", "color": "#d8b041", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out_sim", "color": "#4193d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out_sim", "color": "#d84741", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out_sim", "color": "#41d86c", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out_sim", "color": "#50d841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out_sim", "color": "#d8bd41", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out_sim", "color": "#c6d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out_sim", "color": "#d341d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out_sim", "color": "#d8d741", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_baro_sim", "color": "#d8a941", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#d8b641", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#d8a941", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_sensor_mag_sim", "color": "#d86141", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_mag_sim", "color": "#d8a941", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_simulator_sih", "color": "#b941d8", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_simulator_sih", "color": "#abd841", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_temperature_compensation", "color": "#41d8c8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_temperature_compensation", "color": "#41d879", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_temperature_compensation", "color": "#d341d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_temperature_compensation", "color": "#5d41d8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_temperature_compensation", "color": "#d841ca", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_uuv_att_control", "color": "#b2d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_att_control", "color": "#63d841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uuv_att_control", "color": "#41d86c", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_att_control", "color": "#8b41d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_uuv_att_control", "color": "#41d852", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_pos_control", "color": "#63d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_pos_control", "color": "#8b41d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_uuv_pos_control", "color": "#4179d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uuv_pos_control", "color": "#d841b6", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_uxrce_dds_client", "color": "#6a41d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_vtol_att_control", "color": "#98d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_vtol_att_control", "color": "#d341d8", "style": "normal"}, {"source": "t_home_position", "target": "m_vtol_att_control", "color": "#41aed8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_vtol_att_control", "color": "#71d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_vtol_att_control", "color": "#63d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_vtol_att_control", "color": "#4186d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_vtol_att_control", "color": "#d841b6", "style": "normal"}, {"source": "t_tecs_status", "target": "m_vtol_att_control", "color": "#d8a341", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_vtol_att_control", "color": "#41d880", "style": "normal"}, {"source": "t_fw_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#d3d841", "style": "normal"}, {"source": "t_mc_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#ccd841", "style": "normal"}, {"source": "t_action_request", "target": "m_vtol_att_control", "color": "#d84168", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_vtol_att_control", "color": "#8b41d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_vtol_att_control", "color": "#41d8ae", "style": "normal"}]} \ No newline at end of file diff --git a/docs/public/middleware/graph_px4_fmu-v5.json b/docs/public/middleware/graph_px4_fmu-v5.json index 3177688f80..b63dd33682 100644 --- a/docs/public/middleware/graph_px4_fmu-v5.json +++ b/docs/public/middleware/graph_px4_fmu-v5.json @@ -1 +1 @@ -{"nodes": [{"id": "m_fw_autotune_attitude_control", "name": "fw_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_autotune_attitude_control", "name": "mc_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_landing_target_estimator", "name": "landing_target_estimator", "type": "Module", "color": "#666666"}, {"id": "m_temperature_compensation", "name": "temperature_compensation", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_serial", "name": "lightware_laser_serial", "type": "Module", "color": "#666666"}, {"id": "m_attitude_estimator_q", "name": "attitude_estimator_q", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_i2c", "name": "lightware_laser_i2c", "type": "Module", "color": "#666666"}, {"id": "m_flight_mode_manager", "name": "flight_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_mag_bias_estimator", "name": "mag_bias_estimator", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_is31fl3195", "name": "rgbled_is31fl3195", "type": "Module", "color": "#666666"}, {"id": "m_airspeed_selector", "name": "airspeed_selector", "type": "Module", "color": "#666666"}, {"id": "m_control_allocator", "name": "control_allocator", "type": "Module", "color": "#666666"}, {"id": "m_rover_pos_control", "name": "rover_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_cdcacm_autostart", "name": "cdcacm_autostart", "type": "Module", "color": "#666666"}, {"id": "m_gyro_calibration", "name": "gyro_calibration", "type": "Module", "color": "#666666"}, {"id": "m_uxrce_dds_client", "name": "uxrce_dds_client", "type": "Module", "color": "#666666"}, {"id": "m_vtol_att_control", "name": "vtol_att_control", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_ncp5623c", "name": "rgbled_ncp5623c", "type": "Module", "color": "#666666"}, {"id": "m_pca9685_pwm_out", "name": "pca9685_pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_frsky_telemetry", "name": "frsky_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_camera_feedback", "name": "camera_feedback", "type": "Module", "color": "#666666"}, {"id": "m_fw_rate_control", "name": "fw_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_rate_control", "name": "mc_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_sensor_baro_sim", "name": "sensor_baro_sim", "type": "Module", "color": "#666666"}, {"id": "m_uuv_att_control", "name": "uuv_att_control", "type": "Module", "color": "#666666"}, {"id": "m_uuv_pos_control", "name": "uuv_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_camera_capture", "name": "camera_capture", "type": "Module", "color": "#666666"}, {"id": "m_camera_trigger", "name": "camera_trigger", "type": "Module", "color": "#666666"}, {"id": "m_ulanding_radar", "name": "ulanding_radar", "type": "Module", "color": "#666666"}, {"id": "m_hott_telemetry", "name": "hott_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_battery_status", "name": "battery_status", "type": "Module", "color": "#666666"}, {"id": "m_fw_att_control", "name": "fw_att_control", "type": "Module", "color": "#666666"}, {"id": "m_fw_pos_control", "name": "fw_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_manual_control", "name": "manual_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_att_control", "name": "mc_att_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_pos_control", "name": "mc_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_sensor_gps_sim", "name": "sensor_gps_sim", "type": "Module", "color": "#666666"}, {"id": "m_sensor_mag_sim", "name": "sensor_mag_sim", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_lp5562", "name": "rgbled_lp5562", "type": "Module", "color": "#666666"}, {"id": "m_safety_button", "name": "safety_button", "type": "Module", "color": "#666666"}, {"id": "m_land_detector", "name": "land_detector", "type": "Module", "color": "#666666"}, {"id": "m_simulator_sih", "name": "simulator_sih", "type": "Module", "color": "#666666"}, {"id": "m_actuator_test", "name": "actuator_test", "type": "Module", "color": "#666666"}, {"id": "m_tune_control", "name": "tune_control", "type": "Module", "color": "#666666"}, {"id": "m_esc_battery", "name": "esc_battery", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out_sim", "name": "pwm_out_sim", "type": "Module", "color": "#666666"}, {"id": "m_led_control", "name": "led_control", "type": "Module", "color": "#666666"}, {"id": "m_batt_smbus", "name": "batt_smbus", "type": "Module", "color": "#666666"}, {"id": "m_teraranger", "name": "teraranger", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_pwm", "name": "rgbled_pwm", "type": "Module", "color": "#666666"}, {"id": "m_tone_alarm", "name": "tone_alarm", "type": "Module", "color": "#666666"}, {"id": "m_send_event", "name": "send_event", "type": "Module", "color": "#666666"}, {"id": "m_board_adc", "name": "board_adc", "type": "Module", "color": "#666666"}, {"id": "m_ms5525dso", "name": "ms5525dso", "type": "Module", "color": "#666666"}, {"id": "m_adis16448", "name": "adis16448", "type": "Module", "color": "#666666"}, {"id": "m_icm42688p", "name": "icm42688p", "type": "Module", "color": "#666666"}, {"id": "m_lsm303agr", "name": "lsm303agr", "type": "Module", "color": "#666666"}, {"id": "m_mmc5983ma", "name": "mmc5983ma", "type": "Module", "color": "#666666"}, {"id": "m_thoneflow", "name": "thoneflow", "type": "Module", "color": "#666666"}, {"id": "m_pwm_input", "name": "pwm_input", "type": "Module", "color": "#666666"}, {"id": "m_commander", "name": "commander", "type": "Module", "color": "#666666"}, {"id": "m_navigator", "name": "navigator", "type": "Module", "color": "#666666"}, {"id": "m_rc_update", "name": "rc_update", "type": "Module", "color": "#666666"}, {"id": "m_icp101xx", "name": "icp101xx", "type": "Module", "color": "#666666"}, {"id": "m_icp201xx", "name": "icp201xx", "type": "Module", "color": "#666666"}, {"id": "m_ms4525do", "name": "ms4525do", "type": "Module", "color": "#666666"}, {"id": "m_icm20602", "name": "icm20602", "type": "Module", "color": "#666666"}, {"id": "m_icm20689", "name": "icm20689", "type": "Module", "color": "#666666"}, {"id": "m_icm20948", "name": "icm20948", "type": "Module", "color": "#666666"}, {"id": "m_qmc5883l", "name": "qmc5883l", "type": "Module", "color": "#666666"}, {"id": "m_vcm1193l", "name": "vcm1193l", "type": "Module", "color": "#666666"}, {"id": "m_rc_input", "name": "rc_input", "type": "Module", "color": "#666666"}, {"id": "m_load_mon", "name": "load_mon", "type": "Module", "color": "#666666"}, {"id": "m_ads1115", "name": "ads1115", "type": "Module", "color": "#666666"}, {"id": "m_lps22hb", "name": "lps22hb", "type": "Module", "color": "#666666"}, {"id": "m_lps33hw", "name": "lps33hw", "type": "Module", "color": "#666666"}, {"id": "m_mpc2520", "name": "mpc2520", "type": "Module", "color": "#666666"}, {"id": "m_cm8jl65", "name": "cm8jl65", "type": "Module", "color": "#666666"}, {"id": "m_tf02pro", "name": "tf02pro", "type": "Module", "color": "#666666"}, {"id": "m_vl53l0x", "name": "vl53l0x", "type": "Module", "color": "#666666"}, {"id": "m_vl53l1x", "name": "vl53l1x", "type": "Module", "color": "#666666"}, {"id": "m_ak09916", "name": "ak09916", "type": "Module", "color": "#666666"}, {"id": "m_hmc5883", "name": "hmc5883", "type": "Module", "color": "#666666"}, {"id": "m_ist8308", "name": "ist8308", "type": "Module", "color": "#666666"}, {"id": "m_ist8310", "name": "ist8310", "type": "Module", "color": "#666666"}, {"id": "m_lis3mdl", "name": "lis3mdl", "type": "Module", "color": "#666666"}, {"id": "m_iis2mdc", "name": "iis2mdc", "type": "Module", "color": "#666666"}, {"id": "m_paa3905", "name": "paa3905", "type": "Module", "color": "#666666"}, {"id": "m_paw3902", "name": "paw3902", "type": "Module", "color": "#666666"}, {"id": "m_pmw3901", "name": "pmw3901", "type": "Module", "color": "#666666"}, {"id": "m_px4flow", "name": "px4flow", "type": "Module", "color": "#666666"}, {"id": "m_msp_osd", "name": "msp_osd", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out", "name": "pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_crsf_rc", "name": "crsf_rc", "type": "Module", "color": "#666666"}, {"id": "m_ghst_rc", "name": "ghst_rc", "type": "Module", "color": "#666666"}, {"id": "m_sbus_rc", "name": "sbus_rc", "type": "Module", "color": "#666666"}, {"id": "m_dataman", "name": "dataman", "type": "Module", "color": "#666666"}, {"id": "m_mavlink", "name": "mavlink", "type": "Module", "color": "#666666"}, {"id": "m_sensors", "name": "sensors", "type": "Module", "color": "#666666"}, {"id": "m_bmp280", "name": "bmp280", "type": "Module", "color": "#666666"}, {"id": "m_bmp388", "name": "bmp388", "type": "Module", "color": "#666666"}, {"id": "m_bmp581", "name": "bmp581", "type": "Module", "color": "#666666"}, {"id": "m_dps310", "name": "dps310", "type": "Module", "color": "#666666"}, {"id": "m_ms5611", "name": "ms5611", "type": "Module", "color": "#666666"}, {"id": "m_ll40ls", "name": "ll40ls", "type": "Module", "color": "#666666"}, {"id": "m_tfmini", "name": "tfmini", "type": "Module", "color": "#666666"}, {"id": "m_heater", "name": "heater", "type": "Module", "color": "#666666"}, {"id": "m_bmi055", "name": "bmi055", "type": "Module", "color": "#666666"}, {"id": "m_irlock", "name": "irlock", "type": "Module", "color": "#666666"}, {"id": "m_rgbled", "name": "rgbled", "type": "Module", "color": "#666666"}, {"id": "m_ak8963", "name": "ak8963", "type": "Module", "color": "#666666"}, {"id": "m_bmm150", "name": "bmm150", "type": "Module", "color": "#666666"}, {"id": "m_rm3100", "name": "rm3100", "type": "Module", "color": "#666666"}, {"id": "m_atxxxx", "name": "atxxxx", "type": "Module", "color": "#666666"}, {"id": "m_ina226", "name": "ina226", "type": "Module", "color": "#666666"}, {"id": "m_dsm_rc", "name": "dsm_rc", "type": "Module", "color": "#666666"}, {"id": "m_batmon", "name": "batmon", "type": "Module", "color": "#666666"}, {"id": "m_uavcan", "name": "uavcan", "type": "Module", "color": "#666666"}, {"id": "m_gimbal", "name": "gimbal", "type": "Module", "color": "#666666"}, {"id": "m_logger", "name": "logger", "type": "Module", "color": "#666666"}, {"id": "m_spa06", "name": "spa06", "type": "Module", "color": "#666666"}, {"id": "m_spl06", "name": "spl06", "type": "Module", "color": "#666666"}, {"id": "m_sdp3x", "name": "sdp3x", "type": "Module", "color": "#666666"}, {"id": "m_dshot", "name": "dshot", "type": "Module", "color": "#666666"}, {"id": "m_sht3x", "name": "sht3x", "type": "Module", "color": "#666666"}, {"id": "m_px4io", "name": "px4io", "type": "Module", "color": "#666666"}, {"id": "m_ekf2", "name": "ekf2", "type": "Module", "color": "#666666"}, {"id": "m_gps", "name": "gps", "type": "Module", "color": "#666666"}, {"id": "m_bst", "name": "bst", "type": "Module", "color": "#666666"}, {"id": "t_vehicle_angular_velocity_groundtruth", "name": "vehicle_angular_velocity_groundtruth", "type": "topic", "color": "#4188d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position_groundtruth", "name": "vehicle_global_position_groundtruth", "type": "topic", "color": "#b5d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor_mode_change_request", "name": "distance_sensor_mode_change_request", "type": "topic", "color": "#8641d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_landing_status", "name": "position_controller_landing_status", "type": "topic", "color": "#d8ac41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_groundtruth", "name": "vehicle_local_position_groundtruth", "type": "topic", "color": "#d84176", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_manual_control", "name": "gimbal_manager_set_manual_control", "type": "topic", "color": "#41d87b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_autotune_attitude_control_status", "name": "autotune_attitude_control_status", "type": "topic", "color": "#4181d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_setpoint", "name": "vehicle_local_position_setpoint", "type": "topic", "color": "#41d895", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_attitude_status", "name": "gimbal_device_attitude_status", "type": "topic", "color": "#4174d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fw_virtual_attitude_setpoint", "name": "fw_virtual_attitude_setpoint", "type": "topic", "color": "#aed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mc_virtual_attitude_setpoint", "name": "mc_virtual_attitude_setpoint", "type": "topic", "color": "#41bdd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_groundtruth", "name": "vehicle_attitude_groundtruth", "type": "topic", "color": "#a741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_register_ext_component_reply", "name": "register_ext_component_reply", "type": "topic", "color": "#d841ac", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_attitude", "name": "gimbal_manager_set_attitude", "type": "topic", "color": "#419cd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_set_attitude", "name": "gimbal_device_set_attitude", "type": "topic", "color": "#d8c641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_controls_status_0", "name": "actuator_controls_status_0", "type": "topic", "color": "#cfd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorControlsStatus.msg"}, {"id": "t_position_controller_status", "name": "position_controller_status", "type": "topic", "color": "#41c4d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_information", "name": "gimbal_manager_information", "type": "topic", "color": "#5741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_information", "name": "gimbal_device_information", "type": "topic", "color": "#d8a541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_setpoint", "name": "vehicle_attitude_setpoint", "type": "topic", "color": "#57d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_setpoint_triplet", "name": "position_setpoint_triplet", "type": "topic", "color": "#41d881", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_selector_status", "name": "estimator_selector_status", "type": "topic", "color": "#7f41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_operator_id", "name": "open_drone_id_operator_id", "type": "topic", "color": "#d841b9", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_control_allocator_status", "name": "control_allocator_status", "type": "topic", "color": "#41d8b7", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tiltrotor_extra_controls", "name": "tiltrotor_extra_controls", "type": "topic", "color": "#41a3d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_arm_status", "name": "open_drone_id_arm_status", "type": "topic", "color": "#8c41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_request", "name": "uavcan_parameter_request", "type": "topic", "color": "#d8415b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_setpoint", "name": "manual_control_setpoint", "type": "topic", "color": "#d84141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_launch_detection_status", "name": "launch_detection_status", "type": "topic", "color": "#d84741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failure_detector_status", "name": "failure_detector_status", "type": "topic", "color": "#d84e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_switches", "name": "manual_control_switches", "type": "topic", "color": "#d8d441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_visual_odometry", "name": "vehicle_visual_odometry", "type": "topic", "color": "#41d852", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_thrust_setpoint", "name": "vehicle_thrust_setpoint", "type": "topic", "color": "#414cd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleThrustSetpoint.msg"}, {"id": "t_vehicle_torque_setpoint", "name": "vehicle_torque_setpoint", "type": "topic", "color": "#5041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleTorqueSetpoint.msg"}, {"id": "t_vehicle_global_position", "name": "vehicle_global_position", "type": "topic", "color": "#9341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flight_phase_estimation", "name": "flight_phase_estimation", "type": "topic", "color": "#d84191", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_value", "name": "uavcan_parameter_value", "type": "topic", "color": "#d88341", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status_flags", "name": "estimator_status_flags", "type": "topic", "color": "#d89e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_rates_setpoint", "name": "vehicle_rates_setpoint", "type": "topic", "color": "#41d88f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_mocap_odometry", "name": "vehicle_mocap_odometry", "type": "topic", "color": "#4152d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position", "name": "vehicle_local_position", "type": "topic", "color": "#d84162", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_sensor_bias", "name": "estimator_sensor_bias", "type": "topic", "color": "#d8b241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_offboard_control_mode", "name": "offboard_control_mode", "type": "topic", "color": "#7fd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_land_detected", "name": "vehicle_land_detected", "type": "topic", "color": "#41d859", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_differential_pressure", "name": "differential_pressure", "type": "topic", "color": "#4160d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_status", "name": "gimbal_manager_status", "type": "topic", "color": "#ae41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_self_id", "name": "open_drone_id_self_id", "type": "topic", "color": "#c241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_control_mode", "name": "vehicle_control_mode", "type": "topic", "color": "#bbd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs_sim", "name": "actuator_outputs_sim", "type": "topic", "color": "#41d86d", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_actuator_servos_trim", "name": "actuator_servos_trim", "type": "topic", "color": "#41d2d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_system", "name": "open_drone_id_system", "type": "topic", "color": "#6b41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_optical_flow", "name": "sensor_optical_flow", "type": "topic", "color": "#d86241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command_ack", "name": "vehicle_command_ack", "type": "topic", "color": "#41d888", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vtol_vehicle_status", "name": "vtol_vehicle_status", "type": "topic", "color": "#41d8d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_target_pose", "name": "landing_target_pose", "type": "topic", "color": "#41b0d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_constraints", "name": "vehicle_constraints", "type": "topic", "color": "#4159d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_figure_eight_status", "name": "figure_eight_status", "type": "topic", "color": "#d841cd", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_trajectory_setpoint", "name": "trajectory_setpoint", "type": "topic", "color": "#d8417d", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensors_status_imu", "name": "sensors_status_imu", "type": "topic", "color": "#d8cd41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu_status", "name": "vehicle_imu_status", "type": "topic", "color": "#93d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_transponder_report", "name": "transponder_report", "type": "topic", "color": "#49d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear_wheel", "name": "landing_gear_wheel", "type": "topic", "color": "#41b7d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed_validated", "name": "airspeed_validated", "type": "topic", "color": "#b541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_power_button_state", "name": "power_button_state", "type": "topic", "color": "#d8418a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_hygrometer", "name": "sensor_hygrometer", "type": "topic", "color": "#d87d41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mount_orientation", "name": "mount_orientation", "type": "topic", "color": "#5ed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_v1_command", "name": "gimbal_v1_command", "type": "topic", "color": "#41d89c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_correction", "name": "sensor_correction", "type": "topic", "color": "#41d8b0", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_spoilers_setpoint", "name": "spoilers_setpoint", "type": "topic", "color": "#41d8cb", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_rtl_time_estimate", "name": "rtl_time_estimate", "type": "topic", "color": "#4195d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status", "name": "estimator_status", "type": "topic", "color": "#41d84c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_telemetry_status", "name": "telemetry_status", "type": "topic", "color": "#41d860", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_selection", "name": "sensor_selection", "type": "topic", "color": "#41d866", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rc_parameter_map", "name": "rc_parameter_map", "type": "topic", "color": "#41d8d2", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude", "name": "vehicle_attitude", "type": "topic", "color": "#41cbd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_navigator_status", "name": "navigator_status", "type": "topic", "color": "#d841d4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_odometry", "name": "vehicle_odometry", "type": "topic", "color": "#d8419e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_response", "name": "dataman_response", "type": "topic", "color": "#d84198", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs", "name": "actuator_outputs", "type": "topic", "color": "#d84147", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_distance_sensor", "name": "distance_sensor", "type": "topic", "color": "#d89141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream_ack", "name": "ulog_stream_ack", "type": "topic", "color": "#d8b941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_status", "name": "geofence_status", "type": "topic", "color": "#d6d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_key_value", "name": "debug_key_value", "type": "topic", "color": "#a0d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_controls", "name": "gimbal_controls", "type": "topic", "color": "#86d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_request", "name": "dataman_request", "type": "topic", "color": "#41d8a9", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_motors", "name": "actuator_motors", "type": "topic", "color": "#9a41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_result", "name": "geofence_result", "type": "topic", "color": "#c941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command", "name": "vehicle_command", "type": "topic", "color": "#d641d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_combined", "name": "sensor_combined", "type": "topic", "color": "#d841c0", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gps_inject_data", "name": "gps_inject_data", "type": "topic", "color": "#d841b2", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_armed", "name": "actuator_armed", "type": "topic", "color": "#d85b41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_status", "name": "vehicle_status", "type": "topic", "color": "#d86941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failsafe_flags", "name": "failsafe_flags", "type": "topic", "color": "#d88a41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_takeoff_status", "name": "takeoff_status", "type": "topic", "color": "#a7d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_action_request", "name": "action_request", "type": "topic", "color": "#64d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission_result", "name": "mission_result", "type": "topic", "color": "#41d8a3", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flaps_setpoint", "name": "flaps_setpoint", "type": "topic", "color": "#4166d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_satellite_info", "name": "satellite_info", "type": "topic", "color": "#5e41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_battery_status", "name": "battery_status", "type": "topic", "color": "#6441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_capture", "name": "camera_capture", "type": "topic", "color": "#a041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_trigger", "name": "camera_trigger", "type": "topic", "color": "#d84169", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_test", "name": "actuator_test", "type": "topic", "color": "#d85541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_health_report", "name": "health_report", "type": "topic", "color": "#d89841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_safety_button", "name": "safety_button", "type": "topic", "color": "#72d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_home_position", "name": "home_position", "type": "topic", "color": "#6bd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_status", "name": "camera_status", "type": "topic", "color": "#41a9d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_logger_status", "name": "logger_status", "type": "topic", "color": "#417bd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_irlock_report", "name": "irlock_report", "type": "topic", "color": "#4341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tune_control", "name": "tune_control", "type": "topic", "color": "#9ad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_px4io_status", "name": "px4io_status", "type": "topic", "color": "#78d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_accel", "name": "sensor_accel", "type": "topic", "color": "#418fd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_orbit_status", "name": "orbit_status", "type": "topic", "color": "#bb41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear", "name": "landing_gear", "type": "topic", "color": "#d8416f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_system_power", "name": "system_power", "type": "topic", "color": "#d8414e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_baro", "name": "sensor_baro", "type": "topic", "color": "#d86f41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_array", "name": "debug_array", "type": "topic", "color": "#d87641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream", "name": "ulog_stream", "type": "topic", "color": "#c2d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro", "name": "sensor_gyro", "type": "topic", "color": "#8cd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_value", "name": "debug_value", "type": "topic", "color": "#50d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tecs_status", "name": "tecs_status", "type": "topic", "color": "#41d8bd", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_roi", "name": "vehicle_roi", "type": "topic", "color": "#cf41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_led_control", "name": "led_control", "type": "topic", "color": "#d84183", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu", "name": "vehicle_imu", "type": "topic", "color": "#d84155", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_vect", "name": "debug_vect", "type": "topic", "color": "#d8c041", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_adc_report", "name": "adc_report", "type": "topic", "color": "#c9d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_status", "name": "rtl_status", "type": "topic", "color": "#416dd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gps", "name": "sensor_gps", "type": "topic", "color": "#4145d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/SensorGps.msg"}, {"id": "t_esc_status", "name": "esc_status", "type": "topic", "color": "#4941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_mag", "name": "sensor_mag", "type": "topic", "color": "#d841c6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_pwm_input", "name": "pwm_input", "type": "topic", "color": "#41d845", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_input_rc", "name": "input_rc", "type": "topic", "color": "#43d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed", "name": "airspeed", "type": "topic", "color": "#7841d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource1d.msg"}, {"id": "t_cpuload", "name": "cpuload", "type": "topic", "color": "#41d874", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission", "name": "mission", "type": "topic", "color": "#d841a5", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_event", "name": "event", "type": "topic", "color": "#7241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_wind", "name": "wind", "type": "topic", "color": "#41d8c4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/Wind.msg"}], "links": [{"source": "m_ads1115", "target": "t_adc_report", "color": "#c9d841", "style": "dashed"}, {"source": "m_board_adc", "target": "t_system_power", "color": "#d8414e", "style": "dashed"}, {"source": "m_board_adc", "target": "t_adc_report", "color": "#c9d841", "style": "dashed"}, {"source": "m_bmp280", "target": "t_sensor_baro", "color": "#d86f41", "style": "dashed"}, {"source": "m_bmp388", "target": "t_sensor_baro", "color": "#d86f41", "style": "dashed"}, {"source": "m_bmp581", "target": "t_sensor_baro", "color": "#d86f41", "style": "dashed"}, {"source": "m_dps310", "target": "t_sensor_baro", "color": "#d86f41", "style": "dashed"}, {"source": "m_spa06", "target": "t_sensor_baro", "color": "#d86f41", "style": "dashed"}, {"source": "m_spl06", "target": "t_sensor_baro", "color": "#d86f41", "style": "dashed"}, {"source": "m_icp101xx", "target": "t_sensor_baro", "color": "#d86f41", "style": "dashed"}, {"source": "m_icp201xx", "target": "t_sensor_baro", "color": "#d86f41", "style": "dashed"}, {"source": "m_lps22hb", "target": "t_sensor_baro", "color": "#d86f41", "style": "dashed"}, {"source": "m_lps33hw", "target": "t_sensor_baro", "color": "#d86f41", "style": "dashed"}, {"source": "m_mpc2520", "target": "t_sensor_baro", "color": "#d86f41", "style": "dashed"}, {"source": "m_ms5611", "target": "t_sensor_baro", "color": "#d86f41", "style": "dashed"}, {"source": "m_batt_smbus", "target": "t_battery_status", "color": "#6441d8", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_camera_trigger", "color": "#d84169", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_vehicle_command_ack", "color": "#41d888", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_camera_trigger", "color": "#d84169", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command", "color": "#d641d8", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command_ack", "color": "#41d888", "style": "dashed"}, {"source": "m_ms4525do", "target": "t_differential_pressure", "color": "#4160d8", "style": "dashed"}, {"source": "m_ms5525dso", "target": "t_differential_pressure", "color": "#4160d8", "style": "dashed"}, {"source": "m_sdp3x", "target": "t_differential_pressure", "color": "#4160d8", "style": "dashed"}, {"source": "m_cm8jl65", "target": "t_distance_sensor", "color": "#d89141", "style": "dashed"}, {"source": "m_lightware_laser_i2c", "target": "t_distance_sensor", "color": "#d89141", "style": "dashed"}, {"source": "m_lightware_laser_serial", "target": "t_distance_sensor", "color": "#d89141", "style": "dashed"}, {"source": "m_ll40ls", "target": "t_distance_sensor", "color": "#d89141", "style": "dashed"}, {"source": "m_teraranger", "target": "t_distance_sensor", "color": "#d89141", "style": "dashed"}, {"source": "m_tf02pro", "target": "t_distance_sensor", "color": "#d89141", "style": "dashed"}, {"source": "m_tfmini", "target": "t_distance_sensor", "color": "#d89141", "style": "dashed"}, {"source": "m_ulanding_radar", "target": "t_distance_sensor", "color": "#d89141", "style": "dashed"}, {"source": "m_vl53l0x", "target": "t_distance_sensor", "color": "#d89141", "style": "dashed"}, {"source": "m_vl53l1x", "target": "t_distance_sensor", "color": "#d89141", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_test", "color": "#d85541", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_armed", "color": "#d85b41", "style": "dashed"}, {"source": "m_dshot", "target": "t_esc_status", "color": "#4941d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_outputs", "color": "#d84147", "style": "dashed"}, {"source": "m_dshot", "target": "t_vehicle_command_ack", "color": "#41d888", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_motors", "color": "#9a41d8", "style": "dashed"}, {"source": "m_gps", "target": "t_sensor_gps", "color": "#4145d8", "style": "dashed"}, {"source": "m_gps", "target": "t_satellite_info", "color": "#5e41d8", "style": "dashed"}, {"source": "m_gps", "target": "t_gps_inject_data", "color": "#d841b2", "style": "dashed"}, {"source": "m_sht3x", "target": "t_sensor_hygrometer", "color": "#d87d41", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_baro", "color": "#d86f41", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_mag", "color": "#d841c6", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_accel", "color": "#418fd8", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_gyro", "color": "#8cd841", "style": "dashed"}, {"source": "m_bmi055", "target": "t_sensor_gyro", "color": "#8cd841", "style": "dashed"}, {"source": "m_bmi055", "target": "t_sensor_accel", "color": "#418fd8", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_gyro", "color": "#8cd841", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_accel", "color": "#418fd8", "style": "dashed"}, {"source": "m_icm20689", "target": "t_sensor_gyro", "color": "#8cd841", "style": "dashed"}, {"source": "m_icm20689", "target": "t_sensor_accel", "color": "#418fd8", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_mag", "color": "#d841c6", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_accel", "color": "#418fd8", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_gyro", "color": "#8cd841", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_gyro", "color": "#8cd841", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_accel", "color": "#418fd8", "style": "dashed"}, {"source": "m_irlock", "target": "t_irlock_report", "color": "#4341d8", "style": "dashed"}, {"source": "m_ak09916", "target": "t_sensor_mag", "color": "#d841c6", "style": "dashed"}, {"source": "m_ak8963", "target": "t_sensor_mag", "color": "#d841c6", "style": "dashed"}, {"source": "m_bmm150", "target": "t_sensor_mag", "color": "#d841c6", "style": "dashed"}, {"source": "m_hmc5883", "target": "t_sensor_mag", "color": "#d841c6", "style": "dashed"}, {"source": "m_ist8308", "target": "t_sensor_mag", "color": "#d841c6", "style": "dashed"}, {"source": "m_ist8310", "target": "t_sensor_mag", "color": "#d841c6", "style": "dashed"}, {"source": "m_lis3mdl", "target": "t_sensor_mag", "color": "#d841c6", "style": "dashed"}, {"source": "m_lsm303agr", "target": "t_sensor_mag", "color": "#d841c6", "style": "dashed"}, {"source": "m_mmc5983ma", "target": "t_sensor_mag", "color": "#d841c6", "style": "dashed"}, {"source": "m_qmc5883l", "target": "t_sensor_mag", "color": "#d841c6", "style": "dashed"}, {"source": "m_rm3100", "target": "t_sensor_mag", "color": "#d841c6", "style": "dashed"}, {"source": "m_iis2mdc", "target": "t_sensor_mag", "color": "#d841c6", "style": "dashed"}, {"source": "m_vcm1193l", "target": "t_sensor_mag", "color": "#d841c6", "style": "dashed"}, {"source": "m_paa3905", "target": "t_sensor_optical_flow", "color": "#d86241", "style": "dashed"}, {"source": "m_paw3902", "target": "t_sensor_optical_flow", "color": "#d86241", "style": "dashed"}, {"source": "m_pmw3901", "target": "t_sensor_optical_flow", "color": "#d86241", "style": "dashed"}, {"source": "m_px4flow", "target": "t_sensor_optical_flow", "color": "#d86241", "style": "dashed"}, {"source": "m_thoneflow", "target": "t_sensor_optical_flow", "color": "#d86241", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_test", "color": "#d85541", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_armed", "color": "#d85b41", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_outputs", "color": "#d84147", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_motors", "color": "#9a41d8", "style": "dashed"}, {"source": "m_ina226", "target": "t_battery_status", "color": "#6441d8", "style": "dashed"}, {"source": "m_pwm_input", "target": "t_pwm_input", "color": "#41d845", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_test", "color": "#d85541", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_armed", "color": "#d85b41", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_outputs", "color": "#d84147", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_motors", "color": "#9a41d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_input_rc", "color": "#43d841", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_test", "color": "#d85541", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_armed", "color": "#d85b41", "style": "dashed"}, {"source": "m_px4io", "target": "t_tune_control", "color": "#9ad841", "style": "dashed"}, {"source": "m_px4io", "target": "t_safety_button", "color": "#72d841", "style": "dashed"}, {"source": "m_px4io", "target": "t_led_control", "color": "#d84183", "style": "dashed"}, {"source": "m_px4io", "target": "t_px4io_status", "color": "#78d841", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command", "color": "#d641d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_outputs", "color": "#d84147", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command_ack", "color": "#41d888", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_motors", "color": "#9a41d8", "style": "dashed"}, {"source": "m_crsf_rc", "target": "t_input_rc", "color": "#43d841", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_vehicle_command", "color": "#d641d8", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_vehicle_command_ack", "color": "#41d888", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_input_rc", "color": "#43d841", "style": "dashed"}, {"source": "m_ghst_rc", "target": "t_input_rc", "color": "#43d841", "style": "dashed"}, {"source": "m_sbus_rc", "target": "t_input_rc", "color": "#43d841", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command", "color": "#d641d8", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command_ack", "color": "#41d888", "style": "dashed"}, {"source": "m_rc_input", "target": "t_input_rc", "color": "#43d841", "style": "dashed"}, {"source": "m_safety_button", "target": "t_led_control", "color": "#d84183", "style": "dashed"}, {"source": "m_safety_button", "target": "t_vehicle_command", "color": "#d641d8", "style": "dashed"}, {"source": "m_safety_button", "target": "t_tune_control", "color": "#9ad841", "style": "dashed"}, {"source": "m_safety_button", "target": "t_safety_button", "color": "#72d841", "style": "dashed"}, {"source": "m_batmon", "target": "t_battery_status", "color": "#6441d8", "style": "dashed"}, {"source": "m_hott_telemetry", "target": "t_esc_status", "color": "#4941d8", "style": "dashed"}, {"source": "m_tone_alarm", "target": "t_tune_control", "color": "#9ad841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_uavcan_parameter_value", "color": "#d88341", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_test", "color": "#d85541", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_armed", "color": "#d85b41", "style": "dashed"}, {"source": "m_uavcan", "target": "t_distance_sensor", "color": "#d89141", "style": "dashed"}, {"source": "m_uavcan", "target": "t_tune_control", "color": "#9ad841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_open_drone_id_arm_status", "color": "#8c41d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_esc_status", "color": "#4941d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_safety_button", "color": "#72d841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_led_control", "color": "#d84183", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command", "color": "#d641d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_outputs", "color": "#d84147", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command_ack", "color": "#41d888", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_motors", "color": "#9a41d8", "style": "dashed"}, {"source": "m_airspeed_selector", "target": "t_airspeed_validated", "color": "#b541d8", "style": "dashed"}, {"source": "m_attitude_estimator_q", "target": "t_vehicle_attitude", "color": "#41cbd8", "style": "dashed"}, {"source": "m_battery_status", "target": "t_battery_status", "color": "#6441d8", "style": "dashed"}, {"source": "m_camera_feedback", "target": "t_camera_capture", "color": "#a041d8", "style": "dashed"}, {"source": "m_commander", "target": "t_failure_detector_status", "color": "#d84e41", "style": "dashed"}, {"source": "m_commander", "target": "t_event", "color": "#7241d8", "style": "dashed"}, {"source": "m_commander", "target": "t_failsafe_flags", "color": "#d88a41", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_test", "color": "#d85541", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_armed", "color": "#d85b41", "style": "dashed"}, {"source": "m_commander", "target": "t_tune_control", "color": "#9ad841", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_control_mode", "color": "#bbd841", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_status", "color": "#d86941", "style": "dashed"}, {"source": "m_commander", "target": "t_health_report", "color": "#d89841", "style": "dashed"}, {"source": "m_commander", "target": "t_power_button_state", "color": "#d8418a", "style": "dashed"}, {"source": "m_commander", "target": "t_led_control", "color": "#d84183", "style": "dashed"}, {"source": "m_commander", "target": "t_register_ext_component_reply", "color": "#d841ac", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command", "color": "#d641d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command_ack", "color": "#41d888", "style": "dashed"}, {"source": "m_commander", "target": "t_home_position", "color": "#6bd841", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos_trim", "color": "#41d2d8", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_control_allocator_status", "color": "#41d8b7", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_motors", "color": "#9a41d8", "style": "dashed"}, {"source": "m_dataman", "target": "t_dataman_response", "color": "#d84198", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status", "color": "#41d84c", "style": "dashed"}, {"source": "m_ekf2", "target": "t_sensor_selection", "color": "#41d866", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status_flags", "color": "#d89e41", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_sensor_bias", "color": "#d8b241", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_command_ack", "color": "#41d888", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_odometry", "color": "#d8419e", "style": "dashed"}, {"source": "m_ekf2", "target": "t_wind", "color": "#41d8c4", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_selector_status", "color": "#7f41d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_local_position", "color": "#d84162", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_attitude", "color": "#41cbd8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_global_position", "color": "#9341d8", "style": "dashed"}, {"source": "m_esc_battery", "target": "t_battery_status", "color": "#6441d8", "style": "dashed"}, {"source": "m_send_event", "target": "t_led_control", "color": "#d84183", "style": "dashed"}, {"source": "m_send_event", "target": "t_tune_control", "color": "#9ad841", "style": "dashed"}, {"source": "m_send_event", "target": "t_vehicle_command_ack", "color": "#41d888", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_vehicle_constraints", "color": "#4159d8", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_trajectory_setpoint", "color": "#d8417d", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_landing_gear", "color": "#d8416f", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_vehicle_rates_setpoint", "color": "#41d88f", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_landing_gear_wheel", "color": "#41b7d8", "style": "dashed"}, {"source": "m_fw_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#4181d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#41d895", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_spoilers_setpoint", "color": "#41d8cb", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_launch_detection_status", "color": "#d84741", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_orbit_status", "color": "#bb41d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_landing_gear", "color": "#d8416f", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_figure_eight_status", "color": "#d841cd", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_flight_phase_estimation", "color": "#d84191", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_position_controller_landing_status", "color": "#d8ac41", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_position_controller_status", "color": "#41c4d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_tecs_status", "color": "#41d8bd", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_flaps_setpoint", "color": "#4166d8", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#41d88f", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_spoilers_setpoint", "color": "#41d8cb", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_flaps_setpoint", "color": "#4166d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_mount_orientation", "color": "#5ed841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_v1_command", "color": "#41d89c", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_status", "color": "#ae41d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_set_attitude", "color": "#d8c641", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_controls", "color": "#86d841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_information", "color": "#5741d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_attitude_status", "color": "#4174d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command", "color": "#d641d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command_ack", "color": "#41d888", "style": "dashed"}, {"source": "m_land_detector", "target": "t_vehicle_land_detected", "color": "#41d859", "style": "dashed"}, {"source": "m_landing_target_estimator", "target": "t_landing_target_pose", "color": "#41b0d8", "style": "dashed"}, {"source": "m_load_mon", "target": "t_cpuload", "color": "#41d874", "style": "dashed"}, {"source": "m_logger", "target": "t_logger_status", "color": "#417bd8", "style": "dashed"}, {"source": "m_logger", "target": "t_vehicle_command_ack", "color": "#41d888", "style": "dashed"}, {"source": "m_logger", "target": "t_ulog_stream", "color": "#c2d841", "style": "dashed"}, {"source": "m_manual_control", "target": "t_action_request", "color": "#64d841", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_switches", "color": "#d8d441", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_setpoint", "color": "#d84141", "style": "dashed"}, {"source": "m_manual_control", "target": "t_landing_gear", "color": "#d8416f", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_command", "color": "#d641d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_status", "color": "#d86941", "style": "dashed"}, {"source": "m_mavlink", "target": "t_landing_target_pose", "color": "#41b0d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude_setpoint", "color": "#57d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_value", "color": "#50d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_input_rc", "color": "#43d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_transponder_report", "color": "#49d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_self_id", "color": "#c241d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_camera_status", "color": "#41a9d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_optical_flow", "color": "#d86241", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_attitude", "color": "#419cd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_visual_odometry", "color": "#41d852", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command", "color": "#d641d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_baro", "color": "#d86f41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_telemetry_status", "color": "#41d860", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_array", "color": "#d87641", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_mag", "color": "#d841c6", "style": "dashed"}, {"source": "m_mavlink", "target": "t_distance_sensor", "color": "#d89141", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_accel", "color": "#418fd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_information", "color": "#d8a541", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_operator_id", "color": "#d841b9", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_attitude_status", "color": "#4174d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_manual_control", "color": "#41d87b", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_vect", "color": "#d8c041", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gps_inject_data", "color": "#d841b2", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command_ack", "color": "#41d888", "style": "dashed"}, {"source": "m_mavlink", "target": "t_ulog_stream_ack", "color": "#d8b941", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_rates_setpoint", "color": "#41d88f", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mission", "color": "#d841a5", "style": "dashed"}, {"source": "m_mavlink", "target": "t_differential_pressure", "color": "#4160d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_mocap_odometry", "color": "#4152d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_irlock_report", "color": "#4341d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gps", "color": "#4145d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_dataman_request", "color": "#41d8a9", "style": "dashed"}, {"source": "m_mavlink", "target": "t_fw_virtual_attitude_setpoint", "color": "#aed841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_trajectory_setpoint", "color": "#d8417d", "style": "dashed"}, {"source": "m_mavlink", "target": "t_battery_status", "color": "#6441d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_system", "color": "#6b41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_rc_parameter_map", "color": "#41d8d2", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_key_value", "color": "#a0d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_event", "color": "#7241d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_airspeed", "color": "#7841d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_local_position", "color": "#d84162", "style": "dashed"}, {"source": "m_mavlink", "target": "t_tune_control", "color": "#9ad841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude", "color": "#41cbd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_uavcan_parameter_request", "color": "#d8415b", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gyro", "color": "#8cd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_offboard_control_mode", "color": "#7fd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_global_position", "color": "#9341d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mc_virtual_attitude_setpoint", "color": "#41bdd8", "style": "dashed"}, {"source": "m_mc_att_control", "target": "t_vehicle_rates_setpoint", "color": "#41d88f", "style": "dashed"}, {"source": "m_mc_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#4181d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#41d895", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#57d841", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_takeoff_status", "color": "#a7d841", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_constraints", "color": "#4159d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_trajectory_setpoint", "color": "#d8417d", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_actuator_controls_status_0", "color": "#cfd841", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#41d88f", "style": "dashed"}, {"source": "m_navigator", "target": "t_transponder_report", "color": "#49d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_result", "color": "#c941d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_roi", "color": "#cf41d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command", "color": "#d641d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_status", "color": "#d86941", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_time_estimate", "color": "#4195d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_land_detected", "color": "#41d859", "style": "dashed"}, {"source": "m_navigator", "target": "t_navigator_status", "color": "#d841d4", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_status", "color": "#416dd8", "style": "dashed"}, {"source": "m_navigator", "target": "t_position_setpoint_triplet", "color": "#41d881", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command_ack", "color": "#41d888", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission", "color": "#d841a5", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_status", "color": "#d6d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission_result", "color": "#41d8a3", "style": "dashed"}, {"source": "m_navigator", "target": "t_dataman_request", "color": "#41d8a9", "style": "dashed"}, {"source": "m_navigator", "target": "t_distance_sensor_mode_change_request", "color": "#8641d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_global_position", "color": "#9341d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_home_position", "color": "#6bd841", "style": "dashed"}, {"source": "m_rc_update", "target": "t_manual_control_switches", "color": "#d8d441", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_thrust_setpoint", "color": "#414cd8", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#57d841", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_position_controller_status", "color": "#41c4d8", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_torque_setpoint", "color": "#5041d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensors_status_imu", "color": "#d8cd41", "style": "dashed"}, {"source": "m_sensors", "target": "t_differential_pressure", "color": "#4160d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_airspeed", "color": "#7841d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_selection", "color": "#41d866", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_combined", "color": "#d841c0", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu_status", "color": "#93d841", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu", "color": "#d84155", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_test", "color": "#d85541", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_armed", "color": "#d85b41", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs_sim", "color": "#41d86d", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs", "color": "#d84147", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_motors", "color": "#9a41d8", "style": "dashed"}, {"source": "m_sensor_baro_sim", "target": "t_sensor_baro", "color": "#d86f41", "style": "dashed"}, {"source": "m_sensor_gps_sim", "target": "t_sensor_gps", "color": "#4145d8", "style": "dashed"}, {"source": "m_sensor_mag_sim", "target": "t_sensor_mag", "color": "#d841c6", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_attitude_groundtruth", "color": "#a741d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_airspeed", "color": "#7841d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_distance_sensor", "color": "#d89141", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_angular_velocity_groundtruth", "color": "#4188d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_global_position_groundtruth", "color": "#b5d841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_accel", "color": "#418fd8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_gyro", "color": "#8cd841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_local_position_groundtruth", "color": "#d84176", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command", "color": "#d641d8", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_led_control", "color": "#d84183", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command_ack", "color": "#41d888", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_sensor_correction", "color": "#41d8b0", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_torque_setpoint", "color": "#5041d8", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#414cd8", "style": "dashed"}, {"source": "m_uuv_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#57d841", "style": "dashed"}, {"source": "m_uxrce_dds_client", "target": "t_vehicle_command", "color": "#d641d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_attitude_setpoint", "color": "#57d841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_spoilers_setpoint", "color": "#41d8cb", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vtol_vehicle_status", "color": "#41d8d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#414cd8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_torque_setpoint", "color": "#5041d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_tiltrotor_extra_controls", "color": "#41a3d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_flaps_setpoint", "color": "#4166d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_command_ack", "color": "#41d888", "style": "dashed"}, {"source": "m_actuator_test", "target": "t_actuator_test", "color": "#d85541", "style": "dashed"}, {"source": "m_led_control", "target": "t_led_control", "color": "#d84183", "style": "dashed"}, {"source": "m_tune_control", "target": "t_tune_control", "color": "#9ad841", "style": "dashed"}, {"source": "t_adc_report", "target": "m_board_adc", "color": "#c9d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_capture", "color": "#d641d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_camera_trigger", "color": "#d84162", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_trigger", "color": "#d641d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_cdcacm_autostart", "color": "#d85b41", "style": "normal"}, {"source": "t_distance_sensor_mode_change_request", "target": "m_lightware_laser_i2c", "color": "#8641d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_lightware_laser_i2c", "color": "#d86941", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_dshot", "color": "#41b7d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_dshot", "color": "#d84141", "style": "normal"}, {"source": "t_landing_gear", "target": "m_dshot", "color": "#d8416f", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_dshot", "color": "#41d2d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_dshot", "color": "#d85541", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_dshot", "color": "#d85b41", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_dshot", "color": "#86d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dshot", "color": "#d641d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_dshot", "color": "#9a41d8", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_gps", "color": "#d841b2", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_heater", "color": "#418fd8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled", "color": "#d84183", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_is31fl3195", "color": "#d84183", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_lp5562", "color": "#d84183", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_ncp5623c", "color": "#d84183", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_pwm", "color": "#d84183", "style": "normal"}, {"source": "t_battery_status", "target": "m_atxxxx", "color": "#6441d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_atxxxx", "color": "#d84162", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_atxxxx", "color": "#d86941", "style": "normal"}, {"source": "t_battery_status", "target": "m_msp_osd", "color": "#6441d8", "style": "normal"}, {"source": "t_input_rc", "target": "m_msp_osd", "color": "#43d841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_msp_osd", "color": "#b541d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_msp_osd", "color": "#d84162", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_msp_osd", "color": "#d86941", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_msp_osd", "color": "#41cbd8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_msp_osd", "color": "#9341d8", "style": "normal"}, {"source": "t_home_position", "target": "m_msp_osd", "color": "#6bd841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pca9685_pwm_out", "color": "#41b7d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pca9685_pwm_out", "color": "#d84141", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pca9685_pwm_out", "color": "#d8416f", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pca9685_pwm_out", "color": "#41d2d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pca9685_pwm_out", "color": "#d85541", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pca9685_pwm_out", "color": "#d85b41", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pca9685_pwm_out", "color": "#86d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pca9685_pwm_out", "color": "#d641d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pca9685_pwm_out", "color": "#9a41d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina226", "color": "#d84191", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina226", "color": "#d86941", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out", "color": "#41b7d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out", "color": "#d84141", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out", "color": "#d8416f", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out", "color": "#41d2d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out", "color": "#d85541", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out", "color": "#d85b41", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out", "color": "#86d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out", "color": "#d641d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out", "color": "#9a41d8", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_px4io", "color": "#41b7d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_px4io", "color": "#d84141", "style": "normal"}, {"source": "t_landing_gear", "target": "m_px4io", "color": "#d8416f", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_px4io", "color": "#41d2d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_px4io", "color": "#d85541", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_px4io", "color": "#d85b41", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_px4io", "color": "#86d841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_px4io", "color": "#9a41d8", "style": "normal"}, {"source": "t_px4io_status", "target": "m_px4io", "color": "#78d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_px4io", "color": "#d641d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_px4io", "color": "#d86941", "style": "normal"}, {"source": "t_battery_status", "target": "m_crsf_rc", "color": "#6441d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_crsf_rc", "color": "#d86941", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_crsf_rc", "color": "#41cbd8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dsm_rc", "color": "#d641d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_dsm_rc", "color": "#d86941", "style": "normal"}, {"source": "t_battery_status", "target": "m_ghst_rc", "color": "#6441d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_rc_input", "color": "#6441d8", "style": "normal"}, {"source": "t_adc_report", "target": "m_rc_input", "color": "#c9d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rc_input", "color": "#41cbd8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_rc_input", "color": "#d641d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_rc_input", "color": "#d86941", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_safety_button", "color": "#d85b41", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_bst", "color": "#41cbd8", "style": "normal"}, {"source": "t_battery_status", "target": "m_bst", "color": "#6441d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_frsky_telemetry", "color": "#6441d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_frsky_telemetry", "color": "#d84162", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_frsky_telemetry", "color": "#9341d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_frsky_telemetry", "color": "#d86941", "style": "normal"}, {"source": "t_battery_status", "target": "m_hott_telemetry", "color": "#6441d8", "style": "normal"}, {"source": "t_airspeed", "target": "m_hott_telemetry", "color": "#7841d8", "style": "normal"}, {"source": "t_esc_status", "target": "m_hott_telemetry", "color": "#4941d8", "style": "normal"}, {"source": "t_home_position", "target": "m_hott_telemetry", "color": "#6bd841", "style": "normal"}, {"source": "t_tune_control", "target": "m_tone_alarm", "color": "#9ad841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_uavcan", "color": "#41b7d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uavcan", "color": "#d84141", "style": "normal"}, {"source": "t_actuator_test", "target": "m_uavcan", "color": "#d85541", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_uavcan", "color": "#d85b41", "style": "normal"}, {"source": "t_open_drone_id_self_id", "target": "m_uavcan", "color": "#c241d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_uavcan", "color": "#d641d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_uavcan", "color": "#d86941", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_uavcan", "color": "#41d859", "style": "normal"}, {"source": "t_open_drone_id_operator_id", "target": "m_uavcan", "color": "#d841b9", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_uavcan", "color": "#86d841", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_uavcan", "color": "#d841b2", "style": "normal"}, {"source": "t_led_control", "target": "m_uavcan", "color": "#d84183", "style": "normal"}, {"source": "t_open_drone_id_system", "target": "m_uavcan", "color": "#6b41d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_uavcan", "color": "#d8416f", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_uavcan", "color": "#41d2d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uavcan", "color": "#d84162", "style": "normal"}, {"source": "t_tune_control", "target": "m_uavcan", "color": "#9ad841", "style": "normal"}, {"source": "t_uavcan_parameter_request", "target": "m_uavcan", "color": "#d8415b", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_uavcan", "color": "#9a41d8", "style": "normal"}, {"source": "t_home_position", "target": "m_uavcan", "color": "#6bd841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_airspeed_selector", "color": "#41d859", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_airspeed_selector", "color": "#d84741", "style": "normal"}, {"source": "t_airspeed", "target": "m_airspeed_selector", "color": "#7841d8", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_airspeed_selector", "color": "#7f41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_airspeed_selector", "color": "#d84162", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_airspeed_selector", "color": "#414cd8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_airspeed_selector", "color": "#d84191", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_airspeed_selector", "color": "#41cbd8", "style": "normal"}, {"source": "t_estimator_status", "target": "m_airspeed_selector", "color": "#41d84c", "style": "normal"}, {"source": "t_tecs_status", "target": "m_airspeed_selector", "color": "#41d8bd", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airspeed_selector", "color": "#d86941", "style": "normal"}, {"source": "t_vehicle_mocap_odometry", "target": "m_attitude_estimator_q", "color": "#4152d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_attitude_estimator_q", "color": "#d84162", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_attitude_estimator_q", "color": "#d841c0", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_attitude_estimator_q", "color": "#41cbd8", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_attitude_estimator_q", "color": "#41d852", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_battery_status", "color": "#d84191", "style": "normal"}, {"source": "t_adc_report", "target": "m_battery_status", "color": "#c9d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_status", "color": "#d86941", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_camera_feedback", "color": "#41cbd8", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_camera_feedback", "color": "#d84169", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_camera_feedback", "color": "#9341d8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_camera_feedback", "color": "#4174d8", "style": "normal"}, {"source": "t_action_request", "target": "m_commander", "color": "#64d841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_commander", "color": "#d84141", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_commander", "color": "#b541d8", "style": "normal"}, {"source": "t_pwm_input", "target": "m_commander", "color": "#41d845", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_commander", "color": "#d85b41", "style": "normal"}, {"source": "t_geofence_result", "target": "m_commander", "color": "#c941d8", "style": "normal"}, {"source": "t_estimator_status", "target": "m_commander", "color": "#41d84c", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_commander", "color": "#d641d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_commander", "color": "#d86941", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_commander", "color": "#4195d8", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_commander", "color": "#d86f41", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_commander", "color": "#41d859", "style": "normal"}, {"source": "t_telemetry_status", "target": "m_commander", "color": "#41d860", "style": "normal"}, {"source": "t_navigator_status", "target": "m_commander", "color": "#d841d4", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_commander", "color": "#41d866", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_commander", "color": "#d841c6", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_commander", "color": "#418fd8", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_commander", "color": "#d89141", "style": "normal"}, {"source": "t_estimator_status_flags", "target": "m_commander", "color": "#d89e41", "style": "normal"}, {"source": "t_cpuload", "target": "m_commander", "color": "#41d874", "style": "normal"}, {"source": "t_logger_status", "target": "m_commander", "color": "#417bd8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_commander", "color": "#d8b241", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_commander", "color": "#41d888", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_commander", "color": "#d8cd41", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_commander", "color": "#4160d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_commander", "color": "#d8d441", "style": "normal"}, {"source": "t_mission_result", "target": "m_commander", "color": "#41d8a3", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_commander", "color": "#41d8b0", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_commander", "color": "#4145d8", "style": "normal"}, {"source": "t_home_position", "target": "m_commander", "color": "#6bd841", "style": "normal"}, {"source": "t_esc_status", "target": "m_commander", "color": "#4941d8", "style": "normal"}, {"source": "t_power_button_state", "target": "m_commander", "color": "#d8418a", "style": "normal"}, {"source": "t_wind", "target": "m_commander", "color": "#41d8c4", "style": "normal"}, {"source": "t_battery_status", "target": "m_commander", "color": "#6441d8", "style": "normal"}, {"source": "t_vtol_vehicle_status", "target": "m_commander", "color": "#41d8d8", "style": "normal"}, {"source": "t_event", "target": "m_commander", "color": "#7241d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_commander", "color": "#d84162", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_commander", "color": "#7f41d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_commander", "color": "#41cbd8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_commander", "color": "#8cd841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_commander", "color": "#93d841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_commander", "color": "#9a41d8", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_commander", "color": "#7fd841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_commander", "color": "#9341d8", "style": "normal"}, {"source": "t_system_power", "target": "m_commander", "color": "#d8414e", "style": "normal"}, {"source": "t_safety_button", "target": "m_commander", "color": "#72d841", "style": "normal"}, {"source": "t_spoilers_setpoint", "target": "m_control_allocator", "color": "#41d8cb", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_control_allocator", "color": "#d8d441", "style": "normal"}, {"source": "t_failure_detector_status", "target": "m_control_allocator", "color": "#d84e41", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_control_allocator", "color": "#414cd8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_control_allocator", "color": "#bbd841", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_control_allocator", "color": "#5041d8", "style": "normal"}, {"source": "t_tiltrotor_extra_controls", "target": "m_control_allocator", "color": "#41a3d8", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_control_allocator", "color": "#4166d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_control_allocator", "color": "#d86941", "style": "normal"}, {"source": "t_dataman_request", "target": "m_dataman", "color": "#41d8a9", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_ekf2", "color": "#d8cd41", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_ekf2", "color": "#41b0d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_ekf2", "color": "#41d859", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_ekf2", "color": "#d84741", "style": "normal"}, {"source": "t_airspeed", "target": "m_ekf2", "color": "#7841d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_ekf2", "color": "#b541d8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_ekf2", "color": "#41d866", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_ekf2", "color": "#d641d8", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_ekf2", "color": "#d89141", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_ekf2", "color": "#d841c0", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_ekf2", "color": "#d84155", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_ekf2", "color": "#41d852", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ekf2", "color": "#d86941", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_esc_battery", "color": "#d84191", "style": "normal"}, {"source": "t_esc_status", "target": "m_esc_battery", "color": "#4941d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_esc_battery", "color": "#d86941", "style": "normal"}, {"source": "t_battery_status", "target": "m_send_event", "color": "#6441d8", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_send_event", "color": "#d88a41", "style": "normal"}, {"source": "t_cpuload", "target": "m_send_event", "color": "#41d874", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_send_event", "color": "#d641d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_send_event", "color": "#d86941", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_flight_mode_manager", "color": "#41d859", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_flight_mode_manager", "color": "#57d841", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_flight_mode_manager", "color": "#a7d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_flight_mode_manager", "color": "#d84162", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_flight_mode_manager", "color": "#bbd841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_flight_mode_manager", "color": "#d641d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_flight_mode_manager", "color": "#d86941", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_fw_att_control", "color": "#57d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_att_control", "color": "#41d859", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_att_control", "color": "#d84141", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_att_control", "color": "#b541d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_att_control", "color": "#d84162", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_att_control", "color": "#bbd841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_att_control", "color": "#41cbd8", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_fw_att_control", "color": "#4181d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_att_control", "color": "#d86941", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_autotune_attitude_control", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_autotune_attitude_control", "color": "#d86941", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_fw_pos_control", "color": "#d8417d", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_pos_control", "color": "#41d859", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_pos_control", "color": "#d84141", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_pos_control", "color": "#b541d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_fw_pos_control", "color": "#d641d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_pos_control", "color": "#d84162", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_pos_control", "color": "#d86941", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_pos_control", "color": "#bbd841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_pos_control", "color": "#41cbd8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_fw_pos_control", "color": "#9341d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_fw_pos_control", "color": "#41d881", "style": "normal"}, {"source": "t_wind", "target": "m_fw_pos_control", "color": "#41d8c4", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_fw_rate_control", "color": "#41d88f", "style": "normal"}, {"source": "t_battery_status", "target": "m_fw_rate_control", "color": "#6441d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_rate_control", "color": "#41d859", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_rate_control", "color": "#d84141", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_rate_control", "color": "#b541d8", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_fw_rate_control", "color": "#41d8b7", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_rate_control", "color": "#bbd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_rate_control", "color": "#d86941", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_gimbal", "color": "#41d859", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gimbal", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gimbal", "color": "#d641d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_gimbal", "color": "#41cbd8", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_gimbal", "color": "#d8a541", "style": "normal"}, {"source": "t_gimbal_manager_set_attitude", "target": "m_gimbal", "color": "#419cd8", "style": "normal"}, {"source": "t_vehicle_roi", "target": "m_gimbal", "color": "#cf41d8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_gimbal", "color": "#4174d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_gimbal", "color": "#9341d8", "style": "normal"}, {"source": "t_gimbal_manager_set_manual_control", "target": "m_gimbal", "color": "#41d87b", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_gimbal", "color": "#41d881", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_calibration", "color": "#8cd841", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_gyro_calibration", "color": "#418fd8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_gyro_calibration", "color": "#41d8b0", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_gyro_calibration", "color": "#d86941", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_land_detector", "color": "#d8417d", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_land_detector", "color": "#a7d841", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_land_detector", "color": "#d84741", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_land_detector", "color": "#b541d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_land_detector", "color": "#9341d8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_land_detector", "color": "#41d866", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_land_detector", "color": "#d84162", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_land_detector", "color": "#d85b41", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_land_detector", "color": "#414cd8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_land_detector", "color": "#bbd841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_land_detector", "color": "#93d841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_land_detector", "color": "#41d881", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_land_detector", "color": "#d86941", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_landing_target_estimator", "color": "#41cbd8", "style": "normal"}, {"source": "t_irlock_report", "target": "m_landing_target_estimator", "color": "#4341d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_landing_target_estimator", "color": "#d84162", "style": "normal"}, {"source": "t_battery_status", "target": "m_logger", "color": "#6441d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_logger", "color": "#d84141", "style": "normal"}, {"source": "t_ulog_stream_ack", "target": "m_logger", "color": "#d8b941", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_logger", "color": "#d641d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_logger", "color": "#d86941", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mag_bias_estimator", "color": "#d841c6", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mag_bias_estimator", "color": "#d86941", "style": "normal"}, {"source": "t_action_request", "target": "m_manual_control", "color": "#64d841", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_manual_control", "color": "#d8d441", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_manual_control", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_manual_control", "color": "#d86941", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mavlink", "color": "#d84141", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_mavlink", "color": "#d85b41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mavlink", "color": "#d86941", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_mavlink", "color": "#d86f41", "style": "normal"}, {"source": "t_debug_array", "target": "m_mavlink", "color": "#d87641", "style": "normal"}, {"source": "t_sensor_hygrometer", "target": "m_mavlink", "color": "#d87d41", "style": "normal"}, {"source": "t_uavcan_parameter_value", "target": "m_mavlink", "color": "#d88341", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_mavlink", "color": "#d88a41", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_mavlink", "color": "#d89141", "style": "normal"}, {"source": "t_health_report", "target": "m_mavlink", "color": "#d89841", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_mavlink", "color": "#d8a541", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_mavlink", "color": "#d8b241", "style": "normal"}, {"source": "t_debug_vect", "target": "m_mavlink", "color": "#d8c041", "style": "normal"}, {"source": "t_gimbal_device_set_attitude", "target": "m_mavlink", "color": "#d8c641", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_mavlink", "color": "#d8d441", "style": "normal"}, {"source": "t_ulog_stream", "target": "m_mavlink", "color": "#c2d841", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_mavlink", "color": "#b5d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mavlink", "color": "#bbd841", "style": "normal"}, {"source": "t_debug_key_value", "target": "m_mavlink", "color": "#a0d841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_mavlink", "color": "#93d841", "style": "normal"}, {"source": "t_home_position", "target": "m_mavlink", "color": "#6bd841", "style": "normal"}, {"source": "t_mount_orientation", "target": "m_mavlink", "color": "#5ed841", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mavlink", "color": "#57d841", "style": "normal"}, {"source": "t_debug_value", "target": "m_mavlink", "color": "#50d841", "style": "normal"}, {"source": "t_transponder_report", "target": "m_mavlink", "color": "#49d841", "style": "normal"}, {"source": "t_input_rc", "target": "m_mavlink", "color": "#43d841", "style": "normal"}, {"source": "t_estimator_status", "target": "m_mavlink", "color": "#41d84c", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mavlink", "color": "#41d859", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_mavlink", "color": "#41d866", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_mavlink", "color": "#41d86d", "style": "normal"}, {"source": "t_cpuload", "target": "m_mavlink", "color": "#41d874", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_mavlink", "color": "#41d881", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_mavlink", "color": "#41d888", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mavlink", "color": "#41d88f", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_mavlink", "color": "#41d895", "style": "normal"}, {"source": "t_gimbal_v1_command", "target": "m_mavlink", "color": "#41d89c", "style": "normal"}, {"source": "t_mission_result", "target": "m_mavlink", "color": "#41d8a3", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_mavlink", "color": "#41d8b0", "style": "normal"}, {"source": "t_tecs_status", "target": "m_mavlink", "color": "#41d8bd", "style": "normal"}, {"source": "t_wind", "target": "m_mavlink", "color": "#41d8c4", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mavlink", "color": "#41cbd8", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_mavlink", "color": "#41c4d8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_mavlink", "color": "#41b0d8", "style": "normal"}, {"source": "t_camera_status", "target": "m_mavlink", "color": "#41a9d8", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_mavlink", "color": "#4195d8", "style": "normal"}, {"source": "t_vehicle_angular_velocity_groundtruth", "target": "m_mavlink", "color": "#4188d8", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mavlink", "color": "#4181d8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_mavlink", "color": "#4174d8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_mavlink", "color": "#4160d8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_mavlink", "color": "#414cd8", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_mavlink", "color": "#4145d8", "style": "normal"}, {"source": "t_esc_status", "target": "m_mavlink", "color": "#4941d8", "style": "normal"}, {"source": "t_satellite_info", "target": "m_mavlink", "color": "#5e41d8", "style": "normal"}, {"source": "t_gimbal_manager_information", "target": "m_mavlink", "color": "#5741d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_mavlink", "color": "#6441d8", "style": "normal"}, {"source": "t_event", "target": "m_mavlink", "color": "#7241d8", "style": "normal"}, {"source": "t_airspeed", "target": "m_mavlink", "color": "#7841d8", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_mavlink", "color": "#7f41d8", "style": "normal"}, {"source": "t_open_drone_id_arm_status", "target": "m_mavlink", "color": "#8c41d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_mavlink", "color": "#9341d8", "style": "normal"}, {"source": "t_camera_capture", "target": "m_mavlink", "color": "#a041d8", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_mavlink", "color": "#a741d8", "style": "normal"}, {"source": "t_gimbal_manager_status", "target": "m_mavlink", "color": "#ae41d8", "style": "normal"}, {"source": "t_orbit_status", "target": "m_mavlink", "color": "#bb41d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_mavlink", "color": "#b541d8", "style": "normal"}, {"source": "t_geofence_result", "target": "m_mavlink", "color": "#c941d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_mavlink", "color": "#d641d8", "style": "normal"}, {"source": "t_figure_eight_status", "target": "m_mavlink", "color": "#d841cd", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mavlink", "color": "#d841c6", "style": "normal"}, {"source": "t_register_ext_component_reply", "target": "m_mavlink", "color": "#d841ac", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_mavlink", "color": "#d841b2", "style": "normal"}, {"source": "t_mission", "target": "m_mavlink", "color": "#d841a5", "style": "normal"}, {"source": "t_vehicle_odometry", "target": "m_mavlink", "color": "#d8419e", "style": "normal"}, {"source": "t_dataman_response", "target": "m_mavlink", "color": "#d84198", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_mavlink", "color": "#d84176", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_mavlink", "color": "#d84169", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mavlink", "color": "#d84162", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_mavlink", "color": "#d84155", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_mavlink", "color": "#d84147", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mc_att_control", "color": "#57d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_att_control", "color": "#41d859", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_att_control", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_att_control", "color": "#d84162", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_att_control", "color": "#bbd841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mc_att_control", "color": "#41cbd8", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mc_att_control", "color": "#4181d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_att_control", "color": "#d86941", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#d84141", "style": "normal"}, {"source": "t_actuator_controls_status_0", "target": "m_mc_autotune_attitude_control", "color": "#cfd841", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#5041d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_autotune_attitude_control", "color": "#d86941", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_pos_control", "color": "#41d859", "style": "normal"}, {"source": "t_vehicle_constraints", "target": "m_mc_pos_control", "color": "#4159d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_pos_control", "color": "#d84162", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_pos_control", "color": "#bbd841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_mc_pos_control", "color": "#d8417d", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mc_rate_control", "color": "#41d88f", "style": "normal"}, {"source": "t_battery_status", "target": "m_mc_rate_control", "color": "#6441d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_rate_control", "color": "#41d859", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_rate_control", "color": "#d84141", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_mc_rate_control", "color": "#41d8b7", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_rate_control", "color": "#bbd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_rate_control", "color": "#d86941", "style": "normal"}, {"source": "t_mission", "target": "m_navigator", "color": "#d841a5", "style": "normal"}, {"source": "t_wind", "target": "m_navigator", "color": "#41d8c4", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_navigator", "color": "#41d859", "style": "normal"}, {"source": "t_geofence_status", "target": "m_navigator", "color": "#d6d841", "style": "normal"}, {"source": "t_transponder_report", "target": "m_navigator", "color": "#49d841", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_navigator", "color": "#41b0d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_navigator", "color": "#d84162", "style": "normal"}, {"source": "t_home_position", "target": "m_navigator", "color": "#6bd841", "style": "normal"}, {"source": "t_dataman_response", "target": "m_navigator", "color": "#d84198", "style": "normal"}, {"source": "t_position_controller_landing_status", "target": "m_navigator", "color": "#d8ac41", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_navigator", "color": "#41c4d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_navigator", "color": "#9341d8", "style": "normal"}, {"source": "t_rtl_status", "target": "m_navigator", "color": "#416dd8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_navigator", "color": "#d641d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_navigator", "color": "#d86941", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_rc_update", "color": "#d8d441", "style": "normal"}, {"source": "t_rc_parameter_map", "target": "m_rc_update", "color": "#41d8d2", "style": "normal"}, {"source": "t_input_rc", "target": "m_rc_update", "color": "#43d841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_pos_control", "color": "#d8417d", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_rover_pos_control", "color": "#57d841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_pos_control", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_pos_control", "color": "#d84162", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_pos_control", "color": "#bbd841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_pos_control", "color": "#41cbd8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_rover_pos_control", "color": "#9341d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_pos_control", "color": "#41d881", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_sensors", "color": "#4160d8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_sensors", "color": "#41d866", "style": "normal"}, {"source": "t_adc_report", "target": "m_sensors", "color": "#c9d841", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_sensors", "color": "#d841c6", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_sensors", "color": "#418fd8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_sensors", "color": "#bbd841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_sensors", "color": "#93d841", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_sensors", "color": "#8cd841", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_sensors", "color": "#41d8b0", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_sensors", "color": "#d8b241", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_sensors", "color": "#d84155", "style": "normal"}, {"source": "t_sensor_optical_flow", "target": "m_sensors", "color": "#d86241", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out_sim", "color": "#41b7d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out_sim", "color": "#d84141", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out_sim", "color": "#d8416f", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out_sim", "color": "#41d2d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out_sim", "color": "#d85541", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out_sim", "color": "#d85b41", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out_sim", "color": "#86d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out_sim", "color": "#d641d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out_sim", "color": "#9a41d8", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_baro_sim", "color": "#b5d841", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#d84176", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#b5d841", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_sensor_mag_sim", "color": "#a741d8", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_mag_sim", "color": "#b5d841", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_simulator_sih", "color": "#41d86d", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_simulator_sih", "color": "#d84147", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_temperature_compensation", "color": "#d86f41", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_temperature_compensation", "color": "#d841c6", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_temperature_compensation", "color": "#418fd8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_temperature_compensation", "color": "#8cd841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_temperature_compensation", "color": "#d641d8", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_uuv_att_control", "color": "#41d88f", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_uuv_att_control", "color": "#57d841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uuv_att_control", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_att_control", "color": "#bbd841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_att_control", "color": "#41cbd8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_pos_control", "color": "#41cbd8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_uuv_pos_control", "color": "#d8417d", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uuv_pos_control", "color": "#d84162", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_pos_control", "color": "#bbd841", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_uxrce_dds_client", "color": "#41d888", "style": "normal"}, {"source": "t_action_request", "target": "m_vtol_att_control", "color": "#64d841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_vtol_att_control", "color": "#b541d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_vtol_att_control", "color": "#d641d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_vtol_att_control", "color": "#d86941", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_vtol_att_control", "color": "#41d859", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_vtol_att_control", "color": "#41d881", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_vtol_att_control", "color": "#41d895", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_vtol_att_control", "color": "#bbd841", "style": "normal"}, {"source": "t_fw_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#aed841", "style": "normal"}, {"source": "t_tecs_status", "target": "m_vtol_att_control", "color": "#41d8bd", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_vtol_att_control", "color": "#d84162", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_vtol_att_control", "color": "#41cbd8", "style": "normal"}, {"source": "t_mc_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#41bdd8", "style": "normal"}, {"source": "t_home_position", "target": "m_vtol_att_control", "color": "#6bd841", "style": "normal"}]} \ No newline at end of file +{"nodes": [{"id": "m_fw_autotune_attitude_control", "name": "fw_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_autotune_attitude_control", "name": "mc_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_landing_target_estimator", "name": "landing_target_estimator", "type": "Module", "color": "#666666"}, {"id": "m_temperature_compensation", "name": "temperature_compensation", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_serial", "name": "lightware_laser_serial", "type": "Module", "color": "#666666"}, {"id": "m_attitude_estimator_q", "name": "attitude_estimator_q", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_i2c", "name": "lightware_laser_i2c", "type": "Module", "color": "#666666"}, {"id": "m_flight_mode_manager", "name": "flight_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_fw_lat_lon_control", "name": "fw_lat_lon_control", "type": "Module", "color": "#666666"}, {"id": "m_mag_bias_estimator", "name": "mag_bias_estimator", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_is31fl3195", "name": "rgbled_is31fl3195", "type": "Module", "color": "#666666"}, {"id": "m_airspeed_selector", "name": "airspeed_selector", "type": "Module", "color": "#666666"}, {"id": "m_control_allocator", "name": "control_allocator", "type": "Module", "color": "#666666"}, {"id": "m_rover_pos_control", "name": "rover_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_cdcacm_autostart", "name": "cdcacm_autostart", "type": "Module", "color": "#666666"}, {"id": "m_gyro_calibration", "name": "gyro_calibration", "type": "Module", "color": "#666666"}, {"id": "m_uxrce_dds_client", "name": "uxrce_dds_client", "type": "Module", "color": "#666666"}, {"id": "m_vtol_att_control", "name": "vtol_att_control", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_ncp5623c", "name": "rgbled_ncp5623c", "type": "Module", "color": "#666666"}, {"id": "m_pca9685_pwm_out", "name": "pca9685_pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_frsky_telemetry", "name": "frsky_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_camera_feedback", "name": "camera_feedback", "type": "Module", "color": "#666666"}, {"id": "m_fw_mode_manager", "name": "fw_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_fw_rate_control", "name": "fw_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_rate_control", "name": "mc_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_sensor_baro_sim", "name": "sensor_baro_sim", "type": "Module", "color": "#666666"}, {"id": "m_uuv_att_control", "name": "uuv_att_control", "type": "Module", "color": "#666666"}, {"id": "m_uuv_pos_control", "name": "uuv_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_camera_capture", "name": "camera_capture", "type": "Module", "color": "#666666"}, {"id": "m_camera_trigger", "name": "camera_trigger", "type": "Module", "color": "#666666"}, {"id": "m_ulanding_radar", "name": "ulanding_radar", "type": "Module", "color": "#666666"}, {"id": "m_hott_telemetry", "name": "hott_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_battery_status", "name": "battery_status", "type": "Module", "color": "#666666"}, {"id": "m_fw_att_control", "name": "fw_att_control", "type": "Module", "color": "#666666"}, {"id": "m_manual_control", "name": "manual_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_att_control", "name": "mc_att_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_pos_control", "name": "mc_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_sensor_gps_sim", "name": "sensor_gps_sim", "type": "Module", "color": "#666666"}, {"id": "m_sensor_mag_sim", "name": "sensor_mag_sim", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_lp5562", "name": "rgbled_lp5562", "type": "Module", "color": "#666666"}, {"id": "m_safety_button", "name": "safety_button", "type": "Module", "color": "#666666"}, {"id": "m_land_detector", "name": "land_detector", "type": "Module", "color": "#666666"}, {"id": "m_simulator_sih", "name": "simulator_sih", "type": "Module", "color": "#666666"}, {"id": "m_actuator_test", "name": "actuator_test", "type": "Module", "color": "#666666"}, {"id": "m_tune_control", "name": "tune_control", "type": "Module", "color": "#666666"}, {"id": "m_esc_battery", "name": "esc_battery", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out_sim", "name": "pwm_out_sim", "type": "Module", "color": "#666666"}, {"id": "m_led_control", "name": "led_control", "type": "Module", "color": "#666666"}, {"id": "m_batt_smbus", "name": "batt_smbus", "type": "Module", "color": "#666666"}, {"id": "m_teraranger", "name": "teraranger", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_pwm", "name": "rgbled_pwm", "type": "Module", "color": "#666666"}, {"id": "m_tone_alarm", "name": "tone_alarm", "type": "Module", "color": "#666666"}, {"id": "m_send_event", "name": "send_event", "type": "Module", "color": "#666666"}, {"id": "m_board_adc", "name": "board_adc", "type": "Module", "color": "#666666"}, {"id": "m_ms5525dso", "name": "ms5525dso", "type": "Module", "color": "#666666"}, {"id": "m_adis16448", "name": "adis16448", "type": "Module", "color": "#666666"}, {"id": "m_icm42688p", "name": "icm42688p", "type": "Module", "color": "#666666"}, {"id": "m_lsm303agr", "name": "lsm303agr", "type": "Module", "color": "#666666"}, {"id": "m_mmc5983ma", "name": "mmc5983ma", "type": "Module", "color": "#666666"}, {"id": "m_thoneflow", "name": "thoneflow", "type": "Module", "color": "#666666"}, {"id": "m_pwm_input", "name": "pwm_input", "type": "Module", "color": "#666666"}, {"id": "m_commander", "name": "commander", "type": "Module", "color": "#666666"}, {"id": "m_navigator", "name": "navigator", "type": "Module", "color": "#666666"}, {"id": "m_rc_update", "name": "rc_update", "type": "Module", "color": "#666666"}, {"id": "m_icp101xx", "name": "icp101xx", "type": "Module", "color": "#666666"}, {"id": "m_icp201xx", "name": "icp201xx", "type": "Module", "color": "#666666"}, {"id": "m_ms4525do", "name": "ms4525do", "type": "Module", "color": "#666666"}, {"id": "m_icm20602", "name": "icm20602", "type": "Module", "color": "#666666"}, {"id": "m_icm20689", "name": "icm20689", "type": "Module", "color": "#666666"}, {"id": "m_icm20948", "name": "icm20948", "type": "Module", "color": "#666666"}, {"id": "m_qmc5883l", "name": "qmc5883l", "type": "Module", "color": "#666666"}, {"id": "m_vcm1193l", "name": "vcm1193l", "type": "Module", "color": "#666666"}, {"id": "m_rc_input", "name": "rc_input", "type": "Module", "color": "#666666"}, {"id": "m_load_mon", "name": "load_mon", "type": "Module", "color": "#666666"}, {"id": "m_ads1115", "name": "ads1115", "type": "Module", "color": "#666666"}, {"id": "m_lps22hb", "name": "lps22hb", "type": "Module", "color": "#666666"}, {"id": "m_lps33hw", "name": "lps33hw", "type": "Module", "color": "#666666"}, {"id": "m_mpc2520", "name": "mpc2520", "type": "Module", "color": "#666666"}, {"id": "m_cm8jl65", "name": "cm8jl65", "type": "Module", "color": "#666666"}, {"id": "m_tf02pro", "name": "tf02pro", "type": "Module", "color": "#666666"}, {"id": "m_vl53l0x", "name": "vl53l0x", "type": "Module", "color": "#666666"}, {"id": "m_vl53l1x", "name": "vl53l1x", "type": "Module", "color": "#666666"}, {"id": "m_ak09916", "name": "ak09916", "type": "Module", "color": "#666666"}, {"id": "m_hmc5883", "name": "hmc5883", "type": "Module", "color": "#666666"}, {"id": "m_ist8308", "name": "ist8308", "type": "Module", "color": "#666666"}, {"id": "m_ist8310", "name": "ist8310", "type": "Module", "color": "#666666"}, {"id": "m_lis3mdl", "name": "lis3mdl", "type": "Module", "color": "#666666"}, {"id": "m_iis2mdc", "name": "iis2mdc", "type": "Module", "color": "#666666"}, {"id": "m_paa3905", "name": "paa3905", "type": "Module", "color": "#666666"}, {"id": "m_paw3902", "name": "paw3902", "type": "Module", "color": "#666666"}, {"id": "m_pmw3901", "name": "pmw3901", "type": "Module", "color": "#666666"}, {"id": "m_px4flow", "name": "px4flow", "type": "Module", "color": "#666666"}, {"id": "m_msp_osd", "name": "msp_osd", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out", "name": "pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_crsf_rc", "name": "crsf_rc", "type": "Module", "color": "#666666"}, {"id": "m_ghst_rc", "name": "ghst_rc", "type": "Module", "color": "#666666"}, {"id": "m_sbus_rc", "name": "sbus_rc", "type": "Module", "color": "#666666"}, {"id": "m_dataman", "name": "dataman", "type": "Module", "color": "#666666"}, {"id": "m_mavlink", "name": "mavlink", "type": "Module", "color": "#666666"}, {"id": "m_sensors", "name": "sensors", "type": "Module", "color": "#666666"}, {"id": "m_bmp280", "name": "bmp280", "type": "Module", "color": "#666666"}, {"id": "m_bmp388", "name": "bmp388", "type": "Module", "color": "#666666"}, {"id": "m_bmp581", "name": "bmp581", "type": "Module", "color": "#666666"}, {"id": "m_dps310", "name": "dps310", "type": "Module", "color": "#666666"}, {"id": "m_ms5611", "name": "ms5611", "type": "Module", "color": "#666666"}, {"id": "m_ll40ls", "name": "ll40ls", "type": "Module", "color": "#666666"}, {"id": "m_tfmini", "name": "tfmini", "type": "Module", "color": "#666666"}, {"id": "m_heater", "name": "heater", "type": "Module", "color": "#666666"}, {"id": "m_bmi055", "name": "bmi055", "type": "Module", "color": "#666666"}, {"id": "m_irlock", "name": "irlock", "type": "Module", "color": "#666666"}, {"id": "m_rgbled", "name": "rgbled", "type": "Module", "color": "#666666"}, {"id": "m_ak8963", "name": "ak8963", "type": "Module", "color": "#666666"}, {"id": "m_bmm150", "name": "bmm150", "type": "Module", "color": "#666666"}, {"id": "m_rm3100", "name": "rm3100", "type": "Module", "color": "#666666"}, {"id": "m_atxxxx", "name": "atxxxx", "type": "Module", "color": "#666666"}, {"id": "m_ina226", "name": "ina226", "type": "Module", "color": "#666666"}, {"id": "m_dsm_rc", "name": "dsm_rc", "type": "Module", "color": "#666666"}, {"id": "m_batmon", "name": "batmon", "type": "Module", "color": "#666666"}, {"id": "m_uavcan", "name": "uavcan", "type": "Module", "color": "#666666"}, {"id": "m_gimbal", "name": "gimbal", "type": "Module", "color": "#666666"}, {"id": "m_logger", "name": "logger", "type": "Module", "color": "#666666"}, {"id": "m_spa06", "name": "spa06", "type": "Module", "color": "#666666"}, {"id": "m_spl06", "name": "spl06", "type": "Module", "color": "#666666"}, {"id": "m_sdp3x", "name": "sdp3x", "type": "Module", "color": "#666666"}, {"id": "m_dshot", "name": "dshot", "type": "Module", "color": "#666666"}, {"id": "m_sht3x", "name": "sht3x", "type": "Module", "color": "#666666"}, {"id": "m_px4io", "name": "px4io", "type": "Module", "color": "#666666"}, {"id": "m_ekf2", "name": "ekf2", "type": "Module", "color": "#666666"}, {"id": "m_gps", "name": "gps", "type": "Module", "color": "#666666"}, {"id": "m_bst", "name": "bst", "type": "Module", "color": "#666666"}, {"id": "t_vehicle_angular_velocity_groundtruth", "name": "vehicle_angular_velocity_groundtruth", "type": "topic", "color": "#4161d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor_mode_change_request", "name": "distance_sensor_mode_change_request", "type": "topic", "color": "#c841d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position_groundtruth", "name": "vehicle_global_position_groundtruth", "type": "topic", "color": "#d84147", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_longitudinal_control_configuration", "name": "longitudinal_control_configuration", "type": "topic", "color": "#d8ae41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_landing_status", "name": "position_controller_landing_status", "type": "topic", "color": "#d8b541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_groundtruth", "name": "vehicle_local_position_groundtruth", "type": "topic", "color": "#9bd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_manual_control", "name": "gimbal_manager_set_manual_control", "type": "topic", "color": "#41d867", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_longitudinal_setpoint", "name": "fixed_wing_longitudinal_setpoint", "type": "topic", "color": "#41d89b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_autotune_attitude_control_status", "name": "autotune_attitude_control_status", "type": "topic", "color": "#cf41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_setpoint", "name": "vehicle_local_position_setpoint", "type": "topic", "color": "#d87441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_attitude_status", "name": "gimbal_device_attitude_status", "type": "topic", "color": "#4174d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_lateral_control_configuration", "name": "lateral_control_configuration", "type": "topic", "color": "#6141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_register_ext_component_reply", "name": "register_ext_component_reply", "type": "topic", "color": "#d85a41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fw_virtual_attitude_setpoint", "name": "fw_virtual_attitude_setpoint", "type": "topic", "color": "#c2d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mc_virtual_attitude_setpoint", "name": "mc_virtual_attitude_setpoint", "type": "topic", "color": "#414dd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_groundtruth", "name": "vehicle_attitude_groundtruth", "type": "topic", "color": "#d841cf", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_lateral_setpoint", "name": "fixed_wing_lateral_setpoint", "type": "topic", "color": "#d85441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_attitude", "name": "gimbal_manager_set_attitude", "type": "topic", "color": "#6ed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_status", "name": "position_controller_status", "type": "topic", "color": "#54d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_information", "name": "gimbal_manager_information", "type": "topic", "color": "#41d8c2", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_controls_status_0", "name": "actuator_controls_status_0", "type": "topic", "color": "#41a8d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorControlsStatus.msg"}, {"id": "t_gimbal_device_set_attitude", "name": "gimbal_device_set_attitude", "type": "topic", "color": "#d841c8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_information", "name": "gimbal_device_information", "type": "topic", "color": "#d84141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_setpoint", "name": "vehicle_attitude_setpoint", "type": "topic", "color": "#d5d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_operator_id", "name": "open_drone_id_operator_id", "type": "topic", "color": "#bbd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_selector_status", "name": "estimator_selector_status", "type": "topic", "color": "#88d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_setpoint_triplet", "name": "position_setpoint_triplet", "type": "topic", "color": "#7bd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_runway_control", "name": "fixed_wing_runway_control", "type": "topic", "color": "#4154d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tiltrotor_extra_controls", "name": "tiltrotor_extra_controls", "type": "topic", "color": "#4188d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_request", "name": "uavcan_parameter_request", "type": "topic", "color": "#4181d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_control_allocator_status", "name": "control_allocator_status", "type": "topic", "color": "#8841d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_arm_status", "name": "open_drone_id_arm_status", "type": "topic", "color": "#d84161", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_thrust_setpoint", "name": "vehicle_thrust_setpoint", "type": "topic", "color": "#d8bb41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleThrustSetpoint.msg"}, {"id": "t_launch_detection_status", "name": "launch_detection_status", "type": "topic", "color": "#c8d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flight_phase_estimation", "name": "flight_phase_estimation", "type": "topic", "color": "#94d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_setpoint", "name": "manual_control_setpoint", "type": "topic", "color": "#8ed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_torque_setpoint", "name": "vehicle_torque_setpoint", "type": "topic", "color": "#47d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleTorqueSetpoint.msg"}, {"id": "t_failure_detector_status", "name": "failure_detector_status", "type": "topic", "color": "#41d854", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position", "name": "vehicle_global_position", "type": "topic", "color": "#41d881", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_visual_odometry", "name": "vehicle_visual_odometry", "type": "topic", "color": "#5a41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_switches", "name": "manual_control_switches", "type": "topic", "color": "#d84154", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_value", "name": "uavcan_parameter_value", "type": "topic", "color": "#d8a841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status_flags", "name": "estimator_status_flags", "type": "topic", "color": "#41cfd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position", "name": "vehicle_local_position", "type": "topic", "color": "#416ed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_rates_setpoint", "name": "vehicle_rates_setpoint", "type": "topic", "color": "#4147d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_mocap_odometry", "name": "vehicle_mocap_odometry", "type": "topic", "color": "#5441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_sensor_bias", "name": "estimator_sensor_bias", "type": "topic", "color": "#d86141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_self_id", "name": "open_drone_id_self_id", "type": "topic", "color": "#41d85a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_offboard_control_mode", "name": "offboard_control_mode", "type": "topic", "color": "#41d8c8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_differential_pressure", "name": "differential_pressure", "type": "topic", "color": "#b541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_land_detected", "name": "vehicle_land_detected", "type": "topic", "color": "#bb41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_status", "name": "gimbal_manager_status", "type": "topic", "color": "#d8419b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs_sim", "name": "actuator_outputs_sim", "type": "topic", "color": "#d84741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_open_drone_id_system", "name": "open_drone_id_system", "type": "topic", "color": "#41d8d5", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_servos_trim", "name": "actuator_servos_trim", "type": "topic", "color": "#41aed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_control_mode", "name": "vehicle_control_mode", "type": "topic", "color": "#a141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_constraints", "name": "vehicle_constraints", "type": "topic", "color": "#41d84d", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_target_pose", "name": "landing_target_pose", "type": "topic", "color": "#41d8bb", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_optical_flow", "name": "sensor_optical_flow", "type": "topic", "color": "#41a1d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vtol_vehicle_status", "name": "vtol_vehicle_status", "type": "topic", "color": "#4194d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_figure_eight_status", "name": "figure_eight_status", "type": "topic", "color": "#9b41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command_ack", "name": "vehicle_command_ack", "type": "topic", "color": "#d84174", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_trajectory_setpoint", "name": "trajectory_setpoint", "type": "topic", "color": "#d84167", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed_validated", "name": "airspeed_validated", "type": "topic", "color": "#d8cf41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu_status", "name": "vehicle_imu_status", "type": "topic", "color": "#41d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensors_status_imu", "name": "sensors_status_imu", "type": "topic", "color": "#41c2d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_transponder_report", "name": "transponder_report", "type": "topic", "color": "#4741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear_wheel", "name": "landing_gear_wheel", "type": "topic", "color": "#d841a1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_power_button_state", "name": "power_button_state", "type": "topic", "color": "#d8418e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_hygrometer", "name": "sensor_hygrometer", "type": "topic", "color": "#aed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_spoilers_setpoint", "name": "spoilers_setpoint", "type": "topic", "color": "#a8d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_mount_orientation", "name": "mount_orientation", "type": "topic", "color": "#a1d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_time_estimate", "name": "rtl_time_estimate", "type": "topic", "color": "#41d8b5", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_correction", "name": "sensor_correction", "type": "topic", "color": "#d84181", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_v1_command", "name": "gimbal_v1_command", "type": "topic", "color": "#d8414d", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude", "name": "vehicle_attitude", "type": "topic", "color": "#d87b41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_telemetry_status", "name": "telemetry_status", "type": "topic", "color": "#d8a141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status", "name": "estimator_status", "type": "topic", "color": "#d8d541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs", "name": "actuator_outputs", "type": "topic", "color": "#61d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_rc_parameter_map", "name": "rc_parameter_map", "type": "topic", "color": "#5ad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_response", "name": "dataman_response", "type": "topic", "color": "#41d86e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_odometry", "name": "vehicle_odometry", "type": "topic", "color": "#41d874", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_navigator_status", "name": "navigator_status", "type": "topic", "color": "#6741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_selection", "name": "sensor_selection", "type": "topic", "color": "#d8417b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command", "name": "vehicle_command", "type": "topic", "color": "#d84d41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor", "name": "distance_sensor", "type": "topic", "color": "#d88141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream_ack", "name": "ulog_stream_ack", "type": "topic", "color": "#d88841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gps_inject_data", "name": "gps_inject_data", "type": "topic", "color": "#d8c241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_combined", "name": "sensor_combined", "type": "topic", "color": "#67d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_result", "name": "geofence_result", "type": "topic", "color": "#41d87b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_request", "name": "dataman_request", "type": "topic", "color": "#41d88e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_motors", "name": "actuator_motors", "type": "topic", "color": "#41c8d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_controls", "name": "gimbal_controls", "type": "topic", "color": "#4141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_key_value", "name": "debug_key_value", "type": "topic", "color": "#c241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_status", "name": "geofence_status", "type": "topic", "color": "#d841bb", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_armed", "name": "actuator_armed", "type": "topic", "color": "#d8c841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_status", "name": "vehicle_status", "type": "topic", "color": "#4dd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_trigger", "name": "camera_trigger", "type": "topic", "color": "#41b5d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flaps_setpoint", "name": "flaps_setpoint", "type": "topic", "color": "#4d41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_mission_result", "name": "mission_result", "type": "topic", "color": "#a841d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_satellite_info", "name": "satellite_info", "type": "topic", "color": "#d841d5", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failsafe_flags", "name": "failsafe_flags", "type": "topic", "color": "#d841c2", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_capture", "name": "camera_capture", "type": "topic", "color": "#d841ae", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_battery_status", "name": "battery_status", "type": "topic", "color": "#d841a8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_action_request", "name": "action_request", "type": "topic", "color": "#d8416e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_takeoff_status", "name": "takeoff_status", "type": "topic", "color": "#d8415a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_status", "name": "camera_status", "type": "topic", "color": "#d88e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_home_position", "name": "home_position", "type": "topic", "color": "#41d847", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_test", "name": "actuator_test", "type": "topic", "color": "#41d8ae", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_irlock_report", "name": "irlock_report", "type": "topic", "color": "#41bbd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_safety_button", "name": "safety_button", "type": "topic", "color": "#7b41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_logger_status", "name": "logger_status", "type": "topic", "color": "#8e41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_health_report", "name": "health_report", "type": "topic", "color": "#9441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_system_power", "name": "system_power", "type": "topic", "color": "#d86e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tune_control", "name": "tune_control", "type": "topic", "color": "#74d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_accel", "name": "sensor_accel", "type": "topic", "color": "#6e41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_orbit_status", "name": "orbit_status", "type": "topic", "color": "#7441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear", "name": "landing_gear", "type": "topic", "color": "#8141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_px4io_status", "name": "px4io_status", "type": "topic", "color": "#d84194", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_array", "name": "debug_array", "type": "topic", "color": "#d86741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_baro", "name": "sensor_baro", "type": "topic", "color": "#d89b41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tecs_status", "name": "tecs_status", "type": "topic", "color": "#b5d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro", "name": "sensor_gyro", "type": "topic", "color": "#41d861", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu", "name": "vehicle_imu", "type": "topic", "color": "#41d8a8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_led_control", "name": "led_control", "type": "topic", "color": "#41d5d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_roi", "name": "vehicle_roi", "type": "topic", "color": "#419bd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_value", "name": "debug_value", "type": "topic", "color": "#415ad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream", "name": "ulog_stream", "type": "topic", "color": "#d541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_mag", "name": "sensor_mag", "type": "topic", "color": "#d89441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_esc_status", "name": "esc_status", "type": "topic", "color": "#cfd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_vect", "name": "debug_vect", "type": "topic", "color": "#41d8a1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_status", "name": "rtl_status", "type": "topic", "color": "#418ed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gps", "name": "sensor_gps", "type": "topic", "color": "#417bd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/SensorGps.msg"}, {"id": "t_adc_report", "name": "adc_report", "type": "topic", "color": "#d84188", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_pwm_input", "name": "pwm_input", "type": "topic", "color": "#ae41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_input_rc", "name": "input_rc", "type": "topic", "color": "#41d8cf", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed", "name": "airspeed", "type": "topic", "color": "#d841b5", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource1d.msg"}, {"id": "t_mission", "name": "mission", "type": "topic", "color": "#81d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_cpuload", "name": "cpuload", "type": "topic", "color": "#41d888", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_event", "name": "event", "type": "topic", "color": "#41d894", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_wind", "name": "wind", "type": "topic", "color": "#4167d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/Wind.msg"}], "links": [{"source": "m_ads1115", "target": "t_adc_report", "color": "#d84188", "style": "dashed"}, {"source": "m_board_adc", "target": "t_system_power", "color": "#d86e41", "style": "dashed"}, {"source": "m_board_adc", "target": "t_adc_report", "color": "#d84188", "style": "dashed"}, {"source": "m_bmp280", "target": "t_sensor_baro", "color": "#d89b41", "style": "dashed"}, {"source": "m_bmp388", "target": "t_sensor_baro", "color": "#d89b41", "style": "dashed"}, {"source": "m_bmp581", "target": "t_sensor_baro", "color": "#d89b41", "style": "dashed"}, {"source": "m_dps310", "target": "t_sensor_baro", "color": "#d89b41", "style": "dashed"}, {"source": "m_spa06", "target": "t_sensor_baro", "color": "#d89b41", "style": "dashed"}, {"source": "m_spl06", "target": "t_sensor_baro", "color": "#d89b41", "style": "dashed"}, {"source": "m_icp101xx", "target": "t_sensor_baro", "color": "#d89b41", "style": "dashed"}, {"source": "m_icp201xx", "target": "t_sensor_baro", "color": "#d89b41", "style": "dashed"}, {"source": "m_lps22hb", "target": "t_sensor_baro", "color": "#d89b41", "style": "dashed"}, {"source": "m_lps33hw", "target": "t_sensor_baro", "color": "#d89b41", "style": "dashed"}, {"source": "m_mpc2520", "target": "t_sensor_baro", "color": "#d89b41", "style": "dashed"}, {"source": "m_ms5611", "target": "t_sensor_baro", "color": "#d89b41", "style": "dashed"}, {"source": "m_batt_smbus", "target": "t_battery_status", "color": "#d841a8", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_camera_trigger", "color": "#41b5d8", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_vehicle_command_ack", "color": "#d84174", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command", "color": "#d84d41", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_camera_trigger", "color": "#41b5d8", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command_ack", "color": "#d84174", "style": "dashed"}, {"source": "m_ms4525do", "target": "t_differential_pressure", "color": "#b541d8", "style": "dashed"}, {"source": "m_ms5525dso", "target": "t_differential_pressure", "color": "#b541d8", "style": "dashed"}, {"source": "m_sdp3x", "target": "t_differential_pressure", "color": "#b541d8", "style": "dashed"}, {"source": "m_cm8jl65", "target": "t_distance_sensor", "color": "#d88141", "style": "dashed"}, {"source": "m_lightware_laser_i2c", "target": "t_distance_sensor", "color": "#d88141", "style": "dashed"}, {"source": "m_lightware_laser_serial", "target": "t_distance_sensor", "color": "#d88141", "style": "dashed"}, {"source": "m_ll40ls", "target": "t_distance_sensor", "color": "#d88141", "style": "dashed"}, {"source": "m_teraranger", "target": "t_distance_sensor", "color": "#d88141", "style": "dashed"}, {"source": "m_tf02pro", "target": "t_distance_sensor", "color": "#d88141", "style": "dashed"}, {"source": "m_tfmini", "target": "t_distance_sensor", "color": "#d88141", "style": "dashed"}, {"source": "m_ulanding_radar", "target": "t_distance_sensor", "color": "#d88141", "style": "dashed"}, {"source": "m_vl53l0x", "target": "t_distance_sensor", "color": "#d88141", "style": "dashed"}, {"source": "m_vl53l1x", "target": "t_distance_sensor", "color": "#d88141", "style": "dashed"}, {"source": "m_dshot", "target": "t_vehicle_command_ack", "color": "#d84174", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_armed", "color": "#d8c841", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_outputs", "color": "#61d841", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_motors", "color": "#41c8d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_test", "color": "#41d8ae", "style": "dashed"}, {"source": "m_dshot", "target": "t_esc_status", "color": "#cfd841", "style": "dashed"}, {"source": "m_gps", "target": "t_gps_inject_data", "color": "#d8c241", "style": "dashed"}, {"source": "m_gps", "target": "t_satellite_info", "color": "#d841d5", "style": "dashed"}, {"source": "m_gps", "target": "t_sensor_gps", "color": "#417bd8", "style": "dashed"}, {"source": "m_sht3x", "target": "t_sensor_hygrometer", "color": "#aed841", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_gyro", "color": "#41d861", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_mag", "color": "#d89441", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_baro", "color": "#d89b41", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_accel", "color": "#6e41d8", "style": "dashed"}, {"source": "m_bmi055", "target": "t_sensor_gyro", "color": "#41d861", "style": "dashed"}, {"source": "m_bmi055", "target": "t_sensor_accel", "color": "#6e41d8", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_gyro", "color": "#41d861", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_accel", "color": "#6e41d8", "style": "dashed"}, {"source": "m_icm20689", "target": "t_sensor_gyro", "color": "#41d861", "style": "dashed"}, {"source": "m_icm20689", "target": "t_sensor_accel", "color": "#6e41d8", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_gyro", "color": "#41d861", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_mag", "color": "#d89441", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_accel", "color": "#6e41d8", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_gyro", "color": "#41d861", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_accel", "color": "#6e41d8", "style": "dashed"}, {"source": "m_irlock", "target": "t_irlock_report", "color": "#41bbd8", "style": "dashed"}, {"source": "m_ak09916", "target": "t_sensor_mag", "color": "#d89441", "style": "dashed"}, {"source": "m_ak8963", "target": "t_sensor_mag", "color": "#d89441", "style": "dashed"}, {"source": "m_bmm150", "target": "t_sensor_mag", "color": "#d89441", "style": "dashed"}, {"source": "m_hmc5883", "target": "t_sensor_mag", "color": "#d89441", "style": "dashed"}, {"source": "m_ist8308", "target": "t_sensor_mag", "color": "#d89441", "style": "dashed"}, {"source": "m_ist8310", "target": "t_sensor_mag", "color": "#d89441", "style": "dashed"}, {"source": "m_lis3mdl", "target": "t_sensor_mag", "color": "#d89441", "style": "dashed"}, {"source": "m_lsm303agr", "target": "t_sensor_mag", "color": "#d89441", "style": "dashed"}, {"source": "m_mmc5983ma", "target": "t_sensor_mag", "color": "#d89441", "style": "dashed"}, {"source": "m_qmc5883l", "target": "t_sensor_mag", "color": "#d89441", "style": "dashed"}, {"source": "m_rm3100", "target": "t_sensor_mag", "color": "#d89441", "style": "dashed"}, {"source": "m_iis2mdc", "target": "t_sensor_mag", "color": "#d89441", "style": "dashed"}, {"source": "m_vcm1193l", "target": "t_sensor_mag", "color": "#d89441", "style": "dashed"}, {"source": "m_paa3905", "target": "t_sensor_optical_flow", "color": "#41a1d8", "style": "dashed"}, {"source": "m_paw3902", "target": "t_sensor_optical_flow", "color": "#41a1d8", "style": "dashed"}, {"source": "m_pmw3901", "target": "t_sensor_optical_flow", "color": "#41a1d8", "style": "dashed"}, {"source": "m_px4flow", "target": "t_sensor_optical_flow", "color": "#41a1d8", "style": "dashed"}, {"source": "m_thoneflow", "target": "t_sensor_optical_flow", "color": "#41a1d8", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_armed", "color": "#d8c841", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_outputs", "color": "#61d841", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_motors", "color": "#41c8d8", "style": "dashed"}, {"source": "m_pca9685_pwm_out", "target": "t_actuator_test", "color": "#41d8ae", "style": "dashed"}, {"source": "m_ina226", "target": "t_battery_status", "color": "#d841a8", "style": "dashed"}, {"source": "m_pwm_input", "target": "t_pwm_input", "color": "#ae41d8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_armed", "color": "#d8c841", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_outputs", "color": "#61d841", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_motors", "color": "#41c8d8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_test", "color": "#41d8ae", "style": "dashed"}, {"source": "m_px4io", "target": "t_tune_control", "color": "#74d841", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command_ack", "color": "#d84174", "style": "dashed"}, {"source": "m_px4io", "target": "t_px4io_status", "color": "#d84194", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_armed", "color": "#d8c841", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_outputs", "color": "#61d841", "style": "dashed"}, {"source": "m_px4io", "target": "t_input_rc", "color": "#41d8cf", "style": "dashed"}, {"source": "m_px4io", "target": "t_led_control", "color": "#41d5d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_motors", "color": "#41c8d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_test", "color": "#41d8ae", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command", "color": "#d84d41", "style": "dashed"}, {"source": "m_px4io", "target": "t_safety_button", "color": "#7b41d8", "style": "dashed"}, {"source": "m_crsf_rc", "target": "t_input_rc", "color": "#41d8cf", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_input_rc", "color": "#41d8cf", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_vehicle_command", "color": "#d84d41", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_vehicle_command_ack", "color": "#d84174", "style": "dashed"}, {"source": "m_ghst_rc", "target": "t_input_rc", "color": "#41d8cf", "style": "dashed"}, {"source": "m_sbus_rc", "target": "t_input_rc", "color": "#41d8cf", "style": "dashed"}, {"source": "m_rc_input", "target": "t_input_rc", "color": "#41d8cf", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command", "color": "#d84d41", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command_ack", "color": "#d84174", "style": "dashed"}, {"source": "m_safety_button", "target": "t_tune_control", "color": "#74d841", "style": "dashed"}, {"source": "m_safety_button", "target": "t_vehicle_command", "color": "#d84d41", "style": "dashed"}, {"source": "m_safety_button", "target": "t_led_control", "color": "#41d5d8", "style": "dashed"}, {"source": "m_safety_button", "target": "t_safety_button", "color": "#7b41d8", "style": "dashed"}, {"source": "m_batmon", "target": "t_battery_status", "color": "#d841a8", "style": "dashed"}, {"source": "m_hott_telemetry", "target": "t_esc_status", "color": "#cfd841", "style": "dashed"}, {"source": "m_tone_alarm", "target": "t_tune_control", "color": "#74d841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_tune_control", "color": "#74d841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_distance_sensor", "color": "#d88141", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command_ack", "color": "#d84174", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_armed", "color": "#d8c841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_outputs", "color": "#61d841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_led_control", "color": "#41d5d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_open_drone_id_arm_status", "color": "#d84161", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_motors", "color": "#41c8d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_test", "color": "#41d8ae", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command", "color": "#d84d41", "style": "dashed"}, {"source": "m_uavcan", "target": "t_esc_status", "color": "#cfd841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_uavcan_parameter_value", "color": "#d8a841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_safety_button", "color": "#7b41d8", "style": "dashed"}, {"source": "m_airspeed_selector", "target": "t_airspeed_validated", "color": "#d8cf41", "style": "dashed"}, {"source": "m_attitude_estimator_q", "target": "t_vehicle_attitude", "color": "#d87b41", "style": "dashed"}, {"source": "m_battery_status", "target": "t_battery_status", "color": "#d841a8", "style": "dashed"}, {"source": "m_camera_feedback", "target": "t_camera_capture", "color": "#d841ae", "style": "dashed"}, {"source": "m_commander", "target": "t_tune_control", "color": "#74d841", "style": "dashed"}, {"source": "m_commander", "target": "t_home_position", "color": "#41d847", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command_ack", "color": "#d84174", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_armed", "color": "#d8c841", "style": "dashed"}, {"source": "m_commander", "target": "t_failure_detector_status", "color": "#41d854", "style": "dashed"}, {"source": "m_commander", "target": "t_power_button_state", "color": "#d8418e", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_control_mode", "color": "#a141d8", "style": "dashed"}, {"source": "m_commander", "target": "t_led_control", "color": "#41d5d8", "style": "dashed"}, {"source": "m_commander", "target": "t_health_report", "color": "#9441d8", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_test", "color": "#41d8ae", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command", "color": "#d84d41", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_status", "color": "#4dd841", "style": "dashed"}, {"source": "m_commander", "target": "t_failsafe_flags", "color": "#d841c2", "style": "dashed"}, {"source": "m_commander", "target": "t_register_ext_component_reply", "color": "#d85a41", "style": "dashed"}, {"source": "m_commander", "target": "t_event", "color": "#41d894", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_control_allocator_status", "color": "#8841d8", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_motors", "color": "#41c8d8", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos_trim", "color": "#41aed8", "style": "dashed"}, {"source": "m_dataman", "target": "t_dataman_response", "color": "#41d86e", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status_flags", "color": "#41cfd8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_sensor_bias", "color": "#d86141", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_attitude", "color": "#d87b41", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_odometry", "color": "#41d874", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_local_position", "color": "#416ed8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_global_position", "color": "#41d881", "style": "dashed"}, {"source": "m_ekf2", "target": "t_wind", "color": "#4167d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status", "color": "#d8d541", "style": "dashed"}, {"source": "m_ekf2", "target": "t_sensor_selection", "color": "#d8417b", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_command_ack", "color": "#d84174", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_selector_status", "color": "#88d841", "style": "dashed"}, {"source": "m_esc_battery", "target": "t_battery_status", "color": "#d841a8", "style": "dashed"}, {"source": "m_send_event", "target": "t_tune_control", "color": "#74d841", "style": "dashed"}, {"source": "m_send_event", "target": "t_led_control", "color": "#41d5d8", "style": "dashed"}, {"source": "m_send_event", "target": "t_vehicle_command_ack", "color": "#d84174", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_vehicle_constraints", "color": "#41d84d", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_landing_gear", "color": "#8141d8", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_trajectory_setpoint", "color": "#d84167", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_vehicle_rates_setpoint", "color": "#4147d8", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_landing_gear_wheel", "color": "#d841a1", "style": "dashed"}, {"source": "m_fw_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#cf41d8", "style": "dashed"}, {"source": "m_fw_lat_lon_control", "target": "t_tecs_status", "color": "#b5d841", "style": "dashed"}, {"source": "m_fw_lat_lon_control", "target": "t_flight_phase_estimation", "color": "#94d841", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_spoilers_setpoint", "color": "#a8d841", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_longitudinal_setpoint", "color": "#41d89b", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_figure_eight_status", "color": "#9b41d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_lateral_control_configuration", "color": "#6141d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_runway_control", "color": "#4154d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_lateral_setpoint", "color": "#d85441", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_launch_detection_status", "color": "#c8d841", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_longitudinal_control_configuration", "color": "#d8ae41", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_position_controller_landing_status", "color": "#d8b541", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_flaps_setpoint", "color": "#4d41d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_orbit_status", "color": "#7441d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_landing_gear", "color": "#8141d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_vehicle_local_position_setpoint", "color": "#d87441", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#4147d8", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_spoilers_setpoint", "color": "#a8d841", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_flaps_setpoint", "color": "#4d41d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_mount_orientation", "color": "#a1d841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_information", "color": "#41d8c2", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_status", "color": "#d8419b", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command_ack", "color": "#d84174", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_set_attitude", "color": "#d841c8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command", "color": "#d84d41", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_controls", "color": "#4141d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_v1_command", "color": "#d8414d", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_attitude_status", "color": "#4174d8", "style": "dashed"}, {"source": "m_land_detector", "target": "t_vehicle_land_detected", "color": "#bb41d8", "style": "dashed"}, {"source": "m_landing_target_estimator", "target": "t_landing_target_pose", "color": "#41d8bb", "style": "dashed"}, {"source": "m_load_mon", "target": "t_cpuload", "color": "#41d888", "style": "dashed"}, {"source": "m_logger", "target": "t_ulog_stream", "color": "#d541d8", "style": "dashed"}, {"source": "m_logger", "target": "t_logger_status", "color": "#8e41d8", "style": "dashed"}, {"source": "m_logger", "target": "t_vehicle_command_ack", "color": "#d84174", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_setpoint", "color": "#8ed841", "style": "dashed"}, {"source": "m_manual_control", "target": "t_action_request", "color": "#d8416e", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_command", "color": "#d84d41", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_status", "color": "#4dd841", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_switches", "color": "#d84154", "style": "dashed"}, {"source": "m_manual_control", "target": "t_landing_gear", "color": "#8141d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_tune_control", "color": "#74d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_attitude", "color": "#6ed841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_offboard_control_mode", "color": "#41d8c8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_information", "color": "#d84141", "style": "dashed"}, {"source": "m_mavlink", "target": "t_input_rc", "color": "#41d8cf", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_system", "color": "#41d8d5", "style": "dashed"}, {"source": "m_mavlink", "target": "t_rc_parameter_map", "color": "#5ad841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command", "color": "#d84d41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_irlock_report", "color": "#41bbd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_differential_pressure", "color": "#b541d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_array", "color": "#d86741", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_optical_flow", "color": "#41a1d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude", "color": "#d87b41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_distance_sensor", "color": "#d88141", "style": "dashed"}, {"source": "m_mavlink", "target": "t_ulog_stream_ack", "color": "#d88841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_camera_status", "color": "#d88e41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_self_id", "color": "#41d85a", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_key_value", "color": "#c241d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gyro", "color": "#41d861", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_manual_control", "color": "#41d867", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_mag", "color": "#d89441", "style": "dashed"}, {"source": "m_mavlink", "target": "t_airspeed", "color": "#d841b5", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_baro", "color": "#d89b41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_telemetry_status", "color": "#d8a141", "style": "dashed"}, {"source": "m_mavlink", "target": "t_uavcan_parameter_request", "color": "#4181d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_attitude_status", "color": "#4174d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_local_position", "color": "#416ed8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_global_position", "color": "#41d881", "style": "dashed"}, {"source": "m_mavlink", "target": "t_battery_status", "color": "#d841a8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gps_inject_data", "color": "#d8c241", "style": "dashed"}, {"source": "m_mavlink", "target": "t_dataman_request", "color": "#41d88e", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_value", "color": "#415ad8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mc_virtual_attitude_setpoint", "color": "#414dd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude_setpoint", "color": "#d5d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_fw_virtual_attitude_setpoint", "color": "#c2d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_rates_setpoint", "color": "#4147d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_operator_id", "color": "#bbd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_event", "color": "#41d894", "style": "dashed"}, {"source": "m_mavlink", "target": "t_transponder_report", "color": "#4741d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_vect", "color": "#41d8a1", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command_ack", "color": "#d84174", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_mocap_odometry", "color": "#5441d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_visual_odometry", "color": "#5a41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_trajectory_setpoint", "color": "#d84167", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mission", "color": "#81d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_accel", "color": "#6e41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gps", "color": "#417bd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_landing_target_pose", "color": "#41d8bb", "style": "dashed"}, {"source": "m_mc_att_control", "target": "t_vehicle_rates_setpoint", "color": "#4147d8", "style": "dashed"}, {"source": "m_mc_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#cf41d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_constraints", "color": "#41d84d", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_trajectory_setpoint", "color": "#d84167", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_takeoff_status", "color": "#d8415a", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#d5d841", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#d87441", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#4147d8", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_actuator_controls_status_0", "color": "#41a8d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission_result", "color": "#a841d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command", "color": "#d84d41", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_status", "color": "#4dd841", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_land_detected", "color": "#bb41d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_home_position", "color": "#41d847", "style": "dashed"}, {"source": "m_navigator", "target": "t_distance_sensor_mode_change_request", "color": "#c841d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_roi", "color": "#419bd8", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_status", "color": "#d841bb", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_status", "color": "#418ed8", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_result", "color": "#41d87b", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_global_position", "color": "#41d881", "style": "dashed"}, {"source": "m_navigator", "target": "t_dataman_request", "color": "#41d88e", "style": "dashed"}, {"source": "m_navigator", "target": "t_transponder_report", "color": "#4741d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command_ack", "color": "#d84174", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_time_estimate", "color": "#41d8b5", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission", "color": "#81d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_navigator_status", "color": "#6741d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_position_setpoint_triplet", "color": "#7bd841", "style": "dashed"}, {"source": "m_rc_update", "target": "t_manual_control_switches", "color": "#d84154", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_thrust_setpoint", "color": "#d8bb41", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_position_controller_status", "color": "#54d841", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#d5d841", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_torque_setpoint", "color": "#47d841", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu_status", "color": "#41d841", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu", "color": "#41d8a8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_combined", "color": "#67d841", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensors_status_imu", "color": "#41c2d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_airspeed", "color": "#d841b5", "style": "dashed"}, {"source": "m_sensors", "target": "t_differential_pressure", "color": "#b541d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_selection", "color": "#d8417b", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_armed", "color": "#d8c841", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs", "color": "#61d841", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs_sim", "color": "#d84741", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_motors", "color": "#41c8d8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_test", "color": "#41d8ae", "style": "dashed"}, {"source": "m_sensor_baro_sim", "target": "t_sensor_baro", "color": "#d89b41", "style": "dashed"}, {"source": "m_sensor_gps_sim", "target": "t_sensor_gps", "color": "#417bd8", "style": "dashed"}, {"source": "m_sensor_mag_sim", "target": "t_sensor_mag", "color": "#d89441", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_local_position_groundtruth", "color": "#9bd841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_distance_sensor", "color": "#d88141", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_gyro", "color": "#41d861", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_attitude_groundtruth", "color": "#d841cf", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_angular_velocity_groundtruth", "color": "#4161d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_airspeed", "color": "#d841b5", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_accel", "color": "#6e41d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_global_position_groundtruth", "color": "#d84147", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_sensor_correction", "color": "#d84181", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command", "color": "#d84d41", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_led_control", "color": "#41d5d8", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command_ack", "color": "#d84174", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#d8bb41", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_torque_setpoint", "color": "#47d841", "style": "dashed"}, {"source": "m_uuv_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#d5d841", "style": "dashed"}, {"source": "m_uxrce_dds_client", "target": "t_vehicle_command", "color": "#d84d41", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_spoilers_setpoint", "color": "#a8d841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#d8bb41", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_torque_setpoint", "color": "#47d841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_command_ack", "color": "#d84174", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_attitude_setpoint", "color": "#d5d841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vtol_vehicle_status", "color": "#4194d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_flaps_setpoint", "color": "#4d41d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_tiltrotor_extra_controls", "color": "#4188d8", "style": "dashed"}, {"source": "m_actuator_test", "target": "t_actuator_test", "color": "#41d8ae", "style": "dashed"}, {"source": "m_led_control", "target": "t_led_control", "color": "#41d5d8", "style": "dashed"}, {"source": "m_tune_control", "target": "t_tune_control", "color": "#74d841", "style": "dashed"}, {"source": "t_adc_report", "target": "m_board_adc", "color": "#d84188", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_capture", "color": "#d84d41", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_camera_trigger", "color": "#416ed8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_trigger", "color": "#d84d41", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_cdcacm_autostart", "color": "#d8c841", "style": "normal"}, {"source": "t_distance_sensor_mode_change_request", "target": "m_lightware_laser_i2c", "color": "#c841d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_lightware_laser_i2c", "color": "#4dd841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_dshot", "color": "#d841a1", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_dshot", "color": "#8ed841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_dshot", "color": "#d8c841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_dshot", "color": "#41c8d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_dshot", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dshot", "color": "#d84d41", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_dshot", "color": "#41aed8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_dshot", "color": "#4141d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_dshot", "color": "#8141d8", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_gps", "color": "#d8c241", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_heater", "color": "#6e41d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled", "color": "#41d5d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_is31fl3195", "color": "#41d5d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_lp5562", "color": "#41d5d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_ncp5623c", "color": "#41d5d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_pwm", "color": "#41d5d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_atxxxx", "color": "#416ed8", "style": "normal"}, {"source": "t_battery_status", "target": "m_atxxxx", "color": "#d841a8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_atxxxx", "color": "#4dd841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_msp_osd", "color": "#416ed8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_msp_osd", "color": "#41d881", "style": "normal"}, {"source": "t_battery_status", "target": "m_msp_osd", "color": "#d841a8", "style": "normal"}, {"source": "t_home_position", "target": "m_msp_osd", "color": "#41d847", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_msp_osd", "color": "#d87b41", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_msp_osd", "color": "#d8cf41", "style": "normal"}, {"source": "t_input_rc", "target": "m_msp_osd", "color": "#41d8cf", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_msp_osd", "color": "#4dd841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pca9685_pwm_out", "color": "#d841a1", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pca9685_pwm_out", "color": "#8ed841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pca9685_pwm_out", "color": "#d8c841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pca9685_pwm_out", "color": "#41c8d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pca9685_pwm_out", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pca9685_pwm_out", "color": "#d84d41", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pca9685_pwm_out", "color": "#41aed8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pca9685_pwm_out", "color": "#4141d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pca9685_pwm_out", "color": "#8141d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina226", "color": "#4dd841", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina226", "color": "#94d841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out", "color": "#d841a1", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out", "color": "#8ed841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out", "color": "#d8c841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out", "color": "#41c8d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out", "color": "#d84d41", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out", "color": "#41aed8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out", "color": "#4141d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out", "color": "#8141d8", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_px4io", "color": "#d841a1", "style": "normal"}, {"source": "t_px4io_status", "target": "m_px4io", "color": "#d84194", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_px4io", "color": "#8ed841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_px4io", "color": "#d8c841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_px4io", "color": "#41c8d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_px4io", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_px4io", "color": "#d84d41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_px4io", "color": "#4dd841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_px4io", "color": "#41aed8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_px4io", "color": "#4141d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_px4io", "color": "#8141d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_crsf_rc", "color": "#d841a8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_crsf_rc", "color": "#d87b41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_crsf_rc", "color": "#4dd841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dsm_rc", "color": "#d84d41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_dsm_rc", "color": "#4dd841", "style": "normal"}, {"source": "t_battery_status", "target": "m_ghst_rc", "color": "#d841a8", "style": "normal"}, {"source": "t_battery_status", "target": "m_rc_input", "color": "#d841a8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rc_input", "color": "#d87b41", "style": "normal"}, {"source": "t_adc_report", "target": "m_rc_input", "color": "#d84188", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_rc_input", "color": "#d84d41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_rc_input", "color": "#4dd841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_safety_button", "color": "#d8c841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_bst", "color": "#d87b41", "style": "normal"}, {"source": "t_battery_status", "target": "m_bst", "color": "#d841a8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_frsky_telemetry", "color": "#416ed8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_frsky_telemetry", "color": "#41d881", "style": "normal"}, {"source": "t_battery_status", "target": "m_frsky_telemetry", "color": "#d841a8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_frsky_telemetry", "color": "#4dd841", "style": "normal"}, {"source": "t_battery_status", "target": "m_hott_telemetry", "color": "#d841a8", "style": "normal"}, {"source": "t_home_position", "target": "m_hott_telemetry", "color": "#41d847", "style": "normal"}, {"source": "t_esc_status", "target": "m_hott_telemetry", "color": "#cfd841", "style": "normal"}, {"source": "t_airspeed", "target": "m_hott_telemetry", "color": "#d841b5", "style": "normal"}, {"source": "t_tune_control", "target": "m_tone_alarm", "color": "#74d841", "style": "normal"}, {"source": "t_tune_control", "target": "m_uavcan", "color": "#74d841", "style": "normal"}, {"source": "t_open_drone_id_system", "target": "m_uavcan", "color": "#41d8d5", "style": "normal"}, {"source": "t_led_control", "target": "m_uavcan", "color": "#41d5d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_uavcan", "color": "#41c8d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_uavcan", "color": "#d84d41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_uavcan", "color": "#4dd841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_uavcan", "color": "#41aed8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_uavcan", "color": "#bb41d8", "style": "normal"}, {"source": "t_home_position", "target": "m_uavcan", "color": "#41d847", "style": "normal"}, {"source": "t_open_drone_id_self_id", "target": "m_uavcan", "color": "#41d85a", "style": "normal"}, {"source": "t_uavcan_parameter_request", "target": "m_uavcan", "color": "#4181d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uavcan", "color": "#416ed8", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_uavcan", "color": "#d841a1", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_uavcan", "color": "#d8c241", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_uavcan", "color": "#d8c841", "style": "normal"}, {"source": "t_open_drone_id_operator_id", "target": "m_uavcan", "color": "#bbd841", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_uavcan", "color": "#4141d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uavcan", "color": "#8ed841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_uavcan", "color": "#41d8ae", "style": "normal"}, {"source": "t_landing_gear", "target": "m_uavcan", "color": "#8141d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_airspeed_selector", "color": "#416ed8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_airspeed_selector", "color": "#d8bb41", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_airspeed_selector", "color": "#d87b41", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_airspeed_selector", "color": "#94d841", "style": "normal"}, {"source": "t_estimator_status", "target": "m_airspeed_selector", "color": "#d8d541", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_airspeed_selector", "color": "#88d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airspeed_selector", "color": "#4dd841", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_airspeed_selector", "color": "#c8d841", "style": "normal"}, {"source": "t_airspeed", "target": "m_airspeed_selector", "color": "#d841b5", "style": "normal"}, {"source": "t_tecs_status", "target": "m_airspeed_selector", "color": "#b5d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_airspeed_selector", "color": "#bb41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_attitude_estimator_q", "color": "#416ed8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_attitude_estimator_q", "color": "#d87b41", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_attitude_estimator_q", "color": "#67d841", "style": "normal"}, {"source": "t_vehicle_mocap_odometry", "target": "m_attitude_estimator_q", "color": "#5441d8", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_attitude_estimator_q", "color": "#5a41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_status", "color": "#4dd841", "style": "normal"}, {"source": "t_adc_report", "target": "m_battery_status", "color": "#d84188", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_battery_status", "color": "#94d841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_camera_feedback", "color": "#41d881", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_camera_feedback", "color": "#d87b41", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_camera_feedback", "color": "#4174d8", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_camera_feedback", "color": "#41b5d8", "style": "normal"}, {"source": "t_logger_status", "target": "m_commander", "color": "#8e41d8", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_commander", "color": "#41d8c8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_commander", "color": "#d84154", "style": "normal"}, {"source": "t_estimator_status_flags", "target": "m_commander", "color": "#41cfd8", "style": "normal"}, {"source": "t_mission_result", "target": "m_commander", "color": "#a841d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_commander", "color": "#41c8d8", "style": "normal"}, {"source": "t_navigator_status", "target": "m_commander", "color": "#6741d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_commander", "color": "#d84d41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_commander", "color": "#4dd841", "style": "normal"}, {"source": "t_pwm_input", "target": "m_commander", "color": "#ae41d8", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_commander", "color": "#41c2d8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_commander", "color": "#b541d8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_commander", "color": "#d86141", "style": "normal"}, {"source": "t_system_power", "target": "m_commander", "color": "#d86e41", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_commander", "color": "#bb41d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_commander", "color": "#d87b41", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_commander", "color": "#41d841", "style": "normal"}, {"source": "t_home_position", "target": "m_commander", "color": "#41d847", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_commander", "color": "#d88141", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_commander", "color": "#41d861", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_commander", "color": "#d89441", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_commander", "color": "#d89b41", "style": "normal"}, {"source": "t_vtol_vehicle_status", "target": "m_commander", "color": "#4194d8", "style": "normal"}, {"source": "t_telemetry_status", "target": "m_commander", "color": "#d8a141", "style": "normal"}, {"source": "t_geofence_result", "target": "m_commander", "color": "#41d87b", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_commander", "color": "#416ed8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_commander", "color": "#41d881", "style": "normal"}, {"source": "t_battery_status", "target": "m_commander", "color": "#d841a8", "style": "normal"}, {"source": "t_cpuload", "target": "m_commander", "color": "#41d888", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_commander", "color": "#d8cf41", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_commander", "color": "#d8c841", "style": "normal"}, {"source": "t_power_button_state", "target": "m_commander", "color": "#d8418e", "style": "normal"}, {"source": "t_estimator_status", "target": "m_commander", "color": "#d8d541", "style": "normal"}, {"source": "t_wind", "target": "m_commander", "color": "#4167d8", "style": "normal"}, {"source": "t_esc_status", "target": "m_commander", "color": "#cfd841", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_commander", "color": "#d84181", "style": "normal"}, {"source": "t_event", "target": "m_commander", "color": "#41d894", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_commander", "color": "#d8417b", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_commander", "color": "#d84174", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_commander", "color": "#8ed841", "style": "normal"}, {"source": "t_action_request", "target": "m_commander", "color": "#d8416e", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_commander", "color": "#88d841", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_commander", "color": "#41d8b5", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_commander", "color": "#6e41d8", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_commander", "color": "#417bd8", "style": "normal"}, {"source": "t_safety_button", "target": "m_commander", "color": "#7b41d8", "style": "normal"}, {"source": "t_spoilers_setpoint", "target": "m_control_allocator", "color": "#a8d841", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_control_allocator", "color": "#d8bb41", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_control_allocator", "color": "#47d841", "style": "normal"}, {"source": "t_failure_detector_status", "target": "m_control_allocator", "color": "#41d854", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_control_allocator", "color": "#a141d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_control_allocator", "color": "#4dd841", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_control_allocator", "color": "#d84154", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_control_allocator", "color": "#4d41d8", "style": "normal"}, {"source": "t_tiltrotor_extra_controls", "target": "m_control_allocator", "color": "#4188d8", "style": "normal"}, {"source": "t_dataman_request", "target": "m_dataman", "color": "#41d88e", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_ekf2", "color": "#41d8a8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_ekf2", "color": "#d8417b", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_ekf2", "color": "#d88141", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_ekf2", "color": "#d8cf41", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_ekf2", "color": "#67d841", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_ekf2", "color": "#5a41d8", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_ekf2", "color": "#41c2d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ekf2", "color": "#4dd841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_ekf2", "color": "#bb41d8", "style": "normal"}, {"source": "t_airspeed", "target": "m_ekf2", "color": "#d841b5", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_ekf2", "color": "#c8d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_ekf2", "color": "#d84d41", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_ekf2", "color": "#41d8bb", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_esc_battery", "color": "#4dd841", "style": "normal"}, {"source": "t_esc_status", "target": "m_esc_battery", "color": "#cfd841", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_esc_battery", "color": "#94d841", "style": "normal"}, {"source": "t_battery_status", "target": "m_send_event", "color": "#d841a8", "style": "normal"}, {"source": "t_cpuload", "target": "m_send_event", "color": "#41d888", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_send_event", "color": "#d84d41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_send_event", "color": "#4dd841", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_send_event", "color": "#d841c2", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_flight_mode_manager", "color": "#416ed8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_flight_mode_manager", "color": "#a141d8", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_flight_mode_manager", "color": "#d8415a", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_flight_mode_manager", "color": "#d5d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_flight_mode_manager", "color": "#d84d41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_flight_mode_manager", "color": "#4dd841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_flight_mode_manager", "color": "#bb41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_att_control", "color": "#416ed8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_att_control", "color": "#d87b41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_att_control", "color": "#8ed841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_att_control", "color": "#d8cf41", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_fw_att_control", "color": "#cf41d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_att_control", "color": "#a141d8", "style": "normal"}, {"source": "t_fixed_wing_runway_control", "target": "m_fw_att_control", "color": "#4154d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_fw_att_control", "color": "#d5d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_att_control", "color": "#4dd841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_att_control", "color": "#bb41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_autotune_attitude_control", "color": "#4dd841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_autotune_attitude_control", "color": "#8ed841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_lat_lon_control", "color": "#416ed8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_lat_lon_control", "color": "#d87b41", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_lat_lon_control", "color": "#d8cf41", "style": "normal"}, {"source": "t_fixed_wing_longitudinal_setpoint", "target": "m_fw_lat_lon_control", "color": "#41d89b", "style": "normal"}, {"source": "t_wind", "target": "m_fw_lat_lon_control", "color": "#4167d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_lat_lon_control", "color": "#a141d8", "style": "normal"}, {"source": "t_lateral_control_configuration", "target": "m_fw_lat_lon_control", "color": "#6141d8", "style": "normal"}, {"source": "t_fixed_wing_lateral_setpoint", "target": "m_fw_lat_lon_control", "color": "#d85441", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_lat_lon_control", "color": "#4dd841", "style": "normal"}, {"source": "t_longitudinal_control_configuration", "target": "m_fw_lat_lon_control", "color": "#d8ae41", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_fw_lat_lon_control", "color": "#4d41d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_lat_lon_control", "color": "#bb41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_mode_manager", "color": "#416ed8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_fw_mode_manager", "color": "#41d881", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_mode_manager", "color": "#d87b41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_mode_manager", "color": "#8ed841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_mode_manager", "color": "#d8cf41", "style": "normal"}, {"source": "t_wind", "target": "m_fw_mode_manager", "color": "#4167d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_mode_manager", "color": "#a141d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_fw_mode_manager", "color": "#d84167", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_fw_mode_manager", "color": "#d84d41", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_mode_manager", "color": "#bb41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_mode_manager", "color": "#4dd841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_fw_mode_manager", "color": "#7bd841", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_fw_rate_control", "color": "#8841d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_fw_rate_control", "color": "#d841a8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_rate_control", "color": "#8ed841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_rate_control", "color": "#d8cf41", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_rate_control", "color": "#a141d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_rate_control", "color": "#4dd841", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_fw_rate_control", "color": "#4147d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_rate_control", "color": "#bb41d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_gimbal", "color": "#41d881", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_gimbal", "color": "#d87b41", "style": "normal"}, {"source": "t_gimbal_manager_set_attitude", "target": "m_gimbal", "color": "#6ed841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gimbal", "color": "#8ed841", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_gimbal", "color": "#d84141", "style": "normal"}, {"source": "t_gimbal_manager_set_manual_control", "target": "m_gimbal", "color": "#41d867", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gimbal", "color": "#d84d41", "style": "normal"}, {"source": "t_vehicle_roi", "target": "m_gimbal", "color": "#419bd8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_gimbal", "color": "#7bd841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_gimbal", "color": "#bb41d8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_gimbal", "color": "#4174d8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_gyro_calibration", "color": "#d84181", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_calibration", "color": "#41d861", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_gyro_calibration", "color": "#4dd841", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_gyro_calibration", "color": "#6e41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_land_detector", "color": "#416ed8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_land_detector", "color": "#d8bb41", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_land_detector", "color": "#41d841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_land_detector", "color": "#41d881", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_land_detector", "color": "#d8cf41", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_land_detector", "color": "#d8c841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_land_detector", "color": "#a141d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_land_detector", "color": "#d84167", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_land_detector", "color": "#d8415a", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_land_detector", "color": "#4dd841", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_land_detector", "color": "#c8d841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_land_detector", "color": "#7bd841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_land_detector", "color": "#d8417b", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_landing_target_estimator", "color": "#416ed8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_landing_target_estimator", "color": "#d87b41", "style": "normal"}, {"source": "t_irlock_report", "target": "m_landing_target_estimator", "color": "#41bbd8", "style": "normal"}, {"source": "t_battery_status", "target": "m_logger", "color": "#d841a8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_logger", "color": "#8ed841", "style": "normal"}, {"source": "t_ulog_stream_ack", "target": "m_logger", "color": "#d88841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_logger", "color": "#d84d41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_logger", "color": "#4dd841", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mag_bias_estimator", "color": "#d89441", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mag_bias_estimator", "color": "#4dd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_manual_control", "color": "#4dd841", "style": "normal"}, {"source": "t_action_request", "target": "m_manual_control", "color": "#d8416e", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_manual_control", "color": "#d84154", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_manual_control", "color": "#8ed841", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_mavlink", "color": "#d84141", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_mavlink", "color": "#d84741", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_mavlink", "color": "#d84d41", "style": "normal"}, {"source": "t_register_ext_component_reply", "target": "m_mavlink", "color": "#d85a41", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_mavlink", "color": "#d86141", "style": "normal"}, {"source": "t_debug_array", "target": "m_mavlink", "color": "#d86741", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_mavlink", "color": "#d87441", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mavlink", "color": "#d87b41", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_mavlink", "color": "#d88141", "style": "normal"}, {"source": "t_camera_status", "target": "m_mavlink", "color": "#d88e41", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mavlink", "color": "#d89441", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_mavlink", "color": "#d89b41", "style": "normal"}, {"source": "t_uavcan_parameter_value", "target": "m_mavlink", "color": "#d8a841", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_mavlink", "color": "#d8bb41", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_mavlink", "color": "#d8c241", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_mavlink", "color": "#d8c841", "style": "normal"}, {"source": "t_estimator_status", "target": "m_mavlink", "color": "#d8d541", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_mavlink", "color": "#d8cf41", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mavlink", "color": "#d5d841", "style": "normal"}, {"source": "t_esc_status", "target": "m_mavlink", "color": "#cfd841", "style": "normal"}, {"source": "t_tecs_status", "target": "m_mavlink", "color": "#b5d841", "style": "normal"}, {"source": "t_sensor_hygrometer", "target": "m_mavlink", "color": "#aed841", "style": "normal"}, {"source": "t_mount_orientation", "target": "m_mavlink", "color": "#a1d841", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_mavlink", "color": "#9bd841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mavlink", "color": "#8ed841", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_mavlink", "color": "#88d841", "style": "normal"}, {"source": "t_mission", "target": "m_mavlink", "color": "#81d841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_mavlink", "color": "#7bd841", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_mavlink", "color": "#61d841", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_mavlink", "color": "#54d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mavlink", "color": "#4dd841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_mavlink", "color": "#41d841", "style": "normal"}, {"source": "t_home_position", "target": "m_mavlink", "color": "#41d847", "style": "normal"}, {"source": "t_vehicle_odometry", "target": "m_mavlink", "color": "#41d874", "style": "normal"}, {"source": "t_dataman_response", "target": "m_mavlink", "color": "#41d86e", "style": "normal"}, {"source": "t_geofence_result", "target": "m_mavlink", "color": "#41d87b", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_mavlink", "color": "#41d881", "style": "normal"}, {"source": "t_cpuload", "target": "m_mavlink", "color": "#41d888", "style": "normal"}, {"source": "t_event", "target": "m_mavlink", "color": "#41d894", "style": "normal"}, {"source": "t_debug_vect", "target": "m_mavlink", "color": "#41d8a1", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_mavlink", "color": "#41d8a8", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_mavlink", "color": "#41d8b5", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_mavlink", "color": "#41d8bb", "style": "normal"}, {"source": "t_gimbal_manager_information", "target": "m_mavlink", "color": "#41d8c2", "style": "normal"}, {"source": "t_input_rc", "target": "m_mavlink", "color": "#41d8cf", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_mavlink", "color": "#41b5d8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_mavlink", "color": "#4174d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mavlink", "color": "#416ed8", "style": "normal"}, {"source": "t_wind", "target": "m_mavlink", "color": "#4167d8", "style": "normal"}, {"source": "t_vehicle_angular_velocity_groundtruth", "target": "m_mavlink", "color": "#4161d8", "style": "normal"}, {"source": "t_debug_value", "target": "m_mavlink", "color": "#415ad8", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mavlink", "color": "#4147d8", "style": "normal"}, {"source": "t_transponder_report", "target": "m_mavlink", "color": "#4741d8", "style": "normal"}, {"source": "t_orbit_status", "target": "m_mavlink", "color": "#7441d8", "style": "normal"}, {"source": "t_health_report", "target": "m_mavlink", "color": "#9441d8", "style": "normal"}, {"source": "t_figure_eight_status", "target": "m_mavlink", "color": "#9b41d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mavlink", "color": "#a141d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_mavlink", "color": "#d84154", "style": "normal"}, {"source": "t_mission_result", "target": "m_mavlink", "color": "#a841d8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_mavlink", "color": "#b541d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mavlink", "color": "#bb41d8", "style": "normal"}, {"source": "t_debug_key_value", "target": "m_mavlink", "color": "#c241d8", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mavlink", "color": "#cf41d8", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_mavlink", "color": "#d841cf", "style": "normal"}, {"source": "t_ulog_stream", "target": "m_mavlink", "color": "#d541d8", "style": "normal"}, {"source": "t_satellite_info", "target": "m_mavlink", "color": "#d841d5", "style": "normal"}, {"source": "t_gimbal_device_set_attitude", "target": "m_mavlink", "color": "#d841c8", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_mavlink", "color": "#d841c2", "style": "normal"}, {"source": "t_airspeed", "target": "m_mavlink", "color": "#d841b5", "style": "normal"}, {"source": "t_camera_capture", "target": "m_mavlink", "color": "#d841ae", "style": "normal"}, {"source": "t_battery_status", "target": "m_mavlink", "color": "#d841a8", "style": "normal"}, {"source": "t_gimbal_manager_status", "target": "m_mavlink", "color": "#d8419b", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_mavlink", "color": "#d84181", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_mavlink", "color": "#d8417b", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_mavlink", "color": "#d84174", "style": "normal"}, {"source": "t_open_drone_id_arm_status", "target": "m_mavlink", "color": "#d84161", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_mavlink", "color": "#417bd8", "style": "normal"}, {"source": "t_gimbal_v1_command", "target": "m_mavlink", "color": "#d8414d", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_mavlink", "color": "#d84147", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_att_control", "color": "#416ed8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mc_att_control", "color": "#d87b41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_att_control", "color": "#8ed841", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mc_att_control", "color": "#cf41d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_att_control", "color": "#a141d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mc_att_control", "color": "#d5d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_att_control", "color": "#4dd841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_att_control", "color": "#bb41d8", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#47d841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#8ed841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_autotune_attitude_control", "color": "#4dd841", "style": "normal"}, {"source": "t_actuator_controls_status_0", "target": "m_mc_autotune_attitude_control", "color": "#41a8d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_pos_control", "color": "#416ed8", "style": "normal"}, {"source": "t_vehicle_constraints", "target": "m_mc_pos_control", "color": "#41d84d", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_pos_control", "color": "#a141d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_mc_pos_control", "color": "#d84167", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_pos_control", "color": "#bb41d8", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_mc_rate_control", "color": "#8841d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_mc_rate_control", "color": "#d841a8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_rate_control", "color": "#8ed841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_rate_control", "color": "#a141d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_rate_control", "color": "#4dd841", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mc_rate_control", "color": "#4147d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_rate_control", "color": "#bb41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_navigator", "color": "#416ed8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_navigator", "color": "#41d881", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_navigator", "color": "#41d8bb", "style": "normal"}, {"source": "t_home_position", "target": "m_navigator", "color": "#41d847", "style": "normal"}, {"source": "t_wind", "target": "m_navigator", "color": "#4167d8", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_navigator", "color": "#54d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_navigator", "color": "#d84d41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_navigator", "color": "#4dd841", "style": "normal"}, {"source": "t_mission", "target": "m_navigator", "color": "#81d841", "style": "normal"}, {"source": "t_geofence_status", "target": "m_navigator", "color": "#d841bb", "style": "normal"}, {"source": "t_rtl_status", "target": "m_navigator", "color": "#418ed8", "style": "normal"}, {"source": "t_position_controller_landing_status", "target": "m_navigator", "color": "#d8b541", "style": "normal"}, {"source": "t_dataman_response", "target": "m_navigator", "color": "#41d86e", "style": "normal"}, {"source": "t_transponder_report", "target": "m_navigator", "color": "#4741d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_navigator", "color": "#bb41d8", "style": "normal"}, {"source": "t_rc_parameter_map", "target": "m_rc_update", "color": "#5ad841", "style": "normal"}, {"source": "t_input_rc", "target": "m_rc_update", "color": "#41d8cf", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_rc_update", "color": "#d84154", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_pos_control", "color": "#416ed8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_rover_pos_control", "color": "#41d881", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_pos_control", "color": "#d87b41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_pos_control", "color": "#8ed841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_pos_control", "color": "#a141d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_pos_control", "color": "#d84167", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_rover_pos_control", "color": "#d5d841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_pos_control", "color": "#7bd841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_sensors", "color": "#41d841", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_sensors", "color": "#41d8a8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_sensors", "color": "#d8417b", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_sensors", "color": "#d84181", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_sensors", "color": "#41d861", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_sensors", "color": "#a141d8", "style": "normal"}, {"source": "t_adc_report", "target": "m_sensors", "color": "#d84188", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_sensors", "color": "#d89441", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_sensors", "color": "#6e41d8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_sensors", "color": "#b541d8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_sensors", "color": "#d86141", "style": "normal"}, {"source": "t_sensor_optical_flow", "target": "m_sensors", "color": "#41a1d8", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out_sim", "color": "#d841a1", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out_sim", "color": "#8ed841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out_sim", "color": "#d8c841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out_sim", "color": "#41c8d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out_sim", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out_sim", "color": "#d84d41", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out_sim", "color": "#41aed8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out_sim", "color": "#4141d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out_sim", "color": "#8141d8", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_baro_sim", "color": "#d84147", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#9bd841", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#d84147", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_sensor_mag_sim", "color": "#d841cf", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_mag_sim", "color": "#d84147", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_simulator_sih", "color": "#61d841", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_simulator_sih", "color": "#d84741", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_temperature_compensation", "color": "#41d861", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_temperature_compensation", "color": "#d84d41", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_temperature_compensation", "color": "#d89441", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_temperature_compensation", "color": "#d89b41", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_temperature_compensation", "color": "#6e41d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_att_control", "color": "#d87b41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uuv_att_control", "color": "#8ed841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_att_control", "color": "#a141d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_uuv_att_control", "color": "#d5d841", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_uuv_att_control", "color": "#4147d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uuv_pos_control", "color": "#416ed8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_pos_control", "color": "#d87b41", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_pos_control", "color": "#a141d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_uuv_pos_control", "color": "#d84167", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_uxrce_dds_client", "color": "#d84174", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_vtol_att_control", "color": "#a141d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_vtol_att_control", "color": "#d84d41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_vtol_att_control", "color": "#4dd841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_vtol_att_control", "color": "#bb41d8", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_vtol_att_control", "color": "#d87441", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_vtol_att_control", "color": "#d87b41", "style": "normal"}, {"source": "t_home_position", "target": "m_vtol_att_control", "color": "#41d847", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_vtol_att_control", "color": "#416ed8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_vtol_att_control", "color": "#d8cf41", "style": "normal"}, {"source": "t_mc_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#414dd8", "style": "normal"}, {"source": "t_fw_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#c2d841", "style": "normal"}, {"source": "t_tecs_status", "target": "m_vtol_att_control", "color": "#b5d841", "style": "normal"}, {"source": "t_action_request", "target": "m_vtol_att_control", "color": "#d8416e", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_vtol_att_control", "color": "#7bd841", "style": "normal"}]} \ No newline at end of file diff --git a/docs/public/middleware/graph_px4_fmu-v5x.json b/docs/public/middleware/graph_px4_fmu-v5x.json index 95dd212785..e356726e0b 100644 --- a/docs/public/middleware/graph_px4_fmu-v5x.json +++ b/docs/public/middleware/graph_px4_fmu-v5x.json @@ -1 +1 @@ -{"nodes": [{"id": "m_fw_autotune_attitude_control", "name": "fw_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_autotune_attitude_control", "name": "mc_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_landing_target_estimator", "name": "landing_target_estimator", "type": "Module", "color": "#666666"}, {"id": "m_temperature_compensation", "name": "temperature_compensation", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_serial", "name": "lightware_laser_serial", "type": "Module", "color": "#666666"}, {"id": "m_pm_selector_auterion", "name": "pm_selector_auterion", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_i2c", "name": "lightware_laser_i2c", "type": "Module", "color": "#666666"}, {"id": "m_flight_mode_manager", "name": "flight_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_mag_bias_estimator", "name": "mag_bias_estimator", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_is31fl3195", "name": "rgbled_is31fl3195", "type": "Module", "color": "#666666"}, {"id": "m_airspeed_selector", "name": "airspeed_selector", "type": "Module", "color": "#666666"}, {"id": "m_control_allocator", "name": "control_allocator", "type": "Module", "color": "#666666"}, {"id": "m_payload_deliverer", "name": "payload_deliverer", "type": "Module", "color": "#666666"}, {"id": "m_cdcacm_autostart", "name": "cdcacm_autostart", "type": "Module", "color": "#666666"}, {"id": "m_gyro_calibration", "name": "gyro_calibration", "type": "Module", "color": "#666666"}, {"id": "m_uxrce_dds_client", "name": "uxrce_dds_client", "type": "Module", "color": "#666666"}, {"id": "m_vtol_att_control", "name": "vtol_att_control", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_ncp5623c", "name": "rgbled_ncp5623c", "type": "Module", "color": "#666666"}, {"id": "m_frsky_telemetry", "name": "frsky_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_camera_feedback", "name": "camera_feedback", "type": "Module", "color": "#666666"}, {"id": "m_fw_rate_control", "name": "fw_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_rate_control", "name": "mc_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_sensor_baro_sim", "name": "sensor_baro_sim", "type": "Module", "color": "#666666"}, {"id": "m_camera_capture", "name": "camera_capture", "type": "Module", "color": "#666666"}, {"id": "m_camera_trigger", "name": "camera_trigger", "type": "Module", "color": "#666666"}, {"id": "m_ulanding_radar", "name": "ulanding_radar", "type": "Module", "color": "#666666"}, {"id": "m_hott_telemetry", "name": "hott_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_battery_status", "name": "battery_status", "type": "Module", "color": "#666666"}, {"id": "m_fw_att_control", "name": "fw_att_control", "type": "Module", "color": "#666666"}, {"id": "m_fw_pos_control", "name": "fw_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_manual_control", "name": "manual_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_att_control", "name": "mc_att_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_pos_control", "name": "mc_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_sensor_gps_sim", "name": "sensor_gps_sim", "type": "Module", "color": "#666666"}, {"id": "m_sensor_mag_sim", "name": "sensor_mag_sim", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_lp5562", "name": "rgbled_lp5562", "type": "Module", "color": "#666666"}, {"id": "m_safety_button", "name": "safety_button", "type": "Module", "color": "#666666"}, {"id": "m_land_detector", "name": "land_detector", "type": "Module", "color": "#666666"}, {"id": "m_simulator_sih", "name": "simulator_sih", "type": "Module", "color": "#666666"}, {"id": "m_actuator_test", "name": "actuator_test", "type": "Module", "color": "#666666"}, {"id": "m_tune_control", "name": "tune_control", "type": "Module", "color": "#666666"}, {"id": "m_esc_battery", "name": "esc_battery", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out_sim", "name": "pwm_out_sim", "type": "Module", "color": "#666666"}, {"id": "m_led_control", "name": "led_control", "type": "Module", "color": "#666666"}, {"id": "m_batt_smbus", "name": "batt_smbus", "type": "Module", "color": "#666666"}, {"id": "m_teraranger", "name": "teraranger", "type": "Module", "color": "#666666"}, {"id": "m_tone_alarm", "name": "tone_alarm", "type": "Module", "color": "#666666"}, {"id": "m_send_event", "name": "send_event", "type": "Module", "color": "#666666"}, {"id": "m_board_adc", "name": "board_adc", "type": "Module", "color": "#666666"}, {"id": "m_ms5525dso", "name": "ms5525dso", "type": "Module", "color": "#666666"}, {"id": "m_adis16448", "name": "adis16448", "type": "Module", "color": "#666666"}, {"id": "m_adis16507", "name": "adis16507", "type": "Module", "color": "#666666"}, {"id": "m_icm42688p", "name": "icm42688p", "type": "Module", "color": "#666666"}, {"id": "m_lsm303agr", "name": "lsm303agr", "type": "Module", "color": "#666666"}, {"id": "m_mmc5983ma", "name": "mmc5983ma", "type": "Module", "color": "#666666"}, {"id": "m_thoneflow", "name": "thoneflow", "type": "Module", "color": "#666666"}, {"id": "m_commander", "name": "commander", "type": "Module", "color": "#666666"}, {"id": "m_navigator", "name": "navigator", "type": "Module", "color": "#666666"}, {"id": "m_rc_update", "name": "rc_update", "type": "Module", "color": "#666666"}, {"id": "m_ms4525do", "name": "ms4525do", "type": "Module", "color": "#666666"}, {"id": "m_icm20602", "name": "icm20602", "type": "Module", "color": "#666666"}, {"id": "m_icm20649", "name": "icm20649", "type": "Module", "color": "#666666"}, {"id": "m_icm20948", "name": "icm20948", "type": "Module", "color": "#666666"}, {"id": "m_iim42652", "name": "iim42652", "type": "Module", "color": "#666666"}, {"id": "m_qmc5883l", "name": "qmc5883l", "type": "Module", "color": "#666666"}, {"id": "m_vcm1193l", "name": "vcm1193l", "type": "Module", "color": "#666666"}, {"id": "m_rc_input", "name": "rc_input", "type": "Module", "color": "#666666"}, {"id": "m_load_mon", "name": "load_mon", "type": "Module", "color": "#666666"}, {"id": "m_ads1115", "name": "ads1115", "type": "Module", "color": "#666666"}, {"id": "m_cm8jl65", "name": "cm8jl65", "type": "Module", "color": "#666666"}, {"id": "m_tf02pro", "name": "tf02pro", "type": "Module", "color": "#666666"}, {"id": "m_vl53l0x", "name": "vl53l0x", "type": "Module", "color": "#666666"}, {"id": "m_vl53l1x", "name": "vl53l1x", "type": "Module", "color": "#666666"}, {"id": "m_ak09916", "name": "ak09916", "type": "Module", "color": "#666666"}, {"id": "m_hmc5883", "name": "hmc5883", "type": "Module", "color": "#666666"}, {"id": "m_ist8308", "name": "ist8308", "type": "Module", "color": "#666666"}, {"id": "m_ist8310", "name": "ist8310", "type": "Module", "color": "#666666"}, {"id": "m_lis3mdl", "name": "lis3mdl", "type": "Module", "color": "#666666"}, {"id": "m_iis2mdc", "name": "iis2mdc", "type": "Module", "color": "#666666"}, {"id": "m_paa3905", "name": "paa3905", "type": "Module", "color": "#666666"}, {"id": "m_paw3902", "name": "paw3902", "type": "Module", "color": "#666666"}, {"id": "m_pmw3901", "name": "pmw3901", "type": "Module", "color": "#666666"}, {"id": "m_px4flow", "name": "px4flow", "type": "Module", "color": "#666666"}, {"id": "m_msp_osd", "name": "msp_osd", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out", "name": "pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_crsf_rc", "name": "crsf_rc", "type": "Module", "color": "#666666"}, {"id": "m_ghst_rc", "name": "ghst_rc", "type": "Module", "color": "#666666"}, {"id": "m_sbus_rc", "name": "sbus_rc", "type": "Module", "color": "#666666"}, {"id": "m_dataman", "name": "dataman", "type": "Module", "color": "#666666"}, {"id": "m_mavlink", "name": "mavlink", "type": "Module", "color": "#666666"}, {"id": "m_sensors", "name": "sensors", "type": "Module", "color": "#666666"}, {"id": "m_bmp388", "name": "bmp388", "type": "Module", "color": "#666666"}, {"id": "m_ms5611", "name": "ms5611", "type": "Module", "color": "#666666"}, {"id": "m_ll40ls", "name": "ll40ls", "type": "Module", "color": "#666666"}, {"id": "m_tfmini", "name": "tfmini", "type": "Module", "color": "#666666"}, {"id": "m_heater", "name": "heater", "type": "Module", "color": "#666666"}, {"id": "m_bmi088", "name": "bmi088", "type": "Module", "color": "#666666"}, {"id": "m_irlock", "name": "irlock", "type": "Module", "color": "#666666"}, {"id": "m_rgbled", "name": "rgbled", "type": "Module", "color": "#666666"}, {"id": "m_ak8963", "name": "ak8963", "type": "Module", "color": "#666666"}, {"id": "m_bmm150", "name": "bmm150", "type": "Module", "color": "#666666"}, {"id": "m_rm3100", "name": "rm3100", "type": "Module", "color": "#666666"}, {"id": "m_ina226", "name": "ina226", "type": "Module", "color": "#666666"}, {"id": "m_ina228", "name": "ina228", "type": "Module", "color": "#666666"}, {"id": "m_ina238", "name": "ina238", "type": "Module", "color": "#666666"}, {"id": "m_dsm_rc", "name": "dsm_rc", "type": "Module", "color": "#666666"}, {"id": "m_batmon", "name": "batmon", "type": "Module", "color": "#666666"}, {"id": "m_uavcan", "name": "uavcan", "type": "Module", "color": "#666666"}, {"id": "m_gimbal", "name": "gimbal", "type": "Module", "color": "#666666"}, {"id": "m_logger", "name": "logger", "type": "Module", "color": "#666666"}, {"id": "m_sdp3x", "name": "sdp3x", "type": "Module", "color": "#666666"}, {"id": "m_dshot", "name": "dshot", "type": "Module", "color": "#666666"}, {"id": "m_px4io", "name": "px4io", "type": "Module", "color": "#666666"}, {"id": "m_ekf2", "name": "ekf2", "type": "Module", "color": "#666666"}, {"id": "m_gps", "name": "gps", "type": "Module", "color": "#666666"}, {"id": "m_bst", "name": "bst", "type": "Module", "color": "#666666"}, {"id": "t_vehicle_angular_velocity_groundtruth", "name": "vehicle_angular_velocity_groundtruth", "type": "topic", "color": "#7541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor_mode_change_request", "name": "distance_sensor_mode_change_request", "type": "topic", "color": "#d86241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position_groundtruth", "name": "vehicle_global_position_groundtruth", "type": "topic", "color": "#d84184", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_groundtruth", "name": "vehicle_local_position_groundtruth", "type": "topic", "color": "#d84141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_landing_status", "name": "position_controller_landing_status", "type": "topic", "color": "#41d8bd", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_manual_control", "name": "gimbal_manager_set_manual_control", "type": "topic", "color": "#8941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_autotune_attitude_control_status", "name": "autotune_attitude_control_status", "type": "topic", "color": "#4187d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_setpoint", "name": "vehicle_local_position_setpoint", "type": "topic", "color": "#b9d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_attitude_status", "name": "gimbal_device_attitude_status", "type": "topic", "color": "#c6d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_groundtruth", "name": "vehicle_attitude_groundtruth", "type": "topic", "color": "#41d857", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mc_virtual_attitude_setpoint", "name": "mc_virtual_attitude_setpoint", "type": "topic", "color": "#41d86c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_register_ext_component_reply", "name": "register_ext_component_reply", "type": "topic", "color": "#41bdd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fw_virtual_attitude_setpoint", "name": "fw_virtual_attitude_setpoint", "type": "topic", "color": "#4179d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_attitude", "name": "gimbal_manager_set_attitude", "type": "topic", "color": "#4c41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_status", "name": "position_controller_status", "type": "topic", "color": "#89d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_information", "name": "gimbal_manager_information", "type": "topic", "color": "#41afd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_set_attitude", "name": "gimbal_device_set_attitude", "type": "topic", "color": "#9041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_controls_status_0", "name": "actuator_controls_status_0", "type": "topic", "color": "#d84162", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorControlsStatus.msg"}, {"id": "t_position_setpoint_triplet", "name": "position_setpoint_triplet", "type": "topic", "color": "#d89241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_operator_id", "name": "open_drone_id_operator_id", "type": "topic", "color": "#d8a641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_setpoint", "name": "vehicle_attitude_setpoint", "type": "topic", "color": "#41d872", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_information", "name": "gimbal_device_information", "type": "topic", "color": "#41d8a2", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_selector_status", "name": "estimator_selector_status", "type": "topic", "color": "#d84147", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_request", "name": "uavcan_parameter_request", "type": "topic", "color": "#6ed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_control_allocator_status", "name": "control_allocator_status", "type": "topic", "color": "#59d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_arm_status", "name": "open_drone_id_arm_status", "type": "topic", "color": "#418ed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tiltrotor_extra_controls", "name": "tiltrotor_extra_controls", "type": "topic", "color": "#416cd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failure_detector_status", "name": "failure_detector_status", "type": "topic", "color": "#d88441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position", "name": "vehicle_global_position", "type": "topic", "color": "#cdd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_thrust_setpoint", "name": "vehicle_thrust_setpoint", "type": "topic", "color": "#82d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleThrustSetpoint.msg"}, {"id": "t_flight_phase_estimation", "name": "flight_phase_estimation", "type": "topic", "color": "#41d8d1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_visual_odometry", "name": "vehicle_visual_odometry", "type": "topic", "color": "#4165d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_setpoint", "name": "manual_control_setpoint", "type": "topic", "color": "#6741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_torque_setpoint", "name": "vehicle_torque_setpoint", "type": "topic", "color": "#b241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleTorqueSetpoint.msg"}, {"id": "t_manual_control_switches", "name": "manual_control_switches", "type": "topic", "color": "#d841c8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_launch_detection_status", "name": "launch_detection_status", "type": "topic", "color": "#d841a0", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position", "name": "vehicle_local_position", "type": "topic", "color": "#75d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_rates_setpoint", "name": "vehicle_rates_setpoint", "type": "topic", "color": "#6041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_value", "name": "uavcan_parameter_value", "type": "topic", "color": "#bf41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status_flags", "name": "estimator_status_flags", "type": "topic", "color": "#d84199", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_differential_pressure", "name": "differential_pressure", "type": "topic", "color": "#d8a041", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_offboard_control_mode", "name": "offboard_control_mode", "type": "topic", "color": "#a4d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_status", "name": "gimbal_manager_status", "type": "topic", "color": "#41d880", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_sensor_bias", "name": "estimator_sensor_bias", "type": "topic", "color": "#41d1d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_land_detected", "name": "vehicle_land_detected", "type": "topic", "color": "#4157d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_self_id", "name": "open_drone_id_self_id", "type": "topic", "color": "#a441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs_sim", "name": "actuator_outputs_sim", "type": "topic", "color": "#d8cf41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_vehicle_control_mode", "name": "vehicle_control_mode", "type": "topic", "color": "#4541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_servos_trim", "name": "actuator_servos_trim", "type": "topic", "color": "#ab41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_system", "name": "open_drone_id_system", "type": "topic", "color": "#d841d6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_target_pose", "name": "landing_target_pose", "type": "topic", "color": "#d88b41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command_ack", "name": "vehicle_command_ack", "type": "topic", "color": "#d8ad41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_figure_eight_status", "name": "figure_eight_status", "type": "topic", "color": "#d8d641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vtol_vehicle_status", "name": "vtol_vehicle_status", "type": "topic", "color": "#60d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_trajectory_setpoint", "name": "trajectory_setpoint", "type": "topic", "color": "#d841b4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_constraints", "name": "vehicle_constraints", "type": "topic", "color": "#d841a6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_optical_flow", "name": "sensor_optical_flow", "type": "topic", "color": "#d84169", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu_status", "name": "vehicle_imu_status", "type": "topic", "color": "#45d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear_wheel", "name": "landing_gear_wheel", "type": "topic", "color": "#41d879", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensors_status_imu", "name": "sensors_status_imu", "type": "topic", "color": "#4172d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_power_button_state", "name": "power_button_state", "type": "topic", "color": "#5341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed_validated", "name": "airspeed_validated", "type": "topic", "color": "#5941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_transponder_report", "name": "transponder_report", "type": "topic", "color": "#d441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_spoilers_setpoint", "name": "spoilers_setpoint", "type": "topic", "color": "#d85c41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_mount_orientation", "name": "mount_orientation", "type": "topic", "color": "#41d89b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_correction", "name": "sensor_correction", "type": "topic", "color": "#9d41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_v1_command", "name": "gimbal_v1_command", "type": "topic", "color": "#cd41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_time_estimate", "name": "rtl_time_estimate", "type": "topic", "color": "#d841cf", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_response", "name": "dataman_response", "type": "topic", "color": "#d86941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status", "name": "estimator_status", "type": "topic", "color": "#67d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude", "name": "vehicle_attitude", "type": "topic", "color": "#41d850", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_navigator_status", "name": "navigator_status", "type": "topic", "color": "#41d887", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs", "name": "actuator_outputs", "type": "topic", "color": "#41b6d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_telemetry_status", "name": "telemetry_status", "type": "topic", "color": "#415ed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rc_parameter_map", "name": "rc_parameter_map", "type": "topic", "color": "#414ad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_odometry", "name": "vehicle_odometry", "type": "topic", "color": "#d8417e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_selection", "name": "sensor_selection", "type": "topic", "color": "#d84170", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gps_inject_data", "name": "gps_inject_data", "type": "topic", "color": "#d89941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream_ack", "name": "ulog_stream_ack", "type": "topic", "color": "#d8c241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_key_value", "name": "debug_key_value", "type": "topic", "color": "#d8c841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command", "name": "vehicle_command", "type": "topic", "color": "#41d894", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_controls", "name": "gimbal_controls", "type": "topic", "color": "#41d8af", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_result", "name": "geofence_result", "type": "topic", "color": "#41d8b6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_status", "name": "geofence_status", "type": "topic", "color": "#41d8c4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_combined", "name": "sensor_combined", "type": "topic", "color": "#4194d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_request", "name": "dataman_request", "type": "topic", "color": "#4143d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_motors", "name": "actuator_motors", "type": "topic", "color": "#8241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor", "name": "distance_sensor", "type": "topic", "color": "#d841ad", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flaps_setpoint", "name": "flaps_setpoint", "type": "topic", "color": "#d84741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_actuator_armed", "name": "actuator_armed", "type": "topic", "color": "#d84e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_battery_status", "name": "battery_status", "type": "topic", "color": "#d87741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_status", "name": "vehicle_status", "type": "topic", "color": "#d8b441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failsafe_flags", "name": "failsafe_flags", "type": "topic", "color": "#90d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_takeoff_status", "name": "takeoff_status", "type": "topic", "color": "#41d843", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission_result", "name": "mission_result", "type": "topic", "color": "#41d8a9", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_action_request", "name": "action_request", "type": "topic", "color": "#41a2d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_satellite_info", "name": "satellite_info", "type": "topic", "color": "#6e41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_capture", "name": "camera_capture", "type": "topic", "color": "#9741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_trigger", "name": "camera_trigger", "type": "topic", "color": "#c641d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_test", "name": "actuator_test", "type": "topic", "color": "#d87041", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_safety_button", "name": "safety_button", "type": "topic", "color": "#d8bb41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_irlock_report", "name": "irlock_report", "type": "topic", "color": "#97d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_status", "name": "camera_status", "type": "topic", "color": "#53d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_health_report", "name": "health_report", "type": "topic", "color": "#41d8d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_home_position", "name": "home_position", "type": "topic", "color": "#d841bb", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_logger_status", "name": "logger_status", "type": "topic", "color": "#d84192", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear", "name": "landing_gear", "type": "topic", "color": "#bfd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_accel", "name": "sensor_accel", "type": "topic", "color": "#41cbd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_orbit_status", "name": "orbit_status", "type": "topic", "color": "#419bd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tune_control", "name": "tune_control", "type": "topic", "color": "#d8418b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_system_power", "name": "system_power", "type": "topic", "color": "#d8415c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_px4io_status", "name": "px4io_status", "type": "topic", "color": "#d84155", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu", "name": "vehicle_imu", "type": "topic", "color": "#d85541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_value", "name": "debug_value", "type": "topic", "color": "#9dd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro", "name": "sensor_gyro", "type": "topic", "color": "#7bd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tecs_status", "name": "tecs_status", "type": "topic", "color": "#41d865", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream", "name": "ulog_stream", "type": "topic", "color": "#41d8cb", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_array", "name": "debug_array", "type": "topic", "color": "#4180d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_baro", "name": "sensor_baro", "type": "topic", "color": "#7b41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_roi", "name": "vehicle_roi", "type": "topic", "color": "#d841c2", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_led_control", "name": "led_control", "type": "topic", "color": "#d8414e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_vect", "name": "debug_vect", "type": "topic", "color": "#d87e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_esc_status", "name": "esc_status", "type": "topic", "color": "#abd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gps", "name": "sensor_gps", "type": "topic", "color": "#4cd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/SensorGps.msg"}, {"id": "t_sensor_mag", "name": "sensor_mag", "type": "topic", "color": "#41d84a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_status", "name": "rtl_status", "type": "topic", "color": "#4150d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_adc_report", "name": "adc_report", "type": "topic", "color": "#d84177", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_input_rc", "name": "input_rc", "type": "topic", "color": "#41d85e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed", "name": "airspeed", "type": "topic", "color": "#41d88e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource1d.msg"}, {"id": "t_cpuload", "name": "cpuload", "type": "topic", "color": "#d4d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gripper", "name": "gripper", "type": "topic", "color": "#41c4d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission", "name": "mission", "type": "topic", "color": "#b941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_event", "name": "event", "type": "topic", "color": "#41a9d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_wind", "name": "wind", "type": "topic", "color": "#b2d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/Wind.msg"}], "links": [{"source": "m_ads1115", "target": "t_adc_report", "color": "#d84177", "style": "dashed"}, {"source": "m_board_adc", "target": "t_system_power", "color": "#d8415c", "style": "dashed"}, {"source": "m_board_adc", "target": "t_adc_report", "color": "#d84177", "style": "dashed"}, {"source": "m_bmp388", "target": "t_sensor_baro", "color": "#7b41d8", "style": "dashed"}, {"source": "m_ms5611", "target": "t_sensor_baro", "color": "#7b41d8", "style": "dashed"}, {"source": "m_batt_smbus", "target": "t_battery_status", "color": "#d87741", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_camera_trigger", "color": "#c641d8", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_vehicle_command_ack", "color": "#d8ad41", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command", "color": "#41d894", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_camera_trigger", "color": "#c641d8", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command_ack", "color": "#d8ad41", "style": "dashed"}, {"source": "m_ms4525do", "target": "t_differential_pressure", "color": "#d8a041", "style": "dashed"}, {"source": "m_ms5525dso", "target": "t_differential_pressure", "color": "#d8a041", "style": "dashed"}, {"source": "m_sdp3x", "target": "t_differential_pressure", "color": "#d8a041", "style": "dashed"}, {"source": "m_cm8jl65", "target": "t_distance_sensor", "color": "#d841ad", "style": "dashed"}, {"source": "m_lightware_laser_i2c", "target": "t_distance_sensor", "color": "#d841ad", "style": "dashed"}, {"source": "m_lightware_laser_serial", "target": "t_distance_sensor", "color": "#d841ad", "style": "dashed"}, {"source": "m_ll40ls", "target": "t_distance_sensor", "color": "#d841ad", "style": "dashed"}, {"source": "m_teraranger", "target": "t_distance_sensor", "color": "#d841ad", "style": "dashed"}, {"source": "m_tf02pro", "target": "t_distance_sensor", "color": "#d841ad", "style": "dashed"}, {"source": "m_tfmini", "target": "t_distance_sensor", "color": "#d841ad", "style": "dashed"}, {"source": "m_ulanding_radar", "target": "t_distance_sensor", "color": "#d841ad", "style": "dashed"}, {"source": "m_vl53l0x", "target": "t_distance_sensor", "color": "#d841ad", "style": "dashed"}, {"source": "m_vl53l1x", "target": "t_distance_sensor", "color": "#d841ad", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_test", "color": "#d87041", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_armed", "color": "#d84e41", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_outputs", "color": "#41b6d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_motors", "color": "#8241d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_esc_status", "color": "#abd841", "style": "dashed"}, {"source": "m_dshot", "target": "t_vehicle_command_ack", "color": "#d8ad41", "style": "dashed"}, {"source": "m_gps", "target": "t_satellite_info", "color": "#6e41d8", "style": "dashed"}, {"source": "m_gps", "target": "t_gps_inject_data", "color": "#d89941", "style": "dashed"}, {"source": "m_gps", "target": "t_sensor_gps", "color": "#4cd841", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_mag", "color": "#41d84a", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_gyro", "color": "#7bd841", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_baro", "color": "#7b41d8", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_accel", "color": "#41cbd8", "style": "dashed"}, {"source": "m_adis16507", "target": "t_sensor_gyro", "color": "#7bd841", "style": "dashed"}, {"source": "m_adis16507", "target": "t_sensor_accel", "color": "#41cbd8", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_gyro", "color": "#7bd841", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_accel", "color": "#41cbd8", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_gyro", "color": "#7bd841", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_accel", "color": "#41cbd8", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_gyro", "color": "#7bd841", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_accel", "color": "#41cbd8", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_mag", "color": "#41d84a", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_gyro", "color": "#7bd841", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_accel", "color": "#41cbd8", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_gyro", "color": "#7bd841", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_accel", "color": "#41cbd8", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_gyro", "color": "#7bd841", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_accel", "color": "#41cbd8", "style": "dashed"}, {"source": "m_irlock", "target": "t_irlock_report", "color": "#97d841", "style": "dashed"}, {"source": "m_ak09916", "target": "t_sensor_mag", "color": "#41d84a", "style": "dashed"}, {"source": "m_ak8963", "target": "t_sensor_mag", "color": "#41d84a", "style": "dashed"}, {"source": "m_bmm150", "target": "t_sensor_mag", "color": "#41d84a", "style": "dashed"}, {"source": "m_hmc5883", "target": "t_sensor_mag", "color": "#41d84a", "style": "dashed"}, {"source": "m_ist8308", "target": "t_sensor_mag", "color": "#41d84a", "style": "dashed"}, {"source": "m_ist8310", "target": "t_sensor_mag", "color": "#41d84a", "style": "dashed"}, {"source": "m_lis3mdl", "target": "t_sensor_mag", "color": "#41d84a", "style": "dashed"}, {"source": "m_lsm303agr", "target": "t_sensor_mag", "color": "#41d84a", "style": "dashed"}, {"source": "m_mmc5983ma", "target": "t_sensor_mag", "color": "#41d84a", "style": "dashed"}, {"source": "m_qmc5883l", "target": "t_sensor_mag", "color": "#41d84a", "style": "dashed"}, {"source": "m_rm3100", "target": "t_sensor_mag", "color": "#41d84a", "style": "dashed"}, {"source": "m_iis2mdc", "target": "t_sensor_mag", "color": "#41d84a", "style": "dashed"}, {"source": "m_vcm1193l", "target": "t_sensor_mag", "color": "#41d84a", "style": "dashed"}, {"source": "m_paa3905", "target": "t_sensor_optical_flow", "color": "#d84169", "style": "dashed"}, {"source": "m_paw3902", "target": "t_sensor_optical_flow", "color": "#d84169", "style": "dashed"}, {"source": "m_pmw3901", "target": "t_sensor_optical_flow", "color": "#d84169", "style": "dashed"}, {"source": "m_px4flow", "target": "t_sensor_optical_flow", "color": "#d84169", "style": "dashed"}, {"source": "m_thoneflow", "target": "t_sensor_optical_flow", "color": "#d84169", "style": "dashed"}, {"source": "m_ina226", "target": "t_battery_status", "color": "#d87741", "style": "dashed"}, {"source": "m_ina228", "target": "t_battery_status", "color": "#d87741", "style": "dashed"}, {"source": "m_ina238", "target": "t_battery_status", "color": "#d87741", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_test", "color": "#d87041", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_armed", "color": "#d84e41", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_outputs", "color": "#41b6d8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_motors", "color": "#8241d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_test", "color": "#d87041", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_armed", "color": "#d84e41", "style": "dashed"}, {"source": "m_px4io", "target": "t_safety_button", "color": "#d8bb41", "style": "dashed"}, {"source": "m_px4io", "target": "t_px4io_status", "color": "#d84155", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_outputs", "color": "#41b6d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_input_rc", "color": "#41d85e", "style": "dashed"}, {"source": "m_px4io", "target": "t_tune_control", "color": "#d8418b", "style": "dashed"}, {"source": "m_px4io", "target": "t_led_control", "color": "#d8414e", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_motors", "color": "#8241d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command", "color": "#41d894", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command_ack", "color": "#d8ad41", "style": "dashed"}, {"source": "m_crsf_rc", "target": "t_input_rc", "color": "#41d85e", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_vehicle_command", "color": "#41d894", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_input_rc", "color": "#41d85e", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_vehicle_command_ack", "color": "#d8ad41", "style": "dashed"}, {"source": "m_ghst_rc", "target": "t_input_rc", "color": "#41d85e", "style": "dashed"}, {"source": "m_sbus_rc", "target": "t_input_rc", "color": "#41d85e", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command", "color": "#41d894", "style": "dashed"}, {"source": "m_rc_input", "target": "t_input_rc", "color": "#41d85e", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command_ack", "color": "#d8ad41", "style": "dashed"}, {"source": "m_safety_button", "target": "t_vehicle_command", "color": "#41d894", "style": "dashed"}, {"source": "m_safety_button", "target": "t_safety_button", "color": "#d8bb41", "style": "dashed"}, {"source": "m_safety_button", "target": "t_led_control", "color": "#d8414e", "style": "dashed"}, {"source": "m_safety_button", "target": "t_tune_control", "color": "#d8418b", "style": "dashed"}, {"source": "m_batmon", "target": "t_battery_status", "color": "#d87741", "style": "dashed"}, {"source": "m_hott_telemetry", "target": "t_esc_status", "color": "#abd841", "style": "dashed"}, {"source": "m_tone_alarm", "target": "t_tune_control", "color": "#d8418b", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_test", "color": "#d87041", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_armed", "color": "#d84e41", "style": "dashed"}, {"source": "m_uavcan", "target": "t_safety_button", "color": "#d8bb41", "style": "dashed"}, {"source": "m_uavcan", "target": "t_uavcan_parameter_value", "color": "#bf41d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_outputs", "color": "#41b6d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command", "color": "#41d894", "style": "dashed"}, {"source": "m_uavcan", "target": "t_tune_control", "color": "#d8418b", "style": "dashed"}, {"source": "m_uavcan", "target": "t_open_drone_id_arm_status", "color": "#418ed8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_distance_sensor", "color": "#d841ad", "style": "dashed"}, {"source": "m_uavcan", "target": "t_led_control", "color": "#d8414e", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_motors", "color": "#8241d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_esc_status", "color": "#abd841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command_ack", "color": "#d8ad41", "style": "dashed"}, {"source": "m_airspeed_selector", "target": "t_airspeed_validated", "color": "#5941d8", "style": "dashed"}, {"source": "m_battery_status", "target": "t_battery_status", "color": "#d87741", "style": "dashed"}, {"source": "m_camera_feedback", "target": "t_camera_capture", "color": "#9741d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_status", "color": "#d8b441", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_test", "color": "#d87041", "style": "dashed"}, {"source": "m_commander", "target": "t_home_position", "color": "#d841bb", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_armed", "color": "#d84e41", "style": "dashed"}, {"source": "m_commander", "target": "t_failsafe_flags", "color": "#90d841", "style": "dashed"}, {"source": "m_commander", "target": "t_register_ext_component_reply", "color": "#41bdd8", "style": "dashed"}, {"source": "m_commander", "target": "t_tune_control", "color": "#d8418b", "style": "dashed"}, {"source": "m_commander", "target": "t_event", "color": "#41a9d8", "style": "dashed"}, {"source": "m_commander", "target": "t_failure_detector_status", "color": "#d88441", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_control_mode", "color": "#4541d8", "style": "dashed"}, {"source": "m_commander", "target": "t_led_control", "color": "#d8414e", "style": "dashed"}, {"source": "m_commander", "target": "t_power_button_state", "color": "#5341d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command", "color": "#41d894", "style": "dashed"}, {"source": "m_commander", "target": "t_health_report", "color": "#41d8d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command_ack", "color": "#d8ad41", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos_trim", "color": "#ab41d8", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_control_allocator_status", "color": "#59d841", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_motors", "color": "#8241d8", "style": "dashed"}, {"source": "m_dataman", "target": "t_dataman_response", "color": "#d86941", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_local_position", "color": "#75d841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status", "color": "#67d841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_attitude", "color": "#41d850", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_command_ack", "color": "#d8ad41", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status_flags", "color": "#d84199", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_odometry", "color": "#d8417e", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_global_position", "color": "#cdd841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_sensor_selection", "color": "#d84170", "style": "dashed"}, {"source": "m_ekf2", "target": "t_wind", "color": "#b2d841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_selector_status", "color": "#d84147", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_sensor_bias", "color": "#41d1d8", "style": "dashed"}, {"source": "m_esc_battery", "target": "t_battery_status", "color": "#d87741", "style": "dashed"}, {"source": "m_send_event", "target": "t_led_control", "color": "#d8414e", "style": "dashed"}, {"source": "m_send_event", "target": "t_tune_control", "color": "#d8418b", "style": "dashed"}, {"source": "m_send_event", "target": "t_vehicle_command_ack", "color": "#d8ad41", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_landing_gear", "color": "#bfd841", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_vehicle_constraints", "color": "#d841a6", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_trajectory_setpoint", "color": "#d841b4", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_vehicle_rates_setpoint", "color": "#6041d8", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_landing_gear_wheel", "color": "#41d879", "style": "dashed"}, {"source": "m_fw_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#4187d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_flaps_setpoint", "color": "#d84741", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_landing_gear", "color": "#bfd841", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_position_controller_status", "color": "#89d841", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#b9d841", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_position_controller_landing_status", "color": "#41d8bd", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_tecs_status", "color": "#41d865", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_spoilers_setpoint", "color": "#d85c41", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_orbit_status", "color": "#419bd8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_figure_eight_status", "color": "#d8d641", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_flight_phase_estimation", "color": "#41d8d1", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_launch_detection_status", "color": "#d841a0", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#6041d8", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_flaps_setpoint", "color": "#d84741", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_spoilers_setpoint", "color": "#d85c41", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_controls", "color": "#41d8af", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command_ack", "color": "#d8ad41", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_information", "color": "#41afd8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_v1_command", "color": "#cd41d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_set_attitude", "color": "#9041d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command", "color": "#41d894", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_attitude_status", "color": "#c6d841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_status", "color": "#41d880", "style": "dashed"}, {"source": "m_gimbal", "target": "t_mount_orientation", "color": "#41d89b", "style": "dashed"}, {"source": "m_land_detector", "target": "t_vehicle_land_detected", "color": "#4157d8", "style": "dashed"}, {"source": "m_landing_target_estimator", "target": "t_landing_target_pose", "color": "#d88b41", "style": "dashed"}, {"source": "m_load_mon", "target": "t_cpuload", "color": "#d4d841", "style": "dashed"}, {"source": "m_logger", "target": "t_ulog_stream", "color": "#41d8cb", "style": "dashed"}, {"source": "m_logger", "target": "t_logger_status", "color": "#d84192", "style": "dashed"}, {"source": "m_logger", "target": "t_vehicle_command_ack", "color": "#d8ad41", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_setpoint", "color": "#6741d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_status", "color": "#d8b441", "style": "dashed"}, {"source": "m_manual_control", "target": "t_landing_gear", "color": "#bfd841", "style": "dashed"}, {"source": "m_manual_control", "target": "t_action_request", "color": "#41a2d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_command", "color": "#41d894", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_switches", "color": "#d841c8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_value", "color": "#9dd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_irlock_report", "color": "#97d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mission", "color": "#b941d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_transponder_report", "color": "#d441d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gyro", "color": "#7bd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_local_position", "color": "#75d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_system", "color": "#d841d6", "style": "dashed"}, {"source": "m_mavlink", "target": "t_uavcan_parameter_request", "color": "#6ed841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_event", "color": "#41a9d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_array", "color": "#4180d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_camera_status", "color": "#53d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_fw_virtual_attitude_setpoint", "color": "#4179d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gps", "color": "#4cd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_visual_odometry", "color": "#4165d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_telemetry_status", "color": "#415ed8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_mag", "color": "#41d84a", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude", "color": "#41d850", "style": "dashed"}, {"source": "m_mavlink", "target": "t_battery_status", "color": "#d87741", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_vect", "color": "#d87e41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_input_rc", "color": "#41d85e", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mc_virtual_attitude_setpoint", "color": "#41d86c", "style": "dashed"}, {"source": "m_mavlink", "target": "t_trajectory_setpoint", "color": "#d841b4", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude_setpoint", "color": "#41d872", "style": "dashed"}, {"source": "m_mavlink", "target": "t_landing_target_pose", "color": "#d88b41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_distance_sensor", "color": "#d841ad", "style": "dashed"}, {"source": "m_mavlink", "target": "t_rc_parameter_map", "color": "#414ad8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_attitude", "color": "#4c41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gps_inject_data", "color": "#d89941", "style": "dashed"}, {"source": "m_mavlink", "target": "t_dataman_request", "color": "#4143d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_differential_pressure", "color": "#d8a041", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_operator_id", "color": "#d8a641", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command_ack", "color": "#d8ad41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_rates_setpoint", "color": "#6041d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_key_value", "color": "#d8c841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_ulog_stream_ack", "color": "#d8c241", "style": "dashed"}, {"source": "m_mavlink", "target": "t_airspeed", "color": "#41d88e", "style": "dashed"}, {"source": "m_mavlink", "target": "t_tune_control", "color": "#d8418b", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_global_position", "color": "#cdd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_manual_control", "color": "#8941d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_baro", "color": "#7b41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command", "color": "#41d894", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_attitude_status", "color": "#c6d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_accel", "color": "#41cbd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_information", "color": "#41d8a2", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_optical_flow", "color": "#d84169", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_self_id", "color": "#a441d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_offboard_control_mode", "color": "#a4d841", "style": "dashed"}, {"source": "m_mc_att_control", "target": "t_vehicle_rates_setpoint", "color": "#6041d8", "style": "dashed"}, {"source": "m_mc_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#4187d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_takeoff_status", "color": "#41d843", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#b9d841", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_trajectory_setpoint", "color": "#d841b4", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#41d872", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_constraints", "color": "#d841a6", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#6041d8", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_actuator_controls_status_0", "color": "#d84162", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission", "color": "#b941d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_transponder_report", "color": "#d441d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_time_estimate", "color": "#d841cf", "style": "dashed"}, {"source": "m_navigator", "target": "t_distance_sensor_mode_change_request", "color": "#d86241", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_roi", "color": "#d841c2", "style": "dashed"}, {"source": "m_navigator", "target": "t_home_position", "color": "#d841bb", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_land_detected", "color": "#4157d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_status", "color": "#4150d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_position_setpoint_triplet", "color": "#d89241", "style": "dashed"}, {"source": "m_navigator", "target": "t_dataman_request", "color": "#4143d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command_ack", "color": "#d8ad41", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_status", "color": "#d8b441", "style": "dashed"}, {"source": "m_navigator", "target": "t_navigator_status", "color": "#41d887", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_global_position", "color": "#cdd841", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command", "color": "#41d894", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission_result", "color": "#41d8a9", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_result", "color": "#41d8b6", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_status", "color": "#41d8c4", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_vehicle_command", "color": "#41d894", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_gripper", "color": "#41c4d8", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_vehicle_command_ack", "color": "#d8ad41", "style": "dashed"}, {"source": "m_rc_update", "target": "t_manual_control_switches", "color": "#d841c8", "style": "dashed"}, {"source": "m_sensors", "target": "t_airspeed", "color": "#41d88e", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu", "color": "#d85541", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu_status", "color": "#45d841", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_combined", "color": "#4194d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_differential_pressure", "color": "#d8a041", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_selection", "color": "#d84170", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensors_status_imu", "color": "#4172d8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_test", "color": "#d87041", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_armed", "color": "#d84e41", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs", "color": "#41b6d8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs_sim", "color": "#d8cf41", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_motors", "color": "#8241d8", "style": "dashed"}, {"source": "m_sensor_baro_sim", "target": "t_sensor_baro", "color": "#7b41d8", "style": "dashed"}, {"source": "m_sensor_gps_sim", "target": "t_sensor_gps", "color": "#4cd841", "style": "dashed"}, {"source": "m_sensor_mag_sim", "target": "t_sensor_mag", "color": "#41d84a", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_local_position_groundtruth", "color": "#d84141", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_angular_velocity_groundtruth", "color": "#7541d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_attitude_groundtruth", "color": "#41d857", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_airspeed", "color": "#41d88e", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_gyro", "color": "#7bd841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_global_position_groundtruth", "color": "#d84184", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_distance_sensor", "color": "#d841ad", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_accel", "color": "#41cbd8", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command", "color": "#41d894", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_led_control", "color": "#d8414e", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_sensor_correction", "color": "#9d41d8", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command_ack", "color": "#d8ad41", "style": "dashed"}, {"source": "m_uxrce_dds_client", "target": "t_vehicle_command", "color": "#41d894", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_tiltrotor_extra_controls", "color": "#416cd8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_flaps_setpoint", "color": "#d84741", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#82d841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_spoilers_setpoint", "color": "#d85c41", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_attitude_setpoint", "color": "#41d872", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vtol_vehicle_status", "color": "#60d841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_torque_setpoint", "color": "#b241d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_command_ack", "color": "#d8ad41", "style": "dashed"}, {"source": "m_actuator_test", "target": "t_actuator_test", "color": "#d87041", "style": "dashed"}, {"source": "m_led_control", "target": "t_led_control", "color": "#d8414e", "style": "dashed"}, {"source": "m_tune_control", "target": "t_tune_control", "color": "#d8418b", "style": "dashed"}, {"source": "t_adc_report", "target": "m_board_adc", "color": "#d84177", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_capture", "color": "#41d894", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_trigger", "color": "#41d894", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_camera_trigger", "color": "#75d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_cdcacm_autostart", "color": "#d84e41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_lightware_laser_i2c", "color": "#d8b441", "style": "normal"}, {"source": "t_distance_sensor_mode_change_request", "target": "m_lightware_laser_i2c", "color": "#d86241", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_dshot", "color": "#6741d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_dshot", "color": "#d87041", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_dshot", "color": "#41d8af", "style": "normal"}, {"source": "t_gripper", "target": "m_dshot", "color": "#41c4d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_dshot", "color": "#d84e41", "style": "normal"}, {"source": "t_landing_gear", "target": "m_dshot", "color": "#bfd841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_dshot", "color": "#ab41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_dshot", "color": "#8241d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dshot", "color": "#41d894", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_dshot", "color": "#41d879", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_gps", "color": "#d89941", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_heater", "color": "#41cbd8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled", "color": "#d8414e", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_is31fl3195", "color": "#d8414e", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_lp5562", "color": "#d8414e", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_ncp5623c", "color": "#d8414e", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_msp_osd", "color": "#d8b441", "style": "normal"}, {"source": "t_home_position", "target": "m_msp_osd", "color": "#d841bb", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_msp_osd", "color": "#41d850", "style": "normal"}, {"source": "t_battery_status", "target": "m_msp_osd", "color": "#d87741", "style": "normal"}, {"source": "t_input_rc", "target": "m_msp_osd", "color": "#41d85e", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_msp_osd", "color": "#75d841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_msp_osd", "color": "#cdd841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_msp_osd", "color": "#5941d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina226", "color": "#d8b441", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina226", "color": "#41d8d1", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina228", "color": "#d8b441", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina228", "color": "#41d8d1", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina238", "color": "#d8b441", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina238", "color": "#41d8d1", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pm_selector_auterion", "color": "#d84e41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out", "color": "#6741d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out", "color": "#d87041", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out", "color": "#41d8af", "style": "normal"}, {"source": "t_gripper", "target": "m_pwm_out", "color": "#41c4d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out", "color": "#d84e41", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out", "color": "#bfd841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out", "color": "#ab41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out", "color": "#8241d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out", "color": "#41d894", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out", "color": "#41d879", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_px4io", "color": "#d8b441", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_px4io", "color": "#6741d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_px4io", "color": "#d87041", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_px4io", "color": "#d84e41", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_px4io", "color": "#41d8af", "style": "normal"}, {"source": "t_gripper", "target": "m_px4io", "color": "#41c4d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_px4io", "color": "#bfd841", "style": "normal"}, {"source": "t_px4io_status", "target": "m_px4io", "color": "#d84155", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_px4io", "color": "#ab41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_px4io", "color": "#8241d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_px4io", "color": "#41d894", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_px4io", "color": "#41d879", "style": "normal"}, {"source": "t_battery_status", "target": "m_crsf_rc", "color": "#d87741", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_crsf_rc", "color": "#d8b441", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_crsf_rc", "color": "#41d850", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dsm_rc", "color": "#41d894", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_dsm_rc", "color": "#d8b441", "style": "normal"}, {"source": "t_battery_status", "target": "m_ghst_rc", "color": "#d87741", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_rc_input", "color": "#d8b441", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rc_input", "color": "#41d850", "style": "normal"}, {"source": "t_battery_status", "target": "m_rc_input", "color": "#d87741", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_rc_input", "color": "#41d894", "style": "normal"}, {"source": "t_adc_report", "target": "m_rc_input", "color": "#d84177", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_safety_button", "color": "#d84e41", "style": "normal"}, {"source": "t_battery_status", "target": "m_bst", "color": "#d87741", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_bst", "color": "#41d850", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_frsky_telemetry", "color": "#d8b441", "style": "normal"}, {"source": "t_battery_status", "target": "m_frsky_telemetry", "color": "#d87741", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_frsky_telemetry", "color": "#75d841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_frsky_telemetry", "color": "#cdd841", "style": "normal"}, {"source": "t_home_position", "target": "m_hott_telemetry", "color": "#d841bb", "style": "normal"}, {"source": "t_battery_status", "target": "m_hott_telemetry", "color": "#d87741", "style": "normal"}, {"source": "t_airspeed", "target": "m_hott_telemetry", "color": "#41d88e", "style": "normal"}, {"source": "t_esc_status", "target": "m_hott_telemetry", "color": "#abd841", "style": "normal"}, {"source": "t_tune_control", "target": "m_tone_alarm", "color": "#d8418b", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_uavcan", "color": "#d84e41", "style": "normal"}, {"source": "t_gripper", "target": "m_uavcan", "color": "#41c4d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uavcan", "color": "#75d841", "style": "normal"}, {"source": "t_open_drone_id_system", "target": "m_uavcan", "color": "#d841d6", "style": "normal"}, {"source": "t_uavcan_parameter_request", "target": "m_uavcan", "color": "#6ed841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_uavcan", "color": "#d87041", "style": "normal"}, {"source": "t_home_position", "target": "m_uavcan", "color": "#d841bb", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_uavcan", "color": "#4157d8", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_uavcan", "color": "#d89941", "style": "normal"}, {"source": "t_open_drone_id_operator_id", "target": "m_uavcan", "color": "#d8a641", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_uavcan", "color": "#41d879", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_uavcan", "color": "#d8b441", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uavcan", "color": "#6741d8", "style": "normal"}, {"source": "t_tune_control", "target": "m_uavcan", "color": "#d8418b", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_uavcan", "color": "#8241d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_uavcan", "color": "#41d894", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_uavcan", "color": "#41d8af", "style": "normal"}, {"source": "t_landing_gear", "target": "m_uavcan", "color": "#bfd841", "style": "normal"}, {"source": "t_open_drone_id_self_id", "target": "m_uavcan", "color": "#a441d8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_uavcan", "color": "#ab41d8", "style": "normal"}, {"source": "t_led_control", "target": "m_uavcan", "color": "#d8414e", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airspeed_selector", "color": "#d8b441", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_airspeed_selector", "color": "#41d850", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_airspeed_selector", "color": "#4157d8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_airspeed_selector", "color": "#82d841", "style": "normal"}, {"source": "t_airspeed", "target": "m_airspeed_selector", "color": "#41d88e", "style": "normal"}, {"source": "t_tecs_status", "target": "m_airspeed_selector", "color": "#41d865", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_airspeed_selector", "color": "#75d841", "style": "normal"}, {"source": "t_estimator_status", "target": "m_airspeed_selector", "color": "#67d841", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_airspeed_selector", "color": "#41d8d1", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_airspeed_selector", "color": "#d84147", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_airspeed_selector", "color": "#d841a0", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_status", "color": "#d8b441", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_battery_status", "color": "#41d8d1", "style": "normal"}, {"source": "t_adc_report", "target": "m_battery_status", "color": "#d84177", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_camera_feedback", "color": "#c641d8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_camera_feedback", "color": "#c6d841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_camera_feedback", "color": "#cdd841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_camera_feedback", "color": "#41d850", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_commander", "color": "#d84e41", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_commander", "color": "#a4d841", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_commander", "color": "#7bd841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_commander", "color": "#75d841", "style": "normal"}, {"source": "t_event", "target": "m_commander", "color": "#41a9d8", "style": "normal"}, {"source": "t_action_request", "target": "m_commander", "color": "#41a2d8", "style": "normal"}, {"source": "t_estimator_status", "target": "m_commander", "color": "#67d841", "style": "normal"}, {"source": "t_vtol_vehicle_status", "target": "m_commander", "color": "#60d841", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_commander", "color": "#4cd841", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_commander", "color": "#d841cf", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_commander", "color": "#45d841", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_commander", "color": "#d841c8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_commander", "color": "#41d1d8", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_commander", "color": "#4172d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_commander", "color": "#41d84a", "style": "normal"}, {"source": "t_telemetry_status", "target": "m_commander", "color": "#415ed8", "style": "normal"}, {"source": "t_home_position", "target": "m_commander", "color": "#d841bb", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_commander", "color": "#d84147", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_commander", "color": "#41d850", "style": "normal"}, {"source": "t_battery_status", "target": "m_commander", "color": "#d87741", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_commander", "color": "#4157d8", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_commander", "color": "#d841ad", "style": "normal"}, {"source": "t_power_button_state", "target": "m_commander", "color": "#5341d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_commander", "color": "#5941d8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_commander", "color": "#d8a041", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_commander", "color": "#d8ad41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_commander", "color": "#d8b441", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_commander", "color": "#6741d8", "style": "normal"}, {"source": "t_safety_button", "target": "m_commander", "color": "#d8bb41", "style": "normal"}, {"source": "t_navigator_status", "target": "m_commander", "color": "#41d887", "style": "normal"}, {"source": "t_estimator_status_flags", "target": "m_commander", "color": "#d84199", "style": "normal"}, {"source": "t_logger_status", "target": "m_commander", "color": "#d84192", "style": "normal"}, {"source": "t_cpuload", "target": "m_commander", "color": "#d4d841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_commander", "color": "#cdd841", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_commander", "color": "#7b41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_commander", "color": "#8241d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_commander", "color": "#41d894", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_commander", "color": "#d84170", "style": "normal"}, {"source": "t_mission_result", "target": "m_commander", "color": "#41d8a9", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_commander", "color": "#9d41d8", "style": "normal"}, {"source": "t_system_power", "target": "m_commander", "color": "#d8415c", "style": "normal"}, {"source": "t_geofence_result", "target": "m_commander", "color": "#41d8b6", "style": "normal"}, {"source": "t_wind", "target": "m_commander", "color": "#b2d841", "style": "normal"}, {"source": "t_esc_status", "target": "m_commander", "color": "#abd841", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_commander", "color": "#41cbd8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_control_allocator", "color": "#d8b441", "style": "normal"}, {"source": "t_tiltrotor_extra_controls", "target": "m_control_allocator", "color": "#416cd8", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_control_allocator", "color": "#d84741", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_control_allocator", "color": "#82d841", "style": "normal"}, {"source": "t_spoilers_setpoint", "target": "m_control_allocator", "color": "#d85c41", "style": "normal"}, {"source": "t_failure_detector_status", "target": "m_control_allocator", "color": "#d88441", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_control_allocator", "color": "#4541d8", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_control_allocator", "color": "#b241d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_control_allocator", "color": "#d841c8", "style": "normal"}, {"source": "t_dataman_request", "target": "m_dataman", "color": "#4143d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ekf2", "color": "#d8b441", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_ekf2", "color": "#4165d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_ekf2", "color": "#4157d8", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_ekf2", "color": "#d85541", "style": "normal"}, {"source": "t_airspeed", "target": "m_ekf2", "color": "#41d88e", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_ekf2", "color": "#d88b41", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_ekf2", "color": "#4194d8", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_ekf2", "color": "#d841ad", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_ekf2", "color": "#5941d8", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_ekf2", "color": "#d841a0", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_ekf2", "color": "#d84170", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_ekf2", "color": "#4172d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_ekf2", "color": "#41d894", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_esc_battery", "color": "#d8b441", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_esc_battery", "color": "#41d8d1", "style": "normal"}, {"source": "t_esc_status", "target": "m_esc_battery", "color": "#abd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_send_event", "color": "#d8b441", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_send_event", "color": "#90d841", "style": "normal"}, {"source": "t_battery_status", "target": "m_send_event", "color": "#d87741", "style": "normal"}, {"source": "t_cpuload", "target": "m_send_event", "color": "#d4d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_send_event", "color": "#41d894", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_flight_mode_manager", "color": "#41d843", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_flight_mode_manager", "color": "#d8b441", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_flight_mode_manager", "color": "#4157d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_flight_mode_manager", "color": "#75d841", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_flight_mode_manager", "color": "#41d872", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_flight_mode_manager", "color": "#4541d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_flight_mode_manager", "color": "#41d894", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_att_control", "color": "#6741d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_att_control", "color": "#d8b441", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_att_control", "color": "#41d850", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_att_control", "color": "#4157d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_att_control", "color": "#75d841", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_fw_att_control", "color": "#41d872", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_fw_att_control", "color": "#4187d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_att_control", "color": "#4541d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_att_control", "color": "#5941d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_autotune_attitude_control", "color": "#d8b441", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_autotune_attitude_control", "color": "#6741d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_pos_control", "color": "#6741d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_pos_control", "color": "#d8b441", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_pos_control", "color": "#41d850", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_pos_control", "color": "#4157d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_pos_control", "color": "#75d841", "style": "normal"}, {"source": "t_wind", "target": "m_fw_pos_control", "color": "#b2d841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_fw_pos_control", "color": "#d841b4", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_fw_pos_control", "color": "#d89241", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_pos_control", "color": "#4541d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_fw_pos_control", "color": "#cdd841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_pos_control", "color": "#5941d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_fw_pos_control", "color": "#41d894", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_fw_rate_control", "color": "#6041d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_rate_control", "color": "#6741d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_rate_control", "color": "#d8b441", "style": "normal"}, {"source": "t_battery_status", "target": "m_fw_rate_control", "color": "#d87741", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_rate_control", "color": "#4157d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_rate_control", "color": "#4541d8", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_fw_rate_control", "color": "#59d841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_rate_control", "color": "#5941d8", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_gimbal", "color": "#41d8a2", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gimbal", "color": "#6741d8", "style": "normal"}, {"source": "t_vehicle_roi", "target": "m_gimbal", "color": "#d841c2", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_gimbal", "color": "#41d850", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_gimbal", "color": "#4157d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_gimbal", "color": "#d89241", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_gimbal", "color": "#cdd841", "style": "normal"}, {"source": "t_gimbal_manager_set_attitude", "target": "m_gimbal", "color": "#4c41d8", "style": "normal"}, {"source": "t_gimbal_manager_set_manual_control", "target": "m_gimbal", "color": "#8941d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gimbal", "color": "#41d894", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_gimbal", "color": "#c6d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_gyro_calibration", "color": "#d8b441", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_calibration", "color": "#7bd841", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_gyro_calibration", "color": "#9d41d8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_gyro_calibration", "color": "#41cbd8", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_land_detector", "color": "#41d843", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_land_detector", "color": "#d8b441", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_land_detector", "color": "#d84e41", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_land_detector", "color": "#82d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_land_detector", "color": "#75d841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_land_detector", "color": "#d841b4", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_land_detector", "color": "#d89241", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_land_detector", "color": "#4541d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_land_detector", "color": "#cdd841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_land_detector", "color": "#5941d8", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_land_detector", "color": "#d841a0", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_land_detector", "color": "#d84170", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_land_detector", "color": "#45d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_landing_target_estimator", "color": "#75d841", "style": "normal"}, {"source": "t_irlock_report", "target": "m_landing_target_estimator", "color": "#97d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_landing_target_estimator", "color": "#41d850", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_logger", "color": "#6741d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_logger", "color": "#d8b441", "style": "normal"}, {"source": "t_ulog_stream_ack", "target": "m_logger", "color": "#d8c241", "style": "normal"}, {"source": "t_battery_status", "target": "m_logger", "color": "#d87741", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_logger", "color": "#41d894", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mag_bias_estimator", "color": "#d8b441", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mag_bias_estimator", "color": "#41d84a", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_manual_control", "color": "#6741d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_manual_control", "color": "#d8b441", "style": "normal"}, {"source": "t_action_request", "target": "m_manual_control", "color": "#41a2d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_manual_control", "color": "#d841c8", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_mavlink", "color": "#d84141", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_mavlink", "color": "#d84e41", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_mavlink", "color": "#d85541", "style": "normal"}, {"source": "t_dataman_response", "target": "m_mavlink", "color": "#d86941", "style": "normal"}, {"source": "t_battery_status", "target": "m_mavlink", "color": "#d87741", "style": "normal"}, {"source": "t_debug_vect", "target": "m_mavlink", "color": "#d87e41", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_mavlink", "color": "#d89241", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_mavlink", "color": "#d88b41", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_mavlink", "color": "#d89941", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_mavlink", "color": "#d8a041", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_mavlink", "color": "#d8ad41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mavlink", "color": "#d8b441", "style": "normal"}, {"source": "t_debug_key_value", "target": "m_mavlink", "color": "#d8c841", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_mavlink", "color": "#d8cf41", "style": "normal"}, {"source": "t_figure_eight_status", "target": "m_mavlink", "color": "#d8d641", "style": "normal"}, {"source": "t_cpuload", "target": "m_mavlink", "color": "#d4d841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_mavlink", "color": "#cdd841", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_mavlink", "color": "#c6d841", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_mavlink", "color": "#b9d841", "style": "normal"}, {"source": "t_wind", "target": "m_mavlink", "color": "#b2d841", "style": "normal"}, {"source": "t_esc_status", "target": "m_mavlink", "color": "#abd841", "style": "normal"}, {"source": "t_debug_value", "target": "m_mavlink", "color": "#9dd841", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_mavlink", "color": "#90d841", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_mavlink", "color": "#89d841", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_mavlink", "color": "#82d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mavlink", "color": "#75d841", "style": "normal"}, {"source": "t_estimator_status", "target": "m_mavlink", "color": "#67d841", "style": "normal"}, {"source": "t_camera_status", "target": "m_mavlink", "color": "#53d841", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_mavlink", "color": "#4cd841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_mavlink", "color": "#45d841", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mavlink", "color": "#41d84a", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mavlink", "color": "#41d850", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_mavlink", "color": "#41d857", "style": "normal"}, {"source": "t_input_rc", "target": "m_mavlink", "color": "#41d85e", "style": "normal"}, {"source": "t_tecs_status", "target": "m_mavlink", "color": "#41d865", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mavlink", "color": "#41d872", "style": "normal"}, {"source": "t_gimbal_manager_status", "target": "m_mavlink", "color": "#41d880", "style": "normal"}, {"source": "t_airspeed", "target": "m_mavlink", "color": "#41d88e", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_mavlink", "color": "#41d894", "style": "normal"}, {"source": "t_mount_orientation", "target": "m_mavlink", "color": "#41d89b", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_mavlink", "color": "#41d8a2", "style": "normal"}, {"source": "t_mission_result", "target": "m_mavlink", "color": "#41d8a9", "style": "normal"}, {"source": "t_geofence_result", "target": "m_mavlink", "color": "#41d8b6", "style": "normal"}, {"source": "t_ulog_stream", "target": "m_mavlink", "color": "#41d8cb", "style": "normal"}, {"source": "t_health_report", "target": "m_mavlink", "color": "#41d8d8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_mavlink", "color": "#41d1d8", "style": "normal"}, {"source": "t_register_ext_component_reply", "target": "m_mavlink", "color": "#41bdd8", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_mavlink", "color": "#41b6d8", "style": "normal"}, {"source": "t_gimbal_manager_information", "target": "m_mavlink", "color": "#41afd8", "style": "normal"}, {"source": "t_event", "target": "m_mavlink", "color": "#41a9d8", "style": "normal"}, {"source": "t_orbit_status", "target": "m_mavlink", "color": "#419bd8", "style": "normal"}, {"source": "t_open_drone_id_arm_status", "target": "m_mavlink", "color": "#418ed8", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mavlink", "color": "#4187d8", "style": "normal"}, {"source": "t_debug_array", "target": "m_mavlink", "color": "#4180d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mavlink", "color": "#4157d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mavlink", "color": "#4541d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_mavlink", "color": "#5941d8", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mavlink", "color": "#6041d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mavlink", "color": "#6741d8", "style": "normal"}, {"source": "t_satellite_info", "target": "m_mavlink", "color": "#6e41d8", "style": "normal"}, {"source": "t_vehicle_angular_velocity_groundtruth", "target": "m_mavlink", "color": "#7541d8", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_mavlink", "color": "#7b41d8", "style": "normal"}, {"source": "t_gimbal_device_set_attitude", "target": "m_mavlink", "color": "#9041d8", "style": "normal"}, {"source": "t_camera_capture", "target": "m_mavlink", "color": "#9741d8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_mavlink", "color": "#9d41d8", "style": "normal"}, {"source": "t_mission", "target": "m_mavlink", "color": "#b941d8", "style": "normal"}, {"source": "t_uavcan_parameter_value", "target": "m_mavlink", "color": "#bf41d8", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_mavlink", "color": "#c641d8", "style": "normal"}, {"source": "t_transponder_report", "target": "m_mavlink", "color": "#d441d8", "style": "normal"}, {"source": "t_gimbal_v1_command", "target": "m_mavlink", "color": "#cd41d8", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_mavlink", "color": "#d841cf", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_mavlink", "color": "#d841c8", "style": "normal"}, {"source": "t_home_position", "target": "m_mavlink", "color": "#d841bb", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_mavlink", "color": "#d841ad", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_mavlink", "color": "#d84184", "style": "normal"}, {"source": "t_vehicle_odometry", "target": "m_mavlink", "color": "#d8417e", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_mavlink", "color": "#d84170", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_mavlink", "color": "#d84147", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_att_control", "color": "#6741d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_att_control", "color": "#d8b441", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mc_att_control", "color": "#41d850", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_att_control", "color": "#4157d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_att_control", "color": "#75d841", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mc_att_control", "color": "#41d872", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mc_att_control", "color": "#4187d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_att_control", "color": "#4541d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#6741d8", "style": "normal"}, {"source": "t_actuator_controls_status_0", "target": "m_mc_autotune_attitude_control", "color": "#d84162", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_autotune_attitude_control", "color": "#d8b441", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#b241d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_pos_control", "color": "#4157d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_pos_control", "color": "#75d841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_mc_pos_control", "color": "#d841b4", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_pos_control", "color": "#4541d8", "style": "normal"}, {"source": "t_vehicle_constraints", "target": "m_mc_pos_control", "color": "#d841a6", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mc_rate_control", "color": "#6041d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_rate_control", "color": "#6741d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_rate_control", "color": "#d8b441", "style": "normal"}, {"source": "t_battery_status", "target": "m_mc_rate_control", "color": "#d87741", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_rate_control", "color": "#4157d8", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_mc_rate_control", "color": "#59d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_rate_control", "color": "#4541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_navigator", "color": "#d8b441", "style": "normal"}, {"source": "t_dataman_response", "target": "m_navigator", "color": "#d86941", "style": "normal"}, {"source": "t_home_position", "target": "m_navigator", "color": "#d841bb", "style": "normal"}, {"source": "t_mission", "target": "m_navigator", "color": "#b941d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_navigator", "color": "#4157d8", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_navigator", "color": "#89d841", "style": "normal"}, {"source": "t_transponder_report", "target": "m_navigator", "color": "#d441d8", "style": "normal"}, {"source": "t_position_controller_landing_status", "target": "m_navigator", "color": "#41d8bd", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_navigator", "color": "#75d841", "style": "normal"}, {"source": "t_wind", "target": "m_navigator", "color": "#b2d841", "style": "normal"}, {"source": "t_geofence_status", "target": "m_navigator", "color": "#41d8c4", "style": "normal"}, {"source": "t_rtl_status", "target": "m_navigator", "color": "#4150d8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_navigator", "color": "#d88b41", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_navigator", "color": "#cdd841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_navigator", "color": "#41d894", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_payload_deliverer", "color": "#41d894", "style": "normal"}, {"source": "t_rc_parameter_map", "target": "m_rc_update", "color": "#414ad8", "style": "normal"}, {"source": "t_input_rc", "target": "m_rc_update", "color": "#41d85e", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_rc_update", "color": "#d841c8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_sensors", "color": "#41d1d8", "style": "normal"}, {"source": "t_sensor_optical_flow", "target": "m_sensors", "color": "#d84169", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_sensors", "color": "#41d84a", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_sensors", "color": "#9d41d8", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_sensors", "color": "#45d841", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_sensors", "color": "#7bd841", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_sensors", "color": "#d85541", "style": "normal"}, {"source": "t_adc_report", "target": "m_sensors", "color": "#d84177", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_sensors", "color": "#4541d8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_sensors", "color": "#d8a041", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_sensors", "color": "#d84170", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_sensors", "color": "#41cbd8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out_sim", "color": "#6741d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out_sim", "color": "#d87041", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out_sim", "color": "#41d8af", "style": "normal"}, {"source": "t_gripper", "target": "m_pwm_out_sim", "color": "#41c4d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out_sim", "color": "#d84e41", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out_sim", "color": "#bfd841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out_sim", "color": "#ab41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out_sim", "color": "#8241d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out_sim", "color": "#41d894", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out_sim", "color": "#41d879", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_baro_sim", "color": "#d84184", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#d84184", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_sensor_mag_sim", "color": "#41d857", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_mag_sim", "color": "#d84184", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_simulator_sih", "color": "#41b6d8", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_simulator_sih", "color": "#d8cf41", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_temperature_compensation", "color": "#41d84a", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_temperature_compensation", "color": "#7bd841", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_temperature_compensation", "color": "#7b41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_temperature_compensation", "color": "#41d894", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_temperature_compensation", "color": "#41cbd8", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_uxrce_dds_client", "color": "#d8ad41", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_vtol_att_control", "color": "#75d841", "style": "normal"}, {"source": "t_action_request", "target": "m_vtol_att_control", "color": "#41a2d8", "style": "normal"}, {"source": "t_fw_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#4179d8", "style": "normal"}, {"source": "t_home_position", "target": "m_vtol_att_control", "color": "#d841bb", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_vtol_att_control", "color": "#41d850", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_vtol_att_control", "color": "#4157d8", "style": "normal"}, {"source": "t_tecs_status", "target": "m_vtol_att_control", "color": "#41d865", "style": "normal"}, {"source": "t_mc_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#41d86c", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_vtol_att_control", "color": "#d89241", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_vtol_att_control", "color": "#4541d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_vtol_att_control", "color": "#5941d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_vtol_att_control", "color": "#d8b441", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_vtol_att_control", "color": "#41d894", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_vtol_att_control", "color": "#b9d841", "style": "normal"}]} \ No newline at end of file +{"nodes": [{"id": "m_fw_autotune_attitude_control", "name": "fw_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_autotune_attitude_control", "name": "mc_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_landing_target_estimator", "name": "landing_target_estimator", "type": "Module", "color": "#666666"}, {"id": "m_temperature_compensation", "name": "temperature_compensation", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_serial", "name": "lightware_laser_serial", "type": "Module", "color": "#666666"}, {"id": "m_pm_selector_auterion", "name": "pm_selector_auterion", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_i2c", "name": "lightware_laser_i2c", "type": "Module", "color": "#666666"}, {"id": "m_flight_mode_manager", "name": "flight_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_fw_lat_lon_control", "name": "fw_lat_lon_control", "type": "Module", "color": "#666666"}, {"id": "m_mag_bias_estimator", "name": "mag_bias_estimator", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_is31fl3195", "name": "rgbled_is31fl3195", "type": "Module", "color": "#666666"}, {"id": "m_airspeed_selector", "name": "airspeed_selector", "type": "Module", "color": "#666666"}, {"id": "m_control_allocator", "name": "control_allocator", "type": "Module", "color": "#666666"}, {"id": "m_payload_deliverer", "name": "payload_deliverer", "type": "Module", "color": "#666666"}, {"id": "m_cdcacm_autostart", "name": "cdcacm_autostart", "type": "Module", "color": "#666666"}, {"id": "m_gyro_calibration", "name": "gyro_calibration", "type": "Module", "color": "#666666"}, {"id": "m_uxrce_dds_client", "name": "uxrce_dds_client", "type": "Module", "color": "#666666"}, {"id": "m_vtol_att_control", "name": "vtol_att_control", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_ncp5623c", "name": "rgbled_ncp5623c", "type": "Module", "color": "#666666"}, {"id": "m_frsky_telemetry", "name": "frsky_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_camera_feedback", "name": "camera_feedback", "type": "Module", "color": "#666666"}, {"id": "m_fw_mode_manager", "name": "fw_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_fw_rate_control", "name": "fw_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_rate_control", "name": "mc_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_sensor_baro_sim", "name": "sensor_baro_sim", "type": "Module", "color": "#666666"}, {"id": "m_camera_capture", "name": "camera_capture", "type": "Module", "color": "#666666"}, {"id": "m_camera_trigger", "name": "camera_trigger", "type": "Module", "color": "#666666"}, {"id": "m_ulanding_radar", "name": "ulanding_radar", "type": "Module", "color": "#666666"}, {"id": "m_hott_telemetry", "name": "hott_telemetry", "type": "Module", "color": "#666666"}, {"id": "m_battery_status", "name": "battery_status", "type": "Module", "color": "#666666"}, {"id": "m_fw_att_control", "name": "fw_att_control", "type": "Module", "color": "#666666"}, {"id": "m_manual_control", "name": "manual_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_att_control", "name": "mc_att_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_pos_control", "name": "mc_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_sensor_gps_sim", "name": "sensor_gps_sim", "type": "Module", "color": "#666666"}, {"id": "m_sensor_mag_sim", "name": "sensor_mag_sim", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_lp5562", "name": "rgbled_lp5562", "type": "Module", "color": "#666666"}, {"id": "m_safety_button", "name": "safety_button", "type": "Module", "color": "#666666"}, {"id": "m_land_detector", "name": "land_detector", "type": "Module", "color": "#666666"}, {"id": "m_simulator_sih", "name": "simulator_sih", "type": "Module", "color": "#666666"}, {"id": "m_actuator_test", "name": "actuator_test", "type": "Module", "color": "#666666"}, {"id": "m_tune_control", "name": "tune_control", "type": "Module", "color": "#666666"}, {"id": "m_esc_battery", "name": "esc_battery", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out_sim", "name": "pwm_out_sim", "type": "Module", "color": "#666666"}, {"id": "m_led_control", "name": "led_control", "type": "Module", "color": "#666666"}, {"id": "m_batt_smbus", "name": "batt_smbus", "type": "Module", "color": "#666666"}, {"id": "m_teraranger", "name": "teraranger", "type": "Module", "color": "#666666"}, {"id": "m_tone_alarm", "name": "tone_alarm", "type": "Module", "color": "#666666"}, {"id": "m_send_event", "name": "send_event", "type": "Module", "color": "#666666"}, {"id": "m_board_adc", "name": "board_adc", "type": "Module", "color": "#666666"}, {"id": "m_ms5525dso", "name": "ms5525dso", "type": "Module", "color": "#666666"}, {"id": "m_adis16448", "name": "adis16448", "type": "Module", "color": "#666666"}, {"id": "m_adis16507", "name": "adis16507", "type": "Module", "color": "#666666"}, {"id": "m_icm42688p", "name": "icm42688p", "type": "Module", "color": "#666666"}, {"id": "m_lsm303agr", "name": "lsm303agr", "type": "Module", "color": "#666666"}, {"id": "m_mmc5983ma", "name": "mmc5983ma", "type": "Module", "color": "#666666"}, {"id": "m_thoneflow", "name": "thoneflow", "type": "Module", "color": "#666666"}, {"id": "m_commander", "name": "commander", "type": "Module", "color": "#666666"}, {"id": "m_navigator", "name": "navigator", "type": "Module", "color": "#666666"}, {"id": "m_rc_update", "name": "rc_update", "type": "Module", "color": "#666666"}, {"id": "m_ms4525do", "name": "ms4525do", "type": "Module", "color": "#666666"}, {"id": "m_icm20602", "name": "icm20602", "type": "Module", "color": "#666666"}, {"id": "m_icm20649", "name": "icm20649", "type": "Module", "color": "#666666"}, {"id": "m_icm20948", "name": "icm20948", "type": "Module", "color": "#666666"}, {"id": "m_iim42652", "name": "iim42652", "type": "Module", "color": "#666666"}, {"id": "m_qmc5883l", "name": "qmc5883l", "type": "Module", "color": "#666666"}, {"id": "m_vcm1193l", "name": "vcm1193l", "type": "Module", "color": "#666666"}, {"id": "m_rc_input", "name": "rc_input", "type": "Module", "color": "#666666"}, {"id": "m_load_mon", "name": "load_mon", "type": "Module", "color": "#666666"}, {"id": "m_ads1115", "name": "ads1115", "type": "Module", "color": "#666666"}, {"id": "m_cm8jl65", "name": "cm8jl65", "type": "Module", "color": "#666666"}, {"id": "m_tf02pro", "name": "tf02pro", "type": "Module", "color": "#666666"}, {"id": "m_vl53l0x", "name": "vl53l0x", "type": "Module", "color": "#666666"}, {"id": "m_vl53l1x", "name": "vl53l1x", "type": "Module", "color": "#666666"}, {"id": "m_ak09916", "name": "ak09916", "type": "Module", "color": "#666666"}, {"id": "m_hmc5883", "name": "hmc5883", "type": "Module", "color": "#666666"}, {"id": "m_ist8308", "name": "ist8308", "type": "Module", "color": "#666666"}, {"id": "m_ist8310", "name": "ist8310", "type": "Module", "color": "#666666"}, {"id": "m_lis3mdl", "name": "lis3mdl", "type": "Module", "color": "#666666"}, {"id": "m_iis2mdc", "name": "iis2mdc", "type": "Module", "color": "#666666"}, {"id": "m_paa3905", "name": "paa3905", "type": "Module", "color": "#666666"}, {"id": "m_paw3902", "name": "paw3902", "type": "Module", "color": "#666666"}, {"id": "m_pmw3901", "name": "pmw3901", "type": "Module", "color": "#666666"}, {"id": "m_px4flow", "name": "px4flow", "type": "Module", "color": "#666666"}, {"id": "m_msp_osd", "name": "msp_osd", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out", "name": "pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_crsf_rc", "name": "crsf_rc", "type": "Module", "color": "#666666"}, {"id": "m_ghst_rc", "name": "ghst_rc", "type": "Module", "color": "#666666"}, {"id": "m_sbus_rc", "name": "sbus_rc", "type": "Module", "color": "#666666"}, {"id": "m_dataman", "name": "dataman", "type": "Module", "color": "#666666"}, {"id": "m_mavlink", "name": "mavlink", "type": "Module", "color": "#666666"}, {"id": "m_sensors", "name": "sensors", "type": "Module", "color": "#666666"}, {"id": "m_bmp388", "name": "bmp388", "type": "Module", "color": "#666666"}, {"id": "m_ms5611", "name": "ms5611", "type": "Module", "color": "#666666"}, {"id": "m_ll40ls", "name": "ll40ls", "type": "Module", "color": "#666666"}, {"id": "m_tfmini", "name": "tfmini", "type": "Module", "color": "#666666"}, {"id": "m_heater", "name": "heater", "type": "Module", "color": "#666666"}, {"id": "m_bmi088", "name": "bmi088", "type": "Module", "color": "#666666"}, {"id": "m_irlock", "name": "irlock", "type": "Module", "color": "#666666"}, {"id": "m_rgbled", "name": "rgbled", "type": "Module", "color": "#666666"}, {"id": "m_ak8963", "name": "ak8963", "type": "Module", "color": "#666666"}, {"id": "m_bmm150", "name": "bmm150", "type": "Module", "color": "#666666"}, {"id": "m_rm3100", "name": "rm3100", "type": "Module", "color": "#666666"}, {"id": "m_ina226", "name": "ina226", "type": "Module", "color": "#666666"}, {"id": "m_ina228", "name": "ina228", "type": "Module", "color": "#666666"}, {"id": "m_ina238", "name": "ina238", "type": "Module", "color": "#666666"}, {"id": "m_dsm_rc", "name": "dsm_rc", "type": "Module", "color": "#666666"}, {"id": "m_batmon", "name": "batmon", "type": "Module", "color": "#666666"}, {"id": "m_uavcan", "name": "uavcan", "type": "Module", "color": "#666666"}, {"id": "m_gimbal", "name": "gimbal", "type": "Module", "color": "#666666"}, {"id": "m_logger", "name": "logger", "type": "Module", "color": "#666666"}, {"id": "m_sdp3x", "name": "sdp3x", "type": "Module", "color": "#666666"}, {"id": "m_dshot", "name": "dshot", "type": "Module", "color": "#666666"}, {"id": "m_px4io", "name": "px4io", "type": "Module", "color": "#666666"}, {"id": "m_ekf2", "name": "ekf2", "type": "Module", "color": "#666666"}, {"id": "m_gps", "name": "gps", "type": "Module", "color": "#666666"}, {"id": "m_bst", "name": "bst", "type": "Module", "color": "#666666"}, {"id": "t_vehicle_angular_velocity_groundtruth", "name": "vehicle_angular_velocity_groundtruth", "type": "topic", "color": "#41d2d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position_groundtruth", "name": "vehicle_global_position_groundtruth", "type": "topic", "color": "#89d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor_mode_change_request", "name": "distance_sensor_mode_change_request", "type": "topic", "color": "#7c41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_landing_status", "name": "position_controller_landing_status", "type": "topic", "color": "#9dd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_groundtruth", "name": "vehicle_local_position_groundtruth", "type": "topic", "color": "#4ed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_longitudinal_control_configuration", "name": "longitudinal_control_configuration", "type": "topic", "color": "#4196d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_manual_control", "name": "gimbal_manager_set_manual_control", "type": "topic", "color": "#4189d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_longitudinal_setpoint", "name": "fixed_wing_longitudinal_setpoint", "type": "topic", "color": "#4175d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_autotune_attitude_control_status", "name": "autotune_attitude_control_status", "type": "topic", "color": "#c441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_setpoint", "name": "vehicle_local_position_setpoint", "type": "topic", "color": "#d841d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_lateral_control_configuration", "name": "lateral_control_configuration", "type": "topic", "color": "#41d89d", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_attitude_status", "name": "gimbal_device_attitude_status", "type": "topic", "color": "#d84162", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_groundtruth", "name": "vehicle_attitude_groundtruth", "type": "topic", "color": "#d85b41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fw_virtual_attitude_setpoint", "name": "fw_virtual_attitude_setpoint", "type": "topic", "color": "#d8b141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mc_virtual_attitude_setpoint", "name": "mc_virtual_attitude_setpoint", "type": "topic", "color": "#41d8d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_register_ext_component_reply", "name": "register_ext_component_reply", "type": "topic", "color": "#be41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_lateral_setpoint", "name": "fixed_wing_lateral_setpoint", "type": "topic", "color": "#41d862", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_attitude", "name": "gimbal_manager_set_attitude", "type": "topic", "color": "#41d8b1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_set_attitude", "name": "gimbal_device_set_attitude", "type": "topic", "color": "#75d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_information", "name": "gimbal_manager_information", "type": "topic", "color": "#41c4d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_controls_status_0", "name": "actuator_controls_status_0", "type": "topic", "color": "#4168d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorControlsStatus.msg"}, {"id": "t_position_setpoint_triplet", "name": "position_setpoint_triplet", "type": "topic", "color": "#d84e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_operator_id", "name": "open_drone_id_operator_id", "type": "topic", "color": "#96d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_setpoint", "name": "vehicle_attitude_setpoint", "type": "topic", "color": "#6f41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_runway_control", "name": "fixed_wing_runway_control", "type": "topic", "color": "#9d41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_selector_status", "name": "estimator_selector_status", "type": "topic", "color": "#a341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_information", "name": "gimbal_device_information", "type": "topic", "color": "#d84182", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tiltrotor_extra_controls", "name": "tiltrotor_extra_controls", "type": "topic", "color": "#41d8b7", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_request", "name": "uavcan_parameter_request", "type": "topic", "color": "#41aad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_arm_status", "name": "open_drone_id_arm_status", "type": "topic", "color": "#419dd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_control_allocator_status", "name": "control_allocator_status", "type": "topic", "color": "#d8416f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_visual_odometry", "name": "vehicle_visual_odometry", "type": "topic", "color": "#d89641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_thrust_setpoint", "name": "vehicle_thrust_setpoint", "type": "topic", "color": "#aad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleThrustSetpoint.msg"}, {"id": "t_vehicle_torque_setpoint", "name": "vehicle_torque_setpoint", "type": "topic", "color": "#5bd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleTorqueSetpoint.msg"}, {"id": "t_failure_detector_status", "name": "failure_detector_status", "type": "topic", "color": "#54d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position", "name": "vehicle_global_position", "type": "topic", "color": "#47d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flight_phase_estimation", "name": "flight_phase_estimation", "type": "topic", "color": "#41d8a3", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_launch_detection_status", "name": "launch_detection_status", "type": "topic", "color": "#8941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_setpoint", "name": "manual_control_setpoint", "type": "topic", "color": "#d84190", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_switches", "name": "manual_control_switches", "type": "topic", "color": "#d84175", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_value", "name": "uavcan_parameter_value", "type": "topic", "color": "#90d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status_flags", "name": "estimator_status_flags", "type": "topic", "color": "#7cd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_rates_setpoint", "name": "vehicle_rates_setpoint", "type": "topic", "color": "#41d87c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position", "name": "vehicle_local_position", "type": "topic", "color": "#d841b7", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_status", "name": "gimbal_manager_status", "type": "topic", "color": "#d8be41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_sensor_bias", "name": "estimator_sensor_bias", "type": "topic", "color": "#cbd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_self_id", "name": "open_drone_id_self_id", "type": "topic", "color": "#b7d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_land_detected", "name": "vehicle_land_detected", "type": "topic", "color": "#62d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_offboard_control_mode", "name": "offboard_control_mode", "type": "topic", "color": "#41d84e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_differential_pressure", "name": "differential_pressure", "type": "topic", "color": "#6841d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_control_mode", "name": "vehicle_control_mode", "type": "topic", "color": "#d8d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_servos_trim", "name": "actuator_servos_trim", "type": "topic", "color": "#41d8aa", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_system", "name": "open_drone_id_system", "type": "topic", "color": "#41cbd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs_sim", "name": "actuator_outputs_sim", "type": "topic", "color": "#d841be", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_vehicle_command_ack", "name": "vehicle_command_ack", "type": "topic", "color": "#d85441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vtol_vehicle_status", "name": "vtol_vehicle_status", "type": "topic", "color": "#82d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_constraints", "name": "vehicle_constraints", "type": "topic", "color": "#4190d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_optical_flow", "name": "sensor_optical_flow", "type": "topic", "color": "#6241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_target_pose", "name": "landing_target_pose", "type": "topic", "color": "#cb41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_figure_eight_status", "name": "figure_eight_status", "type": "topic", "color": "#d84196", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_trajectory_setpoint", "name": "trajectory_setpoint", "type": "topic", "color": "#d84154", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_transponder_report", "name": "transponder_report", "type": "topic", "color": "#41b1d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu_status", "name": "vehicle_imu_status", "type": "topic", "color": "#5441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear_wheel", "name": "landing_gear_wheel", "type": "topic", "color": "#8241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensors_status_imu", "name": "sensors_status_imu", "type": "topic", "color": "#9641d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed_validated", "name": "airspeed_validated", "type": "topic", "color": "#d841d2", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_power_button_state", "name": "power_button_state", "type": "topic", "color": "#d8417c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_time_estimate", "name": "rtl_time_estimate", "type": "topic", "color": "#d2d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mount_orientation", "name": "mount_orientation", "type": "topic", "color": "#b1d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_v1_command", "name": "gimbal_v1_command", "type": "topic", "color": "#41d8be", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_spoilers_setpoint", "name": "spoilers_setpoint", "type": "topic", "color": "#417cd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_sensor_correction", "name": "sensor_correction", "type": "topic", "color": "#d841c4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rc_parameter_map", "name": "rc_parameter_map", "type": "topic", "color": "#d86f41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_response", "name": "dataman_response", "type": "topic", "color": "#d87541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status", "name": "estimator_status", "type": "topic", "color": "#d88241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_telemetry_status", "name": "telemetry_status", "type": "topic", "color": "#41d86f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude", "name": "vehicle_attitude", "type": "topic", "color": "#41d8cb", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs", "name": "actuator_outputs", "type": "topic", "color": "#416fd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_vehicle_odometry", "name": "vehicle_odometry", "type": "topic", "color": "#4741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_selection", "name": "sensor_selection", "type": "topic", "color": "#d8415b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_navigator_status", "name": "navigator_status", "type": "topic", "color": "#d8414e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command", "name": "vehicle_command", "type": "topic", "color": "#d87c41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gps_inject_data", "name": "gps_inject_data", "type": "topic", "color": "#d8cb41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_controls", "name": "gimbal_controls", "type": "topic", "color": "#41d85b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_key_value", "name": "debug_key_value", "type": "topic", "color": "#41d868", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_request", "name": "dataman_request", "type": "topic", "color": "#41d896", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream_ack", "name": "ulog_stream_ack", "type": "topic", "color": "#415bd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_combined", "name": "sensor_combined", "type": "topic", "color": "#4141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_result", "name": "geofence_result", "type": "topic", "color": "#4e41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_motors", "name": "actuator_motors", "type": "topic", "color": "#d241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_status", "name": "geofence_status", "type": "topic", "color": "#d841b1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor", "name": "distance_sensor", "type": "topic", "color": "#d8419d", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_armed", "name": "actuator_armed", "type": "topic", "color": "#d86241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_status", "name": "vehicle_status", "type": "topic", "color": "#d88941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission_result", "name": "mission_result", "type": "topic", "color": "#c4d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_capture", "name": "camera_capture", "type": "topic", "color": "#41d875", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_satellite_info", "name": "satellite_info", "type": "topic", "color": "#41d882", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_battery_status", "name": "battery_status", "type": "topic", "color": "#41d890", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_action_request", "name": "action_request", "type": "topic", "color": "#41a3d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_trigger", "name": "camera_trigger", "type": "topic", "color": "#4162d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flaps_setpoint", "name": "flaps_setpoint", "type": "topic", "color": "#414ed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_failsafe_flags", "name": "failsafe_flags", "type": "topic", "color": "#d841cb", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_takeoff_status", "name": "takeoff_status", "type": "topic", "color": "#d84189", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_logger_status", "name": "logger_status", "type": "topic", "color": "#d84741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_health_report", "name": "health_report", "type": "topic", "color": "#d89041", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_test", "name": "actuator_test", "type": "topic", "color": "#bed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_home_position", "name": "home_position", "type": "topic", "color": "#a3d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_safety_button", "name": "safety_button", "type": "topic", "color": "#41d854", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_camera_status", "name": "camera_status", "type": "topic", "color": "#41b7d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_irlock_report", "name": "irlock_report", "type": "topic", "color": "#4182d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tune_control", "name": "tune_control", "type": "topic", "color": "#d8aa41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear", "name": "landing_gear", "type": "topic", "color": "#41d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_px4io_status", "name": "px4io_status", "type": "topic", "color": "#41d8c4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_system_power", "name": "system_power", "type": "topic", "color": "#41d8d2", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_orbit_status", "name": "orbit_status", "type": "topic", "color": "#5b41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_accel", "name": "sensor_accel", "type": "topic", "color": "#9041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream", "name": "ulog_stream", "type": "topic", "color": "#d84141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_array", "name": "debug_array", "type": "topic", "color": "#d8a341", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu", "name": "vehicle_imu", "type": "topic", "color": "#d8b741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_led_control", "name": "led_control", "type": "topic", "color": "#d8c441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro", "name": "sensor_gyro", "type": "topic", "color": "#d8d241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_roi", "name": "vehicle_roi", "type": "topic", "color": "#6fd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_baro", "name": "sensor_baro", "type": "topic", "color": "#41d889", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tecs_status", "name": "tecs_status", "type": "topic", "color": "#d841a3", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_value", "name": "debug_value", "type": "topic", "color": "#d84168", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gps", "name": "sensor_gps", "type": "topic", "color": "#d86841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/SensorGps.msg"}, {"id": "t_debug_vect", "name": "debug_vect", "type": "topic", "color": "#d89d41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_adc_report", "name": "adc_report", "type": "topic", "color": "#68d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_status", "name": "rtl_status", "type": "topic", "color": "#41d847", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_mag", "name": "sensor_mag", "type": "topic", "color": "#4147d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_esc_status", "name": "esc_status", "type": "topic", "color": "#b741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_input_rc", "name": "input_rc", "type": "topic", "color": "#b141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed", "name": "airspeed", "type": "topic", "color": "#d841aa", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource1d.msg"}, {"id": "t_gripper", "name": "gripper", "type": "topic", "color": "#4154d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission", "name": "mission", "type": "topic", "color": "#aa41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_cpuload", "name": "cpuload", "type": "topic", "color": "#d84147", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_event", "name": "event", "type": "topic", "color": "#41bed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_wind", "name": "wind", "type": "topic", "color": "#7541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/Wind.msg"}], "links": [{"source": "m_ads1115", "target": "t_adc_report", "color": "#68d841", "style": "dashed"}, {"source": "m_board_adc", "target": "t_system_power", "color": "#41d8d2", "style": "dashed"}, {"source": "m_board_adc", "target": "t_adc_report", "color": "#68d841", "style": "dashed"}, {"source": "m_bmp388", "target": "t_sensor_baro", "color": "#41d889", "style": "dashed"}, {"source": "m_ms5611", "target": "t_sensor_baro", "color": "#41d889", "style": "dashed"}, {"source": "m_batt_smbus", "target": "t_battery_status", "color": "#41d890", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_camera_trigger", "color": "#4162d8", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_vehicle_command_ack", "color": "#d85441", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command", "color": "#d87c41", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_camera_trigger", "color": "#4162d8", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command_ack", "color": "#d85441", "style": "dashed"}, {"source": "m_ms4525do", "target": "t_differential_pressure", "color": "#6841d8", "style": "dashed"}, {"source": "m_ms5525dso", "target": "t_differential_pressure", "color": "#6841d8", "style": "dashed"}, {"source": "m_sdp3x", "target": "t_differential_pressure", "color": "#6841d8", "style": "dashed"}, {"source": "m_cm8jl65", "target": "t_distance_sensor", "color": "#d8419d", "style": "dashed"}, {"source": "m_lightware_laser_i2c", "target": "t_distance_sensor", "color": "#d8419d", "style": "dashed"}, {"source": "m_lightware_laser_serial", "target": "t_distance_sensor", "color": "#d8419d", "style": "dashed"}, {"source": "m_ll40ls", "target": "t_distance_sensor", "color": "#d8419d", "style": "dashed"}, {"source": "m_teraranger", "target": "t_distance_sensor", "color": "#d8419d", "style": "dashed"}, {"source": "m_tf02pro", "target": "t_distance_sensor", "color": "#d8419d", "style": "dashed"}, {"source": "m_tfmini", "target": "t_distance_sensor", "color": "#d8419d", "style": "dashed"}, {"source": "m_ulanding_radar", "target": "t_distance_sensor", "color": "#d8419d", "style": "dashed"}, {"source": "m_vl53l0x", "target": "t_distance_sensor", "color": "#d8419d", "style": "dashed"}, {"source": "m_vl53l1x", "target": "t_distance_sensor", "color": "#d8419d", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_motors", "color": "#d241d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_test", "color": "#bed841", "style": "dashed"}, {"source": "m_dshot", "target": "t_vehicle_command_ack", "color": "#d85441", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_armed", "color": "#d86241", "style": "dashed"}, {"source": "m_dshot", "target": "t_esc_status", "color": "#b741d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_outputs", "color": "#416fd8", "style": "dashed"}, {"source": "m_gps", "target": "t_satellite_info", "color": "#41d882", "style": "dashed"}, {"source": "m_gps", "target": "t_sensor_gps", "color": "#d86841", "style": "dashed"}, {"source": "m_gps", "target": "t_gps_inject_data", "color": "#d8cb41", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_baro", "color": "#41d889", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_mag", "color": "#4147d8", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_gyro", "color": "#d8d241", "style": "dashed"}, {"source": "m_adis16448", "target": "t_sensor_accel", "color": "#9041d8", "style": "dashed"}, {"source": "m_adis16507", "target": "t_sensor_gyro", "color": "#d8d241", "style": "dashed"}, {"source": "m_adis16507", "target": "t_sensor_accel", "color": "#9041d8", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_gyro", "color": "#d8d241", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_accel", "color": "#9041d8", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_gyro", "color": "#d8d241", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_accel", "color": "#9041d8", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_gyro", "color": "#d8d241", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_accel", "color": "#9041d8", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_mag", "color": "#4147d8", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_gyro", "color": "#d8d241", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_accel", "color": "#9041d8", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_gyro", "color": "#d8d241", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_accel", "color": "#9041d8", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_gyro", "color": "#d8d241", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_accel", "color": "#9041d8", "style": "dashed"}, {"source": "m_irlock", "target": "t_irlock_report", "color": "#4182d8", "style": "dashed"}, {"source": "m_ak09916", "target": "t_sensor_mag", "color": "#4147d8", "style": "dashed"}, {"source": "m_ak8963", "target": "t_sensor_mag", "color": "#4147d8", "style": "dashed"}, {"source": "m_bmm150", "target": "t_sensor_mag", "color": "#4147d8", "style": "dashed"}, {"source": "m_hmc5883", "target": "t_sensor_mag", "color": "#4147d8", "style": "dashed"}, {"source": "m_ist8308", "target": "t_sensor_mag", "color": "#4147d8", "style": "dashed"}, {"source": "m_ist8310", "target": "t_sensor_mag", "color": "#4147d8", "style": "dashed"}, {"source": "m_lis3mdl", "target": "t_sensor_mag", "color": "#4147d8", "style": "dashed"}, {"source": "m_lsm303agr", "target": "t_sensor_mag", "color": "#4147d8", "style": "dashed"}, {"source": "m_mmc5983ma", "target": "t_sensor_mag", "color": "#4147d8", "style": "dashed"}, {"source": "m_qmc5883l", "target": "t_sensor_mag", "color": "#4147d8", "style": "dashed"}, {"source": "m_rm3100", "target": "t_sensor_mag", "color": "#4147d8", "style": "dashed"}, {"source": "m_iis2mdc", "target": "t_sensor_mag", "color": "#4147d8", "style": "dashed"}, {"source": "m_vcm1193l", "target": "t_sensor_mag", "color": "#4147d8", "style": "dashed"}, {"source": "m_paa3905", "target": "t_sensor_optical_flow", "color": "#6241d8", "style": "dashed"}, {"source": "m_paw3902", "target": "t_sensor_optical_flow", "color": "#6241d8", "style": "dashed"}, {"source": "m_pmw3901", "target": "t_sensor_optical_flow", "color": "#6241d8", "style": "dashed"}, {"source": "m_px4flow", "target": "t_sensor_optical_flow", "color": "#6241d8", "style": "dashed"}, {"source": "m_thoneflow", "target": "t_sensor_optical_flow", "color": "#6241d8", "style": "dashed"}, {"source": "m_ina226", "target": "t_battery_status", "color": "#41d890", "style": "dashed"}, {"source": "m_ina228", "target": "t_battery_status", "color": "#41d890", "style": "dashed"}, {"source": "m_ina238", "target": "t_battery_status", "color": "#41d890", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_motors", "color": "#d241d8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_test", "color": "#bed841", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_armed", "color": "#d86241", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_outputs", "color": "#416fd8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_motors", "color": "#d241d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_px4io_status", "color": "#41d8c4", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_test", "color": "#bed841", "style": "dashed"}, {"source": "m_px4io", "target": "t_safety_button", "color": "#41d854", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command_ack", "color": "#d85441", "style": "dashed"}, {"source": "m_px4io", "target": "t_led_control", "color": "#d8c441", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_armed", "color": "#d86241", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command", "color": "#d87c41", "style": "dashed"}, {"source": "m_px4io", "target": "t_tune_control", "color": "#d8aa41", "style": "dashed"}, {"source": "m_px4io", "target": "t_input_rc", "color": "#b141d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_outputs", "color": "#416fd8", "style": "dashed"}, {"source": "m_crsf_rc", "target": "t_input_rc", "color": "#b141d8", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_vehicle_command", "color": "#d87c41", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_vehicle_command_ack", "color": "#d85441", "style": "dashed"}, {"source": "m_dsm_rc", "target": "t_input_rc", "color": "#b141d8", "style": "dashed"}, {"source": "m_ghst_rc", "target": "t_input_rc", "color": "#b141d8", "style": "dashed"}, {"source": "m_sbus_rc", "target": "t_input_rc", "color": "#b141d8", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command", "color": "#d87c41", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command_ack", "color": "#d85441", "style": "dashed"}, {"source": "m_rc_input", "target": "t_input_rc", "color": "#b141d8", "style": "dashed"}, {"source": "m_safety_button", "target": "t_safety_button", "color": "#41d854", "style": "dashed"}, {"source": "m_safety_button", "target": "t_vehicle_command", "color": "#d87c41", "style": "dashed"}, {"source": "m_safety_button", "target": "t_led_control", "color": "#d8c441", "style": "dashed"}, {"source": "m_safety_button", "target": "t_tune_control", "color": "#d8aa41", "style": "dashed"}, {"source": "m_batmon", "target": "t_battery_status", "color": "#41d890", "style": "dashed"}, {"source": "m_hott_telemetry", "target": "t_esc_status", "color": "#b741d8", "style": "dashed"}, {"source": "m_tone_alarm", "target": "t_tune_control", "color": "#d8aa41", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_motors", "color": "#d241d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_esc_status", "color": "#b741d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_test", "color": "#bed841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_distance_sensor", "color": "#d8419d", "style": "dashed"}, {"source": "m_uavcan", "target": "t_safety_button", "color": "#41d854", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command_ack", "color": "#d85441", "style": "dashed"}, {"source": "m_uavcan", "target": "t_led_control", "color": "#d8c441", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_armed", "color": "#d86241", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command", "color": "#d87c41", "style": "dashed"}, {"source": "m_uavcan", "target": "t_uavcan_parameter_value", "color": "#90d841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_tune_control", "color": "#d8aa41", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_outputs", "color": "#416fd8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_open_drone_id_arm_status", "color": "#419dd8", "style": "dashed"}, {"source": "m_airspeed_selector", "target": "t_airspeed_validated", "color": "#d841d2", "style": "dashed"}, {"source": "m_battery_status", "target": "t_battery_status", "color": "#41d890", "style": "dashed"}, {"source": "m_camera_feedback", "target": "t_camera_capture", "color": "#41d875", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_status", "color": "#d88941", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_test", "color": "#bed841", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command_ack", "color": "#d85441", "style": "dashed"}, {"source": "m_commander", "target": "t_led_control", "color": "#d8c441", "style": "dashed"}, {"source": "m_commander", "target": "t_health_report", "color": "#d89041", "style": "dashed"}, {"source": "m_commander", "target": "t_home_position", "color": "#a3d841", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_armed", "color": "#d86241", "style": "dashed"}, {"source": "m_commander", "target": "t_failsafe_flags", "color": "#d841cb", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command", "color": "#d87c41", "style": "dashed"}, {"source": "m_commander", "target": "t_failure_detector_status", "color": "#54d841", "style": "dashed"}, {"source": "m_commander", "target": "t_tune_control", "color": "#d8aa41", "style": "dashed"}, {"source": "m_commander", "target": "t_power_button_state", "color": "#d8417c", "style": "dashed"}, {"source": "m_commander", "target": "t_event", "color": "#41bed8", "style": "dashed"}, {"source": "m_commander", "target": "t_register_ext_component_reply", "color": "#be41d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_control_mode", "color": "#d8d841", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_control_allocator_status", "color": "#d8416f", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_motors", "color": "#d241d8", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos_trim", "color": "#41d8aa", "style": "dashed"}, {"source": "m_dataman", "target": "t_dataman_response", "color": "#d87541", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status_flags", "color": "#7cd841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_attitude", "color": "#41d8cb", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_command_ack", "color": "#d85441", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_selector_status", "color": "#a341d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status", "color": "#d88241", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_local_position", "color": "#d841b7", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_global_position", "color": "#47d841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_odometry", "color": "#4741d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_sensor_bias", "color": "#cbd841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_sensor_selection", "color": "#d8415b", "style": "dashed"}, {"source": "m_ekf2", "target": "t_wind", "color": "#7541d8", "style": "dashed"}, {"source": "m_esc_battery", "target": "t_battery_status", "color": "#41d890", "style": "dashed"}, {"source": "m_send_event", "target": "t_vehicle_command_ack", "color": "#d85441", "style": "dashed"}, {"source": "m_send_event", "target": "t_led_control", "color": "#d8c441", "style": "dashed"}, {"source": "m_send_event", "target": "t_tune_control", "color": "#d8aa41", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_vehicle_constraints", "color": "#4190d8", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_landing_gear", "color": "#41d841", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_trajectory_setpoint", "color": "#d84154", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_vehicle_rates_setpoint", "color": "#41d87c", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_landing_gear_wheel", "color": "#8241d8", "style": "dashed"}, {"source": "m_fw_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#c441d8", "style": "dashed"}, {"source": "m_fw_lat_lon_control", "target": "t_flight_phase_estimation", "color": "#41d8a3", "style": "dashed"}, {"source": "m_fw_lat_lon_control", "target": "t_tecs_status", "color": "#d841a3", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_longitudinal_control_configuration", "color": "#4196d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_figure_eight_status", "color": "#d84196", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_vehicle_local_position_setpoint", "color": "#d841d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_lateral_setpoint", "color": "#41d862", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_orbit_status", "color": "#5b41d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_position_controller_landing_status", "color": "#9dd841", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_runway_control", "color": "#9d41d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_lateral_control_configuration", "color": "#41d89d", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_flaps_setpoint", "color": "#414ed8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_spoilers_setpoint", "color": "#417cd8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_landing_gear", "color": "#41d841", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_longitudinal_setpoint", "color": "#4175d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_launch_detection_status", "color": "#8941d8", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_spoilers_setpoint", "color": "#417cd8", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#41d87c", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_flaps_setpoint", "color": "#414ed8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_status", "color": "#d8be41", "style": "dashed"}, {"source": "m_gimbal", "target": "t_mount_orientation", "color": "#b1d841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command_ack", "color": "#d85441", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_controls", "color": "#41d85b", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_attitude_status", "color": "#d84162", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_information", "color": "#41c4d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command", "color": "#d87c41", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_v1_command", "color": "#41d8be", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_set_attitude", "color": "#75d841", "style": "dashed"}, {"source": "m_land_detector", "target": "t_vehicle_land_detected", "color": "#62d841", "style": "dashed"}, {"source": "m_landing_target_estimator", "target": "t_landing_target_pose", "color": "#cb41d8", "style": "dashed"}, {"source": "m_load_mon", "target": "t_cpuload", "color": "#d84147", "style": "dashed"}, {"source": "m_logger", "target": "t_ulog_stream", "color": "#d84141", "style": "dashed"}, {"source": "m_logger", "target": "t_logger_status", "color": "#d84741", "style": "dashed"}, {"source": "m_logger", "target": "t_vehicle_command_ack", "color": "#d85441", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_status", "color": "#d88941", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_setpoint", "color": "#d84190", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_command", "color": "#d87c41", "style": "dashed"}, {"source": "m_manual_control", "target": "t_landing_gear", "color": "#41d841", "style": "dashed"}, {"source": "m_manual_control", "target": "t_action_request", "color": "#41a3d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_switches", "color": "#d84175", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude", "color": "#41d8cb", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mc_virtual_attitude_setpoint", "color": "#41d8d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command_ack", "color": "#d85441", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mission", "color": "#aa41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_system", "color": "#41cbd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gps", "color": "#d86841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_rc_parameter_map", "color": "#d86f41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command", "color": "#d87c41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_input_rc", "color": "#b141d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_camera_status", "color": "#41b7d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_event", "color": "#41bed8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_transponder_report", "color": "#41b1d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_uavcan_parameter_request", "color": "#41aad8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_landing_target_pose", "color": "#cb41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_manual_control", "color": "#4189d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_visual_odometry", "color": "#d89641", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_vect", "color": "#d89d41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_irlock_report", "color": "#4182d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_fw_virtual_attitude_setpoint", "color": "#d8b141", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_global_position", "color": "#47d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_local_position", "color": "#d841b7", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_array", "color": "#d8a341", "style": "dashed"}, {"source": "m_mavlink", "target": "t_tune_control", "color": "#d8aa41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_ulog_stream_ack", "color": "#415bd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_airspeed", "color": "#d841aa", "style": "dashed"}, {"source": "m_mavlink", "target": "t_offboard_control_mode", "color": "#41d84e", "style": "dashed"}, {"source": "m_mavlink", "target": "t_distance_sensor", "color": "#d8419d", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_key_value", "color": "#41d868", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gps_inject_data", "color": "#d8cb41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_information", "color": "#d84182", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_mag", "color": "#4147d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gyro", "color": "#d8d241", "style": "dashed"}, {"source": "m_mavlink", "target": "t_telemetry_status", "color": "#41d86f", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_rates_setpoint", "color": "#41d87c", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_self_id", "color": "#b7d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_baro", "color": "#41d889", "style": "dashed"}, {"source": "m_mavlink", "target": "t_battery_status", "color": "#41d890", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_value", "color": "#d84168", "style": "dashed"}, {"source": "m_mavlink", "target": "t_dataman_request", "color": "#41d896", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_attitude_status", "color": "#d84162", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_operator_id", "color": "#96d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_differential_pressure", "color": "#6841d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude_setpoint", "color": "#6f41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_trajectory_setpoint", "color": "#d84154", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_optical_flow", "color": "#6241d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_attitude", "color": "#41d8b1", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_accel", "color": "#9041d8", "style": "dashed"}, {"source": "m_mc_att_control", "target": "t_vehicle_rates_setpoint", "color": "#41d87c", "style": "dashed"}, {"source": "m_mc_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#c441d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_constraints", "color": "#4190d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#d841d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_takeoff_status", "color": "#d84189", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_trajectory_setpoint", "color": "#d84154", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#6f41d8", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_actuator_controls_status_0", "color": "#4168d8", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#41d87c", "style": "dashed"}, {"source": "m_navigator", "target": "t_position_setpoint_triplet", "color": "#d84e41", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command_ack", "color": "#d85441", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission", "color": "#aa41d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command", "color": "#d87c41", "style": "dashed"}, {"source": "m_navigator", "target": "t_transponder_report", "color": "#41b1d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_status", "color": "#d88941", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_roi", "color": "#6fd841", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_land_detected", "color": "#62d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_global_position", "color": "#47d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_status", "color": "#d841b1", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_status", "color": "#41d847", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_time_estimate", "color": "#d2d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission_result", "color": "#c4d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_dataman_request", "color": "#41d896", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_result", "color": "#4e41d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_home_position", "color": "#a3d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_distance_sensor_mode_change_request", "color": "#7c41d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_navigator_status", "color": "#d8414e", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_vehicle_command", "color": "#d87c41", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_gripper", "color": "#4154d8", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_vehicle_command_ack", "color": "#d85441", "style": "dashed"}, {"source": "m_rc_update", "target": "t_manual_control_switches", "color": "#d84175", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu", "color": "#d8b741", "style": "dashed"}, {"source": "m_sensors", "target": "t_airspeed", "color": "#d841aa", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu_status", "color": "#5441d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensors_status_imu", "color": "#9641d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_selection", "color": "#d8415b", "style": "dashed"}, {"source": "m_sensors", "target": "t_differential_pressure", "color": "#6841d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_combined", "color": "#4141d8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_motors", "color": "#d241d8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_test", "color": "#bed841", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_armed", "color": "#d86241", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs_sim", "color": "#d841be", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs", "color": "#416fd8", "style": "dashed"}, {"source": "m_sensor_baro_sim", "target": "t_sensor_baro", "color": "#41d889", "style": "dashed"}, {"source": "m_sensor_gps_sim", "target": "t_sensor_gps", "color": "#d86841", "style": "dashed"}, {"source": "m_sensor_mag_sim", "target": "t_sensor_mag", "color": "#4147d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_airspeed", "color": "#d841aa", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_distance_sensor", "color": "#d8419d", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_attitude_groundtruth", "color": "#d85b41", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_angular_velocity_groundtruth", "color": "#41d2d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_local_position_groundtruth", "color": "#4ed841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_global_position_groundtruth", "color": "#89d841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_gyro", "color": "#d8d241", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_accel", "color": "#9041d8", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command", "color": "#d87c41", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command_ack", "color": "#d85441", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_led_control", "color": "#d8c441", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_sensor_correction", "color": "#d841c4", "style": "dashed"}, {"source": "m_uxrce_dds_client", "target": "t_vehicle_command", "color": "#d87c41", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vtol_vehicle_status", "color": "#82d841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_command_ack", "color": "#d85441", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#aad841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_attitude_setpoint", "color": "#6f41d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_torque_setpoint", "color": "#5bd841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_flaps_setpoint", "color": "#414ed8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_spoilers_setpoint", "color": "#417cd8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_tiltrotor_extra_controls", "color": "#41d8b7", "style": "dashed"}, {"source": "m_actuator_test", "target": "t_actuator_test", "color": "#bed841", "style": "dashed"}, {"source": "m_led_control", "target": "t_led_control", "color": "#d8c441", "style": "dashed"}, {"source": "m_tune_control", "target": "t_tune_control", "color": "#d8aa41", "style": "dashed"}, {"source": "t_adc_report", "target": "m_board_adc", "color": "#68d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_capture", "color": "#d87c41", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_camera_trigger", "color": "#d841b7", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_trigger", "color": "#d87c41", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_cdcacm_autostart", "color": "#d86241", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_lightware_laser_i2c", "color": "#d88941", "style": "normal"}, {"source": "t_distance_sensor_mode_change_request", "target": "m_lightware_laser_i2c", "color": "#7c41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_dshot", "color": "#d241d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_dshot", "color": "#bed841", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_dshot", "color": "#41d85b", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_dshot", "color": "#d84190", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_dshot", "color": "#d86241", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_dshot", "color": "#8241d8", "style": "normal"}, {"source": "t_gripper", "target": "m_dshot", "color": "#4154d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dshot", "color": "#d87c41", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_dshot", "color": "#41d8aa", "style": "normal"}, {"source": "t_landing_gear", "target": "m_dshot", "color": "#41d841", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_gps", "color": "#d8cb41", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_heater", "color": "#9041d8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled", "color": "#d8c441", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_is31fl3195", "color": "#d8c441", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_lp5562", "color": "#d8c441", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_ncp5623c", "color": "#d8c441", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_msp_osd", "color": "#d88941", "style": "normal"}, {"source": "t_battery_status", "target": "m_msp_osd", "color": "#41d890", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_msp_osd", "color": "#41d8cb", "style": "normal"}, {"source": "t_home_position", "target": "m_msp_osd", "color": "#a3d841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_msp_osd", "color": "#d841d2", "style": "normal"}, {"source": "t_input_rc", "target": "m_msp_osd", "color": "#b141d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_msp_osd", "color": "#d841b7", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_msp_osd", "color": "#47d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina226", "color": "#d88941", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina226", "color": "#41d8a3", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina228", "color": "#d88941", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina228", "color": "#41d8a3", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina238", "color": "#d88941", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina238", "color": "#41d8a3", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pm_selector_auterion", "color": "#d86241", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out", "color": "#d241d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out", "color": "#bed841", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out", "color": "#41d85b", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out", "color": "#d84190", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out", "color": "#d86241", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out", "color": "#8241d8", "style": "normal"}, {"source": "t_gripper", "target": "m_pwm_out", "color": "#4154d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out", "color": "#d87c41", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out", "color": "#41d8aa", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out", "color": "#41d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_px4io", "color": "#d88941", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_px4io", "color": "#d241d8", "style": "normal"}, {"source": "t_px4io_status", "target": "m_px4io", "color": "#41d8c4", "style": "normal"}, {"source": "t_actuator_test", "target": "m_px4io", "color": "#bed841", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_px4io", "color": "#41d85b", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_px4io", "color": "#d86241", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_px4io", "color": "#d84190", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_px4io", "color": "#8241d8", "style": "normal"}, {"source": "t_gripper", "target": "m_px4io", "color": "#4154d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_px4io", "color": "#d87c41", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_px4io", "color": "#41d8aa", "style": "normal"}, {"source": "t_landing_gear", "target": "m_px4io", "color": "#41d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_crsf_rc", "color": "#41d8cb", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_crsf_rc", "color": "#d88941", "style": "normal"}, {"source": "t_battery_status", "target": "m_crsf_rc", "color": "#41d890", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_dsm_rc", "color": "#d88941", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dsm_rc", "color": "#d87c41", "style": "normal"}, {"source": "t_battery_status", "target": "m_ghst_rc", "color": "#41d890", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_rc_input", "color": "#d88941", "style": "normal"}, {"source": "t_adc_report", "target": "m_rc_input", "color": "#68d841", "style": "normal"}, {"source": "t_battery_status", "target": "m_rc_input", "color": "#41d890", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rc_input", "color": "#41d8cb", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_rc_input", "color": "#d87c41", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_safety_button", "color": "#d86241", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_bst", "color": "#41d8cb", "style": "normal"}, {"source": "t_battery_status", "target": "m_bst", "color": "#41d890", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_frsky_telemetry", "color": "#d88941", "style": "normal"}, {"source": "t_battery_status", "target": "m_frsky_telemetry", "color": "#41d890", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_frsky_telemetry", "color": "#d841b7", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_frsky_telemetry", "color": "#47d841", "style": "normal"}, {"source": "t_airspeed", "target": "m_hott_telemetry", "color": "#d841aa", "style": "normal"}, {"source": "t_battery_status", "target": "m_hott_telemetry", "color": "#41d890", "style": "normal"}, {"source": "t_home_position", "target": "m_hott_telemetry", "color": "#a3d841", "style": "normal"}, {"source": "t_esc_status", "target": "m_hott_telemetry", "color": "#b741d8", "style": "normal"}, {"source": "t_tune_control", "target": "m_tone_alarm", "color": "#d8aa41", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_uavcan", "color": "#d86241", "style": "normal"}, {"source": "t_open_drone_id_system", "target": "m_uavcan", "color": "#41cbd8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_uavcan", "color": "#d87c41", "style": "normal"}, {"source": "t_uavcan_parameter_request", "target": "m_uavcan", "color": "#41aad8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_uavcan", "color": "#d88941", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_uavcan", "color": "#d241d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_uavcan", "color": "#62d841", "style": "normal"}, {"source": "t_tune_control", "target": "m_uavcan", "color": "#d8aa41", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uavcan", "color": "#d841b7", "style": "normal"}, {"source": "t_landing_gear", "target": "m_uavcan", "color": "#41d841", "style": "normal"}, {"source": "t_led_control", "target": "m_uavcan", "color": "#d8c441", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_uavcan", "color": "#41d85b", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uavcan", "color": "#d84190", "style": "normal"}, {"source": "t_gripper", "target": "m_uavcan", "color": "#4154d8", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_uavcan", "color": "#d8cb41", "style": "normal"}, {"source": "t_open_drone_id_self_id", "target": "m_uavcan", "color": "#b7d841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_uavcan", "color": "#bed841", "style": "normal"}, {"source": "t_home_position", "target": "m_uavcan", "color": "#a3d841", "style": "normal"}, {"source": "t_open_drone_id_operator_id", "target": "m_uavcan", "color": "#96d841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_uavcan", "color": "#41d8aa", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_uavcan", "color": "#8241d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airspeed_selector", "color": "#d88941", "style": "normal"}, {"source": "t_airspeed", "target": "m_airspeed_selector", "color": "#d841aa", "style": "normal"}, {"source": "t_tecs_status", "target": "m_airspeed_selector", "color": "#d841a3", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_airspeed_selector", "color": "#41d8cb", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_airspeed_selector", "color": "#62d841", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_airspeed_selector", "color": "#aad841", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_airspeed_selector", "color": "#a341d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_airspeed_selector", "color": "#41d8a3", "style": "normal"}, {"source": "t_estimator_status", "target": "m_airspeed_selector", "color": "#d88241", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_airspeed_selector", "color": "#d841b7", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_airspeed_selector", "color": "#8941d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_status", "color": "#d88941", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_battery_status", "color": "#41d8a3", "style": "normal"}, {"source": "t_adc_report", "target": "m_battery_status", "color": "#68d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_camera_feedback", "color": "#41d8cb", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_camera_feedback", "color": "#4162d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_camera_feedback", "color": "#47d841", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_camera_feedback", "color": "#d84162", "style": "normal"}, {"source": "t_vtol_vehicle_status", "target": "m_commander", "color": "#82d841", "style": "normal"}, {"source": "t_logger_status", "target": "m_commander", "color": "#d84741", "style": "normal"}, {"source": "t_estimator_status_flags", "target": "m_commander", "color": "#7cd841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_commander", "color": "#41d8cb", "style": "normal"}, {"source": "t_system_power", "target": "m_commander", "color": "#41d8d2", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_commander", "color": "#d85441", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_commander", "color": "#9641d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_commander", "color": "#d86241", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_commander", "color": "#d86841", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_commander", "color": "#a341d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_commander", "color": "#d87c41", "style": "normal"}, {"source": "t_estimator_status", "target": "m_commander", "color": "#d88241", "style": "normal"}, {"source": "t_event", "target": "m_commander", "color": "#41bed8", "style": "normal"}, {"source": "t_esc_status", "target": "m_commander", "color": "#b741d8", "style": "normal"}, {"source": "t_action_request", "target": "m_commander", "color": "#41a3d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_commander", "color": "#d88941", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_commander", "color": "#d241d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_commander", "color": "#62d841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_commander", "color": "#d841d2", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_commander", "color": "#d841c4", "style": "normal"}, {"source": "t_navigator_status", "target": "m_commander", "color": "#d8414e", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_commander", "color": "#d841b7", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_commander", "color": "#47d841", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_commander", "color": "#41d84e", "style": "normal"}, {"source": "t_safety_button", "target": "m_commander", "color": "#41d854", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_commander", "color": "#d8419d", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_commander", "color": "#d84190", "style": "normal"}, {"source": "t_power_button_state", "target": "m_commander", "color": "#d8417c", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_commander", "color": "#4147d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_commander", "color": "#d8d241", "style": "normal"}, {"source": "t_telemetry_status", "target": "m_commander", "color": "#41d86f", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_commander", "color": "#d84175", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_commander", "color": "#d2d841", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_commander", "color": "#cbd841", "style": "normal"}, {"source": "t_mission_result", "target": "m_commander", "color": "#c4d841", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_commander", "color": "#41d889", "style": "normal"}, {"source": "t_battery_status", "target": "m_commander", "color": "#41d890", "style": "normal"}, {"source": "t_geofence_result", "target": "m_commander", "color": "#4e41d8", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_commander", "color": "#5441d8", "style": "normal"}, {"source": "t_home_position", "target": "m_commander", "color": "#a3d841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_commander", "color": "#d8415b", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_commander", "color": "#6841d8", "style": "normal"}, {"source": "t_wind", "target": "m_commander", "color": "#7541d8", "style": "normal"}, {"source": "t_cpuload", "target": "m_commander", "color": "#d84147", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_commander", "color": "#9041d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_control_allocator", "color": "#d88941", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_control_allocator", "color": "#aad841", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_control_allocator", "color": "#5bd841", "style": "normal"}, {"source": "t_failure_detector_status", "target": "m_control_allocator", "color": "#54d841", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_control_allocator", "color": "#d84175", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_control_allocator", "color": "#414ed8", "style": "normal"}, {"source": "t_spoilers_setpoint", "target": "m_control_allocator", "color": "#417cd8", "style": "normal"}, {"source": "t_tiltrotor_extra_controls", "target": "m_control_allocator", "color": "#41d8b7", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_control_allocator", "color": "#d8d841", "style": "normal"}, {"source": "t_dataman_request", "target": "m_dataman", "color": "#41d896", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ekf2", "color": "#d88941", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_ekf2", "color": "#d8b741", "style": "normal"}, {"source": "t_airspeed", "target": "m_ekf2", "color": "#d841aa", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_ekf2", "color": "#d8419d", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_ekf2", "color": "#62d841", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_ekf2", "color": "#9641d8", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_ekf2", "color": "#8941d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_ekf2", "color": "#d841d2", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_ekf2", "color": "#d89641", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_ekf2", "color": "#d8415b", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_ekf2", "color": "#d87c41", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_ekf2", "color": "#4141d8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_ekf2", "color": "#cb41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_esc_battery", "color": "#d88941", "style": "normal"}, {"source": "t_esc_status", "target": "m_esc_battery", "color": "#b741d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_esc_battery", "color": "#41d8a3", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_send_event", "color": "#d88941", "style": "normal"}, {"source": "t_battery_status", "target": "m_send_event", "color": "#41d890", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_send_event", "color": "#d841cb", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_send_event", "color": "#d87c41", "style": "normal"}, {"source": "t_cpuload", "target": "m_send_event", "color": "#d84147", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_flight_mode_manager", "color": "#d88941", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_flight_mode_manager", "color": "#62d841", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_flight_mode_manager", "color": "#d84189", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_flight_mode_manager", "color": "#d87c41", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_flight_mode_manager", "color": "#6f41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_flight_mode_manager", "color": "#d841b7", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_flight_mode_manager", "color": "#d8d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_att_control", "color": "#d88941", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_att_control", "color": "#41d8cb", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_att_control", "color": "#62d841", "style": "normal"}, {"source": "t_fixed_wing_runway_control", "target": "m_fw_att_control", "color": "#9d41d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_att_control", "color": "#d84190", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_att_control", "color": "#d841d2", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_fw_att_control", "color": "#6f41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_att_control", "color": "#d841b7", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_fw_att_control", "color": "#c441d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_att_control", "color": "#d8d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_autotune_attitude_control", "color": "#d88941", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_autotune_attitude_control", "color": "#d84190", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_lat_lon_control", "color": "#d88941", "style": "normal"}, {"source": "t_longitudinal_control_configuration", "target": "m_fw_lat_lon_control", "color": "#4196d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_lat_lon_control", "color": "#41d8cb", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_lat_lon_control", "color": "#62d841", "style": "normal"}, {"source": "t_lateral_control_configuration", "target": "m_fw_lat_lon_control", "color": "#41d89d", "style": "normal"}, {"source": "t_fixed_wing_lateral_setpoint", "target": "m_fw_lat_lon_control", "color": "#41d862", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_lat_lon_control", "color": "#d841d2", "style": "normal"}, {"source": "t_wind", "target": "m_fw_lat_lon_control", "color": "#7541d8", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_fw_lat_lon_control", "color": "#414ed8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_lat_lon_control", "color": "#d841b7", "style": "normal"}, {"source": "t_fixed_wing_longitudinal_setpoint", "target": "m_fw_lat_lon_control", "color": "#4175d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_lat_lon_control", "color": "#d8d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_mode_manager", "color": "#d88941", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_mode_manager", "color": "#41d8cb", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_fw_mode_manager", "color": "#d84e41", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_mode_manager", "color": "#62d841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_mode_manager", "color": "#d84190", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_mode_manager", "color": "#d841d2", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_fw_mode_manager", "color": "#d84154", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_fw_mode_manager", "color": "#d87c41", "style": "normal"}, {"source": "t_wind", "target": "m_fw_mode_manager", "color": "#7541d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_mode_manager", "color": "#d841b7", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_fw_mode_manager", "color": "#47d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_mode_manager", "color": "#d8d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_rate_control", "color": "#d88941", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_fw_rate_control", "color": "#41d87c", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_fw_rate_control", "color": "#d8416f", "style": "normal"}, {"source": "t_battery_status", "target": "m_fw_rate_control", "color": "#41d890", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_rate_control", "color": "#62d841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_rate_control", "color": "#d84190", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_rate_control", "color": "#d841d2", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_rate_control", "color": "#d8d841", "style": "normal"}, {"source": "t_vehicle_roi", "target": "m_gimbal", "color": "#6fd841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_gimbal", "color": "#41d8cb", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_gimbal", "color": "#62d841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_gimbal", "color": "#d84e41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gimbal", "color": "#d84190", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_gimbal", "color": "#d84162", "style": "normal"}, {"source": "t_gimbal_manager_set_manual_control", "target": "m_gimbal", "color": "#4189d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gimbal", "color": "#d87c41", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_gimbal", "color": "#d84182", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_gimbal", "color": "#47d841", "style": "normal"}, {"source": "t_gimbal_manager_set_attitude", "target": "m_gimbal", "color": "#41d8b1", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_gyro_calibration", "color": "#d88941", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_calibration", "color": "#d8d241", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_gyro_calibration", "color": "#d841c4", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_gyro_calibration", "color": "#9041d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_land_detector", "color": "#d88941", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_land_detector", "color": "#d84e41", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_land_detector", "color": "#5441d8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_land_detector", "color": "#aad841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_land_detector", "color": "#d86241", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_land_detector", "color": "#d841d2", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_land_detector", "color": "#d8415b", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_land_detector", "color": "#d84189", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_land_detector", "color": "#d84154", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_land_detector", "color": "#d841b7", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_land_detector", "color": "#47d841", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_land_detector", "color": "#8941d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_land_detector", "color": "#d8d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_landing_target_estimator", "color": "#d841b7", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_landing_target_estimator", "color": "#41d8cb", "style": "normal"}, {"source": "t_irlock_report", "target": "m_landing_target_estimator", "color": "#4182d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_logger", "color": "#d88941", "style": "normal"}, {"source": "t_ulog_stream_ack", "target": "m_logger", "color": "#415bd8", "style": "normal"}, {"source": "t_battery_status", "target": "m_logger", "color": "#41d890", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_logger", "color": "#d84190", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_logger", "color": "#d87c41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mag_bias_estimator", "color": "#d88941", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mag_bias_estimator", "color": "#4147d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_manual_control", "color": "#d88941", "style": "normal"}, {"source": "t_action_request", "target": "m_manual_control", "color": "#41a3d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_manual_control", "color": "#d84190", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_manual_control", "color": "#d84175", "style": "normal"}, {"source": "t_ulog_stream", "target": "m_mavlink", "color": "#d84141", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_mavlink", "color": "#d84e41", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_mavlink", "color": "#d85b41", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_mavlink", "color": "#d85441", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_mavlink", "color": "#d86241", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_mavlink", "color": "#d86841", "style": "normal"}, {"source": "t_dataman_response", "target": "m_mavlink", "color": "#d87541", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_mavlink", "color": "#d87c41", "style": "normal"}, {"source": "t_estimator_status", "target": "m_mavlink", "color": "#d88241", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mavlink", "color": "#d88941", "style": "normal"}, {"source": "t_health_report", "target": "m_mavlink", "color": "#d89041", "style": "normal"}, {"source": "t_debug_vect", "target": "m_mavlink", "color": "#d89d41", "style": "normal"}, {"source": "t_debug_array", "target": "m_mavlink", "color": "#d8a341", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_mavlink", "color": "#d8b741", "style": "normal"}, {"source": "t_gimbal_manager_status", "target": "m_mavlink", "color": "#d8be41", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_mavlink", "color": "#d8cb41", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mavlink", "color": "#d8d841", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_mavlink", "color": "#d2d841", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_mavlink", "color": "#cbd841", "style": "normal"}, {"source": "t_mission_result", "target": "m_mavlink", "color": "#c4d841", "style": "normal"}, {"source": "t_mount_orientation", "target": "m_mavlink", "color": "#b1d841", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_mavlink", "color": "#aad841", "style": "normal"}, {"source": "t_home_position", "target": "m_mavlink", "color": "#a3d841", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_mavlink", "color": "#89d841", "style": "normal"}, {"source": "t_uavcan_parameter_value", "target": "m_mavlink", "color": "#90d841", "style": "normal"}, {"source": "t_gimbal_device_set_attitude", "target": "m_mavlink", "color": "#75d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mavlink", "color": "#62d841", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_mavlink", "color": "#4ed841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_mavlink", "color": "#47d841", "style": "normal"}, {"source": "t_debug_key_value", "target": "m_mavlink", "color": "#41d868", "style": "normal"}, {"source": "t_camera_capture", "target": "m_mavlink", "color": "#41d875", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mavlink", "color": "#41d87c", "style": "normal"}, {"source": "t_satellite_info", "target": "m_mavlink", "color": "#41d882", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_mavlink", "color": "#41d889", "style": "normal"}, {"source": "t_battery_status", "target": "m_mavlink", "color": "#41d890", "style": "normal"}, {"source": "t_gimbal_v1_command", "target": "m_mavlink", "color": "#41d8be", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mavlink", "color": "#41d8cb", "style": "normal"}, {"source": "t_vehicle_angular_velocity_groundtruth", "target": "m_mavlink", "color": "#41d2d8", "style": "normal"}, {"source": "t_gimbal_manager_information", "target": "m_mavlink", "color": "#41c4d8", "style": "normal"}, {"source": "t_camera_status", "target": "m_mavlink", "color": "#41b7d8", "style": "normal"}, {"source": "t_event", "target": "m_mavlink", "color": "#41bed8", "style": "normal"}, {"source": "t_transponder_report", "target": "m_mavlink", "color": "#41b1d8", "style": "normal"}, {"source": "t_open_drone_id_arm_status", "target": "m_mavlink", "color": "#419dd8", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_mavlink", "color": "#416fd8", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_mavlink", "color": "#4162d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mavlink", "color": "#4147d8", "style": "normal"}, {"source": "t_vehicle_odometry", "target": "m_mavlink", "color": "#4741d8", "style": "normal"}, {"source": "t_geofence_result", "target": "m_mavlink", "color": "#4e41d8", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_mavlink", "color": "#5441d8", "style": "normal"}, {"source": "t_orbit_status", "target": "m_mavlink", "color": "#5b41d8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_mavlink", "color": "#6841d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mavlink", "color": "#6f41d8", "style": "normal"}, {"source": "t_wind", "target": "m_mavlink", "color": "#7541d8", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_mavlink", "color": "#a341d8", "style": "normal"}, {"source": "t_mission", "target": "m_mavlink", "color": "#aa41d8", "style": "normal"}, {"source": "t_input_rc", "target": "m_mavlink", "color": "#b141d8", "style": "normal"}, {"source": "t_register_ext_component_reply", "target": "m_mavlink", "color": "#be41d8", "style": "normal"}, {"source": "t_esc_status", "target": "m_mavlink", "color": "#b741d8", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mavlink", "color": "#c441d8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_mavlink", "color": "#cb41d8", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_mavlink", "color": "#d841d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_mavlink", "color": "#d841d2", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_mavlink", "color": "#d841cb", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_mavlink", "color": "#d841be", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_mavlink", "color": "#d841c4", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mavlink", "color": "#d841b7", "style": "normal"}, {"source": "t_airspeed", "target": "m_mavlink", "color": "#d841aa", "style": "normal"}, {"source": "t_tecs_status", "target": "m_mavlink", "color": "#d841a3", "style": "normal"}, {"source": "t_figure_eight_status", "target": "m_mavlink", "color": "#d84196", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_mavlink", "color": "#d8419d", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mavlink", "color": "#d84190", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_mavlink", "color": "#d84182", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_mavlink", "color": "#d84175", "style": "normal"}, {"source": "t_debug_value", "target": "m_mavlink", "color": "#d84168", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_mavlink", "color": "#d84162", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_mavlink", "color": "#d8415b", "style": "normal"}, {"source": "t_cpuload", "target": "m_mavlink", "color": "#d84147", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_att_control", "color": "#d88941", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mc_att_control", "color": "#41d8cb", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_att_control", "color": "#62d841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_att_control", "color": "#d84190", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mc_att_control", "color": "#6f41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_att_control", "color": "#d841b7", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mc_att_control", "color": "#c441d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_att_control", "color": "#d8d841", "style": "normal"}, {"source": "t_actuator_controls_status_0", "target": "m_mc_autotune_attitude_control", "color": "#4168d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_autotune_attitude_control", "color": "#d88941", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#d84190", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#5bd841", "style": "normal"}, {"source": "t_vehicle_constraints", "target": "m_mc_pos_control", "color": "#4190d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_pos_control", "color": "#62d841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_mc_pos_control", "color": "#d84154", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_pos_control", "color": "#d841b7", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_pos_control", "color": "#d8d841", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_mc_rate_control", "color": "#d8416f", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mc_rate_control", "color": "#41d87c", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_rate_control", "color": "#d88941", "style": "normal"}, {"source": "t_battery_status", "target": "m_mc_rate_control", "color": "#41d890", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_rate_control", "color": "#62d841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_rate_control", "color": "#d84190", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_rate_control", "color": "#d8d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_navigator", "color": "#d88941", "style": "normal"}, {"source": "t_geofence_status", "target": "m_navigator", "color": "#d841b1", "style": "normal"}, {"source": "t_rtl_status", "target": "m_navigator", "color": "#41d847", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_navigator", "color": "#62d841", "style": "normal"}, {"source": "t_mission", "target": "m_navigator", "color": "#aa41d8", "style": "normal"}, {"source": "t_home_position", "target": "m_navigator", "color": "#a3d841", "style": "normal"}, {"source": "t_position_controller_landing_status", "target": "m_navigator", "color": "#9dd841", "style": "normal"}, {"source": "t_dataman_response", "target": "m_navigator", "color": "#d87541", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_navigator", "color": "#d87c41", "style": "normal"}, {"source": "t_wind", "target": "m_navigator", "color": "#7541d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_navigator", "color": "#d841b7", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_navigator", "color": "#47d841", "style": "normal"}, {"source": "t_transponder_report", "target": "m_navigator", "color": "#41b1d8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_navigator", "color": "#cb41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_payload_deliverer", "color": "#d87c41", "style": "normal"}, {"source": "t_rc_parameter_map", "target": "m_rc_update", "color": "#d86f41", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_rc_update", "color": "#d84175", "style": "normal"}, {"source": "t_input_rc", "target": "m_rc_update", "color": "#b141d8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_sensors", "color": "#cbd841", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_sensors", "color": "#d8b741", "style": "normal"}, {"source": "t_adc_report", "target": "m_sensors", "color": "#68d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_sensors", "color": "#d8d841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_sensors", "color": "#5441d8", "style": "normal"}, {"source": "t_sensor_optical_flow", "target": "m_sensors", "color": "#6241d8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_sensors", "color": "#d8415b", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_sensors", "color": "#6841d8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_sensors", "color": "#d841c4", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_sensors", "color": "#4147d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_sensors", "color": "#d8d241", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_sensors", "color": "#9041d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out_sim", "color": "#d241d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out_sim", "color": "#bed841", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out_sim", "color": "#41d85b", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out_sim", "color": "#d84190", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out_sim", "color": "#d86241", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out_sim", "color": "#8241d8", "style": "normal"}, {"source": "t_gripper", "target": "m_pwm_out_sim", "color": "#4154d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out_sim", "color": "#d87c41", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out_sim", "color": "#41d8aa", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out_sim", "color": "#41d841", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_baro_sim", "color": "#89d841", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#4ed841", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#89d841", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_sensor_mag_sim", "color": "#d85b41", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_mag_sim", "color": "#89d841", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_simulator_sih", "color": "#416fd8", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_simulator_sih", "color": "#d841be", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_temperature_compensation", "color": "#41d889", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_temperature_compensation", "color": "#d87c41", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_temperature_compensation", "color": "#4147d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_temperature_compensation", "color": "#d8d241", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_temperature_compensation", "color": "#9041d8", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_uxrce_dds_client", "color": "#d85441", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_vtol_att_control", "color": "#41d8cb", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_vtol_att_control", "color": "#d84e41", "style": "normal"}, {"source": "t_mc_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#41d8d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_vtol_att_control", "color": "#d87c41", "style": "normal"}, {"source": "t_action_request", "target": "m_vtol_att_control", "color": "#41a3d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_vtol_att_control", "color": "#d88941", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_vtol_att_control", "color": "#62d841", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_vtol_att_control", "color": "#d841d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_vtol_att_control", "color": "#d841d2", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_vtol_att_control", "color": "#d841b7", "style": "normal"}, {"source": "t_fw_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#d8b141", "style": "normal"}, {"source": "t_tecs_status", "target": "m_vtol_att_control", "color": "#d841a3", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_vtol_att_control", "color": "#d8d841", "style": "normal"}, {"source": "t_home_position", "target": "m_vtol_att_control", "color": "#a3d841", "style": "normal"}]} \ No newline at end of file diff --git a/docs/public/middleware/graph_px4_fmu-v6x.json b/docs/public/middleware/graph_px4_fmu-v6x.json index cdc717fa67..559e95c2e7 100644 --- a/docs/public/middleware/graph_px4_fmu-v6x.json +++ b/docs/public/middleware/graph_px4_fmu-v6x.json @@ -1 +1 @@ -{"nodes": [{"id": "m_fw_autotune_attitude_control", "name": "fw_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_autotune_attitude_control", "name": "mc_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_landing_target_estimator", "name": "landing_target_estimator", "type": "Module", "color": "#666666"}, {"id": "m_temperature_compensation", "name": "temperature_compensation", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_serial", "name": "lightware_laser_serial", "type": "Module", "color": "#666666"}, {"id": "m_pm_selector_auterion", "name": "pm_selector_auterion", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_i2c", "name": "lightware_laser_i2c", "type": "Module", "color": "#666666"}, {"id": "m_flight_mode_manager", "name": "flight_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_mag_bias_estimator", "name": "mag_bias_estimator", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_is31fl3195", "name": "rgbled_is31fl3195", "type": "Module", "color": "#666666"}, {"id": "m_airspeed_selector", "name": "airspeed_selector", "type": "Module", "color": "#666666"}, {"id": "m_control_allocator", "name": "control_allocator", "type": "Module", "color": "#666666"}, {"id": "m_cdcacm_autostart", "name": "cdcacm_autostart", "type": "Module", "color": "#666666"}, {"id": "m_gyro_calibration", "name": "gyro_calibration", "type": "Module", "color": "#666666"}, {"id": "m_uxrce_dds_client", "name": "uxrce_dds_client", "type": "Module", "color": "#666666"}, {"id": "m_vtol_att_control", "name": "vtol_att_control", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_ncp5623c", "name": "rgbled_ncp5623c", "type": "Module", "color": "#666666"}, {"id": "m_camera_feedback", "name": "camera_feedback", "type": "Module", "color": "#666666"}, {"id": "m_fw_rate_control", "name": "fw_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_rate_control", "name": "mc_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_camera_capture", "name": "camera_capture", "type": "Module", "color": "#666666"}, {"id": "m_camera_trigger", "name": "camera_trigger", "type": "Module", "color": "#666666"}, {"id": "m_ulanding_radar", "name": "ulanding_radar", "type": "Module", "color": "#666666"}, {"id": "m_battery_status", "name": "battery_status", "type": "Module", "color": "#666666"}, {"id": "m_fw_att_control", "name": "fw_att_control", "type": "Module", "color": "#666666"}, {"id": "m_fw_pos_control", "name": "fw_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_manual_control", "name": "manual_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_att_control", "name": "mc_att_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_pos_control", "name": "mc_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_lp5562", "name": "rgbled_lp5562", "type": "Module", "color": "#666666"}, {"id": "m_safety_button", "name": "safety_button", "type": "Module", "color": "#666666"}, {"id": "m_land_detector", "name": "land_detector", "type": "Module", "color": "#666666"}, {"id": "m_actuator_test", "name": "actuator_test", "type": "Module", "color": "#666666"}, {"id": "m_i2c_launcher", "name": "i2c_launcher", "type": "Module", "color": "#666666"}, {"id": "m_tune_control", "name": "tune_control", "type": "Module", "color": "#666666"}, {"id": "m_esc_battery", "name": "esc_battery", "type": "Module", "color": "#666666"}, {"id": "m_led_control", "name": "led_control", "type": "Module", "color": "#666666"}, {"id": "m_teraranger", "name": "teraranger", "type": "Module", "color": "#666666"}, {"id": "m_septentrio", "name": "septentrio", "type": "Module", "color": "#666666"}, {"id": "m_tone_alarm", "name": "tone_alarm", "type": "Module", "color": "#666666"}, {"id": "m_send_event", "name": "send_event", "type": "Module", "color": "#666666"}, {"id": "m_board_adc", "name": "board_adc", "type": "Module", "color": "#666666"}, {"id": "m_ms5525dso", "name": "ms5525dso", "type": "Module", "color": "#666666"}, {"id": "m_adis16470", "name": "adis16470", "type": "Module", "color": "#666666"}, {"id": "m_icm42670p", "name": "icm42670p", "type": "Module", "color": "#666666"}, {"id": "m_icm42688p", "name": "icm42688p", "type": "Module", "color": "#666666"}, {"id": "m_lsm303agr", "name": "lsm303agr", "type": "Module", "color": "#666666"}, {"id": "m_mmc5983ma", "name": "mmc5983ma", "type": "Module", "color": "#666666"}, {"id": "m_commander", "name": "commander", "type": "Module", "color": "#666666"}, {"id": "m_navigator", "name": "navigator", "type": "Module", "color": "#666666"}, {"id": "m_rc_update", "name": "rc_update", "type": "Module", "color": "#666666"}, {"id": "m_icp201xx", "name": "icp201xx", "type": "Module", "color": "#666666"}, {"id": "m_ms4525do", "name": "ms4525do", "type": "Module", "color": "#666666"}, {"id": "m_icm20602", "name": "icm20602", "type": "Module", "color": "#666666"}, {"id": "m_icm20649", "name": "icm20649", "type": "Module", "color": "#666666"}, {"id": "m_icm20948", "name": "icm20948", "type": "Module", "color": "#666666"}, {"id": "m_icm45686", "name": "icm45686", "type": "Module", "color": "#666666"}, {"id": "m_iim42652", "name": "iim42652", "type": "Module", "color": "#666666"}, {"id": "m_qmc5883l", "name": "qmc5883l", "type": "Module", "color": "#666666"}, {"id": "m_vcm1193l", "name": "vcm1193l", "type": "Module", "color": "#666666"}, {"id": "m_rc_input", "name": "rc_input", "type": "Module", "color": "#666666"}, {"id": "m_load_mon", "name": "load_mon", "type": "Module", "color": "#666666"}, {"id": "m_ads1115", "name": "ads1115", "type": "Module", "color": "#666666"}, {"id": "m_cm8jl65", "name": "cm8jl65", "type": "Module", "color": "#666666"}, {"id": "m_tf02pro", "name": "tf02pro", "type": "Module", "color": "#666666"}, {"id": "m_vl53l0x", "name": "vl53l0x", "type": "Module", "color": "#666666"}, {"id": "m_vl53l1x", "name": "vl53l1x", "type": "Module", "color": "#666666"}, {"id": "m_ak09916", "name": "ak09916", "type": "Module", "color": "#666666"}, {"id": "m_hmc5883", "name": "hmc5883", "type": "Module", "color": "#666666"}, {"id": "m_ist8308", "name": "ist8308", "type": "Module", "color": "#666666"}, {"id": "m_ist8310", "name": "ist8310", "type": "Module", "color": "#666666"}, {"id": "m_lis3mdl", "name": "lis3mdl", "type": "Module", "color": "#666666"}, {"id": "m_iis2mdc", "name": "iis2mdc", "type": "Module", "color": "#666666"}, {"id": "m_msp_osd", "name": "msp_osd", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out", "name": "pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_dataman", "name": "dataman", "type": "Module", "color": "#666666"}, {"id": "m_mavlink", "name": "mavlink", "type": "Module", "color": "#666666"}, {"id": "m_sensors", "name": "sensors", "type": "Module", "color": "#666666"}, {"id": "m_bmp388", "name": "bmp388", "type": "Module", "color": "#666666"}, {"id": "m_ms5611", "name": "ms5611", "type": "Module", "color": "#666666"}, {"id": "m_ll40ls", "name": "ll40ls", "type": "Module", "color": "#666666"}, {"id": "m_tfmini", "name": "tfmini", "type": "Module", "color": "#666666"}, {"id": "m_heater", "name": "heater", "type": "Module", "color": "#666666"}, {"id": "m_bmi088", "name": "bmi088", "type": "Module", "color": "#666666"}, {"id": "m_rgbled", "name": "rgbled", "type": "Module", "color": "#666666"}, {"id": "m_ak8963", "name": "ak8963", "type": "Module", "color": "#666666"}, {"id": "m_bmm150", "name": "bmm150", "type": "Module", "color": "#666666"}, {"id": "m_rm3100", "name": "rm3100", "type": "Module", "color": "#666666"}, {"id": "m_ina226", "name": "ina226", "type": "Module", "color": "#666666"}, {"id": "m_ina228", "name": "ina228", "type": "Module", "color": "#666666"}, {"id": "m_ina238", "name": "ina238", "type": "Module", "color": "#666666"}, {"id": "m_uavcan", "name": "uavcan", "type": "Module", "color": "#666666"}, {"id": "m_gimbal", "name": "gimbal", "type": "Module", "color": "#666666"}, {"id": "m_logger", "name": "logger", "type": "Module", "color": "#666666"}, {"id": "m_sdp3x", "name": "sdp3x", "type": "Module", "color": "#666666"}, {"id": "m_dshot", "name": "dshot", "type": "Module", "color": "#666666"}, {"id": "m_px4io", "name": "px4io", "type": "Module", "color": "#666666"}, {"id": "m_ekf2", "name": "ekf2", "type": "Module", "color": "#666666"}, {"id": "m_gps", "name": "gps", "type": "Module", "color": "#666666"}, {"id": "t_distance_sensor_mode_change_request", "name": "distance_sensor_mode_change_request", "type": "topic", "color": "#4158d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_landing_status", "name": "position_controller_landing_status", "type": "topic", "color": "#d88141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_manual_control", "name": "gimbal_manager_set_manual_control", "type": "topic", "color": "#77d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_autotune_attitude_control_status", "name": "autotune_attitude_control_status", "type": "topic", "color": "#d87241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_setpoint", "name": "vehicle_local_position_setpoint", "type": "topic", "color": "#d8ab41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_attitude_status", "name": "gimbal_device_attitude_status", "type": "topic", "color": "#85d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fw_virtual_attitude_setpoint", "name": "fw_virtual_attitude_setpoint", "type": "topic", "color": "#b0d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mc_virtual_attitude_setpoint", "name": "mc_virtual_attitude_setpoint", "type": "topic", "color": "#5b41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_register_ext_component_reply", "name": "register_ext_component_reply", "type": "topic", "color": "#b041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_attitude", "name": "gimbal_manager_set_attitude", "type": "topic", "color": "#d84841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_information", "name": "gimbal_manager_information", "type": "topic", "color": "#d4d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_status", "name": "position_controller_status", "type": "topic", "color": "#8c41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_set_attitude", "name": "gimbal_device_set_attitude", "type": "topic", "color": "#d841c8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_controls_status_0", "name": "actuator_controls_status_0", "type": "topic", "color": "#d84164", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorControlsStatus.msg"}, {"id": "t_position_setpoint_triplet", "name": "position_setpoint_triplet", "type": "topic", "color": "#7ed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_information", "name": "gimbal_device_information", "type": "topic", "color": "#4183d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_selector_status", "name": "estimator_selector_status", "type": "topic", "color": "#417cd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_operator_id", "name": "open_drone_id_operator_id", "type": "topic", "color": "#d841b9", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_setpoint", "name": "vehicle_attitude_setpoint", "type": "topic", "color": "#d841b2", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_control_allocator_status", "name": "control_allocator_status", "type": "topic", "color": "#93d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tiltrotor_extra_controls", "name": "tiltrotor_extra_controls", "type": "topic", "color": "#41d1d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_request", "name": "uavcan_parameter_request", "type": "topic", "color": "#4c41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_arm_status", "name": "open_drone_id_arm_status", "type": "topic", "color": "#d841c1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_torque_setpoint", "name": "vehicle_torque_setpoint", "type": "topic", "color": "#bed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleTorqueSetpoint.msg"}, {"id": "t_launch_detection_status", "name": "launch_detection_status", "type": "topic", "color": "#a2d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position", "name": "vehicle_global_position", "type": "topic", "color": "#41d843", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_setpoint", "name": "manual_control_setpoint", "type": "topic", "color": "#41d858", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_visual_odometry", "name": "vehicle_visual_odometry", "type": "topic", "color": "#41bcd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_thrust_setpoint", "name": "vehicle_thrust_setpoint", "type": "topic", "color": "#4166d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleThrustSetpoint.msg"}, {"id": "t_failure_detector_status", "name": "failure_detector_status", "type": "topic", "color": "#414ad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_switches", "name": "manual_control_switches", "type": "topic", "color": "#5341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flight_phase_estimation", "name": "flight_phase_estimation", "type": "topic", "color": "#d841a4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_value", "name": "uavcan_parameter_value", "type": "topic", "color": "#d85d41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status_flags", "name": "estimator_status_flags", "type": "topic", "color": "#69d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position", "name": "vehicle_local_position", "type": "topic", "color": "#6241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_rates_setpoint", "name": "vehicle_rates_setpoint", "type": "topic", "color": "#d84148", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_differential_pressure", "name": "differential_pressure", "type": "topic", "color": "#d86b41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_self_id", "name": "open_drone_id_self_id", "type": "topic", "color": "#d8d641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_sensor_bias", "name": "estimator_sensor_bias", "type": "topic", "color": "#53d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_land_detected", "name": "vehicle_land_detected", "type": "topic", "color": "#41d851", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_offboard_control_mode", "name": "offboard_control_mode", "type": "topic", "color": "#41d898", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_status", "name": "gimbal_manager_status", "type": "topic", "color": "#41d8d1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_control_mode", "name": "vehicle_control_mode", "type": "topic", "color": "#41d8ae", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_servos_trim", "name": "actuator_servos_trim", "type": "topic", "color": "#41d8bc", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_system", "name": "open_drone_id_system", "type": "topic", "color": "#d84179", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_figure_eight_status", "name": "figure_eight_status", "type": "topic", "color": "#a9d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_trajectory_setpoint", "name": "trajectory_setpoint", "type": "topic", "color": "#41d883", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_target_pose", "name": "landing_target_pose", "type": "topic", "color": "#41a6d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_optical_flow", "name": "sensor_optical_flow", "type": "topic", "color": "#4541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vtol_vehicle_status", "name": "vtol_vehicle_status", "type": "topic", "color": "#7041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command_ack", "name": "vehicle_command_ack", "type": "topic", "color": "#8541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_constraints", "name": "vehicle_constraints", "type": "topic", "color": "#d841ab", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear_wheel", "name": "landing_gear_wheel", "type": "topic", "color": "#d8c841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu_status", "name": "vehicle_imu_status", "type": "topic", "color": "#c5d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_power_button_state", "name": "power_button_state", "type": "topic", "color": "#b7d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensors_status_imu", "name": "sensors_status_imu", "type": "topic", "color": "#41d89f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed_validated", "name": "airspeed_validated", "type": "topic", "color": "#9341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_transponder_report", "name": "transponder_report", "type": "topic", "color": "#cc41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mount_orientation", "name": "mount_orientation", "type": "topic", "color": "#ccd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_time_estimate", "name": "rtl_time_estimate", "type": "topic", "color": "#415fd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_correction", "name": "sensor_correction", "type": "topic", "color": "#a241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_spoilers_setpoint", "name": "spoilers_setpoint", "type": "topic", "color": "#c541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_gimbal_v1_command", "name": "gimbal_v1_command", "type": "topic", "color": "#d8416b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_navigator_status", "name": "navigator_status", "type": "topic", "color": "#d84f41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_telemetry_status", "name": "telemetry_status", "type": "topic", "color": "#d85641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status", "name": "estimator_status", "type": "topic", "color": "#5bd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude", "name": "vehicle_attitude", "type": "topic", "color": "#41d88a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs", "name": "actuator_outputs", "type": "topic", "color": "#4143d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_vehicle_odometry", "name": "vehicle_odometry", "type": "topic", "color": "#7741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_selection", "name": "sensor_selection", "type": "topic", "color": "#a941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_response", "name": "dataman_response", "type": "topic", "color": "#d8419d", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rc_parameter_map", "name": "rc_parameter_map", "type": "topic", "color": "#d84196", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command", "name": "vehicle_command", "type": "topic", "color": "#d87941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_status", "name": "geofence_status", "type": "topic", "color": "#d8cf41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor", "name": "distance_sensor", "type": "topic", "color": "#8cd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_key_value", "name": "debug_key_value", "type": "topic", "color": "#41d875", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_result", "name": "geofence_result", "type": "topic", "color": "#41d87c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_request", "name": "dataman_request", "type": "topic", "color": "#41d8a6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gps_inject_data", "name": "gps_inject_data", "type": "topic", "color": "#419fd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream_ack", "name": "ulog_stream_ack", "type": "topic", "color": "#418ad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_controls", "name": "gimbal_controls", "type": "topic", "color": "#4175d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_motors", "name": "actuator_motors", "type": "topic", "color": "#be41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_combined", "name": "sensor_combined", "type": "topic", "color": "#d8418f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission_result", "name": "mission_result", "type": "topic", "color": "#d88f41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_armed", "name": "actuator_armed", "type": "topic", "color": "#d8b241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_status", "name": "vehicle_status", "type": "topic", "color": "#62d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_action_request", "name": "action_request", "type": "topic", "color": "#41d85f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_takeoff_status", "name": "takeoff_status", "type": "topic", "color": "#41d8d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_battery_status", "name": "battery_status", "type": "topic", "color": "#41cad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_satellite_info", "name": "satellite_info", "type": "topic", "color": "#41c3d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failsafe_flags", "name": "failsafe_flags", "type": "topic", "color": "#4198d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_capture", "name": "camera_capture", "type": "topic", "color": "#4191d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_trigger", "name": "camera_trigger", "type": "topic", "color": "#d8415d", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flaps_setpoint", "name": "flaps_setpoint", "type": "topic", "color": "#d8414f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_home_position", "name": "home_position", "type": "topic", "color": "#d89641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_irlock_report", "name": "irlock_report", "type": "topic", "color": "#d8c141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_status", "name": "camera_status", "type": "topic", "color": "#41d86e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_health_report", "name": "health_report", "type": "topic", "color": "#41d891", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_logger_status", "name": "logger_status", "type": "topic", "color": "#41d8b5", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_test", "name": "actuator_test", "type": "topic", "color": "#4151d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_safety_button", "name": "safety_button", "type": "topic", "color": "#b741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_px4io_status", "name": "px4io_status", "type": "topic", "color": "#d86441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_orbit_status", "name": "orbit_status", "type": "topic", "color": "#d88841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_system_power", "name": "system_power", "type": "topic", "color": "#9bd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tune_control", "name": "tune_control", "type": "topic", "color": "#41d8ca", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_accel", "name": "sensor_accel", "type": "topic", "color": "#416ed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear", "name": "landing_gear", "type": "topic", "color": "#9b41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_roi", "name": "vehicle_roi", "type": "topic", "color": "#d84141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream", "name": "ulog_stream", "type": "topic", "color": "#d8a441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_led_control", "name": "led_control", "type": "topic", "color": "#d8b941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_baro", "name": "sensor_baro", "type": "topic", "color": "#45d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tecs_status", "name": "tecs_status", "type": "topic", "color": "#41d8c3", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro", "name": "sensor_gyro", "type": "topic", "color": "#41b5d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_value", "name": "debug_value", "type": "topic", "color": "#d84181", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu", "name": "vehicle_imu", "type": "topic", "color": "#d84172", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_array", "name": "debug_array", "type": "topic", "color": "#d84156", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_mag", "name": "sensor_mag", "type": "topic", "color": "#70d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gps", "name": "sensor_gps", "type": "topic", "color": "#41d84a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/SensorGps.msg"}, {"id": "t_adc_report", "name": "adc_report", "type": "topic", "color": "#6941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_esc_status", "name": "esc_status", "type": "topic", "color": "#7e41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_status", "name": "rtl_status", "type": "topic", "color": "#d441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_vect", "name": "debug_vect", "type": "topic", "color": "#d84188", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed", "name": "airspeed", "type": "topic", "color": "#4cd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource1d.msg"}, {"id": "t_input_rc", "name": "input_rc", "type": "topic", "color": "#d841cf", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_cpuload", "name": "cpuload", "type": "topic", "color": "#41d866", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission", "name": "mission", "type": "topic", "color": "#d841d6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_event", "name": "event", "type": "topic", "color": "#41aed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_wind", "name": "wind", "type": "topic", "color": "#d89d41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/Wind.msg"}], "links": [{"source": "m_ads1115", "target": "t_adc_report", "color": "#6941d8", "style": "dashed"}, {"source": "m_board_adc", "target": "t_adc_report", "color": "#6941d8", "style": "dashed"}, {"source": "m_board_adc", "target": "t_system_power", "color": "#9bd841", "style": "dashed"}, {"source": "m_bmp388", "target": "t_sensor_baro", "color": "#45d841", "style": "dashed"}, {"source": "m_icp201xx", "target": "t_sensor_baro", "color": "#45d841", "style": "dashed"}, {"source": "m_ms5611", "target": "t_sensor_baro", "color": "#45d841", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_camera_trigger", "color": "#d8415d", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_vehicle_command_ack", "color": "#8541d8", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_camera_trigger", "color": "#d8415d", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command_ack", "color": "#8541d8", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command", "color": "#d87941", "style": "dashed"}, {"source": "m_ms4525do", "target": "t_differential_pressure", "color": "#d86b41", "style": "dashed"}, {"source": "m_ms5525dso", "target": "t_differential_pressure", "color": "#d86b41", "style": "dashed"}, {"source": "m_sdp3x", "target": "t_differential_pressure", "color": "#d86b41", "style": "dashed"}, {"source": "m_cm8jl65", "target": "t_distance_sensor", "color": "#8cd841", "style": "dashed"}, {"source": "m_lightware_laser_i2c", "target": "t_distance_sensor", "color": "#8cd841", "style": "dashed"}, {"source": "m_lightware_laser_serial", "target": "t_distance_sensor", "color": "#8cd841", "style": "dashed"}, {"source": "m_ll40ls", "target": "t_distance_sensor", "color": "#8cd841", "style": "dashed"}, {"source": "m_teraranger", "target": "t_distance_sensor", "color": "#8cd841", "style": "dashed"}, {"source": "m_tf02pro", "target": "t_distance_sensor", "color": "#8cd841", "style": "dashed"}, {"source": "m_tfmini", "target": "t_distance_sensor", "color": "#8cd841", "style": "dashed"}, {"source": "m_ulanding_radar", "target": "t_distance_sensor", "color": "#8cd841", "style": "dashed"}, {"source": "m_vl53l0x", "target": "t_distance_sensor", "color": "#8cd841", "style": "dashed"}, {"source": "m_vl53l1x", "target": "t_distance_sensor", "color": "#8cd841", "style": "dashed"}, {"source": "m_dshot", "target": "t_esc_status", "color": "#7e41d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_outputs", "color": "#4143d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_motors", "color": "#be41d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_vehicle_command_ack", "color": "#8541d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_armed", "color": "#d8b241", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_test", "color": "#4151d8", "style": "dashed"}, {"source": "m_septentrio", "target": "t_satellite_info", "color": "#41c3d8", "style": "dashed"}, {"source": "m_septentrio", "target": "t_sensor_gps", "color": "#41d84a", "style": "dashed"}, {"source": "m_septentrio", "target": "t_gps_inject_data", "color": "#419fd8", "style": "dashed"}, {"source": "m_gps", "target": "t_sensor_gps", "color": "#41d84a", "style": "dashed"}, {"source": "m_gps", "target": "t_satellite_info", "color": "#41c3d8", "style": "dashed"}, {"source": "m_gps", "target": "t_gps_inject_data", "color": "#419fd8", "style": "dashed"}, {"source": "m_adis16470", "target": "t_sensor_accel", "color": "#416ed8", "style": "dashed"}, {"source": "m_adis16470", "target": "t_sensor_gyro", "color": "#41b5d8", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_accel", "color": "#416ed8", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_gyro", "color": "#41b5d8", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_accel", "color": "#416ed8", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_gyro", "color": "#41b5d8", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_accel", "color": "#416ed8", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_gyro", "color": "#41b5d8", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_gyro", "color": "#41b5d8", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_accel", "color": "#416ed8", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_mag", "color": "#70d841", "style": "dashed"}, {"source": "m_icm42670p", "target": "t_sensor_accel", "color": "#416ed8", "style": "dashed"}, {"source": "m_icm42670p", "target": "t_sensor_gyro", "color": "#41b5d8", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_accel", "color": "#416ed8", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_gyro", "color": "#41b5d8", "style": "dashed"}, {"source": "m_icm45686", "target": "t_sensor_accel", "color": "#416ed8", "style": "dashed"}, {"source": "m_icm45686", "target": "t_sensor_gyro", "color": "#41b5d8", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_accel", "color": "#416ed8", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_gyro", "color": "#41b5d8", "style": "dashed"}, {"source": "m_ak09916", "target": "t_sensor_mag", "color": "#70d841", "style": "dashed"}, {"source": "m_ak8963", "target": "t_sensor_mag", "color": "#70d841", "style": "dashed"}, {"source": "m_bmm150", "target": "t_sensor_mag", "color": "#70d841", "style": "dashed"}, {"source": "m_hmc5883", "target": "t_sensor_mag", "color": "#70d841", "style": "dashed"}, {"source": "m_ist8308", "target": "t_sensor_mag", "color": "#70d841", "style": "dashed"}, {"source": "m_ist8310", "target": "t_sensor_mag", "color": "#70d841", "style": "dashed"}, {"source": "m_lis3mdl", "target": "t_sensor_mag", "color": "#70d841", "style": "dashed"}, {"source": "m_lsm303agr", "target": "t_sensor_mag", "color": "#70d841", "style": "dashed"}, {"source": "m_mmc5983ma", "target": "t_sensor_mag", "color": "#70d841", "style": "dashed"}, {"source": "m_qmc5883l", "target": "t_sensor_mag", "color": "#70d841", "style": "dashed"}, {"source": "m_rm3100", "target": "t_sensor_mag", "color": "#70d841", "style": "dashed"}, {"source": "m_iis2mdc", "target": "t_sensor_mag", "color": "#70d841", "style": "dashed"}, {"source": "m_vcm1193l", "target": "t_sensor_mag", "color": "#70d841", "style": "dashed"}, {"source": "m_ina226", "target": "t_battery_status", "color": "#41cad8", "style": "dashed"}, {"source": "m_ina228", "target": "t_battery_status", "color": "#41cad8", "style": "dashed"}, {"source": "m_ina238", "target": "t_battery_status", "color": "#41cad8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_test", "color": "#4151d8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_outputs", "color": "#4143d8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_motors", "color": "#be41d8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_armed", "color": "#d8b241", "style": "dashed"}, {"source": "m_px4io", "target": "t_led_control", "color": "#d8b941", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_outputs", "color": "#4143d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command", "color": "#d87941", "style": "dashed"}, {"source": "m_px4io", "target": "t_tune_control", "color": "#41d8ca", "style": "dashed"}, {"source": "m_px4io", "target": "t_safety_button", "color": "#b741d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_px4io_status", "color": "#d86441", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_motors", "color": "#be41d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command_ack", "color": "#8541d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_armed", "color": "#d8b241", "style": "dashed"}, {"source": "m_px4io", "target": "t_input_rc", "color": "#d841cf", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_test", "color": "#4151d8", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command_ack", "color": "#8541d8", "style": "dashed"}, {"source": "m_rc_input", "target": "t_input_rc", "color": "#d841cf", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command", "color": "#d87941", "style": "dashed"}, {"source": "m_safety_button", "target": "t_safety_button", "color": "#b741d8", "style": "dashed"}, {"source": "m_safety_button", "target": "t_led_control", "color": "#d8b941", "style": "dashed"}, {"source": "m_safety_button", "target": "t_tune_control", "color": "#41d8ca", "style": "dashed"}, {"source": "m_safety_button", "target": "t_vehicle_command", "color": "#d87941", "style": "dashed"}, {"source": "m_tone_alarm", "target": "t_tune_control", "color": "#41d8ca", "style": "dashed"}, {"source": "m_uavcan", "target": "t_esc_status", "color": "#7e41d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_open_drone_id_arm_status", "color": "#d841c1", "style": "dashed"}, {"source": "m_uavcan", "target": "t_led_control", "color": "#d8b941", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_outputs", "color": "#4143d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command", "color": "#d87941", "style": "dashed"}, {"source": "m_uavcan", "target": "t_distance_sensor", "color": "#8cd841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_tune_control", "color": "#41d8ca", "style": "dashed"}, {"source": "m_uavcan", "target": "t_safety_button", "color": "#b741d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_uavcan_parameter_value", "color": "#d85d41", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_motors", "color": "#be41d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command_ack", "color": "#8541d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_armed", "color": "#d8b241", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_test", "color": "#4151d8", "style": "dashed"}, {"source": "m_airspeed_selector", "target": "t_airspeed_validated", "color": "#9341d8", "style": "dashed"}, {"source": "m_battery_status", "target": "t_battery_status", "color": "#41cad8", "style": "dashed"}, {"source": "m_camera_feedback", "target": "t_camera_capture", "color": "#4191d8", "style": "dashed"}, {"source": "m_commander", "target": "t_health_report", "color": "#41d891", "style": "dashed"}, {"source": "m_commander", "target": "t_failure_detector_status", "color": "#414ad8", "style": "dashed"}, {"source": "m_commander", "target": "t_register_ext_component_reply", "color": "#b041d8", "style": "dashed"}, {"source": "m_commander", "target": "t_led_control", "color": "#d8b941", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_control_mode", "color": "#41d8ae", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_status", "color": "#62d841", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command", "color": "#d87941", "style": "dashed"}, {"source": "m_commander", "target": "t_power_button_state", "color": "#b7d841", "style": "dashed"}, {"source": "m_commander", "target": "t_tune_control", "color": "#41d8ca", "style": "dashed"}, {"source": "m_commander", "target": "t_event", "color": "#41aed8", "style": "dashed"}, {"source": "m_commander", "target": "t_home_position", "color": "#d89641", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command_ack", "color": "#8541d8", "style": "dashed"}, {"source": "m_commander", "target": "t_failsafe_flags", "color": "#4198d8", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_armed", "color": "#d8b241", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_test", "color": "#4151d8", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_control_allocator_status", "color": "#93d841", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos_trim", "color": "#41d8bc", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_motors", "color": "#be41d8", "style": "dashed"}, {"source": "m_dataman", "target": "t_dataman_response", "color": "#d8419d", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status_flags", "color": "#69d841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_sensor_selection", "color": "#a941d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_sensor_bias", "color": "#53d841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status", "color": "#5bd841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_selector_status", "color": "#417cd8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_wind", "color": "#d89d41", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_global_position", "color": "#41d843", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_local_position", "color": "#6241d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_odometry", "color": "#7741d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_attitude", "color": "#41d88a", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_command_ack", "color": "#8541d8", "style": "dashed"}, {"source": "m_esc_battery", "target": "t_battery_status", "color": "#41cad8", "style": "dashed"}, {"source": "m_send_event", "target": "t_led_control", "color": "#d8b941", "style": "dashed"}, {"source": "m_send_event", "target": "t_vehicle_command_ack", "color": "#8541d8", "style": "dashed"}, {"source": "m_send_event", "target": "t_tune_control", "color": "#41d8ca", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_trajectory_setpoint", "color": "#41d883", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_landing_gear", "color": "#9b41d8", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_vehicle_constraints", "color": "#d841ab", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_landing_gear_wheel", "color": "#d8c841", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_vehicle_rates_setpoint", "color": "#d84148", "style": "dashed"}, {"source": "m_fw_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#d87241", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_spoilers_setpoint", "color": "#c541d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_position_controller_landing_status", "color": "#d88141", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_flight_phase_estimation", "color": "#d841a4", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_tecs_status", "color": "#41d8c3", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_orbit_status", "color": "#d88841", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_landing_gear", "color": "#9b41d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_figure_eight_status", "color": "#a9d841", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_flaps_setpoint", "color": "#d8414f", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_launch_detection_status", "color": "#a2d841", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#d8ab41", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_position_controller_status", "color": "#8c41d8", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_flaps_setpoint", "color": "#d8414f", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#d84148", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_spoilers_setpoint", "color": "#c541d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_v1_command", "color": "#d8416b", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command", "color": "#d87941", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_attitude_status", "color": "#85d841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_controls", "color": "#4175d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_status", "color": "#41d8d1", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_information", "color": "#d4d841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command_ack", "color": "#8541d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_mount_orientation", "color": "#ccd841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_set_attitude", "color": "#d841c8", "style": "dashed"}, {"source": "m_land_detector", "target": "t_vehicle_land_detected", "color": "#41d851", "style": "dashed"}, {"source": "m_landing_target_estimator", "target": "t_landing_target_pose", "color": "#41a6d8", "style": "dashed"}, {"source": "m_load_mon", "target": "t_cpuload", "color": "#41d866", "style": "dashed"}, {"source": "m_logger", "target": "t_vehicle_command_ack", "color": "#8541d8", "style": "dashed"}, {"source": "m_logger", "target": "t_ulog_stream", "color": "#d8a441", "style": "dashed"}, {"source": "m_logger", "target": "t_logger_status", "color": "#41d8b5", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_command", "color": "#d87941", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_switches", "color": "#5341d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_setpoint", "color": "#41d858", "style": "dashed"}, {"source": "m_manual_control", "target": "t_landing_gear", "color": "#9b41d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_action_request", "color": "#41d85f", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_status", "color": "#62d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_battery_status", "color": "#41cad8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_attitude", "color": "#d84841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_visual_odometry", "color": "#41bcd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_attitude_status", "color": "#85d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_distance_sensor", "color": "#8cd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_manual_control", "color": "#77d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gyro", "color": "#41b5d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_event", "color": "#41aed8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_landing_target_pose", "color": "#41a6d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gps_inject_data", "color": "#419fd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_telemetry_status", "color": "#d85641", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_mag", "color": "#70d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_differential_pressure", "color": "#d86b41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command", "color": "#d87941", "style": "dashed"}, {"source": "m_mavlink", "target": "t_ulog_stream_ack", "color": "#418ad8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_information", "color": "#4183d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_accel", "color": "#416ed8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_airspeed", "color": "#4cd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_transponder_report", "color": "#cc41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mission", "color": "#d841d6", "style": "dashed"}, {"source": "m_mavlink", "target": "t_input_rc", "color": "#d841cf", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_baro", "color": "#45d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_operator_id", "color": "#d841b9", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_global_position", "color": "#41d843", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gps", "color": "#41d84a", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_optical_flow", "color": "#4541d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude_setpoint", "color": "#d841b2", "style": "dashed"}, {"source": "m_mavlink", "target": "t_irlock_report", "color": "#d8c141", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mc_virtual_attitude_setpoint", "color": "#5b41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_local_position", "color": "#6241d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_rc_parameter_map", "color": "#d84196", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_vect", "color": "#d84188", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_self_id", "color": "#d8d641", "style": "dashed"}, {"source": "m_mavlink", "target": "t_camera_status", "color": "#41d86e", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_key_value", "color": "#41d875", "style": "dashed"}, {"source": "m_mavlink", "target": "t_trajectory_setpoint", "color": "#41d883", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_value", "color": "#d84181", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude", "color": "#41d88a", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_system", "color": "#d84179", "style": "dashed"}, {"source": "m_mavlink", "target": "t_offboard_control_mode", "color": "#41d898", "style": "dashed"}, {"source": "m_mavlink", "target": "t_dataman_request", "color": "#41d8a6", "style": "dashed"}, {"source": "m_mavlink", "target": "t_fw_virtual_attitude_setpoint", "color": "#b0d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_tune_control", "color": "#41d8ca", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_array", "color": "#d84156", "style": "dashed"}, {"source": "m_mavlink", "target": "t_uavcan_parameter_request", "color": "#4c41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command_ack", "color": "#8541d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_rates_setpoint", "color": "#d84148", "style": "dashed"}, {"source": "m_mc_att_control", "target": "t_vehicle_rates_setpoint", "color": "#d84148", "style": "dashed"}, {"source": "m_mc_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#d87241", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#d841b2", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_constraints", "color": "#d841ab", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_trajectory_setpoint", "color": "#41d883", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_takeoff_status", "color": "#41d8d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#d8ab41", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#d84148", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_actuator_controls_status_0", "color": "#d84164", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_roi", "color": "#d84141", "style": "dashed"}, {"source": "m_navigator", "target": "t_position_setpoint_triplet", "color": "#7ed841", "style": "dashed"}, {"source": "m_navigator", "target": "t_navigator_status", "color": "#d84f41", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_status", "color": "#62d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command", "color": "#d87941", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission_result", "color": "#d88f41", "style": "dashed"}, {"source": "m_navigator", "target": "t_home_position", "color": "#d89641", "style": "dashed"}, {"source": "m_navigator", "target": "t_transponder_report", "color": "#cc41d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_time_estimate", "color": "#415fd8", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_status", "color": "#d441d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission", "color": "#d841d6", "style": "dashed"}, {"source": "m_navigator", "target": "t_distance_sensor_mode_change_request", "color": "#4158d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_global_position", "color": "#41d843", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_land_detected", "color": "#41d851", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_status", "color": "#d8cf41", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_result", "color": "#41d87c", "style": "dashed"}, {"source": "m_navigator", "target": "t_dataman_request", "color": "#41d8a6", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command_ack", "color": "#8541d8", "style": "dashed"}, {"source": "m_rc_update", "target": "t_manual_control_switches", "color": "#5341d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensors_status_imu", "color": "#41d89f", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu_status", "color": "#c5d841", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_combined", "color": "#d8418f", "style": "dashed"}, {"source": "m_sensors", "target": "t_airspeed", "color": "#4cd841", "style": "dashed"}, {"source": "m_sensors", "target": "t_differential_pressure", "color": "#d86b41", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_selection", "color": "#a941d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu", "color": "#d84172", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command_ack", "color": "#8541d8", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_led_control", "color": "#d8b941", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_sensor_correction", "color": "#a241d8", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command", "color": "#d87941", "style": "dashed"}, {"source": "m_uxrce_dds_client", "target": "t_vehicle_command", "color": "#d87941", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_torque_setpoint", "color": "#bed841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_attitude_setpoint", "color": "#d841b2", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_spoilers_setpoint", "color": "#c541d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#4166d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vtol_vehicle_status", "color": "#7041d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_flaps_setpoint", "color": "#d8414f", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_command_ack", "color": "#8541d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_tiltrotor_extra_controls", "color": "#41d1d8", "style": "dashed"}, {"source": "m_actuator_test", "target": "t_actuator_test", "color": "#4151d8", "style": "dashed"}, {"source": "m_led_control", "target": "t_led_control", "color": "#d8b941", "style": "dashed"}, {"source": "m_tune_control", "target": "t_tune_control", "color": "#41d8ca", "style": "dashed"}, {"source": "t_adc_report", "target": "m_board_adc", "color": "#6941d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_capture", "color": "#d87941", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_camera_trigger", "color": "#6241d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_trigger", "color": "#d87941", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_cdcacm_autostart", "color": "#d8b241", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_lightware_laser_i2c", "color": "#62d841", "style": "normal"}, {"source": "t_distance_sensor_mode_change_request", "target": "m_lightware_laser_i2c", "color": "#4158d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dshot", "color": "#d87941", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_dshot", "color": "#d8c841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_dshot", "color": "#41d8bc", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_dshot", "color": "#41d858", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_dshot", "color": "#4175d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_dshot", "color": "#9b41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_dshot", "color": "#be41d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_dshot", "color": "#d8b241", "style": "normal"}, {"source": "t_actuator_test", "target": "m_dshot", "color": "#4151d8", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_septentrio", "color": "#419fd8", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_gps", "color": "#419fd8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_heater", "color": "#416ed8", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled", "color": "#d8b941", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_is31fl3195", "color": "#d8b941", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_lp5562", "color": "#d8b941", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_ncp5623c", "color": "#d8b941", "style": "normal"}, {"source": "t_battery_status", "target": "m_msp_osd", "color": "#41cad8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_msp_osd", "color": "#41d843", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_msp_osd", "color": "#9341d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_msp_osd", "color": "#6241d8", "style": "normal"}, {"source": "t_home_position", "target": "m_msp_osd", "color": "#d89641", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_msp_osd", "color": "#41d88a", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_msp_osd", "color": "#62d841", "style": "normal"}, {"source": "t_input_rc", "target": "m_msp_osd", "color": "#d841cf", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina226", "color": "#d841a4", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina226", "color": "#62d841", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina228", "color": "#d841a4", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina228", "color": "#62d841", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina238", "color": "#d841a4", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina238", "color": "#62d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pm_selector_auterion", "color": "#d8b241", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out", "color": "#d87941", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out", "color": "#d8c841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out", "color": "#41d8bc", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out", "color": "#41d858", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out", "color": "#4175d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out", "color": "#9b41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out", "color": "#be41d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out", "color": "#d8b241", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out", "color": "#4151d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_px4io", "color": "#4151d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_px4io", "color": "#d87941", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_px4io", "color": "#d8c841", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_px4io", "color": "#41d8bc", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_px4io", "color": "#41d858", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_px4io", "color": "#4175d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_px4io", "color": "#9b41d8", "style": "normal"}, {"source": "t_px4io_status", "target": "m_px4io", "color": "#d86441", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_px4io", "color": "#be41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_px4io", "color": "#62d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_px4io", "color": "#d8b241", "style": "normal"}, {"source": "t_battery_status", "target": "m_rc_input", "color": "#41cad8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_rc_input", "color": "#d87941", "style": "normal"}, {"source": "t_adc_report", "target": "m_rc_input", "color": "#6941d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rc_input", "color": "#41d88a", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_rc_input", "color": "#62d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_safety_button", "color": "#d8b241", "style": "normal"}, {"source": "t_tune_control", "target": "m_tone_alarm", "color": "#41d8ca", "style": "normal"}, {"source": "t_landing_gear", "target": "m_uavcan", "color": "#9b41d8", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_uavcan", "color": "#419fd8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_uavcan", "color": "#62d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_uavcan", "color": "#d87941", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_uavcan", "color": "#4175d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_uavcan", "color": "#be41d8", "style": "normal"}, {"source": "t_home_position", "target": "m_uavcan", "color": "#d89641", "style": "normal"}, {"source": "t_actuator_test", "target": "m_uavcan", "color": "#4151d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_uavcan", "color": "#d8b241", "style": "normal"}, {"source": "t_open_drone_id_operator_id", "target": "m_uavcan", "color": "#d841b9", "style": "normal"}, {"source": "t_led_control", "target": "m_uavcan", "color": "#d8b941", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_uavcan", "color": "#41d851", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_uavcan", "color": "#d8c841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uavcan", "color": "#41d858", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uavcan", "color": "#6241d8", "style": "normal"}, {"source": "t_open_drone_id_self_id", "target": "m_uavcan", "color": "#d8d641", "style": "normal"}, {"source": "t_open_drone_id_system", "target": "m_uavcan", "color": "#d84179", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_uavcan", "color": "#41d8bc", "style": "normal"}, {"source": "t_tune_control", "target": "m_uavcan", "color": "#41d8ca", "style": "normal"}, {"source": "t_uavcan_parameter_request", "target": "m_uavcan", "color": "#4c41d8", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_airspeed_selector", "color": "#a2d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_airspeed_selector", "color": "#41d851", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_airspeed_selector", "color": "#d841a4", "style": "normal"}, {"source": "t_tecs_status", "target": "m_airspeed_selector", "color": "#41d8c3", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_airspeed_selector", "color": "#417cd8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_airspeed_selector", "color": "#6241d8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_airspeed_selector", "color": "#4166d8", "style": "normal"}, {"source": "t_airspeed", "target": "m_airspeed_selector", "color": "#4cd841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_airspeed_selector", "color": "#41d88a", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airspeed_selector", "color": "#62d841", "style": "normal"}, {"source": "t_estimator_status", "target": "m_airspeed_selector", "color": "#5bd841", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_battery_status", "color": "#d841a4", "style": "normal"}, {"source": "t_adc_report", "target": "m_battery_status", "color": "#6941d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_status", "color": "#62d841", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_camera_feedback", "color": "#d8415d", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_camera_feedback", "color": "#85d841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_camera_feedback", "color": "#41d843", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_camera_feedback", "color": "#41d88a", "style": "normal"}, {"source": "t_battery_status", "target": "m_commander", "color": "#41cad8", "style": "normal"}, {"source": "t_system_power", "target": "m_commander", "color": "#9bd841", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_commander", "color": "#8cd841", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_commander", "color": "#41b5d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_commander", "color": "#9341d8", "style": "normal"}, {"source": "t_telemetry_status", "target": "m_commander", "color": "#d85641", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_commander", "color": "#a241d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_commander", "color": "#70d841", "style": "normal"}, {"source": "t_navigator_status", "target": "m_commander", "color": "#d84f41", "style": "normal"}, {"source": "t_event", "target": "m_commander", "color": "#41aed8", "style": "normal"}, {"source": "t_estimator_status_flags", "target": "m_commander", "color": "#69d841", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_commander", "color": "#d86b41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_commander", "color": "#62d841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_commander", "color": "#a941d8", "style": "normal"}, {"source": "t_estimator_status", "target": "m_commander", "color": "#5bd841", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_commander", "color": "#53d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_commander", "color": "#d87941", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_commander", "color": "#417cd8", "style": "normal"}, {"source": "t_safety_button", "target": "m_commander", "color": "#b741d8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_commander", "color": "#416ed8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_commander", "color": "#be41d8", "style": "normal"}, {"source": "t_mission_result", "target": "m_commander", "color": "#d88f41", "style": "normal"}, {"source": "t_home_position", "target": "m_commander", "color": "#d89641", "style": "normal"}, {"source": "t_wind", "target": "m_commander", "color": "#d89d41", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_commander", "color": "#415fd8", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_commander", "color": "#45d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_commander", "color": "#d8b241", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_commander", "color": "#41d84a", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_commander", "color": "#41d843", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_commander", "color": "#41d851", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_commander", "color": "#5341d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_commander", "color": "#41d858", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_commander", "color": "#6241d8", "style": "normal"}, {"source": "t_action_request", "target": "m_commander", "color": "#41d85f", "style": "normal"}, {"source": "t_vtol_vehicle_status", "target": "m_commander", "color": "#7041d8", "style": "normal"}, {"source": "t_cpuload", "target": "m_commander", "color": "#41d866", "style": "normal"}, {"source": "t_geofence_result", "target": "m_commander", "color": "#41d87c", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_commander", "color": "#41d88a", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_commander", "color": "#c5d841", "style": "normal"}, {"source": "t_esc_status", "target": "m_commander", "color": "#7e41d8", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_commander", "color": "#41d898", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_commander", "color": "#41d89f", "style": "normal"}, {"source": "t_logger_status", "target": "m_commander", "color": "#41d8b5", "style": "normal"}, {"source": "t_power_button_state", "target": "m_commander", "color": "#b7d841", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_commander", "color": "#8541d8", "style": "normal"}, {"source": "t_failure_detector_status", "target": "m_control_allocator", "color": "#414ad8", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_control_allocator", "color": "#bed841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_control_allocator", "color": "#41d8ae", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_control_allocator", "color": "#d8414f", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_control_allocator", "color": "#5341d8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_control_allocator", "color": "#4166d8", "style": "normal"}, {"source": "t_spoilers_setpoint", "target": "m_control_allocator", "color": "#c541d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_control_allocator", "color": "#62d841", "style": "normal"}, {"source": "t_tiltrotor_extra_controls", "target": "m_control_allocator", "color": "#41d1d8", "style": "normal"}, {"source": "t_dataman_request", "target": "m_dataman", "color": "#41d8a6", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_ekf2", "color": "#41d89f", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_ekf2", "color": "#d87941", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_ekf2", "color": "#41d851", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_ekf2", "color": "#41bcd8", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_ekf2", "color": "#8cd841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_ekf2", "color": "#a941d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_ekf2", "color": "#9341d8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_ekf2", "color": "#41a6d8", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_ekf2", "color": "#d8418f", "style": "normal"}, {"source": "t_airspeed", "target": "m_ekf2", "color": "#4cd841", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_ekf2", "color": "#a2d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ekf2", "color": "#62d841", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_ekf2", "color": "#d84172", "style": "normal"}, {"source": "t_esc_status", "target": "m_esc_battery", "color": "#7e41d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_esc_battery", "color": "#d841a4", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_esc_battery", "color": "#62d841", "style": "normal"}, {"source": "t_battery_status", "target": "m_send_event", "color": "#41cad8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_send_event", "color": "#d87941", "style": "normal"}, {"source": "t_cpuload", "target": "m_send_event", "color": "#41d866", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_send_event", "color": "#4198d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_send_event", "color": "#62d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_flight_mode_manager", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_flight_mode_manager", "color": "#d841b2", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_flight_mode_manager", "color": "#d87941", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_flight_mode_manager", "color": "#41d851", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_flight_mode_manager", "color": "#6241d8", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_flight_mode_manager", "color": "#41d8d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_flight_mode_manager", "color": "#62d841", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_fw_att_control", "color": "#d87241", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_att_control", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_fw_att_control", "color": "#d841b2", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_att_control", "color": "#41d851", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_att_control", "color": "#41d858", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_att_control", "color": "#9341d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_att_control", "color": "#6241d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_att_control", "color": "#41d88a", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_att_control", "color": "#62d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_autotune_attitude_control", "color": "#62d841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_autotune_attitude_control", "color": "#41d858", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_fw_pos_control", "color": "#41d843", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_pos_control", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_fw_pos_control", "color": "#d87941", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_pos_control", "color": "#41d851", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_fw_pos_control", "color": "#7ed841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_pos_control", "color": "#41d858", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_pos_control", "color": "#9341d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_pos_control", "color": "#6241d8", "style": "normal"}, {"source": "t_wind", "target": "m_fw_pos_control", "color": "#d89d41", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_fw_pos_control", "color": "#41d883", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_pos_control", "color": "#41d88a", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_pos_control", "color": "#62d841", "style": "normal"}, {"source": "t_battery_status", "target": "m_fw_rate_control", "color": "#41cad8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_rate_control", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_rate_control", "color": "#62d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_rate_control", "color": "#41d851", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_fw_rate_control", "color": "#93d841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_rate_control", "color": "#41d858", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_rate_control", "color": "#9341d8", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_fw_rate_control", "color": "#d84148", "style": "normal"}, {"source": "t_vehicle_roi", "target": "m_gimbal", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_gimbal", "color": "#41d843", "style": "normal"}, {"source": "t_gimbal_manager_set_attitude", "target": "m_gimbal", "color": "#d84841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gimbal", "color": "#d87941", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_gimbal", "color": "#41d851", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_gimbal", "color": "#4183d8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_gimbal", "color": "#85d841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_gimbal", "color": "#7ed841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gimbal", "color": "#41d858", "style": "normal"}, {"source": "t_gimbal_manager_set_manual_control", "target": "m_gimbal", "color": "#77d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_gimbal", "color": "#41d88a", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_gyro_calibration", "color": "#416ed8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_gyro_calibration", "color": "#a241d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_gyro_calibration", "color": "#62d841", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_calibration", "color": "#41b5d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_land_detector", "color": "#41d843", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_land_detector", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_land_detector", "color": "#62d841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_land_detector", "color": "#7ed841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_land_detector", "color": "#a941d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_land_detector", "color": "#9341d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_land_detector", "color": "#6241d8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_land_detector", "color": "#4166d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_land_detector", "color": "#41d883", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_land_detector", "color": "#41d8d8", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_land_detector", "color": "#a2d841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_land_detector", "color": "#c5d841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_land_detector", "color": "#d8b241", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_landing_target_estimator", "color": "#6241d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_landing_target_estimator", "color": "#41d88a", "style": "normal"}, {"source": "t_irlock_report", "target": "m_landing_target_estimator", "color": "#d8c141", "style": "normal"}, {"source": "t_battery_status", "target": "m_logger", "color": "#41cad8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_logger", "color": "#d87941", "style": "normal"}, {"source": "t_ulog_stream_ack", "target": "m_logger", "color": "#418ad8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_logger", "color": "#41d858", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_logger", "color": "#62d841", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mag_bias_estimator", "color": "#70d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mag_bias_estimator", "color": "#62d841", "style": "normal"}, {"source": "t_action_request", "target": "m_manual_control", "color": "#41d85f", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_manual_control", "color": "#5341d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_manual_control", "color": "#62d841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_manual_control", "color": "#41d858", "style": "normal"}, {"source": "t_uavcan_parameter_value", "target": "m_mavlink", "color": "#d85d41", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_mavlink", "color": "#d86b41", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mavlink", "color": "#d87241", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_mavlink", "color": "#d87941", "style": "normal"}, {"source": "t_orbit_status", "target": "m_mavlink", "color": "#d88841", "style": "normal"}, {"source": "t_mission_result", "target": "m_mavlink", "color": "#d88f41", "style": "normal"}, {"source": "t_home_position", "target": "m_mavlink", "color": "#d89641", "style": "normal"}, {"source": "t_wind", "target": "m_mavlink", "color": "#d89d41", "style": "normal"}, {"source": "t_ulog_stream", "target": "m_mavlink", "color": "#d8a441", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_mavlink", "color": "#d8ab41", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_mavlink", "color": "#d8b241", "style": "normal"}, {"source": "t_gimbal_manager_information", "target": "m_mavlink", "color": "#d4d841", "style": "normal"}, {"source": "t_mount_orientation", "target": "m_mavlink", "color": "#ccd841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_mavlink", "color": "#c5d841", "style": "normal"}, {"source": "t_figure_eight_status", "target": "m_mavlink", "color": "#a9d841", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_mavlink", "color": "#8cd841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_mavlink", "color": "#7ed841", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_mavlink", "color": "#85d841", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mavlink", "color": "#70d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mavlink", "color": "#62d841", "style": "normal"}, {"source": "t_estimator_status", "target": "m_mavlink", "color": "#5bd841", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_mavlink", "color": "#53d841", "style": "normal"}, {"source": "t_airspeed", "target": "m_mavlink", "color": "#4cd841", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_mavlink", "color": "#45d841", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_mavlink", "color": "#41d84a", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_mavlink", "color": "#41d843", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mavlink", "color": "#41d851", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mavlink", "color": "#41d858", "style": "normal"}, {"source": "t_cpuload", "target": "m_mavlink", "color": "#41d866", "style": "normal"}, {"source": "t_camera_status", "target": "m_mavlink", "color": "#41d86e", "style": "normal"}, {"source": "t_debug_key_value", "target": "m_mavlink", "color": "#41d875", "style": "normal"}, {"source": "t_geofence_result", "target": "m_mavlink", "color": "#41d87c", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mavlink", "color": "#41d88a", "style": "normal"}, {"source": "t_health_report", "target": "m_mavlink", "color": "#41d891", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mavlink", "color": "#41d8ae", "style": "normal"}, {"source": "t_tecs_status", "target": "m_mavlink", "color": "#41d8c3", "style": "normal"}, {"source": "t_gimbal_manager_status", "target": "m_mavlink", "color": "#41d8d1", "style": "normal"}, {"source": "t_battery_status", "target": "m_mavlink", "color": "#41cad8", "style": "normal"}, {"source": "t_satellite_info", "target": "m_mavlink", "color": "#41c3d8", "style": "normal"}, {"source": "t_event", "target": "m_mavlink", "color": "#41aed8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_mavlink", "color": "#41a6d8", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_mavlink", "color": "#419fd8", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_mavlink", "color": "#4198d8", "style": "normal"}, {"source": "t_camera_capture", "target": "m_mavlink", "color": "#4191d8", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_mavlink", "color": "#4183d8", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_mavlink", "color": "#417cd8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_mavlink", "color": "#4166d8", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_mavlink", "color": "#415fd8", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_mavlink", "color": "#4143d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_mavlink", "color": "#5341d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mavlink", "color": "#6241d8", "style": "normal"}, {"source": "t_vehicle_odometry", "target": "m_mavlink", "color": "#7741d8", "style": "normal"}, {"source": "t_esc_status", "target": "m_mavlink", "color": "#7e41d8", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_mavlink", "color": "#8541d8", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_mavlink", "color": "#8c41d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_mavlink", "color": "#9341d8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_mavlink", "color": "#a241d8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_mavlink", "color": "#a941d8", "style": "normal"}, {"source": "t_register_ext_component_reply", "target": "m_mavlink", "color": "#b041d8", "style": "normal"}, {"source": "t_transponder_report", "target": "m_mavlink", "color": "#cc41d8", "style": "normal"}, {"source": "t_mission", "target": "m_mavlink", "color": "#d841d6", "style": "normal"}, {"source": "t_gimbal_device_set_attitude", "target": "m_mavlink", "color": "#d841c8", "style": "normal"}, {"source": "t_input_rc", "target": "m_mavlink", "color": "#d841cf", "style": "normal"}, {"source": "t_open_drone_id_arm_status", "target": "m_mavlink", "color": "#d841c1", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mavlink", "color": "#d841b2", "style": "normal"}, {"source": "t_dataman_response", "target": "m_mavlink", "color": "#d8419d", "style": "normal"}, {"source": "t_debug_vect", "target": "m_mavlink", "color": "#d84188", "style": "normal"}, {"source": "t_debug_value", "target": "m_mavlink", "color": "#d84181", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_mavlink", "color": "#d84172", "style": "normal"}, {"source": "t_gimbal_v1_command", "target": "m_mavlink", "color": "#d8416b", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_mavlink", "color": "#d8415d", "style": "normal"}, {"source": "t_debug_array", "target": "m_mavlink", "color": "#d84156", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mavlink", "color": "#d84148", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mc_att_control", "color": "#d87241", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_att_control", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mc_att_control", "color": "#d841b2", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_att_control", "color": "#41d851", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_att_control", "color": "#41d858", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_att_control", "color": "#6241d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mc_att_control", "color": "#41d88a", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_att_control", "color": "#62d841", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#bed841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#41d858", "style": "normal"}, {"source": "t_actuator_controls_status_0", "target": "m_mc_autotune_attitude_control", "color": "#d84164", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_autotune_attitude_control", "color": "#62d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_pos_control", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_pos_control", "color": "#41d851", "style": "normal"}, {"source": "t_vehicle_constraints", "target": "m_mc_pos_control", "color": "#d841ab", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_pos_control", "color": "#6241d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_mc_pos_control", "color": "#41d883", "style": "normal"}, {"source": "t_battery_status", "target": "m_mc_rate_control", "color": "#41cad8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_rate_control", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_rate_control", "color": "#62d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_rate_control", "color": "#41d851", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_mc_rate_control", "color": "#93d841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_rate_control", "color": "#41d858", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mc_rate_control", "color": "#d84148", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_navigator", "color": "#41d843", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_navigator", "color": "#62d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_navigator", "color": "#41d851", "style": "normal"}, {"source": "t_geofence_status", "target": "m_navigator", "color": "#d8cf41", "style": "normal"}, {"source": "t_position_controller_landing_status", "target": "m_navigator", "color": "#d88141", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_navigator", "color": "#d87941", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_navigator", "color": "#6241d8", "style": "normal"}, {"source": "t_dataman_response", "target": "m_navigator", "color": "#d8419d", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_navigator", "color": "#41a6d8", "style": "normal"}, {"source": "t_home_position", "target": "m_navigator", "color": "#d89641", "style": "normal"}, {"source": "t_transponder_report", "target": "m_navigator", "color": "#cc41d8", "style": "normal"}, {"source": "t_wind", "target": "m_navigator", "color": "#d89d41", "style": "normal"}, {"source": "t_rtl_status", "target": "m_navigator", "color": "#d441d8", "style": "normal"}, {"source": "t_mission", "target": "m_navigator", "color": "#d841d6", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_navigator", "color": "#8c41d8", "style": "normal"}, {"source": "t_rc_parameter_map", "target": "m_rc_update", "color": "#d84196", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_rc_update", "color": "#5341d8", "style": "normal"}, {"source": "t_input_rc", "target": "m_rc_update", "color": "#d841cf", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_sensors", "color": "#53d841", "style": "normal"}, {"source": "t_sensor_optical_flow", "target": "m_sensors", "color": "#4541d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_sensors", "color": "#41d8ae", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_sensors", "color": "#a941d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_sensors", "color": "#41b5d8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_sensors", "color": "#416ed8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_sensors", "color": "#a241d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_sensors", "color": "#70d841", "style": "normal"}, {"source": "t_adc_report", "target": "m_sensors", "color": "#6941d8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_sensors", "color": "#d86b41", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_sensors", "color": "#c5d841", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_sensors", "color": "#d84172", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_temperature_compensation", "color": "#d87941", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_temperature_compensation", "color": "#41b5d8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_temperature_compensation", "color": "#416ed8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_temperature_compensation", "color": "#70d841", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_temperature_compensation", "color": "#45d841", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_uxrce_dds_client", "color": "#8541d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_vtol_att_control", "color": "#7ed841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_vtol_att_control", "color": "#9341d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_vtol_att_control", "color": "#62d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_vtol_att_control", "color": "#d87941", "style": "normal"}, {"source": "t_home_position", "target": "m_vtol_att_control", "color": "#d89641", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_vtol_att_control", "color": "#d8ab41", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_vtol_att_control", "color": "#41d851", "style": "normal"}, {"source": "t_mc_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#5b41d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_vtol_att_control", "color": "#6241d8", "style": "normal"}, {"source": "t_action_request", "target": "m_vtol_att_control", "color": "#41d85f", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_vtol_att_control", "color": "#41d88a", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_vtol_att_control", "color": "#41d8ae", "style": "normal"}, {"source": "t_fw_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#b0d841", "style": "normal"}, {"source": "t_tecs_status", "target": "m_vtol_att_control", "color": "#41d8c3", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_i2c_launcher", "color": "#62d841", "style": "normal"}]} \ No newline at end of file +{"nodes": [{"id": "m_fw_autotune_attitude_control", "name": "fw_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_autotune_attitude_control", "name": "mc_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_landing_target_estimator", "name": "landing_target_estimator", "type": "Module", "color": "#666666"}, {"id": "m_temperature_compensation", "name": "temperature_compensation", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_serial", "name": "lightware_laser_serial", "type": "Module", "color": "#666666"}, {"id": "m_pm_selector_auterion", "name": "pm_selector_auterion", "type": "Module", "color": "#666666"}, {"id": "m_lightware_laser_i2c", "name": "lightware_laser_i2c", "type": "Module", "color": "#666666"}, {"id": "m_flight_mode_manager", "name": "flight_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_fw_lat_lon_control", "name": "fw_lat_lon_control", "type": "Module", "color": "#666666"}, {"id": "m_mag_bias_estimator", "name": "mag_bias_estimator", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_is31fl3195", "name": "rgbled_is31fl3195", "type": "Module", "color": "#666666"}, {"id": "m_airspeed_selector", "name": "airspeed_selector", "type": "Module", "color": "#666666"}, {"id": "m_control_allocator", "name": "control_allocator", "type": "Module", "color": "#666666"}, {"id": "m_cdcacm_autostart", "name": "cdcacm_autostart", "type": "Module", "color": "#666666"}, {"id": "m_gyro_calibration", "name": "gyro_calibration", "type": "Module", "color": "#666666"}, {"id": "m_uxrce_dds_client", "name": "uxrce_dds_client", "type": "Module", "color": "#666666"}, {"id": "m_vtol_att_control", "name": "vtol_att_control", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_ncp5623c", "name": "rgbled_ncp5623c", "type": "Module", "color": "#666666"}, {"id": "m_camera_feedback", "name": "camera_feedback", "type": "Module", "color": "#666666"}, {"id": "m_fw_mode_manager", "name": "fw_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_fw_rate_control", "name": "fw_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_rate_control", "name": "mc_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_camera_capture", "name": "camera_capture", "type": "Module", "color": "#666666"}, {"id": "m_camera_trigger", "name": "camera_trigger", "type": "Module", "color": "#666666"}, {"id": "m_ulanding_radar", "name": "ulanding_radar", "type": "Module", "color": "#666666"}, {"id": "m_battery_status", "name": "battery_status", "type": "Module", "color": "#666666"}, {"id": "m_fw_att_control", "name": "fw_att_control", "type": "Module", "color": "#666666"}, {"id": "m_manual_control", "name": "manual_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_att_control", "name": "mc_att_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_pos_control", "name": "mc_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_rgbled_lp5562", "name": "rgbled_lp5562", "type": "Module", "color": "#666666"}, {"id": "m_safety_button", "name": "safety_button", "type": "Module", "color": "#666666"}, {"id": "m_land_detector", "name": "land_detector", "type": "Module", "color": "#666666"}, {"id": "m_actuator_test", "name": "actuator_test", "type": "Module", "color": "#666666"}, {"id": "m_i2c_launcher", "name": "i2c_launcher", "type": "Module", "color": "#666666"}, {"id": "m_tune_control", "name": "tune_control", "type": "Module", "color": "#666666"}, {"id": "m_esc_battery", "name": "esc_battery", "type": "Module", "color": "#666666"}, {"id": "m_led_control", "name": "led_control", "type": "Module", "color": "#666666"}, {"id": "m_teraranger", "name": "teraranger", "type": "Module", "color": "#666666"}, {"id": "m_septentrio", "name": "septentrio", "type": "Module", "color": "#666666"}, {"id": "m_tone_alarm", "name": "tone_alarm", "type": "Module", "color": "#666666"}, {"id": "m_send_event", "name": "send_event", "type": "Module", "color": "#666666"}, {"id": "m_board_adc", "name": "board_adc", "type": "Module", "color": "#666666"}, {"id": "m_ms5525dso", "name": "ms5525dso", "type": "Module", "color": "#666666"}, {"id": "m_adis16470", "name": "adis16470", "type": "Module", "color": "#666666"}, {"id": "m_icm42670p", "name": "icm42670p", "type": "Module", "color": "#666666"}, {"id": "m_icm42688p", "name": "icm42688p", "type": "Module", "color": "#666666"}, {"id": "m_lsm303agr", "name": "lsm303agr", "type": "Module", "color": "#666666"}, {"id": "m_mmc5983ma", "name": "mmc5983ma", "type": "Module", "color": "#666666"}, {"id": "m_commander", "name": "commander", "type": "Module", "color": "#666666"}, {"id": "m_navigator", "name": "navigator", "type": "Module", "color": "#666666"}, {"id": "m_rc_update", "name": "rc_update", "type": "Module", "color": "#666666"}, {"id": "m_icp201xx", "name": "icp201xx", "type": "Module", "color": "#666666"}, {"id": "m_ms4525do", "name": "ms4525do", "type": "Module", "color": "#666666"}, {"id": "m_icm20602", "name": "icm20602", "type": "Module", "color": "#666666"}, {"id": "m_icm20649", "name": "icm20649", "type": "Module", "color": "#666666"}, {"id": "m_icm20948", "name": "icm20948", "type": "Module", "color": "#666666"}, {"id": "m_icm45686", "name": "icm45686", "type": "Module", "color": "#666666"}, {"id": "m_iim42652", "name": "iim42652", "type": "Module", "color": "#666666"}, {"id": "m_qmc5883l", "name": "qmc5883l", "type": "Module", "color": "#666666"}, {"id": "m_vcm1193l", "name": "vcm1193l", "type": "Module", "color": "#666666"}, {"id": "m_rc_input", "name": "rc_input", "type": "Module", "color": "#666666"}, {"id": "m_load_mon", "name": "load_mon", "type": "Module", "color": "#666666"}, {"id": "m_ads1115", "name": "ads1115", "type": "Module", "color": "#666666"}, {"id": "m_cm8jl65", "name": "cm8jl65", "type": "Module", "color": "#666666"}, {"id": "m_tf02pro", "name": "tf02pro", "type": "Module", "color": "#666666"}, {"id": "m_vl53l0x", "name": "vl53l0x", "type": "Module", "color": "#666666"}, {"id": "m_vl53l1x", "name": "vl53l1x", "type": "Module", "color": "#666666"}, {"id": "m_ak09916", "name": "ak09916", "type": "Module", "color": "#666666"}, {"id": "m_hmc5883", "name": "hmc5883", "type": "Module", "color": "#666666"}, {"id": "m_ist8308", "name": "ist8308", "type": "Module", "color": "#666666"}, {"id": "m_ist8310", "name": "ist8310", "type": "Module", "color": "#666666"}, {"id": "m_lis3mdl", "name": "lis3mdl", "type": "Module", "color": "#666666"}, {"id": "m_iis2mdc", "name": "iis2mdc", "type": "Module", "color": "#666666"}, {"id": "m_msp_osd", "name": "msp_osd", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out", "name": "pwm_out", "type": "Module", "color": "#666666"}, {"id": "m_dataman", "name": "dataman", "type": "Module", "color": "#666666"}, {"id": "m_mavlink", "name": "mavlink", "type": "Module", "color": "#666666"}, {"id": "m_sensors", "name": "sensors", "type": "Module", "color": "#666666"}, {"id": "m_bmp388", "name": "bmp388", "type": "Module", "color": "#666666"}, {"id": "m_ms5611", "name": "ms5611", "type": "Module", "color": "#666666"}, {"id": "m_ll40ls", "name": "ll40ls", "type": "Module", "color": "#666666"}, {"id": "m_tfmini", "name": "tfmini", "type": "Module", "color": "#666666"}, {"id": "m_heater", "name": "heater", "type": "Module", "color": "#666666"}, {"id": "m_bmi088", "name": "bmi088", "type": "Module", "color": "#666666"}, {"id": "m_rgbled", "name": "rgbled", "type": "Module", "color": "#666666"}, {"id": "m_ak8963", "name": "ak8963", "type": "Module", "color": "#666666"}, {"id": "m_bmm150", "name": "bmm150", "type": "Module", "color": "#666666"}, {"id": "m_rm3100", "name": "rm3100", "type": "Module", "color": "#666666"}, {"id": "m_ina226", "name": "ina226", "type": "Module", "color": "#666666"}, {"id": "m_ina228", "name": "ina228", "type": "Module", "color": "#666666"}, {"id": "m_ina238", "name": "ina238", "type": "Module", "color": "#666666"}, {"id": "m_uavcan", "name": "uavcan", "type": "Module", "color": "#666666"}, {"id": "m_gimbal", "name": "gimbal", "type": "Module", "color": "#666666"}, {"id": "m_logger", "name": "logger", "type": "Module", "color": "#666666"}, {"id": "m_sdp3x", "name": "sdp3x", "type": "Module", "color": "#666666"}, {"id": "m_dshot", "name": "dshot", "type": "Module", "color": "#666666"}, {"id": "m_px4io", "name": "px4io", "type": "Module", "color": "#666666"}, {"id": "m_ekf2", "name": "ekf2", "type": "Module", "color": "#666666"}, {"id": "m_gps", "name": "gps", "type": "Module", "color": "#666666"}, {"id": "t_distance_sensor_mode_change_request", "name": "distance_sensor_mode_change_request", "type": "topic", "color": "#5541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_longitudinal_control_configuration", "name": "longitudinal_control_configuration", "type": "topic", "color": "#8cd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_landing_status", "name": "position_controller_landing_status", "type": "topic", "color": "#8541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_manual_control", "name": "gimbal_manager_set_manual_control", "type": "topic", "color": "#d89a41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_autotune_attitude_control_status", "name": "autotune_attitude_control_status", "type": "topic", "color": "#d84193", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_longitudinal_setpoint", "name": "fixed_wing_longitudinal_setpoint", "type": "topic", "color": "#d84147", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_setpoint", "name": "vehicle_local_position_setpoint", "type": "topic", "color": "#b641d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_lateral_control_configuration", "name": "lateral_control_configuration", "type": "topic", "color": "#41d847", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_attitude_status", "name": "gimbal_device_attitude_status", "type": "topic", "color": "#8c41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_register_ext_component_reply", "name": "register_ext_component_reply", "type": "topic", "color": "#c4d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fw_virtual_attitude_setpoint", "name": "fw_virtual_attitude_setpoint", "type": "topic", "color": "#41d855", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mc_virtual_attitude_setpoint", "name": "mc_virtual_attitude_setpoint", "type": "topic", "color": "#a141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_attitude", "name": "gimbal_manager_set_attitude", "type": "topic", "color": "#41d8bd", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_lateral_setpoint", "name": "fixed_wing_lateral_setpoint", "type": "topic", "color": "#415cd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_set_attitude", "name": "gimbal_device_set_attitude", "type": "topic", "color": "#b6d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_information", "name": "gimbal_manager_information", "type": "topic", "color": "#78d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_controls_status_0", "name": "actuator_controls_status_0", "type": "topic", "color": "#d841b6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorControlsStatus.msg"}, {"id": "t_vehicle_attitude_setpoint", "name": "vehicle_attitude_setpoint", "type": "topic", "color": "#d89341", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_operator_id", "name": "open_drone_id_operator_id", "type": "topic", "color": "#d8bd41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_runway_control", "name": "fixed_wing_runway_control", "type": "topic", "color": "#41d1d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_information", "name": "gimbal_device_information", "type": "topic", "color": "#417fd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_setpoint_triplet", "name": "position_setpoint_triplet", "type": "topic", "color": "#4e41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_selector_status", "name": "estimator_selector_status", "type": "topic", "color": "#6341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_request", "name": "uavcan_parameter_request", "type": "topic", "color": "#d84741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tiltrotor_extra_controls", "name": "tiltrotor_extra_controls", "type": "topic", "color": "#d86a41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_control_allocator_status", "name": "control_allocator_status", "type": "topic", "color": "#41d863", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_arm_status", "name": "open_drone_id_arm_status", "type": "topic", "color": "#c441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_setpoint", "name": "manual_control_setpoint", "type": "topic", "color": "#d87841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position", "name": "vehicle_global_position", "type": "topic", "color": "#41d8a1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_switches", "name": "manual_control_switches", "type": "topic", "color": "#41d8ca", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flight_phase_estimation", "name": "flight_phase_estimation", "type": "topic", "color": "#41a8d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_visual_odometry", "name": "vehicle_visual_odometry", "type": "topic", "color": "#418cd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failure_detector_status", "name": "failure_detector_status", "type": "topic", "color": "#4163d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_torque_setpoint", "name": "vehicle_torque_setpoint", "type": "topic", "color": "#7141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleTorqueSetpoint.msg"}, {"id": "t_vehicle_thrust_setpoint", "name": "vehicle_thrust_setpoint", "type": "topic", "color": "#d141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleThrustSetpoint.msg"}, {"id": "t_launch_detection_status", "name": "launch_detection_status", "type": "topic", "color": "#d841d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_rates_setpoint", "name": "vehicle_rates_setpoint", "type": "topic", "color": "#d8ca41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_uavcan_parameter_value", "name": "uavcan_parameter_value", "type": "topic", "color": "#71d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status_flags", "name": "estimator_status_flags", "type": "topic", "color": "#41d8d1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position", "name": "vehicle_local_position", "type": "topic", "color": "#4147d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_offboard_control_mode", "name": "offboard_control_mode", "type": "topic", "color": "#85d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_status", "name": "gimbal_manager_status", "type": "topic", "color": "#41d84e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_self_id", "name": "open_drone_id_self_id", "type": "topic", "color": "#41d8a8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_differential_pressure", "name": "differential_pressure", "type": "topic", "color": "#4171d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_sensor_bias", "name": "estimator_sensor_bias", "type": "topic", "color": "#4155d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_land_detected", "name": "vehicle_land_detected", "type": "topic", "color": "#d841a1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_servos_trim", "name": "actuator_servos_trim", "type": "topic", "color": "#d8d141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_control_mode", "name": "vehicle_control_mode", "type": "topic", "color": "#4ed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_open_drone_id_system", "name": "open_drone_id_system", "type": "topic", "color": "#a841d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command_ack", "name": "vehicle_command_ack", "type": "topic", "color": "#d88541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_figure_eight_status", "name": "figure_eight_status", "type": "topic", "color": "#7fd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_target_pose", "name": "landing_target_pose", "type": "topic", "color": "#41d885", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_constraints", "name": "vehicle_constraints", "type": "topic", "color": "#41cad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vtol_vehicle_status", "name": "vtol_vehicle_status", "type": "topic", "color": "#4185d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_optical_flow", "name": "sensor_optical_flow", "type": "topic", "color": "#6a41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_trajectory_setpoint", "name": "trajectory_setpoint", "type": "topic", "color": "#d8419a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear_wheel", "name": "landing_gear_wheel", "type": "topic", "color": "#d1d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu_status", "name": "vehicle_imu_status", "type": "topic", "color": "#bdd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed_validated", "name": "airspeed_validated", "type": "topic", "color": "#a1d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_power_button_state", "name": "power_button_state", "type": "topic", "color": "#41d8b6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_transponder_report", "name": "transponder_report", "type": "topic", "color": "#4741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensors_status_imu", "name": "sensors_status_imu", "type": "topic", "color": "#d84155", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_time_estimate", "name": "rtl_time_estimate", "type": "topic", "color": "#41d88c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_correction", "name": "sensor_correction", "type": "topic", "color": "#41d8c4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_spoilers_setpoint", "name": "spoilers_setpoint", "type": "topic", "color": "#d841bd", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_gimbal_v1_command", "name": "gimbal_v1_command", "type": "topic", "color": "#d841a8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mount_orientation", "name": "mount_orientation", "type": "topic", "color": "#d8418c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_navigator_status", "name": "navigator_status", "type": "topic", "color": "#d8af41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_odometry", "name": "vehicle_odometry", "type": "topic", "color": "#a8d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_selection", "name": "sensor_selection", "type": "topic", "color": "#5cd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs", "name": "actuator_outputs", "type": "topic", "color": "#41d8d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_estimator_status", "name": "estimator_status", "type": "topic", "color": "#41a1d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rc_parameter_map", "name": "rc_parameter_map", "type": "topic", "color": "#416ad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude", "name": "vehicle_attitude", "type": "topic", "color": "#414ed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_telemetry_status", "name": "telemetry_status", "type": "topic", "color": "#d841d1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_response", "name": "dataman_response", "type": "topic", "color": "#d841c4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_status", "name": "geofence_status", "type": "topic", "color": "#d85c41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream_ack", "name": "ulog_stream_ack", "type": "topic", "color": "#d88c41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_motors", "name": "actuator_motors", "type": "topic", "color": "#d8a841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor", "name": "distance_sensor", "type": "topic", "color": "#d8b641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gps_inject_data", "name": "gps_inject_data", "type": "topic", "color": "#d8d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_key_value", "name": "debug_key_value", "type": "topic", "color": "#55d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command", "name": "vehicle_command", "type": "topic", "color": "#41d85c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_controls", "name": "gimbal_controls", "type": "topic", "color": "#41d87f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_request", "name": "dataman_request", "type": "topic", "color": "#bd41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_combined", "name": "sensor_combined", "type": "topic", "color": "#d84185", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_result", "name": "geofence_result", "type": "topic", "color": "#d84178", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_battery_status", "name": "battery_status", "type": "topic", "color": "#d85541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission_result", "name": "mission_result", "type": "topic", "color": "#cad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_armed", "name": "actuator_armed", "type": "topic", "color": "#41d878", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_status", "name": "vehicle_status", "type": "topic", "color": "#41d893", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_trigger", "name": "camera_trigger", "type": "topic", "color": "#41d8af", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_takeoff_status", "name": "takeoff_status", "type": "topic", "color": "#41c4d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flaps_setpoint", "name": "flaps_setpoint", "type": "topic", "color": "#41bdd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_camera_capture", "name": "camera_capture", "type": "topic", "color": "#419ad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_satellite_info", "name": "satellite_info", "type": "topic", "color": "#5c41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failsafe_flags", "name": "failsafe_flags", "type": "topic", "color": "#af41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_action_request", "name": "action_request", "type": "topic", "color": "#d84171", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_irlock_report", "name": "irlock_report", "type": "topic", "color": "#d87f41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_home_position", "name": "home_position", "type": "topic", "color": "#6ad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_safety_button", "name": "safety_button", "type": "topic", "color": "#41d86a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_logger_status", "name": "logger_status", "type": "topic", "color": "#41d89a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_status", "name": "camera_status", "type": "topic", "color": "#4193d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_health_report", "name": "health_report", "type": "topic", "color": "#d8416a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_test", "name": "actuator_test", "type": "topic", "color": "#d8414e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_px4io_status", "name": "px4io_status", "type": "topic", "color": "#d8c441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear", "name": "landing_gear", "type": "topic", "color": "#afd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_accel", "name": "sensor_accel", "type": "topic", "color": "#9ad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_system_power", "name": "system_power", "type": "topic", "color": "#63d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_orbit_status", "name": "orbit_status", "type": "topic", "color": "#41b6d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tune_control", "name": "tune_control", "type": "topic", "color": "#ca41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_led_control", "name": "led_control", "type": "topic", "color": "#d84141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_roi", "name": "vehicle_roi", "type": "topic", "color": "#d84e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu", "name": "vehicle_imu", "type": "topic", "color": "#d87141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_baro", "name": "sensor_baro", "type": "topic", "color": "#7841d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_array", "name": "debug_array", "type": "topic", "color": "#9a41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_value", "name": "debug_value", "type": "topic", "color": "#d841ca", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro", "name": "sensor_gyro", "type": "topic", "color": "#d841af", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream", "name": "ulog_stream", "type": "topic", "color": "#d8417f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tecs_status", "name": "tecs_status", "type": "topic", "color": "#d84163", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_esc_status", "name": "esc_status", "type": "topic", "color": "#d86341", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gps", "name": "sensor_gps", "type": "topic", "color": "#47d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/SensorGps.msg"}, {"id": "t_debug_vect", "name": "debug_vect", "type": "topic", "color": "#41d871", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_mag", "name": "sensor_mag", "type": "topic", "color": "#4178d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_adc_report", "name": "adc_report", "type": "topic", "color": "#4141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_status", "name": "rtl_status", "type": "topic", "color": "#9341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_input_rc", "name": "input_rc", "type": "topic", "color": "#41afd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed", "name": "airspeed", "type": "topic", "color": "#d8415c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource1d.msg"}, {"id": "t_mission", "name": "mission", "type": "topic", "color": "#41d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_cpuload", "name": "cpuload", "type": "topic", "color": "#7f41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_event", "name": "event", "type": "topic", "color": "#93d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_wind", "name": "wind", "type": "topic", "color": "#d8a141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/Wind.msg"}], "links": [{"source": "m_ads1115", "target": "t_adc_report", "color": "#4141d8", "style": "dashed"}, {"source": "m_board_adc", "target": "t_system_power", "color": "#63d841", "style": "dashed"}, {"source": "m_board_adc", "target": "t_adc_report", "color": "#4141d8", "style": "dashed"}, {"source": "m_bmp388", "target": "t_sensor_baro", "color": "#7841d8", "style": "dashed"}, {"source": "m_icp201xx", "target": "t_sensor_baro", "color": "#7841d8", "style": "dashed"}, {"source": "m_ms5611", "target": "t_sensor_baro", "color": "#7841d8", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_camera_trigger", "color": "#41d8af", "style": "dashed"}, {"source": "m_camera_capture", "target": "t_vehicle_command_ack", "color": "#d88541", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command", "color": "#41d85c", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_camera_trigger", "color": "#41d8af", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command_ack", "color": "#d88541", "style": "dashed"}, {"source": "m_ms4525do", "target": "t_differential_pressure", "color": "#4171d8", "style": "dashed"}, {"source": "m_ms5525dso", "target": "t_differential_pressure", "color": "#4171d8", "style": "dashed"}, {"source": "m_sdp3x", "target": "t_differential_pressure", "color": "#4171d8", "style": "dashed"}, {"source": "m_cm8jl65", "target": "t_distance_sensor", "color": "#d8b641", "style": "dashed"}, {"source": "m_lightware_laser_i2c", "target": "t_distance_sensor", "color": "#d8b641", "style": "dashed"}, {"source": "m_lightware_laser_serial", "target": "t_distance_sensor", "color": "#d8b641", "style": "dashed"}, {"source": "m_ll40ls", "target": "t_distance_sensor", "color": "#d8b641", "style": "dashed"}, {"source": "m_teraranger", "target": "t_distance_sensor", "color": "#d8b641", "style": "dashed"}, {"source": "m_tf02pro", "target": "t_distance_sensor", "color": "#d8b641", "style": "dashed"}, {"source": "m_tfmini", "target": "t_distance_sensor", "color": "#d8b641", "style": "dashed"}, {"source": "m_ulanding_radar", "target": "t_distance_sensor", "color": "#d8b641", "style": "dashed"}, {"source": "m_vl53l0x", "target": "t_distance_sensor", "color": "#d8b641", "style": "dashed"}, {"source": "m_vl53l1x", "target": "t_distance_sensor", "color": "#d8b641", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_outputs", "color": "#41d8d8", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_armed", "color": "#41d878", "style": "dashed"}, {"source": "m_dshot", "target": "t_esc_status", "color": "#d86341", "style": "dashed"}, {"source": "m_dshot", "target": "t_vehicle_command_ack", "color": "#d88541", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_test", "color": "#d8414e", "style": "dashed"}, {"source": "m_dshot", "target": "t_actuator_motors", "color": "#d8a841", "style": "dashed"}, {"source": "m_septentrio", "target": "t_sensor_gps", "color": "#47d841", "style": "dashed"}, {"source": "m_septentrio", "target": "t_gps_inject_data", "color": "#d8d841", "style": "dashed"}, {"source": "m_septentrio", "target": "t_satellite_info", "color": "#5c41d8", "style": "dashed"}, {"source": "m_gps", "target": "t_sensor_gps", "color": "#47d841", "style": "dashed"}, {"source": "m_gps", "target": "t_gps_inject_data", "color": "#d8d841", "style": "dashed"}, {"source": "m_gps", "target": "t_satellite_info", "color": "#5c41d8", "style": "dashed"}, {"source": "m_adis16470", "target": "t_sensor_accel", "color": "#9ad841", "style": "dashed"}, {"source": "m_adis16470", "target": "t_sensor_gyro", "color": "#d841af", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_accel", "color": "#9ad841", "style": "dashed"}, {"source": "m_bmi088", "target": "t_sensor_gyro", "color": "#d841af", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_accel", "color": "#9ad841", "style": "dashed"}, {"source": "m_icm20602", "target": "t_sensor_gyro", "color": "#d841af", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_accel", "color": "#9ad841", "style": "dashed"}, {"source": "m_icm20649", "target": "t_sensor_gyro", "color": "#d841af", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_gyro", "color": "#d841af", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_accel", "color": "#9ad841", "style": "dashed"}, {"source": "m_icm20948", "target": "t_sensor_mag", "color": "#4178d8", "style": "dashed"}, {"source": "m_icm42670p", "target": "t_sensor_accel", "color": "#9ad841", "style": "dashed"}, {"source": "m_icm42670p", "target": "t_sensor_gyro", "color": "#d841af", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_accel", "color": "#9ad841", "style": "dashed"}, {"source": "m_icm42688p", "target": "t_sensor_gyro", "color": "#d841af", "style": "dashed"}, {"source": "m_icm45686", "target": "t_sensor_accel", "color": "#9ad841", "style": "dashed"}, {"source": "m_icm45686", "target": "t_sensor_gyro", "color": "#d841af", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_accel", "color": "#9ad841", "style": "dashed"}, {"source": "m_iim42652", "target": "t_sensor_gyro", "color": "#d841af", "style": "dashed"}, {"source": "m_ak09916", "target": "t_sensor_mag", "color": "#4178d8", "style": "dashed"}, {"source": "m_ak8963", "target": "t_sensor_mag", "color": "#4178d8", "style": "dashed"}, {"source": "m_bmm150", "target": "t_sensor_mag", "color": "#4178d8", "style": "dashed"}, {"source": "m_hmc5883", "target": "t_sensor_mag", "color": "#4178d8", "style": "dashed"}, {"source": "m_ist8308", "target": "t_sensor_mag", "color": "#4178d8", "style": "dashed"}, {"source": "m_ist8310", "target": "t_sensor_mag", "color": "#4178d8", "style": "dashed"}, {"source": "m_lis3mdl", "target": "t_sensor_mag", "color": "#4178d8", "style": "dashed"}, {"source": "m_lsm303agr", "target": "t_sensor_mag", "color": "#4178d8", "style": "dashed"}, {"source": "m_mmc5983ma", "target": "t_sensor_mag", "color": "#4178d8", "style": "dashed"}, {"source": "m_qmc5883l", "target": "t_sensor_mag", "color": "#4178d8", "style": "dashed"}, {"source": "m_rm3100", "target": "t_sensor_mag", "color": "#4178d8", "style": "dashed"}, {"source": "m_iis2mdc", "target": "t_sensor_mag", "color": "#4178d8", "style": "dashed"}, {"source": "m_vcm1193l", "target": "t_sensor_mag", "color": "#4178d8", "style": "dashed"}, {"source": "m_ina226", "target": "t_battery_status", "color": "#d85541", "style": "dashed"}, {"source": "m_ina228", "target": "t_battery_status", "color": "#d85541", "style": "dashed"}, {"source": "m_ina238", "target": "t_battery_status", "color": "#d85541", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_outputs", "color": "#41d8d8", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_armed", "color": "#41d878", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_test", "color": "#d8414e", "style": "dashed"}, {"source": "m_pwm_out", "target": "t_actuator_motors", "color": "#d8a841", "style": "dashed"}, {"source": "m_px4io", "target": "t_led_control", "color": "#d84141", "style": "dashed"}, {"source": "m_px4io", "target": "t_safety_button", "color": "#41d86a", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_outputs", "color": "#41d8d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_tune_control", "color": "#ca41d8", "style": "dashed"}, {"source": "m_px4io", "target": "t_px4io_status", "color": "#d8c441", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_armed", "color": "#41d878", "style": "dashed"}, {"source": "m_px4io", "target": "t_input_rc", "color": "#41afd8", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command", "color": "#41d85c", "style": "dashed"}, {"source": "m_px4io", "target": "t_vehicle_command_ack", "color": "#d88541", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_test", "color": "#d8414e", "style": "dashed"}, {"source": "m_px4io", "target": "t_actuator_motors", "color": "#d8a841", "style": "dashed"}, {"source": "m_rc_input", "target": "t_input_rc", "color": "#41afd8", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command", "color": "#41d85c", "style": "dashed"}, {"source": "m_rc_input", "target": "t_vehicle_command_ack", "color": "#d88541", "style": "dashed"}, {"source": "m_safety_button", "target": "t_led_control", "color": "#d84141", "style": "dashed"}, {"source": "m_safety_button", "target": "t_safety_button", "color": "#41d86a", "style": "dashed"}, {"source": "m_safety_button", "target": "t_vehicle_command", "color": "#41d85c", "style": "dashed"}, {"source": "m_safety_button", "target": "t_tune_control", "color": "#ca41d8", "style": "dashed"}, {"source": "m_tone_alarm", "target": "t_tune_control", "color": "#ca41d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_led_control", "color": "#d84141", "style": "dashed"}, {"source": "m_uavcan", "target": "t_safety_button", "color": "#41d86a", "style": "dashed"}, {"source": "m_uavcan", "target": "t_open_drone_id_arm_status", "color": "#c441d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_outputs", "color": "#41d8d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_uavcan_parameter_value", "color": "#71d841", "style": "dashed"}, {"source": "m_uavcan", "target": "t_tune_control", "color": "#ca41d8", "style": "dashed"}, {"source": "m_uavcan", "target": "t_distance_sensor", "color": "#d8b641", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_armed", "color": "#41d878", "style": "dashed"}, {"source": "m_uavcan", "target": "t_esc_status", "color": "#d86341", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command", "color": "#41d85c", "style": "dashed"}, {"source": "m_uavcan", "target": "t_vehicle_command_ack", "color": "#d88541", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_test", "color": "#d8414e", "style": "dashed"}, {"source": "m_uavcan", "target": "t_actuator_motors", "color": "#d8a841", "style": "dashed"}, {"source": "m_airspeed_selector", "target": "t_airspeed_validated", "color": "#a1d841", "style": "dashed"}, {"source": "m_battery_status", "target": "t_battery_status", "color": "#d85541", "style": "dashed"}, {"source": "m_camera_feedback", "target": "t_camera_capture", "color": "#419ad8", "style": "dashed"}, {"source": "m_commander", "target": "t_led_control", "color": "#d84141", "style": "dashed"}, {"source": "m_commander", "target": "t_failure_detector_status", "color": "#4163d8", "style": "dashed"}, {"source": "m_commander", "target": "t_power_button_state", "color": "#41d8b6", "style": "dashed"}, {"source": "m_commander", "target": "t_tune_control", "color": "#ca41d8", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_armed", "color": "#41d878", "style": "dashed"}, {"source": "m_commander", "target": "t_event", "color": "#93d841", "style": "dashed"}, {"source": "m_commander", "target": "t_home_position", "color": "#6ad841", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command", "color": "#41d85c", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_control_mode", "color": "#4ed841", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command_ack", "color": "#d88541", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_status", "color": "#41d893", "style": "dashed"}, {"source": "m_commander", "target": "t_health_report", "color": "#d8416a", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_test", "color": "#d8414e", "style": "dashed"}, {"source": "m_commander", "target": "t_failsafe_flags", "color": "#af41d8", "style": "dashed"}, {"source": "m_commander", "target": "t_register_ext_component_reply", "color": "#c4d841", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos_trim", "color": "#d8d141", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_control_allocator_status", "color": "#41d863", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_motors", "color": "#d8a841", "style": "dashed"}, {"source": "m_dataman", "target": "t_dataman_response", "color": "#d841c4", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_command_ack", "color": "#d88541", "style": "dashed"}, {"source": "m_ekf2", "target": "t_wind", "color": "#d8a141", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_sensor_bias", "color": "#4155d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_attitude", "color": "#414ed8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_global_position", "color": "#41d8a1", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_odometry", "color": "#a8d841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_local_position", "color": "#4147d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_selector_status", "color": "#6341d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status_flags", "color": "#41d8d1", "style": "dashed"}, {"source": "m_ekf2", "target": "t_sensor_selection", "color": "#5cd841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status", "color": "#41a1d8", "style": "dashed"}, {"source": "m_esc_battery", "target": "t_battery_status", "color": "#d85541", "style": "dashed"}, {"source": "m_send_event", "target": "t_led_control", "color": "#d84141", "style": "dashed"}, {"source": "m_send_event", "target": "t_tune_control", "color": "#ca41d8", "style": "dashed"}, {"source": "m_send_event", "target": "t_vehicle_command_ack", "color": "#d88541", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_vehicle_constraints", "color": "#41cad8", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_trajectory_setpoint", "color": "#d8419a", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_landing_gear", "color": "#afd841", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_landing_gear_wheel", "color": "#d1d841", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_vehicle_rates_setpoint", "color": "#d8ca41", "style": "dashed"}, {"source": "m_fw_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#d84193", "style": "dashed"}, {"source": "m_fw_lat_lon_control", "target": "t_flight_phase_estimation", "color": "#41a8d8", "style": "dashed"}, {"source": "m_fw_lat_lon_control", "target": "t_tecs_status", "color": "#d84163", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_landing_gear", "color": "#afd841", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_runway_control", "color": "#41d1d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_lateral_setpoint", "color": "#415cd8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_orbit_status", "color": "#41b6d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_launch_detection_status", "color": "#d841d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_flaps_setpoint", "color": "#41bdd8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_lateral_control_configuration", "color": "#41d847", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_position_controller_landing_status", "color": "#8541d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_longitudinal_control_configuration", "color": "#8cd841", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_vehicle_local_position_setpoint", "color": "#b641d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_longitudinal_setpoint", "color": "#d84147", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_figure_eight_status", "color": "#7fd841", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_spoilers_setpoint", "color": "#d841bd", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_spoilers_setpoint", "color": "#d841bd", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_flaps_setpoint", "color": "#41bdd8", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#d8ca41", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_set_attitude", "color": "#b6d841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_v1_command", "color": "#d841a8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_information", "color": "#78d841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_controls", "color": "#41d87f", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_status", "color": "#41d84e", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command", "color": "#41d85c", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command_ack", "color": "#d88541", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_attitude_status", "color": "#8c41d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_mount_orientation", "color": "#d8418c", "style": "dashed"}, {"source": "m_land_detector", "target": "t_vehicle_land_detected", "color": "#d841a1", "style": "dashed"}, {"source": "m_landing_target_estimator", "target": "t_landing_target_pose", "color": "#41d885", "style": "dashed"}, {"source": "m_load_mon", "target": "t_cpuload", "color": "#7f41d8", "style": "dashed"}, {"source": "m_logger", "target": "t_ulog_stream", "color": "#d8417f", "style": "dashed"}, {"source": "m_logger", "target": "t_logger_status", "color": "#41d89a", "style": "dashed"}, {"source": "m_logger", "target": "t_vehicle_command_ack", "color": "#d88541", "style": "dashed"}, {"source": "m_manual_control", "target": "t_landing_gear", "color": "#afd841", "style": "dashed"}, {"source": "m_manual_control", "target": "t_action_request", "color": "#d84171", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_setpoint", "color": "#d87841", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_switches", "color": "#41d8ca", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_command", "color": "#41d85c", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_status", "color": "#41d893", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gps", "color": "#47d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_uavcan_parameter_request", "color": "#d84741", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mission", "color": "#41d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_visual_odometry", "color": "#418cd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_dataman_request", "color": "#bd41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_key_value", "color": "#55d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_tune_control", "color": "#ca41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_battery_status", "color": "#d85541", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_information", "color": "#417fd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_fw_virtual_attitude_setpoint", "color": "#41d855", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_value", "color": "#d841ca", "style": "dashed"}, {"source": "m_mavlink", "target": "t_irlock_report", "color": "#d87f41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command", "color": "#41d85c", "style": "dashed"}, {"source": "m_mavlink", "target": "t_telemetry_status", "color": "#d841d1", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_mag", "color": "#4178d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command_ack", "color": "#d88541", "style": "dashed"}, {"source": "m_mavlink", "target": "t_differential_pressure", "color": "#4171d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_ulog_stream_ack", "color": "#d88c41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude_setpoint", "color": "#d89341", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_manual_control", "color": "#d89a41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_rc_parameter_map", "color": "#416ad8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_vect", "color": "#41d871", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gyro", "color": "#d841af", "style": "dashed"}, {"source": "m_mavlink", "target": "t_distance_sensor", "color": "#d8b641", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_operator_id", "color": "#d8bd41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_landing_target_pose", "color": "#41d885", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_rates_setpoint", "color": "#d8ca41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_trajectory_setpoint", "color": "#d8419a", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gps_inject_data", "color": "#d8d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude", "color": "#414ed8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_self_id", "color": "#41d8a8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_global_position", "color": "#41d8a1", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_attitude", "color": "#41d8bd", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_accel", "color": "#9ad841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_event", "color": "#93d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_local_position", "color": "#4147d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_transponder_report", "color": "#4741d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_offboard_control_mode", "color": "#85d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_airspeed", "color": "#d8415c", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_optical_flow", "color": "#6a41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_baro", "color": "#7841d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_input_rc", "color": "#41afd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mc_virtual_attitude_setpoint", "color": "#a141d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_attitude_status", "color": "#8c41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_array", "color": "#9a41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_open_drone_id_system", "color": "#a841d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_camera_status", "color": "#4193d8", "style": "dashed"}, {"source": "m_mc_att_control", "target": "t_vehicle_rates_setpoint", "color": "#d8ca41", "style": "dashed"}, {"source": "m_mc_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#d84193", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_constraints", "color": "#41cad8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_takeoff_status", "color": "#41c4d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#b641d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_trajectory_setpoint", "color": "#d8419a", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#d89341", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#d8ca41", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_actuator_controls_status_0", "color": "#d841b6", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission", "color": "#41d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_dataman_request", "color": "#bd41d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_roi", "color": "#d84e41", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_status", "color": "#d85c41", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command", "color": "#41d85c", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command_ack", "color": "#d88541", "style": "dashed"}, {"source": "m_navigator", "target": "t_navigator_status", "color": "#d8af41", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_land_detected", "color": "#d841a1", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_time_estimate", "color": "#41d88c", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_status", "color": "#41d893", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission_result", "color": "#cad841", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_global_position", "color": "#41d8a1", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_result", "color": "#d84178", "style": "dashed"}, {"source": "m_navigator", "target": "t_transponder_report", "color": "#4741d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_position_setpoint_triplet", "color": "#4e41d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_distance_sensor_mode_change_request", "color": "#5541d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_home_position", "color": "#6ad841", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_status", "color": "#9341d8", "style": "dashed"}, {"source": "m_rc_update", "target": "t_manual_control_switches", "color": "#41d8ca", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_combined", "color": "#d84185", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu_status", "color": "#bdd841", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensors_status_imu", "color": "#d84155", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu", "color": "#d87141", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_selection", "color": "#5cd841", "style": "dashed"}, {"source": "m_sensors", "target": "t_differential_pressure", "color": "#4171d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_airspeed", "color": "#d8415c", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_led_control", "color": "#d84141", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_sensor_correction", "color": "#41d8c4", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command", "color": "#41d85c", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command_ack", "color": "#d88541", "style": "dashed"}, {"source": "m_uxrce_dds_client", "target": "t_vehicle_command", "color": "#41d85c", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vtol_vehicle_status", "color": "#4185d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#d141d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_flaps_setpoint", "color": "#41bdd8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_torque_setpoint", "color": "#7141d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_tiltrotor_extra_controls", "color": "#d86a41", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_command_ack", "color": "#d88541", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_attitude_setpoint", "color": "#d89341", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_spoilers_setpoint", "color": "#d841bd", "style": "dashed"}, {"source": "m_actuator_test", "target": "t_actuator_test", "color": "#d8414e", "style": "dashed"}, {"source": "m_led_control", "target": "t_led_control", "color": "#d84141", "style": "dashed"}, {"source": "m_tune_control", "target": "t_tune_control", "color": "#ca41d8", "style": "dashed"}, {"source": "t_adc_report", "target": "m_board_adc", "color": "#4141d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_capture", "color": "#41d85c", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_camera_trigger", "color": "#4147d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_trigger", "color": "#41d85c", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_cdcacm_autostart", "color": "#41d878", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_lightware_laser_i2c", "color": "#41d893", "style": "normal"}, {"source": "t_distance_sensor_mode_change_request", "target": "m_lightware_laser_i2c", "color": "#5541d8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_dshot", "color": "#afd841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_dshot", "color": "#41d878", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_dshot", "color": "#41d87f", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_dshot", "color": "#d8d141", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_dshot", "color": "#41d85c", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_dshot", "color": "#d87841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_dshot", "color": "#d1d841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_dshot", "color": "#d8414e", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_dshot", "color": "#d8a841", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_septentrio", "color": "#d8d841", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_gps", "color": "#d8d841", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_heater", "color": "#9ad841", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled", "color": "#d84141", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_is31fl3195", "color": "#d84141", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_lp5562", "color": "#d84141", "style": "normal"}, {"source": "t_led_control", "target": "m_rgbled_ncp5623c", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_msp_osd", "color": "#414ed8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_msp_osd", "color": "#41d8a1", "style": "normal"}, {"source": "t_battery_status", "target": "m_msp_osd", "color": "#d85541", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_msp_osd", "color": "#a1d841", "style": "normal"}, {"source": "t_input_rc", "target": "m_msp_osd", "color": "#41afd8", "style": "normal"}, {"source": "t_home_position", "target": "m_msp_osd", "color": "#6ad841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_msp_osd", "color": "#4147d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_msp_osd", "color": "#41d893", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina226", "color": "#41d893", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina226", "color": "#41a8d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina228", "color": "#41d893", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina228", "color": "#41a8d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ina238", "color": "#41d893", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_ina238", "color": "#41a8d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pm_selector_auterion", "color": "#41d878", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out", "color": "#afd841", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out", "color": "#41d878", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out", "color": "#41d87f", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out", "color": "#d8d141", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out", "color": "#d87841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out", "color": "#41d85c", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out", "color": "#d1d841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out", "color": "#d8414e", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out", "color": "#d8a841", "style": "normal"}, {"source": "t_landing_gear", "target": "m_px4io", "color": "#afd841", "style": "normal"}, {"source": "t_px4io_status", "target": "m_px4io", "color": "#d8c441", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_px4io", "color": "#41d878", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_px4io", "color": "#41d87f", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_px4io", "color": "#d8d141", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_px4io", "color": "#41d85c", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_px4io", "color": "#41d893", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_px4io", "color": "#d87841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_px4io", "color": "#d1d841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_px4io", "color": "#d8414e", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_px4io", "color": "#d8a841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rc_input", "color": "#414ed8", "style": "normal"}, {"source": "t_battery_status", "target": "m_rc_input", "color": "#d85541", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_rc_input", "color": "#41d893", "style": "normal"}, {"source": "t_adc_report", "target": "m_rc_input", "color": "#4141d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_rc_input", "color": "#41d85c", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_safety_button", "color": "#41d878", "style": "normal"}, {"source": "t_tune_control", "target": "m_tone_alarm", "color": "#ca41d8", "style": "normal"}, {"source": "t_led_control", "target": "m_uavcan", "color": "#d84141", "style": "normal"}, {"source": "t_uavcan_parameter_request", "target": "m_uavcan", "color": "#d84741", "style": "normal"}, {"source": "t_tune_control", "target": "m_uavcan", "color": "#ca41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_uavcan", "color": "#41d85c", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uavcan", "color": "#d87841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_uavcan", "color": "#d8a841", "style": "normal"}, {"source": "t_open_drone_id_operator_id", "target": "m_uavcan", "color": "#d8bd41", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_uavcan", "color": "#41d878", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_uavcan", "color": "#d841a1", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_uavcan", "color": "#41d87f", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_uavcan", "color": "#d8d141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_uavcan", "color": "#41d893", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_uavcan", "color": "#d8d841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_uavcan", "color": "#d1d841", "style": "normal"}, {"source": "t_open_drone_id_self_id", "target": "m_uavcan", "color": "#41d8a8", "style": "normal"}, {"source": "t_landing_gear", "target": "m_uavcan", "color": "#afd841", "style": "normal"}, {"source": "t_open_drone_id_system", "target": "m_uavcan", "color": "#a841d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uavcan", "color": "#4147d8", "style": "normal"}, {"source": "t_home_position", "target": "m_uavcan", "color": "#6ad841", "style": "normal"}, {"source": "t_actuator_test", "target": "m_uavcan", "color": "#d8414e", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_airspeed_selector", "color": "#6341d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_airspeed_selector", "color": "#414ed8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_airspeed_selector", "color": "#d141d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_airspeed_selector", "color": "#d841a1", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_airspeed_selector", "color": "#d841d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_airspeed_selector", "color": "#4147d8", "style": "normal"}, {"source": "t_tecs_status", "target": "m_airspeed_selector", "color": "#d84163", "style": "normal"}, {"source": "t_estimator_status", "target": "m_airspeed_selector", "color": "#41a1d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airspeed_selector", "color": "#41d893", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_airspeed_selector", "color": "#41a8d8", "style": "normal"}, {"source": "t_airspeed", "target": "m_airspeed_selector", "color": "#d8415c", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_status", "color": "#41d893", "style": "normal"}, {"source": "t_adc_report", "target": "m_battery_status", "color": "#4141d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_battery_status", "color": "#41a8d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_camera_feedback", "color": "#414ed8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_camera_feedback", "color": "#8c41d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_camera_feedback", "color": "#41d8a1", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_camera_feedback", "color": "#41d8af", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_commander", "color": "#47d841", "style": "normal"}, {"source": "t_vtol_vehicle_status", "target": "m_commander", "color": "#4185d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_commander", "color": "#d85541", "style": "normal"}, {"source": "t_telemetry_status", "target": "m_commander", "color": "#d841d1", "style": "normal"}, {"source": "t_esc_status", "target": "m_commander", "color": "#d86341", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_commander", "color": "#4178d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_commander", "color": "#41d85c", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_commander", "color": "#d87841", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_commander", "color": "#d88541", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_commander", "color": "#4171d8", "style": "normal"}, {"source": "t_wind", "target": "m_commander", "color": "#d8a141", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_commander", "color": "#d8a841", "style": "normal"}, {"source": "t_safety_button", "target": "m_commander", "color": "#41d86a", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_commander", "color": "#d841af", "style": "normal"}, {"source": "t_navigator_status", "target": "m_commander", "color": "#d8af41", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_commander", "color": "#d8b641", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_commander", "color": "#41d878", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_commander", "color": "#d841a1", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_commander", "color": "#41d88c", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_commander", "color": "#41d893", "style": "normal"}, {"source": "t_mission_result", "target": "m_commander", "color": "#cad841", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_commander", "color": "#4155d8", "style": "normal"}, {"source": "t_logger_status", "target": "m_commander", "color": "#41d89a", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_commander", "color": "#414ed8", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_commander", "color": "#bdd841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_commander", "color": "#41d8a1", "style": "normal"}, {"source": "t_power_button_state", "target": "m_commander", "color": "#41d8b6", "style": "normal"}, {"source": "t_geofence_result", "target": "m_commander", "color": "#d84178", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_commander", "color": "#a1d841", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_commander", "color": "#9ad841", "style": "normal"}, {"source": "t_action_request", "target": "m_commander", "color": "#d84171", "style": "normal"}, {"source": "t_event", "target": "m_commander", "color": "#93d841", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_commander", "color": "#41d8c4", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_commander", "color": "#4147d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_commander", "color": "#41d8ca", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_commander", "color": "#85d841", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_commander", "color": "#6341d8", "style": "normal"}, {"source": "t_estimator_status_flags", "target": "m_commander", "color": "#41d8d1", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_commander", "color": "#7841d8", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_commander", "color": "#d84155", "style": "normal"}, {"source": "t_system_power", "target": "m_commander", "color": "#63d841", "style": "normal"}, {"source": "t_cpuload", "target": "m_commander", "color": "#7f41d8", "style": "normal"}, {"source": "t_home_position", "target": "m_commander", "color": "#6ad841", "style": "normal"}, {"source": "t_estimator_status", "target": "m_commander", "color": "#41a1d8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_commander", "color": "#5cd841", "style": "normal"}, {"source": "t_failure_detector_status", "target": "m_control_allocator", "color": "#4163d8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_control_allocator", "color": "#d141d8", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_control_allocator", "color": "#41bdd8", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_control_allocator", "color": "#7141d8", "style": "normal"}, {"source": "t_tiltrotor_extra_controls", "target": "m_control_allocator", "color": "#d86a41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_control_allocator", "color": "#41d893", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_control_allocator", "color": "#41d8ca", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_control_allocator", "color": "#4ed841", "style": "normal"}, {"source": "t_spoilers_setpoint", "target": "m_control_allocator", "color": "#d841bd", "style": "normal"}, {"source": "t_dataman_request", "target": "m_dataman", "color": "#bd41d8", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_ekf2", "color": "#d84185", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_ekf2", "color": "#418cd8", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_ekf2", "color": "#d8b641", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_ekf2", "color": "#41d885", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_ekf2", "color": "#a1d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_ekf2", "color": "#d841a1", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_ekf2", "color": "#d84155", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_ekf2", "color": "#d841d8", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_ekf2", "color": "#d87141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ekf2", "color": "#41d893", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_ekf2", "color": "#41d85c", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_ekf2", "color": "#5cd841", "style": "normal"}, {"source": "t_airspeed", "target": "m_ekf2", "color": "#d8415c", "style": "normal"}, {"source": "t_esc_status", "target": "m_esc_battery", "color": "#d86341", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_esc_battery", "color": "#41d893", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_esc_battery", "color": "#41a8d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_send_event", "color": "#d85541", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_send_event", "color": "#41d893", "style": "normal"}, {"source": "t_cpuload", "target": "m_send_event", "color": "#7f41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_send_event", "color": "#41d85c", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_send_event", "color": "#af41d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_flight_mode_manager", "color": "#d841a1", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_flight_mode_manager", "color": "#41c4d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_flight_mode_manager", "color": "#41d85c", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_flight_mode_manager", "color": "#4147d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_flight_mode_manager", "color": "#41d893", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_flight_mode_manager", "color": "#d89341", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_flight_mode_manager", "color": "#4ed841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_att_control", "color": "#414ed8", "style": "normal"}, {"source": "t_fixed_wing_runway_control", "target": "m_fw_att_control", "color": "#41d1d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_att_control", "color": "#d841a1", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_att_control", "color": "#a1d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_att_control", "color": "#4147d8", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_fw_att_control", "color": "#d84193", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_att_control", "color": "#d87841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_att_control", "color": "#41d893", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_fw_att_control", "color": "#d89341", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_att_control", "color": "#4ed841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_autotune_attitude_control", "color": "#41d893", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_autotune_attitude_control", "color": "#d87841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_lat_lon_control", "color": "#414ed8", "style": "normal"}, {"source": "t_fixed_wing_lateral_setpoint", "target": "m_fw_lat_lon_control", "color": "#415cd8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_lat_lon_control", "color": "#d841a1", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_fw_lat_lon_control", "color": "#41bdd8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_lat_lon_control", "color": "#a1d841", "style": "normal"}, {"source": "t_lateral_control_configuration", "target": "m_fw_lat_lon_control", "color": "#41d847", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_lat_lon_control", "color": "#4147d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_lat_lon_control", "color": "#41d893", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_lat_lon_control", "color": "#4ed841", "style": "normal"}, {"source": "t_longitudinal_control_configuration", "target": "m_fw_lat_lon_control", "color": "#8cd841", "style": "normal"}, {"source": "t_fixed_wing_longitudinal_setpoint", "target": "m_fw_lat_lon_control", "color": "#d84147", "style": "normal"}, {"source": "t_wind", "target": "m_fw_lat_lon_control", "color": "#d8a141", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_mode_manager", "color": "#414ed8", "style": "normal"}, {"source": "t_wind", "target": "m_fw_mode_manager", "color": "#d8a141", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_fw_mode_manager", "color": "#41d8a1", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_mode_manager", "color": "#d841a1", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_mode_manager", "color": "#a1d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_mode_manager", "color": "#4147d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_mode_manager", "color": "#d87841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_fw_mode_manager", "color": "#d8419a", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_fw_mode_manager", "color": "#41d85c", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_fw_mode_manager", "color": "#4e41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_mode_manager", "color": "#41d893", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_mode_manager", "color": "#4ed841", "style": "normal"}, {"source": "t_battery_status", "target": "m_fw_rate_control", "color": "#d85541", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_rate_control", "color": "#d841a1", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_rate_control", "color": "#a1d841", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_fw_rate_control", "color": "#d8ca41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_rate_control", "color": "#d87841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_rate_control", "color": "#41d893", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_fw_rate_control", "color": "#41d863", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_rate_control", "color": "#4ed841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_gimbal", "color": "#414ed8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_gimbal", "color": "#41d8a1", "style": "normal"}, {"source": "t_vehicle_roi", "target": "m_gimbal", "color": "#d84e41", "style": "normal"}, {"source": "t_gimbal_manager_set_attitude", "target": "m_gimbal", "color": "#41d8bd", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_gimbal", "color": "#d841a1", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_gimbal", "color": "#417fd8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gimbal", "color": "#d87841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gimbal", "color": "#41d85c", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_gimbal", "color": "#8c41d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_gimbal", "color": "#4e41d8", "style": "normal"}, {"source": "t_gimbal_manager_set_manual_control", "target": "m_gimbal", "color": "#d89a41", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_gyro_calibration", "color": "#41d8c4", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_gyro_calibration", "color": "#41d893", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_calibration", "color": "#d841af", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_gyro_calibration", "color": "#9ad841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_land_detector", "color": "#bdd841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_land_detector", "color": "#41d8a1", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_land_detector", "color": "#d141d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_land_detector", "color": "#41d878", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_land_detector", "color": "#41c4d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_land_detector", "color": "#a1d841", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_land_detector", "color": "#d841d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_land_detector", "color": "#4e41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_land_detector", "color": "#41d893", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_land_detector", "color": "#4147d8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_land_detector", "color": "#5cd841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_land_detector", "color": "#d8419a", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_land_detector", "color": "#4ed841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_landing_target_estimator", "color": "#414ed8", "style": "normal"}, {"source": "t_irlock_report", "target": "m_landing_target_estimator", "color": "#d87f41", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_landing_target_estimator", "color": "#4147d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_logger", "color": "#d85541", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_logger", "color": "#d87841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_logger", "color": "#41d85c", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_logger", "color": "#41d893", "style": "normal"}, {"source": "t_ulog_stream_ack", "target": "m_logger", "color": "#d88c41", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mag_bias_estimator", "color": "#4178d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mag_bias_estimator", "color": "#41d893", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_manual_control", "color": "#d87841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_manual_control", "color": "#41d893", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_manual_control", "color": "#41d8ca", "style": "normal"}, {"source": "t_action_request", "target": "m_manual_control", "color": "#d84171", "style": "normal"}, {"source": "t_battery_status", "target": "m_mavlink", "color": "#d85541", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_mavlink", "color": "#d87141", "style": "normal"}, {"source": "t_esc_status", "target": "m_mavlink", "color": "#d86341", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mavlink", "color": "#d87841", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_mavlink", "color": "#d88541", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mavlink", "color": "#d89341", "style": "normal"}, {"source": "t_wind", "target": "m_mavlink", "color": "#d8a141", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_mavlink", "color": "#d8b641", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mavlink", "color": "#d8ca41", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_mavlink", "color": "#d8d841", "style": "normal"}, {"source": "t_mission_result", "target": "m_mavlink", "color": "#cad841", "style": "normal"}, {"source": "t_register_ext_component_reply", "target": "m_mavlink", "color": "#c4d841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_mavlink", "color": "#bdd841", "style": "normal"}, {"source": "t_gimbal_device_set_attitude", "target": "m_mavlink", "color": "#b6d841", "style": "normal"}, {"source": "t_vehicle_odometry", "target": "m_mavlink", "color": "#a8d841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_mavlink", "color": "#a1d841", "style": "normal"}, {"source": "t_event", "target": "m_mavlink", "color": "#93d841", "style": "normal"}, {"source": "t_figure_eight_status", "target": "m_mavlink", "color": "#7fd841", "style": "normal"}, {"source": "t_gimbal_manager_information", "target": "m_mavlink", "color": "#78d841", "style": "normal"}, {"source": "t_uavcan_parameter_value", "target": "m_mavlink", "color": "#71d841", "style": "normal"}, {"source": "t_home_position", "target": "m_mavlink", "color": "#6ad841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_mavlink", "color": "#5cd841", "style": "normal"}, {"source": "t_debug_key_value", "target": "m_mavlink", "color": "#55d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mavlink", "color": "#4ed841", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_mavlink", "color": "#47d841", "style": "normal"}, {"source": "t_mission", "target": "m_mavlink", "color": "#41d841", "style": "normal"}, {"source": "t_gimbal_manager_status", "target": "m_mavlink", "color": "#41d84e", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_mavlink", "color": "#41d85c", "style": "normal"}, {"source": "t_debug_vect", "target": "m_mavlink", "color": "#41d871", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_mavlink", "color": "#41d878", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_mavlink", "color": "#41d885", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_mavlink", "color": "#41d88c", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mavlink", "color": "#41d893", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_mavlink", "color": "#41d8a1", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_mavlink", "color": "#41d8af", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_mavlink", "color": "#41d8c4", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_mavlink", "color": "#41d8ca", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_mavlink", "color": "#41d8d8", "style": "normal"}, {"source": "t_orbit_status", "target": "m_mavlink", "color": "#41b6d8", "style": "normal"}, {"source": "t_input_rc", "target": "m_mavlink", "color": "#41afd8", "style": "normal"}, {"source": "t_estimator_status", "target": "m_mavlink", "color": "#41a1d8", "style": "normal"}, {"source": "t_camera_capture", "target": "m_mavlink", "color": "#419ad8", "style": "normal"}, {"source": "t_camera_status", "target": "m_mavlink", "color": "#4193d8", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_mavlink", "color": "#417fd8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mavlink", "color": "#4178d8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_mavlink", "color": "#4171d8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_mavlink", "color": "#4155d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mavlink", "color": "#414ed8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mavlink", "color": "#4147d8", "style": "normal"}, {"source": "t_transponder_report", "target": "m_mavlink", "color": "#4741d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_mavlink", "color": "#4e41d8", "style": "normal"}, {"source": "t_satellite_info", "target": "m_mavlink", "color": "#5c41d8", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_mavlink", "color": "#6341d8", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_mavlink", "color": "#7841d8", "style": "normal"}, {"source": "t_cpuload", "target": "m_mavlink", "color": "#7f41d8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_mavlink", "color": "#8c41d8", "style": "normal"}, {"source": "t_debug_array", "target": "m_mavlink", "color": "#9a41d8", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_mavlink", "color": "#b641d8", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_mavlink", "color": "#af41d8", "style": "normal"}, {"source": "t_open_drone_id_arm_status", "target": "m_mavlink", "color": "#c441d8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_mavlink", "color": "#d141d8", "style": "normal"}, {"source": "t_debug_value", "target": "m_mavlink", "color": "#d841ca", "style": "normal"}, {"source": "t_dataman_response", "target": "m_mavlink", "color": "#d841c4", "style": "normal"}, {"source": "t_gimbal_v1_command", "target": "m_mavlink", "color": "#d841a8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mavlink", "color": "#d841a1", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mavlink", "color": "#d84193", "style": "normal"}, {"source": "t_mount_orientation", "target": "m_mavlink", "color": "#d8418c", "style": "normal"}, {"source": "t_ulog_stream", "target": "m_mavlink", "color": "#d8417f", "style": "normal"}, {"source": "t_geofence_result", "target": "m_mavlink", "color": "#d84178", "style": "normal"}, {"source": "t_health_report", "target": "m_mavlink", "color": "#d8416a", "style": "normal"}, {"source": "t_tecs_status", "target": "m_mavlink", "color": "#d84163", "style": "normal"}, {"source": "t_airspeed", "target": "m_mavlink", "color": "#d8415c", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mc_att_control", "color": "#414ed8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_att_control", "color": "#d841a1", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_att_control", "color": "#d87841", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mc_att_control", "color": "#d84193", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_att_control", "color": "#4147d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_att_control", "color": "#41d893", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mc_att_control", "color": "#d89341", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_att_control", "color": "#4ed841", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#7141d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_autotune_attitude_control", "color": "#41d893", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#d87841", "style": "normal"}, {"source": "t_actuator_controls_status_0", "target": "m_mc_autotune_attitude_control", "color": "#d841b6", "style": "normal"}, {"source": "t_vehicle_constraints", "target": "m_mc_pos_control", "color": "#41cad8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_pos_control", "color": "#d841a1", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_pos_control", "color": "#4147d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_mc_pos_control", "color": "#d8419a", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_pos_control", "color": "#4ed841", "style": "normal"}, {"source": "t_battery_status", "target": "m_mc_rate_control", "color": "#d85541", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_rate_control", "color": "#d841a1", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mc_rate_control", "color": "#d8ca41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_rate_control", "color": "#d87841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_rate_control", "color": "#41d893", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_mc_rate_control", "color": "#41d863", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_rate_control", "color": "#4ed841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_navigator", "color": "#41d8a1", "style": "normal"}, {"source": "t_mission", "target": "m_navigator", "color": "#41d841", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_navigator", "color": "#41d885", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_navigator", "color": "#d841a1", "style": "normal"}, {"source": "t_geofence_status", "target": "m_navigator", "color": "#d85c41", "style": "normal"}, {"source": "t_home_position", "target": "m_navigator", "color": "#6ad841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_navigator", "color": "#41d893", "style": "normal"}, {"source": "t_position_controller_landing_status", "target": "m_navigator", "color": "#8541d8", "style": "normal"}, {"source": "t_transponder_report", "target": "m_navigator", "color": "#4741d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_navigator", "color": "#41d85c", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_navigator", "color": "#4147d8", "style": "normal"}, {"source": "t_dataman_response", "target": "m_navigator", "color": "#d841c4", "style": "normal"}, {"source": "t_wind", "target": "m_navigator", "color": "#d8a141", "style": "normal"}, {"source": "t_rtl_status", "target": "m_navigator", "color": "#9341d8", "style": "normal"}, {"source": "t_input_rc", "target": "m_rc_update", "color": "#41afd8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_rc_update", "color": "#41d8ca", "style": "normal"}, {"source": "t_rc_parameter_map", "target": "m_rc_update", "color": "#416ad8", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_sensors", "color": "#bdd841", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_sensors", "color": "#4155d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_sensors", "color": "#d841af", "style": "normal"}, {"source": "t_sensor_optical_flow", "target": "m_sensors", "color": "#6a41d8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_sensors", "color": "#9ad841", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_sensors", "color": "#d87141", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_sensors", "color": "#4178d8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_sensors", "color": "#41d8c4", "style": "normal"}, {"source": "t_adc_report", "target": "m_sensors", "color": "#4141d8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_sensors", "color": "#5cd841", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_sensors", "color": "#4171d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_sensors", "color": "#4ed841", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_temperature_compensation", "color": "#d841af", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_temperature_compensation", "color": "#9ad841", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_temperature_compensation", "color": "#7841d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_temperature_compensation", "color": "#4178d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_temperature_compensation", "color": "#41d85c", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_uxrce_dds_client", "color": "#d88541", "style": "normal"}, {"source": "t_fw_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#41d855", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_vtol_att_control", "color": "#41d85c", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_vtol_att_control", "color": "#d841a1", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_vtol_att_control", "color": "#41d893", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_vtol_att_control", "color": "#414ed8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_vtol_att_control", "color": "#a1d841", "style": "normal"}, {"source": "t_action_request", "target": "m_vtol_att_control", "color": "#d84171", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_vtol_att_control", "color": "#4147d8", "style": "normal"}, {"source": "t_tecs_status", "target": "m_vtol_att_control", "color": "#d84163", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_vtol_att_control", "color": "#4e41d8", "style": "normal"}, {"source": "t_home_position", "target": "m_vtol_att_control", "color": "#6ad841", "style": "normal"}, {"source": "t_mc_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#a141d8", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_vtol_att_control", "color": "#b641d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_vtol_att_control", "color": "#4ed841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_i2c_launcher", "color": "#41d893", "style": "normal"}]} \ No newline at end of file diff --git a/docs/public/middleware/graph_px4_sitl.json b/docs/public/middleware/graph_px4_sitl.json index 4099ac8ea8..2262923a1f 100644 --- a/docs/public/middleware/graph_px4_sitl.json +++ b/docs/public/middleware/graph_px4_sitl.json @@ -1 +1 @@ -{"nodes": [{"id": "m_fw_autotune_attitude_control", "name": "fw_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_autotune_attitude_control", "name": "mc_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_landing_target_estimator", "name": "landing_target_estimator", "type": "Module", "color": "#666666"}, {"id": "m_local_position_estimator", "name": "local_position_estimator", "type": "Module", "color": "#666666"}, {"id": "m_temperature_compensation", "name": "temperature_compensation", "type": "Module", "color": "#666666"}, {"id": "m_system_power_simulator", "name": "system_power_simulator", "type": "Module", "color": "#666666"}, {"id": "m_attitude_estimator_q", "name": "attitude_estimator_q", "type": "Module", "color": "#666666"}, {"id": "m_airship_att_control", "name": "airship_att_control", "type": "Module", "color": "#666666"}, {"id": "m_flight_mode_manager", "name": "flight_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_sensor_airspeed_sim", "name": "sensor_airspeed_sim", "type": "Module", "color": "#666666"}, {"id": "m_mag_bias_estimator", "name": "mag_bias_estimator", "type": "Module", "color": "#666666"}, {"id": "m_rover_differential", "name": "rover_differential", "type": "Module", "color": "#666666"}, {"id": "m_airspeed_selector", "name": "airspeed_selector", "type": "Module", "color": "#666666"}, {"id": "m_control_allocator", "name": "control_allocator", "type": "Module", "color": "#666666"}, {"id": "m_payload_deliverer", "name": "payload_deliverer", "type": "Module", "color": "#666666"}, {"id": "m_rover_pos_control", "name": "rover_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_battery_simulator", "name": "battery_simulator", "type": "Module", "color": "#666666"}, {"id": "m_simulator_mavlink", "name": "simulator_mavlink", "type": "Module", "color": "#666666"}, {"id": "m_fake_magnetometer", "name": "fake_magnetometer", "type": "Module", "color": "#666666"}, {"id": "m_px4_mavlink_debug", "name": "px4_mavlink_debug", "type": "Module", "color": "#666666"}, {"id": "m_work_item_example", "name": "work_item_example", "type": "Module", "color": "#666666"}, {"id": "m_gyro_calibration", "name": "gyro_calibration", "type": "Module", "color": "#666666"}, {"id": "m_uxrce_dds_client", "name": "uxrce_dds_client", "type": "Module", "color": "#666666"}, {"id": "m_vtol_att_control", "name": "vtol_att_control", "type": "Module", "color": "#666666"}, {"id": "m_camera_feedback", "name": "camera_feedback", "type": "Module", "color": "#666666"}, {"id": "m_fw_rate_control", "name": "fw_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_rate_control", "name": "mc_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_rover_ackermann", "name": "rover_ackermann", "type": "Module", "color": "#666666"}, {"id": "m_sensor_baro_sim", "name": "sensor_baro_sim", "type": "Module", "color": "#666666"}, {"id": "m_uuv_att_control", "name": "uuv_att_control", "type": "Module", "color": "#666666"}, {"id": "m_uuv_pos_control", "name": "uuv_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_camera_trigger", "name": "camera_trigger", "type": "Module", "color": "#666666"}, {"id": "m_fw_att_control", "name": "fw_att_control", "type": "Module", "color": "#666666"}, {"id": "m_fw_pos_control", "name": "fw_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_manual_control", "name": "manual_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_att_control", "name": "mc_att_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_pos_control", "name": "mc_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_sensor_agp_sim", "name": "sensor_agp_sim", "type": "Module", "color": "#666666"}, {"id": "m_sensor_gps_sim", "name": "sensor_gps_sim", "type": "Module", "color": "#666666"}, {"id": "m_sensor_mag_sim", "name": "sensor_mag_sim", "type": "Module", "color": "#666666"}, {"id": "m_px4_simple_app", "name": "px4_simple_app", "type": "Module", "color": "#666666"}, {"id": "m_land_detector", "name": "land_detector", "type": "Module", "color": "#666666"}, {"id": "m_rover_mecanum", "name": "rover_mecanum", "type": "Module", "color": "#666666"}, {"id": "m_simulator_sih", "name": "simulator_sih", "type": "Module", "color": "#666666"}, {"id": "m_actuator_test", "name": "actuator_test", "type": "Module", "color": "#666666"}, {"id": "m_tune_control", "name": "tune_control", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out_sim", "name": "pwm_out_sim", "type": "Module", "color": "#666666"}, {"id": "m_tone_alarm", "name": "tone_alarm", "type": "Module", "color": "#666666"}, {"id": "m_send_event", "name": "send_event", "type": "Module", "color": "#666666"}, {"id": "m_commander", "name": "commander", "type": "Module", "color": "#666666"}, {"id": "m_navigator", "name": "navigator", "type": "Module", "color": "#666666"}, {"id": "m_rc_update", "name": "rc_update", "type": "Module", "color": "#666666"}, {"id": "m_gz_bridge", "name": "gz_bridge", "type": "Module", "color": "#666666"}, {"id": "m_gyro_fft", "name": "gyro_fft", "type": "Module", "color": "#666666"}, {"id": "m_load_mon", "name": "load_mon", "type": "Module", "color": "#666666"}, {"id": "m_fake_gps", "name": "fake_gps", "type": "Module", "color": "#666666"}, {"id": "m_fake_imu", "name": "fake_imu", "type": "Module", "color": "#666666"}, {"id": "m_msp_osd", "name": "msp_osd", "type": "Module", "color": "#666666"}, {"id": "m_dataman", "name": "dataman", "type": "Module", "color": "#666666"}, {"id": "m_mavlink", "name": "mavlink", "type": "Module", "color": "#666666"}, {"id": "m_sensors", "name": "sensors", "type": "Module", "color": "#666666"}, {"id": "m_failure", "name": "failure", "type": "Module", "color": "#666666"}, {"id": "m_gimbal", "name": "gimbal", "type": "Module", "color": "#666666"}, {"id": "m_logger", "name": "logger", "type": "Module", "color": "#666666"}, {"id": "m_tests", "name": "tests", "type": "Module", "color": "#666666"}, {"id": "m_ekf2", "name": "ekf2", "type": "Module", "color": "#666666"}, {"id": "m_gps", "name": "gps", "type": "Module", "color": "#666666"}, {"id": "t_vehicle_angular_velocity_groundtruth", "name": "vehicle_angular_velocity_groundtruth", "type": "topic", "color": "#d84199", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position_groundtruth", "name": "vehicle_global_position_groundtruth", "type": "topic", "color": "#d841a0", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_groundtruth", "name": "vehicle_local_position_groundtruth", "type": "topic", "color": "#d85541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_landing_status", "name": "position_controller_landing_status", "type": "topic", "color": "#d8a041", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_manual_control", "name": "gimbal_manager_set_manual_control", "type": "topic", "color": "#41afd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_autotune_attitude_control_status", "name": "autotune_attitude_control_status", "type": "topic", "color": "#41c4d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_setpoint", "name": "vehicle_local_position_setpoint", "type": "topic", "color": "#41d8bd", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_attitude_status", "name": "gimbal_device_attitude_status", "type": "topic", "color": "#41d843", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fw_virtual_attitude_setpoint", "name": "fw_virtual_attitude_setpoint", "type": "topic", "color": "#41d88e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_register_ext_component_reply", "name": "register_ext_component_reply", "type": "topic", "color": "#41d8b6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_groundtruth", "name": "vehicle_attitude_groundtruth", "type": "topic", "color": "#4187d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mc_virtual_attitude_setpoint", "name": "mc_virtual_attitude_setpoint", "type": "topic", "color": "#415ed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_attitude", "name": "gimbal_manager_set_attitude", "type": "topic", "color": "#b9d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_controls_status_0", "name": "actuator_controls_status_0", "type": "topic", "color": "#d84141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorControlsStatus.msg"}, {"id": "t_gimbal_manager_information", "name": "gimbal_manager_information", "type": "topic", "color": "#d86941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_status", "name": "position_controller_status", "type": "topic", "color": "#d89941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_set_attitude", "name": "gimbal_device_set_attitude", "type": "topic", "color": "#d8415c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_selector_status", "name": "estimator_selector_status", "type": "topic", "color": "#d8bb41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_setpoint", "name": "vehicle_attitude_setpoint", "type": "topic", "color": "#41d865", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_setpoint_triplet", "name": "position_setpoint_triplet", "type": "topic", "color": "#5341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_information", "name": "gimbal_device_information", "type": "topic", "color": "#6e41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tiltrotor_extra_controls", "name": "tiltrotor_extra_controls", "type": "topic", "color": "#d8c841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_control_allocator_status", "name": "control_allocator_status", "type": "topic", "color": "#41d86c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flight_phase_estimation", "name": "flight_phase_estimation", "type": "topic", "color": "#d84e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failure_detector_status", "name": "failure_detector_status", "type": "topic", "color": "#d8cf41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_switches", "name": "manual_control_switches", "type": "topic", "color": "#89d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position", "name": "vehicle_global_position", "type": "topic", "color": "#41d84a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_throttle_setpoint", "name": "rover_throttle_setpoint", "type": "topic", "color": "#41d880", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_velocity_setpoint", "name": "rover_velocity_setpoint", "type": "topic", "color": "#41a9d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_position_setpoint", "name": "rover_position_setpoint", "type": "topic", "color": "#41a2d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_launch_detection_status", "name": "launch_detection_status", "type": "topic", "color": "#418ed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_attitude_setpoint", "name": "rover_attitude_setpoint", "type": "topic", "color": "#8241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_setpoint", "name": "manual_control_setpoint", "type": "topic", "color": "#b241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_steering_setpoint", "name": "rover_steering_setpoint", "type": "topic", "color": "#c641d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_thrust_setpoint", "name": "vehicle_thrust_setpoint", "type": "topic", "color": "#d84184", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleThrustSetpoint.msg"}, {"id": "t_vehicle_torque_setpoint", "name": "vehicle_torque_setpoint", "type": "topic", "color": "#d84169", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleTorqueSetpoint.msg"}, {"id": "t_vehicle_visual_odometry", "name": "vehicle_visual_odometry", "type": "topic", "color": "#d84155", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_rates_setpoint", "name": "vehicle_rates_setpoint", "type": "topic", "color": "#60d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status_flags", "name": "estimator_status_flags", "type": "topic", "color": "#41d850", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_mocap_odometry", "name": "vehicle_mocap_odometry", "type": "topic", "color": "#ab41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position", "name": "vehicle_local_position", "type": "topic", "color": "#d841c2", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_land_detected", "name": "vehicle_land_detected", "type": "topic", "color": "#6ed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_sensor_bias", "name": "estimator_sensor_bias", "type": "topic", "color": "#4194d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_differential_pressure", "name": "differential_pressure", "type": "topic", "color": "#4150d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_offboard_control_mode", "name": "offboard_control_mode", "type": "topic", "color": "#4541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_status", "name": "gimbal_manager_status", "type": "topic", "color": "#9041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_control_mode", "name": "vehicle_control_mode", "type": "topic", "color": "#7bd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_servos_trim", "name": "actuator_servos_trim", "type": "topic", "color": "#4143d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs_sim", "name": "actuator_outputs_sim", "type": "topic", "color": "#6741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_vehicle_constraints", "name": "vehicle_constraints", "type": "topic", "color": "#d8b441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_trajectory_setpoint", "name": "trajectory_setpoint", "type": "topic", "color": "#59d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command_ack", "name": "vehicle_command_ack", "type": "topic", "color": "#53d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_figure_eight_status", "name": "figure_eight_status", "type": "topic", "color": "#41d872", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_target_pose", "name": "landing_target_pose", "type": "topic", "color": "#41d8a2", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_aux_global_position", "name": "aux_global_position", "type": "topic", "color": "#41d8cb", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource2d.msg"}, {"id": "t_vtol_vehicle_status", "name": "vtol_vehicle_status", "type": "topic", "color": "#414ad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_rate_setpoint", "name": "rover_rate_setpoint", "type": "topic", "color": "#9741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_optical_flow", "name": "sensor_optical_flow", "type": "topic", "color": "#d8414e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear_wheel", "name": "landing_gear_wheel", "type": "topic", "color": "#d8a641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu_status", "name": "vehicle_imu_status", "type": "topic", "color": "#d8c241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_power_button_state", "name": "power_button_state", "type": "topic", "color": "#c6d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensors_status_imu", "name": "sensors_status_imu", "type": "topic", "color": "#5941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_transponder_report", "name": "transponder_report", "type": "topic", "color": "#a441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed_validated", "name": "airspeed_validated", "type": "topic", "color": "#d84177", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_time_estimate", "name": "rtl_time_estimate", "type": "topic", "color": "#d89241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_correction", "name": "sensor_correction", "type": "topic", "color": "#8941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_v1_command", "name": "gimbal_v1_command", "type": "topic", "color": "#d841bb", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_spoilers_setpoint", "name": "spoilers_setpoint", "type": "topic", "color": "#d841ad", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_mount_orientation", "name": "mount_orientation", "type": "topic", "color": "#d84192", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_selection", "name": "sensor_selection", "type": "topic", "color": "#d88441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_navigator_status", "name": "navigator_status", "type": "topic", "color": "#abd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_telemetry_status", "name": "telemetry_status", "type": "topic", "color": "#90d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs", "name": "actuator_outputs", "type": "topic", "color": "#67d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_vehicle_odometry", "name": "vehicle_odometry", "type": "topic", "color": "#41d857", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude", "name": "vehicle_attitude", "type": "topic", "color": "#41d879", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status", "name": "estimator_status", "type": "topic", "color": "#41d89b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro_fifo", "name": "sensor_gyro_fifo", "type": "topic", "color": "#9d41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_response", "name": "dataman_response", "type": "topic", "color": "#d841d6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rc_parameter_map", "name": "rc_parameter_map", "type": "topic", "color": "#d84170", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_combined", "name": "sensor_combined", "type": "topic", "color": "#d86241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_servos", "name": "actuator_servos", "type": "topic", "color": "#cdd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_status", "name": "geofence_status", "type": "topic", "color": "#41d85e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_result", "name": "geofence_result", "type": "topic", "color": "#41d887", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor", "name": "distance_sensor", "type": "topic", "color": "#41d894", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command", "name": "vehicle_command", "type": "topic", "color": "#41d8af", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream_ack", "name": "ulog_stream_ack", "type": "topic", "color": "#41d8d1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_request", "name": "dataman_request", "type": "topic", "color": "#416cd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_key_value", "name": "debug_key_value", "type": "topic", "color": "#b941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_controls", "name": "gimbal_controls", "type": "topic", "color": "#bf41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gps_inject_data", "name": "gps_inject_data", "type": "topic", "color": "#d841c8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_motors", "name": "actuator_motors", "type": "topic", "color": "#d84162", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flaps_setpoint", "name": "flaps_setpoint", "type": "topic", "color": "#d88b41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_mission_result", "name": "mission_result", "type": "topic", "color": "#a4d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_capture", "name": "camera_capture", "type": "topic", "color": "#97d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_satellite_info", "name": "satellite_info", "type": "topic", "color": "#75d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_armed", "name": "actuator_armed", "type": "topic", "color": "#41d8a9", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failsafe_flags", "name": "failsafe_flags", "type": "topic", "color": "#41cbd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_status", "name": "vehicle_status", "type": "topic", "color": "#4180d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_action_request", "name": "action_request", "type": "topic", "color": "#4179d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_battery_status", "name": "battery_status", "type": "topic", "color": "#4165d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_takeoff_status", "name": "takeoff_status", "type": "topic", "color": "#d841b4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_trigger", "name": "camera_trigger", "type": "topic", "color": "#d8418b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_health_report", "name": "health_report", "type": "topic", "color": "#d87741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_test", "name": "actuator_test", "type": "topic", "color": "#4172d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_logger_status", "name": "logger_status", "type": "topic", "color": "#cd41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_home_position", "name": "home_position", "type": "topic", "color": "#d441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_status", "name": "camera_status", "type": "topic", "color": "#d841cf", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_irlock_report", "name": "irlock_report", "type": "topic", "color": "#d8417e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear", "name": "landing_gear", "type": "topic", "color": "#d85c41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tune_control", "name": "tune_control", "type": "topic", "color": "#d8d641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_orbit_status", "name": "orbit_status", "type": "topic", "color": "#d4d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_system_power", "name": "system_power", "type": "topic", "color": "#bfd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_accel", "name": "sensor_accel", "type": "topic", "color": "#d841a6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_baro", "name": "sensor_baro", "type": "topic", "color": "#d87041", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_array", "name": "debug_array", "type": "topic", "color": "#d87e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_roi", "name": "vehicle_roi", "type": "topic", "color": "#45d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream", "name": "ulog_stream", "type": "topic", "color": "#41b6d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_value", "name": "debug_value", "type": "topic", "color": "#4157d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro", "name": "sensor_gyro", "type": "topic", "color": "#7541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu", "name": "vehicle_imu", "type": "topic", "color": "#7b41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tecs_status", "name": "tecs_status", "type": "topic", "color": "#d84147", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gps", "name": "sensor_gps", "type": "topic", "color": "#d84741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/SensorGps.msg"}, {"id": "t_debug_vect", "name": "debug_vect", "type": "topic", "color": "#d8ad41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_mag", "name": "sensor_mag", "type": "topic", "color": "#4cd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_status", "name": "rtl_status", "type": "topic", "color": "#41bdd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_esc_status", "name": "esc_status", "type": "topic", "color": "#4c41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_input_rc", "name": "input_rc", "type": "topic", "color": "#b2d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed", "name": "airspeed", "type": "topic", "color": "#419bd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource1d.msg"}, {"id": "t_mission", "name": "mission", "type": "topic", "color": "#9dd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gripper", "name": "gripper", "type": "topic", "color": "#41d8c4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_cpuload", "name": "cpuload", "type": "topic", "color": "#41d1d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_event", "name": "event", "type": "topic", "color": "#82d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_wind", "name": "wind", "type": "topic", "color": "#6041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/Wind.msg"}, {"id": "t_rpm", "name": "rpm", "type": "topic", "color": "#41d8d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}], "links": [{"source": "m_camera_trigger", "target": "t_camera_trigger", "color": "#d8418b", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command_ack", "color": "#53d841", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command", "color": "#41d8af", "style": "dashed"}, {"source": "m_gps", "target": "t_sensor_gps", "color": "#d84741", "style": "dashed"}, {"source": "m_gps", "target": "t_gps_inject_data", "color": "#d841c8", "style": "dashed"}, {"source": "m_gps", "target": "t_satellite_info", "color": "#75d841", "style": "dashed"}, {"source": "m_tone_alarm", "target": "t_tune_control", "color": "#d8d641", "style": "dashed"}, {"source": "m_airship_att_control", "target": "t_vehicle_torque_setpoint", "color": "#d84169", "style": "dashed"}, {"source": "m_airship_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#d84184", "style": "dashed"}, {"source": "m_airspeed_selector", "target": "t_airspeed_validated", "color": "#d84177", "style": "dashed"}, {"source": "m_attitude_estimator_q", "target": "t_vehicle_attitude", "color": "#41d879", "style": "dashed"}, {"source": "m_camera_feedback", "target": "t_camera_capture", "color": "#97d841", "style": "dashed"}, {"source": "m_commander", "target": "t_tune_control", "color": "#d8d641", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_test", "color": "#4172d8", "style": "dashed"}, {"source": "m_commander", "target": "t_health_report", "color": "#d87741", "style": "dashed"}, {"source": "m_commander", "target": "t_power_button_state", "color": "#c6d841", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command", "color": "#41d8af", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command_ack", "color": "#53d841", "style": "dashed"}, {"source": "m_commander", "target": "t_register_ext_component_reply", "color": "#41d8b6", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_armed", "color": "#41d8a9", "style": "dashed"}, {"source": "m_commander", "target": "t_home_position", "color": "#d441d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_status", "color": "#4180d8", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_control_mode", "color": "#7bd841", "style": "dashed"}, {"source": "m_commander", "target": "t_event", "color": "#82d841", "style": "dashed"}, {"source": "m_commander", "target": "t_failsafe_flags", "color": "#41cbd8", "style": "dashed"}, {"source": "m_commander", "target": "t_failure_detector_status", "color": "#d8cf41", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_motors", "color": "#d84162", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos", "color": "#cdd841", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_control_allocator_status", "color": "#41d86c", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos_trim", "color": "#4143d8", "style": "dashed"}, {"source": "m_dataman", "target": "t_dataman_response", "color": "#d841d6", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_command_ack", "color": "#53d841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_sensor_selection", "color": "#d88441", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_sensor_bias", "color": "#4194d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_local_position", "color": "#d841c2", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_global_position", "color": "#41d84a", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status_flags", "color": "#41d850", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_odometry", "color": "#41d857", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_selector_status", "color": "#d8bb41", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_attitude", "color": "#41d879", "style": "dashed"}, {"source": "m_ekf2", "target": "t_wind", "color": "#6041d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status", "color": "#41d89b", "style": "dashed"}, {"source": "m_send_event", "target": "t_tune_control", "color": "#d8d641", "style": "dashed"}, {"source": "m_send_event", "target": "t_vehicle_command_ack", "color": "#53d841", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_landing_gear", "color": "#d85c41", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_vehicle_constraints", "color": "#d8b441", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_trajectory_setpoint", "color": "#59d841", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_landing_gear_wheel", "color": "#d8a641", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_vehicle_rates_setpoint", "color": "#60d841", "style": "dashed"}, {"source": "m_fw_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#41c4d8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_orbit_status", "color": "#d4d841", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_position_controller_landing_status", "color": "#d8a041", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#41d8bd", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_launch_detection_status", "color": "#418ed8", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_flight_phase_estimation", "color": "#d84e41", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_figure_eight_status", "color": "#41d872", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_landing_gear", "color": "#d85c41", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_flaps_setpoint", "color": "#d88b41", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_spoilers_setpoint", "color": "#d841ad", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_tecs_status", "color": "#d84147", "style": "dashed"}, {"source": "m_fw_pos_control", "target": "t_position_controller_status", "color": "#d89941", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_flaps_setpoint", "color": "#d88b41", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#60d841", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_spoilers_setpoint", "color": "#d841ad", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_controls", "color": "#bf41d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_set_attitude", "color": "#d8415c", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command", "color": "#41d8af", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command_ack", "color": "#53d841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_status", "color": "#9041d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_mount_orientation", "color": "#d84192", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_v1_command", "color": "#d841bb", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_information", "color": "#d86941", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_attitude_status", "color": "#41d843", "style": "dashed"}, {"source": "m_land_detector", "target": "t_vehicle_land_detected", "color": "#6ed841", "style": "dashed"}, {"source": "m_landing_target_estimator", "target": "t_landing_target_pose", "color": "#41d8a2", "style": "dashed"}, {"source": "m_load_mon", "target": "t_cpuload", "color": "#41d1d8", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_odometry", "color": "#41d857", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_local_position", "color": "#d841c2", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_global_position", "color": "#41d84a", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_estimator_status", "color": "#41d89b", "style": "dashed"}, {"source": "m_logger", "target": "t_ulog_stream", "color": "#41b6d8", "style": "dashed"}, {"source": "m_logger", "target": "t_logger_status", "color": "#cd41d8", "style": "dashed"}, {"source": "m_logger", "target": "t_vehicle_command_ack", "color": "#53d841", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_command", "color": "#41d8af", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_switches", "color": "#89d841", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_status", "color": "#4180d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_landing_gear", "color": "#d85c41", "style": "dashed"}, {"source": "m_manual_control", "target": "t_action_request", "color": "#4179d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_setpoint", "color": "#b241d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gps", "color": "#d84741", "style": "dashed"}, {"source": "m_mavlink", "target": "t_landing_target_pose", "color": "#41d8a2", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command", "color": "#41d8af", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mission", "color": "#9dd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gyro_fifo", "color": "#9d41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_telemetry_status", "color": "#90d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_ulog_stream_ack", "color": "#41d8d1", "style": "dashed"}, {"source": "m_mavlink", "target": "t_event", "color": "#82d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_transponder_report", "color": "#a441d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_mocap_odometry", "color": "#ab41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_rates_setpoint", "color": "#60d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_manual_control", "color": "#41afd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_key_value", "color": "#b941d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_baro", "color": "#d87041", "style": "dashed"}, {"source": "m_mavlink", "target": "t_trajectory_setpoint", "color": "#59d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command_ack", "color": "#53d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_array", "color": "#d87e41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_airspeed", "color": "#419bd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_mag", "color": "#4cd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_camera_status", "color": "#d841cf", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gps_inject_data", "color": "#d841c8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_local_position", "color": "#d841c2", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_attitude_status", "color": "#41d843", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_global_position", "color": "#41d84a", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_accel", "color": "#d841a6", "style": "dashed"}, {"source": "m_mavlink", "target": "t_dataman_request", "color": "#416cd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_battery_status", "color": "#4165d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_vect", "color": "#d8ad41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mc_virtual_attitude_setpoint", "color": "#415ed8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_value", "color": "#4157d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_differential_pressure", "color": "#4150d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude_setpoint", "color": "#41d865", "style": "dashed"}, {"source": "m_mavlink", "target": "t_irlock_report", "color": "#d8417e", "style": "dashed"}, {"source": "m_mavlink", "target": "t_rc_parameter_map", "color": "#d84170", "style": "dashed"}, {"source": "m_mavlink", "target": "t_tune_control", "color": "#d8d641", "style": "dashed"}, {"source": "m_mavlink", "target": "t_offboard_control_mode", "color": "#4541d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude", "color": "#41d879", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_visual_odometry", "color": "#d84155", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_optical_flow", "color": "#d8414e", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_information", "color": "#6e41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_attitude", "color": "#b9d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_fw_virtual_attitude_setpoint", "color": "#41d88e", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gyro", "color": "#7541d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_distance_sensor", "color": "#41d894", "style": "dashed"}, {"source": "m_mavlink", "target": "t_input_rc", "color": "#b2d841", "style": "dashed"}, {"source": "m_mc_att_control", "target": "t_vehicle_rates_setpoint", "color": "#60d841", "style": "dashed"}, {"source": "m_mc_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#41c4d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_trajectory_setpoint", "color": "#59d841", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#41d8bd", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_constraints", "color": "#d8b441", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_takeoff_status", "color": "#d841b4", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#41d865", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_actuator_controls_status_0", "color": "#d84141", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#60d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_navigator_status", "color": "#abd841", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission_result", "color": "#a4d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command", "color": "#41d8af", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission", "color": "#9dd841", "style": "dashed"}, {"source": "m_navigator", "target": "t_transponder_report", "color": "#a441d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_status", "color": "#41bdd8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_land_detected", "color": "#6ed841", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command_ack", "color": "#53d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_home_position", "color": "#d441d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_roi", "color": "#45d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_status", "color": "#4180d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_global_position", "color": "#41d84a", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_time_estimate", "color": "#d89241", "style": "dashed"}, {"source": "m_navigator", "target": "t_dataman_request", "color": "#416cd8", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_status", "color": "#41d85e", "style": "dashed"}, {"source": "m_navigator", "target": "t_position_setpoint_triplet", "color": "#5341d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_result", "color": "#41d887", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_gripper", "color": "#41d8c4", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_vehicle_command_ack", "color": "#53d841", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_vehicle_command", "color": "#41d8af", "style": "dashed"}, {"source": "m_rc_update", "target": "t_manual_control_switches", "color": "#89d841", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_actuator_motors", "color": "#d84162", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_actuator_servos", "color": "#cdd841", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_velocity_setpoint", "color": "#41a9d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_position_setpoint", "color": "#41a2d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_steering_setpoint", "color": "#c641d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_rate_setpoint", "color": "#9741d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_throttle_setpoint", "color": "#41d880", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_attitude_setpoint", "color": "#8241d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_position_controller_status", "color": "#d89941", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_actuator_motors", "color": "#d84162", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_velocity_setpoint", "color": "#41a9d8", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_position_setpoint", "color": "#41a2d8", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_steering_setpoint", "color": "#c641d8", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_rate_setpoint", "color": "#9741d8", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_throttle_setpoint", "color": "#41d880", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_attitude_setpoint", "color": "#8241d8", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_actuator_motors", "color": "#d84162", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_velocity_setpoint", "color": "#41a9d8", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_position_setpoint", "color": "#41a2d8", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_steering_setpoint", "color": "#c641d8", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_rate_setpoint", "color": "#9741d8", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_throttle_setpoint", "color": "#41d880", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_attitude_setpoint", "color": "#8241d8", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_torque_setpoint", "color": "#d84169", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#41d865", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_thrust_setpoint", "color": "#d84184", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_position_controller_status", "color": "#d89941", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensors_status_imu", "color": "#5941d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_airspeed", "color": "#419bd8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_selection", "color": "#d88441", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu_status", "color": "#d8c241", "style": "dashed"}, {"source": "m_sensors", "target": "t_differential_pressure", "color": "#4150d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_combined", "color": "#d86241", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu", "color": "#7b41d8", "style": "dashed"}, {"source": "m_battery_simulator", "target": "t_battery_status", "color": "#4165d8", "style": "dashed"}, {"source": "m_battery_simulator", "target": "t_vehicle_command_ack", "color": "#53d841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_gps", "color": "#d84741", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_armed", "color": "#41d8a9", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_local_position_groundtruth", "color": "#d85541", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_outputs", "color": "#67d841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_baro", "color": "#d87041", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_command_ack", "color": "#53d841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_attitude_groundtruth", "color": "#4187d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_mag", "color": "#4cd841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_gimbal_device_attitude_status", "color": "#41d843", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_accel", "color": "#d841a6", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_global_position_groundtruth", "color": "#d841a0", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_angular_velocity_groundtruth", "color": "#d84199", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_test", "color": "#4172d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_differential_pressure", "color": "#4150d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_motors", "color": "#d84162", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_servos", "color": "#cdd841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_esc_status", "color": "#4c41d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_visual_odometry", "color": "#d84155", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_optical_flow", "color": "#d8414e", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_gimbal_device_information", "color": "#6e41d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_gyro", "color": "#7541d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_distance_sensor", "color": "#41d894", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_motors", "color": "#d84162", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_test", "color": "#4172d8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_servos", "color": "#cdd841", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_armed", "color": "#41d8a9", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs_sim", "color": "#6741d8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs", "color": "#67d841", "style": "dashed"}, {"source": "m_sensor_agp_sim", "target": "t_aux_global_position", "color": "#41d8cb", "style": "dashed"}, {"source": "m_sensor_airspeed_sim", "target": "t_differential_pressure", "color": "#4150d8", "style": "dashed"}, {"source": "m_sensor_baro_sim", "target": "t_sensor_baro", "color": "#d87041", "style": "dashed"}, {"source": "m_sensor_gps_sim", "target": "t_sensor_gps", "color": "#d84741", "style": "dashed"}, {"source": "m_sensor_mag_sim", "target": "t_sensor_mag", "color": "#4cd841", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_gyro_fifo", "color": "#9d41d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_local_position_groundtruth", "color": "#d85541", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_rpm", "color": "#41d8d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_mocap_odometry", "color": "#ab41d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_baro", "color": "#d87041", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_command_ack", "color": "#53d841", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_attitude_groundtruth", "color": "#4187d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_mag", "color": "#4cd841", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_accel", "color": "#d841a6", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_global_position_groundtruth", "color": "#d841a0", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_angular_velocity_groundtruth", "color": "#d84199", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_differential_pressure", "color": "#4150d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_irlock_report", "color": "#d8417e", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_esc_status", "color": "#4c41d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_visual_odometry", "color": "#d84155", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_optical_flow", "color": "#d8414e", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_gyro", "color": "#7541d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_input_rc", "color": "#b2d841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_global_position_groundtruth", "color": "#d841a0", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_angular_velocity_groundtruth", "color": "#d84199", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_airspeed", "color": "#419bd8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_gyro_fifo", "color": "#9d41d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_attitude_groundtruth", "color": "#4187d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_local_position_groundtruth", "color": "#d85541", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_gyro", "color": "#7541d8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_distance_sensor", "color": "#41d894", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_accel", "color": "#d841a6", "style": "dashed"}, {"source": "m_system_power_simulator", "target": "t_system_power", "color": "#bfd841", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_sensor_correction", "color": "#8941d8", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command_ack", "color": "#53d841", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command", "color": "#41d8af", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_torque_setpoint", "color": "#d84169", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#d84184", "style": "dashed"}, {"source": "m_uuv_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#41d865", "style": "dashed"}, {"source": "m_uxrce_dds_client", "target": "t_vehicle_command", "color": "#41d8af", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_torque_setpoint", "color": "#d84169", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_command_ack", "color": "#53d841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#d84184", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_flaps_setpoint", "color": "#d88b41", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vtol_vehicle_status", "color": "#414ad8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_tiltrotor_extra_controls", "color": "#d8c841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_attitude_setpoint", "color": "#41d865", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_spoilers_setpoint", "color": "#d841ad", "style": "dashed"}, {"source": "m_actuator_test", "target": "t_actuator_test", "color": "#4172d8", "style": "dashed"}, {"source": "m_failure", "target": "t_vehicle_command", "color": "#41d8af", "style": "dashed"}, {"source": "m_tests", "target": "t_dataman_request", "color": "#416cd8", "style": "dashed"}, {"source": "m_tune_control", "target": "t_tune_control", "color": "#d8d641", "style": "dashed"}, {"source": "m_fake_gps", "target": "t_sensor_gps", "color": "#d84741", "style": "dashed"}, {"source": "m_fake_imu", "target": "t_esc_status", "color": "#4c41d8", "style": "dashed"}, {"source": "m_fake_imu", "target": "t_sensor_gyro_fifo", "color": "#9d41d8", "style": "dashed"}, {"source": "m_fake_imu", "target": "t_sensor_gyro", "color": "#7541d8", "style": "dashed"}, {"source": "m_fake_imu", "target": "t_sensor_accel", "color": "#d841a6", "style": "dashed"}, {"source": "m_fake_magnetometer", "target": "t_sensor_mag", "color": "#4cd841", "style": "dashed"}, {"source": "m_px4_mavlink_debug", "target": "t_debug_value", "color": "#4157d8", "style": "dashed"}, {"source": "m_px4_mavlink_debug", "target": "t_debug_key_value", "color": "#b941d8", "style": "dashed"}, {"source": "m_px4_mavlink_debug", "target": "t_debug_array", "color": "#d87e41", "style": "dashed"}, {"source": "m_px4_mavlink_debug", "target": "t_debug_vect", "color": "#d8ad41", "style": "dashed"}, {"source": "m_px4_simple_app", "target": "t_vehicle_attitude", "color": "#41d879", "style": "dashed"}, {"source": "t_vehicle_local_position", "target": "m_camera_trigger", "color": "#d841c2", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_trigger", "color": "#41d8af", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_gps", "color": "#d841c8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_msp_osd", "color": "#41d879", "style": "normal"}, {"source": "t_home_position", "target": "m_msp_osd", "color": "#d441d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_msp_osd", "color": "#4165d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_msp_osd", "color": "#4180d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_msp_osd", "color": "#d841c2", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_msp_osd", "color": "#d84177", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_msp_osd", "color": "#41d84a", "style": "normal"}, {"source": "t_input_rc", "target": "m_msp_osd", "color": "#b2d841", "style": "normal"}, {"source": "t_tune_control", "target": "m_tone_alarm", "color": "#d8d641", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airship_att_control", "color": "#4180d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_airship_att_control", "color": "#b241d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_airspeed_selector", "color": "#41d879", "style": "normal"}, {"source": "t_airspeed", "target": "m_airspeed_selector", "color": "#419bd8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_airspeed_selector", "color": "#d84e41", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_airspeed_selector", "color": "#418ed8", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_airspeed_selector", "color": "#d8bb41", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airspeed_selector", "color": "#4180d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_airspeed_selector", "color": "#d841c2", "style": "normal"}, {"source": "t_tecs_status", "target": "m_airspeed_selector", "color": "#d84147", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_airspeed_selector", "color": "#6ed841", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_airspeed_selector", "color": "#d84184", "style": "normal"}, {"source": "t_estimator_status", "target": "m_airspeed_selector", "color": "#41d89b", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_attitude_estimator_q", "color": "#41d879", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_attitude_estimator_q", "color": "#d84155", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_attitude_estimator_q", "color": "#d841c2", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_attitude_estimator_q", "color": "#d86241", "style": "normal"}, {"source": "t_vehicle_mocap_odometry", "target": "m_attitude_estimator_q", "color": "#ab41d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_camera_feedback", "color": "#41d84a", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_camera_feedback", "color": "#d8418b", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_camera_feedback", "color": "#41d879", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_camera_feedback", "color": "#41d843", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_commander", "color": "#8941d8", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_commander", "color": "#d84741", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_commander", "color": "#41d8a9", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_commander", "color": "#41d8af", "style": "normal"}, {"source": "t_mission_result", "target": "m_commander", "color": "#a4d841", "style": "normal"}, {"source": "t_navigator_status", "target": "m_commander", "color": "#abd841", "style": "normal"}, {"source": "t_telemetry_status", "target": "m_commander", "color": "#90d841", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_commander", "color": "#89d841", "style": "normal"}, {"source": "t_cpuload", "target": "m_commander", "color": "#41d1d8", "style": "normal"}, {"source": "t_event", "target": "m_commander", "color": "#82d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_commander", "color": "#6ed841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_commander", "color": "#b241d8", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_commander", "color": "#d87041", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_commander", "color": "#53d841", "style": "normal"}, {"source": "t_logger_status", "target": "m_commander", "color": "#cd41d8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_commander", "color": "#d88441", "style": "normal"}, {"source": "t_home_position", "target": "m_commander", "color": "#d441d8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_commander", "color": "#4194d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_commander", "color": "#4cd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_commander", "color": "#4180d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_commander", "color": "#d841c2", "style": "normal"}, {"source": "t_action_request", "target": "m_commander", "color": "#4179d8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_commander", "color": "#41d84a", "style": "normal"}, {"source": "t_estimator_status_flags", "target": "m_commander", "color": "#41d850", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_commander", "color": "#d89241", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_commander", "color": "#d841a6", "style": "normal"}, {"source": "t_battery_status", "target": "m_commander", "color": "#4165d8", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_commander", "color": "#d8bb41", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_commander", "color": "#d8c241", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_commander", "color": "#4150d8", "style": "normal"}, {"source": "t_vtol_vehicle_status", "target": "m_commander", "color": "#414ad8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_commander", "color": "#d84177", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_commander", "color": "#4541d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_commander", "color": "#d84162", "style": "normal"}, {"source": "t_esc_status", "target": "m_commander", "color": "#4c41d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_commander", "color": "#41d879", "style": "normal"}, {"source": "t_power_button_state", "target": "m_commander", "color": "#c6d841", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_commander", "color": "#5941d8", "style": "normal"}, {"source": "t_system_power", "target": "m_commander", "color": "#bfd841", "style": "normal"}, {"source": "t_wind", "target": "m_commander", "color": "#6041d8", "style": "normal"}, {"source": "t_geofence_result", "target": "m_commander", "color": "#41d887", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_commander", "color": "#7541d8", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_commander", "color": "#41d894", "style": "normal"}, {"source": "t_estimator_status", "target": "m_commander", "color": "#41d89b", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_control_allocator", "color": "#d84169", "style": "normal"}, {"source": "t_rpm", "target": "m_control_allocator", "color": "#41d8d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_control_allocator", "color": "#89d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_control_allocator", "color": "#4180d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_control_allocator", "color": "#7bd841", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_control_allocator", "color": "#d88b41", "style": "normal"}, {"source": "t_tiltrotor_extra_controls", "target": "m_control_allocator", "color": "#d8c841", "style": "normal"}, {"source": "t_failure_detector_status", "target": "m_control_allocator", "color": "#d8cf41", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_control_allocator", "color": "#d84184", "style": "normal"}, {"source": "t_spoilers_setpoint", "target": "m_control_allocator", "color": "#d841ad", "style": "normal"}, {"source": "t_dataman_request", "target": "m_dataman", "color": "#416cd8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_ekf2", "color": "#41d8a2", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_ekf2", "color": "#5941d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_ekf2", "color": "#41d8af", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_ekf2", "color": "#d84155", "style": "normal"}, {"source": "t_airspeed", "target": "m_ekf2", "color": "#419bd8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_ekf2", "color": "#d88441", "style": "normal"}, {"source": "t_aux_global_position", "target": "m_ekf2", "color": "#41d8cb", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_ekf2", "color": "#418ed8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ekf2", "color": "#4180d8", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_ekf2", "color": "#d86241", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_ekf2", "color": "#7b41d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_ekf2", "color": "#6ed841", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_ekf2", "color": "#41d894", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_ekf2", "color": "#d84177", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_send_event", "color": "#41d8af", "style": "normal"}, {"source": "t_battery_status", "target": "m_send_event", "color": "#4165d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_send_event", "color": "#4180d8", "style": "normal"}, {"source": "t_cpuload", "target": "m_send_event", "color": "#41d1d8", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_send_event", "color": "#41cbd8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_flight_mode_manager", "color": "#41d8af", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_flight_mode_manager", "color": "#d841b4", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_flight_mode_manager", "color": "#4180d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_flight_mode_manager", "color": "#7bd841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_flight_mode_manager", "color": "#d841c2", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_flight_mode_manager", "color": "#6ed841", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_flight_mode_manager", "color": "#41d865", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_att_control", "color": "#41d879", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_att_control", "color": "#4180d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_att_control", "color": "#7bd841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_att_control", "color": "#d841c2", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_fw_att_control", "color": "#41c4d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_att_control", "color": "#6ed841", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_fw_att_control", "color": "#41d865", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_att_control", "color": "#d84177", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_att_control", "color": "#b241d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_autotune_attitude_control", "color": "#4180d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_autotune_attitude_control", "color": "#b241d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_fw_pos_control", "color": "#5341d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_fw_pos_control", "color": "#59d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_pos_control", "color": "#41d879", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_fw_pos_control", "color": "#41d8af", "style": "normal"}, {"source": "t_wind", "target": "m_fw_pos_control", "color": "#6041d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_pos_control", "color": "#4180d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_pos_control", "color": "#7bd841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_pos_control", "color": "#d841c2", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_pos_control", "color": "#6ed841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_fw_pos_control", "color": "#41d84a", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_pos_control", "color": "#d84177", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_pos_control", "color": "#b241d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_fw_rate_control", "color": "#4165d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_rate_control", "color": "#4180d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_rate_control", "color": "#7bd841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_rate_control", "color": "#d84177", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_rate_control", "color": "#6ed841", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_fw_rate_control", "color": "#41d86c", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_fw_rate_control", "color": "#60d841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_rate_control", "color": "#b241d8", "style": "normal"}, {"source": "t_gimbal_manager_set_manual_control", "target": "m_gimbal", "color": "#41afd8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_gimbal", "color": "#5341d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_gimbal", "color": "#41d879", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gimbal", "color": "#41d8af", "style": "normal"}, {"source": "t_vehicle_roi", "target": "m_gimbal", "color": "#45d841", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_gimbal", "color": "#6e41d8", "style": "normal"}, {"source": "t_gimbal_manager_set_attitude", "target": "m_gimbal", "color": "#b9d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_gimbal", "color": "#6ed841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_gimbal", "color": "#41d84a", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_gimbal", "color": "#41d843", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gimbal", "color": "#b241d8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_gyro_calibration", "color": "#8941d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_gyro_calibration", "color": "#4180d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_calibration", "color": "#7541d8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_gyro_calibration", "color": "#d841a6", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_gyro_fft", "color": "#d88441", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_gyro_fft", "color": "#d8c241", "style": "normal"}, {"source": "t_sensor_gyro_fifo", "target": "m_gyro_fft", "color": "#9d41d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_fft", "color": "#7541d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_land_detector", "color": "#5341d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_land_detector", "color": "#41d8a9", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_land_detector", "color": "#59d841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_land_detector", "color": "#d88441", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_land_detector", "color": "#418ed8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_land_detector", "color": "#4180d8", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_land_detector", "color": "#d8c241", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_land_detector", "color": "#d841c2", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_land_detector", "color": "#7bd841", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_land_detector", "color": "#d841b4", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_land_detector", "color": "#41d84a", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_land_detector", "color": "#d84184", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_land_detector", "color": "#d84177", "style": "normal"}, {"source": "t_irlock_report", "target": "m_landing_target_estimator", "color": "#d8417e", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_landing_target_estimator", "color": "#d841c2", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_landing_target_estimator", "color": "#41d879", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_local_position_estimator", "color": "#41d8a2", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_local_position_estimator", "color": "#41d8a9", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_local_position_estimator", "color": "#41d8af", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_local_position_estimator", "color": "#41d879", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_local_position_estimator", "color": "#d84155", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_local_position_estimator", "color": "#d841c2", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_local_position_estimator", "color": "#d86241", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_local_position_estimator", "color": "#6ed841", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_local_position_estimator", "color": "#41d894", "style": "normal"}, {"source": "t_vehicle_mocap_odometry", "target": "m_local_position_estimator", "color": "#ab41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_logger", "color": "#41d8af", "style": "normal"}, {"source": "t_battery_status", "target": "m_logger", "color": "#4165d8", "style": "normal"}, {"source": "t_ulog_stream_ack", "target": "m_logger", "color": "#41d8d1", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_logger", "color": "#4180d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_logger", "color": "#b241d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mag_bias_estimator", "color": "#4180d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mag_bias_estimator", "color": "#4cd841", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_manual_control", "color": "#89d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_manual_control", "color": "#4180d8", "style": "normal"}, {"source": "t_action_request", "target": "m_manual_control", "color": "#4179d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_manual_control", "color": "#b241d8", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_mavlink", "color": "#d84741", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_mavlink", "color": "#d85541", "style": "normal"}, {"source": "t_gimbal_manager_information", "target": "m_mavlink", "color": "#d86941", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_mavlink", "color": "#d87041", "style": "normal"}, {"source": "t_health_report", "target": "m_mavlink", "color": "#d87741", "style": "normal"}, {"source": "t_debug_array", "target": "m_mavlink", "color": "#d87e41", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_mavlink", "color": "#d88441", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_mavlink", "color": "#d89241", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_mavlink", "color": "#d89941", "style": "normal"}, {"source": "t_debug_vect", "target": "m_mavlink", "color": "#d8ad41", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_mavlink", "color": "#d8bb41", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_mavlink", "color": "#d8c241", "style": "normal"}, {"source": "t_orbit_status", "target": "m_mavlink", "color": "#d4d841", "style": "normal"}, {"source": "t_input_rc", "target": "m_mavlink", "color": "#b2d841", "style": "normal"}, {"source": "t_mission_result", "target": "m_mavlink", "color": "#a4d841", "style": "normal"}, {"source": "t_camera_capture", "target": "m_mavlink", "color": "#97d841", "style": "normal"}, {"source": "t_mission", "target": "m_mavlink", "color": "#9dd841", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_mavlink", "color": "#89d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mavlink", "color": "#7bd841", "style": "normal"}, {"source": "t_event", "target": "m_mavlink", "color": "#82d841", "style": "normal"}, {"source": "t_satellite_info", "target": "m_mavlink", "color": "#75d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mavlink", "color": "#6ed841", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_mavlink", "color": "#67d841", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mavlink", "color": "#60d841", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_mavlink", "color": "#53d841", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mavlink", "color": "#4cd841", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_mavlink", "color": "#41d843", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_mavlink", "color": "#41d84a", "style": "normal"}, {"source": "t_vehicle_odometry", "target": "m_mavlink", "color": "#41d857", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mavlink", "color": "#41d865", "style": "normal"}, {"source": "t_figure_eight_status", "target": "m_mavlink", "color": "#41d872", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mavlink", "color": "#41d879", "style": "normal"}, {"source": "t_geofence_result", "target": "m_mavlink", "color": "#41d887", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_mavlink", "color": "#41d894", "style": "normal"}, {"source": "t_estimator_status", "target": "m_mavlink", "color": "#41d89b", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_mavlink", "color": "#41d8a2", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_mavlink", "color": "#41d8a9", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_mavlink", "color": "#41d8af", "style": "normal"}, {"source": "t_register_ext_component_reply", "target": "m_mavlink", "color": "#41d8b6", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_mavlink", "color": "#41d8bd", "style": "normal"}, {"source": "t_rpm", "target": "m_mavlink", "color": "#41d8d8", "style": "normal"}, {"source": "t_cpuload", "target": "m_mavlink", "color": "#41d1d8", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_mavlink", "color": "#41cbd8", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mavlink", "color": "#41c4d8", "style": "normal"}, {"source": "t_ulog_stream", "target": "m_mavlink", "color": "#41b6d8", "style": "normal"}, {"source": "t_airspeed", "target": "m_mavlink", "color": "#419bd8", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_mavlink", "color": "#4187d8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_mavlink", "color": "#4194d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mavlink", "color": "#4180d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_mavlink", "color": "#4165d8", "style": "normal"}, {"source": "t_debug_value", "target": "m_mavlink", "color": "#4157d8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_mavlink", "color": "#4150d8", "style": "normal"}, {"source": "t_esc_status", "target": "m_mavlink", "color": "#4c41d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_mavlink", "color": "#5341d8", "style": "normal"}, {"source": "t_wind", "target": "m_mavlink", "color": "#6041d8", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_mavlink", "color": "#6741d8", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_mavlink", "color": "#6e41d8", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_mavlink", "color": "#7b41d8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_mavlink", "color": "#8941d8", "style": "normal"}, {"source": "t_gimbal_manager_status", "target": "m_mavlink", "color": "#9041d8", "style": "normal"}, {"source": "t_transponder_report", "target": "m_mavlink", "color": "#a441d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mavlink", "color": "#b241d8", "style": "normal"}, {"source": "t_debug_key_value", "target": "m_mavlink", "color": "#b941d8", "style": "normal"}, {"source": "t_home_position", "target": "m_mavlink", "color": "#d441d8", "style": "normal"}, {"source": "t_dataman_response", "target": "m_mavlink", "color": "#d841d6", "style": "normal"}, {"source": "t_camera_status", "target": "m_mavlink", "color": "#d841cf", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_mavlink", "color": "#d841c8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mavlink", "color": "#d841c2", "style": "normal"}, {"source": "t_gimbal_v1_command", "target": "m_mavlink", "color": "#d841bb", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_mavlink", "color": "#d841a0", "style": "normal"}, {"source": "t_vehicle_angular_velocity_groundtruth", "target": "m_mavlink", "color": "#d84199", "style": "normal"}, {"source": "t_mount_orientation", "target": "m_mavlink", "color": "#d84192", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_mavlink", "color": "#d8418b", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_mavlink", "color": "#d84184", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_mavlink", "color": "#d84177", "style": "normal"}, {"source": "t_gimbal_device_set_attitude", "target": "m_mavlink", "color": "#d8415c", "style": "normal"}, {"source": "t_tecs_status", "target": "m_mavlink", "color": "#d84147", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mc_att_control", "color": "#41d879", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_att_control", "color": "#4180d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_att_control", "color": "#7bd841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_att_control", "color": "#d841c2", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mc_att_control", "color": "#41c4d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_att_control", "color": "#6ed841", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mc_att_control", "color": "#41d865", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_att_control", "color": "#b241d8", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#d84169", "style": "normal"}, {"source": "t_actuator_controls_status_0", "target": "m_mc_autotune_attitude_control", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_autotune_attitude_control", "color": "#4180d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#b241d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_mc_pos_control", "color": "#59d841", "style": "normal"}, {"source": "t_vehicle_constraints", "target": "m_mc_pos_control", "color": "#d8b441", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_pos_control", "color": "#7bd841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_pos_control", "color": "#d841c2", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_pos_control", "color": "#6ed841", "style": "normal"}, {"source": "t_battery_status", "target": "m_mc_rate_control", "color": "#4165d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_rate_control", "color": "#4180d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_rate_control", "color": "#7bd841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_rate_control", "color": "#6ed841", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_mc_rate_control", "color": "#41d86c", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mc_rate_control", "color": "#60d841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_rate_control", "color": "#b241d8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_navigator", "color": "#41d8a2", "style": "normal"}, {"source": "t_position_controller_landing_status", "target": "m_navigator", "color": "#d8a041", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_navigator", "color": "#41d8af", "style": "normal"}, {"source": "t_mission", "target": "m_navigator", "color": "#9dd841", "style": "normal"}, {"source": "t_wind", "target": "m_navigator", "color": "#6041d8", "style": "normal"}, {"source": "t_home_position", "target": "m_navigator", "color": "#d441d8", "style": "normal"}, {"source": "t_dataman_response", "target": "m_navigator", "color": "#d841d6", "style": "normal"}, {"source": "t_geofence_status", "target": "m_navigator", "color": "#41d85e", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_navigator", "color": "#4180d8", "style": "normal"}, {"source": "t_transponder_report", "target": "m_navigator", "color": "#a441d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_navigator", "color": "#d841c2", "style": "normal"}, {"source": "t_rtl_status", "target": "m_navigator", "color": "#41bdd8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_navigator", "color": "#6ed841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_navigator", "color": "#41d84a", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_navigator", "color": "#d89941", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_payload_deliverer", "color": "#41d8af", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_rc_update", "color": "#89d841", "style": "normal"}, {"source": "t_rc_parameter_map", "target": "m_rc_update", "color": "#d84170", "style": "normal"}, {"source": "t_input_rc", "target": "m_rc_update", "color": "#b2d841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_rover_ackermann", "color": "#d84162", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_rover_ackermann", "color": "#4541d8", "style": "normal"}, {"source": "t_actuator_servos", "target": "m_rover_ackermann", "color": "#cdd841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_ackermann", "color": "#5341d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_ackermann", "color": "#59d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_ackermann", "color": "#41d879", "style": "normal"}, {"source": "t_rover_position_setpoint", "target": "m_rover_ackermann", "color": "#41a2d8", "style": "normal"}, {"source": "t_rover_steering_setpoint", "target": "m_rover_ackermann", "color": "#c641d8", "style": "normal"}, {"source": "t_rover_velocity_setpoint", "target": "m_rover_ackermann", "color": "#41a9d8", "style": "normal"}, {"source": "t_rover_rate_setpoint", "target": "m_rover_ackermann", "color": "#9741d8", "style": "normal"}, {"source": "t_rover_throttle_setpoint", "target": "m_rover_ackermann", "color": "#41d880", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_ackermann", "color": "#7bd841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_ackermann", "color": "#d841c2", "style": "normal"}, {"source": "t_rover_attitude_setpoint", "target": "m_rover_ackermann", "color": "#8241d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_ackermann", "color": "#b241d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_rover_differential", "color": "#d84162", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_rover_differential", "color": "#4541d8", "style": "normal"}, {"source": "t_rover_velocity_setpoint", "target": "m_rover_differential", "color": "#41a9d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_differential", "color": "#5341d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_differential", "color": "#59d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_differential", "color": "#41d879", "style": "normal"}, {"source": "t_rover_position_setpoint", "target": "m_rover_differential", "color": "#41a2d8", "style": "normal"}, {"source": "t_rover_steering_setpoint", "target": "m_rover_differential", "color": "#c641d8", "style": "normal"}, {"source": "t_rover_rate_setpoint", "target": "m_rover_differential", "color": "#9741d8", "style": "normal"}, {"source": "t_rover_throttle_setpoint", "target": "m_rover_differential", "color": "#41d880", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_differential", "color": "#7bd841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_differential", "color": "#d841c2", "style": "normal"}, {"source": "t_rover_attitude_setpoint", "target": "m_rover_differential", "color": "#8241d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_differential", "color": "#b241d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_rover_mecanum", "color": "#d84162", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_rover_mecanum", "color": "#4541d8", "style": "normal"}, {"source": "t_rover_velocity_setpoint", "target": "m_rover_mecanum", "color": "#41a9d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_mecanum", "color": "#5341d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_mecanum", "color": "#59d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_mecanum", "color": "#41d879", "style": "normal"}, {"source": "t_rover_position_setpoint", "target": "m_rover_mecanum", "color": "#41a2d8", "style": "normal"}, {"source": "t_rover_steering_setpoint", "target": "m_rover_mecanum", "color": "#c641d8", "style": "normal"}, {"source": "t_rover_rate_setpoint", "target": "m_rover_mecanum", "color": "#9741d8", "style": "normal"}, {"source": "t_rover_throttle_setpoint", "target": "m_rover_mecanum", "color": "#41d880", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_mecanum", "color": "#7bd841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_mecanum", "color": "#d841c2", "style": "normal"}, {"source": "t_rover_attitude_setpoint", "target": "m_rover_mecanum", "color": "#8241d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_mecanum", "color": "#b241d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_pos_control", "color": "#5341d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_pos_control", "color": "#41d879", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_pos_control", "color": "#59d841", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_pos_control", "color": "#7bd841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_pos_control", "color": "#d841c2", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_rover_pos_control", "color": "#41d84a", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_rover_pos_control", "color": "#41d865", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_pos_control", "color": "#b241d8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_sensors", "color": "#8941d8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_sensors", "color": "#d88441", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_sensors", "color": "#4194d8", "style": "normal"}, {"source": "t_sensor_optical_flow", "target": "m_sensors", "color": "#d8414e", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_sensors", "color": "#4cd841", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_sensors", "color": "#d8c241", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_sensors", "color": "#7bd841", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_sensors", "color": "#7541d8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_sensors", "color": "#4150d8", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_sensors", "color": "#7b41d8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_sensors", "color": "#d841a6", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_simulator", "color": "#4180d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_battery_simulator", "color": "#d84e41", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_battery_simulator", "color": "#41d8af", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_gz_bridge", "color": "#bf41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_gz_bridge", "color": "#d84162", "style": "normal"}, {"source": "t_actuator_test", "target": "m_gz_bridge", "color": "#4172d8", "style": "normal"}, {"source": "t_gimbal_device_set_attitude", "target": "m_gz_bridge", "color": "#d8415c", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_gz_bridge", "color": "#41d8a9", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gz_bridge", "color": "#41d8af", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_gz_bridge", "color": "#d8a641", "style": "normal"}, {"source": "t_gripper", "target": "m_gz_bridge", "color": "#41d8c4", "style": "normal"}, {"source": "t_landing_gear", "target": "m_gz_bridge", "color": "#d85c41", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_gz_bridge", "color": "#4143d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gz_bridge", "color": "#b241d8", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out_sim", "color": "#bf41d8", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out_sim", "color": "#d84162", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out_sim", "color": "#4172d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out_sim", "color": "#41d8a9", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out_sim", "color": "#41d8af", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out_sim", "color": "#d8a641", "style": "normal"}, {"source": "t_gripper", "target": "m_pwm_out_sim", "color": "#41d8c4", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out_sim", "color": "#d85c41", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out_sim", "color": "#4143d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out_sim", "color": "#b241d8", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_agp_sim", "color": "#d841a0", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_airspeed_sim", "color": "#d841a0", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_sensor_airspeed_sim", "color": "#41d879", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_sensor_airspeed_sim", "color": "#d85541", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_baro_sim", "color": "#d841a0", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#d841a0", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#d85541", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_mag_sim", "color": "#d841a0", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_sensor_mag_sim", "color": "#4187d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_simulator_mavlink", "color": "#41d8af", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_simulator_mavlink", "color": "#6741d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_simulator_mavlink", "color": "#4165d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_simulator_mavlink", "color": "#4180d8", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_simulator_mavlink", "color": "#67d841", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_simulator_sih", "color": "#6741d8", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_simulator_sih", "color": "#67d841", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_temperature_compensation", "color": "#d87041", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_temperature_compensation", "color": "#41d8af", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_temperature_compensation", "color": "#4cd841", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_temperature_compensation", "color": "#7541d8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_temperature_compensation", "color": "#d841a6", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_att_control", "color": "#41d879", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_att_control", "color": "#7bd841", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_uuv_att_control", "color": "#41d865", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_uuv_att_control", "color": "#60d841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uuv_att_control", "color": "#b241d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_pos_control", "color": "#7bd841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uuv_pos_control", "color": "#d841c2", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_pos_control", "color": "#41d879", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_uuv_pos_control", "color": "#59d841", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_uxrce_dds_client", "color": "#53d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_vtol_att_control", "color": "#41d8af", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_vtol_att_control", "color": "#41d8bd", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_vtol_att_control", "color": "#7bd841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_vtol_att_control", "color": "#6ed841", "style": "normal"}, {"source": "t_home_position", "target": "m_vtol_att_control", "color": "#d441d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_vtol_att_control", "color": "#4180d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_vtol_att_control", "color": "#d841c2", "style": "normal"}, {"source": "t_action_request", "target": "m_vtol_att_control", "color": "#4179d8", "style": "normal"}, {"source": "t_mc_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#415ed8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_vtol_att_control", "color": "#d84177", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_vtol_att_control", "color": "#5341d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_vtol_att_control", "color": "#41d879", "style": "normal"}, {"source": "t_fw_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#41d88e", "style": "normal"}, {"source": "t_tecs_status", "target": "m_vtol_att_control", "color": "#d84147", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_failure", "color": "#53d841", "style": "normal"}, {"source": "t_dataman_response", "target": "m_tests", "color": "#d841d6", "style": "normal"}, {"source": "t_input_rc", "target": "m_tests", "color": "#b2d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fake_magnetometer", "color": "#41d879", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_work_item_example", "color": "#4180d8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_work_item_example", "color": "#d841a6", "style": "normal"}]} \ No newline at end of file +{"nodes": [{"id": "m_fw_autotune_attitude_control", "name": "fw_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_autotune_attitude_control", "name": "mc_autotune_attitude_control", "type": "Module", "color": "#666666"}, {"id": "m_landing_target_estimator", "name": "landing_target_estimator", "type": "Module", "color": "#666666"}, {"id": "m_local_position_estimator", "name": "local_position_estimator", "type": "Module", "color": "#666666"}, {"id": "m_temperature_compensation", "name": "temperature_compensation", "type": "Module", "color": "#666666"}, {"id": "m_system_power_simulator", "name": "system_power_simulator", "type": "Module", "color": "#666666"}, {"id": "m_attitude_estimator_q", "name": "attitude_estimator_q", "type": "Module", "color": "#666666"}, {"id": "m_airship_att_control", "name": "airship_att_control", "type": "Module", "color": "#666666"}, {"id": "m_flight_mode_manager", "name": "flight_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_sensor_airspeed_sim", "name": "sensor_airspeed_sim", "type": "Module", "color": "#666666"}, {"id": "m_fw_lat_lon_control", "name": "fw_lat_lon_control", "type": "Module", "color": "#666666"}, {"id": "m_mag_bias_estimator", "name": "mag_bias_estimator", "type": "Module", "color": "#666666"}, {"id": "m_rover_differential", "name": "rover_differential", "type": "Module", "color": "#666666"}, {"id": "m_airspeed_selector", "name": "airspeed_selector", "type": "Module", "color": "#666666"}, {"id": "m_control_allocator", "name": "control_allocator", "type": "Module", "color": "#666666"}, {"id": "m_payload_deliverer", "name": "payload_deliverer", "type": "Module", "color": "#666666"}, {"id": "m_rover_pos_control", "name": "rover_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_battery_simulator", "name": "battery_simulator", "type": "Module", "color": "#666666"}, {"id": "m_simulator_mavlink", "name": "simulator_mavlink", "type": "Module", "color": "#666666"}, {"id": "m_fake_magnetometer", "name": "fake_magnetometer", "type": "Module", "color": "#666666"}, {"id": "m_px4_mavlink_debug", "name": "px4_mavlink_debug", "type": "Module", "color": "#666666"}, {"id": "m_work_item_example", "name": "work_item_example", "type": "Module", "color": "#666666"}, {"id": "m_gyro_calibration", "name": "gyro_calibration", "type": "Module", "color": "#666666"}, {"id": "m_uxrce_dds_client", "name": "uxrce_dds_client", "type": "Module", "color": "#666666"}, {"id": "m_vtol_att_control", "name": "vtol_att_control", "type": "Module", "color": "#666666"}, {"id": "m_camera_feedback", "name": "camera_feedback", "type": "Module", "color": "#666666"}, {"id": "m_fw_mode_manager", "name": "fw_mode_manager", "type": "Module", "color": "#666666"}, {"id": "m_fw_rate_control", "name": "fw_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_rate_control", "name": "mc_rate_control", "type": "Module", "color": "#666666"}, {"id": "m_rover_ackermann", "name": "rover_ackermann", "type": "Module", "color": "#666666"}, {"id": "m_sensor_baro_sim", "name": "sensor_baro_sim", "type": "Module", "color": "#666666"}, {"id": "m_uuv_att_control", "name": "uuv_att_control", "type": "Module", "color": "#666666"}, {"id": "m_uuv_pos_control", "name": "uuv_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_camera_trigger", "name": "camera_trigger", "type": "Module", "color": "#666666"}, {"id": "m_fw_att_control", "name": "fw_att_control", "type": "Module", "color": "#666666"}, {"id": "m_manual_control", "name": "manual_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_att_control", "name": "mc_att_control", "type": "Module", "color": "#666666"}, {"id": "m_mc_pos_control", "name": "mc_pos_control", "type": "Module", "color": "#666666"}, {"id": "m_sensor_agp_sim", "name": "sensor_agp_sim", "type": "Module", "color": "#666666"}, {"id": "m_sensor_gps_sim", "name": "sensor_gps_sim", "type": "Module", "color": "#666666"}, {"id": "m_sensor_mag_sim", "name": "sensor_mag_sim", "type": "Module", "color": "#666666"}, {"id": "m_px4_simple_app", "name": "px4_simple_app", "type": "Module", "color": "#666666"}, {"id": "m_land_detector", "name": "land_detector", "type": "Module", "color": "#666666"}, {"id": "m_rover_mecanum", "name": "rover_mecanum", "type": "Module", "color": "#666666"}, {"id": "m_simulator_sih", "name": "simulator_sih", "type": "Module", "color": "#666666"}, {"id": "m_actuator_test", "name": "actuator_test", "type": "Module", "color": "#666666"}, {"id": "m_tune_control", "name": "tune_control", "type": "Module", "color": "#666666"}, {"id": "m_pwm_out_sim", "name": "pwm_out_sim", "type": "Module", "color": "#666666"}, {"id": "m_tone_alarm", "name": "tone_alarm", "type": "Module", "color": "#666666"}, {"id": "m_send_event", "name": "send_event", "type": "Module", "color": "#666666"}, {"id": "m_commander", "name": "commander", "type": "Module", "color": "#666666"}, {"id": "m_navigator", "name": "navigator", "type": "Module", "color": "#666666"}, {"id": "m_rc_update", "name": "rc_update", "type": "Module", "color": "#666666"}, {"id": "m_gz_bridge", "name": "gz_bridge", "type": "Module", "color": "#666666"}, {"id": "m_gyro_fft", "name": "gyro_fft", "type": "Module", "color": "#666666"}, {"id": "m_load_mon", "name": "load_mon", "type": "Module", "color": "#666666"}, {"id": "m_fake_gps", "name": "fake_gps", "type": "Module", "color": "#666666"}, {"id": "m_fake_imu", "name": "fake_imu", "type": "Module", "color": "#666666"}, {"id": "m_msp_osd", "name": "msp_osd", "type": "Module", "color": "#666666"}, {"id": "m_dataman", "name": "dataman", "type": "Module", "color": "#666666"}, {"id": "m_mavlink", "name": "mavlink", "type": "Module", "color": "#666666"}, {"id": "m_sensors", "name": "sensors", "type": "Module", "color": "#666666"}, {"id": "m_failure", "name": "failure", "type": "Module", "color": "#666666"}, {"id": "m_gimbal", "name": "gimbal", "type": "Module", "color": "#666666"}, {"id": "m_logger", "name": "logger", "type": "Module", "color": "#666666"}, {"id": "m_tests", "name": "tests", "type": "Module", "color": "#666666"}, {"id": "m_ekf2", "name": "ekf2", "type": "Module", "color": "#666666"}, {"id": "m_gps", "name": "gps", "type": "Module", "color": "#666666"}, {"id": "t_vehicle_angular_velocity_groundtruth", "name": "vehicle_angular_velocity_groundtruth", "type": "topic", "color": "#d8a941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_global_position_groundtruth", "name": "vehicle_global_position_groundtruth", "type": "topic", "color": "#abd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_landing_status", "name": "position_controller_landing_status", "type": "topic", "color": "#41d845", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_longitudinal_control_configuration", "name": "longitudinal_control_configuration", "type": "topic", "color": "#d8416e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_groundtruth", "name": "vehicle_local_position_groundtruth", "type": "topic", "color": "#d84161", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_manual_control", "name": "gimbal_manager_set_manual_control", "type": "topic", "color": "#ccd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_longitudinal_setpoint", "name": "fixed_wing_longitudinal_setpoint", "type": "topic", "color": "#41d8b4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_autotune_attitude_control_status", "name": "autotune_attitude_control_status", "type": "topic", "color": "#7141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position_setpoint", "name": "vehicle_local_position_setpoint", "type": "topic", "color": "#415fd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_attitude_status", "name": "gimbal_device_attitude_status", "type": "topic", "color": "#77d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_lateral_control_configuration", "name": "lateral_control_configuration", "type": "topic", "color": "#d84196", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_groundtruth", "name": "vehicle_attitude_groundtruth", "type": "topic", "color": "#6ad841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mc_virtual_attitude_setpoint", "name": "mc_virtual_attitude_setpoint", "type": "topic", "color": "#41d886", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fw_virtual_attitude_setpoint", "name": "fw_virtual_attitude_setpoint", "type": "topic", "color": "#41c8d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_register_ext_component_reply", "name": "register_ext_component_reply", "type": "topic", "color": "#d8415b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_lateral_setpoint", "name": "fixed_wing_lateral_setpoint", "type": "topic", "color": "#d85441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_set_attitude", "name": "gimbal_manager_set_attitude", "type": "topic", "color": "#9ed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_controller_status", "name": "position_controller_status", "type": "topic", "color": "#b2d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_controls_status_0", "name": "actuator_controls_status_0", "type": "topic", "color": "#41d880", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorControlsStatus.msg"}, {"id": "t_gimbal_manager_information", "name": "gimbal_manager_information", "type": "topic", "color": "#4159d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_set_attitude", "name": "gimbal_device_set_attitude", "type": "topic", "color": "#d841a3", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_selector_status", "name": "estimator_selector_status", "type": "topic", "color": "#d84141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_fixed_wing_runway_control", "name": "fixed_wing_runway_control", "type": "topic", "color": "#d89641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude_setpoint", "name": "vehicle_attitude_setpoint", "type": "topic", "color": "#d8ca41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_device_information", "name": "gimbal_device_information", "type": "topic", "color": "#91d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_position_setpoint_triplet", "name": "position_setpoint_triplet", "type": "topic", "color": "#5d41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tiltrotor_extra_controls", "name": "tiltrotor_extra_controls", "type": "topic", "color": "#d84e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_control_allocator_status", "name": "control_allocator_status", "type": "topic", "color": "#a5d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_position_setpoint", "name": "rover_position_setpoint", "type": "topic", "color": "#d89c41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_setpoint", "name": "manual_control_setpoint", "type": "topic", "color": "#63d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failure_detector_status", "name": "failure_detector_status", "type": "topic", "color": "#50d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_thrust_setpoint", "name": "vehicle_thrust_setpoint", "type": "topic", "color": "#41d852", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleThrustSetpoint.msg"}, {"id": "t_vehicle_global_position", "name": "vehicle_global_position", "type": "topic", "color": "#41d8ae", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_torque_setpoint", "name": "vehicle_torque_setpoint", "type": "topic", "color": "#4180d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/VehicleTorqueSetpoint.msg"}, {"id": "t_rover_steering_setpoint", "name": "rover_steering_setpoint", "type": "topic", "color": "#5641d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_manual_control_switches", "name": "manual_control_switches", "type": "topic", "color": "#7741d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_visual_odometry", "name": "vehicle_visual_odometry", "type": "topic", "color": "#9141d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_throttle_setpoint", "name": "rover_throttle_setpoint", "type": "topic", "color": "#a541d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_launch_detection_status", "name": "launch_detection_status", "type": "topic", "color": "#b241d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_attitude_setpoint", "name": "rover_attitude_setpoint", "type": "topic", "color": "#bf41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flight_phase_estimation", "name": "flight_phase_estimation", "type": "topic", "color": "#d841d1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_velocity_setpoint", "name": "rover_velocity_setpoint", "type": "topic", "color": "#d8418f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_rates_setpoint", "name": "vehicle_rates_setpoint", "type": "topic", "color": "#d84741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_local_position", "name": "vehicle_local_position", "type": "topic", "color": "#bfd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status_flags", "name": "estimator_status_flags", "type": "topic", "color": "#41b4d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_mocap_odometry", "name": "vehicle_mocap_odometry", "type": "topic", "color": "#d8419c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_differential_pressure", "name": "differential_pressure", "type": "topic", "color": "#d88941", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_manager_status", "name": "gimbal_manager_status", "type": "topic", "color": "#d8b041", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_offboard_control_mode", "name": "offboard_control_mode", "type": "topic", "color": "#84d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_land_detected", "name": "vehicle_land_detected", "type": "topic", "color": "#41a7d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_sensor_bias", "name": "estimator_sensor_bias", "type": "topic", "color": "#6341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_control_mode", "name": "vehicle_control_mode", "type": "topic", "color": "#41d8d5", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs_sim", "name": "actuator_outputs_sim", "type": "topic", "color": "#4166d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_actuator_servos_trim", "name": "actuator_servos_trim", "type": "topic", "color": "#d841ca", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_trajectory_setpoint", "name": "trajectory_setpoint", "type": "topic", "color": "#d86141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vtol_vehicle_status", "name": "vtol_vehicle_status", "type": "topic", "color": "#8bd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_figure_eight_status", "name": "figure_eight_status", "type": "topic", "color": "#41d85f", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_aux_global_position", "name": "aux_global_position", "type": "topic", "color": "#414bd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource2d.msg"}, {"id": "t_vehicle_constraints", "name": "vehicle_constraints", "type": "topic", "color": "#4941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rover_rate_setpoint", "name": "rover_rate_setpoint", "type": "topic", "color": "#6a41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_target_pose", "name": "landing_target_pose", "type": "topic", "color": "#9e41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_optical_flow", "name": "sensor_optical_flow", "type": "topic", "color": "#d841b0", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command_ack", "name": "vehicle_command_ack", "type": "topic", "color": "#d84168", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_power_button_state", "name": "power_button_state", "type": "topic", "color": "#d8a341", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu_status", "name": "vehicle_imu_status", "type": "topic", "color": "#d8bd41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed_validated", "name": "airspeed_validated", "type": "topic", "color": "#41d866", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensors_status_imu", "name": "sensors_status_imu", "type": "topic", "color": "#4152d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear_wheel", "name": "landing_gear_wheel", "type": "topic", "color": "#d341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_transponder_report", "name": "transponder_report", "type": "topic", "color": "#d8417b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mount_orientation", "name": "mount_orientation", "type": "topic", "color": "#71d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_time_estimate", "name": "rtl_time_estimate", "type": "topic", "color": "#41d84b", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_v1_command", "name": "gimbal_v1_command", "type": "topic", "color": "#41d88d", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_spoilers_setpoint", "name": "spoilers_setpoint", "type": "topic", "color": "#41d8ce", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_sensor_correction", "name": "sensor_correction", "type": "topic", "color": "#418dd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_outputs", "name": "actuator_outputs", "type": "topic", "color": "#d87541", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ActuatorOutputs.msg"}, {"id": "t_rc_parameter_map", "name": "rc_parameter_map", "type": "topic", "color": "#d8b641", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_estimator_status", "name": "estimator_status", "type": "topic", "color": "#41d873", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_telemetry_status", "name": "telemetry_status", "type": "topic", "color": "#419ad8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_attitude", "name": "vehicle_attitude", "type": "topic", "color": "#416cd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_navigator_status", "name": "navigator_status", "type": "topic", "color": "#4341d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_odometry", "name": "vehicle_odometry", "type": "topic", "color": "#7e41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_selection", "name": "sensor_selection", "type": "topic", "color": "#d841c4", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_response", "name": "dataman_response", "type": "topic", "color": "#d841b6", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro_fifo", "name": "sensor_gyro_fifo", "type": "topic", "color": "#d84154", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_servos", "name": "actuator_servos", "type": "topic", "color": "#d87b41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream_ack", "name": "ulog_stream_ack", "type": "topic", "color": "#d88241", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_motors", "name": "actuator_motors", "type": "topic", "color": "#d3d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_dataman_request", "name": "dataman_request", "type": "topic", "color": "#b9d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gimbal_controls", "name": "gimbal_controls", "type": "topic", "color": "#7ed841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_key_value", "name": "debug_key_value", "type": "topic", "color": "#5dd841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_distance_sensor", "name": "distance_sensor", "type": "topic", "color": "#41d8c8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_combined", "name": "sensor_combined", "type": "topic", "color": "#41d5d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_command", "name": "vehicle_command", "type": "topic", "color": "#4193d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_result", "name": "geofence_result", "type": "topic", "color": "#4179d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gps_inject_data", "name": "gps_inject_data", "type": "topic", "color": "#c641d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_geofence_status", "name": "geofence_status", "type": "topic", "color": "#d841bd", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_trigger", "name": "camera_trigger", "type": "topic", "color": "#c6d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_takeoff_status", "name": "takeoff_status", "type": "topic", "color": "#49d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_failsafe_flags", "name": "failsafe_flags", "type": "topic", "color": "#43d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission_result", "name": "mission_result", "type": "topic", "color": "#41d859", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_flaps_setpoint", "name": "flaps_setpoint", "type": "topic", "color": "#41d879", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/NormalizedUnsignedSetpoint.msg"}, {"id": "t_actuator_armed", "name": "actuator_armed", "type": "topic", "color": "#41c1d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_capture", "name": "camera_capture", "type": "topic", "color": "#41bbd8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_satellite_info", "name": "satellite_info", "type": "topic", "color": "#4173d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_action_request", "name": "action_request", "type": "topic", "color": "#b941d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_battery_status", "name": "battery_status", "type": "topic", "color": "#cc41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_status", "name": "vehicle_status", "type": "topic", "color": "#d8414e", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_camera_status", "name": "camera_status", "type": "topic", "color": "#d86e41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_irlock_report", "name": "irlock_report", "type": "topic", "color": "#41d8bb", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_health_report", "name": "health_report", "type": "topic", "color": "#8441d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_logger_status", "name": "logger_status", "type": "topic", "color": "#8b41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_home_position", "name": "home_position", "type": "topic", "color": "#d841d7", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_actuator_test", "name": "actuator_test", "type": "topic", "color": "#d84175", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tune_control", "name": "tune_control", "type": "topic", "color": "#d86841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_accel", "name": "sensor_accel", "type": "topic", "color": "#d8d141", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_landing_gear", "name": "landing_gear", "type": "topic", "color": "#56d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_orbit_status", "name": "orbit_status", "type": "topic", "color": "#41d86c", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_system_power", "name": "system_power", "type": "topic", "color": "#41d8a7", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_imu", "name": "vehicle_imu", "type": "topic", "color": "#d85b41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_ulog_stream", "name": "ulog_stream", "type": "topic", "color": "#41d893", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gyro", "name": "sensor_gyro", "type": "topic", "color": "#41ced8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_tecs_status", "name": "tecs_status", "type": "topic", "color": "#41a1d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_baro", "name": "sensor_baro", "type": "topic", "color": "#ab41d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_array", "name": "debug_array", "type": "topic", "color": "#d841a9", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_value", "name": "debug_value", "type": "topic", "color": "#d84189", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_vehicle_roi", "name": "vehicle_roi", "type": "topic", "color": "#d84147", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_esc_status", "name": "esc_status", "type": "topic", "color": "#d88f41", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_sensor_gps", "name": "sensor_gps", "type": "topic", "color": "#41d89a", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/SensorGps.msg"}, {"id": "t_sensor_mag", "name": "sensor_mag", "type": "topic", "color": "#41d8a1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_debug_vect", "name": "debug_vect", "type": "topic", "color": "#4186d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_rtl_status", "name": "rtl_status", "type": "topic", "color": "#5041d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_airspeed", "name": "airspeed", "type": "topic", "color": "#98d841", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/EstimatorAidSource1d.msg"}, {"id": "t_input_rc", "name": "input_rc", "type": "topic", "color": "#41aed8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_gripper", "name": "gripper", "type": "topic", "color": "#d8c441", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_cpuload", "name": "cpuload", "type": "topic", "color": "#41d8c1", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_mission", "name": "mission", "type": "topic", "color": "#4145d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}, {"id": "t_event", "name": "event", "type": "topic", "color": "#d84182", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/ButtonEvent.msg"}, {"id": "t_wind", "name": "wind", "type": "topic", "color": "#d8d741", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/Wind.msg"}, {"id": "t_rpm", "name": "rpm", "type": "topic", "color": "#9841d8", "url": "https://github.com/PX4/PX4-Autopilot/blob/main/msg/no_file.msg"}], "links": [{"source": "m_camera_trigger", "target": "t_camera_trigger", "color": "#c6d841", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command_ack", "color": "#d84168", "style": "dashed"}, {"source": "m_camera_trigger", "target": "t_vehicle_command", "color": "#4193d8", "style": "dashed"}, {"source": "m_gps", "target": "t_satellite_info", "color": "#4173d8", "style": "dashed"}, {"source": "m_gps", "target": "t_sensor_gps", "color": "#41d89a", "style": "dashed"}, {"source": "m_gps", "target": "t_gps_inject_data", "color": "#c641d8", "style": "dashed"}, {"source": "m_tone_alarm", "target": "t_tune_control", "color": "#d86841", "style": "dashed"}, {"source": "m_airship_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#41d852", "style": "dashed"}, {"source": "m_airship_att_control", "target": "t_vehicle_torque_setpoint", "color": "#4180d8", "style": "dashed"}, {"source": "m_airspeed_selector", "target": "t_airspeed_validated", "color": "#41d866", "style": "dashed"}, {"source": "m_attitude_estimator_q", "target": "t_vehicle_attitude", "color": "#416cd8", "style": "dashed"}, {"source": "m_camera_feedback", "target": "t_camera_capture", "color": "#41bbd8", "style": "dashed"}, {"source": "m_commander", "target": "t_home_position", "color": "#d841d7", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_armed", "color": "#41c1d8", "style": "dashed"}, {"source": "m_commander", "target": "t_health_report", "color": "#8441d8", "style": "dashed"}, {"source": "m_commander", "target": "t_failure_detector_status", "color": "#50d841", "style": "dashed"}, {"source": "m_commander", "target": "t_power_button_state", "color": "#d8a341", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_control_mode", "color": "#41d8d5", "style": "dashed"}, {"source": "m_commander", "target": "t_register_ext_component_reply", "color": "#d8415b", "style": "dashed"}, {"source": "m_commander", "target": "t_failsafe_flags", "color": "#43d841", "style": "dashed"}, {"source": "m_commander", "target": "t_event", "color": "#d84182", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command", "color": "#4193d8", "style": "dashed"}, {"source": "m_commander", "target": "t_actuator_test", "color": "#d84175", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_status", "color": "#d8414e", "style": "dashed"}, {"source": "m_commander", "target": "t_tune_control", "color": "#d86841", "style": "dashed"}, {"source": "m_commander", "target": "t_vehicle_command_ack", "color": "#d84168", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos", "color": "#d87b41", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_servos_trim", "color": "#d841ca", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_control_allocator_status", "color": "#a5d841", "style": "dashed"}, {"source": "m_control_allocator", "target": "t_actuator_motors", "color": "#d3d841", "style": "dashed"}, {"source": "m_dataman", "target": "t_dataman_response", "color": "#d841b6", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_selector_status", "color": "#d84141", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_odometry", "color": "#7e41d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_sensor_selection", "color": "#d841c4", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status_flags", "color": "#41b4d8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_attitude", "color": "#416cd8", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_command_ack", "color": "#d84168", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_status", "color": "#41d873", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_global_position", "color": "#41d8ae", "style": "dashed"}, {"source": "m_ekf2", "target": "t_wind", "color": "#d8d741", "style": "dashed"}, {"source": "m_ekf2", "target": "t_vehicle_local_position", "color": "#bfd841", "style": "dashed"}, {"source": "m_ekf2", "target": "t_estimator_sensor_bias", "color": "#6341d8", "style": "dashed"}, {"source": "m_send_event", "target": "t_tune_control", "color": "#d86841", "style": "dashed"}, {"source": "m_send_event", "target": "t_vehicle_command_ack", "color": "#d84168", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_landing_gear", "color": "#56d841", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_trajectory_setpoint", "color": "#d86141", "style": "dashed"}, {"source": "m_flight_mode_manager", "target": "t_vehicle_constraints", "color": "#4941d8", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_vehicle_rates_setpoint", "color": "#d84741", "style": "dashed"}, {"source": "m_fw_att_control", "target": "t_landing_gear_wheel", "color": "#d341d8", "style": "dashed"}, {"source": "m_fw_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#7141d8", "style": "dashed"}, {"source": "m_fw_lat_lon_control", "target": "t_flight_phase_estimation", "color": "#d841d1", "style": "dashed"}, {"source": "m_fw_lat_lon_control", "target": "t_tecs_status", "color": "#41a1d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_flaps_setpoint", "color": "#41d879", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_spoilers_setpoint", "color": "#41d8ce", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_figure_eight_status", "color": "#41d85f", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_landing_gear", "color": "#56d841", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_runway_control", "color": "#d89641", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_longitudinal_setpoint", "color": "#41d8b4", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_orbit_status", "color": "#41d86c", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_launch_detection_status", "color": "#b241d8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_position_controller_landing_status", "color": "#41d845", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_vehicle_local_position_setpoint", "color": "#415fd8", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_longitudinal_control_configuration", "color": "#d8416e", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_lateral_control_configuration", "color": "#d84196", "style": "dashed"}, {"source": "m_fw_mode_manager", "target": "t_fixed_wing_lateral_setpoint", "color": "#d85441", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_flaps_setpoint", "color": "#41d879", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_spoilers_setpoint", "color": "#41d8ce", "style": "dashed"}, {"source": "m_fw_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#d84741", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_v1_command", "color": "#41d88d", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_controls", "color": "#7ed841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_attitude_status", "color": "#77d841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_mount_orientation", "color": "#71d841", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_status", "color": "#d8b041", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command", "color": "#4193d8", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_device_set_attitude", "color": "#d841a3", "style": "dashed"}, {"source": "m_gimbal", "target": "t_vehicle_command_ack", "color": "#d84168", "style": "dashed"}, {"source": "m_gimbal", "target": "t_gimbal_manager_information", "color": "#4159d8", "style": "dashed"}, {"source": "m_land_detector", "target": "t_vehicle_land_detected", "color": "#41a7d8", "style": "dashed"}, {"source": "m_landing_target_estimator", "target": "t_landing_target_pose", "color": "#9e41d8", "style": "dashed"}, {"source": "m_load_mon", "target": "t_cpuload", "color": "#41d8c1", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_odometry", "color": "#7e41d8", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_global_position", "color": "#41d8ae", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_vehicle_local_position", "color": "#bfd841", "style": "dashed"}, {"source": "m_local_position_estimator", "target": "t_estimator_status", "color": "#41d873", "style": "dashed"}, {"source": "m_logger", "target": "t_logger_status", "color": "#8b41d8", "style": "dashed"}, {"source": "m_logger", "target": "t_vehicle_command_ack", "color": "#d84168", "style": "dashed"}, {"source": "m_logger", "target": "t_ulog_stream", "color": "#41d893", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_switches", "color": "#7741d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_landing_gear", "color": "#56d841", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_command", "color": "#4193d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_action_request", "color": "#b941d8", "style": "dashed"}, {"source": "m_manual_control", "target": "t_vehicle_status", "color": "#d8414e", "style": "dashed"}, {"source": "m_manual_control", "target": "t_manual_control_setpoint", "color": "#63d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_airspeed", "color": "#98d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_information", "color": "#91d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_rates_setpoint", "color": "#d84741", "style": "dashed"}, {"source": "m_mavlink", "target": "t_distance_sensor", "color": "#41d8c8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_offboard_control_mode", "color": "#84d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_visual_odometry", "color": "#9141d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_landing_target_pose", "color": "#9e41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_device_attitude_status", "color": "#77d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_baro", "color": "#ab41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gyro", "color": "#41ced8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gps_inject_data", "color": "#c641d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_fw_virtual_attitude_setpoint", "color": "#41c8d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_battery_status", "color": "#cc41d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_key_value", "color": "#5dd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_input_rc", "color": "#41aed8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_trajectory_setpoint", "color": "#d86141", "style": "dashed"}, {"source": "m_mavlink", "target": "t_telemetry_status", "color": "#419ad8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_optical_flow", "color": "#d841b0", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command", "color": "#4193d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_array", "color": "#d841a9", "style": "dashed"}, {"source": "m_mavlink", "target": "t_tune_control", "color": "#d86841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_camera_status", "color": "#d86e41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_vect", "color": "#4186d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_mocap_odometry", "color": "#d8419c", "style": "dashed"}, {"source": "m_mavlink", "target": "t_ulog_stream_ack", "color": "#d88241", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude", "color": "#416cd8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_differential_pressure", "color": "#d88941", "style": "dashed"}, {"source": "m_mavlink", "target": "t_debug_value", "color": "#d84189", "style": "dashed"}, {"source": "m_mavlink", "target": "t_transponder_report", "color": "#d8417b", "style": "dashed"}, {"source": "m_mavlink", "target": "t_rc_parameter_map", "color": "#d8b641", "style": "dashed"}, {"source": "m_mavlink", "target": "t_event", "color": "#d84182", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_attitude_setpoint", "color": "#d8ca41", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_command_ack", "color": "#d84168", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mc_virtual_attitude_setpoint", "color": "#41d886", "style": "dashed"}, {"source": "m_mavlink", "target": "t_mission", "color": "#4145d8", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gps", "color": "#41d89a", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_mag", "color": "#41d8a1", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_global_position", "color": "#41d8ae", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_accel", "color": "#d8d141", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_manual_control", "color": "#ccd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_irlock_report", "color": "#41d8bb", "style": "dashed"}, {"source": "m_mavlink", "target": "t_sensor_gyro_fifo", "color": "#d84154", "style": "dashed"}, {"source": "m_mavlink", "target": "t_vehicle_local_position", "color": "#bfd841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_dataman_request", "color": "#b9d841", "style": "dashed"}, {"source": "m_mavlink", "target": "t_gimbal_manager_set_attitude", "color": "#9ed841", "style": "dashed"}, {"source": "m_mc_att_control", "target": "t_vehicle_rates_setpoint", "color": "#d84741", "style": "dashed"}, {"source": "m_mc_autotune_attitude_control", "target": "t_autotune_attitude_control_status", "color": "#7141d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_trajectory_setpoint", "color": "#d86141", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_constraints", "color": "#4941d8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_takeoff_status", "color": "#49d841", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_local_position_setpoint", "color": "#415fd8", "style": "dashed"}, {"source": "m_mc_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#d8ca41", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_actuator_controls_status_0", "color": "#41d880", "style": "dashed"}, {"source": "m_mc_rate_control", "target": "t_vehicle_rates_setpoint", "color": "#d84741", "style": "dashed"}, {"source": "m_navigator", "target": "t_home_position", "color": "#d841d7", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_status", "color": "#d841bd", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_land_detected", "color": "#41a7d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command", "color": "#4193d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_time_estimate", "color": "#41d84b", "style": "dashed"}, {"source": "m_navigator", "target": "t_geofence_result", "color": "#4179d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission_result", "color": "#41d859", "style": "dashed"}, {"source": "m_navigator", "target": "t_transponder_report", "color": "#d8417b", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_command_ack", "color": "#d84168", "style": "dashed"}, {"source": "m_navigator", "target": "t_mission", "color": "#4145d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_navigator_status", "color": "#4341d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_global_position", "color": "#41d8ae", "style": "dashed"}, {"source": "m_navigator", "target": "t_rtl_status", "color": "#5041d8", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_roi", "color": "#d84147", "style": "dashed"}, {"source": "m_navigator", "target": "t_vehicle_status", "color": "#d8414e", "style": "dashed"}, {"source": "m_navigator", "target": "t_dataman_request", "color": "#b9d841", "style": "dashed"}, {"source": "m_navigator", "target": "t_position_setpoint_triplet", "color": "#5d41d8", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_gripper", "color": "#d8c441", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_vehicle_command_ack", "color": "#d84168", "style": "dashed"}, {"source": "m_payload_deliverer", "target": "t_vehicle_command", "color": "#4193d8", "style": "dashed"}, {"source": "m_rc_update", "target": "t_manual_control_switches", "color": "#7741d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_actuator_servos", "color": "#d87b41", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_position_controller_status", "color": "#b2d841", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_velocity_setpoint", "color": "#d8418f", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_rate_setpoint", "color": "#6a41d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_attitude_setpoint", "color": "#bf41d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_position_setpoint", "color": "#d89c41", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_throttle_setpoint", "color": "#a541d8", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_actuator_motors", "color": "#d3d841", "style": "dashed"}, {"source": "m_rover_ackermann", "target": "t_rover_steering_setpoint", "color": "#5641d8", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_velocity_setpoint", "color": "#d8418f", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_attitude_setpoint", "color": "#bf41d8", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_position_setpoint", "color": "#d89c41", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_throttle_setpoint", "color": "#a541d8", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_actuator_motors", "color": "#d3d841", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_steering_setpoint", "color": "#5641d8", "style": "dashed"}, {"source": "m_rover_differential", "target": "t_rover_rate_setpoint", "color": "#6a41d8", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_velocity_setpoint", "color": "#d8418f", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_position_setpoint", "color": "#d89c41", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_throttle_setpoint", "color": "#a541d8", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_actuator_motors", "color": "#d3d841", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_steering_setpoint", "color": "#5641d8", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_attitude_setpoint", "color": "#bf41d8", "style": "dashed"}, {"source": "m_rover_mecanum", "target": "t_rover_rate_setpoint", "color": "#6a41d8", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_position_controller_status", "color": "#b2d841", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#d8ca41", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_thrust_setpoint", "color": "#41d852", "style": "dashed"}, {"source": "m_rover_pos_control", "target": "t_vehicle_torque_setpoint", "color": "#4180d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensors_status_imu", "color": "#4152d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_airspeed", "color": "#98d841", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_selection", "color": "#d841c4", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu", "color": "#d85b41", "style": "dashed"}, {"source": "m_sensors", "target": "t_differential_pressure", "color": "#d88941", "style": "dashed"}, {"source": "m_sensors", "target": "t_sensor_combined", "color": "#41d5d8", "style": "dashed"}, {"source": "m_sensors", "target": "t_vehicle_imu_status", "color": "#d8bd41", "style": "dashed"}, {"source": "m_battery_simulator", "target": "t_vehicle_command_ack", "color": "#d84168", "style": "dashed"}, {"source": "m_battery_simulator", "target": "t_battery_status", "color": "#cc41d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_gimbal_device_information", "color": "#91d841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_distance_sensor", "color": "#41d8c8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_visual_odometry", "color": "#9141d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_gimbal_device_attitude_status", "color": "#77d841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_baro", "color": "#ab41d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_gyro", "color": "#41ced8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_attitude_groundtruth", "color": "#6ad841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_armed", "color": "#41c1d8", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_optical_flow", "color": "#d841b0", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_outputs", "color": "#d87541", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_servos", "color": "#d87b41", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_differential_pressure", "color": "#d88941", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_esc_status", "color": "#d88f41", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_angular_velocity_groundtruth", "color": "#d8a941", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_test", "color": "#d84175", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_command_ack", "color": "#d84168", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_gps", "color": "#41d89a", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_mag", "color": "#41d8a1", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_sensor_accel", "color": "#d8d141", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_local_position_groundtruth", "color": "#d84161", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_actuator_motors", "color": "#d3d841", "style": "dashed"}, {"source": "m_gz_bridge", "target": "t_vehicle_global_position_groundtruth", "color": "#abd841", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_servos", "color": "#d87b41", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_armed", "color": "#41c1d8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs_sim", "color": "#4166d8", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_motors", "color": "#d3d841", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_test", "color": "#d84175", "style": "dashed"}, {"source": "m_pwm_out_sim", "target": "t_actuator_outputs", "color": "#d87541", "style": "dashed"}, {"source": "m_sensor_agp_sim", "target": "t_aux_global_position", "color": "#414bd8", "style": "dashed"}, {"source": "m_sensor_airspeed_sim", "target": "t_differential_pressure", "color": "#d88941", "style": "dashed"}, {"source": "m_sensor_baro_sim", "target": "t_sensor_baro", "color": "#ab41d8", "style": "dashed"}, {"source": "m_sensor_gps_sim", "target": "t_sensor_gps", "color": "#41d89a", "style": "dashed"}, {"source": "m_sensor_mag_sim", "target": "t_sensor_mag", "color": "#41d8a1", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_visual_odometry", "color": "#9141d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_rpm", "color": "#9841d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_baro", "color": "#ab41d8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_gyro", "color": "#41ced8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_attitude_groundtruth", "color": "#6ad841", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_input_rc", "color": "#41aed8", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_optical_flow", "color": "#d841b0", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_mocap_odometry", "color": "#d8419c", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_differential_pressure", "color": "#d88941", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_esc_status", "color": "#d88f41", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_angular_velocity_groundtruth", "color": "#d8a941", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_command_ack", "color": "#d84168", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_mag", "color": "#41d8a1", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_accel", "color": "#d8d141", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_local_position_groundtruth", "color": "#d84161", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_irlock_report", "color": "#41d8bb", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_sensor_gyro_fifo", "color": "#d84154", "style": "dashed"}, {"source": "m_simulator_mavlink", "target": "t_vehicle_global_position_groundtruth", "color": "#abd841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_airspeed", "color": "#98d841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_distance_sensor", "color": "#41d8c8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_accel", "color": "#d8d141", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_local_position_groundtruth", "color": "#d84161", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_angular_velocity_groundtruth", "color": "#d8a941", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_gyro_fifo", "color": "#d84154", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_sensor_gyro", "color": "#41ced8", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_attitude_groundtruth", "color": "#6ad841", "style": "dashed"}, {"source": "m_simulator_sih", "target": "t_vehicle_global_position_groundtruth", "color": "#abd841", "style": "dashed"}, {"source": "m_system_power_simulator", "target": "t_system_power", "color": "#41d8a7", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_sensor_correction", "color": "#418dd8", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command_ack", "color": "#d84168", "style": "dashed"}, {"source": "m_temperature_compensation", "target": "t_vehicle_command", "color": "#4193d8", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#41d852", "style": "dashed"}, {"source": "m_uuv_att_control", "target": "t_vehicle_torque_setpoint", "color": "#4180d8", "style": "dashed"}, {"source": "m_uuv_pos_control", "target": "t_vehicle_attitude_setpoint", "color": "#d8ca41", "style": "dashed"}, {"source": "m_uxrce_dds_client", "target": "t_vehicle_command", "color": "#4193d8", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_flaps_setpoint", "color": "#41d879", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_thrust_setpoint", "color": "#41d852", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_spoilers_setpoint", "color": "#41d8ce", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_tiltrotor_extra_controls", "color": "#d84e41", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vtol_vehicle_status", "color": "#8bd841", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_attitude_setpoint", "color": "#d8ca41", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_command_ack", "color": "#d84168", "style": "dashed"}, {"source": "m_vtol_att_control", "target": "t_vehicle_torque_setpoint", "color": "#4180d8", "style": "dashed"}, {"source": "m_actuator_test", "target": "t_actuator_test", "color": "#d84175", "style": "dashed"}, {"source": "m_failure", "target": "t_vehicle_command", "color": "#4193d8", "style": "dashed"}, {"source": "m_tests", "target": "t_dataman_request", "color": "#b9d841", "style": "dashed"}, {"source": "m_tune_control", "target": "t_tune_control", "color": "#d86841", "style": "dashed"}, {"source": "m_fake_gps", "target": "t_sensor_gps", "color": "#41d89a", "style": "dashed"}, {"source": "m_fake_imu", "target": "t_esc_status", "color": "#d88f41", "style": "dashed"}, {"source": "m_fake_imu", "target": "t_sensor_accel", "color": "#d8d141", "style": "dashed"}, {"source": "m_fake_imu", "target": "t_sensor_gyro_fifo", "color": "#d84154", "style": "dashed"}, {"source": "m_fake_imu", "target": "t_sensor_gyro", "color": "#41ced8", "style": "dashed"}, {"source": "m_fake_magnetometer", "target": "t_sensor_mag", "color": "#41d8a1", "style": "dashed"}, {"source": "m_px4_mavlink_debug", "target": "t_debug_key_value", "color": "#5dd841", "style": "dashed"}, {"source": "m_px4_mavlink_debug", "target": "t_debug_vect", "color": "#4186d8", "style": "dashed"}, {"source": "m_px4_mavlink_debug", "target": "t_debug_value", "color": "#d84189", "style": "dashed"}, {"source": "m_px4_mavlink_debug", "target": "t_debug_array", "color": "#d841a9", "style": "dashed"}, {"source": "m_px4_simple_app", "target": "t_vehicle_attitude", "color": "#416cd8", "style": "dashed"}, {"source": "t_vehicle_local_position", "target": "m_camera_trigger", "color": "#bfd841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_camera_trigger", "color": "#4193d8", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_gps", "color": "#c641d8", "style": "normal"}, {"source": "t_home_position", "target": "m_msp_osd", "color": "#d841d7", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_msp_osd", "color": "#416cd8", "style": "normal"}, {"source": "t_input_rc", "target": "m_msp_osd", "color": "#41aed8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_msp_osd", "color": "#41d8ae", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_msp_osd", "color": "#41d866", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_msp_osd", "color": "#bfd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_msp_osd", "color": "#d8414e", "style": "normal"}, {"source": "t_battery_status", "target": "m_msp_osd", "color": "#cc41d8", "style": "normal"}, {"source": "t_tune_control", "target": "m_tone_alarm", "color": "#d86841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_airship_att_control", "color": "#63d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airship_att_control", "color": "#d8414e", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_airspeed_selector", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_airspeed_selector", "color": "#41d852", "style": "normal"}, {"source": "t_airspeed", "target": "m_airspeed_selector", "color": "#98d841", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_airspeed_selector", "color": "#d841d1", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_airspeed_selector", "color": "#416cd8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_airspeed_selector", "color": "#41a7d8", "style": "normal"}, {"source": "t_tecs_status", "target": "m_airspeed_selector", "color": "#41a1d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_airspeed_selector", "color": "#bfd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_airspeed_selector", "color": "#d8414e", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_airspeed_selector", "color": "#b241d8", "style": "normal"}, {"source": "t_estimator_status", "target": "m_airspeed_selector", "color": "#41d873", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_attitude_estimator_q", "color": "#416cd8", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_attitude_estimator_q", "color": "#9141d8", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_attitude_estimator_q", "color": "#41d5d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_attitude_estimator_q", "color": "#bfd841", "style": "normal"}, {"source": "t_vehicle_mocap_odometry", "target": "m_attitude_estimator_q", "color": "#d8419c", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_camera_feedback", "color": "#77d841", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_camera_feedback", "color": "#c6d841", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_camera_feedback", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_camera_feedback", "color": "#416cd8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_commander", "color": "#7741d8", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_commander", "color": "#d84141", "style": "normal"}, {"source": "t_vtol_vehicle_status", "target": "m_commander", "color": "#8bd841", "style": "normal"}, {"source": "t_logger_status", "target": "m_commander", "color": "#8b41d8", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_commander", "color": "#84d841", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_commander", "color": "#41d8c8", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_commander", "color": "#ab41d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_commander", "color": "#41ced8", "style": "normal"}, {"source": "t_action_request", "target": "m_commander", "color": "#b941d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_commander", "color": "#63d841", "style": "normal"}, {"source": "t_battery_status", "target": "m_commander", "color": "#cc41d8", "style": "normal"}, {"source": "t_home_position", "target": "m_commander", "color": "#d841d7", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_commander", "color": "#41c1d8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_commander", "color": "#d841c4", "style": "normal"}, {"source": "t_estimator_status_flags", "target": "m_commander", "color": "#41b4d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_commander", "color": "#41a7d8", "style": "normal"}, {"source": "t_telemetry_status", "target": "m_commander", "color": "#419ad8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_commander", "color": "#4193d8", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_commander", "color": "#41d84b", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_commander", "color": "#418dd8", "style": "normal"}, {"source": "t_geofence_result", "target": "m_commander", "color": "#4179d8", "style": "normal"}, {"source": "t_mission_result", "target": "m_commander", "color": "#41d859", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_commander", "color": "#416cd8", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_commander", "color": "#d88941", "style": "normal"}, {"source": "t_esc_status", "target": "m_commander", "color": "#d88f41", "style": "normal"}, {"source": "t_event", "target": "m_commander", "color": "#d84182", "style": "normal"}, {"source": "t_power_button_state", "target": "m_commander", "color": "#d8a341", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_commander", "color": "#41d866", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_commander", "color": "#d8bd41", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_commander", "color": "#d84168", "style": "normal"}, {"source": "t_estimator_status", "target": "m_commander", "color": "#41d873", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_commander", "color": "#4152d8", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_commander", "color": "#41d89a", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_commander", "color": "#41d8a1", "style": "normal"}, {"source": "t_system_power", "target": "m_commander", "color": "#41d8a7", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_commander", "color": "#41d8ae", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_commander", "color": "#d8d141", "style": "normal"}, {"source": "t_navigator_status", "target": "m_commander", "color": "#4341d8", "style": "normal"}, {"source": "t_wind", "target": "m_commander", "color": "#d8d741", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_commander", "color": "#d3d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_commander", "color": "#d8414e", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_commander", "color": "#bfd841", "style": "normal"}, {"source": "t_cpuload", "target": "m_commander", "color": "#41d8c1", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_commander", "color": "#6341d8", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_control_allocator", "color": "#41d879", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_control_allocator", "color": "#7741d8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_control_allocator", "color": "#41d852", "style": "normal"}, {"source": "t_spoilers_setpoint", "target": "m_control_allocator", "color": "#41d8ce", "style": "normal"}, {"source": "t_tiltrotor_extra_controls", "target": "m_control_allocator", "color": "#d84e41", "style": "normal"}, {"source": "t_rpm", "target": "m_control_allocator", "color": "#9841d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_control_allocator", "color": "#41d8d5", "style": "normal"}, {"source": "t_failure_detector_status", "target": "m_control_allocator", "color": "#50d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_control_allocator", "color": "#d8414e", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_control_allocator", "color": "#4180d8", "style": "normal"}, {"source": "t_dataman_request", "target": "m_dataman", "color": "#b9d841", "style": "normal"}, {"source": "t_aux_global_position", "target": "m_ekf2", "color": "#414bd8", "style": "normal"}, {"source": "t_sensors_status_imu", "target": "m_ekf2", "color": "#4152d8", "style": "normal"}, {"source": "t_airspeed", "target": "m_ekf2", "color": "#98d841", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_ekf2", "color": "#d85b41", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_ekf2", "color": "#d841c4", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_ekf2", "color": "#41d8c8", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_ekf2", "color": "#9141d8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_ekf2", "color": "#9e41d8", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_ekf2", "color": "#41d5d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_ekf2", "color": "#41d866", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_ekf2", "color": "#41a7d8", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_ekf2", "color": "#b241d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_ekf2", "color": "#d8414e", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_ekf2", "color": "#4193d8", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_send_event", "color": "#43d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_send_event", "color": "#d8414e", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_send_event", "color": "#4193d8", "style": "normal"}, {"source": "t_cpuload", "target": "m_send_event", "color": "#41d8c1", "style": "normal"}, {"source": "t_battery_status", "target": "m_send_event", "color": "#cc41d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_flight_mode_manager", "color": "#41d8d5", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_flight_mode_manager", "color": "#49d841", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_flight_mode_manager", "color": "#41a7d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_flight_mode_manager", "color": "#4193d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_flight_mode_manager", "color": "#bfd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_flight_mode_manager", "color": "#d8414e", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_flight_mode_manager", "color": "#d8ca41", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_att_control", "color": "#416cd8", "style": "normal"}, {"source": "t_fixed_wing_runway_control", "target": "m_fw_att_control", "color": "#d89641", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_att_control", "color": "#41d8d5", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_att_control", "color": "#41a7d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_att_control", "color": "#41d866", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_att_control", "color": "#bfd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_att_control", "color": "#d8414e", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_fw_att_control", "color": "#d8ca41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_att_control", "color": "#63d841", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_fw_att_control", "color": "#7141d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_autotune_attitude_control", "color": "#63d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_autotune_attitude_control", "color": "#d8414e", "style": "normal"}, {"source": "t_flaps_setpoint", "target": "m_fw_lat_lon_control", "color": "#41d879", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_lat_lon_control", "color": "#416cd8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_lat_lon_control", "color": "#41d8d5", "style": "normal"}, {"source": "t_wind", "target": "m_fw_lat_lon_control", "color": "#d8d741", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_lat_lon_control", "color": "#41d866", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_lat_lon_control", "color": "#41a7d8", "style": "normal"}, {"source": "t_fixed_wing_longitudinal_setpoint", "target": "m_fw_lat_lon_control", "color": "#41d8b4", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_lat_lon_control", "color": "#bfd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_lat_lon_control", "color": "#d8414e", "style": "normal"}, {"source": "t_longitudinal_control_configuration", "target": "m_fw_lat_lon_control", "color": "#d8416e", "style": "normal"}, {"source": "t_lateral_control_configuration", "target": "m_fw_lat_lon_control", "color": "#d84196", "style": "normal"}, {"source": "t_fixed_wing_lateral_setpoint", "target": "m_fw_lat_lon_control", "color": "#d85441", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fw_mode_manager", "color": "#416cd8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_fw_mode_manager", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_mode_manager", "color": "#41d8d5", "style": "normal"}, {"source": "t_wind", "target": "m_fw_mode_manager", "color": "#d8d741", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_mode_manager", "color": "#41d866", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_fw_mode_manager", "color": "#d86141", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_mode_manager", "color": "#41a7d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_fw_mode_manager", "color": "#bfd841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_fw_mode_manager", "color": "#4193d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_fw_mode_manager", "color": "#5d41d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_mode_manager", "color": "#d8414e", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_mode_manager", "color": "#63d841", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_fw_rate_control", "color": "#d84741", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_fw_rate_control", "color": "#41d8d5", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_fw_rate_control", "color": "#41a7d8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_fw_rate_control", "color": "#41d866", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_fw_rate_control", "color": "#d8414e", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_fw_rate_control", "color": "#63d841", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_fw_rate_control", "color": "#a5d841", "style": "normal"}, {"source": "t_battery_status", "target": "m_fw_rate_control", "color": "#cc41d8", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_gimbal", "color": "#91d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_gimbal", "color": "#416cd8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_gimbal", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_gimbal", "color": "#41a7d8", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_gimbal", "color": "#77d841", "style": "normal"}, {"source": "t_gimbal_manager_set_manual_control", "target": "m_gimbal", "color": "#ccd841", "style": "normal"}, {"source": "t_vehicle_roi", "target": "m_gimbal", "color": "#d84147", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gimbal", "color": "#4193d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_gimbal", "color": "#5d41d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gimbal", "color": "#63d841", "style": "normal"}, {"source": "t_gimbal_manager_set_attitude", "target": "m_gimbal", "color": "#9ed841", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_gyro_calibration", "color": "#418dd8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_gyro_calibration", "color": "#d8d141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_gyro_calibration", "color": "#d8414e", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_calibration", "color": "#41ced8", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_gyro_fft", "color": "#d8bd41", "style": "normal"}, {"source": "t_sensor_gyro_fifo", "target": "m_gyro_fft", "color": "#d84154", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_gyro_fft", "color": "#41ced8", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_gyro_fft", "color": "#d841c4", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_land_detector", "color": "#41c1d8", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_land_detector", "color": "#41d852", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_land_detector", "color": "#d841c4", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_land_detector", "color": "#d86141", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_land_detector", "color": "#41d8d5", "style": "normal"}, {"source": "t_takeoff_status", "target": "m_land_detector", "color": "#49d841", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_land_detector", "color": "#41d866", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_land_detector", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_land_detector", "color": "#d8bd41", "style": "normal"}, {"source": "t_launch_detection_status", "target": "m_land_detector", "color": "#b241d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_land_detector", "color": "#d8414e", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_land_detector", "color": "#bfd841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_land_detector", "color": "#5d41d8", "style": "normal"}, {"source": "t_irlock_report", "target": "m_landing_target_estimator", "color": "#41d8bb", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_landing_target_estimator", "color": "#bfd841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_landing_target_estimator", "color": "#416cd8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_local_position_estimator", "color": "#41c1d8", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_local_position_estimator", "color": "#41d8c8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_local_position_estimator", "color": "#416cd8", "style": "normal"}, {"source": "t_vehicle_visual_odometry", "target": "m_local_position_estimator", "color": "#9141d8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_local_position_estimator", "color": "#9e41d8", "style": "normal"}, {"source": "t_sensor_combined", "target": "m_local_position_estimator", "color": "#41d5d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_local_position_estimator", "color": "#41a7d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_local_position_estimator", "color": "#4193d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_local_position_estimator", "color": "#bfd841", "style": "normal"}, {"source": "t_vehicle_mocap_odometry", "target": "m_local_position_estimator", "color": "#d8419c", "style": "normal"}, {"source": "t_ulog_stream_ack", "target": "m_logger", "color": "#d88241", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_logger", "color": "#4193d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_logger", "color": "#d8414e", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_logger", "color": "#63d841", "style": "normal"}, {"source": "t_battery_status", "target": "m_logger", "color": "#cc41d8", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mag_bias_estimator", "color": "#41d8a1", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mag_bias_estimator", "color": "#d8414e", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_manual_control", "color": "#7741d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_manual_control", "color": "#63d841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_manual_control", "color": "#d8414e", "style": "normal"}, {"source": "t_action_request", "target": "m_manual_control", "color": "#b941d8", "style": "normal"}, {"source": "t_estimator_selector_status", "target": "m_mavlink", "color": "#d84141", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mavlink", "color": "#d84741", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_mavlink", "color": "#d85b41", "style": "normal"}, {"source": "t_camera_status", "target": "m_mavlink", "color": "#d86e41", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_mavlink", "color": "#d87541", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_mavlink", "color": "#d88941", "style": "normal"}, {"source": "t_esc_status", "target": "m_mavlink", "color": "#d88f41", "style": "normal"}, {"source": "t_vehicle_angular_velocity_groundtruth", "target": "m_mavlink", "color": "#d8a941", "style": "normal"}, {"source": "t_gimbal_manager_status", "target": "m_mavlink", "color": "#d8b041", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_mavlink", "color": "#d8bd41", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mavlink", "color": "#d8ca41", "style": "normal"}, {"source": "t_wind", "target": "m_mavlink", "color": "#d8d741", "style": "normal"}, {"source": "t_camera_trigger", "target": "m_mavlink", "color": "#c6d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mavlink", "color": "#bfd841", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_mavlink", "color": "#b2d841", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_mavlink", "color": "#abd841", "style": "normal"}, {"source": "t_airspeed", "target": "m_mavlink", "color": "#98d841", "style": "normal"}, {"source": "t_gimbal_device_information", "target": "m_mavlink", "color": "#91d841", "style": "normal"}, {"source": "t_mount_orientation", "target": "m_mavlink", "color": "#71d841", "style": "normal"}, {"source": "t_gimbal_device_attitude_status", "target": "m_mavlink", "color": "#77d841", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_mavlink", "color": "#6ad841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mavlink", "color": "#63d841", "style": "normal"}, {"source": "t_debug_key_value", "target": "m_mavlink", "color": "#5dd841", "style": "normal"}, {"source": "t_failsafe_flags", "target": "m_mavlink", "color": "#43d841", "style": "normal"}, {"source": "t_rtl_time_estimate", "target": "m_mavlink", "color": "#41d84b", "style": "normal"}, {"source": "t_vehicle_thrust_setpoint", "target": "m_mavlink", "color": "#41d852", "style": "normal"}, {"source": "t_mission_result", "target": "m_mavlink", "color": "#41d859", "style": "normal"}, {"source": "t_figure_eight_status", "target": "m_mavlink", "color": "#41d85f", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_mavlink", "color": "#41d866", "style": "normal"}, {"source": "t_orbit_status", "target": "m_mavlink", "color": "#41d86c", "style": "normal"}, {"source": "t_estimator_status", "target": "m_mavlink", "color": "#41d873", "style": "normal"}, {"source": "t_gimbal_v1_command", "target": "m_mavlink", "color": "#41d88d", "style": "normal"}, {"source": "t_ulog_stream", "target": "m_mavlink", "color": "#41d893", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_mavlink", "color": "#41d8a1", "style": "normal"}, {"source": "t_sensor_gps", "target": "m_mavlink", "color": "#41d89a", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_mavlink", "color": "#41d8ae", "style": "normal"}, {"source": "t_cpuload", "target": "m_mavlink", "color": "#41d8c1", "style": "normal"}, {"source": "t_distance_sensor", "target": "m_mavlink", "color": "#41d8c8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mavlink", "color": "#41d8d5", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_mavlink", "color": "#41c1d8", "style": "normal"}, {"source": "t_camera_capture", "target": "m_mavlink", "color": "#41bbd8", "style": "normal"}, {"source": "t_input_rc", "target": "m_mavlink", "color": "#41aed8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mavlink", "color": "#41a7d8", "style": "normal"}, {"source": "t_tecs_status", "target": "m_mavlink", "color": "#41a1d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_mavlink", "color": "#4193d8", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_mavlink", "color": "#418dd8", "style": "normal"}, {"source": "t_debug_vect", "target": "m_mavlink", "color": "#4186d8", "style": "normal"}, {"source": "t_geofence_result", "target": "m_mavlink", "color": "#4179d8", "style": "normal"}, {"source": "t_satellite_info", "target": "m_mavlink", "color": "#4173d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mavlink", "color": "#416cd8", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_mavlink", "color": "#4166d8", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_mavlink", "color": "#415fd8", "style": "normal"}, {"source": "t_gimbal_manager_information", "target": "m_mavlink", "color": "#4159d8", "style": "normal"}, {"source": "t_mission", "target": "m_mavlink", "color": "#4145d8", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_mavlink", "color": "#5d41d8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_mavlink", "color": "#6341d8", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mavlink", "color": "#7141d8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_mavlink", "color": "#7741d8", "style": "normal"}, {"source": "t_vehicle_odometry", "target": "m_mavlink", "color": "#7e41d8", "style": "normal"}, {"source": "t_health_report", "target": "m_mavlink", "color": "#8441d8", "style": "normal"}, {"source": "t_rpm", "target": "m_mavlink", "color": "#9841d8", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_mavlink", "color": "#9e41d8", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_mavlink", "color": "#ab41d8", "style": "normal"}, {"source": "t_gps_inject_data", "target": "m_mavlink", "color": "#c641d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_mavlink", "color": "#cc41d8", "style": "normal"}, {"source": "t_home_position", "target": "m_mavlink", "color": "#d841d7", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_mavlink", "color": "#d841c4", "style": "normal"}, {"source": "t_dataman_response", "target": "m_mavlink", "color": "#d841b6", "style": "normal"}, {"source": "t_debug_array", "target": "m_mavlink", "color": "#d841a9", "style": "normal"}, {"source": "t_gimbal_device_set_attitude", "target": "m_mavlink", "color": "#d841a3", "style": "normal"}, {"source": "t_debug_value", "target": "m_mavlink", "color": "#d84189", "style": "normal"}, {"source": "t_event", "target": "m_mavlink", "color": "#d84182", "style": "normal"}, {"source": "t_transponder_report", "target": "m_mavlink", "color": "#d8417b", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_mavlink", "color": "#d84168", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_mavlink", "color": "#d84161", "style": "normal"}, {"source": "t_register_ext_component_reply", "target": "m_mavlink", "color": "#d8415b", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mavlink", "color": "#d8414e", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_mc_att_control", "color": "#416cd8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_att_control", "color": "#41d8d5", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_att_control", "color": "#41a7d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_att_control", "color": "#bfd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_att_control", "color": "#d8414e", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_mc_att_control", "color": "#d8ca41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_att_control", "color": "#63d841", "style": "normal"}, {"source": "t_autotune_attitude_control_status", "target": "m_mc_att_control", "color": "#7141d8", "style": "normal"}, {"source": "t_actuator_controls_status_0", "target": "m_mc_autotune_attitude_control", "color": "#41d880", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_autotune_attitude_control", "color": "#d8414e", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#63d841", "style": "normal"}, {"source": "t_vehicle_torque_setpoint", "target": "m_mc_autotune_attitude_control", "color": "#4180d8", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_mc_pos_control", "color": "#d86141", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_pos_control", "color": "#41d8d5", "style": "normal"}, {"source": "t_vehicle_constraints", "target": "m_mc_pos_control", "color": "#4941d8", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_pos_control", "color": "#41a7d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_mc_pos_control", "color": "#bfd841", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_mc_rate_control", "color": "#d84741", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_mc_rate_control", "color": "#41d8d5", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_mc_rate_control", "color": "#41a7d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_mc_rate_control", "color": "#d8414e", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_mc_rate_control", "color": "#63d841", "style": "normal"}, {"source": "t_control_allocator_status", "target": "m_mc_rate_control", "color": "#a5d841", "style": "normal"}, {"source": "t_battery_status", "target": "m_mc_rate_control", "color": "#cc41d8", "style": "normal"}, {"source": "t_home_position", "target": "m_navigator", "color": "#d841d7", "style": "normal"}, {"source": "t_mission", "target": "m_navigator", "color": "#4145d8", "style": "normal"}, {"source": "t_geofence_status", "target": "m_navigator", "color": "#d841bd", "style": "normal"}, {"source": "t_dataman_response", "target": "m_navigator", "color": "#d841b6", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_navigator", "color": "#41d8ae", "style": "normal"}, {"source": "t_landing_target_pose", "target": "m_navigator", "color": "#9e41d8", "style": "normal"}, {"source": "t_wind", "target": "m_navigator", "color": "#d8d741", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_navigator", "color": "#41a7d8", "style": "normal"}, {"source": "t_transponder_report", "target": "m_navigator", "color": "#d8417b", "style": "normal"}, {"source": "t_rtl_status", "target": "m_navigator", "color": "#5041d8", "style": "normal"}, {"source": "t_position_controller_landing_status", "target": "m_navigator", "color": "#41d845", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_navigator", "color": "#d8414e", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_navigator", "color": "#4193d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_navigator", "color": "#bfd841", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_navigator", "color": "#b2d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_payload_deliverer", "color": "#4193d8", "style": "normal"}, {"source": "t_rc_parameter_map", "target": "m_rc_update", "color": "#d8b641", "style": "normal"}, {"source": "t_input_rc", "target": "m_rc_update", "color": "#41aed8", "style": "normal"}, {"source": "t_manual_control_switches", "target": "m_rc_update", "color": "#7741d8", "style": "normal"}, {"source": "t_actuator_servos", "target": "m_rover_ackermann", "color": "#d87b41", "style": "normal"}, {"source": "t_rover_velocity_setpoint", "target": "m_rover_ackermann", "color": "#d8418f", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_rover_ackermann", "color": "#84d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_ackermann", "color": "#416cd8", "style": "normal"}, {"source": "t_rover_attitude_setpoint", "target": "m_rover_ackermann", "color": "#bf41d8", "style": "normal"}, {"source": "t_rover_position_setpoint", "target": "m_rover_ackermann", "color": "#d89c41", "style": "normal"}, {"source": "t_rover_throttle_setpoint", "target": "m_rover_ackermann", "color": "#a541d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_ackermann", "color": "#41d8d5", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_ackermann", "color": "#d86141", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_rover_ackermann", "color": "#d3d841", "style": "normal"}, {"source": "t_rover_steering_setpoint", "target": "m_rover_ackermann", "color": "#5641d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_ackermann", "color": "#bfd841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_ackermann", "color": "#5d41d8", "style": "normal"}, {"source": "t_position_controller_status", "target": "m_rover_ackermann", "color": "#b2d841", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_ackermann", "color": "#63d841", "style": "normal"}, {"source": "t_rover_rate_setpoint", "target": "m_rover_ackermann", "color": "#6a41d8", "style": "normal"}, {"source": "t_rover_velocity_setpoint", "target": "m_rover_differential", "color": "#d8418f", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_rover_differential", "color": "#84d841", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_differential", "color": "#416cd8", "style": "normal"}, {"source": "t_rover_position_setpoint", "target": "m_rover_differential", "color": "#d89c41", "style": "normal"}, {"source": "t_rover_throttle_setpoint", "target": "m_rover_differential", "color": "#a541d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_differential", "color": "#41d8d5", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_differential", "color": "#d86141", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_rover_differential", "color": "#d3d841", "style": "normal"}, {"source": "t_rover_steering_setpoint", "target": "m_rover_differential", "color": "#5641d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_differential", "color": "#bfd841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_differential", "color": "#5d41d8", "style": "normal"}, {"source": "t_rover_attitude_setpoint", "target": "m_rover_differential", "color": "#bf41d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_differential", "color": "#63d841", "style": "normal"}, {"source": "t_rover_rate_setpoint", "target": "m_rover_differential", "color": "#6a41d8", "style": "normal"}, {"source": "t_rover_velocity_setpoint", "target": "m_rover_mecanum", "color": "#d8418f", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_mecanum", "color": "#416cd8", "style": "normal"}, {"source": "t_offboard_control_mode", "target": "m_rover_mecanum", "color": "#84d841", "style": "normal"}, {"source": "t_rover_position_setpoint", "target": "m_rover_mecanum", "color": "#d89c41", "style": "normal"}, {"source": "t_rover_throttle_setpoint", "target": "m_rover_mecanum", "color": "#a541d8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_mecanum", "color": "#41d8d5", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_mecanum", "color": "#d86141", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_rover_mecanum", "color": "#d3d841", "style": "normal"}, {"source": "t_rover_steering_setpoint", "target": "m_rover_mecanum", "color": "#5641d8", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_mecanum", "color": "#bfd841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_mecanum", "color": "#5d41d8", "style": "normal"}, {"source": "t_rover_attitude_setpoint", "target": "m_rover_mecanum", "color": "#bf41d8", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_mecanum", "color": "#63d841", "style": "normal"}, {"source": "t_rover_rate_setpoint", "target": "m_rover_mecanum", "color": "#6a41d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_rover_pos_control", "color": "#416cd8", "style": "normal"}, {"source": "t_vehicle_global_position", "target": "m_rover_pos_control", "color": "#41d8ae", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_rover_pos_control", "color": "#41d8d5", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_rover_pos_control", "color": "#d86141", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_rover_pos_control", "color": "#bfd841", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_rover_pos_control", "color": "#5d41d8", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_rover_pos_control", "color": "#d8ca41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_rover_pos_control", "color": "#63d841", "style": "normal"}, {"source": "t_sensor_selection", "target": "m_sensors", "color": "#d841c4", "style": "normal"}, {"source": "t_vehicle_imu", "target": "m_sensors", "color": "#d85b41", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_sensors", "color": "#41d8a1", "style": "normal"}, {"source": "t_differential_pressure", "target": "m_sensors", "color": "#d88941", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_sensors", "color": "#d8d141", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_sensors", "color": "#41d8d5", "style": "normal"}, {"source": "t_vehicle_imu_status", "target": "m_sensors", "color": "#d8bd41", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_sensors", "color": "#41ced8", "style": "normal"}, {"source": "t_sensor_optical_flow", "target": "m_sensors", "color": "#d841b0", "style": "normal"}, {"source": "t_sensor_correction", "target": "m_sensors", "color": "#418dd8", "style": "normal"}, {"source": "t_estimator_sensor_bias", "target": "m_sensors", "color": "#6341d8", "style": "normal"}, {"source": "t_flight_phase_estimation", "target": "m_battery_simulator", "color": "#d841d1", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_battery_simulator", "color": "#4193d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_battery_simulator", "color": "#d8414e", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_gz_bridge", "color": "#41c1d8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_gz_bridge", "color": "#d841ca", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_gz_bridge", "color": "#7ed841", "style": "normal"}, {"source": "t_landing_gear", "target": "m_gz_bridge", "color": "#56d841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_gz_bridge", "color": "#d3d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_gz_bridge", "color": "#4193d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_gz_bridge", "color": "#d84175", "style": "normal"}, {"source": "t_gripper", "target": "m_gz_bridge", "color": "#d8c441", "style": "normal"}, {"source": "t_gimbal_device_set_attitude", "target": "m_gz_bridge", "color": "#d841a3", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_gz_bridge", "color": "#63d841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_gz_bridge", "color": "#d341d8", "style": "normal"}, {"source": "t_actuator_armed", "target": "m_pwm_out_sim", "color": "#41c1d8", "style": "normal"}, {"source": "t_actuator_servos_trim", "target": "m_pwm_out_sim", "color": "#d841ca", "style": "normal"}, {"source": "t_gimbal_controls", "target": "m_pwm_out_sim", "color": "#7ed841", "style": "normal"}, {"source": "t_landing_gear", "target": "m_pwm_out_sim", "color": "#56d841", "style": "normal"}, {"source": "t_actuator_motors", "target": "m_pwm_out_sim", "color": "#d3d841", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_pwm_out_sim", "color": "#4193d8", "style": "normal"}, {"source": "t_actuator_test", "target": "m_pwm_out_sim", "color": "#d84175", "style": "normal"}, {"source": "t_gripper", "target": "m_pwm_out_sim", "color": "#d8c441", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_pwm_out_sim", "color": "#63d841", "style": "normal"}, {"source": "t_landing_gear_wheel", "target": "m_pwm_out_sim", "color": "#d341d8", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_agp_sim", "color": "#abd841", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_airspeed_sim", "color": "#abd841", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_sensor_airspeed_sim", "color": "#d84161", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_sensor_airspeed_sim", "color": "#416cd8", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_baro_sim", "color": "#abd841", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#abd841", "style": "normal"}, {"source": "t_vehicle_local_position_groundtruth", "target": "m_sensor_gps_sim", "color": "#d84161", "style": "normal"}, {"source": "t_vehicle_global_position_groundtruth", "target": "m_sensor_mag_sim", "color": "#abd841", "style": "normal"}, {"source": "t_vehicle_attitude_groundtruth", "target": "m_sensor_mag_sim", "color": "#6ad841", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_simulator_mavlink", "color": "#4166d8", "style": "normal"}, {"source": "t_battery_status", "target": "m_simulator_mavlink", "color": "#cc41d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_simulator_mavlink", "color": "#4193d8", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_simulator_mavlink", "color": "#d8414e", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_simulator_mavlink", "color": "#d87541", "style": "normal"}, {"source": "t_actuator_outputs_sim", "target": "m_simulator_sih", "color": "#4166d8", "style": "normal"}, {"source": "t_actuator_outputs", "target": "m_simulator_sih", "color": "#d87541", "style": "normal"}, {"source": "t_sensor_mag", "target": "m_temperature_compensation", "color": "#41d8a1", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_temperature_compensation", "color": "#d8d141", "style": "normal"}, {"source": "t_sensor_baro", "target": "m_temperature_compensation", "color": "#ab41d8", "style": "normal"}, {"source": "t_sensor_gyro", "target": "m_temperature_compensation", "color": "#41ced8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_temperature_compensation", "color": "#4193d8", "style": "normal"}, {"source": "t_vehicle_rates_setpoint", "target": "m_uuv_att_control", "color": "#d84741", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_att_control", "color": "#416cd8", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_att_control", "color": "#41d8d5", "style": "normal"}, {"source": "t_vehicle_attitude_setpoint", "target": "m_uuv_att_control", "color": "#d8ca41", "style": "normal"}, {"source": "t_manual_control_setpoint", "target": "m_uuv_att_control", "color": "#63d841", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_uuv_pos_control", "color": "#bfd841", "style": "normal"}, {"source": "t_trajectory_setpoint", "target": "m_uuv_pos_control", "color": "#d86141", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_uuv_pos_control", "color": "#41d8d5", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_uuv_pos_control", "color": "#416cd8", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_uxrce_dds_client", "color": "#d84168", "style": "normal"}, {"source": "t_vehicle_control_mode", "target": "m_vtol_att_control", "color": "#41d8d5", "style": "normal"}, {"source": "t_action_request", "target": "m_vtol_att_control", "color": "#b941d8", "style": "normal"}, {"source": "t_fw_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#41c8d8", "style": "normal"}, {"source": "t_home_position", "target": "m_vtol_att_control", "color": "#d841d7", "style": "normal"}, {"source": "t_vehicle_land_detected", "target": "m_vtol_att_control", "color": "#41a7d8", "style": "normal"}, {"source": "t_tecs_status", "target": "m_vtol_att_control", "color": "#41a1d8", "style": "normal"}, {"source": "t_vehicle_command", "target": "m_vtol_att_control", "color": "#4193d8", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_vtol_att_control", "color": "#416cd8", "style": "normal"}, {"source": "t_airspeed_validated", "target": "m_vtol_att_control", "color": "#41d866", "style": "normal"}, {"source": "t_vehicle_local_position_setpoint", "target": "m_vtol_att_control", "color": "#415fd8", "style": "normal"}, {"source": "t_mc_virtual_attitude_setpoint", "target": "m_vtol_att_control", "color": "#41d886", "style": "normal"}, {"source": "t_vehicle_local_position", "target": "m_vtol_att_control", "color": "#bfd841", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_vtol_att_control", "color": "#d8414e", "style": "normal"}, {"source": "t_position_setpoint_triplet", "target": "m_vtol_att_control", "color": "#5d41d8", "style": "normal"}, {"source": "t_vehicle_command_ack", "target": "m_failure", "color": "#d84168", "style": "normal"}, {"source": "t_input_rc", "target": "m_tests", "color": "#41aed8", "style": "normal"}, {"source": "t_dataman_response", "target": "m_tests", "color": "#d841b6", "style": "normal"}, {"source": "t_vehicle_attitude", "target": "m_fake_magnetometer", "color": "#416cd8", "style": "normal"}, {"source": "t_sensor_accel", "target": "m_work_item_example", "color": "#d8d141", "style": "normal"}, {"source": "t_vehicle_status", "target": "m_work_item_example", "color": "#d8414e", "style": "normal"}]} \ No newline at end of file