Palm LifeDrive Hardware
Home | Status | Hardware | Downloads | How-To | GaruxPhotos
-
Some (not particularly useful) internal photos of the LifeDrive are
available (PDF) from the
FCC filing search. The LifeDrive's FCC ID is O3W830.
-
These pictures are not of the final shipped version, note for example the 5 GB Seagate drive in the images.
-
Small photo of a backless regular LifeDrive.
-
German forum thread about replacing the microdrive with a flash card containing several images.
-
Really cool pictures of dissected Palm LifeDrive
-
Antenna Chip Most likely the
Rufa
Specifications
-
General Device Specification
-
This device was produced by Palm
-
CPU
-
Intel 416mhz XScale PXA270 (rev 7)
-
Product page for PXA27x Family
-
Datasheet (PDF) for the PXA270
-
ROM
-
4M-bit (512k) Macronix 29LV400BXBC-76 that contains bootloader
-
RAM
-
32MB (256Mbit)
Infineon Mobile-RAM HYB25L256160AC-7.5
-
4MB used as HDD cache by PalmOS
-
Hard Disk
-
Hitachi 4GB microdrive
-
64MB "program memory" partition acts like the RAM on the earlier Palms.
-
3.85GB data storage appears as an expansion card to Palm OS programs.
-
Compact Flash connected directly to CPU.
-
Intel:
Connecting the Intel® PXA27x Processor Family to a Hard-Disk Drive via the VLIO Memory Interface (PDF)
-
PalmOS seems to operate it in True-IDE mode. Not sure whether this is hard wired or if we can change it. We need to power cycle the HDD while holding OE non-grounded.
-
Display
-
Sharp LQ038J7DH53 320x480 transreflective TFT.
-
Touchscreen
-
Wolfson Microelectronics WM9712 AC'97 and Touchpanel codec
-
SD/SDIO/MMC
-
Uses the PXA270's internal controller.
-
Wi-fi (802.11b)
-
SyChip 6061
-
Linux is listed as supported OS. Could it be a closed source driver?
-
SyChip has been
bought by muRata Mfg. Co. Ltd. on 13th of April 2006.
-
There is a package in the ROM called 8305fw which appears to be for the Wi-fi. It contains the string "8305 fw 03-70-51A 2005/02/02/60232".
-
SyChip WLAN6061EB is based on Marvell Libertas 88W8305 chipset
-
Bluetooth
-
BCM2035B1
-
According to product brief, probably two GPIO pins BT_WAKE (out) and HOST_WAKE (in).
-
Probably uses the PXA270's BTUART.
-
Palm Multi Connector
-
18 pin connector as used in the Tungsten T5 and Treo 650
-
Described in the
Developer Guide (PDF)
-
Serial pins (this is 3.3v logic, so don't directly wire to a PC serial port, you'll need to level shift):
-
5 DGND
-
7 TXD
-
8 RXD
-
That's counting from the side with the power connector and counting pin 1 as the little rectangular cable shield hole.
-
USB EZ-USB SX2(TM) High-Speed USB Interface Device
-
CY7C68001 EZ-USB SX2 USB 2.0
-
Does not appear to use either the PXA270's USB 1.1 host or gadget controller.
-
Infrared
-
TFBS4710 Serial Infrared Transceiver SIR
MMU configuration
| Virtual address | Physical address | Function |
| 0x00100000-0x001FFFFF | 0xA0100000-0xA01FFFFF | SDRAM |
| 0x00200000-0x007FFFFF | 0xA1A00000-0xA1FFFFFF | SDRAM |
| 0x10000000-0x10FFFFFF | 0x00000000-0x00FFFFFF | Chip Select 0: 512k ROM |
| 0x20000000-0x20FFFFFF | 0xA0200000-0xA11FFFFF | SDRAM |
| 0x28000000-0x28FFFFFF | 0x08000000-0x08FFFFFF | Chip select 1/2: EZ-USB chip |
| 0x58000000-0x585FFFFF | 0xA1A00000-0xA1FFFFFF | SDRAM |
| 0x60000000-0x600FFFFF | 0x5C000000-0x5C0FFFFF | XScale internal memory storage |
| 0x90000000-0x9FFFFFFF | 0x40000000-0x4FFFFFFF | Intel XScale CPU registers |
| 0xA0000000-0xA00FFFFF | 0xA0000000-0xA00FFFFF | SDRAM |
| 0xA8000000-0xA80FFFFF | 0x58000000-0x580FFFFF | XScale internal memory control |
| 0xAC000000-0xAC0FFFFF | 0x5C000000-0x5C0FFFFF | XScale internal memory storage |
| 0xB0000000-0xCFFFFFFF | 0x20000000-0x3FFFFFFF | CF Slot 0 and 1: HDD, WLAN |
Keypad matrix
All the buttons except the power switch, hold switch and reset button are connected to the PXA270's matrix keypad controller.| Pin | MKOUT0 | MKOUT1 | MKOUT2 |
| MKIN0 | unused | Folder | Nav-Up |
| MKIN1 | Picture | Star | Nav-Right |
| MKIN2 | Home | Voice memo | Nav-Down |
| MKIN3 | Rotate display | Nav-Center | Nav-Left |
LCD configuration
As set by PalmOS.| Register | Physical Offset | Value | Meaning | |||
| LCCR0 | 0x4400_0000 | 0x7b008f8 | ||||
| LCCR1 | 0x4400_0004 | 0x1f030d3f | ||||
| LCCR2 | 0x4400_0008 | 0x70801df | ||||
| LCCR3 | 0x4400_000c | 0x4700004 | ||||
| PWM (backlight) | ||||||
| PWMCR0 | 0x40b00000 | 0x00000007 | ||||
| PWMDCR0 | 0x40b00004 | 0x0000011a | ||||
| PWMPCR0 | 0x40b00008 | 0x0000016c | 363 clock cycles per PWM cycle | |||
GPIO configuration
| GPIO# | Direction | State | AFR | Interrupt | Function | |
| 0 | In | 1 | 0 | |||
| 1 | In | 1 | 0 | Reset | ||
| 2 | In | 1 | 0 | Reserved | ||
| 3 | In | 1 | 0 | RE FE | USB connected | |
| 4 | In | 1 | 0 | RE FE | External power connected | |
| 5 | In | 1 | 0 | Reserved | ||
| 6 | In | 1 | 0 | Reserved | ||
| 7 | In | 1 | 0 | Reserved | ||
| 8 | In | 1 | 0 | Reserved | ||
| 9 | In | 0 | 0 | |||
| 10 | In | 1 | 0 | FE | Hotsync button (N) | |
| 11 | In | 0 | 0 | RE | ||
| 12 | In | 0 | 0 | RE | Power switch | |
| 13 | In | 0 | 0 | RE FE | Earphones detected | |
| 14 | In | 0 | 0 | RE FE | SD card inserted | |
| 15 | In | 0 | 0 | RE FE | Keypad lock switch | |
| 16 | Out | 1 | 2 | FFTXD | ||
| 17 | Out | 1 | 0 | Bluetooth: 1 when enabled (Power/Reset_N/Wake?) | ||
| 18 | In | 1 | 1 | USB - SX2 READY PIN (only with "dvt" - probably LD prototype), see GPIO86 | ||
| 19 | Out | 1 | 0 | LCD power? (screen goes white when 0) | ||
| 20 | In | 1 | 0 | USB - SX2 FIFO FLAG PIN (A,B,C - ?) | ||
| 21 | Out | 0 | 0 | LCD Border switch (change GPIO22 and move this High and back Low) | ||
| 22 | Out | 0 | 0 | LCD Border select state | ||
| 23 | In | 1 | 0 | |||
| 24 | In | 1 | 0 | |||
| 25 | Out | 0 | 2 | SSPTXD | ||
| 26 | In | 1 | 1 | SSPRXD | ||
| 27 | In | 0 | 0 | RE | Connected to WM9712's GPIO 2 (IRQ) | |
| 28 | In | 1 | 1 | AC97_BITCLK | ||
| 29 | In | 0 | 1 | AC97_SDATA_IN_0 | ||
| 30 | Out | 0 | 2 | AC97_SDATA_OUT | ||
| 31 | Out | 0 | 2 | AC97_SYNC | ||
| 32 | Out | 0 | 0 | MMCCLK | ||
| 33 | Out | 1 | 1 | DVAL<1> | ||
| 34 | In | 1 | 0 | RE FE | ||
| 35 | In | 1 | 1 | FFCTS (cts not on connecter, could be used as device detect?) | ||
| 36 | Out | 1 | 0 | WLAN: power | ||
| 37 | In | 1 | 0 | |||
| 38 | In | 1 | 0 | FE | PCMCIA IRQ | |
| 39 | In | 1 | 0 | RE FE | ||
| 40 | In | 0 | 0 | External power connected | ||
| 41 | Out | 1 | 2 | FFRTS (rts not on connecter, could be used as power control?) | ||
| 42 | In | 1 | 1 | FFRXD | ||
| 43 | Out | 1 | 2 | BTTXD | ||
| 44 | In | 1 | 1 | BTCTS | ||
| 45 | Out | 1 | 2 | BTRTS | ||
| 46 | In | 1 | 2 | FICP_RXD | ||
| 47 | Out | 0 | 1 | FICP_TXD | ||
| 48 | Out | 1 | 2 | nPOE (PC Card) | ||
| 49 | Out | 1 | 2 | nPWE | ||
| 50 | Out | 1 | 2 | nPIOR | ||
| 51 | Out | 1 | 2 | nPIOW | ||
| 52 | Out | 1 | 0 | Green LED | ||
| 53 | In | 0 | 0 | |||
| 54 | Out | 1 | 2 | nPCE<2> | ||
| 55 | Out | 1 | 2 | nPREG | ||
| 56 | In | 1 | 1 | nPWAIT | ||
| 57 | In | 0 | 1 | nIOIS16 | ||
| 58 | Out | 1 | 2 | LDD<0> (LCD display data lines) | ||
| 59 | Out | 1 | 2 | LDD<1> | ||
| 60 | Out | 1 | 2 | LDD<2> | ||
| 61 | Out | 1 | 2 | LDD<3> | ||
| 62 | Out | 1 | 2 | LDD<4> | ||
| 63 | Out | 1 | 2 | LDD<5> | ||
| 64 | Out | 1 | 2 | LDD<6> | ||
| 65 | Out | 1 | 2 | LDD<7> | ||
| 66 | Out | 1 | 2 | LDD<8> | ||
| 67 | Out | 1 | 2 | LDD<9> | ||
| 68 | Out | 1 | 2 | LDD<10> | ||
| 69 | Out | 1 | 2 | LDD<11> | ||
| 70 | Out | 1 | 2 | LDD<12> | ||
| 71 | Out | 1 | 2 | LDD<13> | ||
| 72 | Out | 1 | 2 | LDD<14> | ||
| 73 | Out | 1 | 2 | LDD<15> | ||
| 74 | Out | 1 | 2 | L_FCLK_RD | ||
| 75 | Out | 1 | 2 | L_LCLK_A0 | ||
| 76 | Out | 0 | 2 | L_PCLK_WR | ||
| 77 | Out | 1 | 2 | L_BIAS | ||
| 78 | Out | 1 | 2 | nCS<2> | ||
| 79 | Out | 0 | 1 | PSKTSEL | ||
| 80 | In | 1 | 1 | DREQ<1> | ||
| 81 | Out | 0 | 0 | WLAN: reset | ||
| 82 | In | 1 | 0 | |||
| 83 | Out | 0 | 0 | Bluetooth: 1 when enabled (Power/Reset_N/Wake?) | ||
| 84 | Out | 1 | 0 | LCD backlight | ||
| 85 | Out | 1 | 1 | nPCE<1> | ||
| 86 | In | 1 | 0 | USB - SX2 READY PIN (on "dvt2" - probably LD production model) | ||
| 87 | Out | 0 | 0 | |||
| 88 | Out | 1 | 0 | USB - SX2 RESET PIN | ||
| 89 | Out | 1 | 1 | AC97_SYSCLK | ||
| 90 | In | 1 | 0 | USB - SX2 INTR# PIN | ||
| 91 | Out | 0 | 0 | Serial port power | ||
| 92 | Out | 0 | 0 | MMCDAT0 | ||
| 93 | Out | 1 | 0 | |||
| 94 | Out | 1 | 0 | Orange LED | ||
| 95 | In | 0 | 0 | HDD READY/RDY/IREQ | ||
| 96 | Out | 1 | 0 | LCD power? (screen goes white when 0) | ||
| 97 | In | 0 | 3 | MKIN3: Rotate-display, Nav-center, Nav-left buttons | ||
| 98 | Out | 1 | 0 | HDD reset | ||
| 99 | Out | 0 | 0 | |||
| 100 | In | 0 | 1 | MKIN0: Folder, Nav-up buttons | ||
| 101 | In | 0 | 1 | MKIN1: Picture, Star, Nav-right buttons | ||
| 102 | In | 0 | 1 | MKIN2: Home, Voice memo, Nav-down buttons | ||
| 103 | Out | 1 | 2 | MKOUT0: Picture, Home, Rotate-display | ||
| 104 | Out | 0 | 2 | MKOUT1: Folder, Star, Voice memo, Nav-center | ||
| 105 | Out | 1 | 2 | MKOUT2: Nav-up, Nav-right, Nav-down, Nav-left | ||
| 106 | In | 0 | 0 | USB - SX2 FIFO FLAG PIN (A,B,C - ?) | ||
| 107 | In | 0 | 0 | |||
| 108 | Out | 0 | 0 | Infrared shutdown | ||
| 109 | Out | 0 | 0 | MMCDAT1 | ||
| 110 | Out | 0 | 0 | MMCDAT2 | ||
| 111 | Out | 0 | 0 | MMCDAT3 (HDD?) | ||
| 112 | Out | 0 | 0 | MMCCMD | ||
| 113 | Out | 1 | 0 | |||
| 114 | Out | 1 | 0 | SD power | ||
| 115 | Out | 0 | 0 | HDD power | ||
| 116 | In | 0 | 0 | SD readonly switch | ||
| 117 | Out | 1 | 0 | |||
| 118 | Out | 1 | 0 | USB - SX2 POWER PIN | ||
| 119 | In | 1 | 0 | |||
| 120 | In | 1 | 0 | |||
Legend:
-
Direction: In - input, Out - output, In/Out - bidirectional
-
State: pin level, GPLR
-
AFR (Alternate Function Number): 0-3, GAFR
-
Interrupt (status): Rising Edge (RE), Falling Edge (FE)
-
Function - description