El VGN-TX27TP es un laptop ultraligero con Pentium M ultra-low voltage de 1.2 Ghz y grabadora de DVD dual-layer. El TFT es de 1360×768 y está retroiluminado con LEDs. Tiene botoncillos por todas partes, un par de USBs, un firewire, ethernet, modem, bluetooth, wifi y ranura SD/memory-stick.

De serie me venía con caracteres chinos en el teclado que le dan un toque geek y, lo más importante, un layout americano, con todas las teclas raras donde deben estar…

También viene con un Windows XP en auténtico chino mandarín y un programita basado en linux para actuar como media player sin tener que encender el Windows. De esto último me enteré demasiado tarde, así que si alguien lo tiene todavía que me lo diga, que los cutres de Sony no me dieron ni un CD.

En esta receta veremos cómo realizar el exorcismo de este pobrecillo PC para darle mejor vida.

Lo más dificil

Bueno, lo más difícil con diferencia es lo aparentemente más simple. Las pegatinas. Tiene dos pegatinas que hacen que funcione deficientemente: una dice “Designed for Windows XP” y la otra dice “Microsoft Windows Original”. Ambas están muy bien pegadas en la carcasa y succionan la sustancia del pobre Vaio. Yo lo resolví con un trapo de algodón húmedo pero muy muy escurrido y mucha, mucha paciencia.

Lo peor está hecho, mete el CD de un Debian netinstall y tira millas. Si instalas una unstable no tendrás apenas problemas. La tarjeta gráfica (intel 915GM) la autodetecta, la ethernet (Intel e100) y la wifi también (tiene una intel pro wireless 2200bg).

Lo deja en un estado bastante usable salvo por la salida externa de VGA, el synaptics touchpad y los botones.

¡¡¡Y lo que es más importante: el software suspend funciona out-of-the-box!!!

Se me caían las lágrimas cuando lo vi…

La configuración de Xorg

El touchpad funciona de serie, pero para activar los taps, scroll, arrastre y tal no he encontrado nada que lo haga automáticamente. Tuve problemas con los parámetros por defecto, que lo dejaban con una sensibilidad extrema. Al final, googleando encontré este trozo que me va bien.

Section "InputDevice"
        Identifier      "Touchpad"
        Driver          "synaptics"
        Option          "SendCoreEvents"
        Option          "Device"                "/dev/input/mouse0"
        Option          "Protocol"              "auto-dev"
        Option          "SHMConfig"             "true"
        Option          "LeftEdge"              "120"
        Option          "RightEdge"             "830"
        Option          "TopEdge"               "140"
        Option          "BottomEdge"            "680"
        Option          "FingerLow"             "8"
        Option          "FingerHigh"            "9"
        Option          "MaxTapTime"            "200"
        Option          "MaxTapMove"            "150"
        Option          "MaxDoubleTapTime"      "200"
        Option          "ClickTime"             "100"
        Option          "FastTaps"              "false"
        Option          "EmulateMidButtonTime"  "75"
        Option          "VertScrollDelta"       "25"
        Option          "HorizScrollDelta"      "100"
        Option          "MinSpeed"              "0.1"
        Option          "MaxSpeed"              "0.7"
        Option          "AccelFactor"           "0.05"
        Option          "EdgeMotionMinZ"        "30"
        Option          "EdgeMotionMaxZ"        "160"
        Option          "EdgeMotionMinSpeed"    "200"
        Option          "EdgeMotionMaxSpeed"    "200"
        Option          "EdgeMotionUseAlways"   "1"
        Option          "UpDownScrolling"       "1"
        Option          "TouchpadOff"           "false"
        Option          "GuestMouseOff"         "false"
        Option          "LockedDrags"           "false"
        Option          "RTCornerButton"        "0"
        Option          "RBCornerButton"        "0"
        Option          "LTCornerButton"        "0"
        Option          "LBCornerButton"        "0"
        Option          "TapButton1"            "1"
        Option          "TapButton2"            "2"
        Option          "TapButton3"            "3"
        Option          "CircularScrolling"     "1"
        Option          "CircScrollDelta"       "0.1"
        Option          "CircScrollTrigger"     "2"
        Option          "CircularPad"           "0"
        Option          "PalmDetect"            "0"
        Option          "PalmMinWidth"          "10"
        Option          "PalmMinZ"              "200"
        Option          "CoastingSpeed"         "0"
EndSection

La resolución 1366×768 es la estándar de DVB y HDTV, pero es problemática porque la horizontal no es divisible por 8. Xorg exige que sea divisible por 8, asi que tenemos que elegir entre 1360 o 1368. Yo me quedé con 1360 porque a mi me resulta molesto el scroll automático que resulta cuando la resolución virtual es mayor que la física.

Section "Screen"
        Identifier      "Screen LCD"
        Device          "Device LCD"
        Monitor         "Monitor LCD"
        DefaultDepth    16
        SubSection "Display"
                Virtual         1360    768
                Depth           24
                Modes           "1360x768" "1024x768" "800x600" "640x480"
        EndSubSection
EndSection

El monitor LCD va bien con DPMS:

Section "Monitor"
        Identifier      "Monitor LCD"
        Option          "DPMS"
EndSection

Y la tarjeta va bien con el driver i810, incluida la aceleración 3D (no espereis maravillas…):

Section "Device"
        Identifier      "Device LCD"
        Driver          "i810"
        BusID           "PCI:0:2:0"
        Option          "VBERestore"            "true"
        Option          "DRI"                   "true"
        Option          "VideoRam"              "128MB"
        Option          "MonitorLayout"         "NONE,LFP"
EndSection

El teclado lo tengo como un estándar americano. Eso tiene el inconveniente de que no sé como escribir los caracteres chinos. Bueno, tengo que confesar que intenté escribir en chino en un Windows chino y tampoco sabía como sacar los simbolitos, parecía todo aleatorio…

Section "InputDevice"
        Identifier      "Keyboard"
        Driver          "kbd"
        Option          "CoreKeyboard"
        Option          "XkbRules"      "xorg"
        Option          "XkbModel"      "pc104"
        Option          "XkbLayout"     "us"
EndSection

Normalmente uso una configuración con la salida externa desactivada, como pone en la sección de la tarjeta de video. En ese caso la sección Screen es:

Section "Screen"
        Identifier      "Screen LCD"
        Device          "Device LCD"
        Monitor         "Monitor LCD"
        DefaultDepth    16
        SubSection "Display"
                Virtual         1360    768
                Depth           24
                Modes           "1360x768" "1024x768" "800x600" "640x480"
        EndSubSection
EndSection

Y el layout es:

Section "ServerLayout"
        Identifier      "Layout LCD"
        Screen          "Screen LCD"
        InputDevice     "Keyboard"
        InputDevice     "Mouse"
        InputDevice     "Touchpad"
EndSection

Para activar la salida externa cambio de layout descomentando la línea correspondiente de la sección ServerFlags:

Section "ServerFlags"
        #Option         "DefaultServerLayout"           "Layout LCD"
        #Option         "DefaultServerLayout"           "Layout CRT"
        Option          "DefaultServerLayout"           "Layout Dual"
EndSection

El Layout Dual es el más interesante. Tengo dos Screen independientes sin xinerama:

Section "Device"
        Identifier      "Device LCD Dual"
        Driver          "i810"
        BusID           "PCI:0:2:0"
        Screen          0
        Option          "VBERestore"            "true"
        Option          "NoDDC"                 "true"
        Option          "MonitorLayout"         "CRT,LFP"
EndSection

Section "Device"
        Identifier      "Device CRT Dual"
        Driver          "i810"
        BusID           "PCI:0:2:0"
        Screen          1
        Option          "NoDDC"                 "true"
EndSection

Section "Monitor"
        Identifier      "Monitor CRT"
        Option          "DPMS"
        HorizSync       28-49
        VertRefresh     43-72
EndSection

Section "Screen"
        Identifier      "Screen CRT Dual"
        Device          "Device CRT Dual"
        Monitor         "Monitor CRT"
        DefaultDepth    24
        SubSection "Display"
                Depth           24
                Modes           "1024x768" "800x600" "640x480"
        EndSubSection
EndSection

Section "ServerLayout"
        Identifier      "Layout Dual"
        Screen          0               "Screen LCD Dual"
        Screen          1               "Screen CRT Dual"       RightOf         "Screen LCD Dual"
        InputDevice     "Keyboard"
        InputDevice     "Mouse"
        InputDevice     "Touchpad"
EndSection

De esta forma me sale el gestor de ventanas sobre las dos screens, cada una con su resolución.

Control de brillo, activación WiFi/Bluetooth

Instala spicctrl. En teoría con esto basta, pero el brillo no va, necesitamos sony-acpi-source y compilar con module-assistant:

m-a a-i sony-acpi

Y en /etc/modules añadir

sony_acpi

En Gnome va perfectamente el control de brillo con las teclitas normales.

La activación/desactivación del bluetooth, las temperaturas y el estado de las baterías se puede ver con spicctrl. Por ejemplo, para desactivar el bluetooth:

spicctrl -l 0

Las teclas multimedia se pueden mapear perfectamente con los aceleradores de Gnome. Todas menos dos, que no hay manera, las del control de volumen. ¡Tanto la teclita de subir volumen como la de bajar volumen generan el mismo scan-code!

Teclado

El teclado es super cómodo. Una vez te haces al layout americano no puedes vivir sin él y tienes que empezar a pedir teclados USB por Internet para poder usar los ordenadores que te rodean.

Escribir en lenguas extrañas como la de Cervantes tampoco es complicado. Simplemente te añades al teclado USA normal el teclado USA con alfabeto internacional. Se puede conmutar con el applet de keyboard indicator. Al usar el de alfabetización internacional el apóstrofo, las comillas, el apóstrofo inverso, el gurrumuño y el sombrerito pasan a ser dead-keys, con lo que se pueden escribir sin problemas acentos, eñes, etc. De hecho si usas el Alt derecho en combinación con n tienes una eñe, si lo combinas con la coma tienes una cedilla, si lo combinas con una vocal tienes la vocal acentuada, si lo combinas con una s tienes la ß germánica. En fin, que es más fácil y rápido escribir en alfabetización internacional con un teclado USA que con un spanish.

Y sobre todo echadle un vistacillo a cómo estan los corchetes, las llaves, los paréntesis, la barra invertida, el signo de dividir… ¡Todo está donde tiene que estar!

La ranura SD/MemoryStick

En teoría con el 2.6.17 debería funcionar, pero a mi todavía no me funciona. No es que me haya pegado mucho con el… pero así por las buenas no va.

Hay recetas por ahí para hacerlo funcionar, pero casi que me espero a que el 2.6.17 o el 2.6.18 lo soporten plenamente :-)



blog comments powered by Disqus