LUA, c'est quoi ???
5 participants
Page 1 sur 1
LUA, c'est quoi ???
Salut à Tous.
Bon, je me lance, je mets les pieds dans le plat.
Avec la version OpenTX 2.0 et suivant, on a vu arrivé ce nouveau truc, LUA . Mais c'est quoi ce truc, ça sert à quoi ??? Ça intervient à quel niveau dans l'utilisation de la radio, pour le modèles ?? Pour la radio en général ?? Pour l'affichage ??? Pour la télémétrie ???
C'est vraiment utile ou c'est une prise de tête supplémentaire ???
Parce que, comme tout le monde, je suis les nouveaux messages, certains se sont engouffré dans ce nouveau .... système ..., ils ont commencé à proposé des trucs mais on sait même pas à quoi ça sert, ni comment ça marche ...
Si qql'un pouvait nous faire une présentation de la chose, genre tuto pour les Nuls, on pourrait essayer de prendre le train en marche.
Merci d'avance
Bon, je me lance, je mets les pieds dans le plat.
Avec la version OpenTX 2.0 et suivant, on a vu arrivé ce nouveau truc, LUA . Mais c'est quoi ce truc, ça sert à quoi ??? Ça intervient à quel niveau dans l'utilisation de la radio, pour le modèles ?? Pour la radio en général ?? Pour l'affichage ??? Pour la télémétrie ???
C'est vraiment utile ou c'est une prise de tête supplémentaire ???
Parce que, comme tout le monde, je suis les nouveaux messages, certains se sont engouffré dans ce nouveau .... système ..., ils ont commencé à proposé des trucs mais on sait même pas à quoi ça sert, ni comment ça marche ...
Si qql'un pouvait nous faire une présentation de la chose, genre tuto pour les Nuls, on pourrait essayer de prendre le train en marche.
Merci d'avance
Re: LUA, c'est quoi ???
Hello,
LUA est un langage de programmation, un peu comme Javascript pour les page web ou Visual Basic pour les macro Excel.
Ca permet d'ajouter des fonctionnalités dans ton émetteur sans avoir à attendre que l'équipe de développement du software le fasse dans une nouvelle version.
Tu as quatre type de script :
- les "wizard script" qui permettent de créer des aides pour la programmation des modèles
- les "model script" qui permettent d'ajouter des opérations (mixages ou autre) que l'on n'arrive pas à faire normalement
- les "telemetry script" qui permettent d'ajouter des écrans de télémétrie avec des fonctions pas encore prévues dans le software
- les "function script" mais ça, je ne sais encore ce que c'est (pas décrit)
La documentation est ici : https://docs.google.com/document/d/1ILh9lSW4d05qJD2rSKxep0WnJUfNCcAPCafKZeESweE/edit
Pour reprendre les mots que tu utilisais, ça intervient au niveau :
- de la radio : oui avec les wizard script
- des modèles : oui avec les model script
- de l'affichage : oui (wizard + telemetry)
- de la télémétrie : oui avec les telemetry script
En ce qui me concerne, je vais commencer par faire des "telemetry script" et j'ai déjà commencé avec le script qui alerte le pilote s'il s'approche trop d'un point GPS. J'ai d'autres idées comme un script pour des entrainement F3F, un script aidant à rentrer à la maison (home arrow + annonce vocale) et d'autres encore.
N'hésite pas à poser d'autres questions !
LUA est un langage de programmation, un peu comme Javascript pour les page web ou Visual Basic pour les macro Excel.
Ca permet d'ajouter des fonctionnalités dans ton émetteur sans avoir à attendre que l'équipe de développement du software le fasse dans une nouvelle version.
Tu as quatre type de script :
- les "wizard script" qui permettent de créer des aides pour la programmation des modèles
- les "model script" qui permettent d'ajouter des opérations (mixages ou autre) que l'on n'arrive pas à faire normalement
- les "telemetry script" qui permettent d'ajouter des écrans de télémétrie avec des fonctions pas encore prévues dans le software
- les "function script" mais ça, je ne sais encore ce que c'est (pas décrit)
La documentation est ici : https://docs.google.com/document/d/1ILh9lSW4d05qJD2rSKxep0WnJUfNCcAPCafKZeESweE/edit
Pour reprendre les mots que tu utilisais, ça intervient au niveau :
- de la radio : oui avec les wizard script
- des modèles : oui avec les model script
- de l'affichage : oui (wizard + telemetry)
- de la télémétrie : oui avec les telemetry script
En ce qui me concerne, je vais commencer par faire des "telemetry script" et j'ai déjà commencé avec le script qui alerte le pilote s'il s'approche trop d'un point GPS. J'ai d'autres idées comme un script pour des entrainement F3F, un script aidant à rentrer à la maison (home arrow + annonce vocale) et d'autres encore.
N'hésite pas à poser d'autres questions !
Sacre100- Messages : 1889
Date d'inscription : 30/11/2013
Age : 67
Localisation : Blonay - Suisse
Re: LUA, c'est quoi ???
Bonsoir Sacre; merci de ta réponse
Avec un petit exemple dans chaque catégorie, ce serait parfait - merci
A suivre
Là, c'est mort pour moi, en Anglais je comprend rienSacre100 a écrit:
La documentation est ici : https://docs.google.com/document/d/1ILh9lSW4d05qJD2rSKxep0WnJUfNCcAPCafKZeESweE/edit
Sacre100 a écrit:
Pour reprendre les mots que tu utilisais, ça intervient au niveau :
- de la radio : oui avec les wizard script
- des modèles : oui avec les model script
- de l'affichage : oui (wizard + telemetry)
- de la télémétrie : oui avec les telemetry script
Avec un petit exemple dans chaque catégorie, ce serait parfait - merci
A suivre
Re: LUA, c'est quoi ???
Un exemple de script de télémesure ici : http://www.open-tx.org/2014/06/30/telem2-lua/
Ce script permet d'associer à un modèle existant un écran de télémesure supplémentaire. Il est nécessaire d'être sous OpenTX 2.0.4 ou plus.
Le script affiche 2 chronos, la tension de l'accu (valeur absolue et pourcentage de la capacité totale), l'altitude instantanée ainsi que l'altitude maxi.
Mode d'emploi
- Télécharger le script en cliquant sur le lien "download link" (fichier telem2.zip) et le décompresser (fichier telem2.lua)
- Créer sur la carte microSD un répertoire nommé SCRIPTS (s'il n'existe pas déjà)
- Créer un sous-répertoire dans le répertoire SCRIPTS. Lui donner le même nom que celui du modèle qui va utiliser le script de télémesure.
- Placer le script telem2.lua dans ce sous-répertoire.
Le chemin d'accès est donc : /SCRIPTS/nom_du_modele/telem2.lua
Au démarrage de la radio, sélectionner le modèle qui va utiliser le script.
Faire une pression longue sur la touche PAGE : ce qui appelle les écrans de télémesure
Faire défiler les écrans de télémesure avec les touches + ou -
Pour chaque modèle, on peut créer jusqu'à 7 scripts de télémesure nommés telemx.lua où X va de 0 à 6
Ca marche aussi sous companionTX avec le simulateur de la radio :cheers:
Ce script permet d'associer à un modèle existant un écran de télémesure supplémentaire. Il est nécessaire d'être sous OpenTX 2.0.4 ou plus.
Le script affiche 2 chronos, la tension de l'accu (valeur absolue et pourcentage de la capacité totale), l'altitude instantanée ainsi que l'altitude maxi.
Mode d'emploi
- Télécharger le script en cliquant sur le lien "download link" (fichier telem2.zip) et le décompresser (fichier telem2.lua)
- Créer sur la carte microSD un répertoire nommé SCRIPTS (s'il n'existe pas déjà)
- Créer un sous-répertoire dans le répertoire SCRIPTS. Lui donner le même nom que celui du modèle qui va utiliser le script de télémesure.
- Placer le script telem2.lua dans ce sous-répertoire.
Le chemin d'accès est donc : /SCRIPTS/nom_du_modele/telem2.lua
Au démarrage de la radio, sélectionner le modèle qui va utiliser le script.
Faire une pression longue sur la touche PAGE : ce qui appelle les écrans de télémesure
Faire défiler les écrans de télémesure avec les touches + ou -
Pour chaque modèle, on peut créer jusqu'à 7 scripts de télémesure nommés telemx.lua où X va de 0 à 6
Ca marche aussi sous companionTX avec le simulateur de la radio :cheers:
Franck76- Messages : 189
Date d'inscription : 25/07/2013
Age : 53
Localisation : Rouen
Re: LUA, c'est quoi ???
Le plus important de tous c'est l'ensemble SCRIP/WIZARD/ à installer pour l'aide à la création des nouveaux modèles. Cet ensemble remplace le menu Gabarits de la version V1. En ce moment nous sommes deux ou trois à l'améliorer. D'abord passé en français et ensuite ajout de fonctions absentes.
Les autres programmes LUA ne sont sommes toute pas vraiment nécessaire et personnellement après test j'ai décidé de ne pas trop les utiliser. En effet avoir des affichages spécifiques à l'écran me gêne car en pilotage je préfère de beaucoup la synthèse vocale pour m'annoncer mon altitude ou la tension de mes accus.
Voici par exemple la dernière version du dossier Wizard à décompresser en SCRIPT/WIZARD.
Les autres programmes LUA ne sont sommes toute pas vraiment nécessaire et personnellement après test j'ai décidé de ne pas trop les utiliser. En effet avoir des affichages spécifiques à l'écran me gêne car en pilotage je préfère de beaucoup la synthèse vocale pour m'annoncer mon altitude ou la tension de mes accus.
Voici par exemple la dernière version du dossier Wizard à décompresser en SCRIPT/WIZARD.
Invité- Invité
Re: LUA, c'est quoi ???
Bon ..... Je commence à cerner le truc.
Donc, depuis la version OpenTX 2.0, les développeurs ont introduit, ont intégré un language de programmation (genre Basic) pour modifier nous même le FW.
On peut modifier beaucoup de domaine mais le plus simple pour commencer, c'est de modifier les affichages, surtout coté écran télémétrie.
Je comprend aussi que cela modifie QUE les écrans associés à 1 seul modèle (avion), celui pour lequel on a créé un dossier dans le /SCRIPTS/ de la carte SD. Et qu'on peut en créer jusqu'à 7 écrans supplémentaires.
Question: Est ce qu'on peut virer les écrans d'origines ???
Je comprend aussi que la manip de Murphy est de modifier l'aide à la création de nouveaux modèles, en Francisant les icônes.
Mais comment tu vas toucher à tel ou tel domaine, ici les gabarits, plus haut les écrans ???
==> Oui, je réfléchis et cherche en tapant ce msg, ok, les gabarits, c'est dans Wizard :cheers:
Ce qui serait sympa, ce serait de modifier ou créer une option pour tous les modèles d'un seul coup, par exemple dans les "fonctions spéciales", je mets pour tous mes modèles le réglage du volume en FS1, ce serait pas ça qu'on pourrait faire avec :
J'ai bon jusqu'ici ???
A suivre
Donc, depuis la version OpenTX 2.0, les développeurs ont introduit, ont intégré un language de programmation (genre Basic) pour modifier nous même le FW.
On peut modifier beaucoup de domaine mais le plus simple pour commencer, c'est de modifier les affichages, surtout coté écran télémétrie.
Je comprend aussi que cela modifie QUE les écrans associés à 1 seul modèle (avion), celui pour lequel on a créé un dossier dans le /SCRIPTS/ de la carte SD. Et qu'on peut en créer jusqu'à 7 écrans supplémentaires.
Question: Est ce qu'on peut virer les écrans d'origines ???
Je comprend aussi que la manip de Murphy est de modifier l'aide à la création de nouveaux modèles, en Francisant les icônes.
Mais comment tu vas toucher à tel ou tel domaine, ici les gabarits, plus haut les écrans ???
==> Oui, je réfléchis et cherche en tapant ce msg, ok, les gabarits, c'est dans Wizard :cheers:
Ce qui serait sympa, ce serait de modifier ou créer une option pour tous les modèles d'un seul coup, par exemple dans les "fonctions spéciales", je mets pour tous mes modèles le réglage du volume en FS1, ce serait pas ça qu'on pourrait faire avec :
- les "function script" mais ça, je ne sais encore ce que c'est (pas décrit)
J'ai bon jusqu'ici ???
A suivre
Re: LUA, c'est quoi ???
Globalement, c'est ça.
il y a un facteur important à prendre ne compte quand même : les scripts en LUA ne sont pas prioritaires, si le CPU ou la mếmoire vive arrive près des limites, les scripts seront tués, donc attention à ne pas inclure de fonction "sensibles" dans un script !
.AleX.- Messages : 1459
Date d'inscription : 24/11/2013
Localisation : Clermont-Fd(63) ou parfois Annecy(74)
Re: LUA, c'est quoi ???
Bud.fr a écrit:... Ce qui serait sympa, ce serait de modifier ou créer une option pour tous les modèles d'un seul coup, par exemple dans les "fonctions spéciales", je mets pour tous mes modèles le réglage du volume en FS1 ...
Ca c'est une excellente idée car autant on peut copier un mixage d'un modèle à l'autre, autant je n'ai pas trouvé comment copier la définition d'une courbe, d'un interrupteur logique, etc... d'un modèle à l'autre.
Sacre100- Messages : 1889
Date d'inscription : 30/11/2013
Age : 67
Localisation : Blonay - Suisse
Re: LUA, c'est quoi ???
Hello
Pas simple la mise en oeuvre de ces scripts.
Qui pourrait faire un tuto pas à pas ?
Problème 1 :
je souhaite faire tourner un script en continu (là pas de souci) et terminer le script sur une condition mais le comportement n'est pas conforme à la doc.
Le script (simple !)
<<
local cnt = 0
local function init()
local switch_value = 0
end
local function run(event)
cnt = cnt +1
-- lcd.lock()
-- lcd.clear()
lcd.drawText(10,10,"Hello World",MIDSIZE)
switch_value = getValue(94)
lcd.drawNumber(80,20, switch_value, MIDSIZE)
if switch_value > 100 then
lcd.drawText(180,10,"BYE",MIDSIZE)
cnt = 0
lcd.drawNumber(180,20, cnt, MIDSIZE)
return 1 -- Exit
else
lcd.drawText(180,10,"RUN",MIDSIZE)
lcd.drawNumber(180,20, cnt, MIDSIZE)
return 0
end
end
return { run=run, init=init }
>>
En positionnant SC à 100%, la valeur est bien 1024 mais le script ne s'arrête pas ! (virez le cnt=0 de cette branche pour voir que le programme fait toujours appel à la fonction run) alors qu'il le devrait.
Problème 2 :
Comment retrouver un écran standard Taranis propre !
lcd.DrawXXX incruste au dessus
Problème 3 :
Comment utiliser Companion OpenTX pour executer les script en simulation ?
C'est galère de débrancher / rebrancher la taranis à chaque petite modif.
Problème 4 :
Comment écrire une valeur vers une voie ? (ch1 à ch32)
Merci de votre aide, ça m'aidera énormément pour l'asservissement nacelle (le programme avance mais il me faut le tester par bloc)
Pas simple la mise en oeuvre de ces scripts.
Qui pourrait faire un tuto pas à pas ?
Problème 1 :
je souhaite faire tourner un script en continu (là pas de souci) et terminer le script sur une condition mais le comportement n'est pas conforme à la doc.
Le script (simple !)
<<
local cnt = 0
local function init()
local switch_value = 0
end
local function run(event)
cnt = cnt +1
-- lcd.lock()
-- lcd.clear()
lcd.drawText(10,10,"Hello World",MIDSIZE)
switch_value = getValue(94)
lcd.drawNumber(80,20, switch_value, MIDSIZE)
if switch_value > 100 then
lcd.drawText(180,10,"BYE",MIDSIZE)
cnt = 0
lcd.drawNumber(180,20, cnt, MIDSIZE)
return 1 -- Exit
else
lcd.drawText(180,10,"RUN",MIDSIZE)
lcd.drawNumber(180,20, cnt, MIDSIZE)
return 0
end
end
return { run=run, init=init }
>>
En positionnant SC à 100%, la valeur est bien 1024 mais le script ne s'arrête pas ! (virez le cnt=0 de cette branche pour voir que le programme fait toujours appel à la fonction run) alors qu'il le devrait.
Problème 2 :
Comment retrouver un écran standard Taranis propre !
lcd.DrawXXX incruste au dessus
Problème 3 :
Comment utiliser Companion OpenTX pour executer les script en simulation ?
C'est galère de débrancher / rebrancher la taranis à chaque petite modif.
Problème 4 :
Comment écrire une valeur vers une voie ? (ch1 à ch32)
Merci de votre aide, ça m'aidera énormément pour l'asservissement nacelle (le programme avance mais il me faut le tester par bloc)
Invité- Invité
Re: LUA, c'est quoi ???
Hello
pour utiliser companion opentx comme émulateur de scripts, il te suffit de créer une copie de la carte SD de ta radio sur ton ordinateur. Dans mon cas c'est le répertoire "Clone SD"
puis ouvrir companion opentx et renseigner le champ "chemin de structure de la carte SD" dans le menu Réglages/preferences,
dans mon cas, C:\Clone SD
Si le script fonctionne sur la radio, il doit être émulé de la même manière par le simulateur de Companion opentx
Pour le reste j'ai pas tout compris. J'ai testé ton script et dans l'ensemble il a l'air de fonctionner.
Il faudrait au moins que tu précises de quel type de script il s'agit et où tu l'as placé sur la carte SD.
En particulier, si tu l'as traité comme un script de modèle, il me semble normal que tu ne puisses pas l'interrompre.
pour utiliser companion opentx comme émulateur de scripts, il te suffit de créer une copie de la carte SD de ta radio sur ton ordinateur. Dans mon cas c'est le répertoire "Clone SD"
puis ouvrir companion opentx et renseigner le champ "chemin de structure de la carte SD" dans le menu Réglages/preferences,
dans mon cas, C:\Clone SD
Si le script fonctionne sur la radio, il doit être émulé de la même manière par le simulateur de Companion opentx
Pour le reste j'ai pas tout compris. J'ai testé ton script et dans l'ensemble il a l'air de fonctionner.
Il faudrait au moins que tu précises de quel type de script il s'agit et où tu l'as placé sur la carte SD.
En particulier, si tu l'as traité comme un script de modèle, il me semble normal que tu ne puisses pas l'interrompre.
Franck76- Messages : 189
Date d'inscription : 25/07/2013
Age : 53
Localisation : Rouen
Re: LUA, c'est quoi ???
Problème 3 : réglé
grace à tes conseils : tout était renseigné dns companion sauf que le chemin n'était pas bon !
Problème 1 : réglé
le script est copié de l'exemple de la doc. C'est bien un Model Script dans SCRIPT/MIXES/. En relisant 25 fois la doc, je pense à présent comprendre.
Je pensais que les modèles script s'arrêtaient si une valeur de retour non nulle est envoyée. Or non il semble que cela ne concerne que les one time script executé par un switch (physique ou logique)
Problème 2 : non réglé
le screen expliquera mieux. je veux virer ce que le script a écrit pour retrouver un écran "normal"
Problème 4 : non réglé
Je veux envoyer sur une voie une valeur qui est calculé par le programme.
Le pendant d'un SetValue qui n'existe pas :-(
En farfouillant le web, toujours rien trouvé pour cela
grace à tes conseils : tout était renseigné dns companion sauf que le chemin n'était pas bon !
Problème 1 : réglé
le script est copié de l'exemple de la doc. C'est bien un Model Script dans SCRIPT/MIXES/. En relisant 25 fois la doc, je pense à présent comprendre.
Je pensais que les modèles script s'arrêtaient si une valeur de retour non nulle est envoyée. Or non il semble que cela ne concerne que les one time script executé par un switch (physique ou logique)
Problème 2 : non réglé
le screen expliquera mieux. je veux virer ce que le script a écrit pour retrouver un écran "normal"
Problème 4 : non réglé
Je veux envoyer sur une voie une valeur qui est calculé par le programme.
Le pendant d'un SetValue qui n'existe pas :-(
En farfouillant le web, toujours rien trouvé pour cela
Invité- Invité
Re: LUA, c'est quoi ???
Je vois, tu as pris un exemple de script de type one time. Ce n'est pas ca qu'il faut
Si tu veux envoyer une valeur calculée vers une voie sans écrire sur l'écran, un script de modèle sera parfait. Car les valeurs de sortie, calculées par le script, deviennent automatiquement des sources de CH1 à CH32 dans le menu MIXER d'openTX. Pas besoin de programmer quoi que ce soit de plus
Si tu veux afficher quelque chose à l'écran, tu ne dois pas gérer ton script comme un script de modèle. Les Model Scripts ne sont pas faits pour cela. Je dirais qu'il vaut alors mieux utiliser un script de télémesure (même si tu ne t'en sers pas pour afficher des valeurs de télémesure).
Je ne sais pas comment faire les deux. Il existe d'autres sortes de scripts (function scripts, template scripts, ...) lesquels n'ont pas encore été définis.
Pour un exemple de model script, regarde l'exemple du script Delta Mixer
Attention, chaque script a un rôle et une architecture particulière, ainsi que certaines limitations.
Si tu veux envoyer une valeur calculée vers une voie sans écrire sur l'écran, un script de modèle sera parfait. Car les valeurs de sortie, calculées par le script, deviennent automatiquement des sources de CH1 à CH32 dans le menu MIXER d'openTX. Pas besoin de programmer quoi que ce soit de plus
Si tu veux afficher quelque chose à l'écran, tu ne dois pas gérer ton script comme un script de modèle. Les Model Scripts ne sont pas faits pour cela. Je dirais qu'il vaut alors mieux utiliser un script de télémesure (même si tu ne t'en sers pas pour afficher des valeurs de télémesure).
Je ne sais pas comment faire les deux. Il existe d'autres sortes de scripts (function scripts, template scripts, ...) lesquels n'ont pas encore été définis.
Pour un exemple de model script, regarde l'exemple du script Delta Mixer
Attention, chaque script a un rôle et une architecture particulière, ainsi que certaines limitations.
Franck76- Messages : 189
Date d'inscription : 25/07/2013
Age : 53
Localisation : Rouen
Re: LUA, c'est quoi ???
Dans l'exemple Delta Mixer, les 2 variables de sortie sont des variables d'affichage sur l'écran LUA/script concerné.
Elles n'influent pas sur les Voies de sortie.
J'ai revu le script pour prendre en compte 1 variable de sortie.
(Les noms de sorties sont limités à 4 caractères.)
J'ai bien l'affichage de ma variable de sortie (nommé ch16) mais rien sur la voie 16.
Je ne suis pas plus avancé :-(
Elles n'influent pas sur les Voies de sortie.
J'ai revu le script pour prendre en compte 1 variable de sortie.
(Les noms de sorties sont limités à 4 caractères.)
J'ai bien l'affichage de ma variable de sortie (nommé ch16) mais rien sur la voie 16.
Je ne suis pas plus avancé :-(
Invité- Invité
Re: LUA, c'est quoi ???
Bonsoir Belov
Pour écrire une commande sur voie il faut utiliser deux fonctions, avec la premiere on crée le mixage que l'on va passer a la fonction d'écriture
addMix(gazCH1, MIXSRC_FIRST_INPUT+defaultChannel(0), "Gaz")
fonction d'écriture
model.insertMix(channel, index, mix)
ce sont de fonctions utilisées dans wizard
ici
https://frskytaranis.forumactif.org/t881p120-nouvelle-version-opentx-200-dispo#9654
Pour écrire une commande sur voie il faut utiliser deux fonctions, avec la premiere on crée le mixage que l'on va passer a la fonction d'écriture
addMix(gazCH1, MIXSRC_FIRST_INPUT+defaultChannel(0), "Gaz")
fonction d'écriture
model.insertMix(channel, index, mix)
ce sont de fonctions utilisées dans wizard
ici
https://frskytaranis.forumactif.org/t881p120-nouvelle-version-opentx-200-dispo#9654
blonblon- Messages : 214
Date d'inscription : 25/03/2014
Age : 73
Localisation : pres d'Uzes (Gard)
Re: LUA, c'est quoi ???
Merci de ton aide Blonblon mais j'ai l'impression de tourner en rond
La fonction que tu présentes (model.insertMix) crée seulement un mixage par programme de la même manière que par Companion ou directement sur la taranis
Rien ne relie une variable (ou output) d'un script à un mixage
ou alors il y a un truc qui m'échappe.
Si tu sais comment faire, je veux bien que tu m'expliques pas à pas la démarche
La fonction que tu présentes (model.insertMix) crée seulement un mixage par programme de la même manière que par Companion ou directement sur la taranis
Rien ne relie une variable (ou output) d'un script à un mixage
ou alors il y a un truc qui m'échappe.
Si tu sais comment faire, je veux bien que tu m'expliques pas à pas la démarche
Invité- Invité
Re: LUA, c'est quoi ???
Je suis a peut prés au meme point que toi, modifier un programme existant j'y arrive plus ou moins facilement, il y a une doc LUA dont le lien a été donné dans une des pages sur LUA mais qui est nettement insufisante, il faut chercher malheureusement sur les sites anglophones, la je viens de trouver un exemple qui je pense joue des sons en fonction de la position du manche des gazs, ils utilisent ceci model.getCustomFunction(62), il manque les sons le fichier était trop volumineux
- Fichiers joints
blonblon- Messages : 214
Date d'inscription : 25/03/2014
Age : 73
Localisation : pres d'Uzes (Gard)
Re: LUA, c'est quoi ???
Les premiers fichiers son
- Fichiers joints
blonblon- Messages : 214
Date d'inscription : 25/03/2014
Age : 73
Localisation : pres d'Uzes (Gard)
Re: LUA, c'est quoi ???
Les CustomFunction sont les fonctions spéciales. Comme pour les mixages, cela reproduit le comportement de Companion ou de la Taranis.
Le programme EngSnd joue un son pour les accélérations et les ralentissements.
Avec la fonction getValue on a accès à tout en lecture.
J'arrive à afficher les variables pour output, pratique pour le debug (enfin si on peut dire pratique, cela reste très sommaire)
Mon programme de gestion de tilt semble correct mais il faut le tester en réel et là je suis bloqué. Damned !
En tout cas j'arrive à la même conclusion, la doc est imparfaite et sommaire.
Le programme EngSnd joue un son pour les accélérations et les ralentissements.
Avec la fonction getValue on a accès à tout en lecture.
J'arrive à afficher les variables pour output, pratique pour le debug (enfin si on peut dire pratique, cela reste très sommaire)
Mon programme de gestion de tilt semble correct mais il faut le tester en réel et là je suis bloqué. Damned !
En tout cas j'arrive à la même conclusion, la doc est imparfaite et sommaire.
Invité- Invité
Re: LUA, c'est quoi ???
Je pense avoir trouve la solution ici
http://openrcforums.com/forum/viewtopic.php?f=45&t=3722&start=30#p56127
Nom des variables en sortie = nom des mixages
Il manque juste les copies d'écran dans la doc
A tester mais là dodo
http://openrcforums.com/forum/viewtopic.php?f=45&t=3722&start=30#p56127
Nom des variables en sortie = nom des mixages
Il manque juste les copies d'écran dans la doc
A tester mais là dodo
Invité- Invité
Re: LUA, c'est quoi ???
Il faut malheureusement essayer, je pense qu'on ne risque pas grand chose, j'ai regardé le post en intégralité il y a des copies d'écran, a voir?.
Quel dommage que LUA ne puisse pas programmer Compagnion avec tout le confort du PC debugger pas a pas teste des variables, la ce serait le top, plutôt que de brancher/débrancher sans arret la radio pour les essais.
Quel dommage que LUA ne puisse pas programmer Compagnion avec tout le confort du PC debugger pas a pas teste des variables, la ce serait le top, plutôt que de brancher/débrancher sans arret la radio pour les essais.
blonblon- Messages : 214
Date d'inscription : 25/03/2014
Age : 73
Localisation : pres d'Uzes (Gard)
Re: LUA, c'est quoi ???
Belov a écrit:Je pense avoir trouve la solution ici
http://openrcforums.com/forum/viewtopic.php?f=45&t=3722&start=30#p56127
Nom des variables en sortie = nom des mixages
Ben c'est exactement ce que je t'ai dit dans mon post précédent : "un script de modèle sera parfait. Car les valeurs de sortie, calculées par le script, deviennent automatiquement des sources de CH1 à CH32 dans le menu MIXER d'openTX. Pas besoin de programmer quoi que ce soit de plus".
Et dans l'exemple que tu mets en lien, Elev1 et Elev2 ne sont pas les mixages mais bel et bien les sources.
Il y a pas mal de temps, j'ai testé et ca marchait très bien.
Maintenant, vu que les bibliothèques de fonctions évoluent vite (le script fourni initialement par B.SONGIS diffère légèrement de celui de la doc) il faudrait refaire l'essai avec le nouveau script. Pas de raison que cela ne marche pas
Franck76- Messages : 189
Date d'inscription : 25/07/2013
Age : 53
Localisation : Rouen
Re: LUA, c'est quoi ???
J'ai testé le script delta.lua fourni dans la doc et ca marche.
Placer le script delta.lua sur le répertoire clone de la carte SD dans SCRIPTS\MIXES, lancer le simulateur de companion OpenTX et appeler le script delta.lua dans le menu des scripts persos :
Renseigner les entrées et taux applicables, le script calcule les sorties mixées sur chaque élevon
Aller dans le menu des Mixeurs et choisir comme sources de CH1 et CH2 les sorties calculées par le script :
Et voilà :
Placer le script delta.lua sur le répertoire clone de la carte SD dans SCRIPTS\MIXES, lancer le simulateur de companion OpenTX et appeler le script delta.lua dans le menu des scripts persos :
Renseigner les entrées et taux applicables, le script calcule les sorties mixées sur chaque élevon
Aller dans le menu des Mixeurs et choisir comme sources de CH1 et CH2 les sorties calculées par le script :
Et voilà :
Franck76- Messages : 189
Date d'inscription : 25/07/2013
Age : 53
Localisation : Rouen
Re: LUA, c'est quoi ???
Au final dans Companion il faut choisir dans le mixage la sortie LUA1a qui correspond à la 1re variable de sortie du script LUA1, LUA1b à la 2e, etc.
Je me doutais bien qu'il y avait quelque chose là, puisque c'est le seul endroit où on a une référence à LUA
La doc pourrait être plus détaillée à ce niveau
Une bonne chose de faite
C'est secondaire, mais dans companion je suis toujours obligé de chercher et lancer le script de modele.
Je me doutais bien qu'il y avait quelque chose là, puisque c'est le seul endroit où on a une référence à LUA
La doc pourrait être plus détaillée à ce niveau
Une bonne chose de faite
C'est secondaire, mais dans companion je suis toujours obligé de chercher et lancer le script de modele.
Invité- Invité
Re: LUA, c'est quoi ???
Mon premier script utile : https://frskytaranis.forumactif.org/t1023p15-reglage-vitesse-sur-slider-acceleration-decceleration#9794
Invité- Invité
Sujets similaires
» Moi cest thomas
» Quoi acheter ???
» X4R SB on branche quoi ?
» [RESOLU] GPS - Pur quoi faire ?
» Elle à quoi en plus la Taranis plus
» Quoi acheter ???
» X4R SB on branche quoi ?
» [RESOLU] GPS - Pur quoi faire ?
» Elle à quoi en plus la Taranis plus
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum