Home+ 4, aplicación para crear automatizaciones complejas en Homekit

Cuando les comenté de mi sistema domótico actual, también comenté que para la creación de automatizaciones utilizaba Home+ 4 en vez de crearlas directo en la aplicación Home de Apple, esto porque justamente Home+ permite crear automatizaciones más complejas.

Home+ 4 es una aplicación que se integra a Apple Homekit, es decir, todas las automatizaciones que creemos luego aparecerán en Home de Apple, de hecho los accesorios de domótica que nos muestra los toma desde Homekit.

Home+ 4 se descarga desde la App Store, es desarrollada por Matthias Hochgatterer, tiene un valor de USD$14.99 (CLP$13820) y aunque puede parecer un poco cara realmente vale su precio. Es compatible con iPhone, iPad y Apple Watch. Personalmente la calificaría como una aplicación de 5 estrellas por su funcionalidad, pero debido a su interfaz un poco espartana y a que aún le faltan algunas traducciones, le doy 4.5 estrellas.

Si bien es cierto su desarrollador indica que se puede utilizar sólo con accesorios de domótica compatibles con Homekit, la verdad es que los accesorios agregados vía Homebridge también aparecen en mi aplicación, por lo tanto esto resultó ser una sorpresa para mi.

Al abrir Home+ 4 nos encontramos con una aplicación sencilla, con un diseño algo espartano para mi gusto, pero finalmente funcionma y hace lo que buscamos de ella. Está centrada en 5 secciones las cuales tenemos en la parte inferior de la pantalla, Accesorios, Grupos, Escenas, Automatizaciones y Ajustes.

En la sección Accesorios nos aparecerá un listado de todos los accesorios que hemos agregado a través de Home de Apple, o vía Homebridge. Los accesorios son listados en una cuadricula bastante grande de 2 accesorios por línea, agrupados de acuerdo a la habitación a la cual se encuentran asignados. Cada accesorio además indica su estado, potencia y encendido/apagado para las luces, movimiento/no movimiento para los sensores de movimiento y vibración, abierto/cerrado para los sensores de puerta, temperatura y humedad para los sensores de temperatura, etc. También podremos controlar los accesorios a los que se les puede cambiar su estado como por ejemplo las luces, de manera muy similar a como loharíamos en Home de Apple.

En la sección Grupos nos aparecerán los grupos de luces que hemos definido en Home de Apple, así como también grupos definidos por Home+ 4 como «todas las luces», «todos los sensores de movimiento», «primer piso luces» o «Escalera sensores de movimiento».

En la sección Escenas nos aparecerán las escenas que hemos definido en Home de Apple, aunque en mi experiencia, es mejor definir nuestras escenas en Home+ 4. Tenemos un pequeño número de escenas predefinidas las cuales por ahora están vacías, como por ejemplo «Buenas noches», «Buenos días», «Salir de casa» o «Llegar a casa», y en la medida que vayamos creando escenas para automatizaciones estas aparecerán en la subsección Acciones de Automatización. Mi recomendación es crear primero las Escenas y luego las automatizaciones. Más adelante veremos el por qué.

En la sección de Ajustes tenemos varias subsecciones. En Puentes veremos agrupados los puentes, cada uno de los accesorios asociados a dicho puente, información relacionada con dicho puente como por ejemplo fabricante, modelo, número de serie, versión de firmware, y finalmente cambiar el nombre del puente lo cual se verá reflejado en Home de Apple. En Accesorios veremos los accesorios listados por tipo de accesorio. En Habitaciones veremos las distintas habitaciones que hemos definido en Home de Apple, o podemos crearlas aquí directamente si no lo hemos hecho previamente, y obviamente podemos asociar los accesorios a las distintas habitaciones y renombrar las habitaciones. En Zonas podemos crear grupos de habitaciones para controlarlas conjuntamente. Este es un conceptop que no está presente en Home de Apple, y la verdad resulta muy interesante. En Favoritos podemos definir los accesorios, grupos, escenas y cámaras que aparecerán en nuestro Apple Watch si es que tenemos instalada Home+ 4 en nuestro reloj. En Activity Log debieramos poder visualizar los cambios de estado de los distintos accesorios, sin embargo por una razón que desconozco no tengo ningún registro. Finalmente en App Icon podemos cambiar el íconoc con que nos aparece la aplicación en el springboard de nuestro dispositivo. Luego tenemos un grupo de ajustes que son meramente informativos. En Unidades podemos definir el tipo de unidades de temperatura y distancia que utilizará el sistema, y finalmente tenemos Home Settings donde podemos cambiar el nombre de nuestra casa o agregar una nueva, y Manage People donde podemos agregar o eliminar a las personas que tienen acceso al control de nuestra casa.

Dejé lo más importante para el final porque ciertamente es lo más largo, y se trata de las automatizaciones.

Automatizaciones

En la sección Automatizaciones tendremos una lista de todas las automatizaciones que hemos creado, podremos editar las automatizaciones ya creadas, o crear nuevas. En mi caso por ahora tengo 19 automatizaciones.

Para crear una nueva automatización basta con pinchar el signo «+» que se encuentra en la esquina superior derecha de la pantalla. Cuando creamos una nueva automatización Home + 4 nos da la opción de seleccionar un ejemplo predefinido de una lista bastante nutrida de plantillas, como «Saliendo o llegando a Casa», «Al amanecer o anochecer», «Door is opened» o «Motion is detected», o podemos crear una automatización desde cero con «Create Event Trigger» o «Create Timer Trigger».

Con «Create Event Trigger» podremos crear una automatización basada en el estado de un accesorio, mientras que con «Create Timer Trigger» podremos crear una automatización exclusivamente basada en la hora. Más adelante veremos que la hora puede ser una condición para las automatizaciones basadas en el estado de un accesorio.

Cuando creamos una automatización basado en alguno de las plantillas que nos entrega Home+ 4, el paso siguiente es seleccionar el accesorio del cual la automatización leerá el estado, mientras que cuando creamos una automatización desde cero, el paso siguiente es darle un nombre.

Una vez que creemos una automatización nos daremos cuenta de toda la complejidad que nos permite Home+ 4. Para cada automaización tenemos las secciones del nombre de la automatización, Enable Automation para activar o desactivarla, «Cuando esto pase» para definir el activador de la automatización, «Con la condición» para definir un condicionante adicional como por ejemplo un momento del día, «Realizar acciones» para definir las acciones que se ejecutarán, «Deshacer acciones» para que estas se deshagan después de cierto tiempo, «Desactivar después de ejecutar» para que la automatización se ejecute una única vez, y finalmente la opción de borrar la automatización.

El primer paso es activar las automatización, aunque yo prefiero dejar esto para el final, cuando la automatización está completa. Luego tenemos que definir el evento activador en Cuando esto pase para lo cual podemos seleccionar «Ubicación», «Presencia de gente», Hora del día» y «Estado del accesorio». Para Ubicación, la aplicación nos permite dos opciones, «Saliendo» y «Entrando». Para Presencia de gente nos permite las opciones «Llego a casa», «Salgo de casa», «Cualquier persona llega a casa», «Cualquier persona sale de casa», «Llega la primera persona» y «La última persona sale de casa». Para Hora del día nos permite las opciones «Hora» y «Sol», siendo esta última las más interesante ya que permite definir las opción «Amanacer» o «Anochecer» y jugar un poco con ese evento de tiempo por ejemplo para que las acciones ocurran «15min después del amanecer», «30min antes del anochecer», etc. Finalmente para Estado del Accesorio simplemente tendremos que elegir alguno de los accesorios y seleccionar el estado que queremos monitorizar, como por ejemplo «Estado del sensor de contacto» para un sensor de puerta, y el valor que nos interesa, por ejemplo, «Sin contacto» para cuando la puerta está abierta.

Ahora toca definir las condiciones adicionales en Con la condición, donde podemos seleccionar «Hora del día», «Estado del accesorio», «Presencia de gente» y «Día de la semana». Para las opciones Hora del día, Estado del accesorio y Presencia de gente tenemos las mismas opciones cuando vimos estos punto en la definición del evento activador. Para Día de la semana tenemos la posibilidad de elegir específicamente qué días se ejecutará la automatización, lo cual simplemente no podemos realizar en Home de Apple. Las condiciones adicionales son opcionales, no es necesario agregarlas salvo para complejizar la automatización, es decir, la automatización va a corre sin ningún problema si omitimos este punto.

El siguiente paso es definir las acciones que se ejecutarán una vez detectado el evento activador, en Realizar acciones. Aquí se nos permiten las opciones «Añadir escena» y «Añadir acciones». Si vamos a controlar un sólo accesorio, aunque modifiquemos varios de sus estados, como por ejemplo, cambiar la intesidad de la luz y encenderla, utilizaremos la opción «Añadir acciones». Si por el contrario vamos a controlar un grupo ya definido de accesorios o varos accesorios que no están agrupados, utilizaremos la opción «Añadir escena» para lo cual la escena debe estar definida con antelación como les comenté previamente. Las escenas agupas tanto accesorios como acciones y resulta mucho más sencillo utilizar escenas que se repiten entre las dintintas automatizaciones en vez de estar registrando las mismas acciones una y otra vez en forma manual para cada automatización. Por eso es importante crear las escenas en forma previa.

En Deshacer acciones podemos definir una cuenta atrás para que las acciones ejecutadas en el paso previo se deshagan en forma transitoria, de manera tal que si vuelve a cumplirse la condición del evento activador, la automatización vuelve a ejecutarse.

En la opción Desactivar después de ejecutar, podemos configurar para que la automatización se ejecute una única vez. La verdad hasta ahora no le he encontrado utilidad a esta opción. Finalmente tenemos la opción Delete trigger la cual nos permite eliminar la automatización. También podemos borrarla en la sección Automatizaciones, seleccionando la automatización y deslizando hacia la izquierda en la pantalla, luego pinchando en Eliminar, y confirmando dicha acción.

Resumen

Como podrán darse cuenta, Home+ 4 es una aplicación que nos entrega mucho más poder que Home de Apple a la hora de crear automatizaciones, y francamente la recomiendo a ojos cerrados, aunque no para todos los entusiastas de la domótica, sino para aquellos que exigen y quieren un poco más como yo. Para automatizaciones sencillas, no gastes dinero de más, basta Home de Apple.

Por emontes, hace

Instalando Docker en una Raspberry Pi

Desde hace algún tiempo que venía escuchando en distintos podcast (uGeek, Atareao, etc) relacionados con Linux y Raspberry Pi, respecto de las bondades de la instalación de servicios a través de una plataforma llamada Docker.

Docker permite que servicios como Apache, NGINX, MySQL, MariaDB, etc, sean instalados dentro de un contenedor, es decir, dentro de una sandbox y corran dentro de un entorno protegido sin riesgo de modificar el sistema operativo. En resumen, si un contenedor se daña, basta que lo borres, lo vuelvas a crear y tu sistema operativo seguirá corriendo de forma segura, sin intromisiones.

Lo primero es instalar algunos paquetes antes de la instalación de Docker

sudo apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common

Luego tenemos que instalar la clave de firma de Docker para poder instalar sus paquetes

sudo curl -fsSL https://download.docker.com/linux/$(. /etc/os-release; echo "$ID")/gpg | sudo apt-key add -

Ahora es necesario añadir los repositorios oficiales de Docker a la lista de repositorios de Raspbian

sudo echo "deb [arch=armhf] https://download.docker.com/linux/$(. /etc/os-release; echo "$ID") $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list

Luego instalamos Docker, pero primero es necesario actualizar la lista de repositorios con el comando apt-get update.

sudo apt-get update
sudo apt-get install docker-ce

Ahora es necesario activar e iniciar el servicio de Docker en systemd.

sudo systemctl enable docker
sudo systemctl start docker

Finalmente agregamos el grupo docker para no tener que usar sudo antes de los comandos de docker.

sudo groupadd docker
sudo usermod -aG docker $USER

Con todo esto ya tenemos instalado y corriendo Docker el cual nos será de gran utilidad, en especial para la instalación de Homebridge, lo cual les comentaré más adelante.

Por emontes, hace

Qué son las criptomonedas y qué significa minarlas

Las criptomnedas llegaron a internet para quedarse y cada vez van a ser más comunes. Probablemente la más famosa de las criptomonedas es el Bitcoin pero existen bastantes criptomonedas y cada cierto tiempo se desarrolla una nueva. Las más conocidas a nivel mundial son Bitcoin, Bitcoin Cash, Litecoin, Ethereum, Dash, Ripple y Monero. En Chile en la actualidad existen la Chaucha y la Luka, aunque la primera criptomoneda fue la Chilcoin cuyo desarrollo cesó en 2016.

¿Pero qué es una criptomoneda? Una criptomoneda es una divisa virtual descentralizada, la cual no es regulada por ningún estado o banco sino solo por la oferta/demanda. Aunque virtual alguien podría entenderlo como volátil o frágil, la verdad es que el algoritmo bajo el cual se verifican las transacciones es prácticamente inviolable ya que se requeriría un poder de cómputo superior al de Google para recién tener un 50% de probabilidad de descifrar su algoritmo criptográfico.

Las criptomonedas no dependen de un servidor central sino que dependen del poder de redes P2P, es decir, usuarios que ponen a disposición del sistema sus computadores para validar las transacciones. Como parte de ese servicio, dichos usuarios reciben una fracción mínima de recompensa por la verificación de la transacción lo cual se conoce como «minado».

El corazón del funcionamiento de las criptomonedas se basa en algo que se conoce como blockchain o cadena de bloques. Un blockchain es una lista creciente de registros llamados bloques, los cuales están enlazados y cifrados por criptografía. Esta es la información que procesan las aplicaciones de minado y habitualmente se requiere que al menos 10 mineros verifiquen un mismo bloque antes de considerarlo válido.

Las criptomonedas se almacenan en una billetera virtual la cual es una aplicación que entrega un identificador único dentro de la red de la criptomoneda. Este identificador es el que se utiliza para minar o para hacer transacciones. La billetera es un archivo en si mismo, y por lo tanto es necesario dejarlo a resguardo puesto que si se llega a borrar no habrá forma de recuperar esas criptomonedas.

En la actualidad existen 3 formas de obtener criptomonedas, una es minando, otra es comprándolas/vendiéndolas en un Exchange y finalmente por supuesto intercambiándolas ya sea por donación o como medio de pago directamente.

Para el minado de criptomonedas se requiere una aplicación la cual debe estar corriendo en forma permanente. Las aplicaciones de minado pueden utilizar el CPU y/o GPU para minar, pero actualmente existen dispositivos diseñados específicamente para minar llamados ASICS los cuales son mucho más eficientes en el minado que un PC normal, ya que tienen un poder de cómputo dedicado solamente a eso y gastan menos energía. Habitualmente quienes utilizan ASICS disponen de una «granja de minado» con una gran cantidad de estos.

Justamente debido a la proliferación de los ASICS es que actualmente el minado no es tan rentable para un usuario común y corriente que no dispone de uno de estos dispositivos. Es por esta razón que este tipo de usuarios habitualmente se asocian en lo que se llama una «pool de minado», de tal forma de sumar el poder de cómputo y poder hacerle frente a los ASICS y sus granjas de minado. Un pool sortea entre sus usuarios activos las criptomonedas recibidas como recompensa del minado, de acuerdo a un algoritmo basado en el poder de minado, dificultad de minado, tiempo online, etc de sus usuarios.

Los Exchanges son simplemente «casas de cambio virtuales» en las cuales es posible comprar/vender criptomonedas, quienes por supuesto cobran una comisión por cada transacción, ya sea en dinero real o como fracción de la criptomoneda que compres/vendas dentro del Exchange.

La utilización de una criptomoneda requiere simplemente de la utilización de la aplicación de billetera propia de cada criptomoneda para enviar una cantidad X de esta a la dirección o ID de quien recibirá la transferencia.

Tanto las transacciones de los Exchanges como las transferencias, así como también la creación de nuevas criptomonedas generan nuevas entradas al blockchain y por lo tanto deben ser verificadas antes de ser consideradas como válidas.

Hasta hace poco las criptomonedas eran consideradas como estable puesto que en general su precio sólo aumentaba, sin embargo en Diciembre comenzó una baja sostenida en la mayoría de las criptomonedas lo cual ha puesto en evidencia que como todo mercado de riesgos es una inversión volátil. Se cree que esta baja sostenida tiene muchos factores involucrados, entre otros la desaparición de algunos Exchange chinos secundario a la regulación ejercida por el mismo gobierno chino, a la regulación que están imponiendo otros países como India o Estados Unidos, el primero considerando ilegal las criptomonedas y el segundo tomándolo en consideración para el cobro de impuestos, y también que tanto Facebook como Google eliminaron los avisos publicitarios relacionados con criptomonedas de sus sitios web o servicios de publicidad.

Lo cierto es que aunque se pegaron una bajada inmensa, actualmente el precio de las criptomonedas está algo más estable, pero hay que tomarlo con cautela si tienes intenciones de invertir, y si eres un amateur en esto, al igual que cuando vas a un Casino, es mejor no invertir más de lo que estés dispuesto a perder.

Links:

Por emontes, hace

New Challenger Approaching!

New Challenger Approaching!

Primero que todo, me gustaría presentarme. Yo soy Joaquín Montes, hijo de MrAnderson, y actualmente estoy por ingresar a estudiar Ingeniería Civil Informática a la universidad. Por esta razón, pasaré a ser el redactor principal para esta sección, Code is Poetry, y escribiré bajo el seudónimo de ArmoredReaper.

Escribiré principalmente de lo que sea que tenga en mente, sin un horario establecido, dando énfasis a la programación de proyectos e ideas personales o populares en Internet, más que actualizaciones de software o cosas por el estilo.

Yo trabajo con un MacBook Pro 13″ Mid-2012 corriendo la última versión de macOS, por lo que no podré referirme tanto al funcionamiento de dichas ideas en otros sistemas operativos, pero siempre buscaré alguna fuente para que puedan averiguar más del tema si les interesa.

Sin más que decir por ahora, espero que disfruten de mi forma de escribir y expresar ideas en papel (o una pantalla en este caso).

じゃあね!

~ ArmoredReaper

 

Code is Poetry

Code-is-Poetry-Blue-Wallpaper-800x450

Programar requiere recopilar mucha información técnica, escribir líneas de código que no siempre resultan correctas en primera instancia y que requieren muchas horas de depuración hasta que todo resulta tal como lo planificaste en tu cabeza.

Ver un código terminado, ordenado, preciso, y por sobre todo simple encierra una belleza intrínseca que sólo puede ser comprendida a cabalidad por quien lo programó o por otro programador. Es por eso que este nuevo blog se llama «Code is Poetry».

En este blog recopilaré información relacionada con la programación en sus distintas expresiones… PHP, Javascript, MySQL, todo esto asociado a CMS como WordPress e incluso scripts relacionados con plataformas como Minecraft, Roblox, etc..

Las publicaciones serán ocasionales, no tendrán la regularidad de MrAnderson MD, pero aún así espero que sean de interés para ustedes.

Por emontes, hace