Después de actualizar a kubuntu 10.04 Beta 2 y reinstalar los drivers de la tarjeta nvidia como usuario normal perdí la aceleración 3D.
cuando le daba
glxinfo | grep render
me salia una línea que rezaba así
NVIDIA: could not open the device file /dev/nvidiactl (Permission denied).
solución:
Agregamos a nuestro usuario al grupo de video:
¿Porque?
si hacemos un ls -l al dispositivo veremos
ls -l /dev/nvidiactl
crw-rw---- 1 root video 195, 255 2010-04-20 08:02 /dev/nvidiactl
El dispositivo pertenece a root y al grupo de video
Si vemos el contenido de /etc/group veremos que nuestor usuario no pertenece a ese grupo
cat /etc/group | grep video
video:x:44:
Editamos el archivo para agregarnos y que quede algo como
cat /etc/group | grep video
video:x:44:usuario
Cerramos la sesión actual, nos logeamos de nuevo y ya tendremos la aceleración perdida:
glxinfo | grep render
direct rendering: Yes
OpenGL renderer string: GeForce Go 6150/PCI/SSE2
GL_NVX_conditional_render, GL_SGIS_generate_mipmap, GL_SGIS_texture_lod,
glxgears
Running synchronized to the vertical refresh. The framerate should be
approximately the same as the monitor refresh rate.
7866 frames in 5.0 seconds
9066 frames in 5.0 seconds
9059 frames in 5.0 seconds
martes, 20 de abril de 2010
martes, 23 de febrero de 2010
webcam como camara IP en Linux (debian, ubutu)
Primero tenemos que tener instalado los siguientes paquetes, y tener configurado un servidor web (puede ser apache o cualquier otro)
sudo apt-get install webcam lib4l-0
No se crea ningún archivo de configuración por lo cual no creamos en nuestro home, o si vamos a usar la ruta principal del servidor web (/var/www) creamos el archivo webcam.conf dentro de /etc
vim .webcamrc (o con el editor de texto que uses)
vim /etc/webcam.conf (como root o anteponiendo sudo, en caso de pertenecer a los sudoers)
El archivo va contener algo como lo que se muestra enseguida
[ftp]
host = localhost
user = nobody
pass = xxxxxx
dir = /home/usuario/public_html
file = webcam.jpg
tmp = imageup.jpg
local = 1
[grab]
device = /dev/video0
width = 320
height = 240
text = "Webcam %Y-%m-%d %H:%M:%S"
delay = 0
input =sonixj
quality = 75
trigger = 180
fg_red = 255
fg_green = 255
fg_blue = 255
rotate = 2
Como mi webcam pone de cabeza las capturas, con rotate = 2 lo arreglo (1=90 grados 2= 180, etc.)
¿Como saber cual es el nombre de la webcam(input = nombrewebcam)? con v4l-info (dese la terminal)
$ v4l-info
Las partes que nos interesan es la que nos dice el nombre de la camara (sonixj) y la altura y el ancho máximo
inputs
VIDIOC_ENUMINPUT(0)
index : 0
name : "sonixj" <---Este es el valor de input =sonixj type : CAMERA audioset : 0 tuner : 0 std : 0x0 [] status : 0x0 []
y
### video4linux device info [/dev/video0] ###
general info
VIDIOCGCAP
name : "USB camera"
type : 0x1 [CAPTURE]
channels : 1
audios : 0
maxwidth : 640
maxheight : 480
minwidth : 48
minheight : 32
Ahora si lo probamos con
@anaconda-server:~$ webcam
reading config file: /home/usuario/.webcamrc
can't get rgb24 data
Ops! ¿Qué hace ese rgb24 data? si nunca lo mandé llamar.
Solución:
Se me ocurrió que se podría asociar con el LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so webcam, por lo que es la misma solución que para algunas webcam es necesaria para poderlas usar con skype
https://wiki.ubuntu.com/SkypeWebCams
$ LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so webcam
reading config file: /home/usuario/.webcamrc
video4linux webcam v1.5 - (c) 1998-2002 Gerd Knorr
grabber config:
size 320x240 [none]
input sonixj, norm (null), jpeg quality 75
rotate=2, top=0, left=0, bottom=240, right=320
write config [ftp]:
local transfer /home/usuario/public_html/imageup.jpg => /home/usuario/public_html/webcam.jpg
compare: max=50,avg=4
compare: max=255,avg=78
compare: max=8,avg=0
compare: max=24,avg=0
compare: max=17,avg=0
compare: max=33,avg=0
compare: max=29,avg=0
compare: max=35,avg=0
compare: max=34,avg=0
compare: max=42,avg=0
compare: max=39,avg=0
compare: max=46,avg=0
compare: max=52,avg=0
Ya sólo queda ver el resultado en la web, mover la camara y recargar el navedador para ver los resultados. Para probar su funcionamiento utilicé la siguiente página web.
<html>
<head>
<title>WebCam</title>
<meta http-equiv="REFRESH" content="1"></meta>
</head>
<body>
<img src="webcam.jpg"></img>
</body>
</html>
Recargo la página cada segundo.
webcam a 320x240
webcam a 640x480
sudo apt-get install webcam lib4l-0
No se crea ningún archivo de configuración por lo cual no creamos en nuestro home, o si vamos a usar la ruta principal del servidor web (/var/www) creamos el archivo webcam.conf dentro de /etc
vim .webcamrc (o con el editor de texto que uses)
vim /etc/webcam.conf (como root o anteponiendo sudo, en caso de pertenecer a los sudoers)
El archivo va contener algo como lo que se muestra enseguida
[ftp]
host = localhost
user = nobody
pass = xxxxxx
dir = /home/usuario/public_html
file = webcam.jpg
tmp = imageup.jpg
local = 1
[grab]
device = /dev/video0
width = 320
height = 240
text = "Webcam %Y-%m-%d %H:%M:%S"
delay = 0
input =sonixj
quality = 75
trigger = 180
fg_red = 255
fg_green = 255
fg_blue = 255
rotate = 2
Como mi webcam pone de cabeza las capturas, con rotate = 2 lo arreglo (1=90 grados 2= 180, etc.)
¿Como saber cual es el nombre de la webcam(input = nombrewebcam)? con v4l-info (dese la terminal)
$ v4l-info
Las partes que nos interesan es la que nos dice el nombre de la camara (sonixj) y la altura y el ancho máximo
inputs
VIDIOC_ENUMINPUT(0)
index : 0
name : "sonixj" <---Este es el valor de input =sonixj type : CAMERA audioset : 0 tuner : 0 std : 0x0 [] status : 0x0 []
y
### video4linux device info [/dev/video0] ###
general info
VIDIOCGCAP
name : "USB camera"
type : 0x1 [CAPTURE]
channels : 1
audios : 0
maxwidth : 640
maxheight : 480
minwidth : 48
minheight : 32
Ahora si lo probamos con
@anaconda-server:~$ webcam
reading config file: /home/usuario/.webcamrc
can't get rgb24 data
Ops! ¿Qué hace ese rgb24 data? si nunca lo mandé llamar.
Solución:
Se me ocurrió que se podría asociar con el LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so webcam, por lo que es la misma solución que para algunas webcam es necesaria para poderlas usar con skype
https://wiki.ubuntu.com/SkypeWebCams
$ LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so webcam
reading config file: /home/usuario/.webcamrc
video4linux webcam v1.5 - (c) 1998-2002 Gerd Knorr
grabber config:
size 320x240 [none]
input sonixj, norm (null), jpeg quality 75
rotate=2, top=0, left=0, bottom=240, right=320
write config [ftp]:
local transfer /home/usuario/public_html/imageup.jpg => /home/usuario/public_html/webcam.jpg
compare: max=50,avg=4
compare: max=255,avg=78
compare: max=8,avg=0
compare: max=24,avg=0
compare: max=17,avg=0
compare: max=33,avg=0
compare: max=29,avg=0
compare: max=35,avg=0
compare: max=34,avg=0
compare: max=42,avg=0
compare: max=39,avg=0
compare: max=46,avg=0
compare: max=52,avg=0
Ya sólo queda ver el resultado en la web, mover la camara y recargar el navedador para ver los resultados. Para probar su funcionamiento utilicé la siguiente página web.
<html>
<head>
<title>WebCam</title>
<meta http-equiv="REFRESH" content="1"></meta>
</head>
<body>
<img src="webcam.jpg"></img>
</body>
</html>
Recargo la página cada segundo.
webcam a 320x240
webcam a 640x480
miércoles, 30 de diciembre de 2009
PCTel Winmodem Debian Testing
Linux anaconda-server 2.6.30-2-686 #1 SMP Fri Dec 4 00:53:20 UTC 2009 i686 GNU/Linux
1.- Creamos un directorio temporal
mkdir tmp
cd tmp
2.- Descargamos el driver de http://linmodems.technion.ac.il/pctel-linux/pctel-0.9.7-9-rht-10.tar.gz
wget http://linmodems.technion.ac.il/pctel-linux/pctel-0.9.7-9-rht-10.tar.gz
3.- Descomprimimos
tar -xvzf pctel-0.9.7-9-rht-10.tar.gz
cd pctel-0.9.7-9-rht-10
tratamos de instalar logueandonos como root (o en su defecto con sudo si es que lo tenemos habilitado para el usuario)
sudo ./setup
checking for running kernel version...2.6.30
checking for ptserial...ptserial-2.6.c
checking for gcc...4.3.4
checking for kernel gcc version...4.3.4
searching for kernel includes...found at /lib/modules/2.6.30-2-686/build/include
checking for autoconf.h.../lib/modules/2.6.30-2-686/build/include/linux/autoconf.h
checking for asm/mach-default...** error <
Después de andar busque y busque por internet no encontré nada, así que me dí a la tarea de ver el directorio de los source y headers del kernel. Para mi sorpresa el mach-default no existe, así que procedí a modificar el archivo configure dentro del src
vim src/configure
Ubicamos la línea siguente (línea 424)
echo -n "checking for asm/mach-default..."
kernel_inc2=${kernel_inc}
if [ ! -d ${kernel_inc}/asm/mach-default ]
then
# SuSE 9.3 doesn't have 'asm' under the build directory, so revert to
# /usr/src/linux
if [ -d /usr/src/linux/include/asm/mach-default ]
then
kernel_inc2=/usr/src/linux/include
else
echo "** error"
echo include/asm/mach-default directory could not be found
echo you probably need to configure your kernel, please read the FAQ
echo about no include/asm/mach-default directory.
exit 1
fi
fi
echo "yes"
extra_includes=-I${kernel_inc2}/asm/mach-default
y las modificamos para que quede
echo -n "checking for asm..."
kernel_inc2=${kernel_inc}
if [ ! -d ${kernel_inc}/asm ]
then
# SuSE 9.3 doesn't have 'asm' under the build directory, so revert to
# /usr/src/linux
if [ -d /usr/src/linux/include/asm/mach-default ]
then
kernel_inc2=/usr/src/linux/include
else
echo "** error"
echo include/asm directory could not be found
echo you probably need to configure your kernel, please read the FAQ
echo about no include/asm/mach-default directory.
exit 1
fi
fi
echo "yes"
extra_includes=-I${kernel_inc2}/asm
Quitamos todo lo referente a /mach-default (líneas 424,426 y 442)
~/tmp/pctel-0.9.7-9-rht-10$ sudo ./setup
checking for running kernel version...2.6.30
checking for ptserial...ptserial-2.6.c
checking for gcc...4.3.4
checking for kernel gcc version...4.3.4
searching for kernel includes...found at /lib/modules/2.6.30-2-686/build/include
checking for autoconf.h.../lib/modules/2.6.30-2-686/build/include/linux/autoconf.h
checking for asm/mach-default...yes
checking for kernel version in utsrelease.h...UTS_RELEASE is 2.6.30-2-686
checking type of tty_struct.count...int
checking for presence of udev...present (kernel version 2.6.13 or later)
detecting your modem...found. Your modem is a cm8738 type modem.
compilation done
installation done
modem activated
~/tmp/pctel-0.9.7-9-rht-10$ ls -l /dev/modem
lrwxrwxrwx 1 root root 11 dic 30 21:49 /dev/modem -> ttyS_PCTEL0
Por lo que se ve ya esta funcionando, para probarlo
sudo minicom -s
con las flechas nos movemos hasta configuración de la puerta serial y le damos enter
Presionamos A para modificar la ruta del dispositivo colocando /dev/modem
Le damos un segundo enter para regresar al menu anterior y con la flechas buscamos Salir y le damos enter, despues de esto vamos a ver que el minicom consulta al modem.
Welcome to minicom 2.4-rc1
OPCIONES: I18n
Compilado en Nov 23 2009, 17:11:14.
Port /dev/modem
Presione CTRL-A Z para obtener ayuda sobre teclas especiales
AT S7=45 S0=0 L1 V1 X4 &c1 E1 Q0
OK
Si aparece algo como lo de arriba, quiere decir que si esta trabajando el modem.
1.- Creamos un directorio temporal
mkdir tmp
cd tmp
2.- Descargamos el driver de http://linmodems.technion.ac.il/pctel-linux/pctel-0.9.7-9-rht-10.tar.gz
wget http://linmodems.technion.ac.il/pctel-linux/pctel-0.9.7-9-rht-10.tar.gz
3.- Descomprimimos
tar -xvzf pctel-0.9.7-9-rht-10.tar.gz
cd pctel-0.9.7-9-rht-10
tratamos de instalar logueandonos como root (o en su defecto con sudo si es que lo tenemos habilitado para el usuario)
sudo ./setup
checking for running kernel version...2.6.30
checking for ptserial...ptserial-2.6.c
checking for gcc...4.3.4
checking for kernel gcc version...4.3.4
searching for kernel includes...found at /lib/modules/2.6.30-2-686/build/include
checking for autoconf.h.../lib/modules/2.6.30-2-686/build/include/linux/autoconf.h
checking for asm/mach-default...** error <
Después de andar busque y busque por internet no encontré nada, así que me dí a la tarea de ver el directorio de los source y headers del kernel. Para mi sorpresa el mach-default no existe, así que procedí a modificar el archivo configure dentro del src
vim src/configure
Ubicamos la línea siguente (línea 424)
echo -n "checking for asm/mach-default..."
kernel_inc2=${kernel_inc}
if [ ! -d ${kernel_inc}/asm/mach-default ]
then
# SuSE 9.3 doesn't have 'asm' under the build directory, so revert to
# /usr/src/linux
if [ -d /usr/src/linux/include/asm/mach-default ]
then
kernel_inc2=/usr/src/linux/include
else
echo "** error"
echo include/asm/mach-default directory could not be found
echo you probably need to configure your kernel, please read the FAQ
echo about no include/asm/mach-default directory.
exit 1
fi
fi
echo "yes"
extra_includes=-I${kernel_inc2}/asm/mach-default
y las modificamos para que quede
echo -n "checking for asm..."
kernel_inc2=${kernel_inc}
if [ ! -d ${kernel_inc}/asm ]
then
# SuSE 9.3 doesn't have 'asm' under the build directory, so revert to
# /usr/src/linux
if [ -d /usr/src/linux/include/asm/mach-default ]
then
kernel_inc2=/usr/src/linux/include
else
echo "** error"
echo include/asm directory could not be found
echo you probably need to configure your kernel, please read the FAQ
echo about no include/asm/mach-default directory.
exit 1
fi
fi
echo "yes"
extra_includes=-I${kernel_inc2}/asm
Quitamos todo lo referente a /mach-default (líneas 424,426 y 442)
~/tmp/pctel-0.9.7-9-rht-10$ sudo ./setup
checking for running kernel version...2.6.30
checking for ptserial...ptserial-2.6.c
checking for gcc...4.3.4
checking for kernel gcc version...4.3.4
searching for kernel includes...found at /lib/modules/2.6.30-2-686/build/include
checking for autoconf.h.../lib/modules/2.6.30-2-686/build/include/linux/autoconf.h
checking for asm/mach-default...yes
checking for kernel version in utsrelease.h...UTS_RELEASE is 2.6.30-2-686
checking type of tty_struct.count...int
checking for presence of udev...present (kernel version 2.6.13 or later)
detecting your modem...found. Your modem is a cm8738 type modem.
compilation done
installation done
modem activated
~/tmp/pctel-0.9.7-9-rht-10$ ls -l /dev/modem
lrwxrwxrwx 1 root root 11 dic 30 21:49 /dev/modem -> ttyS_PCTEL0
Por lo que se ve ya esta funcionando, para probarlo
sudo minicom -s
con las flechas nos movemos hasta configuración de la puerta serial y le damos enter
Presionamos A para modificar la ruta del dispositivo colocando /dev/modem
Le damos un segundo enter para regresar al menu anterior y con la flechas buscamos Salir y le damos enter, despues de esto vamos a ver que el minicom consulta al modem.
Welcome to minicom 2.4-rc1
OPCIONES: I18n
Compilado en Nov 23 2009, 17:11:14.
Port /dev/modem
Presione CTRL-A Z para obtener ayuda sobre teclas especiales
AT S7=45 S0=0 L1 V1 X4 &c1 E1 Q0
OK
Si aparece algo como lo de arriba, quiere decir que si esta trabajando el modem.
sábado, 21 de noviembre de 2009
KylinOS
Sólo para recordar, pero será Ciencia Ficción o realidad o una divertida exageración a la que nos suelen tener acostumbrados. Lo bueno es que lo puede descargar para que lo prueben (los enlaces los debo, ya que desde donde los baje ya estan fuera de linea)
http://www.securityfocus.com/brief/964
http://muycomputer.com/FrontOffice/ZonaPractica/Especiales/especialDet/_wE9ERk2XxDCMnF402YF5BaZxlsgTTBLDTKDOQ73uRx5Wj6RUU6-QWs7AijiQYxTk
http://diariored.com/blog/001107.php (2005)
Y el culpable:
http://www.kylin.org.cn/
Pues en su momento lo baje para probar (KylinOS 2.1) y esta son sus capturas



Otras más que acabo de sacar hoy




Si encuentran los ISOs para probar y necesitan ayuda, pueden encontrarla en los foros de este SO que se encuentran en
http://www.kylin.org.cn/KylinForum/
Aunque literalmente "esta en Chino"
http://www.securityfocus.com/brief/964
In a statemen (pdf) before the U.S.-China Economic and Security Review Commission, consultant Kevin Coleman characterized the Kylin operating system as a technology that could give China the upper hand in the race to use cyberspace for national ends.
"This race was intensified when China created Kylin, their own hardened server operating system and began to convert their systems back in 2007," Coleman, a senior fellow at Technolytics, "This action also made our offensive cyber capabilities ineffective against them given the cyber weapons were designed to be used against Linux, UNIX and Windows.
Si pueden lean el pdf
http://muycomputer.com/FrontOffice/ZonaPractica/Especiales/especialDet/_wE9ERk2XxDCMnF402YF5BaZxlsgTTBLDTKDOQ73uRx5Wj6RUU6-QWs7AijiQYxTk
Junto al sistema operativo, los chinos también habrían fabricado e instalado un microprocesador "invulnerable" que aseguraría una defensa sólida de la plataforma. “En el área cibernética, China está jugando al ajedrez y Estados unidos a las damas”, dijo al periódico el especialista en seguridad militar Kevin Coleman, que advirtió de una guerra fría cibernética militar.http://news.smh.com.au/breaking-news-technology/china-deploys-secure-computer-operating-system-20090513-b24h.html
http://diariored.com/blog/001107.php (2005)
Y el culpable:
http://www.kylin.org.cn/
Pues en su momento lo baje para probar (KylinOS 2.1) y esta son sus capturas



Otras más que acabo de sacar hoy




Si encuentran los ISOs para probar y necesitan ayuda, pueden encontrarla en los foros de este SO que se encuentran en
http://www.kylin.org.cn/KylinForum/
Aunque literalmente "esta en Chino"
jueves, 22 de octubre de 2009
Karmic Koala: Spartan 3E Starter Kit y cable usb
El problema fue que al actualizar a Karmic Koala, me dejo de detectar la tarjeta. Que es lo que pasa cuando conectamos la Tarjeta a la PC:
1.- Cuando conectamos la tarjeta a un puerto USB, udev detecta el dispositivo.
2.- Ya que lo detecto el siguiente paso es que le actualize el firmware con fxload (según las reglas que tenga para dicho dispositivo, y se encuentran en el archivo /etc/udev/rules.d/xusbdfwu.rules).
3- Si tuvo exito se enciende un led de color verde que se encuentra a lado derecho del conector usb de la tarjeta y además al hacer lusb veremos que que el dispositivo lo identifica como 03fd:0008, en el caso contrarío veremos 03fd:000d.
¿Como solucionar este problema?
En caso de que hicieron una actualización de Jaunty a Karmic:
1.- Tienen que editar el archivo de reglas, que se encuentra en /etc/udev/rules.d
sudo gedit /etc/udev/rules.d/xusbdfwu.rules
Y reemplazar todos los $TEMPNODE por $tempnode
2.- Reinicar el servicio udev
sudo service udev restart o sudo /etc/init.d/udev restart
En caso de ser una instalación nueva:
0.- Requisitos: Tener instaldo el ISE Webpack y los paquetes fxload, libusb-dev y el build-essential.
sudo apt-get install fxload libusb-dev build-essential
1.- Suponiendo que ya tenemos instalado el ISE Webpack 11.1 (ó el 10.x), nos movemos al la ruta donde quedó instalado.
cd /ruta_instalación_Xilinx/11.1/ISE/bin/lin/ o cd /ruta_instalación_Xilinx/11.1/ISE/bin/lin64/
Ahí encontraremos los siguientes archivos
$ ls *.hex
xusbdfwu.hex xusb_emb.hex xusb_xlp.hex xusb_xp2.hex xusb_xpr.hex xusb_xse.hex xusb_xup.hex
Los cuales copiaremos a /usr/share
sudo cp xusb*.hex /usr/share/
2.- Enseguida editamos el archivo xusbdfwu.rules
gedit xusbdfwu.rules
# version 0003
SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0008", MODE="666"
BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0007", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusbdfwu.hex -D $TEMPNODE"
BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0009", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xup.hex -D $TEMPNODE"
BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="000d", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_emb.hex -D $TEMPNODE"
BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="000f", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xlp.hex -D $TEMPNODE"
BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0013", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xp2.hex -D $TEMPNODE"
BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0015", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xse.hex -D $TEMPNODE"
Cambiando $TEMPNODE por $tempnode, si lo dejan tan y como esta, no les va a funcionar. El contenido les debe de quedar algo como:
# version 0003 SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0008", MODE="666" BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0007", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusbdfwu.hex -D $tempnode" BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0009", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xup.hex -D $tempnode" BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="000d", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_emb.hex -D $tempnode" BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="000f", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xlp.hex -D $tempnode" BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0013", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xp2.hex -D $tempnode" BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0015", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xse.hex -D $tempnode"
3.- Ya que lo modificamos lo copiamos a /etc/
sudo cp xusbdfwu.rules /etc/udev/rules.d/
4.- reiniciamos el servicio udev
sudo service udev restart o sudo /etc/init.d/udev restart
5.- Ahora nos movemos al $HOME creamos una carpeta tmp
cd
mkdir tmp
cd tmp
Vamos a http://www.rmdir.de/~michael/xilinx/
Y descargamos de ahí el archivo usb-driver-HEAD.tar.gz en la carpeta que acabamos de crear
6.- estando en tmp descomprimimos el archivo y entramos al directorio recién creado y ejecutamos el make
tar -xvzf usb-driver-HEAD.tar.gz
cd usb-driver
make
7.- Lo anterior nos generará dos archivos, libusb-driver-DEBUG.so y libusb-driver.so los cuales copiaremos a /usr/lib/
sudo cp *.so /usr/lib/
8.- Ya podemos conectar nuestra tarjeta al la PC con el Karmic Kola y ver
$ lsusb | grep Xilinx Bus 001 Device 007: ID 03fd:0008 Xilinx, Inc.
en lugar del
$ lsusb | grep Xilinx
Bus 001 Device 007: ID 03fd:000d Xilinx, Inc.
Que al actualizar de versión me venía saliendo
En la versión 11.1 para que el impact use el libusb-driver.so en vez de los windrvr, ya no es necesario hacer lo de "export LD_PRELOAD=/ruta/libusb-driver.so" antes de ejecutarlo.
1.- Cuando conectamos la tarjeta a un puerto USB, udev detecta el dispositivo.
2.- Ya que lo detecto el siguiente paso es que le actualize el firmware con fxload (según las reglas que tenga para dicho dispositivo, y se encuentran en el archivo /etc/udev/rules.d/xusbdfwu.rules).
3- Si tuvo exito se enciende un led de color verde que se encuentra a lado derecho del conector usb de la tarjeta y además al hacer lusb veremos que que el dispositivo lo identifica como 03fd:0008, en el caso contrarío veremos 03fd:000d.
¿Como solucionar este problema?
En caso de que hicieron una actualización de Jaunty a Karmic:
1.- Tienen que editar el archivo de reglas, que se encuentra en /etc/udev/rules.d
sudo gedit /etc/udev/rules.d/xusbdfwu.rules
Y reemplazar todos los $TEMPNODE por $tempnode
2.- Reinicar el servicio udev
sudo service udev restart o sudo /etc/init.d/udev restart
En caso de ser una instalación nueva:
0.- Requisitos: Tener instaldo el ISE Webpack y los paquetes fxload, libusb-dev y el build-essential.
sudo apt-get install fxload libusb-dev build-essential
1.- Suponiendo que ya tenemos instalado el ISE Webpack 11.1 (ó el 10.x), nos movemos al la ruta donde quedó instalado.
cd /ruta_instalación_Xilinx/11.1/ISE/bin/lin/ o cd /ruta_instalación_Xilinx/11.1/ISE/bin/lin64/
Ahí encontraremos los siguientes archivos
$ ls *.hex
xusbdfwu.hex xusb_emb.hex xusb_xlp.hex xusb_xp2.hex xusb_xpr.hex xusb_xse.hex xusb_xup.hex
Los cuales copiaremos a /usr/share
sudo cp xusb*.hex /usr/share/
2.- Enseguida editamos el archivo xusbdfwu.rules
gedit xusbdfwu.rules
# version 0003
SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0008", MODE="666"
BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0007", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusbdfwu.hex -D $TEMPNODE"
BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0009", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xup.hex -D $TEMPNODE"
BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="000d", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_emb.hex -D $TEMPNODE"
BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="000f", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xlp.hex -D $TEMPNODE"
BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0013", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xp2.hex -D $TEMPNODE"
BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0015", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xse.hex -D $TEMPNODE"
Cambiando $TEMPNODE por $tempnode, si lo dejan tan y como esta, no les va a funcionar. El contenido les debe de quedar algo como:
# version 0003 SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0008", MODE="666" BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0007", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusbdfwu.hex -D $tempnode" BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0009", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xup.hex -D $tempnode" BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="000d", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_emb.hex -D $tempnode" BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="000f", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xlp.hex -D $tempnode" BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0013", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xp2.hex -D $tempnode" BUS=="usb", ACTION=="add", SYSFS{idVendor}=="03fd", SYSFS{idProduct}=="0015", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xse.hex -D $tempnode"
3.- Ya que lo modificamos lo copiamos a /etc/
sudo cp xusbdfwu.rules /etc/udev/rules.d/
4.- reiniciamos el servicio udev
sudo service udev restart o sudo /etc/init.d/udev restart
5.- Ahora nos movemos al $HOME creamos una carpeta tmp
cd
mkdir tmp
cd tmp
Vamos a http://www.rmdir.de/~michael/xilinx/
Y descargamos de ahí el archivo usb-driver-HEAD.tar.gz en la carpeta que acabamos de crear
6.- estando en tmp descomprimimos el archivo y entramos al directorio recién creado y ejecutamos el make
tar -xvzf usb-driver-HEAD.tar.gz
cd usb-driver
make
7.- Lo anterior nos generará dos archivos, libusb-driver-DEBUG.so y libusb-driver.so los cuales copiaremos a /usr/lib/
sudo cp *.so /usr/lib/
8.- Ya podemos conectar nuestra tarjeta al la PC con el Karmic Kola y ver
$ lsusb | grep Xilinx Bus 001 Device 007: ID 03fd:0008 Xilinx, Inc.
en lugar del
$ lsusb | grep Xilinx
Bus 001 Device 007: ID 03fd:000d Xilinx, Inc.
Que al actualizar de versión me venía saliendo
En la versión 11.1 para que el impact use el libusb-driver.so en vez de los windrvr, ya no es necesario hacer lo de "export LD_PRELOAD=/ruta/libusb-driver.so" antes de ejecutarlo.
Etiquetas:
9.10,
Cable Xilinx,
ISEWebPACK,
Karmic Koala,
Programación,
Ubuntu,
Xilinx
martes, 29 de septiembre de 2009
Actualización a Debian Testing
He actualizado anaconda a Debian Testing, pero no si problemas, el problema que me topé fue con el paquete netatalk, que sirve para compartir en una Red con MACs, pero ni tengo MACs, entonces para que lo quiero, y mas si me estaba dando problemas, sobre todo para poder instalar otros programas.
apt-get install linux-sound-base alsa-toolsLeyendo lista de paquetes... HechoCreando árbol de dependenciasLeyendo la información de estado... Hecholinux-sound-base ya está en su versión más reciente.fijado linux-sound-base como instalado manualmente.Se instalaron de forma automática los siguientes paquetes y ya no son necesarios.libswfdec-0.6-90 libstlport4.6ldbl libhsqldb-java-gcj menu-xdg libuser-identity-perl libwpd8c2a libartsc0 libxfce4mcs-client3 fakeroot libmd5-perllibraw1394-8 libicu38 libmime-types-perl libvorbisfile3 doc-base libbeecrypt6 libhyphen0 libwpg-0.1-1 bsh-gcj kdelibs-data libjaxp1.3-java-gcjpython-numeric libmagick10 libterm-readkey-perl postgresql-doc-8.3 libsqlite0 libfile-remove-perl libservlet2.4-java tsocks libsuitesparse-3.1.0 socatlibxerces2-java-gcj libmysqlclient15off libmail-sendmail-perl libdirectfb-1.0-0 ttf-liberation bluez-utils libakode2 bsh libavahi-qt3-1 libmikmod2xfce4-icon-theme libio-stringy-perl libjaxp1.3-java ttf-opensymbol libpoppler3 libjline-java libmldbm-perl libxerces2-java libuuid-perl libbluetooth2libobject-realize-later-perl libwps-0.1-1 libxalan2-java libsdl-mixer1.2 libconfuse0 libfreezethaw-perl libavcodec51 xfce4-mcs-manager svgalibg1libhsqldb-java html2text xfce4-mixer-alsa libqt3-mt libxfce4mcs-manager3 libcupsys2 xfce4-minicmd-plugin libavahi-core5 libsys-hostname-long-perllibcucul0 libxalan2-java-gcj libltdl3 libpoppler-glib3 libsdl-image1.2 libsmpeg0Utilice «apt-get autoremove» para eliminarlos.Se instalarán los siguientes paquetes extras:netatalkPaquetes sugeridos:texlive-base-bin quota timeout db4.2-util libpam-cracklibSe instalarán los siguientes paquetes NUEVOS:alsa-toolsSe actualizarán los siguientes paquetes:netatalk1 actualizados, 1 se instalarán, 0 para eliminar y 0 no actualizados.5 no instalados del todo o eliminados.Se necesita descargar 81.7kB/997kB de archivos.Se utilizarán 766kB de espacio de disco adicional después de esta operación.¿Desea continuar [S/n]?Des:1 http://ftp.fr.debian.org testing/main alsa-tools 1.0.20-1 [81.7kB]Descargados 81.7kB en 2s (32.3kB/s)(Leyendo la base de datos ... 00%114186 ficheros y directorios instalados actualmente.)Preparando para reemplazar netatalk 2.0.3-11+lenny1 (usando .../netatalk_2.0.4-1_i386.deb) ...hostname: Name or service not knowninvoke-rc.d: initscript netatalk, action "stop" failed.dpkg: warning: script de `pre-removal' antiguo returned error exit status 1dpkg - probando el script del nuevo paquete en su lugar...hostname: Name or service not knowninvoke-rc.d: initscript netatalk, action "stop" failed.dpkg: error al procesar /var/cache/apt/archives/netatalk_2.0.4-1_i386.deb (--unpack):el subproceso script pre-removal nuevo devolvió el código de salida de error 1hostname: Name or service not knowninvoke-rc.d: initscript netatalk, action "start" failed.dpkg: error al reorganizar:el subproceso installed post-installation script devolvió el código de salida de error 1Seleccionando el paquete alsa-tools previamente no seleccionado.Desempaquetando alsa-tools (de .../alsa-tools_1.0.20-1_i386.deb) ...Procesando disparadores para man-db ...Se encontraron errores al procesar:/var/cache/apt/archives/netatalk_2.0.4-1_i386.debE: Sub-process /usr/bin/dpkg returned an error code (1)
Entonces intente copiar el deb e instalarlo con el dpkg para después desinstalarlo
anaconda:~# cp /var/cache/apt/archives/netatalk_2.0.4-1_i386.deb .anaconda:~# lsnetatalk_2.0.4-1_i386.deb null p.shanaconda:~# dpkg -i netatalk_2.0.4-1_i386.deb(Leyendo la base de datos ... 00%114224 ficheros y directorios instalados actualmente.)Preparando para reemplazar netatalk 2.0.3-11+lenny1 (usando netatalk_2.0.4-1_i386.deb) ...hostname: Name or service not knowninvoke-rc.d: initscript netatalk, action "stop" failed.dpkg: warning: script de `pre-removal' antiguo returned error exit status 1dpkg - probando el script del nuevo paquete en su lugar...hostname: Name or service not knowninvoke-rc.d: initscript netatalk, action "stop" failed.dpkg: error al procesar netatalk_2.0.4-1_i386.deb (--install):el subproceso script pre-removal nuevo devolvió el código de salida de error 1hostname: Name or service not knowninvoke-rc.d: initscript netatalk, action "start" failed.dpkg: error al reorganizar:el subproceso installed post-installation script devolvió el código de salida de error 1Se encontraron errores al procesar:netatalk_2.0.4-1_i386.deb
Y de nuevo nada, el siguiente paso fue descomprimir el deb y cambiar los scripts de pre y post instalación, y borrarle el contenido de los scripts que invocaban el /etc/init.d/netatalk, que era el del problema.
anaconda:~# ar x netatalk_2.0.4-1_i386.debanaconda:~# lscontrol.tar.gz data.tar.gz debian-binary netatalk_2.0.4-1_i386.deb null p.shanaconda:~# mkdir tmpanaconda:~# cd tmp/anaconda:~/tmp# mkdir DEBIANanaconda:~/tmp# cd DEBIAN/anaconda:~/tmp/DEBIAN# vim ../../debian-binaryanaconda:~/tmp/DEBIAN# cd ..anaconda:~/tmp# tar xzvpf ../data.tar.gzanaconda:~/tmp# cd DEBIAN/anaconda:~/tmp/DEBIAN# tar xzvpf ../../control.tar.gzanaconda:~/tmp/DEBIAN# lsconffiles control md5sums postinst postrm prermanaconda:~/tmp/DEBIAN# vim prermanaconda:~/tmp/DEBIAN# vim postinstanaconda:~/tmp/DEBIAN# cd ..
Y construir el nuevo paquete
anaconda:~/tmp# dpkg --build . ..dpkg-deb: construyendo el paquete `netatalk' en `../netatalk_2.0.4-1_i386.deb'.
Instalé el nuevo paquete
anaconda:~# cd ..anaconda:~# dpkg -i netatalk_2.0.4-1_i386.debSeleccionando el paquete netatalk previamente no seleccionado.(Leyendo la base de datos ... 00%114224 ficheros y directorios instalados actualmente.)Preparando para reemplazar netatalk 2.0.3-11+lenny1 (usando netatalk_2.0.4-1_i386.deb) ...hostname: Name or service not knowninvoke-rc.d: initscript netatalk, action "stop" failed.dpkg: warning: script de `pre-removal' antiguo returned error exit status 1dpkg - probando el script del nuevo paquete en su lugar...dpkg: ... parece que todo fue bien.Desempaquetando el reemplazo de netatalk ...Configurando netatalk (2.0.4-1) ...Instalando una nueva versión del fichero de configuración /etc/logcheck/ignore.d.server/netatalk ...Instalando una nueva versión del fichero de configuración /etc/init.d/netatalk ...Instalando una nueva versión del fichero de configuración /etc/netatalk/afpd.conf ...Instalando una nueva versión del fichero de configuración /etc/netatalk/AppleVolumes.default ...Instalando una nueva versión del fichero de configuración /etc/default/netatalk ...Instalando una nueva versión del fichero de configuración /etc/pam.d/netatalk ...Procesando disparadores para man-db ...
Y enseguida lo removí
anaconda:~# apt-get remove netatalkLeyendo lista de paquetes... HechoCreando árbol de dependenciasLeyendo la información de estado... HechoSe instalaron de forma automática los siguientes paquetes y ya no son necesarios.libswfdec-0.6-90 libstlport4.6ldbl libhsqldb-java-gcj menu-xdg libuser-identity-perl libwpd8c2a libartsc0 libxfce4mcs-client3 fakeroot libmd5-perllibraw1394-8 libicu38 libmime-types-perl libvorbisfile3 doc-base libbeecrypt6 libhyphen0 libwpg-0.1-1 bsh-gcj kdelibs-data libjaxp1.3-java-gcjpython-numeric libmagick10 libterm-readkey-perl postgresql-doc-8.3 libsqlite0 libfile-remove-perl libservlet2.4-java tsocks libsuitesparse-3.1.0 socatlibxerces2-java-gcj libmysqlclient15off libmail-sendmail-perl libdirectfb-1.0-0 ttf-liberation bluez-utils libakode2 bsh libavahi-qt3-1 libmikmod2xfce4-icon-theme libio-stringy-perl libjaxp1.3-java ttf-opensymbol libpoppler3 libjline-java libmldbm-perl libxerces2-java libuuid-perl libbluetooth2libobject-realize-later-perl libwps-0.1-1 libxalan2-java libsdl-mixer1.2 libconfuse0 libfreezethaw-perl libavcodec51 xfce4-mcs-manager svgalibg1libhsqldb-java html2text xfce4-mixer-alsa libqt3-mt libxfce4mcs-manager3 libcupsys2 xfce4-minicmd-plugin libavahi-core5 libsys-hostname-long-perllibcucul0 libxalan2-java-gcj libltdl3 libpoppler-glib3 libsdl-image1.2 libsmpeg0Utilice «apt-get autoremove» para eliminarlos.Los siguientes paquetes se ELIMINARÁN:netatalk0 actualizados, 0 se instalarán, 1 para eliminar y 0 no actualizados.5 no instalados del todo o eliminados.Se liberarán 2310kB después de esta operación.¿Desea continuar [S/n]?(Leyendo la base de datos ... 00%114228 ficheros y directorios instalados actualmente.)Desinstalando netatalk ...Procesando disparadores para man-db ...Configurando lockfile-progs (0.1.13) ...Configurando ntp (1:4.2.4p6+dfsg-2) ...Starting NTP server: ntpd.Configurando ntpdate (1:4.2.4p6+dfsg-2) ...Configurando rc (1.7.1-3) ...Configurando alsa-tools (1.0.20-1) ...Procesando disparadores para menu ...
Y ya pudo configurar los programas que no había podido configurar por el problema con el paquete netatalk
miércoles, 23 de septiembre de 2009
ATI Radeon Xpress 200M Karmic
Suscribirse a:
Entradas (Atom)
