Problème
Je recherche un détecteur de mouvement qui peut être configuré pour réveiller une tablette Android (4.3) enracinée et allumer l'écran lorsque quelqu'un passe près de lui dans un rayon de 2-3 mètres.
Des idées
Je suis vraiment prêt à obtenir un appareil externe pour cela et à investir une somme d'argent (raisonnable), il suffirait que ce soit un appareil que je puisse en quelque sorte connecter à la tablette.
Existe-t-il des détecteurs de proximité du domaine de la domotique avec une qualité de détection décente (bon angle et distance configurable) qui peuvent envoyer des notifications push Android? Je suis capable d'écrire du code à partir de zéro si nécessaire, mais je suis très désemparé et inexpérimenté dans le domaine du matériel, donc je ne saurais pas comment tenir un fer à souder, par exemple. ;)
Contexte
L'idée ici est de transformer une vieille tablette en une sorte d'écran de tableau de bord fixe, donc je ne suis pas particulièrement inquiet pour l'usure de la batterie (elle est maintenant en fin de vie et sera désormais utilisée avec le câble d'alimentation branché jusqu'à ce qu'elle meurt) ou une utilisation intense (sauf si nous parlons de 100% CPU 24/7, ce qui le tuerait probablement dans quelques jours).
Recherche précédente
J'ai étudié un peu si cela pouvait être fait avec les capteurs existants dans l'appareil et je pense que ce n'est pas possible.
Le problème avec l'utilisation du capteur de proximité est qu'il ne retourne vraiment que si quelque chose (supposé être votre oreille pendant un appel) est juste à côté (à quelques centimètres). Mais je cherche quelque chose dans la zone 2-3m.
L'autre idée serait la caméra frontale, mais le problème semble être que a) la caméra de nombreux appareils s'éteint automatiquement lorsque l'écran est éteint et b) seules les applications de premier plan peuvent accéder à la caméra, mais je veux que la tablette afficher une autre application sur la détection.
J'ai jeté un coup d'œil sur le réveil de l'écran en réponse aux notifications push et cela ne semble pas trop difficile à utiliser l' API PowerManager . Je ne sais pas à quelle vitesse l'appareil répondrait à une poussée lorsqu'il est en sommeil profond, mais c'est un problème secondaire.
Réponses:
Juste pour vous faire savoir que j'ai une solution simple, elle combine une application de l'App Store appelée Motion Detector by jastrzab: https://play.google.com/store/apps/details?id=org.motion.detector Installez ensuite un plug-in appelé Turn Screen: https://play.google.com/store/apps/details?id=org.jastrzab.plugin.screen
Fonctionne très bien pendant la journée ou avec les lumières allumées. Je travaille actuellement sur un capteur de mouvement PIR externe qui permettra à la tablette de se réveiller dans l'obscurité. La conception simple utilise jusqu'à présent un capteur PIR bon marché et une petite lumière LED montée sous la caméra. Lorsque je passe près du PIR, la lumière LED est déclenchée, ce qui permet à la caméra de voir, ce qui déclenche le mouvement. En espérant découvrir comment éliminer la LED et simplement exécuter le PIR directement dans la tablette en utilisant la prise casque ou USB sur la tablette. Suggestions bienvenues.
la source
Comme mentionné par Dallas Partin ici , il existe une application gratuite appelée Motion Detector . Je l'utilise depuis un certain temps et je peux vous dire que cela fonctionnera avec d'autres applications au premier plan et avec l'écran verrouillé. Cela détectera le mouvement à l'aide de la caméra intégrée, donc c'est gratuit. De plus, vous n'avez pas besoin de rooter votre appareil pour cela.
Vous avez dit que vous ne saviez pas comment souder, mais il existe un moyen très simple de créer votre propre capteur externe pour cela. Sur deux méthodes que je connais, j'en ai mentionné une ci-dessous:
Méthode n ° 1. Utilisation de la caméra intégrée
Téléchargez Motion Detector .
Téléchargez Tasker .
Télécharger AutoStart
Lancez l' application Tasker et appuyez sur les trois points dans le coin supérieur droit.
Appuyez sur Préférences → UI (en haut), décochez Mode débutant .
Sortez de cela et appuyez sur l' onglet Vars en haut.
Appuyez
+
et nommez-le % DISPLAYSTATE .Accédez à l' onglet Profils et appuyez sur
+
→ sélectionnez Événement → Affichage → Affichage activé .Appuyez sur la Backtouche / le bouton. Appuyez sur Nouvelle tâche , nommez-la
Display On
.Appuyez sur
+
→ Variables → Ensemble de variables . Appuyez sur l'icône en forme de crayon à côté de Nom .Tapotez % DisplayState et où il est dit à , faire
1
.Répétez « étape 11 » sauf que tout changement d' affichage Off et le changement où nous mettons
1
à0
.Accédez à l' onglet Scènes en haut.
Appuyez
+
et nommez-le quelque chose.Maintenez enfoncé et faites glisser la ligne en pointillés et faites-en la taille de votre écran.
Appuyez sur l'icône d'engrenage dans le coin supérieur gauche pour revenir en arrière.
Appuyez sur Profils et créez-en un nouveau à l'aide du
+
bouton.Appuyez sur Événement → Système → Intention reçue .
Vous pouvez tout ignorer sauf là où il est dit Action . Ici, vous devez entrer
org.jastrzab.move.ACTION_GLOBAL_BROADCAST
(les majuscules sont importantes). Si cela ne fonctionne pas, essayez plutôt ce qui suitorg.motion.detector.ACTION_GLOBAL_BROADCAST
.Appuyez sur l'icône d'engrenage (arrière) dans le coin supérieur gauche. Il apparaîtra avec un menu.
Appuyez sur Nouvelle tâche et nommez-la quelque chose.
Dans cette tâche, appuyez à
+
nouveau sur et appuyez sur Scène → Afficher la scène .Là où il est écrit Nom , appuyez sur l'icône de la loupe (pas sur le crayon) et appuyez sur le nom de votre scène .
Maintenant, où il est dit Afficher comme , "Activité, Affichage complet, Pas de barre".
Faites défiler vers le bas et il dira si . Appuyez sur l'icône en forme de crayon et sélectionnez % DISPLAYSTATE .
Appuyez sur le bouton au milieu et changez-le en Égal. Dans la case de droite, tapez
0
.Appuyez
+
et faites Tâche → Attendre .Changer MS entre quelque part entre 25 et 100.
Appuyez sur
+
→ Scène → Détruire la scène et appuyez sur l'icône de la loupe sur Nom . Sélectionnez votre scène.Revenez maintenant à l'écran principal de l' application Tasker .
Accédez à l' application Motion Detector et assurez-vous qu'elle est désactivée. Sinon, appuyez sur le cercle bleu.
Allez en bas et là où il est dit Envoyer , assurez-vous qu'il est activé .
Retournez en haut et appuyez à nouveau sur le cercle bleu pour l'activer.
Ouvrez le démarrage automatique et assurez-vous qu'il indique Activé .
Appuyez sur Ajouter → Afficher toutes les applications → Détecteur de mouvement .
Cochez «aller à l'écran d'accueil après le démarrage automatique» et changez «délai de démarrage» en
5
.Cela a fonctionné parfaitement pour moi!
Notez également que dans Motion Detector, il existe des paramètres que vous pouvez modifier lorsque Motion Detector est désactivé . L'un des plus importants est l'appareil photo. Si vous rencontrez des problèmes, assurez-vous que la caméra est réglée sur Avant .
Vous aviez dit que vous vouliez un capteur externe capable de détecter une distance de 2-3 cm, mais si vous vous contentez d'une solution de détection plus éloignée, celle-ci est très fiable et relativement facile à installer! Mais si vous avez toujours le cœur sur un capteur externe, je serais plus qu'heureux de vous donner quelques instructions pour cela aussi!
Bonne chance et j'espère que cela vous aidera!
la source
org.motion.detector.ACTION_GLOBAL_BROADCAST
. Voir la documentation ici: programy.jastrzab.com/… et la discussion ici: reddit.com/r/tasker/comments/27bvf8/help_motion_detector_app/… Ce qui précède fonctionne toujours; changez simplement le nom du paquet avec le nouveau dans ce commentaire.Je ne sais pas si cela vous convient mais qu'en est-il d'une prise d'alimentation avec un capteur de mouvement? Lorsqu'il détecte un mouvement, la tablette sera connectée et l'écran s'allumera. De plus, avec Tasker, vous pouvez configurer beaucoup plus de choses à faire lorsqu'il détecte un mouvement.
la source
Je déteste le dire les gars mais tout ce que j'ai fait a été de fixer mon flux de mon PIR dans le plafond (qui contrôle déjà les leds dans la douche) à mon androïde. Quand quelqu'un entre dans le courant, allume le téléphone et Bob est ton oncle.
la source
Je cherchais un moyen d'avoir l'écran de la tablette lorsque je me rapproche de la tablette qui est montée sur le mur pour surveiller ma maison. Tout comme le thermostat Nest. J'ai récemment acheté la carte du système d'alarme Konnected et le module wifi de Nate Clark. Il m'a suggéré d'utiliser www.ozerov.de/fully-kiosk-browser/ Il y a une petite redevance. Cela fonctionne bien pour le but prévu. J'utilise des Actiontiles intégrés à mes Smartthings. Ma tablette est fixée au mur avec une alimentation continue.
la source
Vous voudrez peut-être consulter Wimoto . Ce sont de petits capteurs Bluetooth bon marché qui se déclinent en plusieurs saveurs (température, détection de mouvement, détection de liquide, etc.). Ils disent qu'il y a une application Android qui arrive et qu'il va y avoir un SDK dans un futur proche.
Là encore, si vous voulez quelque chose de plus simple (et que votre tablette dispose d'une caméra frontale), vous pouvez simplement utiliser une application. Par exemple (juste après une recherche rapide, je ne l'ai donc pas utilisé) Déclencheur de caméra .
J'espère que cela t'aides.
la source
Le seul capteur de mouvement abordable et raisonnablement accessible que j'ai pu trouver est le Belkin WeMo Motion .
Ian McCracken a créé un SDK non officiel pour le WeMo appelé Ouimeaux ( docs , PyPi ).
Mon plan actuel est d'écrire une petite application fonctionnant sur un Raspberry Pi qui utilise Ouimeaux pour répondre à un signal du WeMo Motion et envoyer une notification push à l'appareil Android. Et puis une application Android encore plus simple qui répond à la notification push et réveille l'appareil et allume l'écran. (Ce dernier pourrait également être faisable avec Tasker à la place.)
Dans un deuxième temps, les parties pertinentes d'Ouimeaux pourraient être réécrites en Java et il serait alors possible de se connecter directement de l'application au WeMo, rendant le Raspberry Pi superflu.
Bien entendu, les suggestions d'amélioration sont les bienvenues. En particulier si vous connaissez un moyen existant de réveiller un écran Android à partir d'un script Python / shell / autrement déclencher une notification push. Cela semble trop trivial pour nécessiter l'écriture d'une nouvelle application.
la source
adb
quelque chose comme Wakey Droid .