Accéder au contenu principal

Articles

Quelques notions de Lua pour commencer avec NodeMCU Lua

Le langage LUA est largement utilisé depuis plusieurs années comme langage de script pour étendre des jeux. Il s'interface assez facilement avec le langage C, ce qui permet d'embarquer de l'"embarquer" dans une application. Tout comme Java, il utilise une machine virtuelle qui peut être suffisamment légère pour être embarqué dans une micro-puce comme l'ESP8266. LUA n'est pas un langage objet mais l'utilisation des fonctions permet de s'en approcher. La documentation officielle en anglais se trouve à l'adresse http://www.lua.org/docs.html .  Nous verrons ici les notions de bases classiques pour écrire de petits programmes. Les variables Le langage LUA n'est pas fortement typé. Les variables peuvent être utilisées à la volée sans avoir besoin d'être déclarées. On retrouve les types habituels: - les nombres (entiers et réels) :  entier=2, reel=0.5 - les chaînes de caractères :  chaine="Bonjour" - les ...

ESP8266 avec le firmware Nodemcu Lua

J'ai acquis il y a quelques temps le module ESP8266 chez HackSpark ( www.hackspark.fr ) pour 10€. On en trouve maintenant assez facilement à 5€ sur d'autres sites car ce module est en train de provoquer un vrai chamboulement dans le monde des micro-contrôleurs. Ce module est normalement prévu pour être associé à un micro-contrôleur, mais il a l'avantage d'être en lui même un micro-contrôleur assez simple. Il peut être utilisé pour point d'accès Wifi ou comment client Wifi rattaché à un routeur par exemple et peut recevoir des commandes AT pour initialiser le mode souhaité. L'utilisation que j'ai choisi d'en faire est une utilisation "standalone", c'est à dire en fonctionnement seul, non rattaché à un micro-contrôleur. Pour cela, il faut absolument disposer d'un adaptateur USB/Série 3,3V. N'utilisez surtout pas de port 5V qui risquerait d'endommager définitivement le module. Cet adaptateur servira à la fois à flasher le nouv...

Raspberry Pi 2

Le Raspberry Pi 2 vient de sortir. Il conserve les mêmes caractéristiques que le modèle B+ 512 pour le même prix de 35$ (39,99€ chez Kubii ). Caractéristiques techniques 6 fois plus rapide – (Quad Core Broadcom 2836 processor à 900 Mhz) Plus de mémoire – 1GB RAM (2x plus que le B+) Même forme que le Raspberry Pi B+ (totalement compatible au niveau des accessoires) 40 broches d’extension GPIO 2 x 2 ports USB Jack 4 pôles audio et vidéo Composite HDMI haute definition Port caméra CSI pour connecter la caméra Raspberry Pi Port d'affichage DSI pour connecter l'écran tactile Raspberry Pi Lecteur de carte Micro SD pour charger votre système d'exploitation et stocker vos données Source d’alimentation Micro USB  La concurrence Cette version était très attendue car le Raspberry commençait à prendre du retard face à ses concurrents que sont  les OlinuXino d' Olimex, le Banana Pi Pro et l' Orange Pi . Ces deux dernières cartes proposent une CP...

La commande "screen" pour exécuter des commandes en arrière plan

    Screen Il est assez fréquent lorsque l'on travaille sous Linux, sur le Raspberry Pi, par exemple de lancer une commande shell pour faire une installation ou faire tourner un programme. Cela se fait le plus souvent en se connectant en ssh avec Putty. Mais que se passe t'il si vous souhaitez déconnecter votre PC? La session ssh se termine et votre programme avec. Deux solutions pour pallier à cet inconvénient: 1. Lancer votre application précédée par la commande nohup. ex: nohup java -jar mincecraftServer.jar & 2. Utiliser l'application GNU screen Application screen L'application screen, une fois démarrée vous permet d'avoir dans la même session shell plusieurs fenêtres indépendantes. Une seule fenêtre sera cependant active à la fois. Screen vous permet ensuite de naviguer entre les différentes fenêtres. L'un des aspects les plus intéressant de cet outil est que vous pouvez vous détacher à n'importe quel moment. Les shells qui tournent...

Emulateur Raspberry Pi sous Windows

Si vous souhaitez développer ou tester des applications pour Raspberry Pi, vous pouvez, soit compiler directement l'application sur Raspberry, soit la développer sous Linux ou Windows et la compiler pour Raspberry. La seconde solution est souvent plus simple car elle permet de disposer d'un environnement de compilation complet tel qu'Eclipse pour le développement. Une fois l'application développée, il faut la tester sur Raspberry. Là, il faut copier l'application en utilisant un client FTP ou SCP, puis se connecter en SSH et lancer l'exécutable. Il existe un autre moyen de tester une application Raspberry sans avoir à l'allumer. Il suffit de passer par un émulateur tel que QEMU qui permet de lancer un OS pour processeur ARM sous Linux ou Windows. L'émulateur sous Windows 1. Récupérez l'émulateur à l'adresse suivante : http://sourceforge.net/projects/rpi-emulator-win32/ . 2. Dézippés le contenu de l'image Rpi-Occidentalis-v02-qemu.7z av...

Un serveur Web à la maison (SuperGlue)

J'ai déjà évoqué dans mon blog les PlugComputers qui ont lancé le concept des ordinateurs pouvant tenir dans une prise de courant. Le site Superglue propose une solution intéressante et peu coûteuse qui peut intéresser ceux qui veulent mettre en place un serveur Web simple pour servir des pages statiques depuis chez eux. Le principe consiste à installer un firmware customisé de SuperGlue sur un répéteur WiFi afin que celui ci diffuse des pages Web installées sur une clef USB connectée au répéteur. Deux routeurs peuvent ainsi être customisés : le D-LINK DIR-505 (34€90 chez GrosBill) Alimentation intégrée Port USB pour le partage de fichiers Un seul port ethernet    Le TP-LINK TL-WR710N (27€90 chez GrosBill) Conçu pour la mobilité, idéal pour les voyages et les usages domestiques Alimentation intégrée, pas de transformateur requis Supporte les modes : Routeur sans fil, Client, Répéteur, Point d'accès, Routeur Client WISP Port USB pour partager des fichiers ou c...

Ardublock ou S4A pour développer graphiquement

Si vous n'aimez pas le développement en C, ou C# sur les micro-contrôleurs, vous pouvez vous essayer au développement graphique avec Ardublock. Historique Cet environnement de développement est issu d' OpenBlocks développé par le MIT qui se positionne lui même dans la suite du langage Logo de Seymour Papert . Le langage Logo est un langage issu de l'Intelligence Artificielle dans les années 1970 dont l'objectif était de faciliter l'apprentissage de la programmation à de jeunes enfants par le biais du pilotage d'une tortue munie d'un crayon. Les ordres étaient relativement simples : avance de 90 cm, tourne à droite de 90°, etc. Ceci, permettait de réaliser des dessins assez simple, de piloter un petit robot et d'apprendre la programmation. C'était cependant un langage textuel. Exemple pour tracer un carré : POUR CARRE REPETE 4 [AV 100 TD 90] FIN   Son digne successeur, le langage Scratch désormais intégré à l'image Raspbian du Raspberry Pi...