programmation
-
[Android] Application Automate
Automate est une application pour ordiphone sous Android permettant de programmer des scripts ou de lancer une série d'actions à l'aide de briques à la façon de Node-Red. Cette application est très puissante et offre un éventail de possibilités inouï, notamment en domotique. Vous trouverez sur cet artcile comment je l'utilise pour piloter mon ampli Yamaha : [Yamaha Ampli RX-V677] Pilotage par le réseau via l'API xml de Yamaha.
Site officiel : https://llamalab.com/automate/
La version gratuite est limitée à 30 blocs travaillant simultanément, sans publicité ou autre désagrément, ce qui est largement suffisant pour découvrir la puissance de cette application. Je vous conseille, comme moi, de soutenir ses développeur⋅euses en payant les 3,90€ demandés 😉 pour lever cette limitation, somme très raisonnable au demeurant.
Il faut dire qu'il faut prendre le temps de rentrer dans cette application mais avec le cas de mon ampli très particulier, je me suis rendu compte de sa puissance.Appli sur le store : https://play.google.com/store/apps/details?id=com.llamalab.automate
Je mets sur cette page des info et des liens utiles.
A- Comment accéder à des droits avec des privilèges élevés
Certaines actions nécessitent des droits avec des privilèges élevés comme par exemple "tuer" une application (commande "App Kill"). Il est donc nécessaire de paramétrer Automate pour le lui permettre.
Source : https://llamalab.com/automate/doc/adb.html.Dans Automate, aller dans "Settings" -> "Privileged service start method" et choisir "Android Debug Bridge (ADB). Ensuite, Automate guide l'utilisateur⋅rice pour réaliser les réglages dans Android en indiquant chaque étape.
À partir d'Android 11 (comme pour mon ordiphone Xiaomi), il faut simplement activer le debugage sans fil par wifi (Wireless debugging option) dans le mode développeur. Puis appairer l'ordiphone pour lui permettre de communiquer avec Automate, en restant appuyer sur l'option "débugage sans fil". -
[BASH] Scripts utiles
Cette page me permet de retrouver des scripts en bash qui peuvent resservir (car on oublie lorsqu'on ne pratique pas souvent...).
- Site permettant de vérifier et déboguer ses scripts : https://www.shellcheck.net/. Il est aussi possible d'installer shellcheck dans sa distribution pour tester ses scripts avec un commande du type :
shellcheck my_script
- Conseils sur la robustesse des scripts : https://connect.ed-diamond.com/linux-pratique/lp-133/rendre-ses-scripts-bash-plus-fiables
- Conseils pour sécuriser ses scripts : https://blog.stephane-robert.info/docs/admin-serveurs/linux/scripts-shell-securises/
Un script bash est un fichier exécutant un ensemble de commandes de façon automatisée (équivalent des macros).
Pour lancer ce fichier, on tapera dans un terminal une commande du type :./fichier_script.sh
I- Problème d'espace, de tirets ou de caractères spéciaux dans les noms de fichiers et de répertoire
Voir :
- Fixer le séparateur avec IFS : https://michauko.org/blog/ifs-separateurs-scripts-bash-174/
- Ignorer les tirets avec l'option "--" ou "./" : https://fr.linux-console.net/?p=2297#gsc.tab=0
II- Créer un sous-dossier identique dans tous les dossiers d'un même répertoire :
Sources :
- Site permettant de vérifier et déboguer ses scripts : https://www.shellcheck.net/. Il est aussi possible d'installer shellcheck dans sa distribution pour tester ses scripts avec un commande du type :
-
Développer en html, css et javascript
Page aide-mémoire pour m'aider à développer des applications web...
Les applications web ont l'énorme avantage d'être utilisables à travers un navigateur web et sont donc interopérables par défaut quelques que soient les systèmes d'exploitation et le matériel (tablettes par exemple).Ressources en ligne :
- Développer des applications html5 de A à Z : http://diveintohtml5.info
- Créer des Web applications : https://www.freecodecamp.org/news/build-a-pwa-from-scratch-with-html-css-and-javascript/
I- Choix de l'outil pour développer
Après quelques recherches sur Internet, j'ai choisi VSCodium qu'on peut installer dans Ubuntu. C'est la version libre de VSCode proposé par Microsoft (oui, oui...) et qui dispose de nombreuses extensions : https://github.com/VSCodium/vscodium
Autre bonne surprise : VSCode est intégré dans Gitlab et en particulier la forge https://forge.aeif.fr/, ce qui permet de ré-investir ses connaissances/habitudes !!!
Du coup, on peut installer l'extension "Gitlab Workflow" pour lier VSCodium et le dépôt Gitlab du projet : https://blog.jbriault.fr/vscode-gitlab-workflow/.Extensions utiles de VSCodium (attention certaines nécessite NodeJS) :
- GitLab Workflow de GitLab
- Live Preview de Microsoft
- open in browser de TechER
- vscode-icons de VSCode Icons Team
- Svelte for VS Code de Svelte (NodeJS)
- ESLint (NodeJS)
II- Tutoriels
Pour commencer, il est nécessaire de suivre des tutoriels...
-
Retour d'expérience et avis Kit Robototique Éducation Nationale chez Easytis
Cette page est un retour d'expérience concernant l'utilisation du kit robotique Éducation nationale que l'on trouve chez Easitys : https://www.easytis.com/fr/programmation/8804-kit-robotique-education-nationale-cycle-3.html. Je vais avoir l'occasion de l'utiliser dans le cadre d'une expérimentation auprès de classes de CM1 et CM2.
Ce lot se compose de 7 robots différents avec notamment 6 Blue-Bots avec station de charge et accessoires. Les autres sont en exemplaire unique.
Le lot fourni ne comporte aucune tablette alors que tous les robots (sauf Matata Studio "Coding Set") doivent communiquer avec une application pour être exploitables. Il ne contient pas non plus un seul chargeur USB...Déjà, on constate qu'aucun de ces robots, d'après leur fabricant, ne fonctionnent officiellement sous GNU/Linux : aucune mention sur leur site. C'est déjà selon moi, le défaut majeur de ce kit en terme de pérennité et du respect à la vie privée avec souvent l'utilisation imposée de Google Chrome pour pouvoir les programmer à partir d'un PC (ça ne marchera pas sous Firefox).
Du coup, la distribution éducative Primtux spécialement conçue pour les écoles ne pourra pas les programmer (à moins d'un contournement qui, s'il existe, ne sera pas à la portée de tous et de toutes). À l'heure où l'on prône le développement durable, le numérique responsable en insistant sur le prolongement de la durée de vie des équipements et de la sobriété numérique, ça peut interroger. Dommage... Espérons que les fabricants feront évoluer leur pratique en proposant du matériel réellement interopérable. Politique qui n'évoluera que s'il existe une incitation via par exemple des recommandations/préconisations de l'Éducation Nationale (comme on peut le voir sur le site https://ecoresponsable.numerique.gouv.fr/ qui affiche cette volonté).
I- Matata Studio "Coding Set"
Ce coffret contient un plateau principal accueillant une tour et sur lequel on va poser des briques plastiques (avec des détrompeurs pour les poser dans le bon sens) pour déplacer un robot mobile sur un parcours de 4 cases par 4. On pourra placer des obstacles sur le parcours et il est aussi possible de se créer son propre plateau.
C'est le seul jeu du kit qui ne nécessite aucune tablette ou ordinateur : c'est particulièrement intéressant car ça limite l'exposition aux écrans, sans rien enlever à ses qualités, bien au contraire.
Le coffret contient 3 livrets d'exercices qui permettent progressivement d'appréhender différentes notions telles que les boucles et les fonctions. Par contre, il n'y a pas les conditions.