"Set Gear P"
Trigger condition: if Dashbox Analog 8 < 1
Reset condition: If Dashbox Analog 8 > 1
Action: Set value, input: Dummy 30, value -2
"Set Gear R"
Trigger condition: if Dashbox Analog 8 > 1 AND Dashbox Analog 8 < 3
Reset condition: If Dashbox Analog 8 < 1 OR Dashbox Analog 8 > 3
Action: Set value, input: Dummy 30, value -1
"Set Gear N"
Trigger condition: if Dashbox Analog 8 > 3 AND Dashbox Analog 8 < 3.5
Reset condition: If Dashbox Analog 8 < 3 OR Dashbox Analog 8 > 3.5
Action: Set value, input: Dummy 30, value 0
"Set Gear 3"
Trigger condition: if Dashbox Analog 8 > 3.5 AND Dashbox Analog 8 < 3.9
Reset condition: If Dashbox Analog 8 < 3.5 OR Dashbox Analog 8 > 3.9
Action: Set value, input: Dummy 30, value 3
"Set Gear 2"
Trigger condition: if Dashbox Analog 8 > 3.9 AND Dashbox Analog 8 < 4.2
Reset condition: If Dashbox Analog 8 < 3.9 OR Dashbox Analog 8 > 4.2
Action: Set value, input: Dummy 30, value 2
"Set Gear 2"
Trigger condition: if Dashbox Analog 8 > 4.2
Reset condition: If Dashbox Analog 8 < 4.1
Action: Set value, input: Dummy 30, value 1
I use a ‘large’ Dummy variable index (30) to avoid other dashboards using the same dummy as it could mess up the triggers.
Now you can test the if input Dummy 30 shows the gears correctly (still numerical)
Then, use the ‘Settings->Units & Values->Input Mapping’ to map the Dummy 30 into the ‘Gear’ input. After that, your gear display should work on all RealDash dashboards.
I am measuring off my shifter with a 10K potentiometer
My arduino reads the pot and sends out Shifter Position (Transmission) ID 141 out as a 0 - 1023 integer
I have confirmed shifter position is reading correctly in RealDash
I know these values work for each gear position in ID 141
P = 0 → 203
R = 203 → 257
N = 257 → 311
1 = 311 → 366
2 = 366 → 430
3 = 430 - 1023
Where I am unsure is what exactly gear ID 139 is expecting as inputs?
Do I need to send text P R N 1 2 3 (I tried this direct from Arduino)
Do I need to send signed int -2 -1 0 1 2 3 (Using the global triggers mapping dummy 30 → gear)
Do I need to send unsigned int 10 9 8 1 2 3 (Using the enum in xml)
I tried to send values from my arduino directly to gear ID 139 and could not get it to change, stayed at N all the time
When I tried to set the global triggers for P Gear to -2, the app keyboard doesn’t allow me to input a -ive value
Update
I have assigned the global triggers
P R N → Dummy 30 = 0 (I still can’t enter a -ive value in the app on my phone)
Gear 1 → Dummy 30 = 1
Gear 2 → Dummy 30 = 2
Gear 3 → Dummy 30 = 3
I tested Dummy 30 output and I get the above outputs
For some reason this still does not map across to gear
I have tried mapping all of these to Dummy 30
ID 200 Body Electronic Gear, units gear (Always shows N)
ID 139 Tranmission Gear, Units number (Always shows N)
ID 140 Transmission Selected Gear, Units gear (Always shows 0.00)
gear (Master speed, RPM, Gear Ratio (Always shows N)
If you send values directly to ID139, make sure that ‘Transmission-Gear’ input is not mapped to some other input in ‘Settings->Units & Values->Value Mapping’, as mapping would overwrite anything you put into that input.
Then send signed int -2 -1 0 1 2 3 to input ID139 (or unsigned int with conversion=“V-2”)