10 votos

Encendido del dispositivo Android con detector de movimiento (¿dispositivo externo?)

Problema

Estoy buscando un detector de movimiento que se pueda configurar para que despierte una tablet Android (4.3) rooteada y encienda la pantalla cuando alguien pase cerca de ella en un radio de quizás 2-3m.

Ideas

Definitivamente estoy dispuesto a conseguir un dispositivo externo para esto e invertir una cantidad (razonable) de dinero, sólo tendría que ser uno que pueda conectar de alguna manera a la tablet.

¿Hay quizás algún detector de proximidad del ámbito de la domótica con una calidad de detección decente (buen ángulo y distancia configurable) que pueda enviar notificaciones push de Android? Soy capaz de escribir algo de código desde cero si es necesario, pero soy muy despistado e inexperto en el campo del hardware, así que no sabría sostener un soldador, por ejemplo. ;)

Antecedentes

La idea aquí es transformar una vieja tablet en una especie de pantalla de tablero estacionaria, por lo que no me preocupa especialmente el desgaste de la batería (ya está al final de su vida útil y a partir de ahora se utilizará con el cable de alimentación enchufado hasta que muera) o el uso intenso (a menos que estemos hablando de un 100% de la CPU 24/7, lo que probablemente la mataría en pocos días).

Investigación previa

He investigado un poco si esto se podría hacer con los sensores existentes en el dispositivo y creo que no es posible.

El problema de usar el sensor de proximidad es que realmente sólo devuelve si algo (se supone que es tu oído mientras estás en una llamada) está justo al lado (a unos pocos centímetros). Pero estoy buscando algo en el área de 2-3m.

La otra idea sería la cámara frontal, pero el problema parece ser que a) la cámara en muchos dispositivos se apaga automáticamente cuando la pantalla está apagada y b) sólo las apps en primer plano pueden acceder a la cámara, pero yo quiero que la tablet muestre otra app al detectarla.

He echado un vistazo rápido en relación con el despertar de la pantalla en respuesta a las notificaciones push y que no parece demasiado difícil de usar el API de PowerManager . No estoy seguro de la rapidez con la que el dispositivo respondería a una pulsación cuando está en sueño profundo, pero ese es un problema secundario.

0 votos

¿Por qué no usar Bluetooth o NFC usando un script? He visto una prueba de concepto similar en otro lugar, utilizando bluetooth en el PC, y un dispositivo bluetooth que se lleva alrededor del cuello, dejar el escritorio del PC y el PC se bloquea, llegar de nuevo en las proximidades del PC, el PC se desbloquea.

0 votos

@t0mm13b La verdad es que no quiero ponerme nada. Esto pretende ser una configuración permanente y no quiero llevar un dispositivo BT el resto de mi vida. ;) El NFC haría que esto dejara de ser un manos libres, cosa que también preferiría que fuera. Pero que sigan llegando, ese es el tipo de ideas creativas que esperaba :)

0 votos

En las aplicaciones está la "domótica" y el control de alarmas del tipo de apps y hardware. Esa podría ser una forma de conseguir que un detector de infrarrojos humano envíe información al dispositivo.

7voto

Dallas Partin Puntos 31

Sólo para hacerle saber que tengo algunos hasta con una solución simple que combina una aplicación de la tienda de aplicaciones llamado Detector de movimiento por jastrzab: https://play.google.com/store/apps/details?id=org.motion.detector A continuación, instale un plugin llamado Turn Screen: https://play.google.com/store/apps/details?id=org.jastrzab.plugin.screen

  1. Instala ambas aplicaciones.
  2. Abre la aplicación del detector de movimiento y activa "Enviar" en la parte inferior de los ajustes. Haz clic en el detector de movimiento (en la parte superior) y luego desplázate hacia abajo hasta "cámara" y selecciona "frontal".
  3. Abre la aplicación Turn Screen. Pulsa el único botón para que se active.
  4. Abre los ajustes de Android, desactiva la pantalla de bloqueo o selecciona "ninguna".
  5. Cambia los ajustes de suspensión para que el tiempo de espera sea el deseado.
  6. Apaga el Daydream.
  7. Abre la aplicación (o la pantalla de inicio) que quieres que aparezca en la pantalla cuando la tablet se despierte, y ya está todo listo. Espera a que la pantalla se duerma y pasa o saluda a tu cámara y la despertará.

Funciona muy bien durante el día o con las luces encendidas. Actualmente estoy trabajando en un sensor de movimiento PIR externo que permitirá que la tablet se despierte en la oscuridad. El diseño simple hasta ahora sólo utiliza un sensor PIR barato y una pequeña luz led montada debajo de la cámara. Cuando paso por el PIR se dispara la luz LED permitiendo que la cámara vea, lo que desencadena el movimiento. Espero averiguar cómo eliminar el LED y sólo ejecutar el PIR directamente en la tablet utilizando la toma de auriculares o USB en la tablet. Sugerencias bienvenidas.

0 votos

Ah, y no te olvides de activar el detector de movimiento haciendo clic en el círculo azul de la parte superior de la página principal de la aplicación (junto a "Detector de movimiento"). Disfruta de

0 votos

Esto me ha funcionado muy bien, ¡gracias! Usando Android 4.4 kitkat

0 votos

El enlace que has proporcionado a Google Drive está roto :(

5voto

Daniel Ford Puntos 31

Tal y como menciona Dallas Partin aquí hay una aplicación gratuita llamada Detector de movimiento . Lo he estado usando por un tiempo, y puedo decir que funcionará con otras aplicaciones en primer plano y con la pantalla bloqueada. Esto detectará el movimiento utilizando la cámara incorporada, por lo que es libre. Además, no tienes que Rootear tu dispositivo para esto.

Dijiste que no sabías soldar, pero hay una forma muy sencilla de hacer tu propio sensor externo para esto. De los dos métodos que conozco, he mencionado uno a continuación:

Método 1. Utilizando la cámara integrada

  1. Descargar Detector de movimiento .

  2. Descargar Tasker .

  3. Descargar AutoStart

  4. Lanzar Tasker y pulse los tres puntos de la esquina superior derecha.

  5. Pulse Preferencias UI (en la parte superior), desmarque Modo principiante .

  6. Salga de ahí y pulse el botón Vars en la parte superior.

  7. Pulse + y nombrarlo %DISPLAYSTATE .

  8. Ir a la Perfiles y pulse + seleccione Evento Mostrar Pantalla encendida .

  9. Pulse Back tecla/botón. Pulse Nueva tarea , nómbralo Display On .

  10. Pulse + Variables Conjunto de variables . Pulse el icono del lápiz junto a Nombre .

  11. Pulse %DISPLAYSTATE y donde dice A , hazlo 1 .

  12. Repita el "paso 11" excepto que cambie todo a Pantalla apagada y cambiar donde ponemos 1 a 0 .

  13. Ir a la Escenas en la parte superior.

  14. Pulse + y ponerle un nombre.

  15. Mantén pulsado y arrastra la línea discontinua y hazla del tamaño de tu pantalla.

  16. Toca el icono del engranaje en la esquina superior izquierda para volver.

  17. Pulse sobre Perfiles y crear una nueva utilizando el botón + botón.

  18. Pulse sobre Evento Sistema Intención Recibida .

  19. Puedes ignorar todo excepto donde dice Acción . Aquí tienes que introducir org.jastrzab.move.ACTION_GLOBAL_BROADCAST (las mayúsculas son importantes). Si esto no le funciona, pruebe lo siguiente org.motion.detector.ACTION_GLOBAL_BROADCAST .

  20. Pulse el icono del engranaje (atrás) en la esquina superior izquierda. Aparecerá un menú.

  21. Pulse Nueva tarea y ponerle un nombre.

  22. Dentro de esa tarea, pulse el botón + de nuevo y pulse Escena Escena del espectáculo .

  23. Donde dice Nombre pulse el icono de la lupa (no el lápiz) y pulse sobre su nombre de la escena .

  24. Ahora donde dice Mostrar como , "Actividad, pantalla completa, sin barra".

  25. Desplácese hasta la parte inferior y dirá si . Pulse el icono del lápiz y seleccione %DISPLAYSTATE .

  26. Toca el botón del centro y cámbialo por el de Igualdad. En el cuadro de la derecha, escriba 0 .

  27. Pulse + y hacer Tarea Espera .

  28. Cambiar MS a algún lugar entre 25 y 100.

  29. Pulse + Escena Destruir la escena y pulse el icono de la lupa en Nombre . Selecciona tu escena.

  30. Ahora vuelve a la pantalla principal de Tasker app.

  31. Entra en el Detector de movimiento y asegúrese de que está desactivada. Si no es así, pulse el círculo azul.

  32. Vaya a la parte inferior y donde dice Enviar Asegúrese de que es En .

  33. Vuelve a la parte superior y toca de nuevo el círculo azul para que se encienda.

  34. Abrir Arranque automático y asegúrese de que dice En .

  35. Pulse Añadir Mostrar todas las aplicaciones Detector de movimiento .

  36. Marque la opción "ir a la pantalla de inicio después del inicio automático" y cambie el "retraso de inicio" a 5 .

Esto me ha funcionado a la perfección.

Además, tenga en cuenta que en Detector de movimiento hay ajustes que se pueden cambiar cuando el detector de movimiento es fuera de . Una de las más importantes es la cámara. Si tiene problemas, asegúrese de que Cámara se ajusta a Frente .

Usted dijo que quería un sensor externo que pudiera detectar la distancia dentro de los 2-3 cm, pero si se conforma con una solución de detección más lejana, esto es muy fiable y relativamente fácil de configurar. ¡Pero si usted todavía tiene su corazón puesto en un sensor externo, yo estaría más que feliz de darle algunas instrucciones para que también!

Buena suerte, y espero que esto te ayude.

0 votos

Gracias por tu respuesta, ¡probaré con el tiempo! (Pero actualmente no tengo tiempo para este proyecto, por desgracia.) Creo que he leído que si la cámara funciona en segundo plano es específico del dispositivo, pero voy a ver si mi dispositivo puede hacerlo.

0 votos

Ten en cuenta que no he dicho que quiera un sensor que detecte el movimiento en un radio de "2-3cm", sino que he dicho "2-3m", es decir, cuando una persona pase por la habitación en la que está el dispositivo.

0 votos

ten en cuenta que no he dicho que quiera un sensor que detecte el movimiento a una distancia de "2-3cm", sino que he dicho "2-3m" Ok, estaba pensando que parecía un poco cerca:) He leído que más dispositivos funcionarán con la cámara en segundo plano, pero sí, eso significa que no todos lo harán. Si no funciona en tu dispositivo específico y todavía quieres una solución, hacer un sensor externo no es tan difícil de hacer por menos de 10 dólares. Sin embargo, este método es mucho más sencillo y configurable. ¡Buena suerte con esto cuando tengas tiempo para trabajar en ello!

1voto

Jorge Puntos 1

No sé si te conviene, pero ¿qué tal un enchufe con sensor de movimiento? Cuando detecte movimiento, la tablet se conectará a la corriente y se encenderá la pantalla. Además con Tasker puedes configurar muchas más cosas para que haga cuando detecte movimiento.

1voto

Oling Cat Puntos 61

Odio decirlo chicos pero todo lo que hice fue conectar mi alimentación desde mi PIR en el techo (que ya controla los leds en la ducha) a mi Android. Cuando alguien viene en los interruptores de energía en el teléfono y bob es su tío.

0 votos

Utilizar la función de pantalla encendida al encender/apagar el dispositivo. Muy bien.

1voto

MarkH Puntos 11

He estado buscando una forma de tener la pantalla de la tablet encendida cuando me acerco a la tablet que está montada en la pared para vigilar mi casa. Al igual que el termostato Nest. Recientemente compré la placa del sistema de alarma Konnected y el módulo wifi de Nate Clark Me sugirió usar www.ozerov.de/fully-kiosk-browser/ Hay que pagar una pequeña licencia. Funciona bien para el propósito previsto. Estoy usando Actiontiles integrado con mi Smartthings. Mi tablet está montada en la pared con una fuente de alimentación continua.

           Nate Clark <nate@konnected.io>

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X