Si vous cherchez un Arduino compact, léger et vraiment pas cher, vous pouvez commander directement en Chine un clone d’Arduino Nano à 3,00 € (frais de ports compris). Bien sûr, il faudra patienter un peu avant de le recevoir (le temps qu’il arrive à pied par la Chine).
L’Arduino Nano peut éventuellement remplacer un Arduino Uno, car il possède exactement le même microcontrôleur (ATMEGA328P).

Attention, il faudra aussi vous procurer un câble mini USB (si vous n’en avez pas encore un qui traîne au fond d’un tiroir).
Problème de drivers
Généralement, les clones chinois n’utilisent pas le même contrôleur USB que les modèles d’Arduino officiels. Il est donc possible que la carte ne soit pas automatiquement reconnue par l’ordinateur. Mais, pas de panique, il suffit simplement de télécharger et d’installer les drivers Arduino CH340.
Téléversement d’un programme
Pour vérifier le fonctionnement de l’Arduino, nous allons tenter de téléverser le programme « Blink » qui se contente de faire clignoter la LED interne (rouge).
Allez dans : Fichier – Exemples – 01.Basics – Blinks

Sélectionnez la carte : Outils – Type de carte – Arduino Nano

Le processeur : Outils – Processeur – ATmega328P (Old Bootloader)

Et le Port : Outils – Port – COM…

Lancez le téléversement : Croquis – Téléverser (ou la flèche ->)

Pour faire plusieurs essais, modifiez les valeurs des instructions delay afin d’augmenter ou de réduire la fréquence de clignotement.

Le bootloader d’origine
Le bootloader est un petit programme stocké dans un emplacement spécial de la mémoire flash du microcontrôleur. Il fonctionne un peu comme le système d’exploitation de votre ordinateur. Il se lance au démarrage de se charge d’exécuter le sketch programmé.
Comme nous l’avons vu plus haut, pour que cela fonctionne, il faut sélectionner l’ancien bootloader (Old Bootloader). Si vous essayez de lancer le téléversement avec le bootloader classique du microcontrôleur ATmega328P…

Le téléversement échoue (avec un message d’erreur).

Gravure du bootloader
La mise à jour du bootloader n’est absolument pas obligatoire, la carte fonctionne parfaitement en sélectionnant « Old Bootloader« . Mais si (comme moi), vous passez souvent d’une carte à l’autre, il vous faudra fréquemment modifier les paramètres du processeur avant le téléversement (suivant la carte utilisée). De plus, on peut supposer que la nouvelle version du bootloader présente des améliorations (par rapport à l’ancienne). Il est donc possible que certains programmes testé sur un autre Arduino ne fonctionnent pas aussi bien sur un Arduino Nano équipé d’un ancien bootloader. Pour vous simplifier la vie, je vous conseille de mettre systématiquement à jour le bootloader de tous vos clones d’Arduino Nano. Cela ne prend que quelques minutes et nécessite seulement un autre Arduino et bien sûr de quelques fils (source).
Tout d’abord, vous devez préparer l’Arduino qui servira de programmeur. Lancez l’IDE Arduino et chargez le sketch « ArduinoISP« .
Pour cela, allez dans : Fichier – Exemples – 11.ArduinoISP – ArduinoISP

Indiquez les paramètres de l’Arduino programmeur. Dans mon cas, il d’agit d’un Arduino Uno.

Vous pouvez maintenant lancer le téléversement.

Si tout s’est bien passé, reproduisez le branchement ci- dessous et reliez le programmeur à l’ordinateur.

Cette fois, il faut sélectionner dans Outils, les paramètres de l’Arduino à reprogrammer, c’est à dire l’Arduino Nano, mais pas « Old Bootloader« . Modifiez aussi le Programmeur en remplaçant « AVRISP mkII » par « Arduino as IPS« .

Lancez la gravure en allant dans : Outils – Graver la séquence d’initialisation

C’est un peu plus long qu’un téléversement classique et on a toujours un petit peu peur de « briquer » l’Arduino. Mais ça ne m’est jamais arrivé et avec un Arduino à 3 €, vous ne prenez pas énormément de risques.

Si vous rencontrez un message d’erreur de ce type, vérifiez simplement les connexions et recommencez la gravure.

Si tout s’est bien passé, vous devriez obtenir ce message.

Félicitations, vous avez maintenant un Arduino Nano tout neuf.

N’oubliez pas de re-sélectionner le programmeur habituel : « AVRISP mkII« .

Non seulement, vous pouvez maintenant téléverser vos programmes en utilisant le paramètre : « Processeur : ATmega328P« . Mais cela fonctionne aussi avec les paramètres de l’Arduino Uno.

Conclusion
Cette petite carte (grâce à sa taille réduite), va prendre place dans le boitier qui accueille déjà le module relais de mon projet de cafetière pilotée par Arduino. Nous verrons si à l’usage, elle se révèle aussi fiable qu’une carte officielle.
Bonjour, quel pin utiliser sur la nano chinoise pour faire le bootloader car j’ai pas les pinICSP ???
J’aimeJ’aime
Bonjour, vous pouvez y souder des connecteurs (mâles ou femelle) ou insérer simplement des connecteurs Dupond Mâle en s’assurant qu’ils soient en contact avec le bord des trous au moment du flashage (c’est ce que j’ai fait).
J’aimeJ’aime
Merci pour ces explications détaillées !! Ca fonctionne très bien.
J’aimeJ’aime
Merci. C’est limpide. Bon esprit de synthèse.
J’aimeJ’aime
Super article, un grand merci. J’ai non seulement réussi à flasher une Arduino Nano, mais également une vieille carte DFRDuino Romeo 1.0.
Elle est maintenant reconnue nativement en tant que Arduino Uno (avant, c’était une Duemilanove) et fonctionne impec avec mBlock (y compris la V5) qui est assez strict sur la compatibilité des cartes.
J’aimeJ’aime
Bonjour,
En suivant votre procédure , j’ai branché une NANO chinoise(après lui avoir mis le boot 328p), en carte programmatrice et j’ai mis le boot sur une carte UNO (j’avais des 328p vièrges )…..nickel , ça fonctionne parfaitement…Merci
J’aimeJ’aime
moi sa ne marche pas
J’aimeJ’aime
Bonjour,
Malheureusement, je n’ai pas la possibilité de deviner pourquoi ça ne fonctionne pas chez vous.
Essayez dans un 1er temps de refaire pas à pas le tuto pour vérifier que vous n’avez pas oublié une étape.
Et si vous avez un message d’erreur, vous pouvez faire une recherche sur internet pour voir si d’autres personnes rencontrent le même problème.
Sinon, ça peut aussi être un problème matériel, pour le savoir il faudrait essayez avec un autre Arduino Nano…
Bon courage.
J’aimeJ’aime
Merci pour ce tuto. En suivant chaque chapitre, j’ai maintenant mes NANO qui me permettent de compiler/tester mes programmes à la place des UNO.
Tuto très clair. Impeccable et merci encore.
Jerry
J’aimeJ’aime
Bonjour pour moi dès le début cela ne fonctionne pas je n’arrive pas à mettre le programme blinks dans la arduino nano (je suis dans le même cas que vous
J’aimeJ’aime
Bonjour, si l’Arduino n’est pas reconnu, c’est certainement un problème de drivers (Essayez d’installer les drivers Arduino CH340). Sinon il faut bien sélectionner la carte « Arduino Nano », vérifier le port et tester avec les 3 processeurs proposés (ATmega328P (Old Bootloader), ATmega328P et ATmega168).
Mais, ça peut aussi être un problème matériel (câble USB ou carte défectueuse)…
Bon courage
J’aimeJ’aime