Frsky Tandem X20 met Ethos OS

Discussie in 'Model elektronica' gestart door GJVO, 14 mei 2021.

  1. ruudlucke6010

    ruudlucke6010

    Lid geworden:
    16 sep 2015
    Berichten:
    35
    Locatie:
    Heerde
    Dank Wim, gelukkig simpel te doen, alleen wel vreemd dat deze binnen een jaar leeg is.
     
  2. alm

    alm

    Lid geworden:
    20 jun 2015
    Berichten:
    957
    Locatie:
    Hellevoetsluis
    Het is dezelfde bug als die in OpenTX zat en in OpenTX 2.3.14 is opgelost. Het lijkt erop dat dezelfde denkfout is gemaakt als met de code die in OpenTX zat en daar met het schrijven van de code van Ethos dezelfde fout is gemaakt. Iets dat gezien de betrokkenheid van een vooraanstaande OpenTX developer niet ondenkbaar is... ;)
     
  3. Vlcjeroen

    Vlcjeroen

    Lid geworden:
    23 jul 2016
    Berichten:
    270
    Locatie:
    Veendam
    Soms helpt het om even de accu er uit en er opnieuw in te doen
     
  4. eigenwijs

    eigenwijs

    Lid geworden:
    21 jul 2012
    Berichten:
    59
    Locatie:
    Beneden de rivieren
    Ik heb vraag mbt LUA scripting op de X20. Ik weet niet of dit in dit topic thuis hoort maar mocht dat niet zo zijn dan maak ik er een nieuw topic over aan.
    Ik heb mezelf afgelopen week een X20 kado gedaan en ben daar de laatste twee dagen druk mee aan het stoeien. Wat een verschil met een Taranis en OpenTX. Hoewel ik best wel los was op OpenTX is het programeren van modellen en functies onder Ethos echt een eitje. De eerste 3 modellen zaten er met alle mixen e.d. in een middag in. Maar nu wil ik voor 1 model iets waarvoor ik in LUA aan het stoeien ben maar wat mij nog niet lukt.

    Ik heb een moment schakelaar onder op de zender (SWI) waarmee ik via een sticky logical switch een timer aan kan zetten en uit kan schakelen. Nou probeer ik in LUA een widget te maken waarin de timer loopt en de achtergrond van kleur veranderd afhankelijk van de staat van de logical switch (aan of uit)
    Het is me gelukt om met wat spieken bij anderen en de LUA manual om een widget te maken waarvan de achtergrond van kleur veranderd afhankelijk van de status van de logical switch. Maar ik krijg de timer niet in de display.
    Ik vraag de timer uit dmv model.getTimer("Flight") en vervolgens probeer ik hem te printen dmv lcd.drawNumber(2, 2, timer:Value(), CENTERED). Zonder resultaat.
    Een andere poging om het dmv local timer = model.getTimer("Flight") en dan printen dmv lcd.drawText(w / 2, (h - text_h)/ 2, widget.inactivetext, CENTERED). Maar dat gaf ook geen beeld.

    Een ander dingetje is dat de widget niet persistant is. Na uit en aanzetten van de zender is de config weg en moet ik hemopnieuw toekennen.

    Hieronder het LUA script. Misschien dat iemand anders ziet wat ik verkeerd doe? Ik ben (nog) geen LUA expert namelijk en doordat ik geen Windows in huis heb (alleen Linux) werkt de simulator helaas ook niet.

    Code:
    -- 0.1 First attempt
    
    local version = "0.1"
    local translations = {en="Colored Timer"}
    
    
    local function name(widget)
        local locale = system.getLocale()
        return translations[locale] or translations["en"]
    end
    
    local function create()
        return {color1=lcd.RGB(0xEA, 0x5E, 0x00), color2=lcd.RGB(0x00, 0x00, 0x00), source=nil, value=0, fontsize=FONT_STD}
    end
    
    local function paint(widget)
        if widget.source == nil then
            return
        end
    
        lcd.font(widget.fontsize)
    
        local w, h = lcd.getWindowSize()
    --    local text_w, text_h = lcd.getTextSize("")
         if widget.value < 0 then
            -- Inactive background
            lcd.color(widget.color2)
            lcd.drawFilledRectangle(0, 0, w, h)
        else
            -- Active background
            lcd.color(widget.color1)
            lcd.drawFilledRectangle(0, 0, w, h)
            print("lcd.color"..widget.color1) -- debug
        end
           -- Timer
        timer = model.getTimer("Flight")
        lcd.color(BLACK)
        lcd.drawNumber(2, 2, timer:Value(), CENTERED)
    end
    
    local function wakeup(widget)
        if widget.source then
            local newValue = widget.source:value()
            if widget.value ~= newValue then
                widget.value = newValue
                lcd.invalidate()
    end
        end
    end
    
    local function configure(widget)
        -- Source choice
        line = form.addLine("Source")
        form.addSourceField(line, nil, function() return widget.source end, function(value) widget.source = value end)
    
        -- Active Color
        line = form.addLine("Active Background Color")
        form.addColorField(line, nil, function() return widget.color1 end, function(color1) widget.color1 = color1 end)
        print("addColorField"..widget.color1) -- debug
    
        -- Inactive Color
        line = form.addLine("Inactive Background Color")
        form.addColorField(line, nil, function() return widget.color2 end, function(color2) widget.color2 = color2 end)
    
        -- Font (XS, S, STD, L, L Bold, XL, XXL)
        line = form.addLine("Font Size")
        form.addChoiceField(line, nil, {{"Extra Small", FONT_XS}, {"Small", FONT_S}, {"Standard", FONT_STD}, {"Large", FONT_L}, {"Large Bold", FONT_L_BOLD}, {"Extra Large", FONT_XL}, {"Extra Extra Large", FONT_XXL}}, function() return widget.fontsize end, function(value) widget.fontsize = value end)
    end
    
    local function read(widget)
        widget.source = storage.read("source")
        widget.fontsize = storage.read("fontsize")
        widget.color1 = storage.read("color1")
        widget.color2 = storage.read("color2")
    end
    
    local function write(widget)
        storage.write("source", widget.source)
        storage.write("fontsize", widget.fontsize)
        storage.write("color1", widget.color1)
        storage.write("color2", widget.color2)
    end
    
    local function init()
        system.registerWidget({key="status", name=name, create=create, paint=paint, wakeup=wakeup, configure=configure, read=read, write=write})
    end
    
    return {init=init}
    
     
  5. hoeby

    hoeby

    Lid geworden:
    20 jun 2010
    Berichten:
    991
    Dit is een bekende bug en er is al geruime tijd terug een update voor gekomen. Advies om de zender te updaten, anders is de nieuwe rtc batterij ook weer snel leeg
     
  6. Vlcjeroen

    Vlcjeroen

    Lid geworden:
    23 jul 2016
    Berichten:
    270
    Locatie:
    Veendam
    Ik zag dat inmiddels de multi module word ondersteund in ethos 1.3.2
    Ik heb deze op mijn x20s gezet
    Maar krijg het niet werkend
    Moet ik nog meer instaleren of instellen ?
     
  7. 00Steven

    00Steven

    Lid geworden:
    27 mrt 2009
    Berichten:
    303
    Locatie:
    Zonnegem , Oost-Vlaanderen , Belgiƫ
    Het enige wat ik kan denk is dat je in het menu RF system de externe modulle moet aan zetten.
     
  8. alm

    alm

    Lid geworden:
    20 jun 2015
    Berichten:
    957
    Locatie:
    Hellevoetsluis
    Er is ook een LUA script dat je moet installeren las ik op rcgroups, vermoedelijk kun je dat dan vinden bij FrSky op de website...
     
  9. Vlcjeroen

    Vlcjeroen

    Lid geworden:
    23 jul 2016
    Berichten:
    270
    Locatie:
    Veendam
    Dat had ik al gedaan maar dan werkt het nog niet maar de module krijgt wel stroom
     
  10. Vlcjeroen

    Vlcjeroen

    Lid geworden:
    23 jul 2016
    Berichten:
    270
    Locatie:
    Veendam
    Kan ik helaas niet vinden
     
  11. timmybeetle

    timmybeetle

    Lid geworden:
    3 sep 2010
    Berichten:
    498
    Locatie:
    Helden
  12. alm

    alm

    Lid geworden:
    20 jun 2015
    Berichten:
    957
    Locatie:
    Hellevoetsluis
  13. Vlcjeroen

    Vlcjeroen

    Lid geworden:
    23 jul 2016
    Berichten:
    270
    Locatie:
    Veendam
  14. Martin7876AA

    Martin7876AA

    Lid geworden:
    31 jan 2020
    Berichten:
    159
    Locatie:
    Capelle a/d IJssel
    Gewoon FRSKY ontvangers dan heb je dat geneuzel niet meer.
    Dure zender laten werken met crap recievers is vragen om problemen.
    Nieuwe FRSKY Tandem 6 kanaals kost 39 euri waar praat men dan over
     
  15. Emanuel

    Emanuel

    Lid geworden:
    9 feb 2011
    Berichten:
    1.740
    Locatie:
    Waalwijk
    Je mist de hele reden dat de Multiprotocol module ontwikkeld is, en dat is om met je dure zender ook allerlei andere RC speeltjes en BNF spul te kunnen besturen. Ook voor overstappers die nog goede ontvangers van hun oude merk in gebruik hebben kan het een uitkomst zijn.
     
    Vlcjeroen en alm vinden dit leuk.
  16. Vlcjeroen

    Vlcjeroen

    Lid geworden:
    23 jul 2016
    Berichten:
    270
    Locatie:
    Veendam
    Idd dat is precies de bedoeling

    Kan helaas het lua bestand niet vinden op de frsky site
     
  17. Vlcjeroen

    Vlcjeroen

    Lid geworden:
    23 jul 2016
    Berichten:
    270
    Locatie:
    Veendam
    Het werkt nu eindelijk
    Met hulp van mijn vliegmaat [​IMG]
     
  18. Tadango

    Tadango Forum veteraan

    Lid geworden:
    25 jun 2003
    Berichten:
    16.483
    Locatie:
    Groningen
    Dus eindelijk MPM support voor de X20? Dat maakt hem bijna interessant..
     
  19. Vlcjeroen

    Vlcjeroen

    Lid geworden:
    23 jul 2016
    Berichten:
    270
    Locatie:
    Veendam
    Idd het werkt nu precies hetzelfde als in de x9d [​IMG]
     
  20. R2D2

    R2D2

    Lid geworden:
    18 jun 2003
    Berichten:
    846
    Locatie:
    Veendam
    ik heb al een IRX4 Lite in bestelling staan bij Banggood, dan kan mijn oude Taranis met multimoduul in de verkoop.
    heb je trouwens je T-antenne niet overgezet op de multimoduul ?
     

Deel Deze Pagina