automation around outputs section #197

This commit is contained in:
rusefillc 2021-11-26 21:21:46 -05:00
parent 7596e45e86
commit 13704396bf
3 changed files with 37 additions and 19 deletions

View File

@ -230,4 +230,12 @@ uint16_t rpmAcceleration;;"",1, 0, 0, 0, 0
uint16_t autoscale accelerationZ;;"",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0
uint16_t autoscale accelerationRoll;;"",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0
uint16_t autoscale accelerationYaw;;"",{1/@@PACK_MULT_PERCENT@@}, 0, 0, 0, 0
uint8_t[4] autoscale vvtTargets;;"",1, 0, 0, 0, 0
uint16_t autoscale turboSpeed;;"",1, 0, 0, 0, 0
! we have some unused bytes to allow compatible TS changes
uint8_t[18] autoscale unusedAtTheEnd;;"",1, 0, 0, 0, 0
end_struct

View File

@ -1,4 +1,4 @@
// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on (unknown script) console/binary/output_channels.txt Fri Nov 26 21:09:57 EST 2021
// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on (unknown script) console/binary/output_channels.txt Fri Nov 26 21:15:07 EST 2021
// by class com.rusefi.output.CHeaderConsumer
// begin
#pragma once
@ -594,8 +594,30 @@ struct ts_outputs_s {
* offset 310
*/
scaled_channel<uint16_t, 100, 1> accelerationRoll = (uint16_t)0;
/** total size 312*/
/**
* offset 312
*/
scaled_channel<uint16_t, 100, 1> accelerationYaw = (uint16_t)0;
/**
* offset 314
*/
scaled_channel<uint8_t, 1, 1> vvtTargets[4];
/**
* offset 318
*/
scaled_channel<uint16_t, 1, 1> turboSpeed = (uint16_t)0;
/**
* offset 320
*/
scaled_channel<uint8_t, 1, 1> unusedAtTheEnd[18];
/**
* need 4 byte alignment
units
* offset 338
*/
uint8_t alignmentFill_at_338[2];
/** total size 340*/
};
// end
// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on (unknown script) console/binary/output_channels.txt Fri Nov 26 21:09:57 EST 2021
// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on (unknown script) console/binary/output_channels.txt Fri Nov 26 21:15:07 EST 2021

View File

@ -32,32 +32,20 @@ enum class TsCalMode : uint8_t {
/**
* todo https://github.com/rusefi/rusefi/issues/197
* At the moment rusEFI does NOT have any code generation around TS output channels, three locations have to be changed manually
* 1) this TunerStudioOutputChannels firmware version of the structure
* three locations have to be changed manually
* 1) we inherit from generated ts_outputs_s based on output_channels.txt
* 2) '[OutputChannels]' block in rusefi.input
* 3) com.rusefi.core.Sensor enum in rusEFI console source code
*
* status update: there is progress, a portion of this struct is now generated! we inherit from generated
* ts_outputs_s and eventually the whole thing would be generated
*
* see also [OutputChannels] in rusefi.input
* see also TS_OUTPUT_SIZE in rusefi_config.txt
*/
struct TunerStudioOutputChannels : ts_outputs_s {
/* see also [OutputChannels] in rusefi.input */
scaled_percent accelerationYaw; // 312
scaled_channel<int8_t> vvtTargets[4]; // 314
scaled_channel<uint16_t> turboSpeed; // 318
uint8_t unusedAtTheEnd[18]; // we have some unused bytes to allow compatible TS changes
// Temporary - will remove soon
TsDebugChannels* getDebugChannels() {
return reinterpret_cast<TsDebugChannels*>(&debugFloatField1);
}
/* see also [OutputChannels] in rusefi.input */
/* see also TS_OUTPUT_SIZE in rusefi_config.txt */
};
extern TunerStudioOutputChannels tsOutputChannels;