Nuestro sitio utiliza cookies para garantizar una mejor experiencia de navegación. OK
10 min para leer 37 veces compartido 4 Comentarios

Cómo hacer tu propio Google Home con Assistant y Raspberry Pi 3

Google Home es la manera más fácil de tener Google Assistant en casa. Lo malo es que no está disponible globalmente, pero gracias a una Raspberry Pi 3 puedes tener Google Assistant en tu salón y hasta puedes controlar cualquier cosa que conectes a la Raspi solo con la voz.

Para poder usar Google Assistant en nuestra Raspberry Pi 3 necesitamos algo de hardware. Básicamente necesitamos un micrófono y un altavoz para poder comunicarnos con Google Assistant. En la MagPi (la revista oficial de Raspberry Pi) de mayo se incluía un bonito set patrocinado por Google, pero si te quedaste sin ella, no te preocupes porque se puede sustituir simplemente por unos altavoces y un micrófono USB. Aquí tienes las instrucciones para cualquiera de los dos casos:

Construye tu propio Google Home con el AIY Voice Kit de MagPi

Como ya hemos dicho, en la edición número 57 de The MagPi de mayo de 2017 (5,99£), Google incluía un kit de regalo para animar a los makers a hacer su propio Google Home. El proyecto se llama AIY que resulta de la mezcla de AI (inteligencia artificial en sus siglas en inglés, Artificial Intelligence) y DIY (hazlo tú mismo, en sus siglas en inglés, Do it Yourself).

Opinion by Luis Ortega
Este AIY Voice Kit es para la inteligencia artificial lo que Cardboard fue para la realidad virtual
¿Qué opinas?
50
50
18 participantes

1. Montar el kit AIY Project "made by you with Google"

El kit que viene incluido con la MagPi es muy sencillo de montar. Solo tienes que seguir las instrucciones que encontrarás dentro de la revista o en la web de AIY Proyects. Creo que lo más difícil para mí fue doblar el cartón. Para construir este kit de voz, Google nos proporciona:

  • Una placa PCB para controlar los micrófonos y el pulsador (Voice HAT)
  • Un placa PCB alargada con dos micrófonos
  • Un altavoz
  • Un pulsador
  • Un LED
  • Mecanismo para el pulsador
  • Cables para conectarlo todo
  • Caja de cartón para montar el kit
AndroidPIT google assistant raspberry pi 1329
Un altavoz para Google Assistant muy al estilo de Cardboard / © AndroidPIT

Además de los componentes que encontramos en el kit vamos a necesitar poner de nuestra parte:

  • Una Raspberry Pi 3
  • Una tarjeta microSD parar instalar el sistema operativo
  • Un poco de cinta adhesiva
  • Un destornillador tamaño P00
AndroidPIT google assistant raspberry pi 1331
Tú tienes que poner la Raspi 3. / © AndroidPIT

Para montar el kit AIY tenemos unas instrucciones en su web oficial, pero os resumo aquí los pasos clave.

Una vez que tenemos todos los componentes, vamos a empezar conectando la placa PCB, llamada Voice HAT y que controla los micrófonos y el pulsador, a la Raspberry Pi 3 con ayuda de dos pequeños alzadores de plástico. Ahora con un destornillador conecta los dos cables del altavoz (el rojo es positivo y el negro es negativo).

AndroidPIT google assistant raspberry pi 1641
Montando el Kit AIY de MagPi.  / © AndroidPIT

Conecta el resto de cables a la placa. Es el momento de colocar todo esto en el primer cartón. Dóblalo dejando a la vista las inscripciones y coloca primero el altavoz. Después coloca la Raspberry Pi 3 junto con el Voice HAT. Monta la caja e introduce todo el conjunto. Ten cuidado de que el altavoz quede en la parte donde están los agujeros. 

Es la hora de fijar la carcasa del pulsador (en este caso nos ha tocado una amarilla). Primero desenrosca la tuerca de plástico negra, introduce el pulsador por el hueco de la tapa y vuelve a enroscar la tuerca negra. Ahora monta el mecanismo con el LED y el pulsador. Encájalo en el pulsador y conecta los cables con cuidado del orden correcto (rojo y azul fuera; negro y blanco en el centro).

AndroidPIT google assistant raspberry pi 1740
Cuidado al cerrar. / © AndroidPIT

Por último, conecta la placa con los dos micrófonos y pégala con un poco de cinta adhesiva a la tapa. Ten cuidado al colocar los micrófonos para que tengan una buena entrada del sonido a través de los agujeros de la caja. Una vez que tenemos todo montado y listo es la hora de instalar el software en una tarjeta microSD.

2. Instalar el software y configurar Raspbian para usar Google Assistant

Para instalar el software necesitamos descargar la imagen del sistema y flashearla en la microSD con un ordenador:

Cuando acabamos de flashear la tarjeta la colocamos en la Raspi y ya podemos empezar. Para arrancar la Raspberry Pi 3 con el Voice Kit vamos a necesitar un monitor con cable HDMI y un teclado con ratón. Conectamos todo y le damos energía a la Raspi.

El primer inicio del sistema puede tardar varios minutos. El sistema que corre en la Raspberry Pi es una versión de Debian modificada especialmente para este dispositivo y que se llama Raspbian. Debian es una de las distribuciones más extendidas de GNU/Linux y en la que se basan distribuciones tan famosas como Ubuntu.

Una vez tengamos el escritorio activo, arriba a la derecha vamos a poder conectarnos a nuestra red Wi-Fi entre los símbolos del Bluetooth y del volumen. Una vez conectados a internet abriremos el navegador y vamos a introducir esta URL: https://console.cloud.google.com/.

Nos pedirá que introduzcamos nuestra cuenta de Gmail con la que vamos a usar los servicios de Google Cloud, de entre los cuales nos interesa Google Assistant. Así que introducimos nuestro correo y contraseña para darnos de alta en el servicio, que es gratuito. Aquí los pasos serán los siguientes:

  • Crear un nuevo proyecto, por ejemplo, llamado "Home Pi"
  • Activa la API de Google Assistant en el proyecto en API > Enable API > Google Assistant > Enable
  • Ahora crea un nuevo credencial en Credentials > Create credentials > OAuth Client ID > Other (añade un nombre) > Create
  • Necesitaremos descargar el credencial en la Raspberry Pi 3 desde la página de credenciales de las APIs de nuestro proyecto. A la derecha del todo de la credencial que acabamos de crear hay un botón para descargar.
  • Copiaremos el archivo descargado desde la carpeta de descargas hasta la carpeta /home/pi/ y le cambiaremos el nombre pulsando sobre el archivo con el botón derecho > rename por el de assistant.json

3. Hablar con Google Assistant a través de una Raspberry Pi 3

Para lanzar Google Assistant en la Raspberry Pi 3 abriremos el icono de la terminal que encontraremos en el escritorio e introduciremos el siguiente comando:

  • src/main.py.

La primera vez que corremos el comando nos pedirá los permisos oportunos para poder usar nuestra cuenta de Goolge Cloud asociada a nuestra cuenta de Gmail. Si todo ha ido bien en la consola veremos que nos avisa que para hablar primero debemos pulsar el botón. Para salir de la aplicación tendremos que pulsar CRTL+C con la ventana de la terminal activa. Ahora le puedes preguntar lo que quieras a la cajita de cartón, la cual esconde todo el poder de Google Assistant.

Para controlar el volumen solo tienes que bajarlo en el icono del escritorio arriba a la derecha o decirle a Google Assistant "volume down".

AndroidPIT google assistant raspberry pi 1755
Ahora solo pulsar para hablar. / © AndroidPIT

4. Activar Google Assistant remotamente a través de SSH desde otro dispositivo

Podemos activar Google Assistant en la Raspberry Pi 3 sin necesidad de un monitor ni teclado/ratón gracias a la ayuda del protocolo SSH y nuestro smartphone. Para activar el protocolo SSH dirígete en la Raspi a inicio > Preferences > Raspberry Pi Configuration, aquí en la pestaña de 'Interfaces' debemos marcar en 'Enabled' la fila de SSH. También recomiendo cambiar la contraseña por defecto del usuario Pi.

Desde un smartphone y con una aplicación que permita conexiones SSH (o Putty desde Windows) vamos a poder introducir la IP local de la Raspberry Pi 3 y loguearnos directamente en una consola de comandos con nuestro usuario (que por defecto es "Pi") y contraseña (que por defecto es "raspberry").

JuiceSSH - SSH Client Install on Google Play

La dirección IP local de la Raspi la puedes conocer desde el icono de la conexión en el propio escritorio de la Raspi o con la aplicación Fing para Android.

Una vez que tengamos conexión a la línea de comandos de la Raspberry Pi 3 por SSH, debemos introducir estos dos comandos para iniciar el servicio de Google Assistant:

  • /home/pi/bin/voice-recognizer-shell.sh
  • src/main.py
AndroidPIT raspberry pi 3 google assistant ssh
Activando Google Assistant por SSH desde el teléfono. / © AndroidPIT

Construir tu propio Google Home con un altavoz y una Raspberry Pi 3

No hace tener el AIY Voice Kit de la revista MagPi para poder crear tu propio Google Home. En realidad solo necesitamos un micrófono USB, unos altavoces con mini-jack y una Raspberry Pi 3 (opcionalmente también podemos conectar un botón).

Yo no tenía a mano un micrófono USB así que he utilizado una vieja webcam que tiene un micrófono incorporado.

Podemos seguir las mismas instrucciones para instalar el software que hemos explicado arriba, pero necesitamos cambiar algunas cosas para poder utilizar nuestro propio hardware. 

Primero. Editaremos el archivo /boot/config.txt a través de una terminal con el comando sudo nano /boot/config.txt. Aquí vamos a descomentar la línea donde que dice #dtparam=audio=on borrando # y comentaremos las dos siguientes dejando el párrafo de la siguiente manera. Una vez terminado, pulsamos CRTL+X para salir y guardamos con el mismo nombre.

# Enable audio (loads snd_bcm2835)

dtparam=audio=on

#dtoverlay=i2s-mmap

#dtoverlay=googlevoicehat-soundcard

Segundo. Editaremos el archivo /etc/asound.conf, también desde la terminal con sudo nano /etc/asound.conf. Aquí borraremos todos y pegaremos el siguiente código. Después CRTL+X para salir y guardamos con el mismo nombre.

pcm.!default {

type asym

capture.pcm "mic"

playback.pcm "speaker" }

pcm.mic {

type plug

slave {

pcm "hw:1,0" } }

pcm.speaker {

type plug

slave {

pcm "hw:0,0" } }

Tercero. Ahora es el momento de reiniciar la Raspberry Pi 3 y probar que reconoce el micrófono y los altavoces. En el escritorio tenemos un archivo llamado "Check audio" si le damos doble click veremos que busca el Voice HAT que no tenemos, así que vamos a modificarlo. Escribe en una terminal el comando sudo nano /home/pi/voice-recognizer-raspi/checkpoints/check_audio.py, y en la línea donde dice VOICEHAT_ID = ‘googlevoicehat’ la cambiaremos por VOICEHAT_ID = ‘bcm2835’ que es el sonido por defecto de la Raspi, CRTL+X para salir y guardamos con el mismo nombre. Ahora vuelve a probar el audio y verás que todo funciona.

Cuarto. Si tienes un botón, es el momento de conectarlo al GPIO 23. Si no tienes vamos a iniciar el servicio como en el paso 3 de apartado anterior con un comando especial:

  • python3 src/main.py -T clap

Con este comando cada vez que des una palmada Google Assistant esperará tu pregunta. Aquí también puedes pulsar CRTL+C para salir y por supuesto también puedes activar el servicio desde otro dispositivo a través de SSH.

Conclusión

Como puedes ver, tener Google Assistant en casa es más fácil de lo que parece. Solo necesitas una Raspberry Pi 3 y un par de cosas más. La única pega es que solo está disponible en inglés por el momento. A final de año Google Assistant estará también en español, así que para 2018 podría estar ya intergrado en el SDK de Google Assistant que usamos con la Raspi.

Por defecto, el servicio de voz de Google Assistant es capaz de contestar a casi todas las preguntas que le hagas pero su poder no acaba aquí. También puedes usar el poder de la inteligencia artificial para, por ejemplo, controlar un robot o un espejo "mágico" con tu voz y también hacer tareas más complicadas de gestión con IFTTT. Pero para esto tenemos que crear nuestros propios scripts.

¿Te animas a controlar la inteligencia artificial de Google?

37 veces compartido

4 Comentarios

Escribir un nuevo comentario:
  • google assistant lo puedes encontrar en la aplicacion de google Allo esta en español

  • El gran problema es que no está disponible en España ni en español, ni tenemos fechas previstas para ello. Parece mentira que el español sea el segundo idioma más hablado en el mundo. Un saludo.

    • Luis Ortega
      • Admin
      • Staff
      Hace 5 días Link al comentario

      Google Assistant está disponible en todo el mundo, lo único que solo funciona medianamente bien en inglés. Hay que tener en cuenta que su desarrollo es en este idioma y es muy lento, más aún si quieres abarcar otros idiomas. Para smartphones también está disponible en Alemán pero el SDK con Google Assistant solo está en inglés.
      Desde mi punto de vista no es tan malo, está poniendo la tecnología más puntera en inteligencia artificial en la palma de la mano de todo el mundo para que la utilice. Si puedo llegar a controlar un robot hecho por mi solo con la voz gracias a esta plataforma, sinceramente me da un poco igual en el idioma en el que está, el caso aquí es aprender.

Nuestro sitio utiliza cookies para garantizar una mejor experiencia de navegación. Más información

OK