Successfully reported this slideshow.
Your SlideShare is downloading. ×

Connected Tizen: Bringing Tizen to Your Connected Devices Using the Yocto Project

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
12016-01-31 FOSDEM https://wiki.tizen.org/wiki/Yocto
Connected
Bringing to your connected devices
using the Yocto Project....
2
Agenda
• Introduction to Tizen
• Building Tizen using Yocto/OE
• Connected device with IoTivity
• Showcases
• Contributi...
3
Tizen
• Free and open source software platform
• Uses mainline Linux Kernel
• Introduces a profile concept
• Multiple ar...

YouTube videos are no longer supported on SlideShare

View original on YouTube

Loading in …3
×

Check these out next

1 of 29 Ad

More Related Content

Slideshows for you (20)

Similar to Connected Tizen: Bringing Tizen to Your Connected Devices Using the Yocto Project (20)

Advertisement

More from Samsung Open Source Group (20)

Recently uploaded (20)

Advertisement

Connected Tizen: Bringing Tizen to Your Connected Devices Using the Yocto Project

  1. 1. 12016-01-31 FOSDEM https://wiki.tizen.org/wiki/Yocto Connected Bringing to your connected devices using the Yocto Project. Philippe Coval Samsung Open Source Group / SRUK philippe.coval@osg.samsung.com Leon Anavi Konsulko Group leon.anavi@konsulko.com leon@anavi.org
  2. 2. 2 Agenda • Introduction to Tizen • Building Tizen using Yocto/OE • Connected device with IoTivity • Showcases • Contributing to Tizen
  3. 3. 3 Tizen • Free and open source software platform • Uses mainline Linux Kernel • Introduces a profile concept • Multiple architectures (32/64 bits, ARM/x86) • Cross graphics system (Wayland/X11) • Supports native applications (EFL) • or HTML5 web apps
  4. 4. 4 Tizen 3 Profiles • Tizen:Common • IVI (automotive) • Wearable • Mobile • TV • Micro (headless)
  5. 5. 5 How to build Tizen from scratch? • GBS (Git Build System) • Supported workflow : GBS, MIC … • Uses tizen Infra (OBS) • Yocto / OpenEmbedded (OE) • Alternative build system • Standalone
  6. 6. 6 The Yocto Project  Linux foundation collaborative project • create custom Linux-based systems • for embedded devices • use OpenEmbedded framework • Industry & community support
  7. 7. 7 Tizen on Yocto  Project which aims at  building Tizen images  using the tools provided by the Yocto Project  Tizen distribution layer (meta-tizen)  for Yocto/OpenEmbedded  Easy to setup for ARM or Intel
  8. 8. 8 Building Tizen Yocto/OE (1/3) • Download tizen-distro • Download meta layers: • with board support packages (BSP) • Initialize build environment git clone git://review.tizen.org/scm/bb/tizen-distro cd tizen-distro source ./tizen-common-init-build-env build-common
  9. 9. 9 Building Tizen Yocto/OE (2/3) • Configure conf/local.conf • Add BSP meta layer(s) to conf/bblayers.conf MACHINE ??= "intel-corei7-64" PARALLEL_MAKE ?= "-j 8" BB_NUMBER_THREADS ?= "8" ... ... BBLAYERS += ".../meta-${bsp}" BBLAYERS_NON_REMOVABLE += ".../meta-${bsp}"
  10. 10. 10 Building Tizen Yocto/OE (3/3) • Build an image using bitbake • Get some coffee… • Install the generated image from • tmp-glibc/deploy/images/${MACHINE}
  11. 11. 11 Connectivity • Interoperability, Cloud services : Convergence? • Provided by Tizen stack with High level APIs • Networking, Bluetooth, Telephony, NFC. • Based on FLOSS, Connman, wpa_s, Bluez, ofono (IVI) • Open to any other/future FLOSS technology • Hint : Use contrib repository • IoT: OIC's IoTivity…
  12. 12. 12 IoTivity • Reference implementation lib (C/C++, binding) • Standard: Open Interconnect Consortium (OIC) • FLOSS: Apache-2.0, Linux Foundation • Services: Interop, comm, discovery, sec, plugins… • Cross platform : Linux, Tizen, Android, Arduino… • Strategy: just add meta-oic layer • linux or tizen target OS : Kernel .config fragments BBLAYERS += ".../meta-oic"
  13. 13. 13 Showcase More live demos at booth (K)
  14. 14. 14 Raspberry Pi • Any Raspberry Pi model and versions • meta-raspberrypi BSP • + GPU/DRI patches • Initial porting efforts by Samsung OSG • Used as reference for Tizen:Micro • Demo : IoTivity phone controling fan
  15. 15. 15 Tizen phone controls RPI’s fan Samsung Open Source Group FOSDEM 2016
  16. 16. 16 Kontron M2M device • Hardware: to embed in your car ? • Atom, 3G Modem, CAN, 6LowPAN, 12V • Support: BSP meta-intel / meta-fri2 (dizzy) • Strategy: IVI or Micro ? • Tizen:IVI : PVR GPU = SW Rendering on Wayland • Tizen:Micro : profile for headless • Demo : IoTivity observer that send SMS (ofono)
  17. 17. 17 Observe IoTivity resource by SMS Samsung Open Source Group FOSDEM 2016
  18. 18. 18 HummingBoard (i.MX6 SoC) • Support: • BSP: meta-fsl-arm and meta-fsl-arm-extra • Features: • Hardware graphics acceleration for Wayland/Weston • Standalone HTML5 applications • https://wiki.tizen.org/wiki/HummingBoard
  19. 19. 19 Challenges • Align meta-tizen • with newer releases of Yocto Project / T.Common • Support more hardware platforms • Support BSP = Extend community • SBCs: Odroids, Artik, RPI0, +MIPS... • Test and fix meta-tizen (gcc5, security fw, …) • Focus on Tizen:Micro (headless / IoT)
  20. 20. 20 Contributing to Tizen • Git / Gerrit • https://review.tizen.org/gerrit/ • JIRA • https://bugs.tizen.org/ • Mailing lists • https://www.tizen.org/community/mailing-lists • Live online • irc://irc.freenode.net/#tizen
  21. 21. 21 Contributing to Tizen on Yocto • tizen-distro layers: • bitbake, openembedded-core, • meta-openembedded, meta-qt5 • meta-tizen: git://git.tizen.org/scm/bb/meta-tizen • Combined using combo-layer script in: • git://git.tizen.org/scm/bb/tizen-distro
  22. 22. 22 Contributing to Tizen on Yocto • Exact steps: https://wiki.tizen.org/wiki/ How_to_contribute_to_Tizen_on_Yocto_Project • Any contributors welcome • File bugs in TY Section • Don't be shy, ask us for support
  23. 23. 23 Summary • Cooperation between Tizen and Yocto/OE • Flexibility: • Autonomous build system • Extensibility: Add any existing layer • For supporting new hardware • Or new IoT features like IoTivity (using meta-oic) • Open to contributions
  24. 24. 24 Resources: • https://wiki.tizen.org/wiki/Category:Yocto • https://wiki.iotivity.org/tizen • https://www.yoctoproject.org/documentation • https://wiki.tizen.org/wiki/Build_Tizen_with_Yocto_Project • http://wiki.tizen.org/wiki/ARM • http://blogs.s-osg.org/category/tizen/ • http://elinux.org/FRI • https://wiki.tizen.org/wiki/Tizen_Micro
  25. 25. 25 Q&A ?
  26. 26. 262016-01-31 FOSDEM https://wiki.tizen.org/wiki/Yocto Thank You! Samsung, Intel, Linux Foundation, JLR, Konsulko group, Eurogiciel/Intel bzh team, Olimex, Kontron, Atmel, Allwinner, Ingenic, SolidRun. Tizen, EFL, Yocto/OE, IoTivity contributors, Flaticons (CC BY 2.0), OSHW, FLOSS communities, FOSDEM team and volunteers...
  27. 27. 27 Demo Sources (WIP) • meta-yocto-demos • To stage changes, recipes and configurations • Helper to build images with simpler “make” call • Machines : rasberrypi2, odroidc1, … • Request your SBC to be supported • iotivity-example • Minimal client/server + mraa + integration files
  28. 28. 28 Hardware support & Devices • X86 / x86_64 (Generic) : • MinnowMAX (OSHW), Intel NUC, FRI2 • Your PC? • ARM: • RaspberryPi (ARMv6 / ARMv7) • HummingBoard (i.MX6 SoC) • …

×