Telecommande paulmann

Salut à tous,

J’ai acheté une télécommande Paulmann , elle s’est intègre parfaitement à Zigbee2Mqtt.
Par contre j’essaie de décoder une explication de la doc pour les couleurs.

  • hue = extendedhue * 360 / 65536 % 360

Je comprend le début du calcul mais à partir du % 360 je ne vois pas comment calculer.
Mon idée est de recuperer les valeur RGB pour mon ruban led commandé par un shelly.

Merci

% doit être l’opération mathématique Modulo càd le reste de la division euclidienne entre les deux nombres concernés par l’opération.

1 « J'aime »

Merci Yves , mais là tu m’as perdu.
J’ai l’impression d’être arriver seulement jusqu’au portail de l’école.
Aurais-tu un exemple ou un site pour que je puisse mettre à jour mon cerveau de l’époque :sweat_smile:

Ps: Google étant normalement mon ami, j’ai fait une recherche . Bon je confirme le portail de l’école avait un cadenas. Mais pas grave j’ai commence à regarder et je pense que je vais y arriver.

4%2, le résultat est le reste de la division de 4 part 2. soit 0, car il reste 0.
5%2 = 1.

x%360 sera donc un nombre entre 0 et 359.

1 « J'aime »

J’avais prémédité mon coup pour maintenir le suspens
:smiling_imp:

Voir le message de @Jeandhom pour l’exemple clair.

Exercice de contrôle de connaissances :
a) combien y a t il d’heures (nombre entier bien sur) dans 5843 minutes ?
b) combien de minutes résiduelles restera il une fois les heures entières déduites de ces 5843 minutes?
Vous avez 30 minutes pour répondre :wink:

Attention spoiler :
Et bien aussi surprenant que cela paraisse la réponse se fait en quelques secondes
a) Soit M le nombre de minutes total (ici 5843) et H le nombre d’heures entières dans ce paquet la réponse de Normand est H= [M/60] (temps de réponse 1 s, avec [] la fonction mathématique "partie entière")
b) Soit m le nombre de minutes résiduelles la réponse est
m= M%60 (temps de réponse 1s là encore)

On peut même s’assurer que la réponse est correcte en faisant la petite vérif suivante M = H*60 + m

Bon si on veut les chiffres et sans calculette mathématique ou logiciel ad hoc il faut un peu plus de temps mais la réponse formelle est bien celle citée.

Bonjour. Je déterre ce sujet car je ne suis pas persuadé de bien comprendre comment exploiter cette télécommande dont je viens de faire l’acquisition (promo chez Leroy Merlin qui semble arrêter la marque).
Je parviens bien à exploiter dans un scénario le déclencheur [Button]. Suivant la doc (Paulmann 500.67 control via MQTT | Zigbee2MQTT), je parviens bien à récupérer certains événement de la liste ( on , off , toggle , brightness_step_up , brightness_step_down , color_temperature_move , color_move , brightness_stop , brightness_move_down , brightness_move_up , color_loop_set , enhanced_move_to_hue_and_saturation), mais je ne vois pas comment exploiter les données concernant la température et la couleur (hue). Je vois bien la valeurs varier quand j’interagis avec la télécommande, mais je ne sais pas comment exploiter ces données …

    "action_enhanced_hue": 31623,
    "action_hue": 173.7,
    "action_saturation": 254,
    "action_transition_time": 1,
    "action_rate": 100,
    "action_color_temperature": 286

Par ailleurs, les boutons 1, 2 et 3 ne semblent pas exploités …
@freeddoo ou toute autre personne qui aurait intégré cette télécommande dans z2m, comment avec vous fait pour récupérer ces données, SVP ?

Salut,

Les boutons fonctionnent suivant l’appuie suivant : 1 + P , 2 + P et 3 + P.
Tu auras action_group avec 1,2 ou 3
Pour la couleur j’ai abandonné , je n’ai pas réussi. Si un jour quelqu’un me ou nous trouve la solution…

1 « J'aime »

Hello,

Cela ne peut pas vous aider ?

RGB/xy Color Conversion

Salut à tous ,
J’ai reussi à utiliser les couleurs de la télécommande

// Récupérer la valeur de la teinte Hue de l'ampoule Philips Hue
$hue = cmd::byString('#[Laboratoire][Paulmann][Hue]#')->execCmd();

// Récupérer la valeur de la teinte Hue de l'ampoule Philips extendedhue
$extendedhue = cmd::byString('#[Laboratoire][Paulmann][ex_hue]#')->execCmd();

// Convertir la teinte en degrés
$angle = $extendedhue * 360 / 65536 % 360;

// Convertir l'angle en couleur RGB
if ($angle >= 0 && $angle < 60) {
    $r = 255;
    $g = round($angle * 255 / 60);
    $b = 0;
} elseif ($angle >= 60 && $angle < 120) {
    $r = round(255 - ($angle - 60) * 255 / 60);
    $g = 255;
    $b = 0;
} elseif ($angle >= 120 && $angle < 180) {
    $r = 0;
    $g = 255;
    $b = round(($angle - 120) * 255 / 60);
} elseif ($angle >= 180 && $angle < 240) {
    $r = 0;
    $g = round(255 - ($angle - 180) * 255 / 60);
    $b = 255;
} elseif ($angle >= 240 && $angle < 300) {
    $r = round(($angle - 240) * 255 / 60);
    $g = 0;
    $b = 255;
} else {
    $r = 255;
    $g = 0;
    $b = round(255 - ($angle - 300) * 255 / 60);
}

// Mettre à jour la couleur de l'ampoule Philips Hue en RGB et affichage dans le log

$scenario->setLog('R: ' . $r);
$scenario->setLog('G: ' . $g);
$scenario->setLog('B: ' . $b);
$hex1 = sprintf("#%02x%02x%02x", $r, $g, $b);
$scenario->setLog('RGB: ' . $hex1);

// Affectation de la couleur dans une variable

$scenario->setData('RGB telecommande' , $hex1);

Code à ameliorer je pense.
J’utilise ma variable dans un message pour l’envoyer à mon ampoule.