IVI/Tizen-IVI 3.0-Final

From Tizen Wiki
< IVI
Jump to: navigation, search

The IVI team is excited to announce the availability of Tizen IVI 3.0 for In-Vehicle Infotainment.

Tizen IVI 3.0 is a Linux-based open source operating system and Tizen profile widely accepted by the automotive industry. It bundles popular and well supported open source projects where suitable and new industry-specific components where no solutions exist. This makes it the most advanced open source distribution available for automobiles today. Tizen IVI 3.0 is GENIVI 7.0 compliant on Nexcom VTC 1010-IVI and MinnowBoard Max devices and was chosen as the reference implementation for the Linux Foundation-governed Automotive Grade Linux project. Tizen IVI 3.0 comes with a compliance spec and test suite to ensure device interoperability. We also announce the final version of the Tizen IVI SDK for web application development including access to W3C compliant vehicle webAPIs. The included web runtime engine provides highest standards in HTML5 compatibility and system performance. Additionally we've added support for the Yocto Framework that allows for incremental builds, thus equipping developers with a rapid prototyping build tool for faster creation of custom Tizen IVI 3.0 images. Tizen IVI 3.0 provides a strong foundation for building modern commercial automotive solutions.

The release content is split in the following categories:

Platform Development

Web Application Development and Documentation

Core OS Capabilities

Security

UI demonstrators

Binary images and source code for this release are available here for both 32 and 64-bit for X86 and ARM architectures.


Note: The engineering name for this release in JIRA is M14.4 but its official name is Tizen 3.0 IVI.

Quick Start

Tizen-IVI 3.0 downloads

Images are available for the X86 32/64bit architecture and ARM.

See the Tizen IVI hardware platforms wiki page for more details on the various supported platforms.

Additional details available here:

Supported platforms

Hardware platforms

The Tizen IVI hardware platforms wiki page has the most up-to-date information regarding the various Tizen IVI supported HW platforms.

Virtual Machine

See the Running Tizen IVI 3.0 in VMware wiki page for more information on running Tizen IVI 3.0 images under VMware®.

Tizen IVI SDK

Tizen In-Vehicle Infotainment Software Developers Kit (IVI SDK) is a new IVI platform support under Tizen SDK. Tizen In-Vehicle Infotainment Software Developers Kit (IVI SDK) is a new IVI platform support under Tizen SDK. It supports IVI web application development and runs on Windows*, Ubuntu*, and Mac OS X*. It includes Emulator (based on QEMU), Web Simulator, IDE, documents and samples, and supports a real IVI device as a target. See the Tizen IVI SDK wiki page for more information on the Tizen SDK for IVI.

Top Known Issues & Workarounds

Summary: Due to the current Crosswalk process model, Tizen App FW aul_app_get_pkgname_bypid() fails with web applications. This affects ICO Homescreen window policy decision making and it means no web applications are shown.

Technical Overview: a detailed discussion revolving around the issue has been discussed in this email thread.

Impact: The problem affects ICO Homescreen and the users of aul_app_get_pkgname_bypid(). The application lifecycle (install/remove/launch/kill) are supported and functional using app_launcher/pkgcmd commands.

Resolution: the fix for this problem is linked to another activity involving the Crosswalk process model aiming to merge the window creation (GPU process) with the actual application process. Details are available here.

How-Tos

Build & Create Tizen IVI Image For a Specific Snapshot

This page provides information about how to build a specific Tizen IVI snapshot repository from scratch and generate an image following the build process.

Please follow the instructions available here: https://source.tizen.org/documentation/developer-guide/all-one-instructions/creating-tizen-ivi-images-based-on-specific-snapshot-one-page

Tweaking your screen settings

Tweak your screen settings by editing the /etc/xdg/weston/weston.ini file. The key section(s) are the [output].

The first thing you need is the name of the output your screen is attached to. This varies from device to device, and also based on the type of connector that is used on the platform (HDMI, DP, VGA, etc.). If you are not sure about the exact name (as detected by Weston), then check the journalctl -b output (as root) and look for weston. Take a note of the output name and also the various resolutions that are advertised.

You can then construct your [output] section based on that, the main keywords to use are:

  1. name: name of the output, e.g. HDMI3, DP1, VGA1, LVDS1, etc.
  2. mode: this is the resolution you want to use. You can use a resolution that's advertised directly (e.g. 1024x768 or use a complete modeline if you need a custom resolution.
  3. transform: this is how you rotate or flip your screen.

Here is an example of a modified section for an HD screen attached to HDMI1 and which is physically rotated to be in portrait mode:

[output]
name=HDMI1
mode=1920x1080
transform=90

Tuning screen resolution and orientation in VMware

See specific screen orientation configuration examples on the Tizen IVI in VMware wiki page.

Disable VGA output on VTC1010

The hardware design of the Nexcom VTC1010 reports an active VGA port even if none is connected. Add the following to the boot loader kernel option command line to disable this 'ghost' screen: video=VGA-1:d

  • Open /boot/extlinux/extlinux.conf for the MBR image
  • Open /boot/loader/entries/vmlinuz-<VERSION>-x86-ivi.conf for the EFI image

Enable touch on VTC1010

All touch events will be drawn on the primary Wayland output monitor (VGA1 even if none exists) unless the VGA port has been disabled (see here). Use the following udev rule to map touch events to the correct Wayland output. See the following bug for more details: TIVI-2798

 
 /usr/lib/udev/rules.d/99-egalax.rules 
 # NOTE: setting the WL_OUTPUT lets Weston know which display to associate the touch device with
 ATTRS{idVendor}=="0eef", ATTRS{idProduct}=="7200", ENV{WL_OUTPUT}="DP1"
 Reboot the system after creating this file.
 

Enable Multiple Touchscreen Displays

See Mapping Touchscreen to Wayland Output to enable more than one touch screen panel.

Install ICO Homescreen

From a weston-terminal:

# rpm -e tlm-config-ivi-singleseat
# zypper in -t pattern ivi-ux-ico
# reboot

Using Crosswalk behind a web proxy

Running Crosswalk behind a web proxy is possible by adding the following lines to the Crosswalk systemd service file located at /usr/lib/systemd/user/xwalk.service.

[Unit]
Description=Crosswalk
[Service] Type=dbus BusName=org.crosswalkproject.Runtime1 Environment=http_proxy=http://<your-proxy>.:<proxy port> Environment=https_proxy=https://<your-proxy>.:<proxy port> Environment=OZONE_WAYLAND_USE_XDG_SHELL='defined' USE_OZONE_WAYLAND_VKB='defined' ExecStart=/usr/lib/xwalk/xwalk --external-extensions-path=/usr/lib/tizen-extensions-crosswalk

Install and start Modello UI

Modello is a sample UI entirely written using HTML5/JS technologies. For instructions how to install and run Modello please check with Modello WIKI page available here: Modello HOWTO

Dual-Screen Configuration

Setting up dual screen requires a VGA and DisplayPort (DP) monitor. A HDMI monitor can be substituted for the DP if an active HDMI to DP port adapter is available.

Disabling the LVDS output for the Nexcom VTC7120 platforms

The LVDS output is active by default; Weston uses it even if no screen is attached, making part of the desktop invisible. We recommend disabling the LVDS output by adding the following section to weston.ini:

[output]
name=LVDS1
mode=off

How to install/uninstall Web Applications

Installation

pkgcmd -i -t <pkg type> -p <pkg path> (-G) -q // 

Uninstallation

pkgcmd -u -n <pkgid> (-G) -q  // NOTE the pkgid should be used NOT the appid.

List the installed packages

pkgcmd -l

Kill all applications associated to a package ID

pkgcmd -k -n <pkgid>

How to start Web Applications

List available application IDs

ail_list

Launch an application

app_launcher -s <app_id>

Launch an application with debug mode

app_launcher -s <app_id> -d

How to start Native App

$su (password is 'tizen')
#pkgcmd –l  //to list all applications available
#exit  //root privileges are only required to list all applications

Note: both native and web applications will appear on this list. The respective pkg_type are [rpm] and [wgt] and the command-line argument to start one or the other is slightly different (this inconsistent behaviour is tracked in TIVI-2667).

Launching a native app (i.e. pkg_type == [rpm])
$app_launcher -s <pkgid>
E.g.: $app_launcher -s org.tizen.dialer

Adding content for media player

To update the list of multimedia files for MediaPlayer:

  1. Copy the new media files to $HOME/content/
  2. Refresh the media database (as 'root'): #mediadb-update -r $HOME/content/
  3. Update the SMACK security label media content

How to enable boot splash

This is only supported on the Nexcom VTC1010 and MinnoboarMax when running the EFI image

VTC1010
  1. Disable the BIOS CSM support: "Advanced -> CSM Configuration -> CSM Support [Disabled] (the system must be booted with Video [UEFI Only] first)"
  2. Edit the boot loader configuration as follows (disables all but DP display output):
sed -i 's/\(^default .*\)/\1-splash-dp/'  /boot/loader/loader.conf
systemctl reboot
MinnowBoard Max
  1. Edit the boot loader configuration as follows (disables all but HDMI display output):
sed -i 's/\(^default .*\)/\1-splash-hdmi/'  /boot/loader/loader.conf
systemctl reboot

See TIVI-2177 for more details.

Feedback and support