La carte FLIP & click de MikroElektronika est une Arduino Due avec d'un côté des connecteurs d'extension compatibles Arduino Uno R3 et de l'autre quatre emplacements mikroBus. La face Arduino est bleu Arduino, la face « click » blanche. Le dessin de la carte évoque vaguement un papillon. Elle est aussi exotique que son emballage qu'il faut déplier complètement pour y lire la description du contenu.

Exotisme oblige, la carte est déclinée en deux parfums, Arduino et Python, qui ne diffèrent que par leur microprogramme ; au gré de vos désirs, avec la même carte vous vous parfumerez donc tour à tour aux senteurs d'Arduino ou de Python.

Comme c'est une Arduino Due, elle est animée par un puissant microcontrôleur à 32 bits ARM Cortex-M3 AT91SAM3X8E à 144-broches d'Atmel (désormais Microchip). Les E/S supplémentaires disponibles sur la vraie Due ne sont pas disponibles sur la FLIP & click. Une partie d'entre elles sont utilisées pour les connecteurs mikroBus et d'autres tâches comme les quatre LED bleues du dessous ; les autres ne sont pas reliées.
Arduino Uno R3 next to Flip & click board

mikroBus

Les spécifications détaillées du mikroBus, le bus de communication spécifique de MikroElektronika (mikroE), sont téléchargeables sur leur site. Il comprend deux connecteurs à simple rangée de 8 broches femelles, au pas de 2,54 mm donnant accès à 3 ports (série, I²C et SPI), une entrée analogique, une sortie à modulation en largeur d'impulsion MLI (Pulse Width Modulation = PWM), aux signaux de réinitialisation (reset) et d’interruption et enfin, aux alimentations 5 V et 3,3 V. Il va de soi qu'en dehors de l'alimentation, toutes les broches sont configurables en GPIO. Comme cette interface est assez complète, mikroE a développé pour elle des centaines de cartes d'extension (une aubaine), chaque jour il en arrive de nouvelles (oui, je dis bien tous les jours). Nombreuses sont les cartes équipées de capteurs intéressants, et aussi des GPS, téléphones et autres cartes sans fil pour commander des moteurs, des LED et que sais-je encore.

La mission secrète de la carte FLIP & click est de convaincre tout le monde que pour agrandir un système Arduino, la meilleure méthode n'est certainement pas l'empilement de cartes d'extension dépourvues d'un standard univoque : pour éviter les conflits, il est plus efficace et moins risqué d'utiliser des cartes enfichables moins grandes, mieux conçues et dotées d'une interface standard bien défini.

Flip & click with GPS click
Comme ils partagent le port SPI, Ies quatre emplacements mikroBus ne sont pas totalement indépendants : A & B partagent le bus I²C0, C & D le bus I²C1 et aussi l'UART3 (noté Serial3... non, ce n'est pas une coquille). L'embase A partage l'UART0 (noté Serial1, ce n'est pas une coquille non plus) avec l'embase d'extension Arduino, l'embase B dispose d'une connexion privée à l'UART1 (noté Serial2 – c'est comme ça).

Utilisation en tant qu'Arduino Due

L'Arduino Due est une carte Arduino.org, et pas Arduino.cc, le meilleur environnement de développement (IDE) Arduino à utiliser avec la FLIP & click est donc probablement le 1.7.11 (au moment de la rédaction de cet article – oct. 2016) car il prend en charge la Due. Comme le recommande mikroE avec les IDE 1.6.x, vous devez d'abord installer la carte avec le gestionnaire de carte. Sachant qu'Arduino.cc ne prend plus en charge la Due, ne vous étonnez pas si leur chaîne d'outils se révèle obsolète.

Dans l'IDE 1.7.11, vous trouverez deux cartes Arduino Due : l'une sur le « port de programmation » et l'autre sur le « port USB natif ». Vous devez sélectionner le premier port si vous utilisez le connecteur USB à proximité du connecteur d'alimentation et le second, si vous utilisez le connecteur USB situé sous le connecteur SPI. Si la configuration est correcte, les deux ports peuvent être utilisés pour charger  les croquis.

En regardant le schéma de plus près (mikroE publie habituellement les schémas de ses cartes) nous découvrons que le port série correspondant aux broches 0 et 1 du connecteur d'extension n'est pas le même que celui connecté au port de programmation (c'est le cas sur la Due d'origine). Il y a probablement une bonne raison à cela, mais de ce fait, sur ce point,  les connecteurs d'extension du genre Uno-R3 de la FLIP & click ne sont pas compatibles avec les connecteurs d'extension Uno-R3 de l'Arduino Due. En outre, la sérigraphie du port série de la FLIP & click indique RX0 et TX0 pour les broches 0 et 1, ce qui est exact, mais pour le logiciel ce sera « Serial1 »... bonjour la confusion ! Le port série standard « Serial » communique seulement avec le port de programmation USB.