Neo 1973 hardware
From Openmoko
OpenMoko is a software distribution stack that sits on top of a hardware platform. The Neo1973 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.
Contents
|
User experiences of Phase 0 hardware
User reports of robustness
User experiences - drops onto concrete - ... Neo1973 Robustness
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)
- For the purposes of acquiring/cutting a properly sized screen protector, the display hole of the case is about 45 x 59 mm, while the top cover internal frame can house up to a 53 x 74 mm protector; sizes much larger than the display hole would obviously necessitate removing the front cover for installation.
Main components
Processor
The main Processor (CPU) of the Neo1973 is a Samsung S3C2410AL-26 (Capable of running up to 266 MHz)
- Product Homepage: S3C2410.htm
- User Manual: 2410UserManual.pdf
- BSDL File: S3C2410_BGA_BSDLJTAGFILE.bsd
- GPIO Assignments: https://svn.openmoko.org/trunk/doc/hardware/GTA01Bv4/gpio.txt
Flash
64MB Samsung NAND flash (K9F1208U0B) attached to S3C2410 NAND controller.
This is the only flash memory in the device. The S3C2410 boots directly from nand, using the S3C2410 Steppingstone.
We only use free software, no proprietary flash file systems. For a full description of how it is used, see NAND bad blocks
RAM
128MB SDRAM (2x Samsung K4M511633C) attached to S3C2410 SDRAM controller
GSM/GPRS
The GSM (including GPRS) modem is Texas Instruments Calypso based.
- Connected to: S3C2410 UART1 (full-uart, RxD, TxD, CTS, RTS), /dev/ttySAC0 in userspace
- PM Driver: https://svn.openmoko.org/trunk/src/target/kernel/patches/gta01-power_control.patch
- Accessible GSM/GPRS antenna jack (if battery cover is removed)
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 S3C2410. 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
Quad-band support
GPRS Class12/CS4
AGPS
Hammerhead PMB 2520 AGPS from Global Locate.
- Product Homepage: Hammerhead
- Connected to: S3C2410 UART2 (full-uart, RxD, TxD, CTS, RTS) /dev/ttySAC1 in userspace
- Driver: Implemented as a binary with NMEA output suitable for the gpsd daemon (gpsd)
- PM Driver: https://svn.openmoko.org/trunk/src/target/kernel/patches/gta01-power_control.patch
- Externally-accessible GPS antenna connector of type MMCX
The binary driver is going to be available really soon. Unfortunately negotiations with Global Locate are ongoing. Efforts to reverse engineer the protocol are partially detailed in Hammerhead/Protocol.
microSD-Card
The Neo1973 has one microSD aka Transflash slot. It supports SDHC. MicroSD slot is under battery.
- Connected to: S3C2410 MMC/SD controller
- Mounted to: /media/card
- Driver: https://svn.openmoko.org/trunk/src/target/kernel/patches/s3c_mci.patch
- Supported microSD cards
- Specifications: SD Simplified Specification, MMC (partial), MMC (product manual)
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.
- Homepage: Activer-Matrix-VGA.htm
- Driver: https://svn.openmoko.org/trunk/src/target/kernel/patches/gta01-jbt6k74.patch
- Backlight Driver: https://svn.openmoko.org/trunk/src/target/kernel/patches/gta01-backlight.patch
- Connected to: S3C2410 Display Controller and S3C2410 SPI Interface channel 1
- Backlight controllable via /sys/class/backlight/gta01-bl
Touch Screen
- Connected to: S3C2410 TS controller
- Driver: https://svn.openmoko.org/trunk/src/target/kernel/patches/s3c2410_touchscreen.patch
Stylus
Seemingly identical to this one on ebay
Bluetooth
Delta DFBM-CS320 Class2 Module, using CSR BlueCore4
- Data Sheet: 2.DFBM-CS320.pdf
- CSR Data Sheet: CS-101564-DSP10 BlueCore4-ROM Product Data Sheet.pdf
- Driver: Stock Linux Kernel BlueZ
- Connected to: S3C2410 USB Host controller (OHCI)
- PM Driver: https://svn.openmoko.org/trunk/src/target/kernel/patches/gta01-power_control.patch
Vibrator
- Driver: https://svn.openmoko.org/trunk/src/target/kernel/patches/gta01-vibrator.patch
- Connected to: S3C2410 GPIO
- Controllable via /sys/class/leds/gta01:vibrator
USB Host
The USB Host controller is inside the S3C2410
- Driver: Stock Linux kernel ohci_hcd
USB Device
The USB Device controller is inside the S3C2410
- Driver: https://svn.openmoko.org/trunk/src/target/kernel/patches/s3c2410_udc.patch
- Please see USB Product IDs on information about which Vendor/Product IDs we use
- 1200mAh lithium battery charges when connected to powered host.
- Mini-B connector this one.
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'.
- Product Homepage: http://www.wolfsonmicro.com/products/WM8753/
- Data Sheet: WM8753.pdf
- Connected to: S3C2410 IIS interface (PCM data), S3C2410 I2C (Control)
- Driver: https://svn.openmoko.org/trunk/src/target/kernel/patches/asoc.patch
Stereo Amplifier
There's a National Semiconductor LM4857 Stereo Amplifier at the analog audio output of the WM8753
- Product Homepage: LM4857.html
- Data Sheet: LM4857.pdf
- Connects to: S3C2410 I2C (Control)
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 PCF50606 is used for power management.
- Data Sheet: PCF50606/605
- User Manual: pcf50606.pdf
- Connected to: S3C2410 via I2C, client address is 0x08.
- Driver Source: https://svn.openmoko.org/trunk/src/target/kernel/patches/gta01-pcf50606.patch
Battery
The Neo1973 Battery is compatible with a Nokia BL5C battery. According to this post on the mailinglist. Photo of the battery inside the Neo1973.
Buttons
The Neo1973 features two buttons:
Alternate cases
A number of alternate case designs have been suggested and requested.
Alternate Neo1973 case designs
History
GTA01
This is the most simple, non-bluetooth version of the prototype.
GTA01v3
First generation of prototypes that was given to internal OpenMoko software developers.
Unfortunately not useful at all due to non-working touchscreen.
- ATAG_REVISION: 0x0000130
GTA01v4
Second generation of prototypes that was given to Harald +Mickey.
Unfortunately still not useful due to half-working touchscreen.
- ATAG_REVISION: 0x00000140
GTA01B
This is the bluetooth-enabled fork of GTA01
GTA01Bv2
This is the first produced version of the bluetooth-enabled version.
- ATAG_REVISION: 0x00000220
GTA01Bv3
This is the second produced version of the bluetooth-enabled version. It contains mainly GPS-related fixes.
- ATAG_REVISION: 0x00000230
This is the version that is shipped in Phase 0.
GTA01Bv3 Errata
PMU unable to resume from suspend
Due to use of wrong GPIO/EINT pin, the PMU cannot wake-up the phone after suspend. This means, specifically, the following events can not bring the phone back from suspend-to-ram:
- PMU RTC Alarm
- Power button press
- Charger events (charger insertion/removal/error)
- Low battery
Stand-by time extremely low
This is due to a design bug resulting in at least 30mA additional standby current, since we cannot properly switch off the power supply to the S3C2410 PLL's. There is nothing we can do to change this with post-production fixes. GTA01Bv4 will address this issue.
GSM doesn't resume phone from suspend
The GSM modem currently doesn't signalize a wakeup interrupt to the S3C2410 in case there's some noteworthy event, such as incoming call, loss of network, incoming SMS or the like.
This is a serious issue, but can be fixed with a GSM Modem Firmware update.
GSM Sidetone too loud
The local feedback sidetone (see [5]) is too loud. This will be addressed in a GSM firmware update
Bad block
Due to an error in the production process, the factory-programmed NAND bad block information has been lost. This means that some blocks in the flash will wear out rapidly, which might become as bad as rendering the device unusable.
GTA01Bv4
This is the version that is being shipped in Phase 1
Looks
This is what the GTA01Bv4 PCB looks like without the shielding cans, which will be fitted later.
Changes from GTA01Bv3
- Fix all Errata items from GTA01Bv3
- Add I2C, SPI and one irq and wakeup capable GPIO pin to debug port plus have test pads for all these signals (for soldering wires directly on the pcb)
- Fix a number of production related details and minor hardware details that are not user-visible
GTA02
The GTA02 is the device shipped starting December 2007 ("Mass Market launch"). It is a new main release with features added
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 - MODEM_TXD (H-TP4701)
- 2 - MODEM_RXD (H-TP4702)
Information from [6].
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
![]() |
Languages: |
English • العربية • Български • Česky • Dansk • Deutsch • Esperanto • Eesti • Español • فارسی • Suomi • Français • עברית • Magyar • Italiano • 한국어 • Nederlands • Norsk (bokmål) • Polski • Português • Română • Русский • Svenska • Slovenčina • Українська • 中文(中国大陆) • 中文(台灣) • Euskara • Català |