OTX LUA Scripts zum testen

coolchaos

Erfahrener Benutzer
@Kaldi

TOP - SCRIPT

Leider fliege ich nur Fläche bin für Quadros zu Alt.
.... aber habe ein GPS-Script in Arbeit, mal schauen ob ich
da was rauslesen kann, man muß das Rad ja nicht 2x erfinden :p

Danke für die Anregungen ;)

PS: Definition: Ein Quadrocopter ist ein Gerät endlicher Größe niemals Perfekt und verschlingt unendlich viel Geld ... kicher
 

Jogijo

Erfahrener Benutzer
......Dabei ist mir u.a. aufgefallen, das die GPS Höhe und die barometrische Höhe (FrSky Modul) mächtig auseinander driften. Und wenn man dann das ganze noch in Google via Companion exportieren läßt, kommt wieder was anderes raus:

FrSky Höhensensor: 36 m
GPS Höhenmessung: 107 m
nach Export in Google Earth: 74 m
Selbstverständlich ist das so!

Die barometrische Höhe zeigt die Höhe ausgehend von dem letzten Telemetrie Reset.
GPS Höhe ist die Höhe über dem Meeresspiegel und generell nicht sonderlich genau.
Die Google Earth Höhe ist, je nach Einstellung, die Höhe über Grund da in GE Höhenmodelle hinterlegt sind.

Es handelt sich also um 3 komplett unterschiedliche Werte.
 

JoeBuster

Erfahrener Benutzer
Ah OK, Danke für die Erklärung.

Das habe ich nicht gewußt (Google Earth) bzw. nicht richtig drüber nachgedacht. Das PKW Navi zeigt an der Abflugstelle auch 70 m ü.n.N an - und das Auto fliegt ja auch nicht :D (passt im übrigen mit den topografischen Karten von dieser Stelle überein)

70 GPS Meter + 36 Meter barometrische Höhe = 106 m

Ich würde sagen die GPS Werte vom NAZA V2 passen mit ihren 107 Meter schon recht gut.

Also ist der aussagekräftigste Wert die barometrische Höhe, welche allerdings nur über das FrSky Variometer und nicht über das Zaggometry / NAZA V2 zu bekommen ist.
 

california

Erfahrener Benutzer
@coolchaos - mal wieder ganz nach meinem Geschmack... *daumenhoch*

So - hier dann auch mein Beitrag... ist nicht die finale Version, aber damit sollten schon einige was anfangen können.

Anhang anzeigen 104586





Inhalt:
- komplette Modelldatei Phantom 2 mit Zaggometrie (incl. H3-3D Gimbal)
- Soundfiles
- Grafiken
- LUA Script

Die Verzeichnisstruktur ist schon so, wie sie sein soll - also im Prinzip kann man das 1:1 auf die SD-Card übernehmen. Modell über den Companion auf den Sender kopieren (eepe-Datei)

dann mal viel Spaß damit. Im Script stehen einige Kommentare - ich habe es leider zeitlich nicht geschafft, es komplett zu "bereinigen", bzw. zu organisieren - aber vielleicht hilft gerade das weiter... ;)

wird noch ein paar Updates geben - vor allem die Modelldatei ist mittlerweile stark modifiziert.
Hallo Kaldi, irgendwie stehe ich auf dem Schlauch. In welches Verzeichnis der SD-Karte müssen die Bilder. Der Lua-Script läuft, aber ohne Graphik. Ich habe deine Bilder alle in den BMP Ordner kopiert.
 

krysly

Erfahrener Benutzer
@Kaldi:
Ich habe zwar keine Zaggometry aber ich werde mir deine Vorlage vermutlich nehmen um diese auf Mavlink2FrSky anzupassen :)

Mir ist da aber noch folgendes aufgefallen:

sat = 6 -- DEBUGGING
fix = 3 -- DEBUGGING

Sollte das nicht komplett aus dokumentiert werden da ansonsten immer fest 6 und 3 stehen bleibt ?

-- sat = 6 -- DEBUGGING
-- fix = 3 -- DEBUGGING

Gruß
Christian
 

Kaldi

...es funktioniert!
Hallo Kaldi, irgendwie stehe ich auf dem Schlauch. In welches Verzeichnis der SD-Karte müssen die Bilder. Der Lua-Script läuft, aber ohne Graphik. Ich habe deine Bilder alle in den BMP Ordner kopiert.
in welchen BMP Ordner? Wie gesagt - die Struktur in der ZIP-Datei ist schon so, wie sie sein muss


Code:
BMP
LOGS
MODELS
SCRIPTS
 |- [COLOR=#FF0000]BMP
    |-kaldi
[/COLOR]SOUNDS
|-de
|-en
TEMPLATES
 

Kaldi

...es funktioniert!
@Kaldi:
Ich habe zwar keine Zaggometry aber ich werde mir deine Vorlage vermutlich nehmen um diese auf Mavlink2FrSky anzupassen :)

Mir ist da aber noch folgendes aufgefallen:

sat = 6 -- DEBUGGING
fix = 3 -- DEBUGGING

Sollte das nicht komplett aus dokumentiert werden da ansonsten immer fest 6 und 3 stehen bleibt ?

-- sat = 6 -- DEBUGGING
-- fix = 3 -- DEBUGGING

Gruß
Christian

ja - richtig. Das meinte ich mit "noch nicht fertig aufgeräumt" :D

so ist der Lerneffekt deutlich größer, muss ich feststellen - könnte ja sagen, dass das Absicht war, aber nein, das habe ich übersehen - Danke für den Hinweis und gut, dass ich immer Kommentare dahinter schreibe

habe die Download-Datei angepasst... und neu hochgeladen
 
Zuletzt bearbeitet:
@Kaldi
Vielen Dank für das Script. Die Kommentare sind für mich als LUA-Neuling sehr hilfreich! Vereinfacht das Anpassen an die eigenen Bedürfnisse ;)
Weiter so! *Däumchen hoch*
 

california

Erfahrener Benutzer
@Kaldi
Vielen Dank für das Script. Die Kommentare sind für mich als LUA-Neuling sehr hilfreich! Vereinfacht das Anpassen an die eigenen Bedürfnisse ;)
Weiter so! *Däumchen hoch*
Kann ich nur bestätigen. So langsam komme ich auch dahinter. Habe früher eigentlich viel in BASIC programmiert. Lua ist ja eigentlich nicht viel anders.
 
Auch von meiner Seite vielen Dank für die tollen Scripte.

Ich verwende gerade das aktuellste Script von coolchaos, habe jedoch das Problem, das bei mir die Varioanzeige nicht geht. Dabei geht es nicht nur um die Pfeildarstellung, sondern meine Taranis scheint den Befehl getValue("vario") einfach nicht auszuführen. Habe das auch mal im Rahmen anderer Scripte probiert, aber es wird immer 0 angezeigt, ohne jegliche Veränderung, egal wie sich das Vario verhält. Die Höhenabfrage funktionier hingegen ganz normal.

Hat jemand eine mögliche Lösung für diese Problem? Habe mir heute die aktuellste Firmware geladen, bin also auf 2.0.12, aber keine Veränderung :(


Darüber hinaus noch eine andere Frage: Gibt es einen einfachen Befehl, mit dem man die aktuelle Flugphase abfragen kann, so wie das zum Beispiel mit der Softwareversion und dem Modellnamen geht? Die Frage wurde hier schon vor einiger Zeit gestellt, aber leider nicht beantwortet.

Gruß Martin
 

coolchaos

Erfahrener Benutzer
Hi
gehen die Pfeile hoch und Runter ?
Das geht nur wenn auch ein Vario angeschlossen ist und der Empfänger Daten bringt
ansonsten mal bitte "v-speed" testen und in der "lua ref" nach der genauen Bezeichnung der Variablen suchen.
v.jpg
 
Zuletzt bearbeitet:

skydrone

Erfahrener Benutzer
@coolchaos - mal wieder ganz nach meinem Geschmack... *daumenhoch*

So - hier dann auch mein Beitrag... ist nicht die finale Version, aber damit sollten schon einige was anfangen können.

Anhang anzeigen 104586

Inhalt:
- komplette Modelldatei Phantom 2 mit Zaggometrie (incl. H3-3D Gimbal)
- Soundfiles
- Grafiken
- LUA Script

Die Verzeichnisstruktur ist schon so, wie sie sein soll - also im Prinzip kann man das 1:1 auf die SD-Card übernehmen. Modell über den Companion auf den Sender kopieren (eepe-Datei)

dann mal viel Spaß damit. Im Script stehen einige Kommentare - ich habe es leider zeitlich nicht geschafft, es komplett zu "bereinigen", bzw. zu organisieren - aber vielleicht hilft gerade das weiter... ;)

wird noch ein paar Updates geben - vor allem die Modelldatei ist mittlerweile stark modifiziert.

EDIT: Debugging SatModus entfernt...

Sehr sehr geiles Script. Vielen Dank fürs teilen.

Ich habe es jetzt soweit an meine Anlage angepasst, nur ein Problem habe ich noch.
Wenn ich die Abfrage deines Failsave-Schalters lösche, da ich ihn nicht brauche, erscheint nur ein leerer Display auf der Taranis.
Als wenn das fehlen dieser Zeile das ganze Script zerstört.

Woran kann das liegen?


Gruß Max
 

Kaldi

...es funktioniert!
Sehr sehr geiles Script. Vielen Dank fürs teilen.

Ich habe es jetzt soweit an meine Anlage angepasst, nur ein Problem habe ich noch.
Wenn ich die Abfrage deines Failsave-Schalters lösche, da ich ihn nicht brauche, erscheint nur ein leerer Display auf der Taranis.
Als wenn das fehlen dieser Zeile das ganze Script zerstört.

Woran kann das liegen?


Gruß Max

an welcher Stelle - wo der Flugmodus angezeigt wird? Oder bleibt der Bildschirm komplett leer, dann ist ein Fehler im Script.

D.h. du benutzt nur einen 3 Stufen Schalter für den Flugmodus, aber kein RTH und kein IOC?

schick mir mal dein "bearbeitetes" Script und deine Schalterbelegung.
 
Zuletzt bearbeitet:

skydrone

Erfahrener Benutzer
Das Script selber ist so geblieben.

Geändert habe ich nur den Teil:

-----------------------------
-- Definition der Schalter --
-----------------------------

local failsafe = getValue("sf")
local iocmode = getValue("sc")
local flightmode = getValue("sg")
local showvalue = getValue("sd")
local gimbal = getValue("ch5")
------------------------------------------------------
Ich nutze statt des "Manuell"-Modi den RtH auf Stellung 3 meines GPS Schalters und IOC brauche ich nicht.

Wenn ich aber nun die erste Zeile lösche, geht gar nichts mehr. Genauso verhält es sich, wenn ich hier die letzten Zeilen
entfernen möchte:

if (flightmode > 0) and (failsafe < 0) then
lcd.drawText(20, 2, "GPS Pos. Hold", DBLSIZE)
end

if (flightmode > -1024) and (flightmode < 1024) and (failsafe < 0) then
lcd.drawText(20, 2, "ATTI", DBLSIZE)
end

if (flightmode < 0) and (iocmode > -1024) and (iocmode <1024) and (failsafe < 0) then
lcd.drawText(20, 4, "Return To Home", BLINK+MIDSIZE)

end

if (flightmode < 0) and (iocmode < 0) and (failsafe < 0) then
lcd.drawText(20, 4, "Return To Home", BLINK+MIDSIZE)

end

if (flightmode < 0) and (iocmode > 0) and (failsafe < 0) then
lcd.drawText(20, 4, "Return To Home", BLINK+MIDSIZE)

end

if failsafe > 0 then
lcd.drawText(20, 4, "Return To Home", BLINK+MIDSIZE)
end

Immer wenn ich die IOC und FS-Sachen entfernen möchte, stürzt alles ab.
 

Kaldi

...es funktioniert!
nimm die beiden roten Zeilen raus:
Code:
  -----------------------------
  -- Definition der Schalter --
  -----------------------------
  
[COLOR=#ff0000]  local failsafe     = getValue("sf")
  local iocmode     = getValue("sg")[/COLOR]
  local flightmode     = getValue("se")
  local showvalue    = getValue("sd")
  local gimbal         = getValue("ch5")
und ersetze den Flightmodepart hiermit:

Code:
    ----------------------------
    -- Flightmode (Flugmodus) --
    ----------------------------
        lcd.drawPixmap(3, 2, "/SCRIPTS/BMP/kaldi/fmode.bmp")
    

         if (flightmode > 0) then
           lcd.drawText(20, 4, "Return To Home", BLINK+MIDSIZE)
         end

          if (flightmode > -1024) and (flightmode < 1024) then
           lcd.drawText(20, 2, "ATTI", DBLSIZE)
          end

          if (flightmode < 0)  then
           lcd.drawText(20, 2, "GPS", DBLSIZE)
          end
evtl musst Du nur die Textzeilen umsortieren - je nach gewünschter Schalterstellung
 

helle

Erfahrener Benutzer
Hy skydrohne,

du nimmst oben 2 locale Variablen raus, die gibt es dann nicht mehr.
Fragst aber im Programm diese Variablen per "and" weiterhin ab.

Das muss chrashen.


Helle
 
Hi
gehen die Pfeile hoch und Runter ?
Das geht nur wenn auch ein Vario angeschlossen ist und der Empfänger Daten bringt
ansonsten mal bitte "v-speed" testen und in der "lua ref" nach der genauen Bezeichnung der Variablen suchen.
Anhang anzeigen 104709
Natürlich habe ich ein Vario angeschlossen, sonst wäre die Lösung natürlich sehr nahe liegend. In der von mir im Menü Telemetrie erstellten Telemetrieseite werden dann auch bei den Parametern Alt und Vspd richtigerweise die Höhe und auch die Höhenänderung, bzw das Vario normal angezeigt, sprich positive Werte, wenn ich steige und negative, wenn ich sinke. Funktioniert also alles wie es soll.

Das Problem ist bei mir jedoch, dass der Variowert nicht im LuaScript angezeigt wird. Und da dieser Wert, warum auch immer nicht im Script verfügbar ist, wird entsprechend eine 0 angezeigt und die Pfeile gehen somit natürlich auch nicht.
Der Befehl getValue("altitude") geht tadellos und mir wird die Höhe angezeigt. Bei getValue("vario") wird nur eine 0 angezeigt, obwohl der Wert in der Taranis verfügbar ist.
Ich habe mal noch im lua ref ein paar Sources ausprobiert, zum Beispiel getValue("MIXSRC_Ail"), aber auch da passiert nichts, obwohl die Werte in der Taranis verfügbar sind.
Auch ein getValue("Vspd") ändert nichts, so dass nach wie vor eine 0 angezeigt wird.
Ich komme hier nicht wirklich weiter :(

Gruß Martin
 

coolchaos

Erfahrener Benutzer
Hi @East-Field

Ich bin gestern auch mal geflogen (das Wetter war ja TOP)
Auch ich konnte keine Werte sehen :confused:

Nun gut da muß ich noch mal suchen woran das liegt.

Wenn ich den Fehler gefunden habe werde ich ein Update posten .... ok ?

Wobei ... ich habe das auch nur mal so als Test gemacht!
Wenn ich fliege kann ich kaum auf das Display schauen wenn ich das mache
liegt mein Hotliner Laser-V1 (steigt mit knapp 80 m/s "ca.120 Amp. an 6S") im Dreck ...... kicher ... kicher

Ich bin auch kein Funkenhochhalter!:D

Aber ich werde mein bestes geben ..... Ich hatte es nur mit Quelle z.B.."s1" am Simulator getestet und da geht es :cool:
 
Zuletzt bearbeitet:
FPV1

Banggood

Oben Unten