Samsung Z5
Introduction
The Z5 has 4 tactile buttons and a touchpad.
Screen resolution: 128 x 160 (RGB)
Firmware
2 firmware updates are available here:
http://www.anythingbutipod.com/forum/showthread.php?t=32690. The update is performed by placing the
Z5Update.dat file in the root of the player or the System/Data folder, depending on the current version you're player is running.
Partitions
| Name |
Offset |
Length |
| ufd0p0 |
16 |
16 (4096 KB) |
| ufd0p1 |
32 |
16 (4096 KB) |
| ufd0p2 |
48 |
64 (16384 KB) |
| ufd0p3 |
112 |
128 (32768 KB) |
| ufd0p4 |
240 |
3692 (945152 KB) |
Update process
With the help of the Z5 updater (recovery) application we can restore the firmware through the STMP3600 recovery mode. A updater.sb as sent to the device. This ~1,8MB file is really complex since it includes some code to load a linux kernel with a rootfs-based recovery...Then a z5-fw.dat is sent to the user memory (through UMS) and the process of decryption + flashing begins!
In the rootfs I extracted I found lots of interesting things: among these
perhaps we can start some scripting through a start.sh placed into user memory!
Z5Update?.dat is a mixture of plain and encrypted bytes.
| Meaning |
Offset |
Length |
| Header |
0 |
0x38 |
| Data |
0x38 |
Size of the data |
| MD5 Encrypted data |
0x38 + Size of the data |
0x10 |
| Header info |
Offset |
Length |
| Signature (SAMSUNG YEPP) |
0 |
0xC |
| Unknown |
0xC |
0x4 |
| Version |
0x10 |
0x8 |
| Region Code |
0x18 |
0x4 |
| Unknown (revision ?) |
0x1C |
0x4 |
| Model |
0x20 |
0x14 |
| Size of the data |
0x34 |
0x4 |
Modes
To get the player to present itself as a STMP3600/Player Recovery Class device, hold the middle select button while connecting to USB from the off state. Keep in mind that this device has a sleep mode and the only way to truly turn it off is by pressing in the reset button on the bottom.
Insides
Schematics & Stuff
YP-Z5 Schematics, Service Manual & more!
- Touchpad = ADC source + PINS (I guess to detect movement in action...or a press!!)
- FMRadio = is optional, but may be present (implement I2C? and probe the magic)
| ADCChannel |
Usage |
| ADC0 |
Tactile Buttons |
| ADC1 |
Microphone Power? |
| ADC2 |
Touchpad AX- |
| ADC3 |
Touchpad AY- |
| ADC4 |
Touchpad AX+ |
| ADC5 |
Touchpad AY+ |
| GPIO/other pins |
Usage |
Default State |
Direction |
| PSWITCH |
Power_Toggle |
L |
I |
| SSP_DATA1 |
SDRAM_PWR |
N/A |
| GPMI_D00 |
Boot mode |
N/A |
| GPMI_D01 |
Boot mode |
N/A |
| GPMI_D02 |
Boot mode |
N/A |
| GPMI_D03 |
Boot mode |
N/A |
| GPMI_D09 |
LCD_RD |
N/A |
| GPMI_D10 |
FM_BUS (toggle power) |
N/A |
| GPMI_D12 |
USB_Detect |
N/A |
| GPMI_D13 |
Hold_SW |
N/A |
| PWM2 |
LCD_TP (toggle power?) |
N/A |
| PWM3 |
BLU_ON_LCD |
N/A |
| LCD_BUSY |
Touchpad TY- |
N/A |
O |
| ROTARYA |
Touchpad TX- |
N/A |
O |
| SSP_CMD |
Touchpad TY+ |
N/A |
I |
| SSP_DETECT |
Touchpad TX+ |
N/A |
I |
| SSP_DATA2 |
FM_INT (interrupt) |
N/A |
| UART2_CTS |
MUTE_ON |
N/A |
O |
| ROTARYB |
DTV_DETECT |
N/A |
I/O |
There are 2 UARTs. Need to see the output by using the original firmware. Some strings could be useful to decode/decrypt sb files and/or
Z5Update?.dat file...
Useful Links
Copyright © by the contributing authors.