mercredi 26 juillet 2017

Micromite la boite à outils....

Est-il possible d'effectuer des tests sur différents composants, qu'ils soient équipés de bus série I2c ou SPI, encore plus facilement qu'avec une carte Arduino?

La réponse est oui et tient en deux mots : Micromite et Basic.

Étonnamment, alors que l'environnement de développement Arduino à connu un succès énorme auprès des 'bricoleurs' divers et variés, des solutions alternatives comme Micromite ne sont jamais mentionnées. Est-ce du au fait que le langage de programmation utilisé est le Basic?

Micromite est basé sur des processeurs puissants de chez Microchip, en l’occurrence des circuits PI32MX. Un des circuits couramment utilisé est le PIC32MX170F256. Il s'agit d'un processeur en boîtier de type DIP qui permet la réalisation de cartes de développement très compactes et faciles à réaliser :


Quand même, ce 'petit' processeur fonctionne à 40MHz, possède 256Ko de flash et 64Ko de RAM. Micromite se sert de la Flash pour enregistrer de façon pérenne le programme en basic et propose plus de 50Ko restant en RAM pour le stockage de données 'volatiles'. Inutile de dire que cela permet de faire déjà beaucoup de choses.

Le Basic développé par Geoff Graham est compatible MMBasic, est très rapide et en est à la version 5.04.05 :

J'ai effectué la mise à jour en version 5.04.04 il y a à peine quelques semaines, je pourrais donc recommencer l'opération pour passer en version 4.04.05, disponible depuis quelques jours sur le site de Geoff : http://geoffg.net/micromite.html. Preuve que le suivi du projet est correctement effectué!

La carte que j'ai développé pour ce système permet d'y raccorder le programmateur PicKIT 3 :


Et donc d'effectuer très simplement la mise à jour du firware de l'interpréteur Basic.

Pourquoi évoquer ce type de système aujourd'hui? Tout simplement parce qu'avec l'engouement actuel pour le rétro-computing, il me semblait opportun de rappeler que nombre de micro-ordinateurs de la belle époque n'étaient programmable qu'en Basic. Avec des puissance qui n'avaient rien à voir avec ce que propose Micromite. Evidemment, ici il n'y a pas d'écran ou faire défiler de jolies animations. Non, ce type de système est plutôt prévu pour du contrôle/commande, et il le fait particulièrement bien. Noter que l'interpréteur connaît une instruction pour démarrer directement le programme Basic à la mise sous tension.

Si cela vous interpelle, je vous invite à aller sur le site de Geoff consulter le manuel de son Micromite. Les possibilités de cet interpréteur sont tout bonnement stupéfiantes! Toutes les ressources sont libres...

Enjoy!

mardi 25 juillet 2017

Intel Arduino 101

"Les emmerdes, ça vole toujours en escadrille", comme disait ce 'cher' Chirac. Tout dépend pour qui. Pour Intel, sans doute. Après avoir annoncé il y a à peine un mois la fin des cartes de développement Joule, Galileo et Edison, voici qu'arrive le tour de la carte au format Arduino, la 101 :


Comme l'indique cette annonce du site Hackaday, il semble que ce soit le clap de fin en ce qui concerne la tentative d'intrusion d'Intel dans le domaine des 'faiseurs', après avoir abandonné le petit mode prometteur des jeunes diplômés, avec les cartes Joule, Galileo et Edison. Charmant comme appellations, d'ailleurs. Mais que ce soit avec ces jeunes diplômés 'néo-nouveaux' (barbe de 15cm et mac-book pro chevillés au corps) ou les makers de tout poils, il semblerait que le loup ce soit fait éjecter de la bergerie. Ce n'est pas un mal.

Pourquoi en effet perdre son temps sur des architectures ultra propriétaires, absolument pas performantes et obsolètes car largement dépassées par d'autres solutions du marché.

Comme j'ai déjà eu l'occasion de le signaler, l'objectif d'Intel n'était pas de proposer quelque chose de viable, mais de détourner l'attention des développeurs de tous poils des solutions concurrentes suffisamment longtemps pour étouffer le phénomène. Pour être complet, il me semble important de signaler qu'il n'aura pas fallu attendre le débarquement d'Intel pour que le phénomène 'Makers' s’essouffle. De lui-même d'ailleurs. Mode des années 2010, le sujet est ailleurs aujourd'hui...

Et cela n'est pas un mal non plus. Un certain assainissement pourrait être le bienvenu, qui devrait permettre l'émergence d'une suite au phénomène, et notamment à Arduino. Pour l'instant je ne vois pas vraiment quoi que ce soit poindre le bout du nez, mais sait-on jamais...

jeudi 20 juillet 2017

Le projet Arbalet, suite...

Pour faire écho au billet précédent, voici un des sujets en cours qui progresse maintenant de façon plus'dynamique'. Petit rappel : Yoan Mollard m'a demandé de lui créer une carte Arduino adaptable directement sur une Raspberry Pi3. Cette carte joue le rôle d'interface entre la carte Pi3 et la série de LEDs installées dans la table Arbalet, voir cet article.


Par rapport à une carte Arduino de base, le projet utilise ici un processeur plus complet puisqu’il s'agit d'un ATmega328pb. Les périphériques supplémentaires de ce processeur par rapport a l'ATmega328p sont intéressants en ce sens qu'il devient possible de conserver la liaison série entre la carte Arduino et le PC de développement sans être obligé de déconnecter la carte compatible Arduino de la Pi3 à chaque besoin de téléversement. Le deuxième port série de ce 328pb est utilisé pour communiquer avec la Pi3. Faire autrement eût été extrêmement fastidieux en manipulations, à la longue.

Une Pi3 équipée de la carte compatible Arduino nommée ARPI.

Une autre différence concerne la bibliothèque de commande des LEDs. A la base, il s'agit de la bibliothèque Adafruit. Elle fonctionne très bien mais est visiblement quelque peu gourmande en mémoire RAM. Pour rappel, le 328p ou 328pb ne contiennent 'que' 2Ko de RAM. J'ai donc choisi la bibliothèque FastLED, qui fait référence en la matière. Par contre, j'ai du l'adapter aux nouvelles ressources utilisées sur ce projet. Comme toute bibliothèque pour Arduino, elle ne prend en compte que les cartes Arduino Uno de base. Le processeur 328pb n'étant pas reconnu, il m'a fallu 'agrémenter' cette bibliothèque des déclarations nécessaires.

Site fastled.io inaccessible le 20 juillet 2017!

Autre grosse différence, cette étude va être industrialisée. Jusqu’alors, je ne me souciais pas vraiment de ce type de situation car je gérais absolument toute la chaîne de fabrication et de montage des cartes. Devoir faire réaliser le projet par une entreprise extérieur demande donc quelques ressources complémentaires, et une certaine adaptation aux processus 'extérieurs'.

Il me restait à développer le logiciel de ce nouveau matériel, et donc à gérer la communication avec la Pi3 et les strips LEDs. Voilà qui est fait : 


J'ose une petite satisfaction personnelle ;-)

Update 25/07/2017 : Le premier jet de la version industrielle.


Les éléments semblent correctement réalisés. Sauf le connecteur de la Pi, sur la carte ARPI qui est placé du mauvais côté du circuit imprimé. Encore quelques précisions à fournir au sous-traitant, et un peu de travail 'manuel' pour extraire ce connecteur et le placer sur l'autre face.

Ça se précise :-)

mardi 18 juillet 2017

Travaux de vacances...

La période estivale à commencé, comme d'aucun aura pu le constater. Les fortes chaleurs ne favorisent pas l'extrême dynamisme. Néanmoins, et même si je ne publie pas très souvent ces derniers temps, les projets avancent à leur rythme.

Dont celui consistant à trouver une place adéquate au Korg T1, remis en état de fonctionnement complet en avril de cette années, et remisé depuis. Première action, faire de la place :

Je n'ai pas pris la photo quand les étagères étaient toutes occupées!
Non, parce que c'est bien joli tout ça mais il n'y a absolument rien de fonctionnel pour utiliser le matériel que je possède. Du coup, je me 'contente' d'étudier sur le Kurzweil K250 et son superbe clavier en bois. La place est faite pour le T1 :


Voilà, je peux maintenant me servir de ce très agréable clavier haut de gamme de l'époque (toujours d'ailleurs, vu la qualité du son qui en sort). Le petit Juno 2 a pris place sur le dessus, en attendant mieux. Parce que le but consiste à se construire un meuble apte à remplacer le pied RTX pour le T1, et possédant quelques étagères supplémentaires pour y poser d'autre claviers ou boites à ryhtmes. A suivre.....

lundi 3 juillet 2017

Apple ][e...

Pour ceux qui souhaiteraient trouver des informations fraîches de la scène rétro Apple, le groupe d'utilisateur Call-A.P.P.L.E. peut s'avérer très intéressant :


Ce groupe est constitué de bénévoles et possède la particularité de proposer en téléchargement l'envronnement GEOS pour Apple ][e notamment :


Alors jusqu'à aujourd'hui, faire tourner un tel environnement sur un Apple ][e 'de base' pouvait prêter à vraiment sourire, avec les cartes d'extensions proposant un cœur de processeur rapide, telle que la carte FASTChip //e, cela devient tout à fait crédible.

Tant qu'à se faire casser les pieds au quotidien par un windows 10 devenu régie publicitaire imposant ses vues, autant se prendre la tête sur un sujet 'amusant'. Au moins, vous n'aurez pas l'impression de faire du néo-minitel avec des processeurs de 8 cœurs à 3Ghz et 32Go de RAM!
Moi, ce que j'en dis ;-)