Ressources MicroPython
Vous trouverez dans cette section des liens vers des ressources en ligne utiles (ou indispensables !) pour l’apprentissage de MicroPython en général, et de MicroPython sur les microcontrôleurs STM32 en particulier. De nombreuses sources ou ressources recensées ici ont servi à la construction de ce site et sont utilisées au fil des tutoriels.
Environnements de programmation en ligne
Documentation et outils en ligne
Site officiel de MicroPython
- Page d’accueil du site
- Documentation générale sur MicroPython
- Exemple d’utilisation de la librairie pyb, basée sur un MCU STM32
- Les fonctions du firmware MicroPython spécifiques aux MCU STM32
- Les cartes de STMicroelectronics pour lesquelles un firmware MicroPyhton est disponible
- Code source du projet MicroPython
Site francophone dédié à MicroPython
Documentation technique des cartes NUCLEO et X-NUCLEO
Site officiel de Python 3
Documentation de l’application Android STBLESensor
Documentation de l’application smartphone NRF Connect for Mobile
Pilotes et exemples avancés pour MicroPython
- Des exemples de scripts MicroPython par Dave Hylands, notamment pour l’utilisation avancée des timers
- Bibliothèques et pilotes ESP8266 pour MicroPython, aisément adaptables aux STM32
- Une (superbe) synthèse de pilotes et bibliothèques pour MicroPython
- Bibliothèques et pilotes pour Adafruit CircuitPython, aisément adaptables aux STM32
Environnements de développement
L’IDE en ligne de la société Vittascience permet de programmer soit en utilisant des blocs (“façon scratch”) soit directement en code Python. Elle sait gérer un grand nombre de cartes à microncontrôleurs et de modules Grove (et autres). NB : Vous n’êtes pas obligés d’acheter des kits chez Vittascience pour utiliser cette IDE.
Protocoles IoT
- Le guide Internet de Steve sur le MQTT
- Le site The Things Network
- Un TP de M. Silanus sur LoRaWAN et TTN
- La plateforme en ligne TagoIO
- Le site “All About LoRa and LoRaWAN”
Ouvrages
- MicroPython et Pyboard, Python sur microcontrôleur : de la prise en main à l’utilisation avancée (Editions ENI) de Dominique MEURISSE
- LoRa - LoRaWAN et l’Internet des Objets de Sylvain MONTAGNY, Université de Savoie - Mont Blanc
Téléchargements
Editeurs de texte et de code
- Notepad++
- Thonny
- PyScripter
- Mu (avec le mode Pyboard)
- Geany
- Arduino Lab for MicroPython
Emulateurs de terminal série
Applications pour smartphones
- Pour créer facilement des applications sur smartphones Android ou Apple, l’environnement MIT App inventor
- Une application client BLE sur smartphone par STMicroelectronics : STBLESensor
- Une application client BLE sur smartphone, nRF Connect for Mobile (versions Android) ou nRF Connect for Mobile (versions Apple) de Nordic Semiconductor ASA
Firmwares MicroPython pour STM32 (depuis le site micropython.org)
- Pour la NUCLEO-WB55 : Firmware 1.24.1 au format “.hex”
- Pour la NUCLEO-L476 : Firmware 1.24.1 au format “.hex”
Vous trouverez les instructions pour les programmer sur cette page ou cette page.
NB : Nous nous concentrons ici sur deux cartes NUCLEO en particulier. Vous trouverez bien plus de firmwares pour les MCU de STMicroelectronics dans la section de téléchargement du site officiel de MicroPython.
Logiciels pour manipuler le système de fichiers MicroPython
-
Dans quelques circonstances (décrites au fil des tutoriels) vous pourrez être amené à effacer la mémoire flash du microcontrôleur STM32 sur votre carte NUCLEO, ou encore à mettre à jour les firmwares d’autres composants sur celle-ci. Pour ces opérations vous aurez besoin du logiciel STM32CubeProgrammer et de ce tutoriel.
-
Il existe sous Linux un outil en ligne de commande réalisé pour accéder à la mémoire flash des microcontrôleurs qui n’exposent pas leur contenu comme un disque virtuel (“mass storage”) tel une clef USB. Il s’agit de Rshell, que vous trouverez ici.
-
Sous Windows et Linux, l’application Ampy de Adafruit permet comme Rshell d’accéder au système de fichiers MicroPython pour y déposer des scripts, lire son contenu, etc.
Une page sur notre site est consacrée à Rshell et Ampy, ici.
Scripts MicroPython pour les tutoriels de ce site
-
Tutoriels pour démarrer avec la carte NUCLEO-WB55
Vous trouverez ici un fichier ZIP qui rassemble tous les codes sources présentés dans la section Démarrer avec la carte NUCLEO-WB55. -
Tutoriels avec la carte X-NUCLEO-IKS01A3
Vous trouverez ici un fichier ZIP qui rassemble tous les codes sources présentés dans la section Tutoriels avec la carte X-NUCLEO-IKS01A3. -
Tutoriels avec des modules externes (Grove, Adafruit, DFRobot, etc.)
Vous trouverez ici un fichier ZIP qui rassemble tous les codes sources présentés dans la section Tutoriels avec des modules externes. -
Tutoriels avec le BLE
Vous trouverez ici un fichier ZIP qui rassemble tous les codes sources présentés dans la section Tutoriels avec le BLE. -
Lampe connectée
Piloter une lampe à distance via BLE avec MIT App Inventor. Merci à Julien Launay ! -
Station météo
Prototyper une station météo inspirée du produit Ikea Klockis. Merci à Christophe Priouzeau & Gérald Hallet !