Modifications

Sauter à la navigation Sauter à la recherche
6 676 octets ajoutés ,  25 mai 2020 à 16:29
Ligne 1 : Ligne 1 :  
{{MicroPython.presentation-NAV}}
 
{{MicroPython.presentation-NAV}}
    +
== Téléchargement ==
 +
Vous pouvez télécharger la dernière version du FirmWare depuis [http://micropython.org/download/ http://micropython.org/download/]
 +
 +
{{ambox|text=Faites attention à bien sélectionner le FirmWare correspondant à la '''version de votre PyBoard'''}}
 +
 +
== Préparatifs ==
 +
Voici comment configurer votre carte PyBoard pour qu'elle passe en mode DFU (''Device Firmware Update'' = mise-à-jour du micrologiciel du périphérique)
 +
 +
* Pour commencer:
 +
** Mettez votre PyBoard hors tension
 +
** Déconnectez tout de votre pyboard (y compris la carte SD s'y vous en avez placé une).
 +
* Connectez la broche DFU sur la broche 3.3V, elles sont l'une à côté de l'autre (voyez l'image ci-dessous).
 +
* Connectez maintenant cotre pyboard sur votre ordinateur via USB.
 +
 +
[[Fichier:MicroPython.Pyboard.mise-a-jour-00.png]]
 +
 +
{{ambox-stop|text=Le pontage '''DFU''' doit rester en place durant toute l'opération de mise-à-jour.}}
 +
 +
== Windows vs Linux ==
 +
=== Utilisateurs Windows ===
 +
Sur Windows vous aurez besoin d'installer a pilote spécial pour rendre REPL série de la PybBoard disponible. Malheureusement, ce processus est un peu compliqué si vous utilisez Windows 8 (ou supérieur) étant donné que vous devez rebooter en "Safe Mode" (mode sans échec) pour autoriser l'installation de pilotes non signés. 
 +
 +
Voyez le document suivant: [http://micropython.org/resources/Micro-Python-Windows-setup.pdf Micro-Python-Windows-setup.pdf] (''anglais'').
 +
 +
=== Utilisateurs Linux ===
 +
Si vous êtes un utilisateur Linux, vous pouvez poursuivre la lecture de ce tutoriel.
 +
 +
Il détaille l'installation d'un nouveau FirmWare sous Linux.
 +
 +
== Installer dfu-util ==
 +
Utilisez votre gestionnaire de paquets (''package manager'') pour installer {{fname|dfu-util}}.
 +
 +
Ce paquet est largement disponible mais pas installé par défaut sur les systèmes Linux.
 +
 +
== Mise-à-jour USB (Flashing) ==
 +
=== Lister les périphériques DFU ===
 +
 +
Vous pouvez lister les périphérique USB supportant le mode DFU en utilisant l'argument {{fname|-l}}:
 +
 +
Voyez ci-dessous un exemple typique du résultat que vous devriez obtenir avec une PyBoard en mode DFU.
 +
 +
<nowiki>$ sudo dfu-util -l
 +
dfu-util 0.5
 +
 +
(C) 2005-2008 by Weston Schmidt, Harald Welte and OpenMoko Inc.
 +
(C) 2010-2011 Tormod Volden (DfuSe support)
 +
This program is Free Software and has ABSOLUTELY NO WARRANTY
 +
 +
dfu-util does currently only support DFU version 1.0
 +
 +
Found DFU: [0483:df11] devnum=0, cfg=1, intf=0, alt=0, name="@Internal Flash  /0x08000000/04*016Kg,01*064Kg,07*128Kg"
 +
Found DFU: [0483:df11] devnum=0, cfg=1, intf=0, alt=1, name="@Option Bytes  /0x1FFFC000/01*016 e"
 +
Found DFU: [0483:df11] devnum=0, cfg=1, intf=0, alt=2, name="@OTP Memory /0x1FFF7800/01*512 e,01*016 e"
 +
Found DFU: [0483:df11] devnum=0, cfg=1, intf=0, alt=3, name="@Device Feature/0xFFFF0000/01*004 e"
 +
</nowiki>
 +
 +
=== Backup ===
 +
Si vous le désirez, vous pouvez faire une copie de sauvegarde du FirmWare actuellement présent dans votre PyBoard (cela n'est possible que depuis dfu-utils 0.7).
 +
 +
Les précédentes versions du FirmWare MicroPython sont également disponible sur [http://micropython.org/download/ http://micropython.org/download/].
 +
 +
<nowiki>$ sudo dfu-util --alt 0 --upload pyboard-original.dat -s:524288
 +
(...)
 +
Starting upload: [#######] finished!</nowiki>
 +
 +
=== Un seul périphérique DFU autorisé! ===
 +
Si vous avez d'autres périphériques supportant le mode DFU actuellement connecté sur votre ordinateur (par exemple une "Apple Magic Mouse"), vous recevrez probablement le message suivant:
 +
 +
More than one DFU capable USB device found, you might try '--list' and then disconnect all but one device
 +
 +
Vous aurez alors besoin de déconnecter tous les autres périphériques, ou spécifier le périphérique sur lequel vous désirez faire la mise-à-jour en utilisant le paramètre {{fname|--device}} ou {{fname|-d}} avec dfu-util.
 +
 +
Par exemple: {{fname|sudo dfu-util --alt 0 -D pybv10-2014-05-19-v1.0.1-24-g5cdff5f.dfu -d 0483}}
 +
 +
=== Téléverser le nouveau FirmWare ===
 +
C'est maintenant le moment de téléverser le nouveau FirmWare sur votre PyBoard:
 +
 +
<nowiki>$ sudo dfu-util --alt 0 -D pybv10-2014-05-19-v1.0.1-24-g5cdff5f.dfu
 +
(...)
 +
done parsing DfuSe file</nowiki>
 +
 +
Attendez que le programme ait terminé ses opérations.
 +
 +
=== Quitter le mode DFU ===
 +
Lorsque {{fname|dfu-util}} à terminé la mise à jour:
 +
* Déconnectez votre PyBoard du lecteur USB (mise-hors-tension)
 +
* Retirez le pontage DFU (entre les broches DFU et 3.3v).
 +
 +
Voila, c'est dans la boite :-).
 +
 +
== Mise-à-jour UART ==
 
{{traduction}}
 
{{traduction}}
 +
Le port USB, bien que le plus facile, n'est pas la seule interface permettant de faire de mise-à-jour via DFU.
 +
 +
En effet, le microcontrôleur en mode DFU scanne tout une série de périphériques (USB, UART, I2C) à la recherche d'un interlocuteur. Si cela est totalement inutile dans le cas de la PyBoard, d'autres cartes comme la {{pl|1861|PYBStick-STD-NUSB (sans USB soudé)}} est un cas pratique de mise-à-jour via UART.
 +
 +
Dans le cas de la {{pl|1861|PYBStick-STD-NUSB (sans USB soudé)}}, c'est les ports PA9/PA10 en 1ere UART et PD2/PD3 en deuxième UART. On n'a aucun des deux.
 +
 +
 +
=== Lister les périphériques DFU ===
 +
x
 +
 +
=== Backup ===
 +
x
 +
 +
=== Un seul périphérique DFU autorisé! ===
 +
Si vous avez d'autres périphériques supportant le mode DFU actuellement connecté sur votre ordinateur (par exemple une "Apple Magic Mouse"), il est préférable de les débrancher de l'ordinateur pour faciliter les opérations
 +
 +
=== Téléverser le nouveau FirmWare ===
 +
C'est maintenant le moment de téléverser le nouveau FirmWare sur votre PyBoard:
 +
 +
xxx
 +
 +
=== Quitter le mode DFU ===
 +
Lorsque {{fname|dfu-util}} à terminé la mise à jour:
 +
* Déconnectez votre carte (mise-hors-tension)
 +
* Retirez le pontage/activation DFU (entre les broches DFU et 3.3v).
 +
 +
Voila, c'est dans la boîte :-).
 +
 +
== Restaurer un ancien FirmWare ==
 +
 +
Si vous avez besoin de restaurer le firmware original (par exemple: celui de la mise-à-jour USB), utilisez la commande suivante:
 +
 +
$ sudo dfu-util --alt 0 -D pyboard-original.dat -d 0483:df11 -s 0x8000000
 +
 +
== Alternative: pydfu ==
 +
Mentionné par Damien Georges, il existe un programmateur DFU alternatif totalement écrit en Python.
 +
 +
Vous pourrez le trouvez sur: [https://github.com/micropython/micropython/blob/master/tools/pydfu.py https://github.com/micropython/micropython/blob/master/tools/pydfu.py].
 +
 +
Il nécessite le paquet PyUSB .
 +
 +
Pour utilisez pydfu, saisissez la commande suivante:
 +
 +
<nowiki>$ python pydfu.py -u <firmware.dfu></nowiki>
 +
 +
qui copie un fichier FirmWare sur la PyBoard. pydfu est beaucoup plus rapide que dfu-util.
 +
 +
TCela restaure tout, y compris le système de fichier sur la flash interne.
    
{{MicroPython.présentation-TRAILER}}
 
{{MicroPython.présentation-TRAILER}}
29 917

modifications

Menu de navigation