Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
January 18, 2015 12:20AM




Ver videos al final del post.

Buenos seguimos experimentado con posibilidades para agregarle a la impresora, en esta vez le agregue un control infrarrojo para controlar los movimientos de la mesa y el hot end. (podes configurar lo que se te ocurra mientras tengas muchos botones )

Lo que se necesita es tener:
  • Raspberry pi
  • Octoprint instalado y corriendo
  • Interfaz para manejar la impresora utilizando el tochscreen [forums.reprap.org]

nota: todo esto seguro se puede implementarlo directo en el arduino / ramps pero lo hice de esta manera es mas simple


Los pasos para dejarlo andando son los siguientes:

Instalamos LIRC

sudo apt-get install lirc

Nos fijamos que pata libre tenemos en el gpio en este caso la gpio18 es la que voy a estar usando como ejemplo:

Raspberry pi GPIO




Editamos el archivo /etc/modules

Comando: sudo nano /etc/modules

Agregamos las siguientes lineas

lirc_dev

lirc_rpi gpio_in_pin=18

Ahora editamos el archivo de la siguiente manera /etc/lirc/hardware.conf

########################################################
# /etc/lirc/hardware.conf
#
# Arguments which will be used when launching lircd
LIRCD_ARGS="--uinput"

# Don't start lircmd even if there seems to be a good config file
# START_LIRCMD=false

# Don't start irexec, even if a good config file seems to exist.
# START_IREXEC=false

# Try to load appropriate kernel modules
LOAD_MODULES=true

# Run "lircd --driver=help" for a list of supported drivers.
DRIVER="default"
# usually /dev/lirc0 is the correct setting for systems using udev
DEVICE="/dev/lirc0"
MODULES="lirc_rpi"

# Default configuration files for your hardware if any
LIRCD_CONF=""
LIRCMD_CONF=""
########################################################

Ahora reiniciemos el raspi
sudo reboot

Es hora re probar si llega la señal.

sudo /etc/init.d/lirc stop
mode2 -d /dev/lirc0

Cuando empieces a apretar botones del control vas a ver que te tira números en la pantalla de la siguiente manera. Esta mas que claro que el código que aparece depende del control y botón que toques. asi que seguro que no te va a parecer algo como esto.

space 16300
pulse 95
space 28794
pulse 80
space 19395
pulse 83
space 402351
pulse 135
space 7085
pulse 85
space 2903

Ahora necesitamos configurar el control remoto para que los botones que se aprieten se acepten como comandos validos.

Para ello paramos el software lirc
sudo /etc/init.d/lirc stop

Generamos un nuevo archivo de configuración.
irrecord -d /dev/lirc0 ~/lircd.conf

Para obtener los nombres de los botones mapeados ejecutamos el siguiente comando irrecord --list-namespace

Asi quedo por ejemplo mi archivo de configuracion: lircd.conf

# Please make this file available to others
# by sending it to 
#
# this config file was automatically generated
# using lirc-0.9.0-pre1(default) on Sun Jan 18 01:25:02 2015
#
# contributed by
#
# brand:                       /home/pi/lircd.conf.conf
# model no. of remote control:
# devices being controlled by this remote:
#

begin remote

  name  /home/pi/lircd.conf.conf
  bits           16
  flags SPACE_ENC|CONST_LENGTH
  eps            30
  aeps          100

  header       9006  4447
  one           594  1648
  zero          594   526
  ptrail        587
  repeat       9006  2210
  pre_data_bits   16
  pre_data       0xFF
  gap          107633
  toggle_bit_mask 0x0

      begin codes
          KEY_ENTER                0x02FD
          KEY_DOWN                 0x40BF
          KEY_UP                   0xA05F
          KEY_LEFT                 0x50AF
          KEY_RIGHT                0x7887
      end codes

end remote


Después de mapear los botones del control hacemos back up del archivo viejo de configuración
sudo mv /etc/lirc/lircd.conf /etc/lirc/lircd_original.conf

ahora copiamos el archivo de configuración del control a /etc/lirc/
sudo cp ~/lircd.conf /etc/lirc/lircd.conf

Después de eso re iniciamos el lirc
sudo /etc/init.d/lirc start

Bueno ahora lo ultimo que nos queda es configurar que el control ejecute comandos en el shell de unix para ello generamos un archivo en la dirección /etc/lircd
sudo nano /etc/lirc/lircrc

y por ejemplo lo configuras de la siguiente manera

begin
    prog = irexec
    button = KEY_ENTER
    config = /var/www/post_api_printhead_xy-home.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_DOWN
    config = /var/www/post_api_printhead_down_10.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_LEFT
    config = /var/www/post_api_printhead_left_10.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_UP
    config = /var/www/post_api_printhead_up_10.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_RIGHT
    config = /var/www/post_api_printhead_right_10.sh
    repeat = 1
end


Si quieren saber como configurar mas cosas hay miles de cosas y opciones solo hay que leer el manual.

Si van a la carpera /var/www estan listados todos los comandos que se pueden ejecutar los mismos estan termiandos con *.sh



ACA les dejo un par de videos como funciona la Interfaz.

[www.youtube.com]

[www.youtube.com]

[youtu.be]

Edited 17 time(s). Last edit at 01/18/2015 01:16PM by tatubias.
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
January 18, 2015 09:22AM
muy buena tatoooooo exelenteeeeeee hay que implementarselo a la maximus, thumbs up
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
January 18, 2015 10:39AM
Hay que seguir experimentado y ver que otras cosas se puedan implementar.
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
January 18, 2015 02:09PM
Segui investigando y mapeando comandos al control asi quedaron los archivos de configuración.

Basicamente lo que hice fue mapear casi todos los botones a acciones como:

  • Prender y apagar el cooler (en este caso se usa el mismo boton para prender y apagar el ventilador.
  • Subir Bajar Eje Z
  • Home eje Z
  • Apagar los motores
  • Subir / Bajar en Y (la cama) 10mm
  • Izquierda Derecha el Cabezal 10mm
  • Setear Temperatura de extrusor a 0° 190° 220°
  • Setear Temperatura de cama 0° 50° 110*
  • Extruir 5mm de material
  • Retraccion 5mm

y todavia me sobran 3 botones en este mini control el control que estoy usando es similar al siguiente. podes usar hasta el control de direct tv si estas muy aburrido tongue sticking out smiley




Archivo: /etc/lirc/lircrc

begin
    remote /etc/lircd/lircd.conf
    prog = irexec
    button = KEY_ENTER
    config = /var/www/post_api_printhead_xy-home.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_DOWN
    config = /var/www/post_api_printhead_down_10.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_LEFT
    config = /var/www/post_api_printhead_left_10.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_UP
    config = /var/www/post_api_printhead_up_10.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_RIGHT
    config = /var/www/post_api_printhead_right_10.sh
    repeat = 1
end

begin
    remote /etc/lircd/lircd.conf
    prog = irexec
    button = KEY_POWER 
    config = /var/www/post_api_printer_fans_on_M106.sh
    config = /var/www/post_api_printer_fans_off_M106-S0.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_1
    config = /var/www/post_api_printer_extruder_temp_0.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_4
    config = /var/www/post_api_printer_extruder_temp_190.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_7
    config = /var/www/post_api_printer_extruder_temp_220.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_RECORD
    config = /var/www/post_api_printer_motors_off_M18.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_MUTE
    config = /var/www/post_api_printhead_z-home.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_GOTO
    config = /var/www/post_api_printhead_z-up_10.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_RECORD
    config = /var/www/post_api_printhead_z-down_10.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_2
    config = /var/www/post_api_printer_bed_temp_0.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_5
    config = /var/www/post_api_printer_bed_temp_50.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_8
    config = /var/www/post_api_printer_bed_temp_100.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_9
    config = /var/www/post_api_printhead_extrude_5.sh
    repeat = 1
end

begin
    prog = irexec
    button = KEY_3
    config = /var/www/post_api_printhead_retract_5.sh
    repeat = 1
end


/etc/lirc/hardware.conf

# Please make this file available to others
# by sending it to 
#
# this config file was automatically generated
# using lirc-0.9.0-pre1(default) on Sun Jan 18 14:59:06 2015
#
# contributed by
#
# brand:                       /home/pi/lircd.conf.conf
# model no. of remote control:
# devices being controlled by this remote:
#

begin remote

  name  /home/pi/lircd.conf.conf
  bits           16
  flags SPACE_ENC|CONST_LENGTH
  eps            30
  aeps          100

  header       9006  4447
  one           594  1648
  zero          594   526
  ptrail        587
  repeat       9006  2210
  pre_data_bits   16
  pre_data       0xFF
  gap          107633
  toggle_bit_mask 0x0

      begin codes
          KEY_POWER                0xB24D
          KEY_GOTO                 0x2AD5
          KEY_MUTE                 0x6897
          KEY_RECORD               0x32CD
          KEY_UP                   0xA05F
          KEY_TIME                 0x30CF
          KEY_LEFT                 0x50AF
          KEY_ENTER                0x02FD
          KEY_RIGHT                0x7887
          KEY_0                    0x48B7
          KEY_DOWN                 0x40BF
          KEY_BACK                 0x38C7
          KEY_1                    0x906F
          KEY_2                    0xB847
          KEY_3                    0xF807
          KEY_4                    0xB04F
          KEY_5                    0x9867
          KEY_6                    0xD827
          KEY_7                    0x8877
          KEY_8                    0xA857
          KEY_9                    0xE817
      end codes

end remote


Nota hay comandos como post_api_printer_bed_temp_50.sh que en realidad no existen sino agarre otro lo modifique para que me caliente la cama 50° digamos puede servir para pla tongue sticking out smiley

Aca les dejo otro video [www.youtube.com]

Edited 2 time(s). Last edit at 01/18/2015 02:53PM by tatubias.
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
January 18, 2015 02:51PM
Muy buenos tus aportes Tatubias.

La estás dejando full full a "La Pesada"
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
January 18, 2015 02:57PM
Quote
SinapTec
Muy buenos tus aportes Tatubias.

La estás dejando full full a "La Pesada"

Que se yo me divierte mas meterle mano que imprimir giladas.

si se te ocurre mas cosas avisame a ver si investigamos la posibilidad de implementarlo.

También se puede hacer utilizando un control de xbox360. pero la verdad no tiene sentido de ponerme a hacer eso. es básicamente los mismo que hice arriba y aparte hay que instalarle los drivers del control de xbox360.

Fiajte ahi le cargue un video con algunas delas funciones de arriba.

Edited 1 time(s). Last edit at 01/18/2015 02:59PM by tatubias.
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
January 18, 2015 03:57PM
Hay que meterle mp3, y un enlace a redtube para que el esperar las impresiones no se torne tan pesado. jajajaja
Muy groso.
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
January 18, 2015 04:34PM
Quote
mocafer
Hay que meterle mp3, y un enlace a redtube para que el esperar las impresiones no se torne tan pesado. jajajaja
Muy groso.

Lo del MP3 ya lo hicieron hace rato.

https://www.kickstarter.com/projects/104819283/ra-3d-printer-controller-by-elefu
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
January 18, 2015 04:37PM
Quote
mocafer
Hay que meterle mp3, y un enlace a redtube para que el esperar las impresiones no se torne tan pesado. jajajaja
Muy groso.

La raspi tiene salida hdmi y puede descomprimir video en 1080p asi que no tenes drama que corra xbmc con cualquier tipo de peliculas e imprimir sin drama
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
January 18, 2015 05:33PM
Sigo insistiendo si alguno tiene alguna idea veamos de desarrollar algo que esta bastante apagado el foro.
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
January 18, 2015 09:45PM
Un todo en uno, impresora, ruter y cortador laser, con cabezal intercambiable.
Yo compro.
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
January 18, 2015 10:10PM
No es recomendable Mocafer. Son todas maquinas diferentes. Es conveniente hacerlas por separado con las mejores especificaciones y características para cada una. Te lo digo por experiencia. Lo que sirve para una, no te alcanza para otra y asi sucesivamente. La idea es buena. Pero a la hora de plasmarla, tenes que promediar todo. Y con los promedios, se pierde. Tira todo para abajo. Humilde opinión personal.
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
January 19, 2015 12:46AM
Tenes razon, cosa e negro, jajajja.
Saben si con un laser podria cortar tela con pegamento, e una especie de felpa que se usa como sello, o se va a quemar?
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
January 19, 2015 11:51AM
Depende de la intensidad del laser y si el pegamento es inflamable. Acordate que el laser evapora el material que corta. Lo quema. Deberias probar antes de largarte a hacer una maquina. Anda a uno de los lugares que normalmente cortan mdf y pediles que hagan una prueba.
Sino siempre tenes la cortadora manual eléctrica que usan en textil, y de ultima una tijera, jajaja.
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
January 19, 2015 02:55PM
Tambien pense en un ploter de corte, pero son cosas chiquitas.
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
January 21, 2015 05:25PM
Quote
mocafer
Hay que meterle mp3, y un enlace a redtube para que el esperar las impresiones no se torne tan pesado. jajajaja
Muy groso.

Lo pediste y lo tenes!!!!!! Podes poner mp3 o radios de internet, la verdad es mucho maspractico ponerle radios de internet te dejo como se implementa el tema.





Aca esta el video oficial del proyecto de la aplicacion.

[www.youtube.com]

Hay que instalar un par de aplicaciones

sudo apt-get install mpc mpd

Despues agregamos a la app alguna radio que nos guste. por ejemplo:

sudo mpc add [uwstream3.somafm.com]

mas comando y cosas para divertirse con mpc: [linux.die.net]

descargamos la app:
cd~
mkdir tron-radio
cd tron-radio
wget [github.com]
unzip master.zip
cd RPi-Tron-Radio-master
mv * /home/pi/ tron-radio
sudo chmod 755 /home/pi/tron-radio/launcher.sh

Si queres que arranque en el booteo corres el siguiente comando el tema esta que silo dejas asi nomas o te carga este o sino la itnerface de la printer. entonces lo que hay que hacer es programar los botones de la pantalla para que intercambie entre una u otra aplicacion

sudo nano /etc/rc.local

Agregas la siguiente linea dentro del archivo rc.local

(home/pi/tron-radio/launcher.sh)&

podes hacer lista de favoritos y demas aca les dejo la doc oficial asi se divierten.

[github.com]

Si no queres que te arranque la impresora con musica funcional, lo desabilitas de la siguiente manera para que el demoño no corra cuando bootea.

sudo service mpd stop
sudo update-rc.d mpd disable

Edited 1 time(s). Last edit at 01/21/2015 06:26PM by tatubias.
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
January 21, 2015 05:41PM
Estoy probando la interface anda barabara y se escucha espectacular la radio por default. lo que si te liquida el cpu casi 50% en tre el proceso de python y la app. seguramente se puede mejorar para que ocupe menos recursos, lo que si vi que si matas el proceso solo queda ocupando 9% del cpu la aplicacion de mpc asique buenisimo cuando haces el swith entre las aplicaciones estas tranquilo con el cpu . winking smiley

Si no te gustan los skins, mientras que respetes la distribución delos datos no es complicado hacer cambios en la interfaz, sino después te tenes que meter en el codigo py y lo modificas que tampoco debe ser complejo.

Algunos skins.


Obiamente, si te pones a codear apenas, podes controlar todo con el Infra rojo.



aca esta la distribucion de la pantalla [github.com]

La verdad se ve mil veces mejor en la pantallita mas que en estas fotos. Vean el video

me puse a revisar el codigo fuente es una gilada y la verdad vale la pena aprender se pueden hacer cosas intersantes muy facil.

Edited 4 time(s). Last edit at 01/21/2015 10:21PM by tatubias.
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
April 19, 2015 03:07AM
Y no se podria ponerle un receptor Wi-fi y convertirlo en un acces point o hacer que se conecte a tu red y tratarlo como una impresora normal? (Duda de principiante)
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
April 19, 2015 10:31AM
Quote
Muscles
Y no se podria ponerle un receptor Wi-fi y convertirlo en un acces point o hacer que se conecte a tu red y tratarlo como una impresora normal? (Duda de principiante)

Si ya tiene implementado eso, busca otro post que habla sobre octoprint

Ahí explico como se instala y como controlar la impresora vía web, con web cam y todo.
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
April 19, 2015 10:35AM
[forums.reprap.org]

Ese era el post creo
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
April 19, 2015 04:31PM
me esta dando ganas de usar este servidor.,..
lo ves estable?
le usa muchos recursos a rasp?
se puede conectar mas de una impresora?

mi idea es usar un router con openwrt en un router tplink que trae wifi, red, y usb.
mi gran temna es saber si vale la pena invertir el tiempo..
y eso solo me lo diria una persona que ya usa octoprint.
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
April 19, 2015 04:55PM
Quote
zumergido
me esta dando ganas de usar este servidor.,..
lo ves estable?
le usa muchos recursos a rasp?
se puede conectar mas de una impresora?

mi idea es usar un router con openwrt en un router tplink que trae wifi, red, y usb.
mi gran temna es saber si vale la pena invertir el tiempo..
y eso solo me lo diria una persona que ya usa octoprint.


Octoprint anda bien no consume muchos recursos. Al menos que le pongas una web cam que no comprimabel viejo o screen shots antes de enviarlo a la raspi.

Descargalp te lleva 10 minutos dejarlo andando.

Hay otro mas pero no me acuerdo como se llama nunca pude hacerlo andas.

Para usarlo con varias impresoras tenés que hacer que corran varios demonios con el Soft.
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
April 19, 2015 06:12PM
Ok. Vamos a probar... a ver si lo instalo en un mr3020 que sale 300 pesos y una camara .. se supone que una impresora se aguanta. Lo unicoq ue como tiene 32mb hay que usar un hub usb y un pendrive.
Re: Interfaz Control Remoto Infrarojo Funcionando en LA PESADA!!!!
April 19, 2015 06:35PM
Acordarte que la raspberry es de 700mhz y ka nueva es cuad corte de 900 no de si te lo va a tirar el router pero testia y arma un tutoriales,
Buenisimo el proyecto
Sorry, only registered users may post in this forum.

Click here to login