MicroPython PYB405 - C'est comme une Pyboard sauf que ça a un GPIO Raspberry-Pi
Est-ce que vous avez déjà entendu parler de la NADHAT PYB405?
La carte MicroPython NADHAT-PYB405 qui expose un port GPIO 40 broches compatible avec le Raspberry-Pi , c'est comme une carte MicroPython originale mais avec quelques différences intéressantes:
C'est une bonne idée parce qu'il y a vraiment de l'intérêt pour un produit comme celui-là!
La PYB405 peut être utilisé de différentes façons
1) Exploiter des HATs avec MicroPython
Exposer un GPIO avec des fonctions compatibles Raspberry-Pi, c'est l'opportunité de brancher des HATs sur le microcontrôleur NADHAT-PYB405 et avec MicroPython. Comme les bus I2C, SPI et UART sont bien placés, cela permet d'exploiter de nombreux HAT directement avec le microcontrôleur. Du coup, un même hat peut être utilisé dans deux environnement différents (sur le Pi mais aussi avec la PYB405).
2) Développement MicroPython sur Raspberry-Pi
Utiliser la carte NADHAT PYB405 pour faire des développements MicroPython depuis un Raspberry-Pi Zero ou un Pi.
Cela permet de constituer un environnement de développement MicroPython complètement intégré, il ne reste plus qu'à brancher un moniteur et un clavier/souris et c'est parti. Dans ce cas, le croisement des lignes RX/TX est tout indiqué
Dans ce cas de figure, la carte NADHAT PYB405 devient un puissant microcontrôleur pouvant être dédicacé à des tâches spécifiques et venant, de la sorte, épauler un Raspberry-Pi dans ses tâches de plus haut niveau.
3) Faire du développement STM32 avec Raspberry-pi
Plutôt destiné aux utilisateurs avancés, il est possible de préparer une chaîne de développement OpenOCD sur le Raspberry-Pi. Cet environnement permettra de télécharger/téléverser et déboguer, depuis le Raspberry-Pi, le logiciel développé pour STM32. Le Raspberry-Pi devient alors une sonde JTAG.
Ce qui est admirable dans tout cela, c'est que MicroPython lui-même est un logiciel STM32 et que, par conséquent, il devient possible de le déboguer en SWD avec un Raspberry-Pi :-)
Frédéric de Garatronic aura certainement l'occasion d'écrire un article à ce sujet.
Tout cela est rendu possible car la broche nRst du microcontrôleur est branché sur la broche 15 (GPIO 22) du Rasberry-Pi. Cette entorse à la compatibilité GPIO qui permet à un Raspberry-Pi de réinitialisé la carte MicroPython (un mal nécessaire pour faire des développement OpenOCD).
Le PYB405 présente un autre connecteur d'intérêt
La carte dispose d'un second connecteur 12 points nommé CN2 (à coté du connecteur microSD).
Celui-ci propose:
Pour convertir la lecture analogique en tension, il faut exploiter le procéder suivant:
Les 4 sorties sont des transistors à collecteurs ouverts commandé par les 4 LEDs de couleurs. Soit OUT1 à OUT4 respectivement commandés par LED(1) à LED(4). A noter aussi les couleurs des LEDs qui sont respectivement Rouge, Vert, Orange, Bleu.
Un transistor à collecteur ouvert agit "comme un interrupteur" qui permet de connecter (ou non) un périphérique/charge à la masse. C'est un peu comme couper (ou remettre) l'alimentation d'un appareil en enlevant le fil branché sur le pôle négatif de l'alimentation (j'insiste... le pôle négatif!).
Un transistor permet de contrôler des éléments plus puissant comme des moteurs ou relais (attention: 100mA max!!!) et le fait qu'il soit en collecteur ouvert permet de commander ces charges avec une tension supérieure comme 12v (50v max!!).
Envie d'en savoir plus
Il y a encore tellement à dire ) propos de la PYB405.... n'hésitez pas à consulter les liens suivants:
Chouette, nous allons pouvoir explorer plus avant les possibilités offertes par MicroPython.
Source: NadHAT PYB405 disponible chez MCHobby |
- Un connecteur avec 4 sorties (collecteur ouvert 100mA) + 4 entrées (tolérantes 16V)
- Un connecteur pour pile bouton (pour toujours rester à l'heure!)
- Un bouton pour activer la mode DFU (facilite la mise-à-jour)
- Un format pHat (donc près a visser sur les Pi et hats avec des entretoises)
C'est une bonne idée parce qu'il y a vraiment de l'intérêt pour un produit comme celui-là!
La PYB405 peut être utilisé de différentes façons
1) Exploiter des HATs avec MicroPython
Exposer un GPIO avec des fonctions compatibles Raspberry-Pi, c'est l'opportunité de brancher des HATs sur le microcontrôleur NADHAT-PYB405 et avec MicroPython. Comme les bus I2C, SPI et UART sont bien placés, cela permet d'exploiter de nombreux HAT directement avec le microcontrôleur. Du coup, un même hat peut être utilisé dans deux environnement différents (sur le Pi mais aussi avec la PYB405).
2) Développement MicroPython sur Raspberry-Pi
Utiliser la carte NADHAT PYB405 pour faire des développements MicroPython depuis un Raspberry-Pi Zero ou un Pi.
Cela permet de constituer un environnement de développement MicroPython complètement intégré, il ne reste plus qu'à brancher un moniteur et un clavier/souris et c'est parti. Dans ce cas, le croisement des lignes RX/TX est tout indiqué
Dans ce cas de figure, la carte NADHAT PYB405 devient un puissant microcontrôleur pouvant être dédicacé à des tâches spécifiques et venant, de la sorte, épauler un Raspberry-Pi dans ses tâches de plus haut niveau.
3) Faire du développement STM32 avec Raspberry-pi
Plutôt destiné aux utilisateurs avancés, il est possible de préparer une chaîne de développement OpenOCD sur le Raspberry-Pi. Cet environnement permettra de télécharger/téléverser et déboguer, depuis le Raspberry-Pi, le logiciel développé pour STM32. Le Raspberry-Pi devient alors une sonde JTAG.
Ce qui est admirable dans tout cela, c'est que MicroPython lui-même est un logiciel STM32 et que, par conséquent, il devient possible de le déboguer en SWD avec un Raspberry-Pi :-)
Frédéric de Garatronic aura certainement l'occasion d'écrire un article à ce sujet.
Tout cela est rendu possible car la broche nRst du microcontrôleur est branché sur la broche 15 (GPIO 22) du Rasberry-Pi. Cette entorse à la compatibilité GPIO qui permet à un Raspberry-Pi de réinitialisé la carte MicroPython (un mal nécessaire pour faire des développement OpenOCD).
Le PYB405 présente un autre connecteur d'intérêt
La carte dispose d'un second connecteur 12 points nommé CN2 (à coté du connecteur microSD).
Celui-ci propose:
- 4 entrées tolérantes 20 volts
- 4 sorties de puissance 100mA max
Pour convertir la lecture analogique en tension, il faut exploiter le procéder suivant:
adc = ADC('X19') val = adc.read() # ex: val=1113 volt = 3.3 * (val/4095) * 5.54 # soit 4.96 volts
Les 4 sorties sont des transistors à collecteurs ouverts commandé par les 4 LEDs de couleurs. Soit OUT1 à OUT4 respectivement commandés par LED(1) à LED(4). A noter aussi les couleurs des LEDs qui sont respectivement Rouge, Vert, Orange, Bleu.
# Activer sortie OUT1 pyb.LED(1).on() # Désactiver sortie OUT3 pyb.LED(3).off()
Un transistor à collecteur ouvert agit "comme un interrupteur" qui permet de connecter (ou non) un périphérique/charge à la masse. C'est un peu comme couper (ou remettre) l'alimentation d'un appareil en enlevant le fil branché sur le pôle négatif de l'alimentation (j'insiste... le pôle négatif!).
Un transistor permet de contrôler des éléments plus puissant comme des moteurs ou relais (attention: 100mA max!!!) et le fait qu'il soit en collecteur ouvert permet de commander ces charges avec une tension supérieure comme 12v (50v max!!).
Envie d'en savoir plus
Il y a encore tellement à dire ) propos de la PYB405.... n'hésitez pas à consulter les liens suivants:
- Fiche produit de la NadHAT PYB405 (MCHobby, Français)
- Page d'accueil de la documentation PYB405 (GitHub)
- Dépôt GitHub NadHat PYB (GitHub Garatronic)
Schéma de la carte. - Dépôt MicroPython pour la PYB405 (GitHub Garatronic)
Vous permet de compiler votre propre version de MicroPython pour la PYB405. - Présentation de la NADHAT PYB405 (Garatronic)
Chouette, nous allons pouvoir explorer plus avant les possibilités offertes par MicroPython.
Bonjour,
RépondreSupprimerEn + des 4 entrées analogiques du connecteur cn2, la pyb405 en a-t-elle d'autres sur le gpio40 (bien que le rpi n'en ait pas) ??
Et confirmez moi que la pyb405 peut fonctionner de façon autonome sans rpi ?
Enfin quelle carte recommandez-vous pour rajouter des fonction wifi+ble ?
Merci bcp. PhA
La PYB405 est totalement autonome et n'a pas besoin d'un RPi pour fonctionner. Le processeur dispose de plusieurs entrées analogique et il y en a plusieurs sur le GPIO me semble t'il. Si vous ne le trouvez pas sur la documentation collectés chez MCHobby alors n'hésitez pas a ouvrir un ticket sur forum.mchobby.be
SupprimerPour du WiFi+Ble, la meilleure option est peut etre de se diriger vers un ESP32 sous MicroPython ou Pyboard-D
La PYB405 est totalement autonome et n'a pas besoin d'un RPi pour fonctionner. Le processeur dispose de plusieurs entrées analogique et il y en a plusieurs sur le GPIO me semble t'il. Si vous ne le trouvez pas sur la documentation collectés chez MCHobby alors n'hésitez pas a ouvrir un ticket sur forum.mchobby.be
RépondreSupprimer