From f79ae3c6236c1206da43bc1321f3797582803a71 Mon Sep 17 00:00:00 2001 From: rusefillc Date: Mon, 29 Nov 2021 00:33:05 -0500 Subject: [PATCH] why so many channels are hidden in debug ? #3614 --- firmware/console/binary/output_channels.txt | 13 ++++++++++--- firmware/util/math/pid.cpp | 7 +++++++ firmware/util/math/pid.h | 1 + 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/firmware/console/binary/output_channels.txt b/firmware/console/binary/output_channels.txt index 988e16d5a0..c298ee6b9b 100644 --- a/firmware/console/binary/output_channels.txt +++ b/firmware/console/binary/output_channels.txt @@ -63,7 +63,7 @@ uint16_t rpmAcceleration;dRPM;"RPM/s",1, 0, 0, 0, 0 uint16_t autoscale lambdaValue;@@GAUGE_NAME_LAMBDA@@;"",{1/@@PACK_MULT_LAMBDA@@}, 0, 0, 0, 0 uint8_t autoscale knockRetard;;"deg",{1/10}, 0, 0, 0, 0 - uint8_t unused37;;"",1, 0, 0, 0, 0 + uint8_t idleCurrentPosition;;"",1, 0, 0, 0, 0 uint16_t autoscale VBatt;@@GAUGE_NAME_VBAT@@;"V",{1/@@PACK_MULT_VOLTAGE@@}, 0, 0, 0, 0 @@ -145,7 +145,7 @@ uint16_t rpmAcceleration;dRPM;"RPM/s",1, 0, 0, 0, 0 ! it wants to send have been sent. float autoscale calibrationValue;;"", 1, 0, 0, 0, 0 uint8_t autoscale calibrationMode;;"", 1, 0, 0, 0, 0 - uint8_t autoscale unusedPadding;;"", 1, 0, 0, 0, 0 + uint8_t autoscale idleTargetPosition;;"", 1, 0, 0, 0, 0 ! Values used for load axes for fuel/ign tables ! These may or may not be the same value, depending on mode @@ -253,8 +253,15 @@ uint16_t rpmAcceleration;dRPM;"RPM/s",1, 0, 0, 0, 0 ! we have some unused bytes to allow compatible TS changes - uint8_t[252 iterate] unusedAtTheEnd;;"",1, 0, 0, 0, 0 + uint8_t[236 iterate] unusedAtTheEnd;;"",1, 0, 0, 0, 0 + int idleState;;"", 1, 0, -10000, 10000, 3 + + float injectorFlowPressureRatio;;"", 1, 0, -10000, 10000, 3 + float injectorFlowPressureDelta;;"", 1, 0, -10000, 10000, 3 + + + float etbFeedForward;;"", 1, 0, -10000, 10000, 3 float etbIntegralError;;"", 1, 0, -10000, 10000, 3 float etbCurrentTarget;;"", 1, 0, -10000, 10000, 3 pid_status_s alternatorStatus diff --git a/firmware/util/math/pid.cpp b/firmware/util/math/pid.cpp index 0a1b52c345..ae2882ae75 100644 --- a/firmware/util/math/pid.cpp +++ b/firmware/util/math/pid.cpp @@ -135,6 +135,13 @@ void Pid::postState(TunerStudioOutputChannels *tsOutputChannels) const { postState(tsOutputChannels, 1); } +void Pid::postState(pid_status_s *pidStatus) const { + pidStatus->output = output; + pidStatus->error = getPrevError(); + pidStatus->iTerm = iTerm; + pidStatus->dTerm = dTerm; +} + /** * see https://rusefi.com/wiki/index.php?title=Manual:Debug_fields */ diff --git a/firmware/util/math/pid.h b/firmware/util/math/pid.h index 7f210519f7..c2c133e359 100644 --- a/firmware/util/math/pid.h +++ b/firmware/util/math/pid.h @@ -55,6 +55,7 @@ public: float getPrevError(void) const; void setErrorAmplification(float coef); #if EFI_TUNER_STUDIO + void postState(pid_status_s *pidStatus) const; void postState(TunerStudioOutputChannels *tsOutputChannels) const; void postState(TunerStudioOutputChannels *tsOutputChannels, int pMult) const; #endif /* EFI_TUNER_STUDIO */