Le forum français des radios OpenTX ou FrOS
Le forum français des radios OpenTX ou FrOS
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le Deal du moment : -21%
LEGO® Icons 10329 Les Plantes Miniatures, ...
Voir le deal
39.59 €

Widget pour TX16S affichant la valeur d'une seule cellule d'un pack.

4 participants

Aller en bas

Widget pour TX16S affichant la valeur d'une seule cellule d'un pack. Empty Widget pour TX16S affichant la valeur d'une seule cellule d'un pack.

Message par Heisenberg Ven 12 Mai 2023 - 19:42

Bonjour tous.

Ci-dessous et en image, ce que je vous propose, regardez bien en haut à droite de la barre de tâche.

Widget pour TX16S affichant la valeur d'une seule cellule d'un pack. 2023-011

Explications :
Je souhaitais en utilisant un capteur de tension de pack de propulsion, avoir la valeur moyenne d'un seul élément visible rapidement sans devoir faire un calcul mental.
Je n'ai pas trouvé de solution simple, j'ai donc codé un petit widget qui affiche cette tension moyenne et la tension minimale atteinte durant le vol.

Limitation :
Uniquement valable pour la barre de tâches car c'est seulement ce dont j'ai besoin, mais avec une petite modif, vous pourriez l'afficher partout.

Appel à l'aide :
J'ai essayé de retransmettre cette valeur sous forme de capteur mais il semble qu'il soit impossible de créer un capteur avec un widget. Si quelqu'un a une solution simple sans devoir installer un second script ni utilisation de Gvar en gardant la possibilité de définir le nombre d'éléments via ce widget et de renvoyer le calcul sous forme de capteur, je suis preneur.

Installation :
Dézippez l'archive OneCell.zip
Le répertoire [OneCell] est à placer dans le répertoire [WIDGETS].
Appui long sur le bouton en bas à gauche.
Appui sur le bouton Page précédente.
Sélectionner Top bar Setup.
* Sélectionner une de 4 cellules du haut et cliquez sur Entrée.
Sélectionner "Select Widget" et cliquez sur Entrée.
Sélectionner "1Cell" et cliquez sur Entrée, et vous arrivez dans Widget settings.
* TextColor je ne vous explique pas.
* CellCount : Le nombre d'éléments du pack.
* VSensor : Le capteur de tension (Souvent VFAS).
* VSensorMin : Le même capteur suivi du "-" (Souvent VFAS-).
* Shadow : Affiche le texte avec un ombrage.

Widget pour TX16S affichant la valeur d'une seule cellule d'un pack. 2023-012

Et c'est tout.

Le fichier est dispo ici : Widget OneCell

Vos remarques, choppes de bière, bitcoins, ou codes de vos cartes bleues sont bienvenues si vous aimez Cool

------------------------
Le code pour ceux qui voudraient l'analyser en ligne :


---- #########################################################################
---- #                                                                       #
---- # OneCell widget script for TX16S                                       #
---- # Version 1.0                                                           #
---- #                                                                       #
---- # Copyright (C) OpenTX                                                  #
-----#                                                                       #
---- # License GPLv2: http://www.gnu.org/licenses/gpl-2.0.html               #
---- #                                                                       #
---- # This program is free software; you can redistribute it and/or modify  #
---- # it under the terms of the GNU General Public License version 2 as     #
---- # published by the Free Software Foundation.                            #
---- #                                                                       #
---- # This program is distributed in the hope that it will be useful        #
---- # but WITHOUT ANY WARRANTY; without even the implied warranty of        #
---- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         #
---- # GNU General Public License for more details.                          #
---- #                                                                       #
-----# Published on https://frskytaranis.forumactif.org by Heisenberg        #
---- # ToDo : Converting the 1Cel value to virtual sensor                    #
---- #                                                                       #
---- #########################################################################

local options = {
 { "TextColor", COLOR, WHITE },
 { "CellCount", VALUE, 2, 2, 14},
 { "VSensor", SOURCE, 0},     -- default setting below to 'VFAS'
 { "VSensorMin", SOURCE, 0},  -- default setting below to 'VFAS-'
 { "Shadow", BOOL, 0 }
}
--------------------------------------------------------------------
local function create(zone, options)
 local wgt = {
   zone=zone,
   options=options,
   VSensorValue = 0,
   VSensorMinValue = 0,
   CellCountValue = 0,
   VCelValue = 1,
   VCelMinValue = 1,
   --CreaSensor = 0,
   --CreaSensor2 = 0

 }
 
 if wgt.options.VSensor == 0 then
   wgt.options.VSensor = "VFAS"
 end
 if wgt.options.VSensorMin == 0 then
   wgt.options.VSensorMin = "VFAS-"
 end
 
 return wgt
end
---------------------------------------------------------------------
local function update(wgt, options)
 if (wgt == nil) then return end
 wgt.options = options
 
 if wgt.options.Sensor == 0 then
   wgt.options.Sensor = "VFAS"
 end
 if wgt.options.SensorMin == 0 then
   wgt.options.SensorMin = "VFAS-"
 end
end
---------------------------------------------------------------------
local function background(wgt)
 local VSensorValue = getValue(wgt.options.VSensor)
 local VSensorMinValue = getValue(wgt.options.VSensorMin)
 local CellCountValue = wgt.options.CellCount
 local VCelValue = VSensorValue/CellCountValue
 local VCelMinValue = VSensorMinValue/CellCountValue
 
 --local CreaSensor = setTelemetryValue(0xb20, 0, 0xF3, VCelValue, 0, 0, "Cel")     -- Doesn't work
 --local CreaSensor2 = setTelemetryValue(0xb20, 0, 0xF4, VCelMinValue, 0, 0, "Cel-") -- Doesn't work

 return
end
---------------------------------------------------------------------
local function refreshZoneTiny(wgt)
 local VSensorValue = getValue(wgt.options.VSensor)
 local VSensorMinValue = getValue(wgt.options.VSensorMin)
 local CellCountValue = wgt.options.CellCount
 local VCelValue = VSensorValue/CellCountValue
 local VCelMinValue = VSensorMinValue/CellCountValue
 lcd.setColor(CUSTOM_COLOR, wgt.options.TextColor)
 
 --local CreaSensor = setTelemetryValue(0xb20, 0, 0xF3, VCelValue, 0, 0, "Cel")     -- Doesn't work
 --local CreaSensor2 = setTelemetryValue(0xb20, 0, 0xF4, VCelMinValue, 0, 0, "Cel-") -- Doesn't work

 
 if wgt.options.Shadow == 0 then  
   lcd.drawText(wgt.zone.x+34, wgt.zone.y, "1 Cell", CENTER + SMLSIZE + CUSTOM_COLOR)  
   lcd.drawText(wgt.zone.x+34, wgt.zone.y+13, string.format("%2.2fV", VCelValue), CENTER + SMLSIZE + CUSTOM_COLOR);
   lcd.drawText(wgt.zone.x+34, wgt.zone.y+25, string.format("(%2.2fV-)", VCelMinValue), CENTER + SMLSIZE + CUSTOM_COLOR);
 else
   lcd.drawText(wgt.zone.x+34, wgt.zone.y, "1 Cell", CENTER + SMLSIZE + CUSTOM_COLOR + SHADOWED);
   lcd.drawText(wgt.zone.x+34, wgt.zone.y+13, string.format("%2.2fV", VCelValue), CENTER + SMLSIZE + CUSTOM_COLOR + SHADOWED);
   lcd.drawText(wgt.zone.x+34, wgt.zone.y+25, string.format("(%2.2fV-)", VCelMinValue), CENTER + SMLSIZE + CUSTOM_COLOR + SHADOWED);
 end
end
---------------------------------------------------------------------
function refresh(wgt)
 if wgt.zone.w  >  65 and wgt.zone.h >  35 then refreshZoneTiny(wgt)
 end
end

return { name="1Cell", options=options, create=create, update=update, refresh=refresh, background=background }
Heisenberg
Heisenberg

Masculin Messages : 1494
Date d'inscription : 30/07/2015
Age : 51
Localisation : A l'étranger

http://tinyurl.com/TARANIS-HEISENBERG

Revenir en haut Aller en bas

Widget pour TX16S affichant la valeur d'une seule cellule d'un pack. Empty Re: Widget pour TX16S affichant la valeur d'une seule cellule d'un pack.

Message par aero-tx Lun 15 Mai 2023 - 10:59

Très intéressant de voir comment on construit un widjet. Merci pour le partage.
aero-tx
aero-tx

Masculin Messages : 29
Date d'inscription : 04/07/2014
Age : 82
Localisation : Orne

Revenir en haut Aller en bas

Widget pour TX16S affichant la valeur d'une seule cellule d'un pack. Empty Re: Widget pour TX16S affichant la valeur d'une seule cellule d'un pack.

Message par pierrotm777 Dim 21 Mai 2023 - 17:28

Bonjour,
Voici un widget que j'utilise à chaqun de mes vols.
On peut afficher toutes les cellules mais aussi, courant/tension.
Son intérêt est qu'il retourne en % vocalement ce qu'il reste dans l'accu.
Les voix sont en anglais mais j'ai modifié le widget afin qu'il supporte le français. J'ai bien sûr créé les alarmes en conséquence.
Cordialement,
Pierre

pierrotm777

Masculin Messages : 7
Date d'inscription : 12/12/2013
Age : 64
Localisation : Bordeaux

Revenir en haut Aller en bas

Widget pour TX16S affichant la valeur d'une seule cellule d'un pack. Empty Re: Widget pour TX16S affichant la valeur d'une seule cellule d'un pack.

Message par psychotik2k3 Dim 21 Mai 2023 - 17:58

pierrotm777 a écrit:Bonjour,
Voici un widget que j'utilise à chaqun de mes vols.
On peut afficher toutes les cellules mais aussi, courant/tension.
Son intérêt est qu'il retourne en % vocalement ce qu'il reste dans l'accu.
Les voix sont en anglais mais j'ai modifié le widget afin qu'il supporte le français. J'ai bien sûr créé les alarmes en conséquence.
Cordialement,
Pierre
il manque le lien/piece jointe. Merci Widget pour TX16S affichant la valeur d'une seule cellule d'un pack. 2258904616
psychotik2k3
psychotik2k3

Masculin Messages : 112
Date d'inscription : 15/08/2017
Age : 50
Localisation : Grenoble

Revenir en haut Aller en bas

Widget pour TX16S affichant la valeur d'une seule cellule d'un pack. Empty Re: Widget pour TX16S affichant la valeur d'une seule cellule d'un pack.

Message par pierrotm777 Dim 21 Mai 2023 - 21:55


pierrotm777

Masculin Messages : 7
Date d'inscription : 12/12/2013
Age : 64
Localisation : Bordeaux

Revenir en haut Aller en bas

Widget pour TX16S affichant la valeur d'une seule cellule d'un pack. Empty Re: Widget pour TX16S affichant la valeur d'une seule cellule d'un pack.

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum