Raspberry Pi como centro de entretenimiento al volante


El proyecto, desarrollado por Michal Szwaj, plantea un sistema para un vehículo  en el que es posible controlar la reproducción multimedia   o acceder a los mapas de Google, aunque de momento no  ofrece funciones como la navegación GPS, pero la versatilidad de la Raspberry Pi   con el soporte Bluetooth ,hace que esa opción no parezca difícil de implementar.

OpenAuto,  es un proyecto que con una Raspberry Pi 3 y una pantalla táctil nos da acceso a unas funciones muy similares a las que ofrece Android Auto, basándose en la  biblioteca  aasdk y librerías Qt siendo el objetivo principal  ejecutar esta aplicación en una placa  de RaspberryPI 3 sin problemas. El proyecto se basa en la instalación de una distribución Linux, Raspbian Stretch, a la que luego se le añaden librerías como las célebres Qt para poder ejecutar las aplicaciones orientadas a ser utilizadas en el coche.

A la Raspberry Pi 3 se le conecta una pantalla táctil (480p, 720p o 1080p)  pues  este es recomendable para la interacción con el sistema. Completar el proceso es relativamente sencillo, y tanto el código fuente como las instrucciones de instalación están disponibles públicamente en GitHub .

Las funcionalidades soportadas  son las siguientes:

  • 480p, 720p y 1080p con 30 o 60 FPS.
  • Aceleración de hardware de RaspberryPI 3 soporte para decodificar la secuencia de vídeo (hasta [email protected]).
  • Reproducción de audio de todos los canales de audio (los medios de comunicación, sistema y discurso).
  • Entrada de audio para comandos de voz.
  • Pantalla táctil y soporte de  botones de entrada.
  • Bluetooth.
  • Lanzamiento automático después de dispositivo hotplug.
  • Detección automática de dispositivos Android conectados.
  • Modo inalámbrico (WiFi) mediante servidor de unidad principal (debe estar habilitado en configuración desarrollador ocultos).
  • Configuración fácil de usar.

 

Electrónica necesaria

Sin duda , aparte de la propia Rasberry Pi  3 , el display  táctil es un componte  fundamental en este proyecto. Con una resolución de 800×480 el modulo oficial de display +sensor se conecta a la Raspberry Pi  3 a través de una placa  adaptadora que se encarga de controlar la alimentación y la señal de vídeo.

Solo se necesitan dos conexiones de la Raspberry Pi 3 : la  alimentación desde el conector GPIO y el cable plano al conector DSI, presentes en todas las Raspberry.

El kit incluye:

  • Pantalla 7″ multitáctil 10 puntos
  • Placa conversara
  • Cable plano DSI
  • 4x tornillos para ajustar la Raspberry a la pantalla
  • 4x cables para conectar la pantalla a la Raspberry

En el siguiente video se puede ver el proceso de  montaje de este kit.

El controlador táctil ofrece 10 puntos de presión, por lo que el usar teclados en pantalla como el integrado en Raspbian lo hacen realmente sencillo.

Este kit convierte pues  una Raspberry en una tableta multitáctil, sistema de información o dispositivo independiente.Es realmente interactivo  pues la ultima version de Raspbian soporta teclado virtual en pantalla, así que no se necesita conectar un teclado y un ratón físicos ni por supuesto una pantalla externa.

Como podemos ver Android Auto se ejecuta en una Raspberry Pi 3 con la pantalla táctil oficial de 7 pulgadas anteriormente citada.  Estos son los componentes esenciales para implementar  este proyecto:

 

 

 

Raspvid

raspivid es la herramienta de línea de comandos para capturar vídeo con el módulo de cámara nativo de Raspberry. Con el modulo de cámara conectado y activado, se puede grabar un vídeo utilizando el siguiente comando:

raspivid -o vid.h264

Recuerde que debe utilizar y para voltear la imagen si es necesario, como con raspistill-hf-vf (esto guardara un archivo de vídeo 5 segundo en el camino dado aquí como (longitud por defecto de tiempo).vid.h264)

Para especificar la longitud del vídeo tomado, pase en la bandera con un número de milisegundos. Por ejemplo:-t raspivid -o video.h264 -t 10000  (Esto graba 10 segundos de video.)

Para una lista completa de las opciones posibles, ejecutar sin argumentos, o este comando a través de y desplácese a través de la pipa:raspividless

raspivid 2>&1 | less

Utilice las teclas de flecha para desplazarse y el tipo de salida.q

Para ver la cámara trasera ejecutar raspvid seguido de los  parámetros  , como por ejemplo:

raspvid  -t 5000

raspvid -t 0

raspvid -t  -vh

raspvid -t 0 -vf ( invierte la imagen)

raspvid -t 0 -hf -vf

 

 Instalar aasdk en Raspberri PI 3

  1. Instalar el software necesario

 sudo apt-get install -y libboost-all-dev libusb-1.0.0-dev libssl-dev cmake libprotobuf-dev protobuf-c-compiler protobuf-compiler

  1. Repositorio de aasdk clon

$ cd

$ git clone -b master https://github.com/f1xpl/aasdk.git

  1. Crear el directorio aasdk_build en el mismo nivel que aasdk dir

$ mkdir aasdk_build

$ cd aasdk_build

  1. Generar archivos de cmake

$ cmake-DCMAKE_BUILD_TYPE = lanzamiento… /AASDK

  1. Construir aasdk

$ make

Instalar el resto de sw en Raspberry PI 3

  1. Instalar el software necesario

$ sudo apt-get install -y libqt5multimedia5 libqt5multimedia5-plugins libqt5multimediawidgets5 qtmultimedia5-dev libqt5bluetooth5 libqt5bluetooth5-bin qtconnectivity5-dev pulseaudio librtaudio-dev librtaudio5a

  1. Construir ilclient de frambuesa PI 3 firmware

$ cd /opt/vc/src/hello_pi/libs/ilclient

$ make

  1. Repositorio de Open clon

$ cd

$ git clone -b master https://github.com/f1xpl/openauto.git

  1. Crear el directorio openauto_build en el mismo nivel que Open dir

$ mkdir openauto_build

$ cd openauto_build

  1. Generar archivos de cmake

Nota: Si es necesario, ajustar los path  a su localización de directorios aasdk y aasdk_build.

$ cmake -DCMAKE_BUILD_TYPE=Release -DRPI3_BUILD=TRUE -DAASDK_INCLUDE_DIRS=”/home/pi/aasdk/include” -DAASDK_LIBRARIES=”/home/pi/aasdk/lib/libaasdk.so” -DAASDK_PROTO_INCLUDE_DIRS=”/home/pi/aasdk_build” -DAASDK_PROTO_LIBRARIES=”/home/pi/aasdk/lib/libaasdk_proto.so” ../openauto

  1. Construir OpenAuto

$ make

  1. Ejecutar Open

$ /home/pi/openauto/bin/autoapp

Añadir Open a autorun

  1. Archivo abrir autostart

$ sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart

  1. Agregar debajo de línea al final del archivo autorun

@/ hogar/pi/Open/bin/autoapp

 

Apagar  Raspbery PI 3 cuando el teléfono se está desconectando

  1. Archivo abierto openauto.rules

$ sudo nano /etc/udev/rules.d/openauto.rules

  1. Añadir a continuación las líneas al final del archivo openauto.rules

SUBSISTEMA == “usb”, acción == “add”, ENV {ID_VENDOR_ID} == “18d 1”, ENV {ID_MODEL_ID} == “2d 00” RUN += “/ bin/sh – c ‘ / sbin/shutdown – c & & echo 0 > /sys/class/backlight/rpi_backlight/bl_power'”

SUBSISTEMA == “usb”, acción == “add”, ENV {ID_VENDOR_ID} == “18d 1”, ENV {ID_MODEL_ID} == “2d 01”, RUN += “/ bin/sh – c ‘ / sbin/shutdown – c & & echo 0 > /sys/class/backlight/rpi_backlight/bl_power'”

SUBSISTEMA == “usb”, acción == “remove”, ENV {ID_VENDOR_ID} == “18d 1”, ENV {ID_MODEL_ID} == “2d 00” RUN += “/ bin/sh – c ‘ / sbin/shutdown: apagado 1 & & echo 1 > /sys/class/backlight/rpi_backlight/bl_power'”

SUBSISTEMA == “usb”, acción == “remove”, ENV {ID_VENDOR_ID} == “18d 1”, ENV {ID_MODEL_ID} == “2d 01”, RUN += “/ bin/sh – c ‘ / sbin/shutdown: apagado 1 & & echo 1 > /sys/class/backlight/rpi_backlight/bl_power'”

Este  script va a hacer las siguientes acciones:

  1. Desactivar el apagado de pantalla y programar de forma  retrasada  por 1 minuto cuando el teléfono se está desconectando
  2. Encender la pantalla y cancelar el apagado cuando el teléfono se está conectando

Puede ajustarse el  retraso de 1 minuto para sus necesidades.

 

Reglas de udev (permisos de USB)

Para utilizar Open con sistema operativo basado en Linux (por ejemplo, Raspbian) con udev, debe crear una regla para permitir la comunicación con los dispositivos USB en modo de lectura/escritura.

La regla más simple parece debajo de uno:

SUBSISTEMA == “usb”, atributos {idVendor} == “*”, atributos {idProduct} == “*”, MODE = “0660”, grupo = “plugdev”

Para agregar esta regla de udev, hacer:

$ cd /etc/udev/rules.d

$ sudo touch openauto.rules

$ sudo nano openauto.rules

Aplique estas reglas, guarde el archivo y reinicie el dispositivo.

Tenga en cuenta que la regla anterior permite  abrir cualquier dispositivo USB en modo de lectura/escritura por cualquier aplicación instalada en el sistema. Considerar como insegura.

Configuración de PulseAudio

Paquetes audio de AndroidAuto se entregan en trozos muy pequeños. Debido a esto podrían necesitarse ajustes de configuración de PulseAudio para evitar problemas con el audio.

Añadir/anulación por debajo de las líneas en /etc/pulse/daemon.conf

resample-method = ffmpeg

En /etc/pulse/default.pa añadir tsched = 0 en la línea de ‘carga-módulo módulo-udev-detect’

load-module module-udev-detect tsched=0

Después de cambios de configuración debe reiniciar la instancia de pulseaudio. Puede hacerlo con  la ejecución del comando  pulseaudio -k .

 

Fuente https://github.com/f1xpl/openauto/wiki/Build-instructions

 

ELECTRÓNICA ADICIONAL

Para facilitar el manejo  de openAuto  y extender su funcionamiento  Everlanders ha conectado 4 pulsadores directos para activar la cámara, variar el brillo o despertar la placa

No deja de ser importante el  apartado de alimentación  pues en la Raspberry Pi 3 es de 5v DC 2amp y en un automóvil es de 12V  requiriéndose  un convertidor   dc-dc  .Obviamente en los tiempos que correen ,es mucho mas eficiente  un convertidor conmutado 12v-5v  que un regulador  7805

También ,por ultimo para detectar la marcha atrás ,es muy  interesante usar un opto-acoplador para aislar a la Raspberry Pi 3 de posibles problemas ele ctricos   en el automovil dado el aislamiento galvánico que nos ofrecen los optoaisladores.

El esquema final de este montaje completamente opcional es el siguiente:

esquema.PNG

Para manejar los pulsadores se requieren   los siguientes tres siguientes scripts escritos por el  Everlands:

LightMonitor.py

Este script en Python sirve  para atenuar la pantalla y cambiar a la cámara de retroceso. Recuerde, que es interesante usar un optoacoplador para detectar la marcha atrás con los la lógica se invierte … 0 = encendido 1 = apagado. Ademas, solo se debe ejecutar uno de estos scripts de “Monitor”, es decir  no puede estar ejecutando RearviewMonitor.py Y LightMonitor.py

CODIGO DE LIGTMONITOR.PY

#!/usr/bin/python

import RPi.GPIO as GPIO
import time
import subprocess, os
import signal
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
RearView_Switch = 14 # pin 18
Brightness_Switch = 15 # pin 16
#Extra_Switch = 1 # pin 3
GPIO.setup(RearView_Switch,GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.setup(Brightness_Switch,GPIO.IN, pull_up_down=GPIO.PUD_UP)

print ” Press Ctrl & C to Quit”

try:

run = 0
bright = 0
while True :
time.sleep(0.25)

# esto restringe la secuencia de comandos para verificar las luces cada 1/4 de segundo. #No tiene sentido revisar 10.000 veces por segundo.

# Si se encienden las luces de marcha atrás, hacer esto:
if GPIO.input(RearView_Switch)==0 and run == 0:
print “Switching Rearview Camera On”
rpistr = “raspivid -t 0 -vf -h 480 -w 800”
p=subprocess.Popen(rpistr,shell=True, preexec_fn=os.setsid)
run = 1

Cuando las luces de marcha atrás se apagan, hacer esto:

if GPIO.input(RearView_Switch)==1 and run == 1:
os.killpg(p.pid, signal.SIGTERM)
print “Killing the reverse camera feed”
run = 0

# Estos dos bloques siguientes monitorean los faros o la luz del marcador y ajustan la #configuración de brillo de la pantalla.

if GPIO.input(Brightness_Switch)==0 and bright == 0:
print “Setting Brightness to 20” # 20 is about 10%
subprocess.call (“/usr/local/bin/backlight.sh 20”, shell=True)
bright = 1

if GPIO.input(Brightness_Switch)==1 and bright == 1:
print “Setting Brightness back to 255” #255 is 100%
subprocess.call (“/usr/local/bin/backlight.sh 255″, shell=True)
bright = 0

except KeyboardInterrupt:
print ” Quit”
GPIO.cleanup()

 

backlight.sh

Este script en cshell sirve par ajustar el nivel de luminosidad de la pantalla oficial qeu hemos conectado a la raspberry. Como es de esperar acepta  un parámetro que es precisamente un entero entre 0 y 255

CODIGO SCRIPT BACKLIGHT

#!/bin/bash

level=$1
#echo “level given is $level”

if [ $# != 1 ]; then
echo “USAGE: $0 brightness_level (0 to 255)”
exit 1
fi

if [[ $level -ge 0 && $level -le 255 ]]; then
#echo “level given is $level”
echo $level > /sys/class/backlight/rpi_backlight/brightness
echo “Screen brightness set to $level.”
exit 0
else
echo “Brightness level $level is out of range! (0 to 255 only)”
exit 1
fi

Para  probar el  script de retro-iluminación   ejecutar el script con el parámetro usando un valor entero menor que 255 ,por ejemplo  ./backlight.sh 128

 

ButtonMonitor.py

#!/usr/bin/python

import RPi.GPIO as GPIO
import time
import subprocess, os
import signal
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
RearView_Switch = 14 # pin 18
Brightness_Switch = 15 # pin 16
#Extra_Switch = 1 # pin 3
GPIO.setup(RearView_Switch,GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.setup(Brightness_Switch,GPIO.IN, pull_up_down=GPIO.PUD_UP)

print ” Press Ctrl & C to Quit”

try:

run = 0
bright = 0
while True :
time.sleep(0.1)

#los siguientes cuatro bloques se utilizan para alternar entre las vistas de la cámara.

if GPIO.input(RearView_Switch)==0 and run == 0:
print ” Started Full Screen”
rpistr = “raspivid -t 0 -vf -h 480 -w 800”
p=subprocess.Popen(rpistr,shell=True, preexec_fn=os.setsid)
run = 1
while GPIO.input(RearView_Switch)==0:
time.sleep(0.1)

if GPIO.input(RearView_Switch)==0 and run == 1:
os.killpg(p.pid, signal.SIGTERM)
print ” Started Full Screen Transparent”
rpistr = “raspivid -t 0 -vf -op 128 -h 480 -w 800”
p=subprocess.Popen(rpistr,shell=True, preexec_fn=os.setsid)
run = 2
while GPIO.input(RearView_Switch)==0:
time.sleep(0.1)

if GPIO.input(RearView_Switch)==0 and run == 2:
os.killpg(p.pid, signal.SIGTERM)
print ” Started PIP Right side”
rpistr = “raspivid -t 0 -vf -p 350,1,480,320”
p=subprocess.Popen(rpistr,shell=True, preexec_fn=os.setsid)
run = 3
while GPIO.input(RearView_Switch)==0:
time.sleep(0.1)

if GPIO.input(RearView_Switch)==0 and run == 3:
print ” Stopped ”
run = 0
os.killpg(p.pid, signal.SIGTERM)
while GPIO.input(RearView_Switch)==0:
time.sleep(0.1)

# Estos tres bloques siguientes alternan entre las tres configuraciones de brillo.

if GPIO.input(Brightness_Switch)==0 and bright == 0:
print “Setting Brightness to 255”
subprocess.call (“/usr/local/bin/backlight.sh 255”, shell=True)
bright = 1
while GPIO.input(Brightness_Switch)==0:
time.sleep(0.1)

if GPIO.input(Brightness_Switch)==0 and bright == 1:
print “Setting Brightness to 128”
subprocess.call (“/usr/local/bin/backlight.sh 128”, shell=True)
bright = 2
while GPIO.input(Brightness_Switch)==0:
time.sleep(0.1)

if GPIO.input(Brightness_Switch)==0 and bright == 2:
print “Setting Brightness to 20”
subprocess.call (“/usr/local/bin/backlight.sh 20”, shell=True)
bright = 0
while GPIO.input(Brightness_Switch)==0:
time.sleep(0.1)

except KeyboardInterrupt:
print ” Quit”
GPIO.cleanup()

 

Respecto a la activación ,para probar la camara  ejecutar  ButtonMonitor.py.  Ahora una vez probado , tenemos que hacer  que se ejecute automáticamente . Para ello tenemos que editar el archivo /home/pi/.config/lxsession/LXDE-pi/autostart

En la ultima linea del script  añadir  /usr/local/bin/ButtonMonitor.py

autostart.PNG

 

IMPORTANTE : Deberemos copiar los tres  scripts  a la ruta /usr/local/bin  y conceder los permisos de ejecución  mediante el comando sudo chmod +x . La fuente original de los  scripts  es :https://gist.github.com/Everlanders

 

En el siguiente vídeo podemos ver todo el proceso de creación de un dispositivo basado en Raspberry PI  para uso exclusivo en un vehículo  usando  todos los componentes mencionados anteriormente.

 

Anuncios

Actualice su vehículo con funcionalidades avanzadas propias de la aviación


Los HUD (Head-Up Display) llevan años en  la ficción con nosotros  ,como por ejemplo en  interior  del casco de Iron Man (2008) los visores de los personajes del anime Bola de Dragón (1984) o la pantalla de Minority Report (2002), pero toda esta ideas  actualmente ya no son ciencia ficción  pues los primeros dispositivos  reales se diseñaron ya hace mas de dos  décadas  para la aviación, mostrando información en pantalla al piloto para que este pudiese girar la cabeza sin perder esos datos de velocidad, altitud o ángulos.

A la aviación  pronto le siguió el sector automovilístico  con  marcas  como Mazda, Citroën o Peugeot  que usan  pantallas traslúcidas de policarbonato y otros materiales sobre ellas, proyectando en estas distinta información, como la velocidad del vehículo, el límite de velocidad de la vía, e incluso breves instrucciones de navegación.

Incluso algunos fabricantes como BMW  quieren llegar mas lejos usando la propia luna del vehículo como HUD proyectando  es esta diferente información  útil  para el conductor, concepto que es el que implementan  la mayoría de las soluciones actuales

 

Por supuesto los motoristas mucho más expuestos que los conductores de otros vehículo también pueden disfrutar de  esta tecnologia  con el  llamado     HUD HMD (Helmet-Mounted Display o monitor instalado en casco)  que ayuda a conducir con mayor seguridad   destacando en este campo la marca Skully

 

Display  HUD avanzado

Como  vemos  los HUD  básicamente son  displays orientados a la seguridad,  pues la idea fundamental de este tipo de dispositivos es que el conductor mantenga su mirada en dirección al frente  sin perder de vista la carretera mostrando a  la vez superpuesta esta información relevante  por tanto sin obligar al conductor a girar la cabeza cada vez que quiera comprobar algo.

Un ejemplo de HUD sencillo son las apps   que reflejan información  a la altura del parabrisas con un simple soporte   tal y como ya hemos hablado en este blog en muchas ocasiones ,pero actualmente  gracias a la fusión de estos displays  HUD  de nueva tecnologia  y la información proporcionada por el puerto de diagnóstico o OBDII de su vehículo , podemos proyectar la información útil de conducción  en su parabrisas  de modo que  no tenga que apartar la vista de la carretera para dirigirla  al cuadro de instrumentos por ejemplo  para saber a la velocidad  a la que se circula  o  las revoluciones del motor .

 

Una novedad ademas de los nuevos HUDs es que gracias a la evolución de la información  del OBDII  pueden suministrar incluso mas información que el propio vehículo podía ofrecer

Como ejemplo , hasta hace poco un HUD conectado al OBDII  podía proporcionar información básica  como :

  •  Velocidad
  •  Las revoluciones del motor
  • Temperatura de agua
  •  Voltaje de la batería
  •  Alarmas  (  de bajo voltaje, alta temperatura, velocidad,etc)
  • etc  ( dependiente de cada modelo)

Actualmente la mayoría de los nuevos modelos pueden ofrecer información mucho mas rica que la proporcionada por modelos sencillos de HUD . Concretaemente  el modelo VGEBY ( uno de los mas vendidos  en l gama media )  puede ofrecer ademas de la información básica anterior , las siguientes alertas , informaciones y sugerencias mas avanzadas  propias de algunos ordenadores de a borde de coches de alta gama como puede ser :

  • El numero de marcha 
  • Alarma de RPM
  • Control de horas en marcha para sugerir al conductor descansar
  • Código de error del motor
  • Alarma de consumo   para mejorar la eficiencia en el consumo correlacionado   la velocidad de rotación del motor con el numero de marcha y la velocidad lineal,etc
  • Alarma de exceso de velocidad

Este modelo   cuenta con  una  pantalla  HUD de  5.5 pulgadas  y  puede mostrar muchos parámetros al mismo el tiempo ,  como  son la velocidad del vehículo, velocidad del motor, temperatura del agua ,varias  alarmas (voltaje,posición de la válvula de mariposa, ángulo de avance de encendido, tiempo de 100 km aceleración), consumo de combustible, kilometraje, aviso de   poco combustible, fallo del motor, etc.

Esta pantalla se conecta al ODB 2  mediante  un cable especial que en un extremo cuenta con mini-usb ( para conectar al HUD)  y por otro un conector ODBII  para conectar al vehículo.Por cierto ,este cable suele ser muy fino para que pase desapercibido,por lo que  debe tenerse cuidado con este,  pues puede partirse fácilmente si hacemos mucha presión sobre el para disimularlo.

Aunque  podamos ver este  HUD    bajo diferentes marcas   y acabados , en realidad casi todos  se basan en el mismo modelo , con ligeras variaciones lo cual se traduce en diferentes calidades  o precios, pero todos pueden adaptarse automáticamente al tipo de vehículo que está en línea con OBDII o EUOBD (Sistema de diagnóstico a bordo).

La información ofrecida por    este  HUD  es mucho mas rica que la mostrada por otros modelos pues es concreto es la siguinte:

  • Velocidad en km/h
  • Revoluciones por minuto del motor
  • Consumo de combustible
  • Tiempo en marcha
  • Temperatura del radiador
  • Indicador del numero de  marcha engranada
  • Avisos de fallos del motor
  • Tensión de la batería
  • Presiones del sistema de admisión
  • Recordatorio de descanso
  • Tiempo de aceleración en 100 km
  • Alarmas , etc

El modo  de visualización puede ser seleccionado  por el propio conductor  , el cual puede elegir el modo de visualización normal, alta velocidad modo de visualización y modo de visualización automática.

Mediante la función de visualización se pueden mostrar : Velocidad de conducción, velocidad del motor(RPM)  , temperatura del agua, voltaje de la batería, consumo de combustible, conmutación libre entre kilómetro y milla, conmutación libre entre C y F.

En cuanto las alarmas  cuenta con las siguientes:  Alarma de sobrevelocidad, alarma de alta temperatura, alarma de baja tensión, alarma de falla del motor y posibilidad de  eliminación del código de fallo, etc

Una peculiaridad  necesaria   es tenerlo configurado por defecto en   Km y no en  millas, función que viene configurada  normalmente en Europa (como otros parámetros  similares)

Es interesante destacar que estos modelos deben incluir  algún mecanismo para  apagarse automáticamente   y por supuesto  iniciarse   cuando el vehículo se ha arrancado (es  decir AUTO ENCENDIDO / APAGADO) , apagándose pues  cuando  el vehículo se  haya detenido  para proteger la batería del vehículo.

Por otra parte, aunque debería manipularse  lo mínimo posible , se pueden cambiar  las funciones  con una sola  mano para controlar el HUD, aunque no hace falta decir que debería hacerse con el vehículo parado.

Asimismo,  buscando la máxima comodidad  es muy útil el  modo de ajuste automático  del brillo de la pantalla  , aunque también en casi  todos los HUID  , este ajuste  se puede ajustar manualmente.

 

Es muy importe destacar  que este tipo de dispositivos están  disponibles para coches con una interfaz OBD2 / EUOBD .(No son compatible con Blade Electric Vehicle)  ,y como vamos a  ver ,  son  muy fáciles de instalar , tanto es asi  que podríamos decir que es “plug and play”.

 

Instalación del HUD

  • Antes de nada casi todos los vehículos modernos cuentan  con una interfaz OBD2 / EUOBD.  Para conocer si su  vehículo  lo es  puede abrir el capó del motor y debería encontrar una pegatina, si la etiqueta tiene la letra “OBDII CERTIFIED”, significa que puede instalar el HUD.   No obstante , aunque el vehículo no cuente con esta pegatina, lo normal es que si es un vehículo del 2010  en adelante , esta característica la soporte. 
ond2.PNG
  • Para verificar el conector de diagnóstico del vehículo debajo del volante, puede encontrar toma de 16 pins del vehículo.
figura2 IMG_20180120_162125[1].jpg
Una vez localizado  conecte el extremo del cable  suministrado en el conector del vehiculos
IMG_20180120_162216[1].jpg
  • Haga pasar el cable por el borde de la puerta
IMG_20180120_162249[1].jpg
  • Ahora bordee  el parabrisas  con  el cable hasta llegar a su la posición  donde coloque  el  aparato
IMG_20180120_162352[1].jpg
  • Ahora ya conducido el cable  debe poner el circular antideslizante en posición plana delante sobre el  HUD  .Puede ajustar  ángulo del  HUD de modo qeu la imagen  reflejada en el parabrisas este  nivelada.
IMG_20180120_163331[1].jpg
  •  Pegar OPCIONALMENTE  la película reflectante sobre el parabrisas . Algunos consejos para pegar la película antirreflectante:
         – Puede rociar uniformemente agua sobre el parabrisas.
          -Rasgue la capa protectora de la película y rocíe un poco de agua para ambos lados, luego pégalo en el lugar que quiera.
          -Nivelar el agua debajo de la película con un objeto liso hasta que no haya agua
    y burbuja dentro.
         -Cuando el agua se evapore, puede limpiar el agua y el polvo alrededor del
    película.
IMG_20180120_165205[1].jpg
  •  Para probar el dispositivo , debe encender el host de HUD y debería ver el
    voltaje de la batería del vehículo, y luego entrará  en el estado de investigación de
    la versión del ordenador de a bordo del vehículo reconociendo este con un pitido indicando con esto de que esta listo. 
  • Después de estos simples pasos podemos decir que HUD está instalado exitosamente.                                                                                                                                      

 

Por favor, revise las reglas y regulaciones locales para el uso de este  tipo de dispositivos en  carretera   verificando que las regulaciones locales  autorizan  este tipo de instalaciones y es conforme  que  la posición del indicador esté dentro de distancias fijas del tablero para algunas ubicaciones.

Como conectar una memoria USB al Amazon Fire Stick


Amazon Fire TV es uno de los dispositivos más originales de Amazon  pues por un precio razonable ( dado que esta sufragado  en parte por Amazon  para  que consumos contenidos  suyos,) , este gadget   nos permite  llevar todo el material multimedia a un mismo punto  y ademas gobernándolo con un sencillo mando

Algunas de las plataformas accesibles desde este dispositivo son:

  • Con la suscripción a Amazon Prime, se tiene acceso a Prime Video, que ofrece miles de películas y episodios de series sin ningún cargo adicional.
  • Se puede acceder a fotos en Prime Photos sin ningún coste adicional y verlas en su televisor HD con el Fire TV Stick Basic Edition.
  • Permite usarlo como plataforma de juegos causal gracias a apps disponibles en  el portal de Amazon  como  Stranger Things: The Game, Galaxy Zero, Asphalt 8 o incluso algún Final Fantasy como el III, V o VI , estas ultimas de pago ( lo ideal  usar un mando bluetooth),
  • Se pueden instalar  miles  de aplicaciones  directamente desde el propio dispositivo  gracias  a la vinculación del Fire TV Stick , con su cuenta de Amazon
  • Se puede acceder a redes sociales como Facebook, Reddit ,eyc asi como a  millones de otros sitios web usando navegadores web como Silk o Firefox ya preinstalados en el propio stick .
  • Se puede disfrutar  de otros servicios ajenos a Amazon  tan populares como Netflix, Youtube, Spotify  etc
  • Se  puede disfrutar de  Movistar + sin descodificador  como vimos en este blog

 

 

La versión vendida en muchos paises fuera del ámbito anglosajón como por ejemplo en  España,es la denominada Basic Edition, la cual en realidad es la segunda generación del producto  contando  con un  Mediatek 8127D (cuatro núcleos Cortex-A7 a 1,3 Ghz) y gráfica ARM Mali-450 MP4   o capaz de decodificar contenido en H.265 por hardware, si bien la resolución en esta version es Full-HD (1920×1080). Asimismo cuenta con unas muy buenas capacidades de conectividad  siendo compatible con Wifi-AC (Dual Band) y Bluetooth en su versión 4.1.

Respecto a la interfaz  interfaz de Fire OS 5 es cómoda y fluida,cuenta a con un buen número de funciones preinstaladas que pueden ser extendidas mediante la descarga de aplicaciones adicionales a través de Amazon Appstore como cometabamos al principio de este post.

Al estar basado en la versión 5 de Android (Lollipop), es posible también instalar manualmente aplicaciones Android (mediante archivos APK), aunque su funcionalidad dependerá de como de bien se adapten al control desde el mando a distancia.
Dispone además de 1 Gb. de memoria RAM y 8 Gb. de almacenamiento eMMC no ampliables lo cual pude ser un problema  sino fuera por un truco que  vamos a  ver a continuación basados en la extensión de OTG que es soportada por este .

 

 

 Instalación de un  cable OTG

Los  componentes  que  se  incluyen con  el  Fire TV Stick    aparte del dongle   y el mando son las dos pilas para el mando  y dos cables:uno  para  alimentarlo a 5v desde un usb ( ojo si  la tv no tiene usb  habrá que conectarle  un adaptador usb)    y  un extensor de hdmi para el caso de  que no entre el conector directamente en el conector del tv)

componentes

La instalación  como vemos es minimalista  ,pues en el caso ideal el dongle se conecta directamente a un conector hdmi del tv    y solo requiere la alimentación que se hace  por medio de cualquier conector usb que tenga el TV ( aprovechando los 5v DC de la conexión usb) o bien desde un alimentador externo USB  , en caso sobre todo si pretende conectar un disco duro externo al Fire TV

instalacion.PNG

Aunque sus dimensiones son reducidas  , para evitar  problemas a la hora de conectar el conector de video   Amazon entrega  un extensor HDMI permitiendo así  que el dongle pueda ir  en otra posición .

Con todo listo y conectado , una vez encendida la TV y haya cargado el sistema operativo ,en primer lugar  tendremos que ir a la configuración de red  para conectarnos a nuestra red wifi ( el Fire TV Stick   cuenta  Wifi de doble banda y doble antena, compatible con 2×2 MIMO 802.11a/b/g/n/ac )   de modo que  una vez le hayamos configurado la red  y la contraseña ya  todo  ya estará listo.Respecto a las credenciales de Amazon nos las   podemos ahorrar el introducir nuestros datos de Amazon  ya  que al adquirirlo  incluye nuestra cuenta de Amazon ya configurada como ocurre con los Kindle .Como valor añadido  gracias a la conectividad integrada  nos ofrece la posibilidad de conectar dispositivos bluetooth como auriculares, altavoces o mandos de juegos,

Una vez comprobado su funcionamiento del stick  ,  es hora de conectar un cable OTG ( USB  micro USB) que incluya alimentación mediante micro-usb hembra pues de otro modo no podríamos alimentar al el Fire TV Stick

Este tipo de cables OTG  con alimentación suelen ser algo mas caros que los cables OTG’s normales,   pero dado la configuración del dispositivo , al no incluir batería interna comO ocurre en lo smartphone  y tabletas  , este debe  alimentarse exclusivamente por el conector micro-usb , por lo  que es fundamental poder proporcionar los 5v DC por este medio también , así que debemos adquirir este cable también( menos de 8€ en Amazon Premium)

Respecto  al conexionado de este adaptador no puede ser mas sencillo pues lo interconectaremos entre el cable de alimentacion al que  conectaremos la hembra usb del cable   y el otro extremo conectaremos al Fire TV Stick

IMG_20181007_223639[1]

 

Como se puede en la imagen, uno de los  dispositivo ideales para usar con el Fire y el adaptado, son las memorias externas USB , por ejemplo para poder visualizar nuestras fotos o vídeos  favoritas directamente en nuestra TV  desde el Fire TV usando el mando  incluido

Por cierto para visualizar las fotos y  vídeos,   o inspeccionar archivos incluidos en la memoria externa USB que conectemos al Fire via OTG , existe  una aplicación gratuita muy útil  instalable desde la propia interfaz del Fire Stick  en Utilidades  llamadas  File Explorer disponible gratuitamente y  que permite no solo ver el contenido del medio sino también visualizar  por ejemplo las fotos en pantalla completa  y avanzar con el propio mando.

 

IMG_20181007_223530[1]

Aunque conectar memorias externas o discos externos  al el Fire TV Stick es una de las utilidades mas notables  del adaptador OTG , podemos conectar otros dispositivos muy diferentes compatibles con Android 5.0  como pueden ser:

  • Gamepad  usb
  • Tarjetas de red usb
  • lectores de microsd
  • Capturadoras de video ,
  • etc

 

Movistar Home ya se puede comprar


Movistar Home es el famoso asistente  que se ha popularizado enormemente  en España gracias a la ingeniosa  campaña publicitara lanzada  este verano, la cual ha sido muy aplaudida por su gran originalidad

..Pues bien tras el descanso del verano , en España y probablemente  pronto en otros países donde opera Movistar  ,se acaba de abrir el periodo de encargo ( o preserva) del famoso asistente  para los usuarios más impacientes y curiosos, fase que se prolongará hasta el próximo 16 de diciembre.

En efecto  si se   tiene  contratado un paquete convergente de Fusión ( fibra o ADSL) en España y ,se cuenta  con  del router Smart WiFi  o HGU  ya se puede preservar a través de la web con un precio exclusivo de 49 €  para las primeras 5.000 unidades esperándose  que se entreguen los encargos entre 15 noviembre y el 15 de diciembre.

Movistar home es  básicamente un asistente de voz  para comunicarse con Aura la inteligencia artificial de Movistar, pero a  diferencia de otros asistentes de voz como Siri o Amazon Echo ,  cuenta con una pantalla de 8 pulgadas, tecnología de voz Intel, procesador Intel atom y una cámara de alta sensibilidad para poder hablar incluso por la noche ( cámara por cierto que  se puede boquear de forma física al igual que el micrófono).

Ademas  es también  un teléfono fijo  y se pueden hacer videollamadas gracias a la camara incorporada.

 

Otro aspecto interesante es que puede ordenar que se proyecten los contenidos para que se vean por cualquier TV  conectado  a Movistar+.  Por  ultimo  ,por si fuera poco, también puede  gestionar la  conectividad del hogar y en un futuro también podrá controlar elementos domóticos  entre otras muchas opciones, .

El corazón del dispositivo lleva el sello de Intel gracias a su procesador Atom, así como las tecnologías de voz del fabricante estadounidense de microprocesadores.

Algunos ejemplos de comandos de voz que podemos probar con este fantástico asistente disponible para cuanto digas ¡OK Aura! pueden ser :

  • OK Aura, una romántica”Llega a casa y le apetece una peli. Se preguntas, ¿alguna que coincida con mi estado de ánimo? Pues  se encarga Aura a través de Movistar Home.
  • OK Aura, ¿cuál es la clave del Wi-Fi?”Si no quiere  agacharse debajo del sofá para ver en el router el nombre y la contraseña de la Wi-FI puede pedir a a Aura quele la muestre en la pantalla de Movistar Home
  • “OK Aura, quiero ver Movistar Disney“Si tiene hijos esto puede a gustarles pues Movistar Home es tan fácil que hasta un niño podrá usarlo!
  • OK Aura, llama a mamá“:Reimaginar el teléfono fijoes posible  gracias a Movistar Home. Tambien puede pedir  a Aura que haga una vídeo llamada.
  • Ok Aura, ¿cuándo es el próximo partido del Atleti?”Con Movistar Home se puede  disfrutar de toda la Liga y la Champions.
  • “OK Aura, pon la carrera de motos“:Toda la F1 y también las motos. No se pierdas nada, ¡lo tienes todo a una sola frase de distancia!
  • OK Aura, recomiéndame series”¿Series o pelis? Diga “OK Aura” sin moverse del sofá y pida que lo lance a la tele a través de Movistar Home.

 

Por cierto  ,algunas de las funcionalidades de Movistar Hpme  se pueden disfrutar no solo con Movistar Home , pues existe un app  llamada Movistar+ que permite lanzar contenidos o realizar consultas usando Aura desde el mismo  movil  .Puede hablar con Aura, por voz o texto, y pídiendo cosas como: consultar la programación, explorar nuevos contenidos o sintonizar un canal. Cuanto más le pida, mejor sabrá lo que necesitas.

Para la visualización de los contenidos de esta aplicación es necesario conectarse a Internet (Wi-Fi, 3G/4G o Ethernet) y ser cliente de Movistar en cualquiera de las modalidades .

 

Captura de pantalla

 

Sin duda con este dispositivo  y Aura ,el teléfono convencional ha sido sobradamente superado gracias a la inteligencia cognitiva de   Aura  y por supuesto las posibilidades de la red como vehiculo de comunicación global

Como usar su smartphone o tableta como monitor de video


En efecto gracias  a la tecnologia OTG  (On then Go),  disponible en muchos smartphones   y tabletas Android,  es  posible utilizar con estos dispositivos hardware  adicional  como memorias USB, discos duros externos,capturadoras de  video, tarjetas de red ,etc   en principio  diseñados para  ordenadores,  pero que  gracias a  esta conexión podemos  ampliar el horizonte desde el mundo del pc a nuestros dispositivos Android.

Antes de empezar  , debe comprobar las especificaciones de la tableta o smartphone si es compatible con  la tecnología OTG en su conector microUSB, pues no todos  los dispositivos  los soportan ( lo cual , por cierto, si no lo sabe con exactitud,  hay varias aplicaciones en Google Play que lo pueden comprobar como otg-checker).En caso que sus dispositivos lo soperten, con  esta tecnología  podremos utilizar nuestro conector microUSB para algo más que para cargar el  dispositivo como vamos a ver a continuación.

En este ejemplo  sencillo  vamos a utilizar un  dispositivo usb externo del tamaño  algo mas grande que un lápiz sub , concreta mente el popular   AV Easycap adaptador USB para usar en nuestro teléfono Android o tablet como una pantalla secundaria de la FPV o DVR.

Probablemente esta solución quizas no sea tan buena para usar de forma permanente  como  pantalla principal pues  introduce cierta latencia en el sistema, pero si puede ser interesante  para trabajos puntuales  como por ejemplo para usar cn cámaras de  inspección , endoscopios,reproductores de dvd, etc .

Estos son los elementos  hardware y si software  que necesitaremos:

  • Adaptador USB Easycap. Se debe asegúre de que tiene el chipset UTV007 oes una Easycap USB (HTV600, HTV800), STK1160, UVC o de lo contrario no funcionará con Android .Su precio en Amazon ronda los 15€   .                                                         
  • Adaptador  USB a OTG    .En esta ocasión usaremos un modelo económico  con conector acodado tipo Micro USB B macho a USB A hembra  . Su precio suele ser elevado  pero  siempre hay algun  vendedor qeu nos ofrece modelos mas competivos( el mostrado es un producto plus que cuesta 2€)                               NANOCABLE 10.01.3600 - Cable USB 2.0 OTG acodado (On-The-GO), tipo Micro B/M-A/H, macho-hembra, negro, 15cm
  • Visor de EasyCap (disponible en Google Play)., existen  apps similares gratuitas
  • App de grabación de pantalla de su elección. Puede usar  AZ Screen Recorder o incluso al version grabadora de EayCap.
  • Un  dispositivo  con salida de video compuesto PAL para comprobar que funciona correctamente  (por ejemplo una cámara, un reproductor de DVD, un receptor de TDT, etc);

Configuración del hardware

Las conexiones como se pueden ver en la imagen  debajo son muy sencillas ,pues bastara conectar el adaptador de otg al smartphone o tableta , el otro extremo con conector usb hembra  al Easycap  y en la entrada de video del easycap  la señal de video externa que queremos visionar.

easycap.PNG

El Easycap dispone de conexione antiguas clásicas   como son una entrada de video compuesto ( el amarillo)   ,tomas de entrada  de audio (rca blanco  rojo) y  una entrada sde s-video (llamada también  “supervideo” ), la cual la mayoría  de  las veces   podemos prescindir al igual que las conexiones de audio(  si es que  no estamos interesados en capturar también el audio)

Hay personas que buscando un dispositivo compacto  pero mas funcional  optan por cortar todos los cables excepto el rca  con  conector amarillo corto (de la Easycap y FR632 el cable). Como la mayoría de  los dispositivos modernos usan jack de 2 1/2″   también incluso  cortan el  tapón amarillo  así como la la funda exterior del cable y sueldan un jack en su lugar.

Para el FR632, el cobre pelado es tierra y el cable amarillo es video. Para el Easycap, el cable blanco es tierra y rojo es video    pero también se puede soldar directamente en la propia placa EasyCap pues esta se puede desmontarse fácilmente. También se puede elegir utilizar un adaptador RCA macho a macho pero quizás quede mas compacto  soldando el conector , eso si la conexión   que necesita es la de jack de 2 1/2″ y no la de RCA.  El resultado final será algo como esto:

Final cable. Long connecting wires not shown

Uso y configuración de software

Para la app  se requiere:

  • Android 4.x hasta 7.x
  • Resolución de vídeo depende del formato de video y dispositivo de Easycap: NTSC: 720 * 480 @ 30fps; PAL: 720 * 576 @ 25fps y UVC y la cámara: desde QQVGA (160×120) hasta 5 megapíxeles (2592×1944)
  • Tiempo de demora – 0,1sec – transmisión en vivo casi
  • Se recomienda el uso de dispositivos Android con procesadores: Qualcomm Snapdragon, Intel, Exynos, sin Nvidia GPU Mali-4xx serie
  • lista de dispositivos probados: http://autodroid.mybb.us/viewtopic.php?id=32 

Con la adaptación  puede conectar la Easycap en el dispositivo mediante el cable OTG  ,pero puede que necesite cambiar algunas opciones para poder usar dispositivos OTG.

Enchufe el otro extremo del cable de vídeo en su dispositivo ( cámara, reproductor de DVD, receptor de TDT, etc).  Ahora, inicie  la aplicación de visor de Easycap .  Debería poder  ver  una imagen clara  y nítida  .

Puede utilizar la aplicación grabadora de pantalla para registrar su señal de video desde el visor de Easycap. Sólo iniciar la captura de pantalla, abrir el visor de Easycap, y detener la grabación cuando haya terminado.

En este vídeo  podemos  ver el proceso completo de la sencilla adaptación del  Easycap   a un jack de 2 1/2″:

 

Por favor asegúrese de que el dispositivo admite el modo de host USB (OTG) , antes de comprar la aplicación EasyCap  . Recordemos que debe preparar una  señal analógica activa  qeu conectara  a la  entrada de video del Easycap   y conectar el  cable OTG C  asi como  conectar el dispositivo EasyCap  para la prueba

 

Software 3D alternativo para impresora Geeteeth Prusa I3W


Actualmente una de las impresoras 3d mas económicas pero al mismo tiempo fiables es la famosa impresora Geetech  Prusa I3W, la cual por cierto es la elección preferida por los clientes de Amazon ( cuesta unos 150€ en forma de kit), siendo una de las mas vendidas en consecuencia .

El montaje de la Prusa I3 W ciertamente es bastante laborioso pero no es  tan complicado como podrida pensarse ( unas 10 horas aproximadamente o dos tardes ) siendo un ejercicio estupendo para compartir con un menor,  sobre todo cuando se trata de ensamblar piezas móviles o conectar bloques de madera entre si .Por cierto en este blog están precisamente los links de los videos de montaje paso a paso,

Una vez hecho el montaje mecánico, hay que cablear ,colocar la electronica  ,ajustarla e instalar el sw  de EasyPrint3d con el pc. Se supone que es “plug and play” pero hay personas  que tienen  que  buscar el driver de Arduino e instalarlo.

Podríamos decir que la calibración y configuración es lo que más tiempo lleva para conseguir una impresión óptima, aunque  eso sólo ha de hacerse una vez ( al menos en teoría).

 

Programa EasyPrint

EasyPrint 3D es el software de impresión 3D GRATUITO oficial para usar con la Prusa I3 W : es fácil de usar , esta desarrollado por GEEETECH y es capaz de convertir un modelo 3D digital en instrucciones de impresión para su impresora 3D.

Corta el modelo en secciones horizontales (capas) proceso conocido como slicing, genera información de trayectoria y calcula la cantidad exacta de filamentos a extruir.

Se  puede descargar desde el sitio oficial  http://www.geeetech.com/forum/viewforum.php?f=43

Esta es la configuración recomendada por el fabricante pera el  material en el caso de usar PLA ( el cual es que mejores resultados da con esta impresora):

 

material

Estos son los parámetros específicos para la impresora la Prusa I3 W l :

printer.PNG

Y  finalmente los parámetros usados para la impresión 3d

parameters.PNG

Ahora veamos las lineas de Gode al iniciar a impresión

G28 ;Home

G1 Z15.0 F6000 ;Move the platform down 15mm

;Prime the extruder

G92 E0

G1 F200 E3

G92 E0

Y  estos  son las linea de Gcode al finalizar

M104 S0

M140 S0

;Retract the filament

G92 E1

G1 E-1 F300

G28 X0 Y0

M84

Ultimaker Cura

Al ser  la Prusa I3 W  una impresora con código libre es posible usar otros programas diferentes tanto para el slicing como a la  propia impresión  3D ,  diferentes del recomendado  por el fabricante (EasyPrint ) como por ejemplo el  famoso sw de cura, el cual es un programa más elaborado y con idioma español

Puede parece descabellado usar otro sw, pero  es fácil percibir con la practica que el sw oficial EasyPrint es lamentablemente  un producto en proceso de depuracion lo cual normalmente se traduce en muchas piezas mal impresas o  que tenemos desechar  por interrupciones o cueles de este .

He probado con ambos programas, junto muchos mas usuarios  ,y  desde mi experiencia    el sw de cura da mejor resultado en la impresión con la Prusa I3 W,lo cual no significa que no tenga que usarse el sw ofical

Este  programa es ligeramente mas complejo que usar  el EasyPrint 3D , ahora bien una vez configurado su manejo es también muy sencillo  (y todo el interfaz esta traducido  en Español a diferencia del EasyPrint3d que esta en chino y en ingles unicaemnte)

El cura necesita configurarse para este modelo de impresora ya que aparece la Prusa I3  pero no la Prusa I3 W,, por lo que debernos  cambiar algunos ajustes  que vamos a describir

En primer lugar , si disponemos de un equipo con W10 64 bits  con al menos dos núcleos , descargaremos  el sw de Cura desde su sitio oficial https://ultimaker.com/en/products/ultimaker-cura-software

Para poder realizar la descarga nos piden unas pocas preguntas en ingles  pero al responderlas , en  pocos segundos estaremos descargando el sw

Una vez instalado el sw , ejecutaremos este  y nos  iremos a la sección de los ajustes

Estos son los ajustes de la impresoara Prusa I3 W,:

 

ajustes2.PNG

Y estos son los del extrusor:

 

ajusters3.PNG

Por ultimo este el gcode que nos proponen;

G21 ;metric values

G90 ;absolute positioning

M82 ;set extruder to absolute mode

M107 ;start with the fan off

G28 X0 Y0 ;move X/Y to min endstops

G28 Z0 ;move Z to min endstops

G1 Z15.0 F9000 ;move the platform down 15mm

G92 E0 ;zero the extruded length

G1 F200 E3 ;extrude 3mm of feed stock

G92 E0 ;zero the extruded length again

G1 F9000

;Put printing message on LCD screen

M117 Printing…

 

Y  estos  son las linea de Gcode al finalizar:

M104 S0 ;extruder heater off

M140 S0 ;heated bed heater off (if you have it)

G91 ;relative positioning

G1 E-1 F300 ;retract the filament a bit before lifting the nozzle, to release some of the pressure

G1 Z+0.5 E-5 X-20 Y-20 F9000 ;move Z up a bit and retract filament even more

G28 X0 Y0 ;move X/Y to min endstops, so the head is out of the way

M84 ;steppers off

G90 ;absolute positioning

 

En este caso en ambas partes no proponen codigo similar (en negrita están las similitudes con el sw de easyprint3d) ,

Vemos que esta mucho mas desarrollado ,por  que es perfectamente funcional y se puede mantener así