From Tizen Wiki
Jump to: navigation, search

Updating a minimal image to include either wayland/weston or X

Note: These instructions give the 'pc' pattern names for installing on the NexCom NDIS166 system. If you are doing this on the NexCom VTC1000 or VMC1000 system or any other IVI system with the Intel(tm) Atom(C) E6xx processor, just substitute 'auto' for 'pc' in the pattern names. The minimal image will boot into virtual console 1. This console is only used for displaying low level messages, so to get a log-in terminal press Alt-F?, where ? is greater then 1. The system will automatically generate a new getty on that virtual console. Log in as root, using 'tizen' as your password, and then...

Connect a LAN cable to the ethernet port (or physically connect to some network). The Tizen "ConnMan" subsystem will automatically initialize the network and obtain an IP address from any available DHCP server.

If you are working behind a firewall you may need to "export" a valid proxy setting for your shell

$ export http_proxy=<your proxyserver:port>
$ export https_proxy=<your proxyserver:port> 

You should now be able to connect to the Tizen servers to download and install additional packages.


# refresh the zypper cache and attempt to update to get the latest and greatest
$ zypper refresh
$ zypper update
Known Issue Alert: If the 'zypper' command results in "Error message: SSL certificate problem"... See bug TIVI-23. Try the workaround of changing all the "https" to "http" in all the repo files found in /etc/zypp/repos.d

Installing X

NOTE: You either install the wayland or the X package, not both!!!

# Install the X related patterns
$ zypper install -t pattern ivi-x-pc
# Note... if you do not want X to start automatically on boot, then:
$ mv /usr/lib/systemd/system/uxlaunch.service /root

Installing Wayland

NOTE: You either install the wayland or the X package, not both!!!

# Install the wayland related patterns
$ zypper install -t pattern ivi-wayland-pc
# Note... if you do not want wayland to start automatically on boot, then:
$ mv /usr/lib/systemd/system/weston.service /root

Setting up dual-display on Intel(tm) Atom(C) E6xx platforms

If you are using a platform based on the Intel(tm) Atom(C) E6xx processor, you are also using the EMGD graphics driver which needs to be configured properly to enable the second display. Unfortunately, adjusting the weston.ini file alone is not sufficient which is why the Tizen IVI team has added a couple of pre-defined configid that enable the sDVO port (VGA) as the primary port and the LVDS port as the secondary port. Both the Crossville-Lapis and Nexcom VTC1000-D2 systems have been tested using this new method.

Here is how you can use this new configuration: The assumption is that you have already installed the Sept 18 preview and Wayland (https://wiki.tizen.org/wiki/IVI/IVI_Sept_18,_2012_preview_update). The first step is to install all the latest updates on your system

$ zypper refresh
$ zypper up
$ systemctl reboot

Then you set-up the EMGD driver so that it gets loaded with the appropriate configid

$ mkdir -p /etc/modprobe.d
$ echo "options emgd configid=5" > /etc/modprobe.d/emgd.conf
$ echo "options emgd dc=2" >> /etc/modprobe.d/emgd.conf
$ depmod -a

Note: use configid=4 for Crossville-Lapis and configid=5 for Nexcom VTC1000-D2

Edit the /root/.config/weston.ini file and add one such section:

mode= 60.00 800 864 976 1088 480 486 494 517 -hsync +vsync ==

And reboot your system for the new settings to be applied

$ systemctl reboot

And a few needful things that make development a lot easier

$ zypper install openssh-server openssh-clients gdb

ExoPc Notes

I gave the new image at http://download.tizen.org/previews/ivi/tizen_20120403.2/images/ivi-min-pc/ a go on the Exopc as this can be a versatile mobile IVI testbed.


More at IVI_Installation page : https://wiki.tizen.org/wiki/IVI/IVI_Installation

Just a few lab notes here, I will update with a step by step guide soon when I try the Wayland stack on the Exo.

My workflow was as follows :-

Write the min-pc image ( http://download.tizen.org/previews/ivi/tizen_20120403.2/images/ivi-min-pc/ivi-min-pc-tizen_20120403.2-sdb.raw.bz2 ) to the usb stick
Mount in PC and copy connman+ connman test rpm to temp directory to enable wifi to be brought up
Boot the Exo from usb stick
rpm -i connman-tests
./connect-service SSID Password
Follow instructions for installing Xorg or Wayland stacks, add i915 graphics drivers
Add xorg conf file to ignore accelerometer 
Copy /dev/sdb (usb stick) to /dev/sda (internal flash)
Remove stick and boot

WiFi setup

Following sequence was tested on Tizen-preview-18-09-2012 and connman 1.3.
In order to setup WiFi you need two terminals (install openssh-server for accesing consoles via network).
Terminal 1.

zypper install connman-test
cd /usr/lib/connman/test
./test-connman enable wifi
./test-connman services

This should list all available wifi, look for the interesting one and write down his long name e.g.

* AO Wired                   { ethernet_000f3290041_cable }
  FAST1764-23E9              { wifi_00dbdf112231_46415354333736342d32334530_managed_psk }

go to terminal 2 and start simple_agent


Return to terminal 1 and start connection trial with your network:

./test-connman connect <wifi network long name>


./test-connman connect wifi_00dbdf112231_46415354333736342d32334530_managed_psk

In terminal 2 you will see request for password from simple_agent:

RequestInput (/net/connman/service/wifi_00dbdf112231_5a54455f44334130_managed_psk,dbus.
Dictionary({dbus.String(u'Passphrase'): dbus.Dictionary({dbus.String (u'Requirement'): dbus.String(u'mandatory', variant_level=1), 
dbus.String(u'Type'): dbus.String(u'psk', variant_level=1)}, signature=dbus.Signature('sv'), variant_level=1)}, 
signature=dbus.Signature('sv'))) Service credentials requested, type cancel to cancel

Enter the password by:




Note: if your passphrase includes whitespaces then initially calling simple-agent with no arguments will not work. You should instead give it the SSID info and passphrase using quotation marks as follows (run this before attempting to connect using test-connman):

./simple-agent Identity=FAST1764-23E9 Passphrase="1234567 8 9"

Where 'FAST1764-23E9' is the SSID of the WiFi network you want to connect to.

In terminal 1 you will see:

[  505.137176] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready

Possible improvements:
1. starting a program in background - only one console will be required,
2. usage of command line arguments for simple_agent just to create automated login instead of interactive mode.