Inicio > Raspbian, Raspbmc > ¿Te ha desaparecido /dev/spidev0.0?

¿Te ha desaparecido /dev/spidev0.0?

jueves, 5 de febrero de 2015 Dejar un comentario Ir a comentarios

Si tienes una Raspberry Pi, has actualizado el sistema operativo y te han dejado de funcionar las cosas que tenías conectadas en el GPIO es por una sencilla razón: en el kernel 3.18 se ha activado el soporte a Device Tree.

En mi caso me había dejado de funcionar el ambilight casero que tenía y, por ejemplo, boblight me lanzaba lo siguiente por el terminal:

SPI mapped from 0x0x20204000 to 0x0x16c5000

Boblightd 2.0 (optimized version for raspberry) (c) 2013 Speedy1985 and Heven)
(InitLog) start of log /root/.boblight/boblightd.log
(PrintFlags) starting boblightd
(CConfig::LoadConfigFromFile) opening /etc/boblight.conf
(CConfig::CheckConfig) checking config lines
(CConfig::CheckConfig) config lines valid
(CConfig::BuildConfig) building config
(CConfig::BuildConfig) built config successfully
(main) starting devices
(CClientsHandler::Process) opening listening TcpSocket on 127.0.0.1:19333
(CDevice::Process) AmbiLight: starting with output «/dev/spidev0.0»
(CDevice::Process) AmbiLight: setting up
(CDeviceSPI::SetupDevice) ERROR: AmbiLight: Unable to open /dev/spidev0.0: No such file or directory
(CDevice::Process) ERROR: AmbiLight: setting up failed, retrying in 10 seconds

Y efectivamente no existía ningún /dev/spidev0.0. Indagando encontré que en algunas distros (Raspbian) el módulo spidev o spi-bcm2708 no cargaban porque estaban en el fichero «/etc/modprobe.d/raspi-blacklist.conf» y había que comentar dichas líneas. En mi caso yo no tenía ningún módulo bajo el blacklist y me cercioré que mi kernel había sido compilado con las opciones correctas:

zcat /proc/config.gz  | grep -i SPIDEV

CONFIG_BCM2708_SPIDEV=y
CONFIG_SPI_SPIDEV=y

Pero la solución a mi problema fue añadir la siguiente línea al fichero «/boot/config.txt»:

dtparam=spi=on

Reiniciar y listo.

Categories: Raspbian, Raspbmc Tags: ,
  1. Julian Quiroz
    miércoles, 6 de mayo de 2015 a las 16:47 | #1

    Muchas gracias… a mi me dejo de funcionar un programa que leía tarjetas de RFID cuando actualicé el raspbyan… busque en mucha partes, que era lo que estaba mal y nadie tenia la respuesta… vi que faltaba el archivo /dev/spidev0.0… y después vi este post… mucha sgracias

  2. Cristian
    miércoles, 6 de mayo de 2015 a las 17:36 | #2

    @Julian Quiroz
    Yo también me harté a buscar, me alegra que te haya ayudado.