sábado, 14 de junio de 2014

Cliente torrent para RaspberryPi

Cliente torrent para RaspberryPi


Tenemos un equipo conectado a la red y encendido 24 horas al día. Uno de los mejores usos que le podemos dar es que se ponga a descargar contenido por torrent. En este post os pongo la solución que instalado en mi RaspberryPi, no es la más elegante pero si que es la más cómoda.

Lo que buscamos es poder descargar torrents, añadiéndolos a nuestro RaspberryPi desde el propio Raspberry, desde VPN, por tunel ssh y desde nuestro móvil con Android. Para que cumpla con todo, he buscado, rebuscado y probado y la mejor solución es usar Transmission. Como en realidad se trata de un programa para entorno gráfico, tenemos que usar XVFB

 

Tal que así:



apt-get install xvfb transmission

Probamos que no tiene fallos:


usr/bin/xvfb-run -a transmission
y quitamos con ctrl+c a los 30 segundos. Lo mejor, para hacer la configuración es exportar las X desde el equipo desde el que nos estemos conectando:



xhost +
ssh root@192.168.1.2 -X
esa es la IP de mi RaspberryPi. Ponemos la clave y ejecutamos:



transmission
Nos abrirá el programa en cuestion:


y ajustamos las opciones. Es casi obligatorio activar el control remoto y acceso web. Si nos resulta imposible exportar las X, podemos cambiar las opciones a mano en el fichero:


/root/.config/transmission/settings.json
Presta especial atención a las líneas:













"download-dir": "/mnt/porver",
"incomplete-dir": "/mnt/tmptorrents",
"incomplete-dir-enabled": true,
"peer-port": 51413,
"rpc-authentication-required": true,
"rpc-bind-address": "0.0.0.0",
"rpc-enabled": true,
"rpc-password": ALGO_ENCRIPTADO
"rpc-port": 9091,
"rpc-username": "admin",
"watch-dir": "/mnt/tmptorrents",
"watch-dir-enabled": true
Lo que viene a ser más o menos, que los .torrents que se añadan a /mnt/tmptorrents/ se descargaran automáticamente y los terminados se moverán a /mnt/porver/ Ahora creamos unos enlaces para que arranque con el sistema:


vim /etc/init.d/transmission.sh
y ponemos por ejemplo:


/usr/bin/xvfb-run -a transmission &
Y ahora para que arranque solito:



cd /etc/rc2.d/
ln -s ../init.d/transmission.sh S99transmission.sh
y probamos reiniciando o:


/etc/init.d/transmission.sh
O tambien podemos añadir al archivo:


/etc/rc.local
la linea:


/etc/init.d/transmission.sh
Antes del exit 0
Bajando torrents
Vale, ahora vamos a acceder via web:


http://192.168.1.2:9091
Pide el usuario y clave, metemos y:


que bonito es, desde ahí podemos hacer cambios en la configuración, añadir torrents y gestionar las descargas. Si estas en otra lan, puedes hacer un tunel ssh:


ssh root@TU_HOST.dyndns.org -L 6543:192.168.1.2:9091
y en el navegador:


http://localhost:6543
O podemos abrir un elinks por ssh o similar y bajar los torrents en /mnt/tmptorrents. O bien desde android, vpn con Remote Transmission.


No se te olvide añadir /mnt/porver a tu minidlna!

viernes, 13 de junio de 2014

Webcam streaming y sensor de movimiento con Raspberry Pi

Tras seguir este tutorial y si todo sale bien :) podras conectarte a tu raspberry y ver lo que la webcam esta viendo, esto da infinitas posiblidades, como el control a distancia de tu casa o la deteccion de movimiento. Con este sistema te podras ahorrar mucho dinero en alarmas ya que cumpliras la misma funcion con tu raspberry pi.

Tambìén podemos combinar el otro tutorial http://tutorialesraspberry.blogspot.com.es/2014/03/como-enviar-y-recibir-whatsapps-usando.html  para que cuando captures una foto enviarla por Whatsapp.


1-ACTUALIZAR LA RASPBERRY

 
sudo apt-get update
sudo apt-get upgrade

 

2-INSTALAR MOTION:::


sudo apt-get install motion

 

3-CONFIGURAR:

 
Con este conjunto se puede controlar un brick y todos sus motores desde python

sudo nano /etc/motion/motion.conf

Daemon = OFF a ON
webcam_localhost = ON a OFF
 


sudo nano /etc/default/motion

start_motion_daemon=no a yes

 

4-COMENZAR SERVICIO


sudo service motion start

 

5-COMPROBAR QUE TODO FUNCIONA

 
abrimos el navegador y vamos a http://laipdenuestraraspberry:8080
si no funciona comprobad que en el archivo /etc/motion/motion.conf el parametro port es el 8080, se puede cambiar el puerto donde va a hacer streaming desde este archivo, tambien se pueden modificar muchas variables como la calidad de imagen, altura... el mio lo he configurado asi pero el vuestro puede ser totalmente diferente.



daemon on
videodevice /dev/video0
width 1600
height 1200
framerate 100

############################################################
# Live Webcam Server
############################################################

# The mini-http server listens to this port for requests (default: 0 = disabled)
webcam_port 8080

# Quality of the jpeg (in percent) images produced (default: 50)
webcam_quality 60

# Output frames at 1 fps when no motion is detected and increase to the
# rate given by webcam_maxrate when motion is detected (default: off)
webcam_motion off

# Maximum framerate for webcam streams (default: 1)
webcam_maxrate 100

# Restrict webcam connections to localhost only (default: on)
webcam_localhost off

# Limits the number of images per connection (default: 0 = unlimited)
# Number can be defined by multiplying actual webcam rate by desired number of seconds
# Actual webcam rate is the smallest of the numbers framerate and webcam_maxrate
webcam_limit 0