Target gear miss
Target gear miss
Long time no seen
Just loaded the 4.145 code and had a run (first in a long time) I can see some strange behaviour in revese according to the log.
The car it self is behaving as it should though.
While in reverse cgear shows -1 but tgear shows 1 and just "blipping" down to -1.
There are some spikes in the vss but that is coming from my eletrical cooling fan (controlled by the MSIII) that by some strange reason is going on and off depending of gear lever position.....I'm tying to sort that out as well.....
- Attachments
-
- CurrentTune.msq
- (45.85 KiB) Downloaded 454 times
-
- 2014-08-09_15.02.56.msl
- (613.1 KiB) Downloaded 455 times
Re: Target gear miss
Anyone any idea what VSS1 offset, Data Size and Gear# offset should be?
//Tobmag
- Attachments
-
- VSS set-up.jpg (39.68 KiB) Viewed 8530 times
-
- Posts: 1696
- Joined: Fri Apr 04, 2008 1:28 pm
Re: Target gear miss
Yes, the target gear is still a positive number. It represents the gear the trans will shift to once MShift has control in the forward gears. In P, N, and R MShift is not controlling the target gear, it is just mirroring the gear lever position. So the target gear should be 1 under these conditions, because that is likely the gear you want once you shift to a controlled (i.e. forward) gear. It shouldn't really jump to -1, but it will do that if there are any gear lever errors such as the fan issue you mention (or remaining bugs in the code).
There offsets are in fourth column of the OutputChannels section of the INI:
Code: Select all
[OutputChannels]
; These are from the outpc. structure in the main.c file of the source code
; the size and format are the same as above
deadValue = { 0 } ; Convenient unchanging value.
ochBlockSize = 72
#if CAN_COMMANDS
;full version that works anywhere
ochGetCommand = "r\x01\x07%2o%2c"
#else
ochGetCommand = "a\x00\x06"
#endif
seconds = scalar, U16, 0, "sec", 1.000, 0.0
#if SI_LENGTHS
speedo = scalar, U16, 2, "kph", 0.16093, 0.0
odometer = scalar, U32, 4, "km", 0.00161, 0.0
#else
speedo = scalar, U16, 2, "mph", 0.100, 0.0
odometer = scalar, U32, 4, "miles", 0.001, 0.0
#endif
auto_mode = scalar, U08, 8, " ", 1.000, 0.0
downbutton = bits, U08, 9, [0:0]
upbutton = bits, U08, 9, [1:1]
downshift_request = bits, U08, 9, [2:2]
upshift_request = bits, U08, 9, [3:3]
error = scalar, U08, 10, " ", 1.000, 0.0
serialComm = bits, U08, 10, [0:0]
CAN error = bits, U08, 10, [1:1]
revshiftblock = bits, U08, 10, [2:2]
VSSreset = bits, U08, 10, [3:3]
VSSerr = bits, U08, 10, [4:4]
gearRangeErr = bits, U08, 10, [5:5]
lowVolts = bits, U08, 10, [6:6]
noBrake = bits, U08, 10, [7:7]
manual_gear = scalar, S08, 11, " ", 1.000, 0.0
current_gear = scalar, S08, 12, " ", 1.000, 0.0
target_gear = scalar, S08, 13, " ", 1.000, 0.0
engine_rpm = scalar, U16, 14, "rpm", 1.000, 0.0
#if LOAD_KPA
LOAD = scalar, S16, 16, "kpa", 0.100, 0.0
#else
LOAD = scalar, S16, 16, "%", 0.100, 0.0
#endif
#if CELSIUS
clt = scalar, S16, 18, "ºC", 0.055556, -320.0
#else
clt = scalar, S16, 18, "ºF", 0.100, 0.0
#endif
#if SI_LENGTHS
linepressure = scalar, S16, 20, "bar", 0.00689, 0.0
#else
linepressure = scalar, S16, 20, "psi", 0.10, 0.0
#endif
lock_TCC = scalar, U08, 22, " ", 1.000, 0.0
brake = bits, U08, 23, [0:0]
burnstatus = bits, U08, 23, [1:1]
FWD = bits, U08, 23, [2:2]
forceUP = bits, U08, 23, [3:3]
forceDWN = bits, U08, 23, [4:4]
JakeBrake = bits, U08, 23, [5:5]
#if LOAD_KPA
LOAD_short = scalar, U16, 24, "kpa", 0.100, 0.0
#else
LOAD_short = scalar, U16, 24, "%", 0.100, 0.0
#endif
aux_volts = scalar, U16, 26, "V", 0.001, 0.0
PC_duty = scalar, U08, 28, "pct", 1.000, 0.0
slip = scalar, U08, 29, "pct", 1.000, 0.0
dbug = scalar, U16, 30, " ", 1.000, 0.0
In1adc = scalar, U16, 32, "volts", 0.00488, 0.0
In2adc = scalar, U16, 34, "volts", 0.00488, 0.0
In3adc = scalar, U16, 36, "volts", 0.00488, 0.0
solst = scalar, U08, 38, " ", 1.000, 0.0
Output1 = bits, U08, 38, [0:0]
Output2 = bits, U08, 38, [1:1]
Output3 = bits, U08, 38, [2:2]
Output4 = bits, U08, 38, [3:3]
Output5 = bits, U08, 38, [4:4]
Output6 = bits, U08, 38, [5:5]
Output7 = bits, U08, 38, [6:6]
Output8 = bits, U08, 38, [7:7]
chcksum = scalar, U08, 39, " ", 1.000, 0.0
mileage = scalar, U16, 40, "mpg", 0.010, 0.0
FuelAdj = scalar, S16, 42, "%", 0.100, 0.0
SpkAdj = scalar, S16, 44, "°", 0.100, 0.0
IdleAdj = scalar, S16, 46, " ", 1.000, 0.0
SprAdj = scalar, S16, 48, " ", 1.000, 0.0
In1 = bits, U08, 50, [0:0]
In2 = bits, U08, 50, [1:1]
In3 = bits, U08, 50, [2:2]
In4 = bits, U08, 50, [3:3]
sp1PWM = scalar, U08, 51, "%", 1.000, 0.0
is_rpm = scalar, U16, 52, "rpm", 1.000, 0.0
butADC = scalar, U16, 54, "volts", 0.00488, 0.0
sp2PWM = scalar, U08, 56, "%", 1.000, 0.0
TCC_count = scalar, U08, 57, "sec", 0.100, 0.0
sp0PWM = scalar, U08, 58, "%", 1.000, 0.0
sp09inx = scalar, U16, 59, ""' 0.100, 0.0
sp016inx = scalar, U16, 61, ""' 0.100, 0.0
ms2tps = scalar, U08, 63, "", 1.000, 0.0
LED1 = bits, U08, 64, [0:0]
LED2 = bits, U08, 64, [1:1]
LED3 = bits, U08, 64, [2:2]
LED4 = bits, U08, 64, [3:3]
dbugout7 = scalar, U08, 65, "", 1.000, 0.0
dbugout6 = scalar, U08, 66, "", 1.000, 0.0
dbugout5 = scalar, U08, 67, "", 1.000, 0.0
dbugout4 = scalar, U08, 68, "", 1.000, 0.0
dbugout3 = scalar, U08, 69, "", 1.000, 0.0
dbugout2 = scalar, U08, 70, "", 1.000, 0.0
dbugout1 = scalar, U08, 71, "", 1.000, 0.0
; pageSize = 71 + U08 = 72
So VSS (= speedo) is 2, the gear is in 11, 12, or 13 depending on whether you want the lever position, the current gear, or the target gear (so probably 12).
If I understand this correctly, the data size you are looking for is in the Uxx or Sxx term in the third column. S08 is 8 bits (1 byte), U16 is 16 bits (2 bytes). Uxx means an unsigned value (no negative numbers), and Sxx means signed (plus and minus numbers, but the maximum is only 1/2 as much). The speedo value is U16, so 16 bits. The gear value is S08 so 8 bits (the current gear value needs to allow negative numbers to have a reverse gear, and we certainly don't need a gear range over 127 in any case!).
The table should be 7 (but 6 might work too)
Lance.
Re: Target gear miss
Thanks for promt reply, well with data size I can only choose 8bit or 16bit from the dropdown table, Explanations says "How the data is stored on the expansion board. See documentation"
12 is probably correct for Gear# since the fan by some reason is going on/off depending of where I put the lever, not correct so will adress that at MSIII forum.
BR//Tobmag
Re: Target gear miss
Here is how my MS3 is set. It works right for speed and gear
Re: Target gear miss
Do you use MSIII to control any electrical cooling fan? I have my wired up that way using NOS1 output, it behaves very strange when I use 16bit.
If fan is running and I put it in anything but P or N it will cut the fan.......
Very soon I'll have the car in the new house I'm moving in to, 75m3 garage/workshop in the basement (instead of driving 45km to the garage....)
//Tobmag
Re: Target gear miss
Guillaume