Difference between revisions of "Recovery Mode (Protocols)"

From The iPhone Wiki
Jump to: navigation, search
Line 1: Line 1:
  +
==Recovery Mode 1.0 (DevID=0x1280)==
 
This is the old [[Recovery Mode]] protocol.
 
This is the old [[Recovery Mode]] protocol.
   
==Implementions==
+
===Implementions===
 
*[http://lpahome.com/geohot/iphonere.rar kernel driver]
 
*[http://lpahome.com/geohot/iphonere.rar kernel driver]
 
*[http://www.iphonelinux.org/index.php/IBooter iBooter]
 
*[http://www.iphonelinux.org/index.php/IBooter iBooter]
  +
  +
==Recovery Mode 2.0 (DevID=0x1281)==
  +
This is the new [[Recovery Mode]] protocol used in 2.0 iBoots.
  +
  +
===Commands===
  +
usb_control_msg(idev, 0xA1, 3, 0, 0, buf, 6, 1000); //get status
  +
usb_control_msg(idev, 0x40, 0, 0, 0, buf, strlen(buf), 1000); //send command
  +
usb_control_msg(idev, 0x21, 1, x, 0, fbuf, s, 1000); //send file
  +
  +
After sending a file, request the status several times. Also increment x as you send.
  +
  +
It also has another interface which appears like a USB to serial converter.

Revision as of 22:21, 5 February 2009

Recovery Mode 1.0 (DevID=0x1280)

This is the old Recovery Mode protocol.

Implementions

Recovery Mode 2.0 (DevID=0x1281)

This is the new Recovery Mode protocol used in 2.0 iBoots.

Commands

usb_control_msg(idev, 0xA1, 3, 0, 0, buf, 6, 1000); //get status
usb_control_msg(idev, 0x40, 0, 0, 0, buf, strlen(buf), 1000); //send command
usb_control_msg(idev, 0x21, 1, x, 0, fbuf, s, 1000); //send file

After sending a file, request the status several times. Also increment x as you send.

It also has another interface which appears like a USB to serial converter.