Difference between revisions of "Status"
(Added accelerometer, small fixes) |
|||
(52 intermediate revisions by 8 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" 6G]]<ref name="nano6g7g"/> !! [[Nano 7G|"Nano" 7G]]<ref name="nano6g7g"/> !! [[Classic 1G]] !! [[Classic 2G]] !! [[Classic 3G]] | |
− | |||
− | {| | ||
− | ! !! 2G Nano !! | ||
|- | |- | ||
| Code execution | | Code execution | ||
| <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:green">'''Yes'''</span> | | <span style="color:green">'''Yes'''</span> | ||
− | | <span style="color:red">''' | + | | <span style="color:green">'''Tethered'''</span> |
− | | <span style="color:red">''' | + | | <span style="color:red">'''No'''<ref name="newexploit"/></span> |
+ | | <span style="color:red">'''No'''<ref name="newexploit"/></span> | ||
+ | | <span style="color:green">'''Yes'''</span> | ||
+ | | <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> | | <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> | ||
+ | |- | ||
+ | | [[U-Boot]] | ||
| <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: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:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
Line 34: | Line 40: | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
|- | |- | ||
− | | | + | | [[emCORE]] |
| <span style="color:green">'''Yes'''</span> | | <span style="color:green">'''Yes'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
Line 41: | Line 47: | ||
| <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: | + | | <span style="color:green">'''Yes'''</span> |
+ | | <span style="color:green">'''Yes'''</span> | ||
+ | | <span style="color:green">'''Yes'''</span> | ||
|- | |- | ||
− | | | + | | Boot [[OSOS]] |
| <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:grey">'''No'''<ref name="tethered"/></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: | + | | <span style="color:green">'''Yes'''</span> |
+ | | <span style="color:green">'''Yes'''</span> | ||
+ | | <span style="color:green">'''Yes'''</span> | ||
|- | |- | ||
− | | | + | | SDRAM |
| <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:grey">'''No'''<ref name="tethered"/></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> | ||
+ | |- | ||
+ | | 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: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: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> | ||
+ | |- | ||
+ | | SPI | ||
+ | | <span style="color:grey">'''Unused'''</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> | ||
Line 69: | Line 102: | ||
| <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: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: | + | | <span style="color:green">'''Yes'''</span> |
− | | <span style="color: | + | | <span style="color:green">'''Yes'''</span> |
− | | <span style="color: | + | | <span style="color:green">'''Yes'''</span> |
|- | |- | ||
− | | | + | | Backlight |
| <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: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: | + | | <span style="color:green">'''Yes'''</span> |
− | | <span style="color: | + | | <span style="color:green">'''Yes'''</span> |
+ | | <span style="color:green">'''Yes'''</span> | ||
|- | |- | ||
− | | | + | | LCD |
| <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: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: | + | | <span style="color:green">'''Yes'''</span> |
− | | <span style="color: | + | | <span style="color:green">'''Yes'''</span> |
+ | | <span style="color:green">'''Yes'''</span> | ||
|- | |- | ||
− | | | + | | Clickwheel |
− | | <span style="color:green">''' | + | | <span style="color:green">'''Yes'''</span> |
− | | <span style="color: | + | | <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> | ||
+ | | <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:green">'''Yes'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
Line 113: | Line 157: | ||
| <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: | + | | <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:green">'''Yes'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
Line 122: | Line 168: | ||
| <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: | + | | <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: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> | ||
| <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: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> | ||
− | |||
− | |||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
Line 174: | Line 205: | ||
| <span style="color:red">'''No'''</span> | | <span style="color:red">'''No'''</span> | ||
|- | |- | ||
− | | | + | | Accelerometer |
− | | <span style="color: | + | | <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: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="newexploit">We need a new exploit to execute code on this device.</ref> | ||
+ | <ref name="uartnotneeded">UART is not really needed here as we can already access the device via USB.</ref> | ||
+ | <ref name="nano6g7g">The "Nano" 6G and 7G are something entirely new, that doesn't seem to have much in common with the older generations of the Nano series. We don't yet know how these devices works and if we want to do something with them at all.</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 18:51, 9 January 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.
Nano 2G | Nano 3G | Nano 4G | Nano 5G | "Nano" 6G[1] | "Nano" 7G[1] | Classic 1G | Classic 2G | Classic 3G | |
---|---|---|---|---|---|---|---|---|---|
Code execution | Yes | Yes | Yes | Tethered | No[2] | No[2] | 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 OSOS | Yes | Yes | No | No[3] | No | No | Yes | Yes | Yes |
SDRAM | Yes | No | Yes | No[3] | No | No | Yes | Yes | Yes |
UART | Yes | Yes | No[4] | 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 The "Nano" 6G and 7G are something entirely new, that doesn't seem to have much in common with the older generations of the Nano series. We don't yet know how these devices works and if we want to do something with them at all.
- ↑ 2.0 2.1 We need a new exploit to execute code on this device.
- ↑ 3.0 3.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.