Voilà (encore ?) un projet hybride qui emprunte le meilleur de deux mondes.
D’un coté, la plateforme Arduino, avec une librairie qui cache l’essentiel de la complexité et permet de démarrer sur les chapeaux de roues, et de l’autre les Cortex M4, microprocesseurs plus puissants et plus souples que les atmega328 des Arduinos classiques.
Entre les deux donc, on trouve des plateformes basées sur des processeurs Cortex, avec une couche logicielle qui cache la complexité de mise en oeuvre et paramétrage de ces circuits (ceux qui ont joué avec des Cortex en mode « barebone » pour des applis un peu pointues savent de quoi je parle).
L’Espruino Pico, c’est donc un stick USB, qui embarque un microcontrôleur Cortex M4, expose une partie de ses Entrées sorties, et se programme en Javascript. Le format : 32×15 mm
Pas besoin donc de compiler, d’apprendre les arcanes du C: c’est un interpréteur Javascript qui tourne sur la carte, ce qui facilite au passage le debug (accès au contenu des variables, etc.)
Dans la même logique, j’avais parlé il y a quelques mois de la carte micro python, elle aussi dotée d’un Cortex STM32 et d’interpréteur Python.
Ici, c’est Javascript, un choix qui me laisse un peu dubitatif, mais j’imagine que c’est une histoire de gout personnel, certains seront sans doute plus à l’aise avec du javascript.
Coté matériel, le stick est proposé à moins de 20€, et dispose de :
- Un microcontrôleur ARM Cortex M4 : Le STM32F401
- 256Ko de flash pour le programme, 64Ko de RAM
- 22 Entrées sorties sont disponibles : 9 entrées analogiques, 21 PWM, 2 ports série, 3 SPI et 3 I2C (certaines pattes cumulent plusieurs fonctions)
- Le processeur tourne sous 3.3v, mais ses entrées tolèrent du 5v
Pour les curieux, voici le brochage de la bestiole :
Ce stick est à priori dédié au pilotage de robots, à l’internet des objets.
Le choix d’un connecteur USB type A est un peu étrange pour une carte qui n’a pas vocation à être branchée en temps normal à un PC.
D’autre plus que les Drivers HID ne font pas partie du code initial : c’est un add on si le financement atteint 100 000£ (on en est à 20 000, il reste 23 jours).
Il faudrait atteindre 200 000£ pour bénéficier de l’appel de fonctions C, pour gagner en performance en ajoutant, dans le javascript, du code C (et perdre l’intérêt du javascript).
Tel quel, c’est pour moi une carte qui a « le cul entre deux chaises » et cherche encore sa cible.
Ceci dit, c’est open source et open hardware:
le HID qui manque cruellement (vu le format, j’imagine mieux le stick comme périphérique PC que comme cerveau de robot) sera développé par d’autres si besoin, et rien n’empêche d’utiliser le stick pour son format matériel, en flashant un autre firmware ou du code C barebone.
(je vois bien BOOT1 sur les pins, mais pas de BOOT0 ni de reset exposé… dommage, il faudra bidouiller !)
Concernant cette campagne Kickstarter, pas trop de risques à priori, puisque Espruino existe depuis un moment, ils ont fait une campagne Kickstarter réussie il y a un an, le soft est éprouvé, ce n’est pas du flan.
Date de livraison prévue, Avril 2015 !