Como hacer que el iPhone / iPod Touch recarge la batería en Linux

Hace unos días descubrí con desagrado que mi iPod Touch (y por tanto el iPhone) no recarga la batería al conectarlo en Linux. Todo el problema es que hay que enviar una secuencia al iPod / iPhone cuando este se conecta al USB, así como hacer una pequeña modificación al Kernel de linux para que no suspenda el dispositivo y pueda cargar la batería sin problema.

Para que el iPod Touch / iPhone pueda recargarse en linux necesitamos al menos la versión 2.6.22 del Kernel, Ubuntu 7.10 (Gusty Gibson) ya incluye esta versión. Luego necesitamos bajar el iPhone Module, el modulo del kernel que se encargará de enviar los datos apropiados al iPhone.

Si tienes un iPod Touch, necesitas modificar el valor de #define IPHONE de 0x1290 a 0x1291. Luego para ambos iPhone y iPod hay que agregar la linea de código:

udev->autosuspend_disabled = 1;

Esto es para que el Kernel no suspenda el dispositivo. Yo agregue esta instrucción en la función iphone_probe en iphone.c, que al final quedó así:

static int iphone_probe(struct usb_interface *intf,
                       const struct usb_device_id *id)
{
       struct usb_device *udev = interface_to_usbdev(intf);

       if (udev->actconfig->desc.bConfigurationValue == 3) {
               dbg(&udev->dev, "Configuration changed");
               return -ENODEV;
       }

       /* turn the power on */
       select_configuration(udev);

	udev->autosuspend_disabled = 1;

       /* we don't really want to bind to the device, userspace programs can
        * handle the syncing just fine, so get outta here. */
       return -ENODEV;
}

Para instalar este modulo (una vez modificado) debes ejecutar:

make -C /lib/modules/2.6.22-14-generic/build  M=`pwd` modules

Sino hay errores, con esto debería ser todo lo que debes instalar. En mi caso, ahora ya no tengo que arrancar windows para mantener con carga mi iPod Touch.

Etiquetas: , , , , ,

22 comments

  1. Juls · November 5, 2007

    Que bueno que ya podas cargar tu iPod Touch en Linux!!!

  2. Sebastian Oliva · November 22, 2007

    Tas en Digg…

  3. Arturo Castillo · December 10, 2007

    Amigo… lo dices bien facil pero habemos muchos que no sabemos programar lenguaje C.. Oye que aplicacion necesito para poder compilar modulos y de donde saco el codigo fuente?

  4. asphixmx · December 12, 2007

    Yo apoyo a Arturo Castillo… no se si podrias explicarlo de una forma para novatos, porque no todos somos tan duchos en linux. Yo apenas emigre desde windows y no quisiera regresarme.

  5. Pingback: iPod Touch/iPhone en Linux « beGNU
  6. pepe · January 16, 2008

    Si tienes un iPod Touch, necesitas modificar el valor de #define IPHONE de 0x1290 a 0x1291 ¿donde se modifica????

  7. sirgt · January 20, 2008

    ya te putearon xDDDD se te olvido que era un howto para ubunteros no? xDDDDD

  8. Javier Aroche · January 20, 2008

    @sirgt: fácil, sino entienden que se regresen a windows.

  9. Garibaldi · February 5, 2008

    Creo que si está liberado el Ipod Touch por Jailbreak, este carga, al menos en mi prueba que estoi haciendo en ubuntu 7.10 de momento parece que carga ^^ esperemos que la carga sea cierta 😀 Os sigo informando haber… 😛

  10. Cario · February 14, 2008

    alguien puede explicarme como leer archivos .pdf en el touch? A ser posible sin hakearlo, si no hay mas remedio. GRACIAS

  11. zeehio · March 1, 2008

    Para que me funcionase, antes de hacer el make tuve que hacer:
    sudo apt-get install linux-source
    y luego por supuesto:
    cd /ruta a la carpeta donde teneis descomprimido el iphone module/

    Espero que estos detalles sirvan a los que andan algo perdidos.

    @pepe: Para modificar el #define iphone, abre (con un editor de textos) el archivo iphone.c que encontraras cuando descomprimas el iphone module que hay que descargar. Allí, en la línea 25 aprox, está el #define iphone

  12. Linux · July 3, 2008

    Javier Aroche:

    Si esa es tu forma de hacer que las personas usen Linux, dedicate a otra cosa. O, estas para ayudar o deja esto.

    Por lo menos de mi parte, no recomendaré este lugar a nadie, todo lo contrario, lo incluiré en una gran lista negra.

    Aprende, sé humilde.

  13. Javier Aroche · July 3, 2008

    @linux si pagas el tiempo que dedique, con mucho gusto.

    Sino aprende que no todo es gratis, madura.

  14. Para Javier Aroche · August 2, 2008

    Me parece simplemente patético que la gente que lleva tiempo con Linux se tire el moco con el software libre y después traten a los neófitos (entre los que me incluyo) que usan ubuntu como si fuéramos windowseros. Claro, gente como tú, Javier Aroche, nacistéis enseñados, ¿no?

    ¿Acaso no te das cuenta de que si quieres cambiar algo las cosas, todos tenemos que hacer un pequeño esfuerzo? ¿No concibes que haya gente que quizás no sea tan buena con los ordenadores como tú, pero que aun así quieran dejar de usar los productos de la mayor multinacional del mundo?

    Si Linus Torvalds supiera lo que haces, te daría dos hostias.

    Me das una mezcla de asco y pena. Si en verdad quieres tener un producto exclusivo y elitista, cómprate un puto Mac.

    P.D. Y, si puedes, le pones línea de comandos, madafaca

  15. Javier Aroche · August 2, 2008

    Si le preguntamos a Linus seguro responde que aprender a parchar y compilar el kernel es una de las cosas básicas que todo usuario de linux debe saber.

    Y deja de llorar porque en la última versión de ubuntu ya incluye este parche, solo actualizate.

    Y si no eres capaz de entender lo que dije en el post, tal vez debas conformarte con usar windows.

  16. casius · February 16, 2009

    Yo tengo un iPod Touch 2G y lo he recargado varias veces desde un portátil con Linux sin el más mínimo problema. Me lo reconoce como una cámara digital al igual que Windows y lo recarga sin más. Yo no sé qué haréis vosotros
    ¿Lo tenéis con el jailbreack (pirateado)? Posiblemente de problemas si ha sufrido esa modificación.

  17. Pingback: Como hacer que el iPhone o el iPod Touch cargen la batería sin instalar iTunes « Javier Aroche
  18. Alfredo · June 8, 2009

    Estoy harto de los imbeciles que amenazan con devolverse a windows solo porque no les sale algo en linux, por favor señores!!! Es como escupir la pastilla y entrar a la “matrix” de nuevo… en fin, encuentro el artículo interesante, lo que hay que esperar es que se pueda sincronizar el ipod touch con linux para descargar videos o canciones, o ya alguien sabe?
    Saludes desde Costa Rica (Comunidad Ubuntu)

  19. Javier Aroche · June 8, 2009

    @Alfredo mejor comprate un gadget que no sea de Apple…

  20. msdark · June 14, 2009

    ubunteros. => poke linux…

    El how to es claro como el agua…

  21. uoiui · August 15, 2009

    hijos de puta cuaticos de mierda, fanboys, no pueden tener 2 son todos gratis, yo uso debian para navegar y esas mierdas, windows para correr .exe’s y no andar weando con mierdas de cosas como wine y tonteras estupidas innecesarias. y tengo un mac para hacer el trabajo real sin problemas.

  22. how to jailbreak iphone 4 · July 13, 2012

    This piece of writing offers clear idea for the new
    viewers of blogging, that actually how to
    do blogging.

Comments are closed.