Bonjour à tous,
Malgrè mes recherches et plusieurs essais et trifouillages, je n'arrive plus à faire fonctionner mon programmateur ISP sous Linux. J'ai déjà résolu ce problème lorsque ma Debian était à la version Lenny avec une règle UDEV. Hors, il semblerait que les choses aient un peu changé depuis.
J'avouerais que je ne sais plus par quel bout prendre la chose. Le résultat infructueux de mes tentatives se soldent actuellement par une erreur du logiciel Arduino évoquant l'impossibilité de contacter le port Usb /dev/ttyUSB0...!!
J'ai tout d'abord remarqué que l'écriture de la règle UDEV avait un peu changé, je l'ai donc adapté ainsi :
/etc/udev/rules.d/60-avrisp.rules
SUBSYSTEM!="usb_device", ACTION!="add", GOTO="avrisp_end"
# Atmel Corp. JTAG ICE mkII
ATTR{idVendor}=="03eb", ATTR{idProduct}=="2103", MODE="660", GROUP="dialout"
# Atmel Corp. AVRISP mkII
ATTR{idVendor}=="03eb", ATTR{idProduct}=="2104", MODE="660", GROUP="dialout"
# Atmel Corp. Dragon
ATTR{idVendor}=="03eb", ATTR{idProduct}=="2107", MODE="660", GROUP="dialout"
LABEL="avrisp_end"
J'ai tenté également une approche plus condensé :
/etc/.../90-avrmkii.rules
SUBSYSTEM=="usb_device", ACTION=="add", ATTR{idVendor}=="03eb", ATTR{idProduct}=="2104", MODE="660", GROUP="dialout", NAME=="avrmkii"
Je ne me rappelle plus si le périphérique doit apparaître dans l'onglet "port série" du logiciel Arduino.
Quoi qu'il en soit, j'arrive, à priori, à écrire le bootloader sur le microcontroleur (la led de l'isp clignote pendant la procédure et le logiciel ne retourne pas d'erreur). Mais je reste bloqué sur l'impossibilité d'injecter mon propre programme ou l'exemple 'Blink' fournit par défaut.
J'ai modifié le fichier .../Hardware/arduino/Boards.txt comme suit :
.../...
atmega328ii.name=AVRISP mkII w/ ATmega328 20Mhz
atmega328ii.upload.protocol=avrispmkii
atmega328ii.upload.maximum_size=30720
atmega328ii.upload.speed=19200
atmega328ii.upload.using=avrispmkii
atmega328ii.bootloader.low_fuses=0xFF
atmega328ii.bootloader.high_fuses=0xDA
atmega328ii.bootloader.extended_fuses=0x05
atmega328ii.bootloader.path=atmega
atmega328ii.bootloader.file=ATmegaBOOT_168_atmega328.hex
atmega328ii.bootloader.unlock_bits=0x3F
atmega328ii.bootloader.lock_bits=0x0F
atmega328ii.build.mcu=atmega328p
atmega328ii.build.f_cpu=20000000L
atmega328ii.build.core=arduino
atmega328ii.build.variant=standard
Je suppose puisque j'arrive à écrire le Bootloader que mon problème se situe dans la modification ci-dessus, ou dans un oubli quelque part ailleurs, et je sollicite donc votre aide pour m'apporter des pistes ou résoudre mon problème.
J'ai l'impression que ce problème a été maintes fois rebattu mais là, vraiment, je planche dur !!
Merci pour votre aide.
Zoroastre.