On the final day of the
Tizen Developer Conference in San Francisco, Samsung
distributed developer devices to registered attendees. Although they
are not fully-functional consumer devices by any means, the devices
did provide the first opportunity for most developers to see the new
platform's mobile phone incarnation outside of an emulator.
Physically, the device is shaped like a largish mobile phone, with a
4.5-inch diagonal (720 by 1280) touchscreen, three buttons, dual
cameras, audio jack, and mini USB port. Inside, the platform is based
on Samsung's Exynos 4210 system-on-chip, which is also found in
Samsung's production phones. The processors are ARM: a dual-core
Cortex A9 CPU, paired with a Mali 400 GPU. 1GB of RAM is available,
plus 16GB of storage and a microSD card slot. Additional hardware
includes WiFi, Bluetooth, GPS, and NFC, plus a SIM card slot.
As a development aid, the size of the device works to its advantage.
Although it is large for a phone, the on-screen keyboard and other touch
widgets are much easier to hit than those on a pocket-sized device.
On the other hand, the microSD and SIM card slots can only be accessed
by taking apart the outer shell, which means rapid-swapping of cards
will be difficult. There may be developers who lament the lack of a
hardware keyboard, too, although the device is intended to be accessed
through the Tizen SDK over a USB connection.
Thus far it is unclear if the SIM slot is supported in software; the
SIM cards I tried are not recognized even for non-modem operations
such as contacts import, and no one appears to have gotten it up and
running. Bluetooth is provided by a Broadcom 4330, which also
supplies the WiFi and is FM radio-capable, but out of the box
Bluetooth and FM are not enabled. Similarly, the NFC chip is a PN544
from NXP, which is the most widespread NFC chip supplier, but it is
not yet used by the software stack. A standard complement of
accelerometer, digital compass, and three-axis gyroscope sensor is
The installed software is the Tizen 1.0 "Larkspur" release, which
officially debuted on April 30. The code represents a merger of
Intel's MeeGo work with the Samsung Linux Platform (SLP), which
was derived from LiMo.
Although use of the
Enlightenment Foundation Libraries (EFL) in the graphics stack is
the most widely-publicized piece of SLP, there are others — including
SLP's 3G telephony stack. At the conference, the Tizen project made it
clear that oFono (an Intel project
pre-dating MeeGo) was due to be ported over as Tizen's telephony
stack; this may explain the SIM compatibility issue, as the device is
alleged to be the same hardware used in Samsung's Android-powered
Galaxy S2, and the modem driver may not have been ported to SLP.
Other parts of the Tizen 1.0 stack are interesting, too. The display
server is X, although here again at the conference it was explicitly
said that a port to Wayland is
in the works. The effort consists of completing the port of EFL to
Wayland, and of optimizing the speed of the platform's web runtime.
Input is handled by the SLP Input Service Framework and by the
XGesturesExtension originally authored by Canonical. The latter has
since evolved into the uTouch framework, which makes the platform an
unusual blend of technologies of different ages.
The underpinnings are certainly worth exploring, but most developers
will probably be more interested in exploring the HTML5-based
application API. The device includes a small set of reference
applications — browser, phone, messages, clock, contacts,
calendar, image gallery and audio player — plus a comprehensive
system settings utility.
The demo applications bear many similarities to their MeeGo
counterparts; perhaps the phone application more than others, and the
media applications a bit less so, but all will feel familiar.
Stylistically, most use flat colors, with sharp edges and corners,
subtle highlighting via box outlines, and what desktop Linux vendors
have come to call symbolic,
monochrome icons. Most provide top tabs for navigating between the
application's pages and place function buttons at the bottom of the
screen. Where vertical scrolling is required, the scroll bar widget
is a thin, translucent overlay that appears only while scrolling, and
fades out. It does appear that the outermost edge of the screen is
sensitive to scroll events, which can be tricky on mobile devices. On
the other hand, none of the demo applications seems to show off
multi-touch gesture recognition.
Several of the applications show off a nice assortment of data entry
widgets. For example, the alarm clock setting screen features a
drop-down selector that scrolls through the hour or minute options
horizontally. But it sports a separate radio-button selector for
choosing the notification type, which unrolls a bit like an unfolding
map. On the whole, all of the transitions are smooth, and navigation
between pages and elements is simple.
That said, a few of the demo applications use a completely different
widget style. The calculator uses rounded buttons with a slight 3D
embossed effect, gradients, and a faux-leather background. The
stopwatch and timer screens in the clock emulate an LCD screen and a
different faux-leather look, respectively, and feature their own UI
widget styles. Were this a commercial product, the differences in
look and feel would be cause for concern; in a demo suite, though,
they simply show competing options for GUI styling.
Samsung's J.D. Choi showed off several advanced applications
in his conference keynote, utilizing the platform's OpenGL support,
but there is no official word when they — or a system update
enabling missing pieces like Bluetooth, NFC, and SIM support —
Of course, demo applications cannot be the end of the story. Tizen seeded
the devices to developers at the conference in order to jumpstart
independent application development. But it will be quite some time
before anyone should expect to see output. The Mer project has started to dig into
the lower levels of the system, including the u-boot bootloader, and is
working on booting an OS from the microSD card. Thomas Perl has
succeeded in building and running Python and PyGame on the device,
and more and more developers are popping in to ask practical questions
on the mailing
list and on IRC.
The preferred method for writing applications is the Tizen SDK, which for
the moment is only available for Windows and 32-bit Ubuntu systems, but
enterprising hackers have found
ways around that limitation already. We will provide a more in-depth
look at the SDK and assorted development tools in another story soon. In
the meantime, it is good to finally see Tizen running on a physical hardware
device. Yes, the experience is much the same as that provided by the SDK
emulator and reviewed around the web, but a modern development device makes
all the difference in the world. There may be no third-party applications
to install just yet, but that was also the situation shortly after the
release of the Nokia N950 last year, and today there are hundreds. Which
just goes to show that if you want software, the simplest thing you can do
is give the open source community tools and a platform on which to build.
[ The author would like to thank the Tizen project and the Linux Foundation for support to attend the conference. ]
to post comments)