Outils pour utilisateurs

Outils du site


issue182:micro-ci_micro-la

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
issue182:micro-ci_micro-la [2022/06/28 08:39] d52frissue182:micro-ci_micro-la [2022/06/30 16:10] (Version actuelle) andre_domenech
Ligne 3: Ligne 3:
 He had found a new driver library for the Raspberry Pi Pico that was supposed to handle the NeoPixel devices a bit better than the “standard” statemachine version that we have used in the past. However, he was having a problem on his system, where, when he ran the example program, he set the number of LEDs to 24, but only 18 ever lit. That seemed very strange to me, so I started looking into his issue.** He had found a new driver library for the Raspberry Pi Pico that was supposed to handle the NeoPixel devices a bit better than the “standard” statemachine version that we have used in the past. However, he was having a problem on his system, where, when he ran the example program, he set the number of LEDs to 24, but only 18 ever lit. That seemed very strange to me, so I started looking into his issue.**
  
-Dans mon article de ce mois sur Python, j'ai écrit : « Comme la plupart de ceux qui viennent du Texas, nous avons tendance à « changer de cheval en cours de route », comme on dit, et ce mois-ci, j'ai bien peur de devoir le faire ». Cela s'applique même à l'article « Micro-ci micro-là » de ce mois. J'essaie très fort d'être cohérent, mais lorsque des problèmes surviennent avec des lecteurs et/ou des utilisateurs, j'essaie de partager des informations qui pourraient aider d'autres lecteurs, surtout lorsque le sujet est en rapport avec le thème des articles. Le mois dernier, j'ai dit que j'allais développer le projet de la boussole. Mon ami norvégien, Halvard, m'a contacté hier pour me faire part d'un problème concernant sa bague NeoPixel, pour lequel j'ai essayé de l'aider, et j'ai pensé que je devais partager ça avec vous.+Dans l'article de ce mois sur Python, j'ai écrit : « Comme la plupart de ceux qui viennent du Texas, nous avons tendance à "changer de cheval en cours de route", comme on dit, et ce mois-ci, j'ai bien peur de devoir le faire ». Cela s'applique même à l'article « Micro-ci micro-là ». J'essaie très fort d'être cohérent, mais lorsque des problèmes surviennent avec des lecteurs et/ou des utilisateurs, j'essaie de partager des informations qui pourraient aider d'autres lecteurs, surtout lorsque le sujet est en rapport avec le thème des articles. Le mois dernier, j'ai dit que j'allais développer le projet de la boussole. Mon ami norvégien, Halvard, m'a contacté hier pour me faire part d'un problème concernant son anneau NeoPixel, pour lequel j'ai essayé de l'aider, et j'ai pensé que je devais partager ça avec vous.
  
 Il avait trouvé une nouvelle bibliothèque de pilotes pour le Raspberry Pi Pico qui était censée gérer les périphériques NeoPixel un peu mieux que la version statemachine « standard » que nous avons utilisée dans le passé. Cependant, il avait un problème sur son système, où, quand il a exécuté le programme d'exemple, il a réglé le nombre de LED à 24, mais seulement 18 se sont allumées. Cela m'a semblé très étrange et j'ai donc commencé à examiner son problème. Il avait trouvé une nouvelle bibliothèque de pilotes pour le Raspberry Pi Pico qui était censée gérer les périphériques NeoPixel un peu mieux que la version statemachine « standard » que nous avons utilisée dans le passé. Cependant, il avait un problème sur son système, où, quand il a exécuté le programme d'exemple, il a réglé le nombre de LED à 24, mais seulement 18 se sont allumées. Cela m'a semblé très étrange et j'ai donc commencé à examiner son problème.
Ligne 22: Ligne 22:
 Il m'a indiqué le dépôt du pilote qui est https://github.com/shreyask21/neopixel_rp2040. Comme je le fais habituellement, j'ai téléchargé le dépôt sous forme de fichier zip plutôt que de cloner le dossier. Une fois que je l'ai téléchargé, je l'ai décompressé et j'ai copié les fichiers pertinents dans un dossier de travail. J'avais déjà installé le RPi Pico avec l'anneau NeoPixel et le pack de batteries en essayant de travailler sur la suite de l'article du mois dernier, donc je pensais être prêt. En utilisant Thonny, j'ai copié la bibliothèque de pilotes et l'exemple sur le Pico et je me suis lancé. Il m'a indiqué le dépôt du pilote qui est https://github.com/shreyask21/neopixel_rp2040. Comme je le fais habituellement, j'ai téléchargé le dépôt sous forme de fichier zip plutôt que de cloner le dossier. Une fois que je l'ai téléchargé, je l'ai décompressé et j'ai copié les fichiers pertinents dans un dossier de travail. J'avais déjà installé le RPi Pico avec l'anneau NeoPixel et le pack de batteries en essayant de travailler sur la suite de l'article du mois dernier, donc je pensais être prêt. En utilisant Thonny, j'ai copié la bibliothèque de pilotes et l'exemple sur le Pico et je me suis lancé.
  
-La première chose que j'ai faite a été de changer le pilote 'In pindans l'appel de fonction d'instanciation.+La première chose que j'ai faite a été de changer le pilote « In pin » dans l'appel de fonction d'instanciation.
  
 led = neopixel_rp2040.neopixel(LEDS=2, PIN=16) led = neopixel_rp2040.neopixel(LEDS=2, PIN=16)
Ligne 43: Ligne 43:
 J'ai volontairement maintenu le nombre de DEL à 2, juste pour vérifier que le programme fonctionnait. Le problème de Halvard était que s'il réglait le nombre de DEL à 24, seules les 18 premières fonctionnaient. Pour que les 24 s'allument, il devait régler les DEL à 32. J'ai volontairement maintenu le nombre de DEL à 2, juste pour vérifier que le programme fonctionnait. Le problème de Halvard était que s'il réglait le nombre de DEL à 24, seules les 18 premières fonctionnaient. Pour que les 24 s'allument, il devait régler les DEL à 32.
  
-Bref, revenons à mon histoire. Lorsque j'ai essayé d'exécuter l'exemple, rien ne s'est produit. J'étais très confus. Il s'est avéré que mon bloc-piles (qui utilise des piles rechargeables) était à court d'énergie. Après avoir passé deux heures à remplacer les électrons dans les piles, j'ai réessayé.+Bref, revenons à mon histoire. Lorsque j'ai essayé d'exécuter l'exemple, rien ne s'est produit. J'étais très confus. Il s'est avéré que mon bloc piles (qui utilise des piles rechargeables) était à court d'énergie. Après avoir passé deux heures à remplacer les électrons dans les piles, j'ai réessayé.
  
 Le programme d'exemple a fonctionné sans problème avec les deux LED (sauf pour la luminosité) et j'ai ensuite fait un test avec 12 LED. Là encore, cela a fonctionné. J'ai ensuite pris une grande respiration et j'ai essayé les 24. Encore une fois, ça a marché. Le programme d'exemple a fonctionné sans problème avec les deux LED (sauf pour la luminosité) et j'ai ensuite fait un test avec 12 LED. Là encore, cela a fonctionné. J'ai ensuite pris une grande respiration et j'ai essayé les 24. Encore une fois, ça a marché.
  
-Quand je dis que la luminosité était un problème, je dis simplement que ces fichues choses sont TROP LUMINEUSES pour mes vieux yeux. J'avais l'impression de regarder directement dans une ampoule halogène ! J'ai donc informé Halvard de mes progrès et lui ai suggéré de vérifier son bloc-piles.+Quand je dis que la luminosité était un problème, je dis simplement que ces fichues choses sont TROP LUMINEUSES pour mes vieux yeux. J'avais l'impression de regarder directement dans une ampoule halogène ! J'ai donc informé Halvard de mes progrès et lui ai suggéré de vérifier son bloc piles.
  
  
Ligne 60: Ligne 60:
 Il s'est avéré qu'Halvard avait acheté une version plus récente du PixelRing qui est RGBW, et pas seulement RGB. Alors que l'on pourrait penser (d'un côté de votre cerveau) que les pilotes RGB fonctionneraient avec les ensembles NeoPixel RGBW, ils le font, mais pas tout à fait correctement. Il s'est avéré qu'Halvard avait acheté une version plus récente du PixelRing qui est RGBW, et pas seulement RGB. Alors que l'on pourrait penser (d'un côté de votre cerveau) que les pilotes RGB fonctionneraient avec les ensembles NeoPixel RGBW, ils le font, mais pas tout à fait correctement.
  
-En essayant de comprendre pourquoi les choses n'étaient pas tout à fait correctes, je suis tombé sur ce site web https://forums.electricimp.com/t/neopixel-strips-rgb-vs-rgbw/4212/8. Il contient une longue discussion qui finit par tout expliquer. Peter, l'un des posteurs, l'expliqué dans un commentaire très court mais important.+En essayant de comprendre pourquoi les choses n'étaient pas tout à fait correctes, je suis tombé sur ce site web https://forums.electricimp.com/t/neopixel-strips-rgb-vs-rgbw/4212/8. Il contient une longue discussion qui finit par tout expliquer. Peter, l'un des posteurs, l'dit dans un commentaire très court mais important.
  
 « Les 'Neopixels' RVBW sont un contrôleur différent, SK6812, mais il semble que le protocole actuel soit très similaire (sauf qu'il y a 32 bits par LED au lieu de 24). Il semble que cela vaille la peine de partir de la bibliothèque WS2812 et de faire quelques modifications. » « Les 'Neopixels' RVBW sont un contrôleur différent, SK6812, mais il semble que le protocole actuel soit très similaire (sauf qu'il y a 32 bits par LED au lieu de 24). Il semble que cela vaille la peine de partir de la bibliothèque WS2812 et de faire quelques modifications. »
Ligne 89: Ligne 89:
 pixels = Neopixel(10, 0, 0, "RGBW") pixels = Neopixel(10, 0, 0, "RGBW")
  
-Notez que vous pouvez utiliser n'importe quel ordre de RGB/RGBW que vous voulez (GRB, WRGB, GRB, RGWB ...). Ceci ne représente que l'ordre des données envoyées à la bande de LED ; toutes les fonctions fonctionnent toujours avec l'ordre RGBW. L'ordre exact des LED doit être indiqué sur l'emballage de votre bande de LED. (Ma BTF-lights sk6812 indique GRBW). »+Notez que vous pouvez utiliser n'importe quel ordre de RGB/RGBW que vous voulez (GRB, WRGB, GRB, RGWB ...). Cela ne représente que l'ordre des données envoyées à la bande de LED ; toutes les fonctions agissent toujours avec l'ordre RGBW. L'ordre exact des LED doit être indiqué sur l'emballage de votre bande de LED. (Ma BTF-lights sk6812 indique GRBW). »
  
  
Ligne 122: Ligne 122:
 Comme toujours, Pin fait référence à la broche IO, pas à la broche physique. Comme toujours, Pin fait référence à la broche IO, pas à la broche physique.
  
-La distribution est livrée avec quatre programmes d'exemple qui montrent les capacités du pilote et je dois admettre qu'ils fonctionnent bien, à la fois pour moi et pour Halvard - qui les a également testés et ils ont bien fonctionné pour lui quand il a modifié l'appel d'initialisation.+La distribution est livrée avec quatre programmes d'exemples qui montrent les capacités du pilote et je dois admettre qu'ils fonctionnent bien, à la fois pour moi et pour Halvard - qui les a également testés. Ils ont bien fonctionné pour lui quand il a modifié l'appel d'initialisation.
  
  
issue182/micro-ci_micro-la.1656398344.txt.gz · Dernière modification : 2022/06/28 08:39 de d52fr