Hello les pilotes !
Je cherche à corriger les jauges du P47 A2A, et a en créer une autre qui n'existe pas dans Panel Builder car c'est le soft que j'utilise pour mes jauges.
En outre j'aimerai intégrer les valeurs de vibrations des aiguilles.
A corriger, MANIFOLD PRESSURE qui est systématiquement sous les valeurs du cockpit A2A ; DUAL FUEL qui ne fonctionne pas. :

Ensuite la jauge TURBO est à créer, facultativement la jauge DUAL FUEL du P47, je pense que les gars de Simplugins devraient pouvoir me les faire à condition que je leur apporte le code (ilsne gèrent pas A2A)

Je m'arrache les cheveux depuis un moment dèjà pour simplement obtenir dans un premier temps le résultat recherché sur la jauge MANIFOLD PRESSURE (MAP) juste pour la valeur de course d'aiguille sans les tremblements.
Le tout après avoir bien sur décortiqué ce post et d'autres.
Voici la manip :
- dans simPluginsFSUIPC.ini je repère :
[EngMAP]
MAP0 = ushort,08C0,{0} / 1024
MAP1 = ushort,0958,{0} / 1024
MAP2 = ushort,09F0,{0} / 1024
MAP3 = ushort,0A88,{0} / 1024
J'ai donc ceci dans EngMAP, l'offset 08C0 correspond bien au point MAP0 = avion monomoteur.

C'est confirmé dans FS Interrogate qui indique également qu'il s'agit d'une valeur 16 bit a nommer donc UW sur Lua.

- dans les LVars du P47, c'est là que ça se complique, j'ai plusieurs lignes concernant la jauge MAP :
436522 L:ManifoldPressure1_real = 1.000000
436522 L:MP1_Shake = 0.057626
436537 L:ManifoldPressure1Normal = -6.758212
436537 L:ManifoldPressure1_Total = -9.129841
436537 L:ManifoldPressure1_Goal = 1.000000
436537 L:ManifoldPressure1_Goal_OLD = -4.152393
436537 L:ManifoldPressure1_Difference = 0.000000
436537 L:ManifoldPressure1 = 1.057626
A cela se rajoutent les items correspondant à la jauge TURBO :
436537 L:ManifoldPressure1SuperCharged = -2.371629
436537 L:ManifoldPressure1PreTurbo = -9.129841
436537 L:ManifoldPressure1Turbo = 0.000000
J'ai un fichier .lua dans FSX/Modules qui correspond au boulot fait sur les voyants (merci Bob), ce fichier est relié à une commande sur le tableau de bord et est bien actif (les voyants fonctionnent normalement) :
while 1 do
-- Lecture des LVars
lowfuel = ipc.readLvar("L:FuelLow1Lamp")
lowpress = ipc.readLvar("L:FuelPressLow1Lamp")
rgear = ipc.readLvar("L:LGearTransLamp")
ggear = ipc.readLvar("L:LGearSafeLamp")
oversp = ipc.readLvar("L:TurboOverspeed1Lamp")
oxymask = ipc.readLvar("L:OxyMaskOn")
-- Ecriture dans Offsets Libres
ipc.writeSB(0x66c0, lowfuel)
ipc.writeSB(0x66c1, lowpress)
ipc.writeSB(0x66c2, rgear)
ipc.writeSB(0x66c3, ggear)
ipc.writeSB(0x66c4, oversp)
ipc.writeSB(0x66c5, oxymask)
ipc.sleep(68)
end
En corrigeant le fichier comme suit j'obtient un résultat erratique de l'aiguille, comme prévu lorsque l'on renvoie la Lvar vers l'offset défini par Panel builder :
while 1 do
-- Lecture des LVars
lowfuel = ipc.readLvar("L:FuelLow1Lamp")
lowpress = ipc.readLvar("L:FuelPressLow1Lamp")
rgear = ipc.readLvar("L:LGearTransLamp")
ggear = ipc.readLvar("L:LGearSafeLamp")
oversp = ipc.readLvar("L:TurboOverspeed1Lamp")
oxymask = ipc.readLvar("L:OxyMaskOn")
engmap = ipc.readLvar("L:ManifoldPressure1")
-- Ecriture dans Offsets Libres
ipc.writeSB(0x66c0, lowfuel)
ipc.writeSB(0x66c1, lowpress)
ipc.writeSB(0x66c2, rgear)
ipc.writeSB(0x66c3, ggear)
ipc.writeSB(0x66c4, oversp)
ipc.writeSB(0x66c5, oxymask)
ipc.writeUW(0x08C0, engmap)
ipc.sleep(68)
end
La réaction s’arrête là, aucune des autres manip réalisées n'a de résultat, la jauge reste immobile.
QUESTIONS :
- comment reconnaître les Lvars à utiliser pour la jauge? dans le même ordre d'idée comment reconnaître les Lvars liés au tremblement de l'aiguille ?
- puis je à la suite utiliser les offsets 0x66c6....7....8 etc sachant que je ne les voit pas dans FS Interrogate.
- FS Interrogate : les offset contenant des 0 ou rien du tout sont ils donc identifiables comme offsets libres ?
- cette jauge contient deux offsets, l'ecriture suivante serait elle correcte ? , (sachant qu'elle ne fonctionne pas) :
while 1 do
-- Lecture des LVars
lowfuel = ipc.readLvar("L:FuelLow1Lamp")
lowpress = ipc.readLvar("L:FuelPressLow1Lamp")
rgear = ipc.readLvar("L:LGearTransLamp")
ggear = ipc.readLvar("L:LGearSafeLamp")
oversp = ipc.readLvar("L:TurboOverspeed1Lamp")
oxymask = ipc.readLvar("L:OxyMaskOn")
engmap = ipc.readLvar("L:ManifoldPressure1")
-- Ecriture dans Offsets Libres
ipc.writeSB(0x66c0, lowfuel)
ipc.writeSB(0x66c1, lowpress)
ipc.writeSB(0x66c2, rgear)
ipc.writeSB(0x66c3, ggear)
ipc.writeSB(0x66c4, oversp)
ipc.writeSB(0x66c5, oxymask)
ipc.writeUW(0x66c6, engmap)
ipc.writeUW(0x66c7, engmap)
ipc.sleep(68)
end
Merci pour votre aide les gars, ma femme me préfère avec des cheveux
