Neo FreeRunner Hardware

From Openmoko

Revision as of 16:41, 24 January 2008 by Flerchjj (Talk | contribs)

Jump to: navigation, search

OpenMoko is a software distribution stack that sits on top of a hardware platform. The Neo1973 GTA02 phone is the first hardware platform to take advantage of OpenMoko. You can find specifics of the Neo1973 Hardware by reviewing this introduction page and the pages in the category as shown at the bottom of this page.

NOTE: This page is about hardware that is currently in design/prototype phase, changes are frequent


display (top) side NOTE: old GTA01 photo
component (back) side NOTE: old GTA01 photo

Contents

Physical Dimensions

  • 120.7 x 62 x 18.5 mm (4.75 x 2.44 x 0.728 inch)
  • 184 +/- 5 g (6.5 ounces)

Main components

Processor

The main Processor (CPU) of the Neo1973 GTA02 is a Samsung S3C2442B (running at 400 MHz)

Flash

256MB integrated Samsung NAND flash inside the 2442 multi-chip package, attached to the S3C2442 NAND controller

  • Product Homepage: FIXME
  • Data Sheet: FIXE
  • Connected to: S3C2442 NAND controller

12MBit NOR flash for 'unbrickable emergency boot' feature.

RAM

128MB SDRAM (64MB inside 2442 MCP, 1x Samsung K4M51323PC) attached to S3C2442 SDRAM controller

GSM/GPRS

The GSM (including GPRS) modem is Texas Instruments Calypso based.

CALYPSO digital baseband

Unfortunately we cannot provide many details on the GSM chipset due to very tight NDAs. However, this is not neccessarily required, since it interfaces using a standard UART serial line with the S3C2442. On that interface, GSM 07.05, GSM 07.10 and other standardized protocols are used.

TWL3014 analog baseband

Product Homepage: TWL3014

TRF6151 RF Transceiver

Product Homepage: TRF6151
GPRS Class12/CS4

GPS

U-blox ANTARIS 4 chip

  • Connected to: S3C2442 UART2, /dev/ttySAC1 in userspace
  • Driver: none needed, talks standard NMEA
  • Datasheet: Atmel ATR0635

microSD-Card

The Neo1973 has one microSD aka Transflash slot. It should support SDHC, and 4GB card has been tested. Anyone with 8GB card? MicroSD slot is under battery.

LCD Module (LCM)

This is a 2.8" diagonal (1.7" x 2.27" - 43mm x 58mm) 480x640 toppoly (tpo) TD028TTEC1 module, using a Toshiba JBT6K74 TFT LCD Driver Chipset.

Touch Screen

Stylus

Seemingly identical to this one on ebay

Bluetooth

Delta DFBM-CS320 Class2 Module, using CSR BlueCore4

Vibrator

USB Host

The USB Host controller is inside the S3C2442

  • Driver: Stock Linux kernel ohci_hcd
  • USB version 1.1

USB Device

The USB Device controller is inside the S3C2442

I2C Devices

The I2C is a simple communication standard intended to move small amounts of data a few inches between chips. Please see Neo I2C Devices for more information & a list of devices & the addresses currently in use & documented for the Neo1973.

Graphics

Smedia Glamo 3362.

WiFi

TBD (Atheros AR6001 based)

Audio

See also: Neo1973 Audio Subsystem

Wolfson Codec

There's a WM8753 Wolfson Microelectronics CODEC (This is not a 'smart' codec that can interpret MP3/... it is a simple dumb 'sound card'.

Stereo Amplifier

There's a National Semiconductor LM4857 Stereo Amplifier at the analog audio output of the WM8753

Analog wired Headset

There's a four-ring 2.5mm stereo jack which provides connectivity to old-fashioned wired headsets.

The headsets used by Motorola smartphones (A780,A1200, ...) and the V-360 have a compatible configuration.

Bluetooth Headset

This one is wired via PCM bus from the CSR Bluetooth chip to the Wolfson codec.

Power Management

A Philips PCF50633 is used for power management.

Battery

The Neo1973 GTA02 Battery is mechanically and electrically compatible with the Neo1973 GTA01 Battery, as well as limited compatibility with a Nokia BL5C battery. According to this post on the mailinglist. Photo of the battery inside the Neo1973.

Buttons

The Neo1973 GTA02 features two buttons:

  1. The Power Button
  2. The "Aux" button

Accelerometers

Two ST LIS302DL

History

GTA02v1

First generation of prototypes that was given to internal OpenMoko software developers.

It is working just fine, but still based on 2440, with external NAND/SDRAM and no NOR flash

  • ATAG_REVISION: FIXME

GTA02v2

Second generation of prototypes

FIXME

Debug Connector

This is the connector used to connect the Debug Board and possibly other hardware.

Connections are:

  • 39 - GND
  • 38 - STDI
  • 37 - _RESET
  • 36 - STMS
  • 35 - STCK
  • 34 - STDO
  • 33 - GSM_EN
  • 29 - _STRST
  • 19 - X_I2C_SCL (H-TP4703)
  • 18 - X_I2C_SDA (H-TP4704)
  • 17 - SPI_CLK0
  • 16 - SPI_MOSI0
  • 15 - SPI-MISO0
  • 14 - SS0
  • 13 - EINT3 (H-TP4705)
  • 3 - CONSOLE_TXD (H-TP4701)
  • 2 - CONSOLE_RXD (H-TP4702)

Information from [1].

Distinguishing hardware revisions

Inside the Bootloader

Every hardware revision has its own u-boot image type. Thus, the bootloader has the revision hard-coded. The hardware revision is passed on to the kernel via the ATAG mechanism (ATAG_REVISION)

Inside the Kernel

The kernel receives the ATAG_REVISION during bootup, and saves its contents in the "system_rev" global variable.

From Userspace

The kernel exports the system_rev variable in /proc/cpuinfo as "Revision :" line.

Approval

TBD

Personal tools

OpenMoko is a software distribution stack that sits on top of a hardware platform. The Neo1973 GTA02 phone is the first hardware platform to take advantage of OpenMoko. You can find specifics of the Neo1973 Hardware by reviewing this introduction page and the pages in the category as shown at the bottom of this page.

NOTE: This page is about hardware that is currently in design/prototype phase, changes are frequent


display (top) side NOTE: old GTA01 photo
component (back) side NOTE: old GTA01 photo

Physical Dimensions

  • 120.7 x 62 x 18.5 mm (4.75 x 2.44 x 0.728 inch)
  • 184 +/- 5 g (6.5 ounces)

Main components

Processor

The main Processor (CPU) of the Neo1973 GTA02 is a Samsung S3C2442B (running at 400 MHz)

Flash

256MB integrated Samsung NAND flash inside the 2442 multi-chip package, attached to the S3C2442 NAND controller

  • Product Homepage: FIXME
  • Data Sheet: FIXE
  • Connected to: S3C2442 NAND controller

12MBit NOR flash for 'unbrickable emergency boot' feature.

RAM

128MB SDRAM (64MB inside 2442 MCP, 1x Samsung K4M51323PC) attached to S3C2442 SDRAM controller

GSM/GPRS

The GSM (including GPRS) modem is Texas Instruments Calypso based.

CALYPSO digital baseband

Unfortunately we cannot provide many details on the GSM chipset due to very tight NDAs. However, this is not neccessarily required, since it interfaces using a standard UART serial line with the S3C2442. On that interface, GSM 07.05, GSM 07.10 and other standardized protocols are used.

TWL3014 analog baseband

Product Homepage: TWL3014

TRF6151 RF Transceiver

Product Homepage: TRF6151
GPRS Class12/CS4

GPS

U-blox ANTARIS 4 chip

  • Connected to: S3C2442 UART2, /dev/ttySAC1 in userspace
  • Driver: none needed, talks standard NMEA
  • Datasheet: Atmel ATR0635

microSD-Card

The Neo1973 has one microSD aka Transflash slot. It should support SDHC, and 4GB card has been tested. Anyone with 8GB card? MicroSD slot is under battery.

LCD Module (LCM)

This is a 2.8" diagonal (1.7" x 2.27" - 43mm x 58mm) 480x640 toppoly (tpo) TD028TTEC1 module, using a Toshiba JBT6K74 TFT LCD Driver Chipset.

Touch Screen

Stylus

Seemingly identical to this one on ebay

Bluetooth

Delta DFBM-CS320 Class2 Module, using CSR BlueCore4

Vibrator

USB Host

The USB Host controller is inside the S3C2442

  • Driver: Stock Linux kernel ohci_hcd
  • USB version 1.1

USB Device

The USB Device controller is inside the S3C2442

I2C Devices

The I2C is a simple communication standard intended to move small amounts of data a few inches between chips. Please see Neo I2C Devices for more information & a list of devices & the addresses currently in use & documented for the Neo1973.

Graphics

Smedia Glamo 3362.

WiFi

TBD (Atheros AR6001 based)

Audio

See also: Neo1973 Audio Subsystem

Wolfson Codec

There's a WM8753 Wolfson Microelectronics CODEC (This is not a 'smart' codec that can interpret MP3/... it is a simple dumb 'sound card'.

Stereo Amplifier

There's a National Semiconductor LM4857 Stereo Amplifier at the analog audio output of the WM8753

Analog wired Headset

There's a four-ring 2.5mm stereo jack which provides connectivity to old-fashioned wired headsets.

The headsets used by Motorola smartphones (A780,A1200, ...) and the V-360 have a compatible configuration.

Bluetooth Headset

This one is wired via PCM bus from the CSR Bluetooth chip to the Wolfson codec.

Power Management

A Philips PCF50633 is used for power management.

Battery

The Neo1973 GTA02 Battery is mechanically and electrically compatible with the Neo1973 GTA01 Battery, as well as limited compatibility with a Nokia BL5C battery. According to this post on the mailinglist. Photo of the battery inside the Neo1973.

Buttons

The Neo1973 GTA02 features two buttons:

  1. The Power Button
  2. The "Aux" button

Accelerometers

Two ST LIS302DL

History

GTA02v1

First generation of prototypes that was given to internal OpenMoko software developers.

It is working just fine, but still based on 2440, with external NAND/SDRAM and no NOR flash

  • ATAG_REVISION: FIXME

GTA02v2

Second generation of prototypes

FIXME

Debug Connector

This is the connector used to connect the Debug Board and possibly other hardware.

Connections are:

  • 39 - GND
  • 38 - STDI
  • 37 - _RESET
  • 36 - STMS
  • 35 - STCK
  • 34 - STDO
  • 33 - GSM_EN
  • 29 - _STRST
  • 19 - X_I2C_SCL (H-TP4703)
  • 18 - X_I2C_SDA (H-TP4704)
  • 17 - SPI_CLK0
  • 16 - SPI_MOSI0
  • 15 - SPI-MISO0
  • 14 - SS0
  • 13 - EINT3 (H-TP4705)
  • 3 - CONSOLE_TXD (H-TP4701)
  • 2 - CONSOLE_RXD (H-TP4702)

Information from [1].

Distinguishing hardware revisions

Inside the Bootloader

Every hardware revision has its own u-boot image type. Thus, the bootloader has the revision hard-coded. The hardware revision is passed on to the kernel via the ATAG mechanism (ATAG_REVISION)

Inside the Kernel

The kernel receives the ATAG_REVISION during bootup, and saves its contents in the "system_rev" global variable.

From Userspace

The kernel exports the system_rev variable in /proc/cpuinfo as "Revision :" line.

Approval

TBD