Problem
Ich suche nach einem Bewegungsmelder, der eingerichtet werden kann, um ein verwurzeltes Android (4.3) -Tablet zu aktivieren und den Bildschirm einzuschalten, wenn jemand in einem Radius von etwa 2-3 m daran vorbeikommt.
Ideen
Ich bin definitiv bereit, ein externes Gerät dafür zu besorgen und einen (angemessenen) Geldbetrag zu investieren. Es müsste nur eines sein, das ich irgendwie mit dem Tablet verbinden kann.
Gibt es möglicherweise Näherungsmelder aus dem Bereich der Hausautomation mit einer anständigen Erkennungsqualität (guter Winkel und konfigurierbarer Abstand), die Android-Push-Benachrichtigungen senden können? Ich kann bei Bedarf Code von Grund auf neu schreiben, bin aber im Hardwarebereich sehr ahnungslos und unerfahren, sodass ich beispielsweise nicht weiß, wie man einen Lötkolben hält. ;)
Hintergrund
Die Idee hier ist, ein altes Tablet in eine Art stationären Armaturenbrettbildschirm zu verwandeln, damit ich mir keine besonderen Sorgen über den Batterieverschleiß mache (es ist jetzt nicht mehr gültig und wird von nun an mit angeschlossenem Netzkabel verwendet, bis es funktioniert stirbt) oder intensive Nutzung (es sei denn, wir sprechen von 100% CPU 24/7, was es wahrscheinlich in ein paar Tagen töten würde).
Frühere Forschungen
Ich habe ein wenig untersucht, ob dies mit den vorhandenen Sensoren im Gerät möglich ist, und ich glaube, dass dies nicht möglich ist.
Das Problem bei der Verwendung des Näherungssensors besteht darin, dass er wirklich nur zurückgibt, ob sich etwas (vermutlich Ihr Ohr während eines Anrufs) direkt daneben befindet (einige Zentimeter entfernt). Aber ich suche etwas im 2-3m Bereich.
Die andere Idee wäre die nach vorne gerichtete Kamera, aber das Problem scheint zu sein, dass a) die Kamera in vielen Geräten automatisch ausgeschaltet wird, wenn der Bildschirm ausgeschaltet ist, und b) nur Vordergrund-Apps auf die Kamera zugreifen können, aber ich möchte, dass das Tablet dies tut Zeige eine andere App bei der Erkennung.
Ich habe kurz nach dem Aufwecken des Bildschirms als Reaktion auf Push-Benachrichtigungen gesucht, und das scheint mit der PowerManager-API nicht allzu schwierig zu sein . Ich bin mir nicht sicher, wie schnell das Gerät im Tiefschlaf auf einen Stoß reagieren würde, aber das ist ein sekundäres Problem.
Antworten:
Damit Sie wissen, dass ich eine einfache Lösung gefunden habe, kombiniert sie eine App aus dem App Store namens Motion Detector von jastrzab: https://play.google.com/store/apps/details?id=org.motion.detector Installieren Sie dann ein Plugin namens Turn Screen: https://play.google.com/store/apps/details?id=org.jastrzab.plugin.screen
Funktioniert tagsüber oder bei eingeschaltetem Licht. Ich arbeite derzeit an einem externen PIR-Bewegungssensor, mit dem das Tablet in der Dunkelheit aufwachen kann. Das bisher einfache Design verwendet nur einen billigen PIR-Sensor und ein kleines LED-Licht, das unter der Kamera angebracht ist. Wenn ich am PIR vorbeigehe, wird das LED-Licht ausgelöst, sodass die Kamera sehen kann, was eine Bewegung auslöst. In der Hoffnung herauszufinden, wie Sie die LED entfernen und den PIR über die Kopfhörerbuchse oder USB am Tablet direkt in das Tablet einführen können. Vorschläge sind willkommen.
quelle
Wie von Dallas Partin hier erwähnt , gibt es eine kostenlose App namens Motion Detector . Ich benutze es schon eine Weile und kann Ihnen sagen, dass es mit anderen Apps im Vordergrund und bei gesperrtem Bildschirm funktioniert. Dadurch wird die Bewegung mit der eingebauten Kamera erkannt, sodass sie kostenlos ist. Außerdem müssen Sie Ihr Gerät dafür nicht rooten.
Sie sagten, Sie wüssten nicht, wie man lötet, aber es gibt eine sehr einfache Möglichkeit, Ihren eigenen externen Sensor dafür herzustellen. Von zwei mir bekannten Methoden habe ich unten eine erwähnt:
Methode 1. Mit eingebauter Kamera
Laden Sie Motion Detector herunter .
Laden Sie Tasker herunter .
Laden Sie AutoStart herunter
Starten Sie die Tasker- App und tippen Sie auf die drei Punkte in der oberen rechten Ecke.
Tippen Sie Einstellungen → UI (am oberen Rand), deaktivieren Sie Anfänger - Modus .
Beenden Sie das und tippen Sie oben auf die Registerkarte Vars .
Tippen Sie auf
+
und nennen Sie es % DISPLAYSTATE .Gehen Sie zur Registerkarte Profile und tippen Sie auf
+
→ Ereignis → Anzeige → Anzeige ein .Tippen Sie auf die BackTaste. Tippen Sie auf Neue Aufgabe und benennen Sie sie
Display On
.Tippen Sie auf
+
→ Variablen → Variablensatz . Tippen Sie auf das Stiftsymbol neben Name .Tap % display und sagt , wo es zu , es machen
1
.Wiederholen „Schritt 11“ , außer dass alles ändern zu Off anzeigen und ändern , wo wir setzen
1
auf0
.Gehen Sie oben zur Registerkarte Szenen .
Tippen Sie auf
+
und nennen Sie es etwas.Halten Sie die gestrichelte Linie gedrückt und ziehen Sie sie an die Größe Ihres Bildschirms an.
Tippen Sie auf das Zahnradsymbol in der oberen linken Ecke, um zurückzukehren.
Tippen Sie auf Profile und erstellen Sie mit der
+
Schaltfläche ein neues .Tippen Sie auf Ereignis → System → Empfangene Absicht .
Sie können alles ignorieren, außer wo Aktion steht . Hier müssen Sie eingeben
org.jastrzab.move.ACTION_GLOBAL_BROADCAST
(Großbuchstaben sind wichtig). Wenn dies bei Ihnen nicht funktioniert, versuchen Sie stattdessen Folgendesorg.motion.detector.ACTION_GLOBAL_BROADCAST
.Tippen Sie auf das Zahnradsymbol (hinten) in der oberen linken Ecke. Es erscheint ein Menü.
Tippen Sie auf Neue Aufgabe und benennen Sie sie.
Tippen Sie innerhalb dieser Aufgabe
+
erneut auf und klicken Sie auf Szene → Szene anzeigen .Wenn dort Name steht , tippen Sie auf das Lupensymbol (nicht auf den Stift) und dann auf den Namen Ihrer Szene .
Jetzt steht dort Anzeige als "Aktivität, Vollanzeige, kein Balken".
Scrollen Sie nach unten und es wird angezeigt, ob . Tippen Sie auf das Stiftsymbol und wählen Sie % DISPLAYSTATE .
Tippen Sie auf die Schaltfläche in der Mitte und ändern Sie sie in Gleich. Geben Sie im rechten Feld Folgendes ein
0
.Tippen Sie auf
+
und führen Sie Aufgabe → Warten aus .Ändern Sie die MS auf 25 bis 100.
Tippen
+
→ Szene → zerstört Szene und schlug auf das Lupensymbol auf Namen . Wählen Sie Ihre Szene aus.Kehren Sie nun zum Hauptbildschirm der Tasker- App zurück.
Rufen Sie die Motion Detector- App auf und stellen Sie sicher, dass sie deaktiviert ist. Wenn nicht, tippen Sie auf den blauen Kreis.
Zum Ende und sagt , wo es sendet , stellen Sie sicher , dass es auf .
Gehen Sie zurück nach oben und tippen Sie erneut auf den blauen Kreis, um ihn einzuschalten.
Öffnen Sie den automatischen Start und stellen Sie sicher, dass Ein angezeigt wird .
Tippen Sie auf Hinzufügen → Alle Anwendungen anzeigen → Bewegungsmelder .
Aktivieren Sie "Nach dem automatischen Start zum Startbildschirm wechseln" und ändern Sie "Startverzögerung" in
5
.Das hat bei mir einwandfrei funktioniert!
Auch dies zur Kenntnis , dass in Bewegungsmelder gibt es Einstellungen , die Sie ändern können , wenn Bewegungsmelder ist ausgeschaltet . Eine der wichtigsten ist die Kamera. Wenn Sie Probleme haben, stellen Sie bitte sicher, dass die Kamera auf Front eingestellt ist .
Sie sagten, Sie wollten einen externen Sensor, der Entfernungen innerhalb von 2-3 cm erfassen kann, aber wenn Sie sich für eine weitergehende Erfassungslösung entscheiden, ist dies sehr zuverlässig und relativ einfach einzurichten! Aber wenn Sie immer noch Ihr Herz auf einen externen Sensor eingestellt haben, würde ich Ihnen auch gerne einige Anweisungen dazu geben!
Viel Glück und ich hoffe das hilft dir!
quelle
org.motion.detector.ACTION_GLOBAL_BROADCAST
. Siehe Dokumentation hier: programy.jastrzab.com/… und Diskussion hier: reddit.com/r/tasker/comments/27bvf8/help_motion_detector_app/… Das oben genannte funktioniert immer noch; Vertauschen Sie einfach den Paketnamen durch den neuen in diesem Kommentar.Ich weiß nicht, ob das zu Ihnen passt, aber was ist mit einem Netzstecker mit Bewegungssensor? Wenn eine Bewegung erkannt wird, wird das Tablet mit Strom versorgt und der Bildschirm wird eingeschaltet. Außerdem können Sie mit Tasker viel mehr Dinge konfigurieren, die zu tun sind, wenn Bewegungen erkannt werden.
quelle
Ich hasse es, es zu sagen, aber alles, was ich getan habe, war, meinen Feed von meinem PIR in der Decke (der bereits LEDs in der Dusche steuert) an meinen Android anzuhängen. Wenn jemand hereinkommt, schaltet sich das Telefon ein und Bob ist dein Onkel.
quelle
Ich habe nach einer Möglichkeit gesucht, den Tablet-Bildschirm einzuschalten, wenn ich mich dem Tablet nähere, das an der Wand montiert ist, um mein Zuhause zu überwachen. Genau wie der Nest-Thermostat. Ich habe kürzlich die Konnected-Alarmsystemplatine und das WLAN-Modul von Nate Clark gekauft. Er schlug mir vor, www.ozerov.de/fully-kiosk-browser/ zu verwenden . Es gibt eine geringe Lizenzgebühr. Es funktioniert gut für den beabsichtigten Zweck. Ich verwende Actiontiles, die in meine Smartthings integriert sind. Mein Tablet ist an der Wand mit kontinuierlicher Stromversorgung montiert.
quelle
Vielleicht möchten Sie sich Wimoto ansehen . Es handelt sich um kleine und billige Bluetooth-Sensoren, die in verschiedenen Varianten erhältlich sind (Temperatur, Bewegungserkennung, Flüssigkeitserkennung usw.). Sie sagen, dass eine Android-App eingeht und dass in naher Zukunft ein SDK dafür veröffentlicht wird.
Wenn Sie jedoch etwas Einfacheres möchten (und Ihr Tablet über eine nach vorne gerichtete Kamera verfügt), können Sie einfach eine App verwenden. Zum Beispiel (kurz nach einer Schnellsuche, also nicht verwendet) Kamera-Trigger .
Hoffe das hilft.
quelle
Der einzige erschwingliche und einigermaßen zugängliche Bewegungssensor, den ich finden konnte, ist der Belkin WeMo Motion .
Ian McCracken erstellte ein inoffizielles SDK für das WeMo namens Ouimeaux ( docs , PyPi ).
Mein aktueller Plan ist es, eine winzige Anwendung zu schreiben, die auf einem Raspberry Pi ausgeführt wird und Ouimeaux verwendet, um auf ein Signal von WeMo Motion zu reagieren und eine Push-Benachrichtigung an das Android-Gerät zu senden. Und dann eine noch einfachere Android-App, die auf die Push-Benachrichtigung reagiert, das Gerät aufweckt und den Bildschirm einschaltet. (Letzteres kann stattdessen auch mit Tasker durchgeführt werden.)
In einem zweiten Schritt könnten die relevanten Teile von Ouimeaux in Java umgeschrieben werden, und dann wäre es möglich, eine direkte Verbindung von der App zum WeMo herzustellen, wodurch der Raspberry Pi überflüssig wird.
Verbesserungsvorschläge sind natürlich willkommen. Insbesondere, wenn Sie wissen, wie Sie einen Android-Bildschirm über ein Python- / Shell-Skript aktivieren oder auf andere Weise eine Push-Benachrichtigung auslösen können. Das klingt zu trivial, um eine neue App schreiben zu müssen.
quelle
adb
mit etwas wie Wakey Droid auszulösen .