Programmer un Arduino nano comme un Arduino pro mini (FTDI)

Bonsoir,

Je bosse sur un projet reposant sur un arduino nano, ce derniers a pris un belle rouste suite a une chute.

Puce FTDI morte et port USB détruit.

Après plusieurs heures de travaille le petit semble reprendre du poil de la bête.

J'ai réussis via ISP a lui graver un bootloader de pro mini en espérant pouvoir le programmer via FTDI un peut a la manière du pro mini.

Je precise que je parvient a uploader des sktech via ISP mais que cela reste gênant dans le cadre de mon projet.

Mais rien n'y fait je n'y parviens pas.

Auriez vous une solution ?

Bonjour,
Moi j'ai eu l'inverse, j'avais cramé la puce ATmega328.
Je l'ai complètement dé-soudé et j'ai pu m'en servir comme programmateur pour pro mini.

Pourquoi ne pas l'avoir laissé en nano ?
Tu as fait le câblage correct je suppose.

Justement comme la puce a cramer je me suis dit qu'en gravant un bootloader du pro mini je pourrais l'utiliser en FTDI.

Oui le câblage est respecté. J'ai meme tenter d'inversé le RX et TX.
J'ai également un pro mini et la marche a suivre est la même.

Merci pour ton aide pepe, Je pense avoir trouver un debut de réponse au soucis.

Le crystal que j'ai du remplacer ( lui aussi a pris un sale coup ) est en fait un 12 MHZ pas un 16.

Pensez vous que cela sois liée ( car j'ai lue un peut partout que ce genre de soucis peut arriver a cause du crystal ) ?

Ok, j'ai commander des quartz pour remédier a ça. Merci bien pour les infos.

Ces petites dev board sont vraiment incassable, je vais utiliser la mienne en ICSP en attendant.

Oh je vais essayer de suite. Le bootloader est universel entre 168 et 328?
Et la baudrate se synchronise elle seule ?

EDIT (après test) :

ça ne marche pas, j'ai meme modifier la baudrate a 38400 et rien n'y fait

J'ai trouver ceci pour un bootloader : Arduino / ATmega : programmation ISP | Hardware-Libre

Sinon je peut également tester avec 43200 en attendant mes nouveaux oscillateurs.

Je viens de tester et j'ai cette erreur :

avrdude: ser_setspeed(): tcsetattr() failed
avrdude: ser_open(): can't set attributes for device "/dev/tty.SLAB_USBtoUART": Invalid argument
ioctl("TIOCMGET"): Bad file descriptor
avrdude: ser_close(): can't reset attributes for device: Bad file descriptor

Comment savoir si un bootloader marche ?

Je suis sous OSX donc je ne pense pas que ça soit jouable ..
Je tente avec mon Uno pour voir ce que ça donne.

Ok voila ou j'en suis, Toujours rien.
Mais une bizarrerie apparait.
J'arrive a recevoir parfaitement les données série envoyer par l'arduino je ne comprend donc pas d'ou viens encore le soucis..

Un soucis semblais venir du driver qui a quelques problèmes sous OSX 10.10. Car en tentant d'uploader sur mon pro mini cela ne marchais pas non plus.
J'ai utiliser la version proposer dans cette article : DRIVER OSX patcher
J'ai toujours cette erreur et visiblement on a trouver le meme article qui traite du sujet du changement de valeur en baud du driver.
Seulement le .kext est introuvable...

?? Je ne comprends pas. De quelle configuration parles-tu ?

J'ai uploader via ICSP un sketch qui envoie des valeurs en série pour verifier que tout marche bien. Et je reçois les valeurs tout a fait normalement.

J'ai finalement trouver le fichier dans
/Library/Extensions/SiLabsUSBDriverYos.kext/Contents/Info.plist
J'ai ajouter ceci :

<dict>
			<key>BaudRates</key>
			<dict>
			<key>B300</key>
			<integer>43200</integer>
			</dict>
			</dict>

J'ai ensuite set le baudrate dans board.txt sur 300.
et j'ai encore une fois une erreur..
Je precise que j'ai tester avec un nano tout neuf et que en le flashant via FTDI ( non par l'USB) cela marche parfaitement ! On est donc bien sur un soucis liée a l'oscillateur !

Oui, c'était pour tester que la liaison était bien faite entre les pin et le microcontrôleur. Car j'ai du retirer la puce FTDI du nano qui était trop endommagé pour être laisser en place. Notament a cause des risque de court-circuits.
Je pense donc que je vais simplement attendre que les oscillateurs 16Mhz me sois livrer pour corriger le soucis.
Sinon ce topic semble concluant : 8MHz internal oscillator: success! - Microcontrollers - Arduino Forum

Edit :
J'ai réussis.
Voici comment faire : Utiliser un Atmega328 avec son oscillateur interne – My-Project_Logs