L.S., 
I am driving from/to FS2004 via FSUIPC an (external to MS FS) Heading Indicator instrument with a Gyrodrift Compensation knob.  
FSUIPC is version 3.201 of 16 Febr. 2004.  
My software reads 3 values via FSUIPC: True Heading in $0580,4 Magnetic Variation in $02A0,2 and Gyrodrift in $0C3E,2.  
It calculates 'Indicated Heading'  
  (Indic.Hdg = True Heading + Gyrodrift - Magnetic Variation) and sends this regularly to the instrument; this goes fine.  
I encounter difficulties when the user turns the Gyrodrift Compensation knob on the instrument and i want to send the altered value to FS via FSUIPC.  
I observe the following:  
 - the start situation is: Gyrodrift=0 degr, Magnetic Variation=-3.0 degr and True Heading=231 degr; the Indicated course is 234 degr, all ok,  
 - my s/w reads the given Gyrodrift Compensation value from the instrument, lets say 0.5 degree, converted to FS 16 bit smallint this gives 81,  
 - my s/w writes via fsuipc this value of 81 in $0C3E,2  
 - the next time that my s/w reads the 3 values, the Gyrodrift repeats my value of 81,  
 - the problem is that the next time thereafter (16 ms later) my s/w reads a Gyrodrift of 0, so 'something' has overwritten my input. 
Only when I increase the given value over 192 (is > 1 degr) a non-zero value is read back in the 2nd cycle, but it is still lower than the given value.  
I have tried the same by: 
 - setting the FS in slew-mode, then update the value, then set back to normal mode, but the same effect, 
 - setting FS drift-simulation OFF, but the same effect. 
 - I have not tried this with a newer version of FS. 
My questions are: 
 - Do you know about this 'problem'? 
 - Is this solved in newer versions of FS? 
 - Is there another way to in/de-crease the Gyrodrift value in FS? 
 - Is there any other way that you can help me? 
Thanks in advance and Regards,  
Adrie