IUT GEII Toulon
Philippe Arlotto

Accueil > Arduino > Charger le bootloader avec UsbTinyIsp

Charger le bootloader avec UsbTinyIsp

vendredi 17 avril 2015, par philippe Arlotto

Pour faire un arduino à partir d’un ATmega vierge, il faut d’abord graver le boatloader.
Pour cela il vous faut un programmateur d’AVR comme l’UsbTinyIsp.

  • Brancher l’UsbTinyIsp et vérifier la prise en compte par le noyau :
    $dmesg
    ....
    [283098.888015] usb 5-2: new low-speed USB device number 22 using uhci_hcd
    [283099.052024] usb 5-2: New USB device found, idVendor=1781, idProduct=0c9f
    [283099.052028] usb 5-2: New USB device strings: Mfr=0, Product=2, SerialNumber=0
    [283099.052030] usb 5-2: Product: USBtiny
  • Mettre l’ATmega vierge sur une carte arduino et brancher le câble entre le programmateur et le connecteur ISP. Dans le bon sens !!! vérifier le brochage sur le schéma de l’arduino
  • A ce stade on peut vérifier la connexion en ligne de commande en sudo :
    $ sudo avrdude -c usbtiny -p m328p

    avrdude: AVR device initialized and ready to accept instructions

    Reading | ################################################## | 100% 0.01s

    avrdude: Device signature = 0x1e950f

    avrdude: safemode: Fuses OK (H:05, E:DE, L:FF)

    avrdude done.  Thank you.

    Si vous obtenez un message d’erreur c’est probablement du fait d’une mauvaise connexion :

    $ sudo avrdude -c usbtiny -p m328p

    avrdude: initialization failed, rc=-1
            Double check connections and try again, or use -F to override
            this check.


    avrdude done.  Thank you.
  • Ensuite il faut créer un règle udev pour autoriser l’accès au programmateur.
    Vérifier les valeurs du product id et du vendor id de votre programmateur :
    $ lsusb | grep tiny
    Bus 005 Device 022: ID 1781:0c9f Multiple Vendors USBtiny


    Ici idProduct = 0c9f et idVendor = 1781
    créer (en sudo) un fichier /etc/udev/rules.d/usbtinyisp.rules

y mettre la ligne :
SUBSYSTEM=="usb", ATTR{product}=="USBtiny", ATTR{idProduct}=="0c9f", ATTRS{idVendor}=="1781", MODE="0660", GROUP="dialout"
(LA ligne donc sur une seule ligne)

  • Redémarrer udev :
    $ sudo restart udev
  • Maintenant depuis l’IDE arduino menu Outils :
    Port série->"le port du programmateur" (/dev/ttyUSB0 par exemple)
    Programmateur->USBtinyISP
    Type de carte->"votre carte" (arduino Uno ou nano pour l’ATmega 328p)
    Et enfin : "Graver la séquence d’initialisation"

    Voilà vous avez un arduino tout neuf.
SPIP | Se connecter | Plan du site | Suivre la vie du site RSS 2.0
Habillage visuel © Andreas Viklund sous Licence free for any purpose