viernes, 19 de octubre de 2018

Problemas que te pueden pasar después de instalar Debian 9


Página principal

Problemas que te pueden pasar después de instalar Debian 9




Debian 9.3 no funciona con adaptadores externos de USB Wifi.
Lo primero debemos estar seguro que hemos instalado los firmware. Por defecto en Debian no instala los firmware (ubuntu instala todos), debemos instalarlos previamente los paquetes mediante Synaptic.
Solución:
Añadir en /etc/NetworkManager/NetworkManager.conf 
 [device]
wifi.scan-rand-mac-address=no

Hago reiniciar las redes con:

/etc/init.d/network-manager restart
/etc/init.d/networking restart

Ahora funciona, ya puedo probar todos mis adaptadores USB-WIFI


En el caso que tengáis varios linux en diferentes particiones, os pasará un error en la próxima vez que entréis en la otra distribución.
Esto es debido que el linux cuando se instala, formatea por defecto la partición de intercambio swap. Pero resulta que le cambia la identificación de nombre, que es como reconoce linux las particiones. Al reiniciar el primer linux, no encuentra el nombre partición que dio el, y se pasa 1:30 minutos pensando.
Este es el sintoma:
ERROR de Running /scripts/local-premount 
Running /scripts/local-premount ... Begin: Waiting for suspend/resume device ... Begin: Running /scripts/local-block ... done.
Running /scripts/local-block ... done.
Running /scripts/local-block ... done.
Running /scripts/local-block ... done.
Running /scripts/local-block ... done.
Running /scripts/local-block ... done.
Running /scripts/local-block ... done.
Running /scripts/local-block ... done.

Gave up waiting for suspend/resume device.

La forma de arreglarlo siendo root es mediante la orden:
update-initramfs -u
 
o
update-initramfs -u -k all

Probar una u otra y ahora lo normal es que se arregle.
Yo también cambio el fichero /etc/fstab , quito la etiqueta y lo sustituyo por la referencia directa,lo prefiero.

# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/sdb5 during installation
/dev/sdb5 / ext4 errors=remount-ro 0 1
# swap was on /dev/sda9 during installation
/dev/sda9 none swap sw 0 0
/dev/sr0 /media/cdrom0 udf,iso9660 user,noauto 0 0


La tarjeta gráfica que tengo:
VGA compatible controller: NVIDIA Corporation C61 [GeForce 7025 / nForce 630a] (rev a2)
En principio Debian 9.x instala por defecto el controlador libre nouveau.
Pero resulta que no es demasiado estable con aplicaciones 3D, y lo normal es que se cuelgue.
Debemos instalar el controlador propietario de Nvidia.
echo -e "blacklist nouveau" > /etc/modprobe.d/fbdev-blacklist.conf
echo -e "options nouveau modeset=0" > /etc/modprobe.d/modesetting.conf

echo "deb http://deb.debian.org/debian stretch main contrib non-free " >> /etc/apt/sources.list
echo "deb-src http://deb.debian.org/debian stretch main" >> /etc/apt/sources.list
apt-get update
apt-get install nvidia-detect
apt-get install linux-headers-$(uname -r) nvidia-legacy-304xx-driver
Reiniciamos el ordenador y se soluciona los cuelgues.


El entorno de escritorio PLASMA (KDE) , no funciona o funciona raro.
Resulta que el entorno gráfico utiliza muchos efectos en 3D, y mi tarjeta no es muy compatible con el OpenGL, el resultado es el mal funcionamiento de PLASMA.
La solución es cambiar el Método de renderizado a Xrender.
Desde otro entorno de escritorio, por ejemplo MATE, entrar en el:
  • Centro de control.
  • Preferencias del sistema KDE.
  • Tema espacio de trabajo.
  • Compositor.



Ahora podremos entrar en PLASMA.
Debemos ser honesto, por lo menos en KDE se puede cambiar la forma de renderizado para hacerlo por software. En Gnome no he podido deshabilitar la aceleración gráfica por hardware, por lo que no he podido hacerlo funcionar (me parece increíble hasta donde llego Gnome). :(

Saludos
Juan

martes, 16 de octubre de 2018

Caja de tienda con lector de código de barras

Página principal


Gambas
Caja de tienda
con
lector de código de barras


Teniendo un lector de código de barras, se me pasó por la cabeza hacer una registro de caja de tienda.
Para una fácil realización del programa, lo he realizado en Gambas (V.Basic para Linux).
El programa debía almacenar productos con los códigos de barras, nombre del producto y precio.
Cuando se lee el código de barras, busca en su registro el correspondiente código, si existe añade el precio al ticket. Si no existe el código, abre un dialogo para dar de alta el producto.
También tiene un registro de los movimientos, para una posible revisión.
El registro de los diferentes productos se realiza en un fichero de tipo *.csv , el cual puede abrirse con un editor de textos  o con una hoja de cálculo. Tener cuidado en no introducir ENTER sin motivo, da error al cargar el programa.

Si tenéis que imprimir etiquetas de código de barras os recomiendo ver el artículo:
http://seta43.blogspot.com/2018/10/crear-etiquetas-de-codigo-de-barras-con.html

El programa es simple, y cumple su función, no pretendo nada mas.





VIDEO DE FUNCIONAMIENTO





PROGRAMA



Saludos
Juan Galaz

Bibliografía:

http://seta43.blogspot.com/2018/10/crear-etiquetas-de-codigo-de-barras-con.html

miércoles, 10 de octubre de 2018

Arduino Sensor de temperatura Modelo KNEISSEL 433MHz

Página principal

Arduino
Sensor de temperatura
Modelo KNEISSEL
433MHz
xsetaseta@gmail.com

Continuando con el proyecto de receptores de sensores comerciales externos , ahora nos toca el modelo KNEISSEL.


El programa se basa en el anterior, lo único que cada fabricante codifica los datos de forma diferente.
En este caso la onda de  datos mandados tienen este formato:

Como vemos los bit mandados son 24.
En este modelo se mandan los grados divididos, por una parte los decimales y por otro los grados.

El arduino transforma estas ondas en datos decimales que son mandados al PC por medio del interface  serie mediante el USB.
Datos transmitidos :   1,22,2,196,24
Datos:
  • 1-canal.
  • 2-grados.
  • 3-decimal.
  • 4-El primer byte mandado.
  • 5-bits recibidos, deberán siempre ser 24.


Realizado en Gambas (Visual Basic para Linux)

Dispongo de dos sensores y no he podido comprobar si realmente están bien programado la detección de canales.
Lo curioso es que no existe un conmutador para cambiar el número de canal.
Para este modelo solo he realizado el programa en Gambas.

PROGRAMA


Hasta pronto.
JUAN GALAZ

Bibliografía:

receptores de sensores comerciales externos
setacom.html
hantek.html
https://fetzerch.github.io/2014/11/15/reveng433/
https://es.aliexpress.com/item/1pair-2pcs-433mhz-rf-transmitter-and-receiver-kit-For-Wireless-Power-switch-socket-remote-control-LED/32311933574.html?spm=a2g0s.9042311.0.0.lWlrua

domingo, 7 de octubre de 2018

Arduino Sensor de temperatura Modelo prinston 433MHz

Página principal

Arduino
Sensor de temperatura
Modelo prinston
433MHz
xsetaseta@gmail.com

Continuando con el proyecto de receptores de sensores comerciales externos , ahora nos toca el modelo prinston.


El programa se basa en el anterior, lo único que cada fabricante codifica los datos de forma diferente.
En este caso la onda de  datos mandados tienen este formato:

Como vemos los bit mandados son 36.
Los primeros 14 bit contienen codificación propia y estado de batería.
los siguientes 2 bit corresponden al canal,
La temperatura son los siguientes 12 bits,
Y el porcentaje de humedad utiliza 8 bits.

El arduino transforma estas ondas en datos decimales que son mandados al PC por medio del interface  serie mediante el USB.
Datos transmitidos :    Canal,02,Grados,00232,Humedad,024,Control,9003


Realizado en Gambas (Visual Basic para Linux)


Con las librerías wxwidgets en Windows y Linux.

PROGRAMA


Hasta pronto.
JUAN GALAZ

Bibliografía:

receptores de sensores comerciales externos
setacom.html
hantek.html
https://fetzerch.github.io/2014/11/15/reveng433/
https://es.aliexpress.com/item/1pair-2pcs-433mhz-rf-transmitter-and-receiver-kit-For-Wireless-Power-switch-socket-remote-control-LED/32311933574.html?spm=a2g0s.9042311.0.0.lWlrua

martes, 2 de octubre de 2018

Crear etiquetas de código de barras con gLabels

Crear etiquetas con gLabels

Por necesidad estuve el otro día buscando programas para hacer etiquetas de código de barras. Las etiquetas debían de ser reconocidas por el lector  MX009-2MA7C .
El programa debía funcionar en Linux, y el mejor programa que encontré fue gLabels.
Este programa tiene la posibilidad que utilizando una hoja de textos crear etiquetas con sus datos.
He creado este vídeo a modo de tutorial, espero que les guste.



Saludos.
Juan Galaz