Cerca nel blog

15 febbraio, 2012

Arch Linux and sbmanager HowTo

I had to install sbmanager-git on Arch Linux.
Actually, from aur, the PKGBUILD is still at version 20101016.

This is how the PKGBUILD looks like:
# Contributor: Matías Hernández 
pkgdesc="Manage iPhone/iPod Touch SpringBoard icons from the computer"
arch=(i686 x86_64)
depends=(usbmuxd libimobiledevice clutter clutter-gtk intltool)
#md5sums=() #generate with 'makepkg -g'


build() {
  cd "$srcdir"
  msg "Connecting to GIT server...."

  if [ -d $_gitname ] ; then
    cd $_gitname && git pull origin
    msg "The local files are updated."
    git clone $_gitroot $_gitname

  msg "GIT checkout done or server timeout"
  msg "Starting make..."

  rm -rf "$srcdir/$_gitname-build"
  git clone "$srcdir/$_gitname" "$srcdir/$_gitname-build"
  cd "$srcdir/$_gitname-build"


  ./configure --prefix=/usr
  make || return 1
  make DESTDIR="$pkgdir/" install
if you want to install sbmanager without error, as usual digit:

  yaourt -S sbmanager-git
When yaourt will ask to modify the PKGBUILD, answer yes and modify:

  version=20120215 (actually is the latest)
  depends=(usbmuxd libimobiledevice clutter clutter-gtk2 intltool)

Then, continue the installation.


10 febbraio, 2012

Ghost or hidden Network Card

When you trying to set the IP address on a network adapter, you may receive the following error message:

"The IP address XXX.XXX.XXX.XXX you have entered for this network adapter is already assigned to another adapter Name of adapter. Name of adapter is hidden from the network and Dial-up Connections folder because it is not physically in the computer or is a legacy adapter that is not working. If the same address is assigned to both adapters and they become active, only one of them will use this address. This may result in incorrect system configuration. Do you want to enter a different IP address for this adapter in the list of IP addresses in the advanced dialog box? "

From a command prompt ("run as administrator" if you are on Vista or  above)

devcon findall = net 
devcon listclass net 
Note: In the output of the previous commands, there is a line for the ghosted network adapter that is similar to the following:
PCI\VEN_10B7&DEV_9200&SUBSYS_00D81028&REV_78\4&19FD8D60&0&58F0: 3Com 3C920 Integrated Fast Ethernet Controller (3C905C-TX Compatible) 
Remove the ghosted device by typing the following syntax:
devcon -r remove "@PCI\VEN_10B7&DEV_9200&SUBSYS_00D81028&REV_78\4&19FD8D60&0&58F0" 

09 febbraio, 2012

XBMC e Dongle USB DVB-T con id: 1d19:1101

La versione stable di XBMCLive (la 10.1, la prossima è ancora in beta) è basata su Ubuntu Lucid, il quale non supporta il modulo rtl2832u (usato dal DVB-T Dexatek).

Possibili soluzioni:

  1.  Aggiornare i repository ed installare un kernel più nuovo
  2. Aggiornare alla versione beta di XBMCLive
  3. Cambiare DVB-T (visto il costo irrisorio di questi dispositivi)
  4. Patchare il kernel attuale per supportare il modulo rtl2832u

Io ho optato per la 4a.

Versione di XBMC:

mediacenter:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 10.04.2 LTS - XBMCLive Dharma
Release:        10.04
Codename:       lucid

Linux mediacenter 2.6.32-38-generic #83-Ubuntu SMP Wed Jan 4 11:13:04 UTC 2012 i686 GNU/Linux

mediacenter:~$ sudo lsusb
Bus 001 Device 004: ID 1d19:1101 Dexatek Technology Ltd. DK DVB-T Dongle


1) sudo apt-get install mercurial build-essential linux-headers-`uname -r`
2) hg clone http://linuxtv.org/hg/v4l-dvb
3) cd v4l-dvb
4) wget http://xgazza.altervista.org/Linux/DVB/Drivers/RTL2832U_patch_v4l_dvb.diff
5) patch -p1 < RTL2832U_patch_v4l_dvb.diff
6) make && sudo make install

A questo punto dovreste trovarvi il dongle DVB-T correttamente riconosciuto dal kernel di linux:

root@mediacenter:/etc# dmesg | grep -i dvb
[   11.762960] dvb-usb: found a 'DK mini DVBT DONGLE' in warm state.
[   11.762970] dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
[   11.765465] DVB: registering new adapter (DK mini DVBT DONGLE)
[   12.565385] DVB: registering adapter 0 frontend 0 (Realtek DVB-T RTL2832)...
[   12.565580] input: IR-receiver inside an USB DVB receiver as /devices/pci0000:00/0000:00:1a.7/usb1/1-4/input/input6
[   12.565652] dvb-usb: schedule remote query interval to 287 msecs.
[   12.565658] dvb-usb: DK mini DVBT DONGLE successfully initialized and connected.
[   12.565703] usbcore: registered new interface driver dvb_usb_rtl2832u

Per fare un pò di sano debug, nel caos qualcosa non funzioni come dovrebbe, si può abilitare il debug del modulo, caricandolo con l'opzione:

modprobe dvb_usb_rtl2832u debug=1
Attenzione: /var/log/messages sarà inondato di notifiche da parte del modulo.

Un'altra cosuccia: forse vi domanderete come si fa a sapere quali parametri un modulo accetta in fase di caricamento. In questo caso è debug, ma ce ne sono altri? Come verificarlo? Con il comando modinfo.

 root@mediacenter:/etc# modinfo dvb_usb_rtl2832u
filename:       /lib/modules/2.6.32-38-generic/kernel/drivers/media/dvb/dvb-usb/dvb-usb-rtl2832u.ko
license:        GPL
version:        2.0.1-3
description:    Driver for the RTL2832U DVB-T / RTL2836 DTMB USB2.0 device
author:         Realtek
srcversion:     543B06529B7C7A9EC2C2D20
alias:          usb:v1554p5020d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1554p5013d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1F4DpD803d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1F4DpC803d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1F4DpB803d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1F4DpA803d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1D19p1104d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1B80pD394d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0BDAp2837d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0BDAp2834d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0BDAp2839d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0BDAp2836d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1F4Dp0837d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1B80pD398d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1B80pD393d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1B80pD397d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v13D3p3282d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v13D3p3234d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1164p6601d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1680pA332d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0BDAp2838d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1D19p1103d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1D19p1102d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1D19p1101d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1B80pD396d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v13D3p3274d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0CCDp00A9d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0BDAp2832d*dc*dsc*dp*ic*isc*ip*
depends:        dvb-usb
vermagic:       2.6.32-38-generic SMP mod_unload modversions 586
parm:           debug:Set debugging level (1=info,xfer=2 (or-able)). (int)
parm:           demod:Set default demod type(0=dvb-t, 1=dtmb, 2=dvb-c) (int)
parm:           dtmb_err_discard:Set error packet discard type(0=not discard, 1=discard) (int)
parm:           adapter_nr:DVB adapter numbers (array of short)

In questo caso, il modulo dvb-usb-rtl2832u supporta i parametri "debug", "demod", "dtmb_err_discard", "adapter_nr".
Questi parametri ritornano piuttosto utili quando c'è da abilitare o disabilitare dei componenti delle schede (vedi IR per le schede TV, ad esempio).
A questo punto, installatevi il vostro mediacenter preferito.
Suggerisco XBMC + tvheadend.