Teniendo la necesidad de la instalación de una cámara de seguridad inalámbrica y viendo los altos costos que ofrecen las soluciones comerciales, me pareció una buena idea implementar este sistema de una forma alternativa más accesible. Si bien no ofrece funciones como la capacidad de mover la cámara o hacerle zoom, o que tenga un pequeño delay a la hora de mostrar el video, me pareció más que suficiente para mí y otra gente que necesite soluciones similares.
Materiales utilizados
Router TP-Link MR3020
Router de bolsillo capaz de alimentarse a 2,6V, aunque se recomienda como mínimo 5V. Incorpora un puerto USB destinado a la conexión de modems 3G, pero usando el firmware alternativo OpenWrt tiene múltiples funciones, incluyendo la posibilidad de conexión de una cámara Web.
Webcam Logitech c210
Cámara Web con soporte nativo para Linux vía UVC
Procedimiento
Descargamos de aquí un snaphost de OpenWrt (está customizada para el MR3020 debido a que la versión actual no está soportada). Conectamos el router por Ethernet y accedemos vía web a este, con la IP 192.168.0.254, siendo el usuario y la contraseña admin por defecto. Seleccionamos la opción de actualizar el firmware y subimos el binario de OpenWRT descargado anteriormente. Esperamos a que se instale y ya deberíamos tener OpenWRT funcionando.
Ahora la IP pasará a ser 192.168.1.1. Antes de acceder a la interfaz de administración web que viene instalada por defecto, debemos acceder vía telnet y ejecutar el comando passwd para cambiar la contraseña de root, necesaria para acceder al servidor HTTP:
Para hacer que el router se conecte a nuestra red inalámbrica se debe seleccionar la opción Scan en el menú Network-Wifi y conectarnos a la red especificada, asegurándose que está en modo LAN y que esté activada la opción Replace wireless configuration:
Le damos a Save&Apply y en Network->Interfaces deberíamos ver que se conectó a la red inalámbrica. En este punto ya se puede desconectar de la red cableada y acceder por Wi-Fi si nos es más cómodo.
Instalamos los paquetes para dar soporte al puerto USB y a la Webcam y el programa que nos permita hacer streaming de video con el siguiente comando (accediendo al router por SSH):
Probamos correr mjpg-streamer ejecutando el siguiente comando:
Luego accedemos a http://192.168.1.1:8080/?action=streamer para ver en vivo o a http://192.168.1.1:8080/?action=snapshot para obtener una captura de la cámara web.
Si queremos que mjpg-streamer se autoinicie ejecutamos el comando:
Para requerir un usuario y contraseña al acceder debemos editar el fichero /etc/config/mjpg-streamer agregándole la siguiente línea:
Reemplazando user por el usuario y password por la contraseña deseada. Luego editamos el fichero /etc/init.d/mjpg-streamer de esta manera:
Una vez hecho esto ya podemos conectar desde cualquier lado nuestro router junto a la webcam y este, una vez encendido, estará corriendo el servicio mjpg-streamer.
Más información:
Instalación de OpenWrt en TP-Link MR3020:
Configuración básica de OpenWRT:
Soporte USB:
Soporte para Webcam:
Configuración de mjpg-streamer:
Saludos!
Materiales utilizados
Router TP-Link MR3020
Router de bolsillo capaz de alimentarse a 2,6V, aunque se recomienda como mínimo 5V. Incorpora un puerto USB destinado a la conexión de modems 3G, pero usando el firmware alternativo OpenWrt tiene múltiples funciones, incluyendo la posibilidad de conexión de una cámara Web.
Webcam Logitech c210
Cámara Web con soporte nativo para Linux vía UVC
Procedimiento
Descargamos de aquí un snaphost de OpenWrt (está customizada para el MR3020 debido a que la versión actual no está soportada). Conectamos el router por Ethernet y accedemos vía web a este, con la IP 192.168.0.254, siendo el usuario y la contraseña admin por defecto. Seleccionamos la opción de actualizar el firmware y subimos el binario de OpenWRT descargado anteriormente. Esperamos a que se instale y ya deberíamos tener OpenWRT funcionando.
Ahora la IP pasará a ser 192.168.1.1. Antes de acceder a la interfaz de administración web que viene instalada por defecto, debemos acceder vía telnet y ejecutar el comando passwd para cambiar la contraseña de root, necesaria para acceder al servidor HTTP:
Para hacer que el router se conecte a nuestra red inalámbrica se debe seleccionar la opción Scan en el menú Network-Wifi y conectarnos a la red especificada, asegurándose que está en modo LAN y que esté activada la opción Replace wireless configuration:
Le damos a Save&Apply y en Network->Interfaces deberíamos ver que se conectó a la red inalámbrica. En este punto ya se puede desconectar de la red cableada y acceder por Wi-Fi si nos es más cómodo.
Instalamos los paquetes para dar soporte al puerto USB y a la Webcam y el programa que nos permita hacer streaming de video con el siguiente comando (accediendo al router por SSH):
opkg update && opkg install kmod-usb-core kmod-usb2 kmod-video-core kmod-video-uvc mjpg-streamer
Probamos correr mjpg-streamer ejecutando el siguiente comando:
mjpg_streamer -i “input_uvc.so -f 4″ -o “output_http.so”
Luego accedemos a http://192.168.1.1:8080/?action=streamer para ver en vivo o a http://192.168.1.1:8080/?action=snapshot para obtener una captura de la cámara web.
Si queremos que mjpg-streamer se autoinicie ejecutamos el comando:
/etc/init.d/mjpg-streamer enable
Para requerir un usuario y contraseña al acceder debemos editar el fichero /etc/config/mjpg-streamer agregándole la siguiente línea:
option password user:password
Reemplazando user por el usuario y password por la contraseña deseada. Luego editamos el fichero /etc/init.d/mjpg-streamer de esta manera:
Una vez hecho esto ya podemos conectar desde cualquier lado nuestro router junto a la webcam y este, una vez encendido, estará corriendo el servicio mjpg-streamer.
Más información:
Instalación de OpenWrt en TP-Link MR3020:
Configuración básica de OpenWRT:
Soporte USB:
Soporte para Webcam:
Configuración de mjpg-streamer:
Saludos!