LUA Script umprogrammieren?

    • LUA Script umprogrammieren?

      Moin Leute,
      ich denke, dass einige von euch die PIDs über die Taranis einstellen.
      Ich gehöre auch dazu, da ich PID tuning LOS mache.
      Dabei stört mich eins gewaltig. Wenn z.B. von dem Wert 10 auf 0 möchte, dann braucht man eine gefühlte Ewigkeit. Und dann hat man nicht mal die Garantie, ob der Wert übernommen wird.

      Besser wäre folgendes. Um so länger man den Knopf drückt, um so größer sollten die Sprünge werden. nach Zeit x vielleicht auch ganze Zahlen.

      Das Script kann man mit jedem beliebigen Editor öffnen.

      ist einer unter uns, der den Code ergänzen kann?
    • Könnte gehen. Relevant ist ab Zeile 817:

      Quellcode

      1. -- editing value
      2. elseif gState == EDITING then
      3. if (event == EVT_EXIT_BREAK) or (event == EVT_ENTER_BREAK) then
      4. gState = PAGE_DISPLAY
      5. elseif event == EVT_PLUS_FIRST or event == EVT_PLUS_REPT or event == EVT_ROT_RIGHT then
      6. incValue(1)
      7. elseif event == EVT_MINUS_FIRST or event == EVT_MINUS_REPT or event == EVT_ROT_LEFT then
      8. incValue(-1)
      9. end
      10. end
      Wenn ich das Event "EVT_PLUS_REPT" richtig interpretieren, erkennt man also wenn die Taste gedrückt gehalten wird. Dann müsste man nur noch in einer globalen Variable einen Wert speichern, der bei gedrückt halten erhöht und bei "incValue" dazuaddiert wird. Bzw. bei Minus dann subtrahiert.
      Habe das mal stümperhaft eingebaut, ist aber KOMPLETT ungetestet und mit Lua habe ich nicht wirklich Erfahrung. Habe keine große Lust das jetzt auf meinen Quads zu testen, kann aber gerne jemand weiterführen.

      Änderungen:

      Quellcode

      1. -- mod editing speed
      2. addToIncValue = 0


      Quellcode

      1. -- editing value
      2. elseif gState == EDITING then
      3. -- increase added value when holding down plus / minus button
      4. if (event == EVT_PLUS_REPT or event = EVT_MINUS_REPT) then
      5. if (addToIncValue < 10) then
      6. addToIncValue = addToIncValue + 1
      7. end
      8. else
      9. addToIncValue = 0
      10. end
      11. -- take action
      12. if (event == EVT_EXIT_BREAK) or (event == EVT_ENTER_BREAK) then
      13. gState = PAGE_DISPLAY
      14. elseif event == EVT_PLUS_FIRST or event == EVT_PLUS_REPT or event == EVT_ROT_RIGHT then
      15. incValue(1 + addToIncValue)
      16. elseif event == EVT_MINUS_FIRST or event == EVT_MINUS_REPT or event == EVT_ROT_LEFT then
      17. incValue(-1 - addToIncValue)
      18. end
      19. end
      Alles anzeigen
      Dateien
      • KissFC_mod.zip

        (5,59 kB, 24 mal heruntergeladen, zuletzt: )