Différences entre versions de « Projets talk:Magic Control 2022 »
(11 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 132 : | Ligne 132 : | ||
=== Procédure complète d'installation du logiciel de contrôle sur le Raspberry Pi === | === Procédure complète d'installation du logiciel de contrôle sur le Raspberry Pi === | ||
− | (testé en avril 2024 sur Raspberry Pi 3 et 4 et avec PC sous Ubuntu 22.04) | + | (testé en avril 2024 sur Raspberry Pi 3 et 4 et avec PC sous Ubuntu 22.04), à partir des instructions figurant sur le dépot git dans le fichier log.md |
:: | :: | ||
''' Matériel nécessaire ''' | ''' Matériel nécessaire ''' | ||
− | + | * Une carte Raspberry Pi (version 3 minimum recommandée) + son alimentation | |
− | + | * une carte microSD vierge (16 Go minimum conseillé) et un adaptateur pour lire sur PC (ex: adaptateur USB/microSD) | |
− | + | * un écran PC avec câble HDMI (et adaptateur micro-HDMI pour Pi 4 ou 5) | |
− | + | * un clavier et souris en USB | |
− | + | * un PC (si possible sous Linux) avec connexion internet | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | ''' Installation de l'OS (Système d'Exploitation) du Raspberry Pi ''' | |
+ | '''Sur le PC avec Linux:''' | ||
− | + | * Brancher la carte microSD (là où sera installé le futur OS du Raspberry) | |
+ | * Installer le programme d'installation d'OS (rpi-imager), de préférence la version 1.7.2 car il préremplit automatique le champs de la clé ssh publique: | ||
+ | <pre>$ sudo apt install rpi-imager</pre> | ||
+ | * Lancer rpi-imager sur le PC (pas en mode sudo) | ||
+ | <pre>$ rpi-imager </pre> | ||
+ | * choisir la version: '''Raspberry Pi OS (Legacy 64-bits) Lite''' | ||
+ | Avant de lancer l'écriture, aller dans les réglages (symbole roue crantée) et régler: | ||
− | + | <gallery widths="400px" heights="500px"> | |
− | : | + | Fichier:Raspberry pi imager 1.png|Raspberry pi imager (1/2 |
− | + | Fichier:Raspberry pi imager 2.png|Raspberry pi imager (2/2) | |
− | + | </gallery> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | * Set Hostname: magickcontrol .local | ||
+ | * Enable SSH: | ||
+ | ** Allow public-key authentification only | ||
+ | ** Set authorized_keys for : ''<utilisateur@nom_pc>'' (en général c'est le prompt affiché dans le terminal linux). Sur la version 1.7.2 de rpi-imager, le champs se remplit automatiquement avec l | ||
+ | * Set username and password: | ||
+ | ** Username: mjoy | ||
+ | ** Password: mjoy | ||
+ | * Configure wireless LAN: | ||
+ | ** SSID: ''<nom réseau wifi>'' | ||
+ | ** Password: ''<mot de passe wifi>'' | ||
+ | ** Wireless LAN country: FR | ||
+ | * Set locale settings: | ||
+ | ** Time zone: Europe/Paris | ||
+ | ** Keyboard layout: fr | ||
+ | <br clear=all> | ||
− | |||
+ | '''Sur Raspberry Pi''' : brancher le clavier et la souris en USB, et l'écran en HDMI | ||
− | * | + | * insérer la carte microSD et démarrer : |
− | + | ** login/password: '''mjoy'''/'''mjoy''' | |
− | |||
− | |||
Ligne 193 : | Ligne 194 : | ||
:: $ ip a | :: $ ip a | ||
− | * Sur PC: | + | * Sur PC si lors de l'install avec rpi-imager le choix a été authentification par mot de passe, on peut ajouter la clé ssh ultérieurement avec les instructions suivantes: |
+ | |||
+ | '''Générer une paire de clés SSH (publique/privée):''' | ||
+ | |||
+ | <pre>$ ssh-keygen </pre> | ||
+ | |||
+ | '''Transmettre la clé SSH publique au Raspberry:''' | ||
+ | <pre> $ ssh-copy-id mjoy@''<adresse_IP_temporaire_raspberry>''</pre> | ||
+ | |||
+ | |||
+ | '''Se connecter en SSH au Raspberry:''' | ||
+ | <pre> $ sudo ssh mjoy@''<adresse_IP_temporaire_raspberry>''</pre> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<gallery widths="640px" heights="320px"> | <gallery widths="640px" heights="320px"> | ||
Fichier:Ssh key gen.png |ssh-keygen | Fichier:Ssh key gen.png |ssh-keygen | ||
Ligne 208 : | Ligne 213 : | ||
<br clear=all> | <br clear=all> | ||
− | + | *Installer git (s'il n'est pas déjà installé): | |
− | + | <pre>$ sudo apt install git-all</pre> | |
− | + | ||
− | + | ||
− | + | *Récupérer le dépot du logiciel ''magic control'' sur PC | |
− | + | <pre> $ git clone https://github.com/myhumankit/MagicJoystick2020.git</pre> | |
− | + | ||
− | + | ||
+ | *Lancer l'installation (setup) pour le Raspberry | ||
+ | **<pre> $ ./setup.sh <adresse_IP_temporaire_raspberry> mjoy mjoy</pre> | ||
+ | ** Remarque: bien que l'installation soit lancée sur le PC, elle s'effectue bien sur le Raspberry (avec la carte sd dans la raspi et la command elancée depuis le terminal du pc)! | ||
+ | ** (l'installation peut prendre plusieurs minutes, ensuite le Raspberry redémarre) | ||
<br clear=all> | <br clear=all> | ||
Ligne 227 : | Ligne 236 : | ||
* Sur Raspberry: | * Sur Raspberry: | ||
− | + | * Récupérer l'adresse IP définitive (à présent le Raspberry joue le rôle d'un point d'accès wifi): | |
− | + | <pre> $ ip a</pre> | |
− | + | * celle-ci devrait être : 192.168.42.1 | |
* Sur PC: | * Sur PC: | ||
− | + | * Se connecter sur le point d'accès wifi du Raspberry: | |
− | + | ** nom de réseau: '''MagicJostick_mjoy''' | |
− | + | ** mot de passe: '''rpimagic123456''' | |
− | + | * Dans un navigateur, aller sur la page de supervision (permet de vérifier les processus en cours et de voir les log): | |
− | + | ** http://192.168.42.1:9000 | |
− | + | * Par ailleurs il est possible de retrouver l'interface de ''magic control'' en allant sur la page: | |
− | + | ** http://192.168.42.1:8080/v | |
− | + | * Cette interface permets d'assigner le joystick: | |
− | + | ** _ soit en mode contrôle du fauteuil | |
− | + | ** _ soit en mode souris (permet de naviger dans cette interface!) | |
<br clear=all> | <br clear=all> |
Version actuelle datée du 26 avril 2024 à 15:23
Déroulé du Fabrikarium
Mardi 18 octobre
- Présentation de l'équipe et du projet
- Définition des objectifs
Question existentielles :
- Raspberry pi ou pas ?
Économie de la batterie :
A minima, n'utiliser le raspberry pi que quand l'interface est utilisée : R-NET CTRL et le joystick sont contrôlés avec un microcontrôleur indépendant.
- Home assistant ou pas ?
- Démo home assistant par Marc
- Utiliser home assistant pour la partie domotique, conserver la partie IR sur le fauteuil
- Problème du double wifi
- ne pas utiliser le wifi pour relier le smartphone à l'ordinateur de bord
Point fin de journée
- Remplacement du raspberry pi par microcontrôleur
- Interface par des fichiers statique pour ne plus utiliser de serveur web python
- Travail de l'interface (Jean-Christophe, Delphine, Jonathan)
- Protection solaire
Mercredi 19 octobre
Matin
- Noa : interface web en statique
- Marc : Documentation et prise en main IR
- Delphine, Jonathan, Jean-Christophe, Kristi
- Refonte de l'interface avec inkscape
- Choix de nouveaux pictos
- Louise : R-NET CTRL
Finalement
- Noa, Marc : debuggage ir electrique + code
- Delphine, Jonathan, Jean-Christophe : Interface inkscape, parcours utilisateur nouveau message IR
- Louise, François : R-NET CTRL
CR 12/12/2023
Présents: François, Louise, Fred, Jonathan , Delphine
Connectique pour remplacer les cables RNET
https://www.byled.fr/connectiques-etanches-pour-spots-117
Code M5Stack_play
- Passer le main en lib 'Rnet' et ajouter à la classe les méthodes d'abstraction développées initialement en Python
- Ajouter une 'set-up' class avec le lient série
- Utilisation de la lib Arduino JSON pour l'interface avec la raspi
- Revoir le Fix sur le problème de pin commune entre le LCD et le CAN Autre GPIO de dispo ? Ou implémenter un 'mutex' sur la ressource ?
- Revoir la priorité sur la gestion de la sélection des dictionnaires - Sélectionner en priorité les modes non sablier puis switch sur sablier si une trame match
- Ajouter l'identification automatique de "l'identifier" du JSM qui est ajouté dans le système (nécessaire pour les méthodes ajoutées à la classe RNET)
- (Réception de l'identifier dans une trame '0xC')
Code M5Stack_dump
- Revoir le problème sur la PIN I2C partagée avec la SDCARD
- Implémenter la procédure complète d'enregistrement des 4 dictionnaires + nommage des dicos
Schéma de principe de la nouvelle configuration
Procédure d'apprentissage d'un nouveau fauteuil
La procédure d'apprentissage se fait en plusieurs étapes en alternant les deux circuits suivants :
CR 15/04/2023
Christophe a refait le setup.sh propre et pushé sur le Github.
Avant tout, ouvrir un terminal sur le PC puis $ ssh-keygen
Install :
Intaller rpi-imager, sur le PC Ubuntu :
$ sudo apt install rpi-imager
Lancer rpi-imager sur le PC (pas en mode sudo)
$ rpi-imager
Suivre les instructions du Github : https://github.com/myhumankit/MagicJoystick2020/blob/master/log.md
- Install Raspberry Pi OS (Legacy 64-bits) Lite
- options (Cliquer sur icone de la roue crantée)
- Hostname: magickcontrol.local
- Enable SSH, allow public key authentication only
- Set user name: mjoy and password: mjoy
- Configure wireless LAN (sur votre réseau wifi)
- Set locale settings
- reboot
Récupérer l'adresse IP de la raspi
Procédure complète d'installation du logiciel de contrôle sur le Raspberry Pi
(testé en avril 2024 sur Raspberry Pi 3 et 4 et avec PC sous Ubuntu 22.04), à partir des instructions figurant sur le dépot git dans le fichier log.md
Matériel nécessaire
- Une carte Raspberry Pi (version 3 minimum recommandée) + son alimentation
- une carte microSD vierge (16 Go minimum conseillé) et un adaptateur pour lire sur PC (ex: adaptateur USB/microSD)
- un écran PC avec câble HDMI (et adaptateur micro-HDMI pour Pi 4 ou 5)
- un clavier et souris en USB
- un PC (si possible sous Linux) avec connexion internet
Installation de l'OS (Système d'Exploitation) du Raspberry Pi
Sur le PC avec Linux:
- Brancher la carte microSD (là où sera installé le futur OS du Raspberry)
- Installer le programme d'installation d'OS (rpi-imager), de préférence la version 1.7.2 car il préremplit automatique le champs de la clé ssh publique:
$ sudo apt install rpi-imager
- Lancer rpi-imager sur le PC (pas en mode sudo)
$ rpi-imager
- choisir la version: Raspberry Pi OS (Legacy 64-bits) Lite
Avant de lancer l'écriture, aller dans les réglages (symbole roue crantée) et régler:
- Set Hostname: magickcontrol .local
- Enable SSH:
- Allow public-key authentification only
- Set authorized_keys for : <utilisateur@nom_pc> (en général c'est le prompt affiché dans le terminal linux). Sur la version 1.7.2 de rpi-imager, le champs se remplit automatiquement avec l
- Set username and password:
- Username: mjoy
- Password: mjoy
- Configure wireless LAN:
- SSID: <nom réseau wifi>
- Password: <mot de passe wifi>
- Wireless LAN country: FR
- Set locale settings:
- Time zone: Europe/Paris
- Keyboard layout: fr
Sur Raspberry Pi : brancher le clavier et la souris en USB, et l'écran en HDMI
- insérer la carte microSD et démarrer :
- login/password: mjoy/mjoy
Installation du logiciel magic control (via SSH)
- L'installation va se passer en 2 étapes:
- établissement d'une connexion SSH sécurisée entre le PC et le Raspberry
- récupération du dépot de magic control et installation proprement dite via SSH
- Sur Raspberry:
- Récupérer l'adresse IP temporaire:
- $ ip a
- Sur PC si lors de l'install avec rpi-imager le choix a été authentification par mot de passe, on peut ajouter la clé ssh ultérieurement avec les instructions suivantes:
Générer une paire de clés SSH (publique/privée):
$ ssh-keygen
Transmettre la clé SSH publique au Raspberry:
$ ssh-copy-id mjoy@''<adresse_IP_temporaire_raspberry>''
Se connecter en SSH au Raspberry:
$ sudo ssh mjoy@''<adresse_IP_temporaire_raspberry>''
- Installer git (s'il n'est pas déjà installé):
$ sudo apt install git-all
- Récupérer le dépot du logiciel magic control sur PC
$ git clone https://github.com/myhumankit/MagicJoystick2020.git
- Lancer l'installation (setup) pour le Raspberry
$ ./setup.sh <adresse_IP_temporaire_raspberry> mjoy mjoy
- Remarque: bien que l'installation soit lancée sur le PC, elle s'effectue bien sur le Raspberry (avec la carte sd dans la raspi et la command elancée depuis le terminal du pc)!
- (l'installation peut prendre plusieurs minutes, ensuite le Raspberry redémarre)
Connexion entre PC et Raspberry (en wifi direct) et utilisation de magic control
- Sur Raspberry:
- Récupérer l'adresse IP définitive (à présent le Raspberry joue le rôle d'un point d'accès wifi):
$ ip a
- celle-ci devrait être : 192.168.42.1
- Sur PC:
- Se connecter sur le point d'accès wifi du Raspberry:
- nom de réseau: MagicJostick_mjoy
- mot de passe: rpimagic123456
- Dans un navigateur, aller sur la page de supervision (permet de vérifier les processus en cours et de voir les log):
- Par ailleurs il est possible de retrouver l'interface de magic control en allant sur la page:
- Cette interface permets d'assigner le joystick:
- _ soit en mode contrôle du fauteuil
- _ soit en mode souris (permet de naviger dans cette interface!)