Bonjour,
Jacques, j'ai testé tes propositions pour mes potentiomètres, cela ne fonctionne pas. J'ai testé les deux versions de ce que tu m'as donné, et aucune réaction de P3D :
function circuit_breaker(pot_value)
Val=150*pot_value
fsx_variable_write("PMDG 737NGX:LTS_CircuitBreakerKnob","NUMBER",Val)
end
function light_panel(value)
Val,frac=math.modf(value*150)
fsx_variable_write("PMDG 737NGX:LTS_OvereadPanelKnob","NUMBER",Val)
end
hw_adc_input_add("ARDUINO_MEGA2560_B_A2", circuit_breaker)
hw_adc_input_add("ARDUINO_MEGA2560_B_A1", light_panel)
De même, si je force la valeur dans la console Air Manager (en faisant bouger le curseur sur la jauge du potentiomètre), la nouvelle valeur créée n'est pas écrite et transmise. J'ai essayé de débugger en ajoutant des print à chaque étape. Dans l'exemple ci-dessous, le programme me renvoie bien en print un nombre en 0 et 150, mais le bouton du panel lights ne bouge pas pour autant...
function light_panel(value)
print(value)
Val,frac=math.modf(value*150)
print(Val)
fsx_variable_write("PMDG 737NGX:LTS_OvereadPanelKnob", "NUMBER", Val)
end
hw_adc_input_add("ARDUINO_MEGA2560_P_A1", light_panel)
De plus, j'ai un autre soucis, quand je mets le code des potentiomètres et que j'ajoute le hardware, ma carte Arduino semble mettre une plombe à réagir dans le jeu. Par exemple, quand j'active un switch, il faut au moins 10 secondes pour que cela bouge dans le jeu. Et je suis quasi sûr que le problème est lié aux potentiomètres car quand je passe les lignes de code y correspondant en commentaire (en gros je les désactive en ajoutant des -- devant toutes les lignes), le jeu réagit de nouveau normalement à mes actions sur le hardware.
Merci pour vos éclaircissements,
Hadrien