VidéoSurveillance avec MotionEye sur Raspbian Stretch et plusieurs Caméras

–> Article vérifié et mis à jour le 17/01/2019
–> Tutoriel applicable sur un Raspberry Pi mais aussi sur un PC tournant avec la version x86 de Raspbian

Ayant la volonté de réaliser un cours/tutoriel/tutoral complet sur MotionEye depuis longtemps, je suis un peu poussé à le faire suite à quelques demandes ; notamment iPapy 🙂

Alors, je m’y mets vraiment cette fois.

–> Le sujet est “simple” (en théorie) :
Réaliser un système de vidéosurveillance qui va tourner sur un Raspberry Pi au moyen du très simple système MotionEye (le Démon Motion accompagné de son interface graphique).

–> La réalisation de l’article sera plus longue.
En effet, on va aborder plusieurs points:

  1. Installation de Raspbian Strech
  2. Installation de MotionEye
  3. Intégration des Caméras (et paramétrage pour envoyer des courriels, prendre des photos, …)
  4. Mise en place d’un système d’alerte sonore locale (le Raspberry Pi va parler dans la maison/appartement) avec alarme (un bruit de sirène) et (si vous avez un forfait FreeMobile) une notification par SMS.
  5. Mise en place de l’envoi d’un SMS avec l’option WebHook

Compte tenu du travail à fournir, ce tuto sera réalisé au fil de l’eau …
Car, je souhaite vraiment détailler chaque partie avec des captures d’écran.

Pour tenter de faire un tuto de qualité, je vais essayer de tout reprendre à zéro.
N’hésitez pas à me reprendre/corriger/compléter via les commentaires ou par courriel.

Installation de Raspbian Strech

Téléchargez Raspbian Desktop depuis le site officiel

Depuis la version “2018-06-27” de Raspbian Stretch, certaines améliorations sont intéressantes pour les non-initiés en raison du caractère automatique de certaines configurations de base (l’utilisateur est guidé pas à pas).

Donc, on télécharge l’image officielle depuis le vrai site, c’est à dire https://www.raspberrypi.org/downloads/raspbian/ et surtout pas depuis n’importe où sur le Net.
Le choix va se porter sur “Raspbian Stretch with desktop” qui est l’image avec un bureau graphique basée sur Debian Stretch (à l’heure de l’écriture de l’article, on est à la version de juin 2018).
Personnellement, je préfère toujours télécharger mes images via le système Torrent car ça accélère les choses + évite d’avoir une image ne venant que d’un endroit + participe à la diffusion de cette image.
Mais il est vrai que je fonctionne sous Linux et suis habitué au images de Linux partagées par Torrent.

Maintenant, il faut écrire (installer) cette image sur la carte microSD.
Vous devrez utiliser un outil d’écriture d’image pour écrire cette image.
Sous LinuxMint/Ubuntu, on a “créateur de clef USB” qui fonctionne, mais je conseille (pour Windows, Mac et Linux), l’excellent programme Etcher.

Capture d'écran de l'application Etcher en train d'écrire l'image de Raspbian sur Clef USB
Écriture de l’image de raspbian avec etcher

En effet, Etcher est un outil d’écriture graphique qui fonctionne sur Mac OS, Linux et Windows et (cerise sur le gâteau) qui vérifie que l’écriture a bien été réalisée + vérifie la carte SD (ou la clef USB) + ne nécessite aucun dézippage. Le bonheur quoi 🙂

Téléchargez Etcher depuis le site officiel et installez-le selon votre système d’exploitation.

Ensuite, il suffit de connecter votre carte SD puis de lancer Etcher.
Le programme demande de sélectionner le fichier à écrire et le support sur lequel écrire.
Voici un exemple avec une écriture sur clef USB (mon Raspberry Pi3 tourne avec clef USB et pas avec carte SD).
(Cette capture a été faite en Avril pour un autre tuto)

Une fois l’image écrite, insérez la carte SD (ou la clef USB si votre Rpi sait démarrer dessus), connectez un clavier, une souris, un écran et allumez le Raspberry Pi.

La nouveauté de cette version est que vous allez être invité automatiquement a réaliser diverses modifications.
Je trouve que cela est beaucoup plus sécurisé/sérieux car cela demande notamment de changer le mot de passe et lance une recherche des mises à jour !

En simplifiant, on passe tout en Français, on change le mot de passe, on active le SSH, la caméra et le VPN ; ensuite, on applique les mises à jour et on redémarre.

Compte tenu de l’heure (et du fait que la bande passante est prise), je ne vais pas lancer le démarrage de la nouvelle image maintenant mais je vous mettrai des images par la suite. (sinon, je vais encore me coucher à “pas d’heure”).

Pouf, magie de la TV … heu de l’Internet … C’est déjà réalisé 🙂

Écran d’accueil suite au premier démarrage de Raspbian
Écran de configuration des locales (en anglais par défaut)
Écran de configuration des locales passées en Fr
Mise en application des localisations
Demande de modification du mot de passe
Intégration du nouveau mot de passe (conseil = avec majuscules+chiffres+minuscules au minimum)
Recherche du réseau Wifi ; perso, je passe cette étape avec skip (suis en RJ45)
Écran de recherche des Mise à Jour de Raspbian lors de la configuration initiale
Vérification des mises à jour à réaliser
Lecture de la liste des mises à jour
Comparaison entre les listes locales et distantes
Obtention des mises à jour
Téléchargement des mises à jour à appliquer
Installation des mises à jour
Écran de confirmation de la fin de la mise à jour
Invitation à effectuer un redémarrage (Reboot) suite aux MàJ
Premier écran après redémarrage ; information que le système est à jour
Désactivation de l’Overscan afin de couvrir la totalité de l’écran (ici = passer de 1824×984 à 1920×1080)
Activation de la Caméra, du SSH et de VNC
Invitation à redémarrer pour application des modification de configuration

On passe donc à la seconde partie.

Installation de MotionEye

Alors, là, je vais reprendre un de mes précédents articles justement intitulé Installation de MotionEye sur Raspbian Strech sur Raspberry Pi3

Je n’ai absolument RIEN inventé. Ce protocole est en fait l’installation de MotionEye selon la méthode de Calin Crisan, le créateur du programme. J’ajoute juste des sudo apt-get update car j’ai déjà eu des erreurs de fichiers non trouvés et je préfère forcer les mises à jour des listes de fichiers (ceci est vrai de manière générale ; pas que pour MotionEye).

Attention, faites toutes ces commandes en faisant des [copier/coller] pour éviter les erreurs.
Pour copier, c’est facile, c’est la combinaison des touches “Ctrl” + “C” si vous travaillez directement sur votre Raspberry.
Mais, pour coller dans le Terminal, il faudra faire la combinaison “Maj” + “Ctrl” + “V” (ou “⇧” + Ctrl” + “V”)
(Vous pouvez voir mon article sur les [copier/coller] pour plus d’informations)

Préparation de l’installation :

sudo apt-get update
sudo apt-get install ffmpeg v4l-utils
sudo apt-get install libmariadbclient18 libpq5

Récupération et installation de Motion (le cœur du programme) :

sudo apt-get update
wget https://github.com/Motion-Project/motion/releases/download/release-4.1.1/pi_stretch_motion_4.1.1-1_armhf.deb
sudo dpkg -i pi_stretch_motion_4.1.1-1_armhf.deb

Installation des dépendances nécessaires :

sudo apt-get update
sudo apt-get install python-pip python-dev libssl-dev libcurl4-openssl-dev libjpeg-dev libz-dev

(Claude, dans un commentaire d’un autre article sur MotionEye) préconise de lancer la ligne sudo python -m pip install –upgrade pip setuptools wheel pour éviter un échec lors de la commande suivante)

Récupération et installation de la partie GUI pour avoir MotionEye (GUI = Graphical User Interface soit « interface graphique » en Français) :

sudo pip install motioneye

Configurations nécessaires au bon fonctionnement :

sudo mkdir -p /etc/motioneye
sudo cp /usr/local/share/motioneye/extra/motioneye.conf.sample /etc/motioneye/motioneye.conf
sudo mkdir -p /var/lib/motioneye
sudo cp /usr/local/share/motioneye/extra/motioneye.systemd-unit-local /etc/systemd/system/motioneye.service

Automatisation de lancement du programme au démarrage du Raspberry Pi (MotionEye sera actif dès le démarrage du Raspberry ; ça devient automatique) :

sudo systemctl daemon-reload
sudo systemctl enable motioneye
sudo systemctl start motioneye

A noter que pour faire une mise à jour de MotionEye (puis une relance du programme MotionEye), on procède ainsi :

sudo apt-get update
sudo pip install motioneye --upgrade
sudo systemctl restart motioneye
Première connexion à MotionEye via http://localhost:8765

Par défaut, le port choisi par le créateur du programme est 8765, donc, vous pouvez (depuis votre Raspberry Pi) taper cette adresse dans le navigateur : http://localhost:8765/
Pour se connecter, la première fois, il faut juste entrer le nom de l’administrateur (“admin”) et valider puisqu’il n’y a pas de mot de passe pour le moment).

Pour le moment, entrez juste admin et validez.
Ne cochez pas Remember Me puisque nous allons modifier en mettant un mot de passe immédiatement.

Enfin, là, je vais gérer le lave vaisselle et aller au lit.

A demain !

Intégration des Caméras et divers paramétrages

Explications à suivre … Des images basiques pour le moment. Je vais rédiger les commentaires de chaque image par la suite.
A noter que les captures ont été relativement “anonymisées” par modification à la main, une par une, avec Gimp (oui, sacré boulot).

Premier écran de connexion à MotionEye
Il suffit de renseigner “admin” et de valider (sans mot de passe)
A ce stade, pas grand chose à part qu’il n’y a rien à voir 🙂 … et … que le programme nous invite à ajouter une caméra
Attention, par défaut, MotionEye propose une caméra locale mais de type USB (V4L2)
Il faudra bien choisir “Local MMAL Camera” si vous avez le module camera sur port CSI (Camera Serial Interface)
Une fois le type de caméra choisi, la caméra est proposée automatiquement
Arrivée sur la page de paramétrage de base où il reste pas mal de choses à régler
Je commence par passer la mise en page en 1 ou 2 colonnes
Après, d’emblée, je conseille d’activer les “Paramètres Avancés” (Advanced Settings) pour devenir le chef !
On peut alors changer les Noms d’Utilisateur (Username) et les mots de passe (Password) et valider avec “Apply”
Une fois les modifications validées (avec “Apply” en orange en haut), il faut se reconnecter (logique)
Là, on peut demander la sauvegarde du couple “User/Password” pour rendre la chose plus rapide par la suite
A la reconnexion, on tombe sur la vidéo en grand sans voir les paramètres. On va donc cliquer sur Settings (les 3 lignes à gauche)
Et voilà l’accès aux réglages plus fins pour mettre la surveillance vraiment en action
Modification de la qualité de la vidéo ; je ne pousse pas trop ; ce n’est pas utile et c’est un Raspberry Pi 😉
Zone de modification du stockage des images (là, on ne touche à rien, mais je vous montre tout de même 😉 … Je suis cool)
Ici, on accède aux modifications des “tampons” (stamps) incrustés sur les images ; souvent je passe la date en jj-mm-aaaa
Modification des règles de sauvegarde des images. Sélectionnez l’option “Motion Triggered” pour capturer des images en cas de détection de mouvement. C’est la seule option possible pour faire des photos tout au long des alertes
Réglage du temps de maintien en mémoire des images (là, je sélectionne juste 1 mois pour purger ni trop tôt ni trop tard)
Message d’alerte informant que toutes les images du dossier “Camera1” seront effacées par la tache cron créée par “Preserve Pictures”, même celles non prises par MotionEye (raison pour laquelle, on ne modifie pas le lieu de stockage précédemment)
Réglage du seuil de modification de l’image pour activer la détection. Souvent, je mets le curseur à 3%
Déroulement de “Motion Notifications” où il est possible de choisir différentes possibilités notamment la réception de courriels.
Réglages à utiliser pour Gmail. (Évidemment, ces adresses sont fausses 😉 ; c’est pour être explicite) A noter le choix de 3 secondes pour laisser le temps d’ajouter des images dans le courriel ; vous affinerez si besoin.
Il est possible de tester les paramètres pour vérifier que ça fonctionne. Ici, vous avec la notification de réussite.
Maintenant, n’oubliez pas de valider en cliquant sur le “Apply” pour appliquer les modifications !
Pour ajouter une autre caméra, il faut cliquer sur la caméra actuelle et choisir “Add Camera” ; tout simplement.
Exemple pour une caméra réseau (dans le cas présent, un Rpi Zéro tournant avec MotionEyeOS en “simple flux”). Il faut cependant bien choisir “Network Camera”. Parfois les bons paramètres ne sont pas si faciles à trouver. Patience et courage 😉
Et voilà la seconde caméra en visuel. C’est un Raspberry Zero doté d’un module noIR avec LED infrarouges = vision nocturne.
Enregistrement d’images si détection de mouvement + effaçage automatique après 1 mois (comme pour la première caméra)
Réglage des paramètres de détection. Je laisse souvent tout d’origine (sauf le 3%).
Ajout d’une troisième caméra. Celle-ci est une caméra IP de marque Heden qui a 6 ans. Elle possède une vision nocturne mais une qualité visuelle limitée (640×480). Avec les Caméra IP, le plus dur est de trouver l’adresse du flux vidéo exploitable.
Et voilà ce que ça donne avec 3 caméras (je suis repassé en “Layout” avec 2 colonnes pour l’exemple). Il y a 1 module caméra connecté au Raspberry Pi + 1 caméra réseau (un RpiZero sous MotionEye) + 1 Camera IP du commerce (marque HEDEN)
Ho ; j’ai cru voir un M&M’s … Ha mais oui, j’ai bien vu un M&M’s !!! Nous allons donc illustrer une intrusion
Et là, vous voyez que MotionEye est passé en mode “Alarme” ou “Détection” car il passe en rouge et prend donc des photos
Sur cet écran, vous voyez le retour à l’état d’origine suite à la disparition de l’intru ; c’est à dire le disparition du cadre rouge
Ici, je fais afficher les photos prises lors de l’alerte au M&M’s. Il y a 1 image par seconde avec une photo avant la détection.
Voici la première image enregistrée ; vous voyez que c’est l’état AVANT l’intrusion ; c’est pratique pour voir ce qui a changé
Et voilà donc l’objet du délit. Un M&M’s qui ne se mange pas ; franchement ; fallait le dénoncer !
Lorsque nous demandons l’effacement des images, nous avons une demande de confirmation par sécurité.
Retour automatique à l’écran de base une fois que les images précédentes ont été purgées.
Pour l’exemple, voici comment laisser le Raspberry Pi en fonctionnement mais couper la surveillance : il suffit de taper la commande “sudo systemctl stop motioneye” dans le Terminal. Et on relance avec un simple “sudo systemctl start motioneye” (voir ci-dessous)
Pour supprimer une caméra de MotionEye, on la sélectionne puis on clique sur la corbeille à droite de son nom (Remove Camera)
Demande de confirmation avec de supprimer cette entrée vidéo
On a bien supprimé totalement la caméra n°3 de MotionEye. Tous les paramètres sont purgés ; il faudra tout refaire (sauf si on a fait une sauvegarde avec “Backup”)

Mise en place d’un système d’alertes sonores

Le concepteur de MotionEye a bien fait les choses ; il a prévu moult options (moult est invariable) et il a même prévu que nous pouvions … en prévoir d’autres 🙂

Je vous propose d’utiliser l’option “Run A Command” que j’ai encadrée en rouge sur la capture ci-dessous.
Cela permet de demander au programme de lancer une commande personnalisée en cas de détection de mouvement.

L’option “Run A Command” est désactivée par défaut ; il suffit de l’activer.
On active simplement l’option en cliquant sur le “off” qui se transforme en “on” et laisse apparaitre une zone de texte.
Et là, on inscrit la commande à exécuter ; ici, c’est un script mis dans un dossier spécifique (plus logique)

Attention : n’oubliez pas de valider en cliquant sur “Apply”.

Oui, je sais … Comment cela va-t-il pouvoir fonctionner puisque rien de tout cela n’existe ???

OK ; vous avez raison et c’est pour cela que nous passons à la partie “programmation”.

Tout va débuter par la création du dossier “notifications” avec cette simple ligne :

mkdir notifications

Comme on n’a rien précisé, le dossier “notifications” sera créé où nous sommes. Mais nous pouvons aussi donner le chemin complet si vous préférez :

mkdir /home/pi/notifications

Vous vous demandez peut-être “Mais, Alban, pourquoi diable avoir créé un dossier et pas juste un fichier ?

La réponse est simple : “Hé, c’est qui le chef ?” ; “C’est lui, c’est moi, c’est nous !” ; “Et nous, on aime bien les dossiers !!!

Bon, en fait, plus objectivement, l’idée est simpliste = avoir un dossier pour y mettre tout ce qui nous sera nécessaire pour les notifications.
C’est plus propre et plus facile en cas de migration sur autre système (on sauvegarde le dossier).
Mon dossier “nofitications” contient donc le notification.sh mais aussi le fichier son “alarme.mp3” et la phrase d’alerte “lue” par le Raspberry Pi.

Pour la réalisation du script, on va faire soit en ligne de commande soit en mode graphique.

Pour le mode graphique, faites :

sudo leafpad /home/pi/notifications/notification.sh

Et ça ouvrira l’éditeur de texte.

Sinon, faites :

sudo nano /home/pi/notifications/notification.sh

Et vous pourrez alors le faire à la méthode du “Linuxien de la mort qui tue” = en codage directement dans le Terminal !

Quelques soit la méthode, le fichier va ressembler à ça :

#!/bin/sh

# 01 - Script pour jouer un son d'alarme

mplayer /home/pi/notifications/alarme.mp3

# 02 - Script pour lire une phrase d'alerte

mplayer /home/pi/notifications/alerte.wav

01 – Pour jouer le son, on va installer mplayer (qui est un lecteur hyper léger) en faisant :

sudo apt-get install mplayer

01 bis – Et faudra vous trouver un fichier son que vous renommerez en “alarme.mp3” (essayer ce lien respectueux de votre vie privée)

02 – Pour lire la phrase, il va d’abord falloir réaliser 1 action basique = donner la parole à votre Raspberry Pi pour lui permettre de créer le fichier à lire (sera lu avec mplayer ensuite).
Vous allez installer un programme (connu dans le monde Linux) nommé SVOX Pico TTS (TTS signifie Text To Speach).
L’installation est d’une simplicité enfantine avec :

sudo apt-get install libttspico-utils

Ensuite, il vous reste juste à créer une phrase avec une ligne de commande de ce type : pico2wave -l fr-FR -w /home/pi/notifications/alerte.wav "... Hé, zy va l'intru ; on t'a vu ! Arrache toi d'là si tu veux pas goûter à mes sabres"
(Pour l’exemple, j’ai laissé DeadPool parler ; DeadPool, c’est un mec cool 🙂 Surtout si on l’énerve)
A noter l’usage de « … » en début de phrase pour laisser au Raspberry Pi le temps nécessaire à la mise en lecture (sinon, il bouffe le début)

Mise en place d’un envoi de SMS

Contrairement à mes premiers articles sur Motion et MotionEye, je ne vais pas utiliser le script pour envoyer les SMS mais recourir à l’option “Call A Web Hook” en insérant juste https://smsapi.free-mobile.fr/sendmsg?user=XxXxXxXxX&pass=XxXxXxXxXxX&msg=Alarme+Cam_IP+garage+!!!".
Évidemment, il faut avoir un forfait de téléphone chez FreeMobile pour bénéficier du service tel que je le décris (à voir chez les autres opérateur). Chez FreeMobile, c’est une option gratuite à activer sur son compte.

Capture d'écran de MotionEye montrant l'option "Web Hook"
L’option “WebHook” permet de passer des commandes http.

Cela permet d’envoyer un SMS sur son portable grâce à un simple navigateur en tapant https://smsapi.free-mobile.fr/sendmsg?user=XxXxXxXxX&pass=XxXxXxXxXxX&msg=LeTexteVoulu et en validant … mais, surtout, cela permet d’utiliser cette fonction dans des systèmes de domotique ou équivalents au moyen de différentes options/commandes.
Dans notre cas, on utilise la fonction “get” du “WebHook” qui permet d’interpréter le “https:…” (on pourrait aussi le faire en wget directement dans le script).
Pour le texte à envoyer par SMS, il faut noter “+” entre les mots pour réaliser un espacement entre les mots.
Ainsi “LeTexteVoulu” sera plus facile à lire sur le téléphone si vous codez “Le+Texte+Voulu”.

Capture d'écran avec la ligne "WebHook renseignée
On entre juste par [copier/coller] la ligne proposée ci-dessus (en adaptant)
Cette façon de faire (SMS hors script) permet de séparer les choses pour que MotionEye m’envoie “Alarme Cam_IP garage !!!” quand la caméra du garage détecte un mouvement ; “Alarme Cam_IP cuisine !!!” quand c’est la caméra de la cuisine qui est solicitée ; “Alarme Raspberry Zéro” quand … (je pense que vous avez un peu percuté, non ?!?)

Par contre, toutes les caméras exécutent le même script et “lisent” donc le même son et la même phrase.
Je n’ai plus qu’un script contre 4 autrefois et j’ai seulement le ligne “WebHook” qui est différente par caméra.

On pourrait améliorer la chose en faisant en sorte que si l’alarme et l’alerte sont exécutées par une caméra, elles ne puissent pas être relancées avant X secondes.
En effet, actuellement, on peut avoir chevauchement de son car 2 caméras peuvent détecter à quelques secondes près une intrusion et le système de sons est alors un brin “de la purée de pois”.
A priori, il suffirait de limiter mplayer à une seule instance, mais je ne sais pas encore le faire (pas cherché).

Conclusion :

Et voilà.
Si vous avez bien tout suivi sans faire d’erreur, vous avez un système de vidéosurveillance parfaitement autonome et automatique.

(si erreur il y a, partons du principe que le problème = c’est vous … mais bon, autant m’en parler 😉 On ne sait jamais).

A partir de maintenant, il suffit d’allumer le Raspberry Pi et tout est fonctionnel ; elle n’est pas belle la vie ?!?

Du coup, je vous entends déjà dire :
Merci Alban ; t’es trop cool avec nous ! Passer des heures à installer, faire des captures d’écran, retravailler tes captures et rédiger cet article, vraiment, c’est classe de ta part”.
Et nous (ou lui ou moi, faut voir) de répondre :
“Ho, mais pas de quoi ; avec plaisir ! Vous pouvez me remercier en m’aidant à améliorer des articles, en me donnant des vieilles machines (ou même des neuves évidemment), en m’envoyant un petit mot d’encouragement/remerciement, en me faisant un don minime de principe sur Paypal ou Leetchi, en me léguant votre fortune, en venant boire un café, en pensant vraiment que je suis le meilleur, en étant respectueux avec les cyclistes (sauf avec les cons qui grillent les feux), en sortant de ma tête, en …”.

Comme je suis vraiment cool, j’ajoute un truc :
Évitez le son par le biais d’un écran HDMI car les écrans se mettent en veille au bout d’un moment … et … cela coupe le son ; pas cool (bon, les SMS fonctionnent toujours).
Il faut avoir des Hauts Parleurs. Toutefois, il en faut avec un système d’amplification afin que le son soit audible.
Et, il faudra modifier la sortie son en “analog” (en faisant clic-droit sur le dessin du Haut Parleur en haut à droite).

Dans un prochain article, j’explorerai l’idée d’un script pour commander les ports GPIO afin qu’une mitraillette puisse tirer de manière automatique après la phrase de sommation.
Ça sera cool, non ?!? 😀

En attendant, rappelez-vous :
Sourions, on ne pourra pas tous les tuer …

A propos de Alban

Papa de 4 enfants étant lui même resté un enfant. Tombé par obligation dans l'informatique à 22 ans pour le boulot et s'étant "un peu" pris au jeu ... Pas un génie de l'informatique (loin de là), mais intéressé et carrément orienté Linux et entraide.

22 commentaires à propos de “VidéoSurveillance avec MotionEye sur Raspbian Stretch et plusieurs Caméras”

  1. Ouf 🙂 encore un peu dur pour moi mais je m’accroche, j’ai retenu l’idée d’avoir plusieurs cartes sd avec raspbian installé, merci pour ce tuto, nous nous y attelons la semaine prochaine.

    Cordialement Nadia

    • Bonsoir Nadia,
      Merci pour ce nouveau message 😉
      En suivant pas à pas le tuto, vous y arriverez sans souci.
      Ce n’est pas un système de vidéosurveillance dernier cri, mais ça permet de surveiller son chez soi à bas coût.
      (Il faudra penser à ouvrir une redirection de port sur la box si vous voulez avoir un accès à la vidéo en direct depuis l’extérieur)
      A bientôt,

  2. Bonjour et merci pour ce super tuto qui m’a bien aidé dans l’installation de MotionEye.

    Je partage un problème que j’ai rencontré avec sa solution dés fois que ça puisse servir.
    Après une install sans message d’erreur, lors du premier lancement de l’interface dans le navigateur, j’ai eu un message ERR_CONNECTION_REFUSED.
    J’ai vérifié si le port était en écoute (netstat -pnl) et là, bah rien …
    J’ai lancé un systemctl motioneye qui m’a renvoyé le message suivant:
    * File "/usr/local/lib/python3.4/dist-packages/motioneye/meyectl.py", line 28, in
    import settings
    ImportError: No module named 'settings'

    Dans /usr/bin mon python est un lien vers python3.5 ce qui a priori pose problème pour l’installation
    j’ai désinstallé motioneye (sudo pip uninstall motioneye), j’ai ensuite supprimé mon lien (rm /usr/python) et je l’ai récréé (ln -s /usr/bin/python2.7 /usr/bin/python).
    Enfin j’ai relancé l’install de motioneye et relancé le service. Tout était OK.

    • Bonjour Fred,
      Merci pour ton commentaire.
      Il faudrait que je teste de refaire toute l’installation pour voir.
      Mais, à l’époque, on était déjà avec les version 3.5 et 2.7 de python me semble-t-il.
      Je crois qu’on a les 2 versions, mais j’avoue que j’installe tellement de trucs …
      @+

  3. Bonjour Merci pour ces super tutos, j’ai fait l’installation avec motion eye sur un raspberry 3 model B, l’ensemble est d’une lenteur effarrente, mais ce n’est pas le propos je vais réinstaller de A à Z on verra bien.
    Je souhaite faire un surveillance de mon mobilhome à 800 kms de chez moi. Je voudrais mettre en place plusieurs caméras IP, en filaire ou Wifi et être informé par mail et/ou sms, photos et messages, éventuellement pouvoir visualiser en direct.
    J’ai pensé à un partage de connexion entre le Raspnerry et un android 4G que je recycle à cet effet et une carte sim à 2€.
    Voyez vous cela possible ou une autre solution.
    Cordialement Dominique

    • Bonjour Dominique,

      Merci pour ce message.
      Mon système est sur Rpi3 et tourne plutôt pas mal (ça reste un Rpi).
      Mais il est vrai que je suis passé à un Raspbian Lite puisque j’ai migré le tout dans un petite boite sans écran.
      J’en parle dans l’article “Une alarme en boîte“.
      D’ailleurs, je viens de le mettre à jour suite à l’ajout d’un bouton pour éteindre mon Raspberry Pi.

      Pour votre question, il semble possible d’utiliser un accès 3G ou 4G.
      Des connaissances qui ont réalisé ce type de système l’avaient cependant fait avec une clef USB spécifique.
      Mais je crois avoir lu des articles parlant d’utiliser un vieux téléphone portable comme “modem”.

      Le système MotionEye sera cependant non visible de l’extérieur car, selon mes connaissances, l’accès de l’extérieur vers le Raspberry Pi sera bloqué.
      En effet, mes recherches sur le sujet pour aider les personnes précédemment citées ont toutes donné la même réponse : les Fournisseurs d’Accès bloquent tous les ports dans le sens “extérieur vers système”.
      Vous devriez pouvoir envoyer des courriels mais pas voir les vidéos en “direct”.

      Pour les SMS, si votre portable perso est chez Free = je sais faire, sinon, je ne sais pas.
      Et envoyer des SMS avec le Rpi lui-même en utilisant son “modem” signifie installer des trucs comme RaspiSMS je pense (jamais essayé).

      Voilà pour une première réponse malheureusement limitée par mes compétences et mes usages.

      Très bonne continuation,
      Au plaisir de vous relire,

  4. Rétroliens : Photomaton automatique à base de Raspberry Pi – TREVILLY.COM

  5. Hello, et merci pour ce tuto!
    Petite question: à ta connaissance, est-ce que l’ensemble MotionEye+Motion fonctionne toujours avec la dernère version en date de Motion ? (4.2.1 à ce jour)

    • Salut,
      Je viens de l’allumer pour toi.
      Voilà ce qu’il me dit :
      motionEye Version 0.39.3
      Motion Version 4.1.1
      OS Version Raspbian 9.4
      Je vais voir si une MàJ est dispo.

      • Re,
        Après mise à jour ; pas mieux :
        motionEye Version 0.39.3
        Motion Version 4.1.1
        OS Version Raspbian 9.4

        Faudrait tester l’install’ en forçant la version 4.2-1 en faisant

        sudo apt-get update

        wget https://github.com/Motion-Project/motion/releases/download/release-4.2/pi_stretch_motion_4.2-1_armhf.deb

        sudo dpkg -i pi_stretch_motion_4.2-1_armhf.deb

        • Je confirme.
          Je viens d’écraser une de mes cartes SD pour tester.
          Installation de Raspbian Lite et mises à jour.
          Ensuite, reprise de mon tuto mais en modifiant le téléchargement :
          wget https://github.com/Motion-Project/motion/releases/download/release-4.2/pi_stretch_motion_4.2-1_armhf.deb
          Puis :
          sudo dpkg -i pi_stretch_motion_4.2-1_armhf.deb
          Cela a créé des erreurs.
          Mais j’ai continué 🙂
          Ensuite, la ligne
          sudo apt-get install python-pip python-dev libssl-dev libcurl4-openssl-dev libjpeg-dev libz-dev
          a posé un peu plus de soucis avec, carrément, des refus.
          Mais un petit
          sudo apt --fix-broken install
          a permis de réparer puis de relancer ensuite la ligne
          sudo apt-get install python-pip python-dev libssl-dev libcurl4-openssl-dev libjpeg-dev libz-dev
          J’ai donc réussi à terminer le tuto comme il faut.

          Résultat :
          motionEye Version 0.39.3
          Motion Version 4.2
          OS Version Raspbian 9.4

          Et MotionEye tourne.

          Edit après quelques jours de tests en version 4.2 :
          Restez sur Motion 4.1.1 ; la migration et/ou l’installation directe avec Motion 4.2.2 donnent des erreurs diverses et rendent l’usage problématique.
          Personnellement, je suis revenu à la version 4.1.1 afin que tout fonctionne correctement.

          • En effet, j’y suis arrivé de mon côté aussi
            Et as-tu essayé de combiner Motioneye avec Home Assistant (Hass.io). Ca a l’air bien fait pour automatiser pas mal de choses, mais pour l’instant j’ai pas réussi à avoir une installation complète de tout ça…

  6. Rétroliens : TREVILLY.COM

  7. Rétroliens : Installation de MotionEye sur Raspbian Stretch sur Raspberry Pi3 – TREVILLY.COM

    • Bonjour Kosox,
      Avais-tu eu un démarrage de MagicMirror avant l’installation de MotionEye ?
      Si tu tapes sudo systemctl disable motioneye puis sudo reboot, vois-tu MagicMirror démarrer ?
      @+

  8. Merci Alban ; t’es trop cool avec nous ! Passer des heures à installer, faire des captures d’écran, retravailler tes captures et rédiger cet article, vraiment, c’est classe de ta part.
    Je vais essayer ça avec mes camera ip.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*