Mise en route d’un Arduino Pro Mini 3.3 V

L’Arduino Pro Mini n’a pas d’UART visible sur le port USB de l’ordinateur qui va le programmer. On doit donc utiliser un programmateur externe. Dans cet article, je présente deux solutions :

Matériel

Programmation de l’Arduino Pro Mini avec un Arduino UNO (mode Arduino as ISP)

La définition des fusibles dans l’IDE 1.6.12 pour Arduino Pro or Pro Mini a un problème et l’IDE renvoie l’erreur suivante quand on veut graver un nouveau bootloader :

 ***failed;
avrdude: WARNING: invalid value for unused bits in fuse "efuse", should be set to 1 according to datasheet
This behaviour is deprecated and will result in an error in future version
You probably want to use 0xfd instead of 0x05 (double check with your datasheet first).

Donc, je mes suis rabattu sur MiniCore : https://github.com/MCUdude/MiniCore, d’après la suggestion trouvée à https://arduino.stackexchange.com/a/31199/13995.

La procédure d’utilisation est très bien détaillée sur la page GitHub de MiniCore, donc je ne la répète pas ici.

La configuration que j’ai utilisée est la suivante :

Configuration MiniCore programmation d’Arduino Pro Mini

Programmation d’Arduino Pro Mini

L6_a programmation ISP fonctionne nickel, mais je n’arrive pas à utiliser l’ESP8266 comme bridge USB‑RS232.

⚠ Comme j’ai Arduino Pro Mini 3.3 V, j’ai connecté le 5 V du UNO sur l’entrée RAW du Pro Mini, car cette entrée est connectée à un régulateur de tension qui accepte de 3.3 à 12 V. Si on a du 3.3 V déjà régulé, on peut utiliser la broche VCC. Voir le brochage.

Brochage

UNO Pro Mini
5V RAW ⚠
GND GND
10 RST
11 11
12 12
13 13

Programmation ISP avec un autre Arduino Pro Mini

J’ai testé cette solution 6 mois plus tard que celle avec l’Arduino UNO, mais c’est le même principe dans les deux cas. Donc voici la photo du montage :

Arduino Pro Mini programmation ISP

Avec ce montage, l’IDE Arduino version 1.8.2 accepte de graver le bootloader qui permet ensuite d’utiliser l’option “Arduino Pro or Pro Mini” standard de l’IDE. Cependant, les fusibles sont toujours à 0.

⚠ Sur la photo, le convertisseur USB-série est branché sur l’Arduino cible. Lors de la programmation, il doit être branché sur l’autre Arduino. On voit aussi que j’ai dû ajouter un régulateur de tension 3.3 V (voir ci-dessous).

Programmation de l’Arduino Pro Mini avec un convertisseur USB-série MiniInTheBox

J’ai également fait un test de programmation avec un convertisseur USB-série. Là aussi, j’ai dû utiliser MiniCore avec les paramètres détaillés dans le chapitre précédent. La seule chose qui change, c’est qu’il faut téléverser le programme avec la commande Croquis/Téléverser ⌘+U, alors qu’avec le UNO comme programmateur, il fallait utiliser la commande Croquis/Téléverser avec un programmateur ⇧+⌘+U.

⚠ Ce convertisseur envoie toujours du 5 V sur VCC, même en mode 3.3 V. Il faut donc lui ajouter un régulateur de tension. Je m’en suis fait un que l’on voit sur la photo du chapitre précédent.

⚠ Les broches CTS et GND sont permutées sur l’Arduino Pro Mini et sur le convertisseur. Curieusement, il semble que CTS soit en fait connecté à GND, parce que ça marche quand même avec la permutation.

convertisseur USB-série

Arduino Pro Mini

Arduino Pro Mini Back

Arduino Pro Mini + convertisseur USB-série