MicroPython.Pyboard.mise-a-jour

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche


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.

Téléchargement

Vous pouvez télécharger la dernière version du FirmWare depuis http://micropython.org/download/

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.

MicroPython.Pyboard.mise-a-jour-00.png

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

Then write the downloaded firmware to the pyboard:

$ sudo dfu-util --alt 0 -D pybv10-2014-05-19-v1.0.1-24-g5cdff5f.dfu 
(...)
done parsing DfuSe file

After the the program finished, disconnect the pyboard from USB and remove the jumper between the DFU and the 3.3v ports.

Quitter le mode DFU

After the the program finished, disconnect the pyboard from USB and remove the jumper between the DFU and the 3.3v ports.

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

There is an alternative DFU programmer that is written in pure Python. It can be found here: https://github.com/micropython/micropython/blob/master/tools/pydfu.py.

It requires the PyUSB package.

To use pydfu:

$ python pydfu.py -u <firmware.dfu>

This will copy the given firmware file to the pyboard. pydfu is much faster than dfu-util.

This will restore everything, including the internal flash filesystem.



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.