samedi 6 mars 2021

Essai de l'IDE Arduino version 2.0 beta

Depuis quelques jours, il est possible d'installer la version beta 2.0 de l'IDE Arduino, qui présente quelques nouvelles fonctionnalités.

J'ai installé cette version sur deux ordinateurs (un sous Ubuntu et l'autre sous Windows 10). Notez que l'installation de la version 2.0 de l'IDE n'affecte en rien la version 1.8, si elle est déjà installée. Vous pourrez continuer d'utiliser l'IDE version 1.8 après l'installation de la version 2.0.  Les fichiers d'installation peuvent être téléchargées sur le site officiel Arduino.


Complétion automatique

L'auto-complétion est désormais une caractéristique essentielle de n'importe quel éditeur de code, et son absence était une lacune importante de l'IDE Arduino. Dans l'exemple ci-dessous, je n'ai eu qu'à taper quelques lettres pour que l'IDE me propose la suite de la fonction. L'avantage est évident, et pas seulement pour ceux qui écrivent lentement: ça aide à utiliser la syntaxe exacte d'une fonction qu'on ne connaît qu'approximativement.

Notez que pour que les fonctionnalités de complétion automatique soient activées, il faut obligatoirement avoir sélectionné une carte dans le menu "Type de cartes".

Débogueur

J'aurais aimé essayer le débogueur mais il ne peut être utilisé qu'avec des cartes Arduino de types SAMD et Mbed. Pour corriger les bugs, les utilisateurs d'Arduino Uno continueront d'afficher le contenu des variables dans le moniteur série...


Moniteur série

Le moniteur série s'affiche désormais au bas du sketch plutôt que dans sa propre fenêtre. Chaque sketch a son propre moniteur série.

Il est donc possible de programmer un Arduino Uno sur le port série COM6 et d'observer ce qu'il envoie dans son moniteur série et, dans une autre fenêtre, programmer un ESP8266 sur le port série COM7 et regarder les informations envoyées par l'ESP8266 sur son propre moniteur série.


Il n'y a plus de traceur série malheureusement, mais il sera peut-être ressuscité dans une version ultérieure.

Gestionnaire de cartes

Le gestionnaire de cartes est maintenant accessible à partir d'un bouton situé du côté gauche de la fenêtre, et la liste des cartes disponibles s'affiche dans une colonne à gauche plutôt que dans sa propre fenêtre. 

Si vous installez l'IDE pour la première fois, aucune carte n'est pré-installée, même pas les cartes de base comme l'Arduino Uno: vous devez installer explicitement la catégorie "Arduino AVR Boards". Cette étape n'est pas nécessaire, toutefois, si une version précédente de l'IDE est déjà installée sur l'ordinateur.


Si vous avez déjà installé des cartes "non-officielles" au moyen d'une version précédente de l'IDE (ESP8266, ESP32, STM32, etc.), il n'est pas nécessaire de les installer à nouveau mais il faut inscrire les URLs appropriés dans le champ "Additionnal boards manager URLs" au bas de la fenêtre de préférences (et redémarrer l'IDE).


Dans le menu "Types de cartes", toutes les cartes d'un même type sont maintenant rassemblées dans un même sous-menu, ce qui devrait faciliter un peu la navigation.


Gestionnaire de bibliothèques

Le gestionnaire de bibliothèques est lui aussi accessible par un bouton situé du côté gauche de la fenêtre, et la liste des bibliothèques disponibles s'affiche directement dans la même fenêtre que le sketch plutôt que dans sa propre fenêtre. 


Compilation plus rapide...ou non?

Le communiqué de presse annonçant la version 2.0 mentionne explicitement un temps de compilation plus rapide. Puisque cette augmentation de vitesse ne sautait pas aux yeux, j'ai chronométré le temps nécessaire pour compiler et téléverser deux sketches conçus pour l'ESP8266. Dans les deux cas, la version 2.0 s'est révélée un peu plus lente que la version 1.8.9!  J'ai aussi l'impression que l'ouverture d'un fichier est significativement plus lente qu'avec l'ancienne version.

Pas encore tout à fait au point

Il s'agit vraiment d'une version beta, avec des bugs et des trucs à améliorer. Tout est en anglais, et seuls les principaux OS 64 bits sont supportés.

Sur les deux ordinateurs que j'ai utilisés pour mes tests, la fenêtre était verticalement plus grande que l'écran. Il était impossible de redimensionner manuellement la fenêtre, dont la partie inférieure demeurait désespérément invisible. Sous Windows, j'ai pu régler la fenêtre en mode "plein écran", mais c'était impossible sous Ubuntu! Il s'agit d'un bug connu, qui sera corrigé (et que vous ne verrez jamais si votre écran est raisonnablement grand).

Chaque fois que vous ouvrez ou créez un sketch, vous devez sélectionner à nouveau le type de carte et le port série: l'IDE ne prend pas pour acquis que vous allez probablement continuer d'utiliser la même carte. Encore une fois, c'est certainement temporaire, mais c'est très, très irritant.

Voyez, par exemple, cette situation particulièrement absurde: 

Je commence par créer un nouveau sketch. En attendant que je l'enregistre, l'IDE lui donne un nom temporaire, comme il le faisait dans les versions antérieures: "sketch_mar5a.ino". Je sélectionne le type de carte (Arduino Uno) et le port série (/dev/ttyUSB0).


Je téléverse le sketch dans l'Arduino Uno; tout fonctionne bien mais, lors du téléversement, l'IDE ne me propose pas d'enregistrer mon fichier.

Suite au téléversement, je décide d'enregistrer mon fichier, en lui donnant un nom plus approprié ("essai_beta.ino"). Résultat: l'IDE enregistre mon fichier...et efface mon choix de carte et de port série, qui devront être sélectionnés à nouveau si je désire continuer à travailler sur mon sketch!


La raison pour laquelle l'IDE ne vous propose plus d'enregistrer votre fichier au moment du téléversement, c'est qu'il est maintenant réglé, par défaut, pour effectuer des sauvegardes automatiques deux fois par seconde (il est possible de désactiver cette sauvegarde automatique dans le menu Préférences).

En conclusion: la complétion automatique est un ajout intéressant, mais les imperfections de la version 2.0 sont tellement nombreuses que, en attendant qu'elle soit prête, je vais m'en tenir à la version 1.8.9.

Yves Pelletier (TwitterFacebook)

Aucun commentaire:

Enregistrer un commentaire