Hi
About encoders 4:1 :
YOU must always read the DataSheet or the informations in the Shop.
That always explane what Encoder you got.... ( Whatever in some Ebay Shops or Amazon this information is missing.... But a Real electronic shop support this )
Check for example here ...
https://www.reichelt.de/Drehimpulsgeber/STEC12E08/3/index.html?ACTION=3&GROUPID=3714&ARTICLE=73923&START=0&OFFSET=16&SID=96Wt2zJKwQATQAAFN11eEfc5fe9c0b4de4914baa0d87b34b89928&LANGUAGE=EN
In the Name of the Encoder you already see it´s 1:1 cause it calls "ALPS STEC12E rotary pulse encoder,
24/24, vert., w. PB"
Below you see Pulses: 24 - Detents: 24 So you got same number of Signals and detents. So it´s 1:1
Other example is this....
https://www.reichelt.de/Rotary-Pulse-Encoder/STEC11B01/3/index.html?ACTION=3&LA=2&ARTICLE=73911&GROUPID=3714&artnr=STEC11B01&trstct=pol_1
That called 15/30 .... 15 Pulses - 30 Detents..... so its 1:2 cause you have 30 Detents but just 15 Signals. .... 30/15=2 so only every second detent give a signal !
*************
About your config question.
Here we get 3 possible situations.
Some Addons get an error if you make a Input that is out of Range. (Not see myself but some people tell me)
Most others like Jeehell simply Ignore a Input out of Range and stay in last possible value (as you said you turn Left on ALT 0000 and nothing happen ( whatever you send -100)
Some rare Addons will Understand the Out of Range Input and "know" what you like.... so if you on Heading 000 and you turn left you will make a Input of "-1" and those addons check this and set itself to 359. ( EventID for example handle this all itself)
Jeehell should be Number 2.... It not crash but it also not solve this overrides itself.
Solution:
Here i can give you the tool to make it work..... BUT i not use jeehell and can´t test it. I Also not see the values that jeehell work with and must belive in my old PDF File.
"Maby" you need to check out the used Values yourself. Not shure if they correct.... BUT the Math Functions are the same !
1. HDG
Here you need 2 Calculations.
For ON LEFT you need the swapp from 0 to 359 (Instead of -1) use:
if($=0,359,$-1)
That means... IF Value is 000 At the moment and you turn left THEN Set direct to 359 ... ELSE ( If Value NOT Zero) simply $-1 .
For ON RIGHT you need to Swap from 359 to 0 (Instead of 360) use:
if($=359,0,$+1)
That means... If Value is 359 THEN direct jump to 0 when you turn right ELSE ( All other values) simply $+1 .
2. VS Speed.
Here i not undertand your System ($*100)+1 Why a (bracket) * already done before + And why this combination ?
I not know the Jeehell used Value but there should be only 3 possible ways.
A) The Input says "VS(format is VS in ft/min)" So the input should be $+100 Cause it say you should enter Feets per minute
B ) The output says "V/S in (ft/mn)/100" If Datapipe use this format then it should be $+1 to increase 100ft
C) If Jeehell use format of $ from Output and Format of Input for the Pipe then you need a Combination. Here it is ($+1)*100 or $*100+100
BUT Whatever your ($*100)+1 makes no sence to me. Maby i missunderstand but i think THIS is wrong !
I also think if you use the correct value ( simply try out the 3 ways and observe the Output Offset what happen) THEN the Minus 100 Problem is gone....
This problem is in case if your issue i think ... So a IF ELSE is normaly not needed here.
Please report experience !