Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Conexion #1

Open
tuxevil opened this issue Dec 13, 2016 · 1 comment
Open

Conexion #1

tuxevil opened this issue Dec 13, 2016 · 1 comment

Comments

@tuxevil
Copy link

tuxevil commented Dec 13, 2016

Hola Pablo, estoy hacce dias tratando de hacer funcionar una impresora termica marca Bematech modelo LR2000 pero no lo he conseguido y de hecho ayer tire la toalla.

Hoy revisando proyectos para raspi en hackaday.io encontre tu proyecto y quise sacarme la pica de hacer funcionar la impresora.

Me ayudar diciendome como consigo la direccion serial de la impresora?
Entiendo que en el archivo ThermalPhoto.py cuando creas la clase Thermal le mandas la ruta del dispositivo pero yo no la tengo.

Tengo la impresora conectada por USB aunque la misma tambien tiene salida serial y tengo cable Serial a USB, pero he probado anteriormente de todas las formas y nada.

Gracias, y felicitaciones por tu trabajo

@pablogs9
Copy link
Owner

pablogs9 commented Dec 13, 2016

Hola, no me queda claro si quieres conectar la impresora a tu ordenador o a una Raspberry...
Por lo que veo en el datasheet (Link) tu modelo dispone de puerto RS232 y USB.

En primer lugar yo trataría de usar el puerto USB:

  • En caso de que vayas a usar una Raspberry (o cualquier Linux/Debian) o de que tu ordenador tenga macOS puedes comprobar si se reconoce el dispositivo viendo si aparece un nuevo identificador en la carpeta /dev/. Para eso en un terminal escribe ls /dev/, a continuación conecta la impresora encendida por el puerto USB y vuelve a ejecutar el comando ls /dev/. Si la reconoce debería aparecer una nueva entrada del tipo /dev/tty.[identificador] o algo parecido (no tiene porque ser así siempre). En este caso tambien te puede ser util el comando dmesg, tras conectar el dispositivo, de ser reconocido, en ese log te aparecerá la dirección serie.

  • En caso de utilizar Windows, te recomendaría enchufar la impresora por el puerto USB y comprobar en el administrador de dispositivos (Panel de control > Hardware > Administrador de dispositivos) si aparece algún nuevo puerto del tipo COM1 o similar. En Windows los puertos series se muestran como COMx en lugar de como /dev/[identificador]. En caso de no aparecer, te recomendaría leer el datasheet y la web del producto (link) e instalar los drivers que ofrecen para Windows. En caso de identificar este puerto COM del que te hablo, tendrías que poner en el fichero ThermalPhoto.py la dirección de tu impresora como COM1, COM2, o como te aparezca...

Comentame como progresas y si tienes más dudas te ayudo en lo que pueda ;)

PD: Asegurate que una vez encuentres el puerto la configuración es correcta: el baudrate, la paridad, el stopbit y demás... Eso se configura en el fichero ESCPOS.py y en el datasheet de tu impresora dice que puedes comprobar esta configuración en una página de test:

(Note: you can check the baud rate from the printer’s testing page, shutdown the printer and hold > feed button while you turn the printer On)

PD2: Te recomendaría empezar las pruebas tratando de imprimir texto en la impresora, las imágenes son un tema mas complejo. En el fichero ESCPOS.py puedes encontrar todas las funciones que implementé. Si te funciona el texto, avanzas a las imágenes. Para enviarle texto a la impresora puedes modificar el fichero ThermalPhoto.py cambiando:

t.printCompleteBitmapCustom(im)

por:

t.println("Hello World")

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants