Difference between revisions of "Status"
m (Protected "Status" ([edit=autoconfirmed] (indefinite) [move=autoconfirmed] (indefinite)))  | 
				User890104 (talk | contribs)   | 
				||
| (90 intermediate revisions by 13 users not shown) | |||
| Line 1: | Line 1: | ||
| − | This status is based on the progress the   | + | <!--  | 
| + | {{outdated|reason=This page is not updated anymore, please refer to [https://www.rockbox.org/ Rockbox's website] for a list of supported iPod models.}}  | ||
| + | -->  | ||
| + | This status is based on the progress the freemyipod team has made so far. This is mostly a summary of reverse engineering and 'janitorial' work required to run end-user software like Rockbox or Linux.  | ||
| − | {|   | + | {| class="wikitable"  | 
| − | !  !!   | + | !  !! [[Nano 2G]] !! [[Nano 3G]] !! [[Nano 4G]] !! [[Nano 5G]] !! [[Nano 6G]] !! [[Nano 7G]] !! [[Classic 1G]] !! [[Classic 2G]] !! [[Classic 3G]]  | 
|-  | |-  | ||
| − | |   | + | | Code execution  | 
| − | | Yes  | + | | <span style="color:green">'''Yes'''</span>  | 
| − | | Yes  | + | | <span style="color:green">'''Yes'''</span>  | 
| − | | Yes  | + | | <span style="color:green">'''Yes'''</span>  | 
| − | |   | + | | <span style="color:green">'''Tethered'''</span>  | 
| − | | Yes  | + | | <span style="color:green">'''Yes'''<ref name="nano6g7g"/></span>  | 
| − | | Yes  | + | | <span style="color:green">'''Yes'''<ref name="nano6g7g"/></span>  | 
| − | | Yes  | + | | <span style="color:green">'''Yes'''</span>  | 
| − | | Yes  | + | | <span style="color:green">'''Yes'''</span>  | 
| − | |   | + | | <span style="color:green">'''Yes'''</span>  | 
|-  | |-  | ||
| − | |   | + | | Firmware decryption  | 
| − | |   | + | | <span style="color:green">'''Yes'''</span>  | 
| − | |   | + | | <span style="color:green">'''Yes'''</span>  | 
| − | |   | + | | <span style="color:green">'''Yes'''</span>  | 
| − | |   | + | | <span style="color:green">'''Yes'''</span>  | 
| − | | No  | + | | <span style="color:red">'''No'''</span>  | 
| − | | No  | + | | <span style="color:red">'''No'''</span>  | 
| − | |   | + | | <span style="color:green">'''Yes'''</span>  | 
| − | |   | + | | <span style="color:green">'''Yes'''</span>  | 
| − | |   | + | | <span style="color:green">'''Yes'''</span>  | 
|-  | |-  | ||
| − | |   | + | | [[U-Boot]]  | 
| − | | No  | + | | <span style="color:red">'''No'''</span>  | 
| − | | No  | + | | <span style="color:red">'''No'''</span>  | 
| − | | No  | + | | <span style="color:red">'''No'''</span>  | 
| − | |   | + | | <span style="color:green">'''Yes'''</span>  | 
| − | | No  | + | | <span style="color:red">'''No'''</span>  | 
| − | | No  | + | | <span style="color:red">'''No'''</span>  | 
| − | | No  | + | | <span style="color:red">'''No'''</span>  | 
| − | | No  | + | | <span style="color:red">'''No'''</span>  | 
| − | | No  | + | | <span style="color:red">'''No'''</span>  | 
|-  | |-  | ||
| − | |   | + | | [[emCORE]]  | 
| − | | Yes  | + | | <span style="color:green">'''Yes'''</span>  | 
| − | | No  | + | | <span style="color:red">'''No'''</span>  | 
| − | | Yes  | + | | <span style="color:green">'''Yes'''</span>  | 
| − | | No  | + | | <span style="color:red">'''No'''</span>  | 
| − | | No  | + | | <span style="color:red">'''No'''</span>  | 
| − | | No  | + | | <span style="color:red">'''No'''</span>  | 
| − | |   | + | | <span style="color:green">'''Yes'''</span>  | 
| − | |   | + | | <span style="color:green">'''Yes'''</span>  | 
| − | |   | + | | <span style="color:green">'''Yes'''</span>  | 
|-  | |-  | ||
| − | |   | + | | Boot [[OSOS]]  | 
| − | | No  | + | | <span style="color:green">'''Yes'''</span>  | 
| − | | No  | + | | <span style="color:green">'''Yes'''</span>  | 
| − | | No  | + | | <span style="color:red">'''No'''</span>  | 
| − | | No  | + | | <span style="color:grey">'''No'''<ref name="tethered"/></span>  | 
| − | | No  | + | | <span style="color:red">'''No'''</span>  | 
| − | | No  | + | | <span style="color:red">'''No'''</span>  | 
| − | | No  | + | | <span style="color:green">'''Yes'''</span>  | 
| − | | No  | + | | <span style="color:green">'''Yes'''</span>  | 
| − | | No  | + | | <span style="color:green">'''Yes'''</span>  | 
| + | |-  | ||
| + | | SDRAM  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:grey">'''No'''<ref name="tethered"/></span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | |-  | ||
| + | | UART  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:grey">'''No'''<ref name="uartnotneeded"/></span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | |-  | ||
| + | | USB  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | |-  | ||
| + | | SPI  | ||
| + | | <span style="color:grey">'''Unused'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | |-  | ||
| + | | I2C  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | |-  | ||
| + | | Backlight  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | |-  | ||
| + | | LCD  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | |-  | ||
| + | | Clickwheel  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | |-  | ||
| + | | Audio  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | |-  | ||
| + | | NAND/Hard Drive  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | |-  | ||
| + | | Power management  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:grey">'''Partially'''</span>  | ||
| + | | <span style="color:grey">'''Partially'''</span>  | ||
| + | | <span style="color:grey">'''Partially'''</span>  | ||
| + | |-  | ||
| + | | RTC  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | |-  | ||
| + | | Piezo  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | |-  | ||
| + | | Accelerometer  | ||
| + | | <span style="color:grey">'''N/A'''</span>  | ||
| + | | <span style="color:grey">'''N/A'''</span>  | ||
| + | | <span style="color:green">'''Yes'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:red">'''No'''</span>  | ||
| + | | <span style="color:grey">'''N/A'''</span>  | ||
| + | | <span style="color:grey">'''N/A'''</span>  | ||
| + | | <span style="color:grey">'''N/A'''</span>  | ||
|}  | |}  | ||
| + | |||
| + | ===Annotations===  | ||
| + | <references>  | ||
| + | <ref name="uartnotneeded">UART is not really needed here as we can already access the device via USB.</ref>  | ||
| + | <ref name="nano6g7g">Nano 6G and Nano 7G code execution is implemented using CVE-2010-1797</ref>  | ||
| + | <ref name="tethered">Nano 5G support is implemented in a tethered fashion via wInd3x, where we re-use parts of the original Apple boot chain which negates the need of some features.</ref>  | ||
| + | </references>  | ||
Latest revision as of 16:34, 30 December 2023
This status is based on the progress the freemyipod team has made so far. This is mostly a summary of reverse engineering and 'janitorial' work required to run end-user software like Rockbox or Linux.
| iPod nano (2nd generation) | iPod nano (3rd generation) | iPod nano (4th generation) | iPod nano (5th generation) | iPod nano (6th generation) | iPod nano (7th generation) | iPod classic (6th generation) | iPod classic (6th generation) | iPod classic (6th generation) | |
|---|---|---|---|---|---|---|---|---|---|
| Code execution | Yes | Yes | Yes | Tethered | Yes[1] | Yes[1] | Yes | Yes | Yes | 
| Firmware decryption | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | 
| U-Boot | No | No | No | Yes | No | No | No | No | No | 
| emCORE | Yes | No | Yes | No | No | No | Yes | Yes | Yes | 
| Boot retailOS | Yes | Yes | No | No[2] | No | No | Yes | Yes | Yes | 
| SDRAM | Yes | No | Yes | No[2] | No | No | Yes | Yes | Yes | 
| UART | Yes | Yes | No[3] | Yes | No | No | Yes | Yes | Yes | 
| USB | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | 
| SPI | Unused | Yes | No | No | No | No | Yes | Yes | Yes | 
| I2C | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | 
| Backlight | Yes | No | Yes | No | No | No | Yes | Yes | Yes | 
| LCD | Yes | No | Yes | No | No | No | Yes | Yes | Yes | 
| Clickwheel | Yes | Yes | No | No | No | No | Yes | Yes | Yes | 
| Audio | Yes | No | No | No | No | No | Yes | Yes | Yes | 
| NAND/Hard Drive | Yes | No | No | No | No | No | Yes | Yes | Yes | 
| Power management | Yes | No | No | No | No | No | Partially | Partially | Partially | 
| RTC | Yes | No | No | No | No | No | Yes | Yes | Yes | 
| Piezo | Yes | No | No | No | No | No | No | No | No | 
| Accelerometer | N/A | N/A | Yes | No | No | No | N/A | N/A | N/A | 
Annotations
- ↑ 1.0 1.1 Nano 6G and Nano 7G code execution is implemented using CVE-2010-1797
 - ↑ 2.0 2.1 Nano 5G support is implemented in a tethered fashion via wInd3x, where we re-use parts of the original Apple boot chain which negates the need of some features.
 - ↑ UART is not really needed here as we can already access the device via USB.