sábado, 17 de septiembre de 2016

Actualizar ROM Xiaomi Redmi 3 a MIUI 8

Hace como 3 meses le compré a mi madre el Xiaomi Redmi 3 con 2Gb de RAM y 16Gb de almacenamiento interno en Amazon, pero recientemente tuve un problema...

La ROM que venía no me sonaba mucho, era la 77.1.1.0 o algo así:



A parte de tener muchas cosas en inglés o mal traducidas a castellano, así como bloatware del tipo CM Security, Firewall ... de la noche a la mañana, comenzaron a aparecer anuncios de la nada, enlaces a páginas XXX, muy molesto todo, así que decidí meterle la ROM de MIUI 8 Global, y aquí os muestro como instarla en vuestro Xiaomi Redmi 3


miércoles, 2 de septiembre de 2015

¿Qué está pasando con ONO?

Desde hace aproximadamente un mes, vengo sufriendo problemas de lentitud en el acceso a internet. Muchos pensaréis que es problema de velocidad, pero eso queda descartado ya que tengo ONO 100Mb/10Mb, con lo que no es problema de caudal.

Realizando unas pruebas básicas de pings y traceroutes, descubrí que algo está pasando con los peerings que tiene ONO (Redes que interconectan ONO con otros operadores internacionales)

VEAMOS UN EJEMPLO

Condiciones iniciales:

  • Cable-modem Cisco EPC 3825 con WiFi desactivado
  • Unico equipo conectado: Macbook Air 2011 conectado por GigabitEthernet
  • DNS por defecto e IP asignada por DHCP

jueves, 29 de enero de 2015

¿Cómo obtener las fotos de un iPhone con jailbreak sin iTunes?

En esta entrada vamos a tratar de ver cómo recuperamos las fotos de nuestro iPhone, iPad o iPod Touch con el Jailbreak hecho. Siempre que hagamos esto sobre nuestro terminal, no tendremos ningún problema, pero como lo hagamos en algún terminal ajeno, estaremos cometiendo un delito.

He creado un pequeño script que podemos bajar desde aquí y que sólo es válido para Mac OSX y para distribuciones basadas en Debian (Ubuntu, Linux Mint...). Quizás os diga que el archivo no es seguro, pero es porque Google Drive detecta que es un archivo ejecutable. Siempre podéis revisar el código de estos Scripts para ver que no son maliciosos.


Encontrando nuestro equipo en la red

Lo primero de todo, deberemos saber la IP de nuestro dispositivo. Yo no me la sé, y tampoco voy a mirar el iPod para saber cuál es, por lo que voy a usar un escaneador de puertos y equipos como 'nmap' para ver cuál es mi dispositivo. En mi caso, estoy en la subred 192.168.X.0 con mascara de red 255.255.255.0. También podemos usar otros escaneadores de red como AngryIP Scanner
MBAir$ nmap 192.168.X.0/24
Cuando esté buscando, nos aparecerán los equipos de nuestra red, y aparecerá algo como esto:


Como vemos, el puerto 22 está abierto, lo cual nos indica que tiene instalado algún servidor SSH en el teléfono (Normalmente OpenSSH para enviar las aplicaciones descargadas al dispositivo iOS).

Ahora como ya sabemos la IP, sólo deberemos arrancar el programa.


sábado, 24 de enero de 2015

¿como resolver nombres en LAN?

Estando configurando mi Raspberry Pi, me resultaba bastante irritante tener que estar siempre metiendo la IP de mi raspi para conectarme por ssh, por lo que dije... ¿Por qué no voy a poder meterme por el nombre del host?

Veamos, el nombre del host es el nombre que identifica a un equipo en la red local, es decir, si te conectas a un router, ese router va a registrar en su tabla de rutas ARP tu ordenador con tu MAC y tu nombre de ordenador, es decir, algo como esto:


Entonces, ¿Para qué voy a teclear el 192.168.2.111 cuando puedo poner rpi?

Supongamos que estamos en la misma subred (La puerta de enlace y la máscara de red son la misma) y queremos conectar un ordenador a nuestro servidor por ssh. Haríamos en la terminal/putty el

siguiente comando:
MBAir:~ jorge$ ssh TU_USUARIO@192.168.2.111
Pues bien, si en vez de poner eso queremos poner:

lunes, 19 de mayo de 2014

¿Cómo eliminar los "Virus" de Twitter?

Llevo ya varias semanas viendo en mi timeline de Twitter que a muchas cuentas de jóvenes, no se si por desconocimiento o por querer espiar unas conversaciones de Whatsapp... Si, como leeis, espiar conversaciones de Whatsapp usando el usuario de Twitter... ¡QUÉ INGENUOS!

Partamos de la base de que Twitter es una red social de contactos masivos, es decir, que uno puede tener miles y miles de followers en una cuenta, pero no tener ni un solo amigo en la vida real. ¿Qué es lo que quieren entonces? Las páginas Web que piden un registro en nuestra cuenta de Twitter, tienen una serie de permisos, que antes de validarlos, nos los pone en un pequeño cuadro de diálogo como este:


Aqui nos pone que es lo que esa aplicación va a poder hacer, y nosotros estamos consintiendo que lo haga.  ¿Qué significa cada uno de los puntos que autorizamos?

sábado, 22 de febrero de 2014

Crea fotos HDR con Photoshop

Hoy en día los teléfonos móviles disponen de una función llamada HDR, que son las siglas de High Dynamic Range, es decir Alto Rango Dinámico.

¿Qué quiere decir esto? Pues bien, el HDR no es nada más que capturar dos imágenes con diferentes tiempos de exposición y apertura del diafragma para obtener los mejores matices de las luces y las sombras.

Un ejemplo es el siguiente.


Para conseguir el efecto de la fotografía anterior, vamos a necesitar una imagen cualquiera, a ser preferible en formato RAW. También es necesario tener Adobe Photoshop CS4 (o superior). 

Si hay algún perezoso que no le guste leer, al final hay un video-tutorial que también lo explica.

Recordar también que esto funciona tanto en Mac OSX como en Windows. Empecemos.
  • Abre tu imagen. Esta en mi caso.

  • Duplica la capa (Ctrl+J)
  • Hacer click en las opciones de la capa y seleccionar "Superponer". Establecer la "Opacidad" al 40% ó 50%. Según gustos. 


  • Aplana la imagen. Es decir, juntar las capas (Ctrl+E)
  • Duplica de nuevo la capa que acabas de juntar (Ctrl+J)
  • Desatura la imagen con Shift+Ctrl+U (se queda en B/N)
  • Invierte la capa duplicada (Ctrl+I)
  • Aplicar filtro de Desenfoque Gaussiano con valor 40

  • De nuevo, hacemos click en la opción de "Superponer" y lo ponemos a 100%

  • Duplicar y repetir el mismo proceso si fuese necesario. 
  • YA TENEMOS NUESTRA FOTOGRAFÍA EN PSEUDO HDR




VOILÀ


jueves, 13 de febrero de 2014

¿Cómo descargar todas tus fotos de Tuenti?

Personalmente hace ya bastante tiempo que no uso Tuenti... En un principio no lo quería borrar para no perder esas fotos de cuando era más joven (Qué tiempos aquellos en los que por algunas fotos me avergüenzo...). Navegando un poco por internet me encontré con una serie de scripts en Python que te permiten bajar las fotos, y aquí voy a juntar una serie de pasos para que os las podáis bajar fácilmente.


Windows XP, Vista, 7 y 8

  1. Poner Tuenti en inglés (Esquina superior derecha → Configuración → Cuenta → Idioma)
  2. Entrar en Tuenti móvil (http://m.tuenti.com) y salir. Esto es sólo para que quede constancia de que se ha usado el móvil para usar un script posterior.
  3. Descarga el archivo: Fotos Tuenti [16.88 MB]
  4. Extrae la carpeta "fotos tuenti" en la raíz del disco ( C:\ )
  5. Entramos en la carpeta "fotos tuenti" que se encuentra en "C:\fotos tuenti"
  6. Hacemos doble click en el archivo "Foto20.bat"
  7. Nos aparecerá una ventana en la que nos pedirá instalar "Python 2.7.6". Pulsamos en siguiente y elegimos instalarlo en "C:\Python27", sino, no funcionará.
  8. Aparecerán muchas cosas en la pantalla pero no pasa nada. 
  9. Al final aparecerá una linea que pone "Email:" ahi introducimos el correo electrónico de nuestro Tuenti y posteriormente nos pedirá la clave; la introducimos y dejamos que el proceso acabe.
  10. Las fotos se guardarán en la carpeta "foto tuenti" en dos subcarpetas: "tagged" y "uploaded"
  11. RECORDAD TENER EL TUENTI EN INGLÉS Y ACCEDER A http://m.tuenti.com


Ubuntu 10.04 +

Para descargarnos las fotos de Tuenti en Ubuntu, es mucho más facil que en Windows, ya que Python ya viene instalado por defecto con el Sistema Operativo. Veamos como instalarlo. 
Obs: Cuando pongo Usuario es tu usuario de Ubuntu. Todo se hace desde la terminal, linea a linea.
  • cd /home/Usuario/Escritorio/ && mkdir fotos\ tuenti && cd fotos\ tuenti
  • wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py
  • wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py
  • wget https://raw.github.com/outime/tpb/master/tpb.py
  • sudo python2.7 ez_setup.py
  • sudo python2.7 get-pip.py
  • sudo pip install requests
  • sudo python2.7 tpb.py
    • Ahora introducimos nuestro email y contraseña de tuenti y se bajarán las fotos en dos carpetas dentro de "fotos tuenti" llamadas "uploaded" y "tagged"
  • C'est fini


Mac OSX 10.6 +

Para descargarnos las fotos de Tuenti en Mac, es igual de fácil que en Ubuntu, ya que Python ya viene instalado. Veamos como instalarlo. 
Obs: Cuando pongo Usuario es tu usuario de Mac OSX. Todo se hace desde la terminal, linea a linea.
  • cd /Users/Usuario/Desktop/ && mkdir fotos\ tuenti && cd fotos\ tuenti
  • curl https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py -o ez_setup.py
  • curl https://raw.githubusercontent.com/pypa/pip/master/contrib/get-pip.py -o get-pip.py
  • Ir a la página: https://raw.githubusercontent.com/outime/tpb/master/tpb.py y cuando se abra, hacer click derecho y Guardar Como en la carpeta que hemos creado en el paso 1 con el nombre "tpb.py".
  • sudo python2.7 ez_setup.py
  • sudo python2.7 get-pip.py
  • sudo pip install requests
  • sudo python2.7 tpb.py
    • Ahora introducimos nuestro email y contraseña de tuenti y se bajarán las fotos en dos carpetas dentro de "fotos tuenti" llamadas "uploaded" y "tagged"
  • C'est fini

OBSERVACIÓN: antes de ponerme a trabajar con esto, he cambiado mi cuenta de correo para acceder a Tuenti y la clave "Por si las moscas".



 Ahora ya podéis decir:

ADIÓS TUENTI

domingo, 8 de diciembre de 2013

10000 VISITAS. ¡MUCHAS GRACIAS!




SE DICE PRONTO, PERO DESDE EL 2009 LLEVO TRABAJANDO EN ESTE PEQUEÑO RINCÓN DONDE TRATO DE APORTAR MIS CONOCIMIENTOS Y CURIOSIDADES.

ESPERO QUE SIGA DURANDO MUCHO MÁS Y QUE CADA DÍA SEAMOS MÁS LOS QUE DISFRUTEMOS DEL CONOCIMIENTO


martes, 26 de noviembre de 2013

Evangelio del Martes 24 de Noviembre - La caída del templo

Cada día acostumbro a leer un pequeño librito llamado "Palabra y vida", en el que se presenta el Evangelio de cada día y una pequeña reflexión. Aquí va el pequeño fragmento de hoy:

Martes 24 de Noviembre

Lc 21, 5-11

Algunos estaban hablando del templo, de la belleza de sus piedras y de las ofrendas que lo adornaban. Jesús dijo: “Vienen días en que de todo esto que estáis viendo no quedará piedra sobre piedra. ¡Todo será destruido!”. Preguntaron a Jesús: “Maestro, ¿cuándo ocurrirán esas cosas? ¿Cuál será la señal de que ya están a punto de suceder?”. Jesús contestó: “Tened cuidado y no os dejéis engañar. Porque vendrán muchos haciéndose pasar por mí y diciendo: ‘Yo soy’ y ‘Ahora es el momento’, pero no los sigáis. Y cuando oigáis alarmas de guerras y revoluciones no os asustéis, pues aunque todo eso tiene que ocurrir primero, aún no habrá llegado el fin”. Siguió diciéndoles: “Una nación peleará contra otra y un país hará guerra contra otro; en diferentes lugares habrá grandes terremotos, hambres y enfermedades, y en el cielo se verán cosas espantosas y grandes señales”

Simplemente me ha parecido un buen fragmento para compartir. Espero que guste a muchos.

domingo, 27 de octubre de 2013

Enciende una bombilla con tu Raspberry Pi

Estoy trabajando en un nuevo proyecto sobre el control de señales de alta tensión (125V~230V) mediante un circuito de baja tensión como es el de nuestra Raspberry Pi.

Lo que en esta entrada vamos a hacer es activar o desactivar un circuito de 230V, por ejemplo, encender o apagar una bombilla, mediante nuestra Raspberry Pi y a través de internet.

¿Qué necesitamos?

  • Raspberry Pi (model B)
  • Relé OMRON G5LA-1 5DC
  • Transistor NPN BC337
  • Diodo 1N4007
  • Resistencia de 1KΩ o de 1.2KΩ



El circuito básicamente es el que tenéis arriba. Como veis, la salida de la Raspberry Pi nos proporciona 3.3V, y que yo, mediante el programa de diseño de circuitos, he puesto un interruptor mecánico para imitar cuando el pin está activo o apagado.

Con el relé, lo que conseguimos es que, mediante un circuito de baja tensión, en este caso 3.3V ó 5V, podemos manejar tensiones de más de 200V de alterna, aislando nuestro sistema de baja tensión. El relé es capaz de manejar tensiones de 240V y 10A, perfecto para una instalación doméstica.

Una vez tengamos montado el circuito en una Protoboard, lo siguiente que tendremos que hacer es pasar a nuestro pequeño ordenador y picar un poco de código.

Programación

Antes de meternos en vereda programil, deberemos instalar WiringPi, que es un interprete de los GPIO de la Raspberry Pi. Para instalarlo deberemos entrar en la terminal de nuestra RPi (por ssh o a través del monitor) y pondremos esto:
sudo apt-get install git-core
sudo apt-get update
sudo apt-get upgrade
git clone git://git.drogon.net/wiringPi
cd wiringPi
git pull origin
./build
Con eso ya tendremos la gestión de los GPIO's a través de la terminal.

Personalmente, tengo intención de controlar mi Raspberry Pi a través de internet, por lo que para que esta tarea me sea mas sencilla, lo que voy a hacer es programar en PHP. Dado que mi nivel de programación en PHP no es del todo completo, voy a tratar de hacerlo lo mejor que pueda y sepa.

En este caso, lo que vamos a hacer es activar una bombilla, por lo que sus estados serán "Encendido" y "Apagado". Es decir, la interfaz de nuestra página web tendrá que tener como mínimo 2 botones, uno para encenderla y otro para apagarla.

El código para encender la bombilla será el siguiente (encender.php):
<html>
<body>
<?php
$inicializar = "gpio mode 0 out";
shell_exec($inicializar);
$encender = "gpio write 0 1";
shell_exec($encender);
?>
</body>
</html>

Y el código para apagarla (apagar.php):
<html>
<body>
<?php
$inicializar = "gpio mode 0 out";
shell_exec($inicializar);
$apagar = "gpio write 0 0";          
shell_exec($apagar);
?>
</body>
</head>

Y la página que enlaza a estas dos mediante un botón es (bombilla.php):

<html>

<title>ENCIENDE Y APAGA LA BOMBILLA</title>

<body>
<center>
<p>
<td> <a href="http://TU_SERVIDOR/encender.php"> <input type='submit' name='Submit' value='ENCENDER' style='width:300px; height:200px'/></td>
</p>
<p>
<td> <a href="http://TU_SERVIDOR/apagar.php"> <input type='submit' name='Submit' value='APAGAR' style='width:300px; height:200px'/> </td>
</p>
</center>
</body>
</html>

Ahora, con todo hecho, sólo deberíamos conectar nuestros cables desde la Raspberry Pi a la ProtoBoard. En mi caso, he conectado el pin de 5V a la salida de 5V de la Raspberry Pi (PIN 2), la salida de 3.3V la obtengo del GPIO 17 (PIN 11) y la masa ó 0V, la saco del GND (PIN 6).



Alguna cosilla más

Dado que la Raspberry Pi no tiene ningún circuito de protección interno para cortocircuitos o para simple integridad de la placa, lo que he hecho ha sido no sacar más de 3mA del GPIO 17, por eso coloco una resistencia de 1.2KΩ. Si queréis sacar un poco más de corriente, podéis poner una de 1KΩ, pero eso lo dejo a vuestra elección.

Como estamos trabajando con PHP, el servidor nos muestra siempre código preprocesado, con lo que a nosotros nos llega texto plano, y por tanto, no podemos usar AJAX para no tener que refrescar la página constantemente. Lo que he hecho para no tener que ir siempre a la página "bombilla.php" desde la barra de dirección, es redireccionar "encender.php" y "apagar.php" a la página "bombilla.php", así cada vez que pulsemos al botón, cuando ejecute la tarea, nos volverá a llevar a la página inicial.
  • He añadido la siguiente línea en "encender.php" y "apagar.php" justo después de la etiqueta de cierre del php (?>):
<META HTTP-EQUIV="REFRESH"  CONTENT="0; URL=http://TU_SERVIDOR/bombilla.php">
El relé que he utilizado, lo he comprado en Aliexpress:  5V Relay Module KY-019 FOR ARDUINO que aunque no sea el especificado en los componentes, es barato y hace las mismas funciones que el OMRON

Espero que os haya gustado y que podáis aplicarlo en vuestros pequeños proyectos. Si tenéis alguna sugerencia o pregunta, dejadla en los comentario.