Différences entre versions de « FEATHER-M0-Bootloader-UF2 »

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
(Page créée avec « {{FEATHER-M0-EXPRESS-NAV}} == UF2 Bootloader Details == {{ambox|text=This is an information page for advanced users who are curious how we get code from your computer int... »)
 
 
(14 versions intermédiaires par le même utilisateur non affichées)
Ligne 2 : Ligne 2 :
  
 
== UF2 Bootloader Details ==
 
== UF2 Bootloader Details ==
{{ambox|text=This is an information page for advanced users who are curious how we get code from your computer into your Express board!}}
+
{{ambox|text=Ceci est une page d'information pour les utilisateurs avancés qui sont curieux d'apprendre comment Adafruit transfert du code depuis votre ordinateur vers la carte Express!}}
  
Adafruit Express and Gemma/Trinket M0 boards feature an improved bootloader that makes it easier than ever to flash different code onto the microcontroller. This bootloader makes it easy to switch between Microsoft MakeCode, CircuitPython and Arduino.
+
Les cartes Adafruit Express et Gemma/Trinket M0 embarque un bootloader amélioré qui facilité (plus que jamais) le flashage de différents code sur le microcontrôleur. Ce bootloader facilite la transition entre Microsoft MakeCode, CircuitPython et Arduino.
  
Instead of needing drivers or a separate program for flashing (say, {{fname|bossac}}, {{fname|jlink}} or {{fname|avrdude}}), one can simply '''drag a file onto a removable drive'''.
+
A la place d'avoir besoin d'un pilote ou d'un programme séparé pour flasher la carte (disons, {{fname|bossac}}, {{fname|jlink}} ou {{fname|avrdude}}), il est simplement possible '''de glisser des fichiers sur un lecteur amovible'''.
  
The format of the file is a little special. Due to 'operating system woes' you cannot just drag a binary or hex file (trust us, we tried it, it isn't cross-platform compatible). Instead, the format of the file has extra information to help the bootloader know where the data goes. The format is called UF2 (USB Flashing Format). Microsoft MakeCode generates UF2s for flashing and CircuitPython releases are also available as UF2. [https://github.com/Microsoft/uf2 You can also create your own UF2s from binary files using uf2tool, available here].
+
Le format du fichier est un peu spécial. A cause des 'incompatibilités des systèmes d'exploitation', il n'est pas possible de transférer un fichier binaire ou hex (selon les tests d'Adafruit, ce n'est pas cross-platform compatible). A la place, le format de fichier contient des informations complémentaires pour aider le bootloader à savoir où les données doivent être placées. Ce format est appelé UF2 (''USB Flashing Format'', format de flashage usb). Microsoft MakeCode génère de l'UF2 pour le flashage et les releases de CircuitPython sont également disponible en UF2. [https://github.com/Microsoft/uf2 Vous pouvez même créer votre propre UF2 depuis un fichier binaire en utilisant uf2tool, disponible ici].
  
The bootloader is '''also BOSSA compatible''', so it can be used with the Arduino IDE which expects a BOSSA bootloader on ATSAMD-based boards
+
Le bootloader est '''également compatible BOSSA''', il peut donc être utilisé avec Arduino IDE qui attend un bootloader BOSSA sur les carte à base d'ATSAMD.
  
For more information about UF2, [https://makecode.com/blog/one-chip-to-flash-them-all you can read a bunch more at the MakeCode blog], then [https://github.com/Microsoft/uf2 check out the UF2 file format specification]. Visit [https://github.com/adafruit/uf2-samd21 Adafruit's fork of the Microsoft UF2-samd bootloader GitHub repository] for source code and r[https://github.com/adafruit/uf2-samd21/releases/latest eleases of pre-built bootloaders].
+
Pour plus d'information sur UF2, [https://makecode.com/blog/one-chip-to-flash-them-all vous pouvez lire de nombreuses informations sur le blog MakeCode], puis [https://github.com/Microsoft/uf2 lire les spécifications du format UF2]. Voyez également [https://github.com/adafruit/uf2-samd21 le fork Adafruit de l'UF2 de Microsoft pour samd (dépôt GitHub)] pour le code source et [https://github.com/adafruit/uf2-samd21/releases/latest les releases des bootloaders pre-compilés].
  
{{ambox|text=The bootloader is not needed when changing your CircuitPython code. Its only needed when upgrading the CircuitPython core or changing between CircuitPython, Arduino and Microsoft MakeCode.}}
+
{{ambox|text=Le bootloader n'est pas nécessaire pour modifier votre code CircuitPython. Il est uniquement nécessaire pour faire une mise-à-jour du noyau CircuitPython, Arduino et Microsoft MakeCode.}}
  
 
== Activer le mode Booloader ==
 
== Activer le mode Booloader ==
 +
Déclencher le bootloader est la première étape pour charger un nouveau code sur la carte. Le bootloader est activé en double cliquant le bouton Reset. Une fois le bootloader activé, vous verrez la petite LED pulser en rouge et un nouveau lecteur apparaître sur votre ordinateur (lecteur finissant par '''BOOT'''). Par exemple, un feather propose un lecteur '''FEATHERBOOT''', tandis qu'un circuit CircuitPlayground proposera un lecteur '''CPLAYBOOT''', Trinket M0 présentera un lecteur '''TRINKETBOOT''' et Gemma M0 se présentera quand à lui comme '''GEMMABOOT'''
  
 +
Par la suite, quand le bootloader est actif, il changerea la couleur d'un ou plusieurs NeoPixel (présent sur la carte) pour indiquer le statut de la connexion:
 +
* Rouge pour déconnecté
 +
* Vert pour connecté.
  
The first step to loading new code onto your board is triggering the bootloader. It is easily done by double tapping the reset button. Once the bootloader is active you will see the small red LED fade in and out and a new drive will appear on your computer with a name ending in '''BOOT'''. For example, feathers show up as '''FEATHERBOOT''', while the new CircuitPlayground shows up as '''CPLAYBOOT''', Trinket M0 will show up as '''TRINKETBOOT''', and Gemma M0 will show up as '''GEMMABOOT'''
+
Si la carte est connectée mais montre un statut déconnecté alors essayez un autre câble USB. Certains câbles ne fournissent que des fils d'alimentations sans fils de données.
  
Furthermore, when the bootloader is active, it will change the color of one or more onboard neopixels to indicate the connection status, red for disconnected and green for connected. If the board is plugged in but still showing that its disconnected, try a different USB cable. Some cables only provide power with no communication.
+
Par exemple, voici un Feather M0 Express avec un programme utilisateur faisant tournoyer les couleurs de la LED Neopixel. Lorsque le bouton reset est double-cliqué (avec un interval d'une demi-seconde entre chaque clique) la LED NeoPixel sera deviendra verte pour pour indiquer que le bootloader est actif. Lorsque le bouton reset est cliqué une seule fois alors le ''programme utilisateur'' redémarre (et fait tournoyer la LED NeoPixel).
  
For example, here is a Feather M0 Express running a colorful Neopixel swirl. When the reset button is double clicked (about half second between each click) the NeoPixel will stay green to let you know the bootloader is active. When the reset button is clicked once, the 'user program' (NeoPixel color swirl) restarts.
+
{{ADFImage|FEATHER-M0-Bootloader-UF2-01.gif}}
  
 +
Si le bootloader ne peut pas démarrer, la LED NeoPixel devient rouge.
 +
 +
Cela pourrait signifier que le câble USB n'est pas bon, pas connecté sur un ordinateur, ou que le pilote ne peut pas énumérer la carte. Essayez d'abord un nouveau câble USB. Essayez ensuite un autre port USB sur votre ordinateur!
 +
 +
{{ADFImage|FEATHER-M0-Bootloader-UF2-02.gif}}
 +
 +
Une fois le bootloader en cours de fonctionnement, vous pouvez vérifier votre ordinateur. Vous devriez vois un nouveau lecteur USB...
 +
 +
{{ADFImage|FEATHER-M0-Bootloader-UF2-03.png}}
 +
 +
Une fois le bootloader connecté avec succès, vous pouvez ouvrir le lecteur et naviguer dans le système de fichier virtuel. Il ne s'agit pas du même système de fichier que vous utilisez avec CircuitPython ou Arduino. Il devrait y avoir 3 fichiers:
 +
 +
* '''CURRENT.UF2''' - Le contenu actuel de la mémoire Flash du MicroContrôleur.
 +
* '''INDEX.HTM''' - Lien vers Microsoft MakeCode.
 +
* '''INFO_UF2.TXT''' - Inclus l'info de version du bootloader. A inclure des les bugs reports.
 +
 +
{{ADFImage|FEATHER-M0-Bootloader-UF2-04.png}}
 +
 +
== Utiliser le Bootloader Mass Storage ==
 +
Pour flasher quelque-chose de nouveau, il suffit simplement de glisser/déposer des fichier UF2 sur le lecteur. Après la copie du fichier, le bootloader démarrera automatiquement la carte. Cela provoque généralement un message d'alerte informant l'utilisateur d'une "éjection non sécurisée du lecteur". Cela n'est pas un problème car le bootloader sait que toutes les données ont étés correctement coppiées dans la mémoire Flash.
 +
 +
{{ADFImage|FEATHER-M0-Bootloader-UF2-10.png}}
 +
 +
Vous pourriez avoir une alerte mentionnant que le fichier n'a pas été copié avec toutes ses propriétés. Cliquez simplement sur "'''Oui'''" (''Yes'').
 +
 +
{{ADFImage|FEATHER-M0-Bootloader-UF2-11.png}}
 +
 +
Le système pour également se plaindre que le lecteur à été éjecté sans précaution. Ne vous inquiété pas de cela. Le lecteur est seulement éjecté par le bootloader une fois qu'il a vérifié et complété le processus d'écriture du nouveau code.
 +
 +
== Utiliser le Bootloader BOSSA ==
 +
Comme mentionné ci-avant, le bootloader est également compatible avec BOSSA. BOSSA est une méthode standard de mise-à-jour des cartes lorsque l'on est dans Arduino IDE. C'est un utilitaire en ligne de commande qui peut être utilisé sur tous les systèmes d'exploitation. Cet article ne couvre pas complètement l'utilisation de l'utilitaire '''bossa''', mais suffisamment pour déjà en faire pas mal! Il y a plus d'information disponible sur [http://www.shumatech.com/web/products/bossa ShumaTech].
 +
 +
=== Pilotes pour Windows 7 ===
 +
Si vous utilisez Windows 7 (ou version antérieur) alors vous aurez besoin d'un pilote pour le port série. Les utilisateurs de Windows 10 n'ont pas besoin d'un tel pilote et peuvent donc sauter cette étape.
 +
 +
Vous pouvez télécharger la paquet complet des pilotes chez Adafruit:
 +
 +
{{download-box|Télécharger le dernier installeur de pilote Adafruit|https://github.com/adafruit/Adafruit_Windows_Drivers/releases/download/2.0.0.0/adafruit_drivers_2.0.0.0.exe}}
 +
 +
Téléchargez et exécutez le programme d'installation. Adafruit recommande de sélectionner tous les pilotes séries disponibles (cela ne pose pas problèmes) et de les installer.
 +
 +
{{ADFImage|FEATHER-M0-Bootloader-UF2-20.png}}
 +
 +
Vérivez les ports séries dans le gestionnaire de périphérique.
 +
 +
Si vous utilisez Windows alors il serait judicieux de vérifier les périphériques affichés. Ouvrez votre gestionnaire de périphérique (''Device Manager'') depuis le panneau de contrôle et ouvrez le noeux '''Ports (COM & LPT)''', vous devriez y trouver un périphérique nommé '''Feather M0''' ou '''Circuit Playground''' ou quelque-chose dans le genre!
 +
 +
{{ADFImage|FEATHER-M0-Bootloader-UF2-21.png}}
 +
 +
Si vous voyez un tel périphérique alors cela signifie que vous n'avez pas besoin d'installer de pilote. Sinon, revenez en arrière dans le tutoriel et essayer une nouvelle fois, puis retirez et rebranchez le câble USB de votre carte.
 +
 +
{{ADFImage|FEATHER-M0-Bootloader-UF2-22.png}}
 +
 +
=== Exécuter bossac en ligne de commande ===
 +
Cette étape n'est pas nécessaire, si vous utilisez Arduino IDE. Mais quelque chose qui sera nécessaire si vous voulez lire/écrire des fichiers binaires personnalisés, disons pour charger CircuitPython ou vos propres codes. Adafruit recommande l'utilisation de bossac v 1.7.0 (ou supérieur), la version qu'ils ont testés. La branche Arduino est la plus recommandée.
 +
 +
[https://github.com/shumatech/BOSSA/releases Vous pouvez télécharger le dernier build ici]. La version {{fname|mingw32}} est destinée à Windows, {{fname|apple-darwin}} pour Mac OSX et les différentes options {{fname|linux}} pour Linux. Une fois téléchargé, faites une extraction des fichiers depuis l'archive et ouvrez une ligne de commande dans répertoire de {{fname|bossac}}
 +
 +
Voici, par exemple, la ligne de commande que vous aurez probablement besoin d'exécuter:
 +
 +
<nowiki>bossac -e -w -v -R ~/Downloads/adafruit-circuitpython-feather_m0_express-0.9.3.bin</nowiki>
 +
 +
Cela effacera le contenu de la puce {{fname|-e}}rase, puis écrira le fichier mentionné {{fname|-w}}rite, vérifiera l'écriture {{fname|-v}}erify et redémarrera la carte {{fname|-R}}eset. CircuitPython devrait fonctionner après la réinitialisation de la carte. Les cartes Express pourraient provoquer des messages d'alertes ("''lecteurs éjecté du port USB prématurément''") mais vous pouvez simplement les ignorer. Rien n'est d'important est en cours d'écriture sur le lecteur. Une réinitialisation matérielle est également recommandé après un flashage '''bossac''' (juste au cas où...).
 +
 +
{{ADFImage|FEATHER-M0-Bootloader-UF2-23.png}}
 +
 +
== Faire une mise-à-jour du bootloader ==
 +
Le bootloader UF2 est un tout nouveau bootloader et bien qu'il ait été abondement testé, il pour pourrait encore contenir des bogues. Ces bogues affecte généralement la fiabilité plutôt que d'empêcher le bootloader de fonctionner. Si le bootloader est instable alors vous pouvez essayer de mettre le bootloader à jour pour améliorer sa fiabilité.
 +
 +
Faire la mise-à-jour du bootloader est tout aussi simple de flasher CircuitPython, Arduino ou MakeCode. Activez simplement le bootloader comme précédemment puis glissez le fichier de mise-à-jour du bootloader présent ci-dessous. Ce fichier uf2 contient un programme qui débloque la section du bootloader, fait une mise-à-jour du bootloader et re-bloque la section. Il écrasera votre code existant (CircuitPython, Arduino ou autre) alors pensez à en faire une copie avant d'appliquer la mise-à-jour!
 +
 +
Après la copie du fichier, le bootloader sera mis-à-jour et réapparaitra à nouveau. Le fichier '''INFO_UF2.TXT''' doit contenir une information indiquant la nouvelle version.
 +
 +
Par exemple:
 +
<nowiki>UF2 Bootloader v1.20.0 SFHR
 +
Model: Adafruit Feather M0
 +
Board-ID: SAMD21G18A-Feather-v0</nowiki>
 +
 +
Pour terminer: recharger votre code Arduino ou MakeCode ou flashez le dernier noyaux CircuitPython.
 +
 +
Voici les dernières mise-à-jour pour les différentes cartes. N'hésitez pas à [https://learn.adafruit.com/adafruit-feather-m0-express-designed-for-circuit-python-circuitpython/uf2-bootloader-details consulter le tutoriel Adafruit pour une information plus récente/mise-à-jour].
 +
 +
 +
{{download-box|Circuit Playground Express v1.23 update-bootloader.uf2|https://cdn-learn.adafruit.com/assets/assets/000/045/717/original/update-bootloader.uf2?1503523524}}
 +
 +
{{download-box|Feather M0 Express v1.23 update-bootloader.uf2|https://cdn-learn.adafruit.com/assets/assets/000/045/718/original/update-bootloader.uf2?1503523551}}
 +
 +
{{download-box|Metro M0 Express v1.23 update-bootloader.uf2|https://cdn-learn.adafruit.com/assets/assets/000/045/719/original/update-bootloader.uf2?1503523594}}
 +
 +
{{download-box|Gemma M0 v1.23 update-bootloader.uf2|https://cdn-learn.adafruit.com/assets/assets/000/045/720/original/update-bootloader.uf2?1503523609}}
 +
 +
{{download-box|Trinket M0 v1.23 update-bootloader.uf2|https://cdn-learn.adafruit.com/assets/assets/000/045/721/original/update-bootloader.uf2?1503523622}}
 +
 +
== Eliminer les popups Windows ==
 +
Si vous désirez faire des développement avec le bootloader UF2 sous Windows alors vous serez certainement dérangé par la constante apparition boîte de dialogue "Hey! vous avez inséré un lecteur, que voulez-faire avec?"
 +
 +
<small>Toutes les images ci-dessous sont créditées à [http://www.adafruit.com Adafruit Industries] - All images here under are credited to [http://www.adafruit.com Adafruit Industries]</small>
 +
 +
{{asm-begin}}
 +
 +
{{asm-row|img=FEATHER-M0-Bootloader-UF2-30.png}}
 +
{{asm-text}} Rendez-vous dans le panneau de configuration (''Control Panel''). Cliquez sur l'entête '''Matériel et son''' (''Hardware and Sound'')
 +
 +
{{asm-row|img=FEATHER-M0-Bootloader-UF2-31.png}}
 +
{{asm-text}} Cliquer sur l'entête '''Jouer automatiquement''' (''Autoplay'')
 +
 +
{{asm-row|img=FEATHER-M0-Bootloader-UF2-32.png}}
 +
{{asm-text}} Décochez la case (au dessus) libellé '''Juer automatiquement sur tous les périphériques''' (''Use Autoplay for all devices'')
 +
 +
{{asm-end}}
 +
 +
== Faire votre propre UF2 ==
 +
Créer vos propes UF2 est très facile! tout ce dont vous avez besoin est d'un fichier .bin (un programme) que vous désirez flasher et [https://github.com/Microsoft/uf2/blob/master/utils/uf2conv.py d'un script de conversion Python]. Assurez vous que votre programme à été compilé pour démarrer à 0x2000 (8k) parce que le bootloader utilise les 8 premiers kilo octets. [https://github.com/adafruit/circuitpython/blob/master/atmel-samd/boards/samd21x18-bootloader.ld script de liaison (''linker'')] de CircuitPython montre comment réaliser cela.
 +
 +
Une fois que vous avez votre fichier .bin, vous avez simplement besoin d'exécuter le script de conversion python sur ce dernier. voici un exemple provenant du répertoire uf2conv.py:
 +
 +
<nowiki>uf2conv.py -c -o build-circuitplayground_express/revg.uf2 build-circuitplayground_express/revg.bin</nowiki>
 +
 +
Cela produira un fichier revg.uf2 dans le même répertoire que le fichier source (revg.bin). Le fichier uf2 peut donc être utilisé pour flasher la carte comme indiqué ci-avant.
  
 
{{FEATHER-M0-EXPRESS-TRAILER}}
 
{{FEATHER-M0-EXPRESS-TRAILER}}

Version actuelle datée du 29 décembre 2017 à 16:10


MCHobby investit du temps et de l'argent dans la réalisation de traduction et/ou documentation. C'est un travail long et fastidieux réalisé dans l'esprit Open-Source... donc gratuit et librement accessible.
SI vous aimez nos traductions et documentations ALORS aidez nous à en produire plus en achetant vos produits chez MCHobby.

UF2 Bootloader Details

Les cartes Adafruit Express et Gemma/Trinket M0 embarque un bootloader amélioré qui facilité (plus que jamais) le flashage de différents code sur le microcontrôleur. Ce bootloader facilite la transition entre Microsoft MakeCode, CircuitPython et Arduino.

A la place d'avoir besoin d'un pilote ou d'un programme séparé pour flasher la carte (disons, bossac, jlink ou avrdude), il est simplement possible de glisser des fichiers sur un lecteur amovible.

Le format du fichier est un peu spécial. A cause des 'incompatibilités des systèmes d'exploitation', il n'est pas possible de transférer un fichier binaire ou hex (selon les tests d'Adafruit, ce n'est pas cross-platform compatible). A la place, le format de fichier contient des informations complémentaires pour aider le bootloader à savoir où les données doivent être placées. Ce format est appelé UF2 (USB Flashing Format, format de flashage usb). Microsoft MakeCode génère de l'UF2 pour le flashage et les releases de CircuitPython sont également disponible en UF2. Vous pouvez même créer votre propre UF2 depuis un fichier binaire en utilisant uf2tool, disponible ici.

Le bootloader est également compatible BOSSA, il peut donc être utilisé avec Arduino IDE qui attend un bootloader BOSSA sur les carte à base d'ATSAMD.

Pour plus d'information sur UF2, vous pouvez lire de nombreuses informations sur le blog MakeCode, puis lire les spécifications du format UF2. Voyez également le fork Adafruit de l'UF2 de Microsoft pour samd (dépôt GitHub) pour le code source et les releases des bootloaders pre-compilés.

Activer le mode Booloader

Déclencher le bootloader est la première étape pour charger un nouveau code sur la carte. Le bootloader est activé en double cliquant le bouton Reset. Une fois le bootloader activé, vous verrez la petite LED pulser en rouge et un nouveau lecteur apparaître sur votre ordinateur (lecteur finissant par BOOT). Par exemple, un feather propose un lecteur FEATHERBOOT, tandis qu'un circuit CircuitPlayground proposera un lecteur CPLAYBOOT, Trinket M0 présentera un lecteur TRINKETBOOT et Gemma M0 se présentera quand à lui comme GEMMABOOT

Par la suite, quand le bootloader est actif, il changerea la couleur d'un ou plusieurs NeoPixel (présent sur la carte) pour indiquer le statut de la connexion:

  • Rouge pour déconnecté
  • Vert pour connecté.

Si la carte est connectée mais montre un statut déconnecté alors essayez un autre câble USB. Certains câbles ne fournissent que des fils d'alimentations sans fils de données.

Par exemple, voici un Feather M0 Express avec un programme utilisateur faisant tournoyer les couleurs de la LED Neopixel. Lorsque le bouton reset est double-cliqué (avec un interval d'une demi-seconde entre chaque clique) la LED NeoPixel sera deviendra verte pour pour indiquer que le bootloader est actif. Lorsque le bouton reset est cliqué une seule fois alors le programme utilisateur redémarre (et fait tournoyer la LED NeoPixel).

{{{2}}}
Crédit: AdaFruit Industries www.adafruit.com

Si le bootloader ne peut pas démarrer, la LED NeoPixel devient rouge.

Cela pourrait signifier que le câble USB n'est pas bon, pas connecté sur un ordinateur, ou que le pilote ne peut pas énumérer la carte. Essayez d'abord un nouveau câble USB. Essayez ensuite un autre port USB sur votre ordinateur!

{{{2}}}
Crédit: AdaFruit Industries www.adafruit.com

Une fois le bootloader en cours de fonctionnement, vous pouvez vérifier votre ordinateur. Vous devriez vois un nouveau lecteur USB...

{{{2}}}
Crédit: AdaFruit Industries www.adafruit.com

Une fois le bootloader connecté avec succès, vous pouvez ouvrir le lecteur et naviguer dans le système de fichier virtuel. Il ne s'agit pas du même système de fichier que vous utilisez avec CircuitPython ou Arduino. Il devrait y avoir 3 fichiers:

  • CURRENT.UF2 - Le contenu actuel de la mémoire Flash du MicroContrôleur.
  • INDEX.HTM - Lien vers Microsoft MakeCode.
  • INFO_UF2.TXT - Inclus l'info de version du bootloader. A inclure des les bugs reports.

{{{2}}}
Crédit: AdaFruit Industries www.adafruit.com

Utiliser le Bootloader Mass Storage

Pour flasher quelque-chose de nouveau, il suffit simplement de glisser/déposer des fichier UF2 sur le lecteur. Après la copie du fichier, le bootloader démarrera automatiquement la carte. Cela provoque généralement un message d'alerte informant l'utilisateur d'une "éjection non sécurisée du lecteur". Cela n'est pas un problème car le bootloader sait que toutes les données ont étés correctement coppiées dans la mémoire Flash.

{{{2}}}
Crédit: AdaFruit Industries www.adafruit.com

Vous pourriez avoir une alerte mentionnant que le fichier n'a pas été copié avec toutes ses propriétés. Cliquez simplement sur "Oui" (Yes).

{{{2}}}
Crédit: AdaFruit Industries www.adafruit.com

Le système pour également se plaindre que le lecteur à été éjecté sans précaution. Ne vous inquiété pas de cela. Le lecteur est seulement éjecté par le bootloader une fois qu'il a vérifié et complété le processus d'écriture du nouveau code.

Utiliser le Bootloader BOSSA

Comme mentionné ci-avant, le bootloader est également compatible avec BOSSA. BOSSA est une méthode standard de mise-à-jour des cartes lorsque l'on est dans Arduino IDE. C'est un utilitaire en ligne de commande qui peut être utilisé sur tous les systèmes d'exploitation. Cet article ne couvre pas complètement l'utilisation de l'utilitaire bossa, mais suffisamment pour déjà en faire pas mal! Il y a plus d'information disponible sur ShumaTech.

Pilotes pour Windows 7

Si vous utilisez Windows 7 (ou version antérieur) alors vous aurez besoin d'un pilote pour le port série. Les utilisateurs de Windows 10 n'ont pas besoin d'un tel pilote et peuvent donc sauter cette étape.

Vous pouvez télécharger la paquet complet des pilotes chez Adafruit:

Download-icon.pngTélécharger le dernier installeur de pilote Adafruit

Téléchargez et exécutez le programme d'installation. Adafruit recommande de sélectionner tous les pilotes séries disponibles (cela ne pose pas problèmes) et de les installer.

{{{2}}}
Crédit: AdaFruit Industries www.adafruit.com

Vérivez les ports séries dans le gestionnaire de périphérique.

Si vous utilisez Windows alors il serait judicieux de vérifier les périphériques affichés. Ouvrez votre gestionnaire de périphérique (Device Manager) depuis le panneau de contrôle et ouvrez le noeux Ports (COM & LPT), vous devriez y trouver un périphérique nommé Feather M0 ou Circuit Playground ou quelque-chose dans le genre!

{{{2}}}
Crédit: AdaFruit Industries www.adafruit.com

Si vous voyez un tel périphérique alors cela signifie que vous n'avez pas besoin d'installer de pilote. Sinon, revenez en arrière dans le tutoriel et essayer une nouvelle fois, puis retirez et rebranchez le câble USB de votre carte.

{{{2}}}
Crédit: AdaFruit Industries www.adafruit.com

Exécuter bossac en ligne de commande

Cette étape n'est pas nécessaire, si vous utilisez Arduino IDE. Mais quelque chose qui sera nécessaire si vous voulez lire/écrire des fichiers binaires personnalisés, disons pour charger CircuitPython ou vos propres codes. Adafruit recommande l'utilisation de bossac v 1.7.0 (ou supérieur), la version qu'ils ont testés. La branche Arduino est la plus recommandée.

Vous pouvez télécharger le dernier build ici. La version mingw32 est destinée à Windows, apple-darwin pour Mac OSX et les différentes options linux pour Linux. Une fois téléchargé, faites une extraction des fichiers depuis l'archive et ouvrez une ligne de commande dans répertoire de bossac

Voici, par exemple, la ligne de commande que vous aurez probablement besoin d'exécuter:

bossac -e -w -v -R ~/Downloads/adafruit-circuitpython-feather_m0_express-0.9.3.bin

Cela effacera le contenu de la puce -erase, puis écrira le fichier mentionné -write, vérifiera l'écriture -verify et redémarrera la carte -Reset. CircuitPython devrait fonctionner après la réinitialisation de la carte. Les cartes Express pourraient provoquer des messages d'alertes ("lecteurs éjecté du port USB prématurément") mais vous pouvez simplement les ignorer. Rien n'est d'important est en cours d'écriture sur le lecteur. Une réinitialisation matérielle est également recommandé après un flashage bossac (juste au cas où...).

{{{2}}}
Crédit: AdaFruit Industries www.adafruit.com

Faire une mise-à-jour du bootloader

Le bootloader UF2 est un tout nouveau bootloader et bien qu'il ait été abondement testé, il pour pourrait encore contenir des bogues. Ces bogues affecte généralement la fiabilité plutôt que d'empêcher le bootloader de fonctionner. Si le bootloader est instable alors vous pouvez essayer de mettre le bootloader à jour pour améliorer sa fiabilité.

Faire la mise-à-jour du bootloader est tout aussi simple de flasher CircuitPython, Arduino ou MakeCode. Activez simplement le bootloader comme précédemment puis glissez le fichier de mise-à-jour du bootloader présent ci-dessous. Ce fichier uf2 contient un programme qui débloque la section du bootloader, fait une mise-à-jour du bootloader et re-bloque la section. Il écrasera votre code existant (CircuitPython, Arduino ou autre) alors pensez à en faire une copie avant d'appliquer la mise-à-jour!

Après la copie du fichier, le bootloader sera mis-à-jour et réapparaitra à nouveau. Le fichier INFO_UF2.TXT doit contenir une information indiquant la nouvelle version.

Par exemple:

UF2 Bootloader v1.20.0 SFHR
Model: Adafruit Feather M0
Board-ID: SAMD21G18A-Feather-v0

Pour terminer: recharger votre code Arduino ou MakeCode ou flashez le dernier noyaux CircuitPython.

Voici les dernières mise-à-jour pour les différentes cartes. N'hésitez pas à consulter le tutoriel Adafruit pour une information plus récente/mise-à-jour.


Download-icon.pngCircuit Playground Express v1.23 update-bootloader.uf2
Download-icon.pngFeather M0 Express v1.23 update-bootloader.uf2
Download-icon.pngMetro M0 Express v1.23 update-bootloader.uf2
Download-icon.pngGemma M0 v1.23 update-bootloader.uf2
Download-icon.pngTrinket M0 v1.23 update-bootloader.uf2

Eliminer les popups Windows

Si vous désirez faire des développement avec le bootloader UF2 sous Windows alors vous serez certainement dérangé par la constante apparition boîte de dialogue "Hey! vous avez inséré un lecteur, que voulez-faire avec?"

Toutes les images ci-dessous sont créditées à Adafruit Industries - All images here under are credited to Adafruit Industries

FEATHER-M0-Bootloader-UF2-30.png Rendez-vous dans le panneau de configuration (Control Panel). Cliquez sur l'entête Matériel et son (Hardware and Sound)
FEATHER-M0-Bootloader-UF2-31.png Cliquer sur l'entête Jouer automatiquement (Autoplay)
FEATHER-M0-Bootloader-UF2-32.png Décochez la case (au dessus) libellé Juer automatiquement sur tous les périphériques (Use Autoplay for all devices)

Faire votre propre UF2

Créer vos propes UF2 est très facile! tout ce dont vous avez besoin est d'un fichier .bin (un programme) que vous désirez flasher et d'un script de conversion Python. Assurez vous que votre programme à été compilé pour démarrer à 0x2000 (8k) parce que le bootloader utilise les 8 premiers kilo octets. script de liaison (linker) de CircuitPython montre comment réaliser cela.

Une fois que vous avez votre fichier .bin, vous avez simplement besoin d'exécuter le script de conversion python sur ce dernier. voici un exemple provenant du répertoire uf2conv.py:

uf2conv.py -c -o build-circuitplayground_express/revg.uf2 build-circuitplayground_express/revg.bin

Cela produira un fichier revg.uf2 dans le même répertoire que le fichier source (revg.bin). Le fichier uf2 peut donc être utilisé pour flasher la carte comme indiqué ci-avant.


Source: Adafruit Feather M0 Express - Designed for CircuitPython créé par LadyAda, Tony DiCola, Scorr Shawcroft, Dan Halbert pour AdaFruit Industries. Crédit AdaFruit Industries

Traduit par Meurisse D. pour MCHobby.be

Traduit avec l'autorisation d'AdaFruit Industries - Translated with the permission from Adafruit Industries - www.adafruit.com

Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : «  Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.

L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.