Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

CHARGER SON IPHONE À PARTIR DE LINUX VIA LE CÂBLE USB [LINUX]


Information sur la source

Catégorie :Applications Linux Classé sous : iphone, linux, charge, batterie, usb Niveau : Débutant Date de création : 07/11/2007 Date de mise à jour : 08/11/2007 04:18:12 Vu : 5 680

Note :
8 / 10 - par 1 personne
8,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (6)
Ajouter un commentaire et/ou une note


Description

Le chargement d'un iphone sous Linux ne marche pas dans tous les cas! Pour résoudre ce problème, j'ai réalisé une petite application.

Installer libusb
Puis compiler:
gcc -o iphonechargeur main.c -lusb

Brancher votre iphone puis lancer l'application.
 

Source

  • /*
  • * Charger son iPhone à partir de Linux
  • *
  • * Alexandre PIEL
  • * http://piel.alex.free.fr/
  • */
  • #include <stdio.h>
  • #include <usb.h>
  • #include <errno.h>
  • usb_dev_handle *locate(void);
  • int main ()
  • {
  • struct usb_dev_handle *handle;
  • struct usb_device *device;
  • int send_status;
  • int open_status;
  • printf("** iPhone Linux Charge by Alexandre PIEL :: http://piel.alex.free.fr/ **\n\n");
  • usb_init();
  • //~ usb_set_debug(2);
  • if ((handle = locate())==0)
  • {
  • printf("Could not open the device\n");
  • return (-1);
  • }
  • printf("\n\t\tChargement en cours.\n\n\nNe fermer pas l'application...\n");
  • for (;;)
  • sleep(5000);
  • usb_close(handle);
  • }
  • usb_dev_handle *locate(void)
  • {
  • struct usb_bus *bus;
  • struct usb_device *dev;
  • usb_dev_handle *device_handle = 0;
  • usb_find_busses();
  • usb_find_devices();
  • usleep(5000);
  • usb_find_devices();
  • for (bus = usb_busses; bus; bus = bus->next)
  • {
  • for (dev = bus->devices; dev; dev = dev->next)
  • {
  • if (dev->descriptor.idVendor == 0x05ac && dev->descriptor.idProduct == 0x1290)
  • {
  • device_handle = usb_open(dev);
  • if(device_handle != 0)
  • {
  • return (device_handle);
  • }
  • else
  • {
  • printf("err: device Handle is zero \n");
  • return (0);
  • }
  • }
  • }
  • }
  • return (0);
  • }
/*
* Charger son iPhone à partir de Linux
*
* Alexandre PIEL
* http://piel.alex.free.fr/
*/

#include <stdio.h>
#include <usb.h>
#include <errno.h>

usb_dev_handle *locate(void);

int main ()
{
	struct usb_dev_handle *handle;
	struct usb_device *device;
	int send_status;
	int open_status;
	
	printf("** iPhone Linux Charge by Alexandre PIEL :: http://piel.alex.free.fr/ **\n\n");

	usb_init();
	//~ usb_set_debug(2);
	if ((handle = locate())==0)
	{
		printf("Could not open the device\n");
		return (-1);
	}

	printf("\n\t\tChargement en cours.\n\n\nNe fermer pas l'application...\n");
	for (;;)
		sleep(5000);
	
	usb_close(handle);
}

usb_dev_handle *locate(void)
{
	struct usb_bus *bus;
	struct usb_device *dev;
	usb_dev_handle *device_handle = 0;

	usb_find_busses();
	usb_find_devices();
	usleep(5000);
	usb_find_devices();

	for (bus = usb_busses; bus; bus = bus->next)
	{
		for (dev = bus->devices; dev; dev = dev->next)
		{
			if (dev->descriptor.idVendor == 0x05ac && dev->descriptor.idProduct == 0x1290)
			{
				device_handle = usb_open(dev);
				if(device_handle != 0)
				{
					return (device_handle);
				}
				else
				{
					printf("err: device Handle is zero \n");
					return (0);
				}
			}
		}
	}
	return (0);
}

Conclusion

Have fun
 

Commentaires et avis

signaler à un administrateur
Commentaire de max12 le 08/11/2007 04:19:50 administrateur CS 8/10

C'est tellement rare du code pour tux faut fêter ça :O

signaler à un administrateur
Commentaire de jege_ieta le 08/11/2007 11:07:24

le probleme c'est que ça sert plus à rien ...
Avec Ubuntu 7.04, ça pouvait etre utile mais depuis 7.10, le fonctionnement est automatique. Apres que connais pas pour les autres versions....

signaler à un administrateur
Commentaire de abdoulax le 08/11/2007 16:16:34

Oui mais y a pas que Ubuntu!! Ce que j'ai dit dans la description "Le chargement d'un iphone sous Linux ne marche pas dans tous les cas! ". Car j'ai essayé de le brancher sur une Ubuntu et effet sa marché très bien. Mais moi je suis sous Debian, avec Xfce, et la sa marche plus... Enfin sa dépand des distribs, etc...

Il doit surement y avoir d'autre moyen, par exemple en configurant Hal, mais pour moi sa n'a pas marché, après on peut aussi jouer avec udev, mais la je sais pas faire.

Enfin voilà, c'est un outils, de plus ce code pourrait être modifier pour aller plus loins...

Have fun

signaler à un administrateur
Commentaire de jege_ieta le 08/11/2007 19:34:51

je sais que ça depend des distrib....mais j'avais utilisé le code qu'on trouve ici : http://mattcolyer.com/projects/iphone-module/

Perso, j'ai un Iphone (1.1.1) et un pc Linux, mais je ne me connecte qu'en SSH dessus pour charger mes icones perso.

signaler à un administrateur
Commentaire de abdoulax le 08/11/2007 20:49:28

Hum la je parle de la batterie !! C'est bien pour la batterie que tu dis que sa fonctionne automatiquement. Car si c'est pour avoir accés au donnée du iphone via le câble et sur linux, je migre en mode ubuntu !! ??

Have fun

signaler à un administrateur
Commentaire de ouhab le 29/03/2009 13:08:16

bonjour tout le monde

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Recuperation de la charge CPU sous linux [ par kobee12 ] J'aimerais recuperer la charge CPU sous linux comme le fait la commande top ( CPU : 2.0% user, )Je ne trouve pas de fonction qui le fasse.J'ai essaye Communiquer avec un port USB en Linux [ par yasmin ] Salut @ tous Je developpe le driver d'un microcontrolleur sur linux et je voudrais savoir comment communiquer avec le port USB en C et sur linux. D'ap linux [ par angsthase ] Salut &#224; tous!!! Je voudrais communiquer avec le port usb!!! sous linux. J'utilise un adaptateur sub comi (usb=&gt;RS485) qui permet de reboucler Installer un peipherique usb dans linux [ par izou ] Salutj'ai un usb modem ADSL et je veux me conn&#233;cter avec linux.ll'orsque je&nbsp;fait configuration&nbsp;internet je choisit "connection adsl" ma Sniffer USB Linux [ par ronandmcdonald ] Salut @ tous je voudrais savoir coment faire un sniffer USB sur linux. D&#233;ja savoir comment initialiser l'usb en c++. Merci @ tous!Et le programme port com avec linux [ par angsthase ] Bonjour&nbsp; &#224; tous, Je voudrais savoir comment on peut communiquer avec un port com ( plutot USB mais avec un adaptateur USB/RS485 ) sous linu linux [ par rawen ] svp vou pouvez m'aider de faire un mini compilateur en langage lex/yacc pour qu'il puisse faire compiler 3 boucles en langage C -la boucle for -la bou terminal linux [ par khanjri ] bonjour est ce que quelqu'un a deja utiliser les codes d'echappement sous un terminal linux? si oui est ce qu'il peut me dire comment lire les touches Changement d'image ds un static en mfc... [ par vincesfire ] (VC++6, MFC)Bonjour, voila g un probleme pour mon projet de BTS,g un static qui me donne le niveau d'une batterie. IL est vert qd la batterie est char Compatibilité Linux / Windows [ par angsthase ] Salut &#224; tous !!! Je voudrais savoir quel(s) condition(s) doit on avoir pour que le code soit&nbsp; transportable ? &nbsp;/* &nbsp; &nbsp; &nbsp;


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,452 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.