MicroPython.Pyboard.mise-a-jour
En cours de traduction/élaboration. |
Téléchargement
Vous pouvez télécharger la dernière version du FirmWare depuis http://micropython.org/download/
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.
Le pontage DFU doit rester en place durant toute l'opération de mise-à-jour. |
Windows vs Linux
Utilisateurs Windows
Si vous êtes un utilisateur Windows, voyez le document suivant: 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 dfu-util.
Ce paquet est largement disponible mais pas installé par défaut sur les systèmes Linux.
Mise-à-jour (Flashing)
Lister les périphériques DFU
Vous pouvez lister les périphérique USB supportant le mode DFU en utilisant l'argument -l:
Voyez ci-dessous un exemple typique du résultat que vous devriez obtenir avec une PyBoard en mode DFU.
$ 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"
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/.
$ sudo dfu-util --alt 0 --upload pyboard-original.dat -s:524288 (...) Starting upload: [#######] finished!
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 --device ou -d avec dfu-util.
Par exemple: 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:
$ sudo dfu-util --alt 0 -D pybv10-2014-05-19-v1.0.1-24-g5cdff5f.dfu (...) done parsing DfuSe file
Attendez que le programme ait terminé ses opérations.
Quitter le mode DFU
Lorsque 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 :-).
Restaurer un ancien FirmWare
If you need to restore the original firmware, use the following command:
$ 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.
Il nécessite le paquet PyUSB .
Pour utilisez pydfu, saisissez la commande suivante:
$ python pydfu.py -u <firmware.dfu>
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.
Source: Micro Python Python for microcontrollers écrit par/written by Damien P.George
Traduit par Meurisse D. pour MCHobby.be - Translated by Meurisse D. for MCHobby.be
Traduit avec l'autorisation de micropython.org - Translated with the authorisation of micropython.org
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.