SlideShare a Scribd company logo
Samsung Open Source Group 1 https://www.meetup.com/Rennes-Embedded/
JavaScript in constrained devices
Using :RT
with IoT.js
#RennesEmbedded
Rennes, France <2018-10-11>
Philippe Coval
Samsung Open Source Group / SRUK
p.coval@samsung.com
Samsung Open Source Group 2 https://www.meetup.com/Rennes-Embedded/
What do you know of ?
● Operating System powered by Linux Kernel
● Shipped into consumer electronics products
– TVs, Wearables, Home kitchen appliances…
● Tizen the OS of Everything?
– What about low-end and low-cost IoT devices?
● Note: uClinux is lowering requirements
– but not optimal so we need a dedicated kernel !
● TizenRT is targeting middle configurations (RAM+Flash):
– Cortex M3 (30KB+512KB), M4 (256KB+16MB), R4 (2MB+16MB)
Samsung Open Source Group 3 https://www.meetup.com/Rennes-Embedded/
TizenRT's origin
● TinyAra 2015 project to collect, store, and deliver IoT sensor data using:
– IoTivity for connectivity & AraStorage: Data management
– Sources released to public on tizen.org (SOSCON2016)
● It was based on NuttX RealTime kernel (deterministic and priorities)
– UNIX/Linux inspired OS (+shell +apps) comply to standards, POSIX, GNU tools
– Initial release in 2007, community led by main author Gregory Nutt
– Stable & Mature (2.5M LoC), 8 to 32 bits, ~20 archs, 200 boards (<16KB)
– BSD Licensed: Industry & community adoption
● TizenRT is the whole stack: TinyAra kernel + middlewares (TDC2017)
Samsung Open Source Group 4 https://www.meetup.com/Rennes-Embedded/
Tizen:RT Architecture
Current
status:
2.0_GBM_M1
+
~1000
patches
Samsung Open Source Group 5 https://www.meetup.com/Rennes-Embedded/
Tizen:RT plan for reliability
● Memory protection unit (MPU > MMU)
– User/Kernel separation
●
Per thread mem protection
● Micro kernel architecture
– Only for scheduling tasks, memory, IPC
● + user space services (Net, drivers...)
● Fault Tolerance
– Self healing
● restart services (and dependencies)
– Fallback option: Live update (DM)
Samsung Open Source Group 6 https://www.meetup.com/Rennes-Embedded/
Application development on Tizen:RT
●
Platform is supporting native development (POSIX)
– with optional middlewares:
– WiFi, LWIP port for IPv6, +LWM2M, CoAP, HTTP, DTLS, WebSockets, MQTT
– Wakaama (LWM2M) for device management
– IoTivity for seamless connectivity between devices
● But some (or most) applications
– Are not requiring low level primitives
● When high level API are available
– Need secured context
● For many developers
"Any application,
that can be written in JavaScript
will eventually be written in JavaScript."
~Jeff Atwood
Samsung Open Source Group 7 https://www.meetup.com/Rennes-Embedded/
“Simplicity
is the ultimate sophistication.”
~Leonardo da Vinci
Samsung Open Source Group 8 https://www.meetup.com/Rennes-Embedded/
IoT.js: platform powered by JerryScript engine
● JerryScript: A JavaScript interpreter
– Optimized for constrained devices: <64 KB RAM & <200 KB ROM
– Available in various RTOS: Tizen:RT, RIOT, Zephyr…
● IoT.js: Runtime environment
– Supports modules (built in)
● Timers, GPIO, ADC, I2C,UART
● UDP, HTTP, WebSockets, DNS, BLE
● Developer friendly environment:
– Develop using iotjs on GNU/Linux
– Port and deploy to constrained device
– Or even port modules (NPM)
Samsung Open Source Group 9 https://www.meetup.com/Rennes-Embedded/
“Any sufficiently
advanced technology
is indistinguishable
from magic.”
~ Arthur C. Clarke
Samsung Open Source Group 10 https://www.meetup.com/Rennes-Embedded/
Demo !
https://youtu.be/S7zpBpnpflU#tizen-rt-lpwan-20180204rzr
● https://my.wirelessthings.be/index.php/device/device_view/1229
Samsung Open Source Group 11 https://www.meetup.com/Rennes-Embedded/
Mozilla IoT & WebThings powered by ARTIK
https://youtu.be/qrFTn0eA8iQ#web-of-things-agriculture-20180712rzr
https://youtu.be/qrFTn0eA8iQ
web-of-things-agriculture-20180712rzr#
Samsung Open Source Group 12 https://www.meetup.com/Rennes-Embedded/
Summary
● Tizen is based on Linux kernel for high end devices
● Tizen ecosystem is now addressing more constrained IoT devices
– Tizen:RT was originally based on NuttX kernel,
● then evolved into micro kernel architecture
● Tizen:RT is open to application developers by providing
– Native, C, C++ POSIX standard libraries
– Javascript runtime, using IoT.js + JerryScript interpreter
● Open Community (github.com/Samsung) & Tools: SDK (CLI or IDE)
Samsung Open Source Group 13 https://www.meetup.com/Rennes-Embedded/
References
 Entry points:
– https://fosdem.org/2018/schedule/event/tizen_rt/
– https://wiki.tizen.org/Category:RT
– https://github.com/Samsung/TizenRT/
 Keep in touch online:
– https://s-opensource.org/author/philcovalsamsungcom/
https://wiki.tizen.org/wiki/Meeting
– https://wiki.tizen.org/wiki/Events
– https://wiki.tizen.org/wiki/FOSDEM
More:
● https://source.tizen.org/documentation/tizen-rt
● https://www.artik.io/modules/artik-05x/
● https://developer.artik.io/documentation/artik-05x/getting-started/
● http://www.nuttx.org/
● http://youtube.com/channel/UC0QciIlcUnjJkL5yJJBmluw
● https://www.slideshare.net/MyungJooHam/tdc-mjham-armkernelintizen3noani
● http://opensource.samsung.com/
Bonus tip:
for demo convenience
I am drafting demo recipes (WIP)
git clone https://github.com/rzr/TizenRT
14Samsung Open Source Group
Thank you
https://wiki.tizen.org/wiki/User:Pcoval
BTW greetings to :
Resources: flaticons CC

More Related Content

What's hot

What's hot (20)

C Cross Compile for Linkit Smart 7688
C Cross Compile for Linkit Smart 7688C Cross Compile for Linkit Smart 7688
C Cross Compile for Linkit Smart 7688
 
Introduction to IoT.JS
Introduction to IoT.JSIntroduction to IoT.JS
Introduction to IoT.JS
 
IoTivity Tutorial: Prototyping IoT Devices on GNU/Linux
IoTivity Tutorial: Prototyping IoT Devices on GNU/LinuxIoTivity Tutorial: Prototyping IoT Devices on GNU/Linux
IoTivity Tutorial: Prototyping IoT Devices on GNU/Linux
 
Introduction to Linux-wpan and Potential Collaboration
Introduction to Linux-wpan and Potential CollaborationIntroduction to Linux-wpan and Potential Collaboration
Introduction to Linux-wpan and Potential Collaboration
 
Esp8266 hack sonoma county 4/8/2015
Esp8266 hack sonoma county 4/8/2015Esp8266 hack sonoma county 4/8/2015
Esp8266 hack sonoma county 4/8/2015
 
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxPractical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
 
SOSCON 2016 JerryScript
SOSCON 2016 JerryScriptSOSCON 2016 JerryScript
SOSCON 2016 JerryScript
 
lwM2M OTA for ESP8266
lwM2M OTA for ESP8266lwM2M OTA for ESP8266
lwM2M OTA for ESP8266
 
Introduction to IoT.JS
Introduction to IoT.JSIntroduction to IoT.JS
Introduction to IoT.JS
 
ESP8266 and IOT
ESP8266 and IOTESP8266 and IOT
ESP8266 and IOT
 
JerryScript on RIOT
JerryScript on RIOTJerryScript on RIOT
JerryScript on RIOT
 
HKG18-113- Secure Data Path work with i.MX8M
HKG18-113- Secure Data Path work with i.MX8MHKG18-113- Secure Data Path work with i.MX8M
HKG18-113- Secure Data Path work with i.MX8M
 
Rencontres Mondiales Du Logiciel Libre 2009
Rencontres Mondiales Du Logiciel Libre 2009Rencontres Mondiales Du Logiciel Libre 2009
Rencontres Mondiales Du Logiciel Libre 2009
 
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
 
Node MCU Fun
Node MCU FunNode MCU Fun
Node MCU Fun
 
Transform Old Router into Digital Jukebox/Internet Radio with LEDE/openWRT
Transform Old Router into Digital Jukebox/Internet Radio with LEDE/openWRTTransform Old Router into Digital Jukebox/Internet Radio with LEDE/openWRT
Transform Old Router into Digital Jukebox/Internet Radio with LEDE/openWRT
 
6LoWPAN: An Open IoT Networking Protocol
6LoWPAN: An Open IoT Networking Protocol6LoWPAN: An Open IoT Networking Protocol
6LoWPAN: An Open IoT Networking Protocol
 
BKK16-500K2 CTO talk - The End to End Story
BKK16-500K2 CTO talk - The End to End StoryBKK16-500K2 CTO talk - The End to End Story
BKK16-500K2 CTO talk - The End to End Story
 
IoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT InteroperabilityIoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT Interoperability
 
Getting Started with Embedded Python: MicroPython and CircuitPython
Getting Started with Embedded Python: MicroPython and CircuitPythonGetting Started with Embedded Python: MicroPython and CircuitPython
Getting Started with Embedded Python: MicroPython and CircuitPython
 

Similar to tizen-rt-javascript-20181011

ELCE 2010 - State Of Multimedia In 2010 Embedded Linux Devices
ELCE 2010 - State Of Multimedia In 2010 Embedded Linux DevicesELCE 2010 - State Of Multimedia In 2010 Embedded Linux Devices
ELCE 2010 - State Of Multimedia In 2010 Embedded Linux Devices
Benjamin Zores
 

Similar to tizen-rt-javascript-20181011 (20)

Easy IoT with JavaScript
Easy IoT with JavaScriptEasy IoT with JavaScript
Easy IoT with JavaScript
 
digital-twins-webthings-iotjs-20190512rzr
digital-twins-webthings-iotjs-20190512rzrdigital-twins-webthings-iotjs-20190512rzr
digital-twins-webthings-iotjs-20190512rzr
 
The complex IoT equation, and FLOSS solutions, OW2con'18, June 7-8, 2018, Paris
The complex IoT equation, and FLOSS solutions, OW2con'18, June 7-8, 2018, ParisThe complex IoT equation, and FLOSS solutions, OW2con'18, June 7-8, 2018, Paris
The complex IoT equation, and FLOSS solutions, OW2con'18, June 7-8, 2018, Paris
 
webthing-floss-iot-20180607rzr
webthing-floss-iot-20180607rzrwebthing-floss-iot-20180607rzr
webthing-floss-iot-20180607rzr
 
The Complex IoT Equation (and FLOSS solutions)
The Complex IoT Equation (and FLOSS solutions)The Complex IoT Equation (and FLOSS solutions)
The Complex IoT Equation (and FLOSS solutions)
 
webthing-iotjs-20181027rzr
webthing-iotjs-20181027rzrwebthing-iotjs-20181027rzr
webthing-iotjs-20181027rzr
 
Connected TIZEN
Connected TIZENConnected TIZEN
Connected TIZEN
 
Tizen Connected with IoTivity
Tizen Connected with IoTivityTizen Connected with IoTivity
Tizen Connected with IoTivity
 
webthing-iotjs-tizenrt-cdl2018-20181117rzr
webthing-iotjs-tizenrt-cdl2018-20181117rzrwebthing-iotjs-tizenrt-cdl2018-20181117rzr
webthing-iotjs-tizenrt-cdl2018-20181117rzr
 
web-of-twins-20190604rzr
web-of-twins-20190604rzrweb-of-twins-20190604rzr
web-of-twins-20190604rzr
 
ELCE 2010 - State Of Multimedia In 2010 Embedded Linux Devices
ELCE 2010 - State Of Multimedia In 2010 Embedded Linux DevicesELCE 2010 - State Of Multimedia In 2010 Embedded Linux Devices
ELCE 2010 - State Of Multimedia In 2010 Embedded Linux Devices
 
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...
 
NGIoT standardisation workshops_Jens Hagemeyer presentation
NGIoT standardisation workshops_Jens Hagemeyer presentationNGIoT standardisation workshops_Jens Hagemeyer presentation
NGIoT standardisation workshops_Jens Hagemeyer presentation
 
IoTivity on Tizen: How to
IoTivity on Tizen: How toIoTivity on Tizen: How to
IoTivity on Tizen: How to
 
Introduction to the new MediaTek LinkIt™ Development Platform for RTOS
Introduction to the new MediaTek LinkIt™ Development Platform for RTOSIntroduction to the new MediaTek LinkIt™ Development Platform for RTOS
Introduction to the new MediaTek LinkIt™ Development Platform for RTOS
 
Gluing the IoT world with Java and LoRaWAN
Gluing the IoT world with Java and LoRaWANGluing the IoT world with Java and LoRaWAN
Gluing the IoT world with Java and LoRaWAN
 
CIF16: Building the Superfluid Cloud with Unikernels (Simon Kuenzer, NEC Europe)
CIF16: Building the Superfluid Cloud with Unikernels (Simon Kuenzer, NEC Europe)CIF16: Building the Superfluid Cloud with Unikernels (Simon Kuenzer, NEC Europe)
CIF16: Building the Superfluid Cloud with Unikernels (Simon Kuenzer, NEC Europe)
 
Software virtualization lessons for extreme IoT portability and scale
Software virtualization lessons for extreme IoT portability and scaleSoftware virtualization lessons for extreme IoT portability and scale
Software virtualization lessons for extreme IoT portability and scale
 
Iot Conference Berlin M2M,IoT, device management: one protocol to rule them all?
Iot Conference Berlin M2M,IoT, device management: one protocol to rule them all?Iot Conference Berlin M2M,IoT, device management: one protocol to rule them all?
Iot Conference Berlin M2M,IoT, device management: one protocol to rule them all?
 
IoTivity for Automotive: meta-ocf-automotive tutorial
IoTivity for Automotive: meta-ocf-automotive tutorialIoTivity for Automotive: meta-ocf-automotive tutorial
IoTivity for Automotive: meta-ocf-automotive tutorial
 

More from Phil www.rzr.online.fr

Tizen architecture-solutionslinux-20130529
Tizen architecture-solutionslinux-20130529Tizen architecture-solutionslinux-20130529
Tizen architecture-solutionslinux-20130529
Phil www.rzr.online.fr
 

More from Phil www.rzr.online.fr (20)

Iot privacy-soscon-2019
Iot privacy-soscon-2019Iot privacy-soscon-2019
Iot privacy-soscon-2019
 
aframe-webthing-20190710
aframe-webthing-20190710aframe-webthing-20190710
aframe-webthing-20190710
 
up-down-stream-flows-20190411rzr
up-down-stream-flows-20190411rzrup-down-stream-flows-20190411rzr
up-down-stream-flows-20190411rzr
 
wotxr-20190320rzr
wotxr-20190320rzrwotxr-20190320rzr
wotxr-20190320rzr
 
mozilla-things-fosdem-2019
mozilla-things-fosdem-2019mozilla-things-fosdem-2019
mozilla-things-fosdem-2019
 
IoT-javascript-2019-fosdem
IoT-javascript-2019-fosdemIoT-javascript-2019-fosdem
IoT-javascript-2019-fosdem
 
osvehicle-connected-20160429
osvehicle-connected-20160429osvehicle-connected-20160429
osvehicle-connected-20160429
 
tdc2015-strategy-devel-20150916
tdc2015-strategy-devel-20150916tdc2015-strategy-devel-20150916
tdc2015-strategy-devel-20150916
 
tizen-maintain-20150413rzr
tizen-maintain-20150413rzrtizen-maintain-20150413rzr
tizen-maintain-20150413rzr
 
Iotivity atmel-20150328rzr
Iotivity atmel-20150328rzrIotivity atmel-20150328rzr
Iotivity atmel-20150328rzr
 
Tizen store-z1-20150228rzr
Tizen store-z1-20150228rzrTizen store-z1-20150228rzr
Tizen store-z1-20150228rzr
 
Iotivity tizen-fosdem-2015
Iotivity tizen-fosdem-2015Iotivity tizen-fosdem-2015
Iotivity tizen-fosdem-2015
 
FOSDEM2015: Porting Tizen:Common to open source hardware devices
FOSDEM2015: Porting Tizen:Common to open source hardware devicesFOSDEM2015: Porting Tizen:Common to open source hardware devices
FOSDEM2015: Porting Tizen:Common to open source hardware devices
 
tizen-oshw-tds14sh
tizen-oshw-tds14shtizen-oshw-tds14sh
tizen-oshw-tds14sh
 
Tizen platform-dev-tds14sh
Tizen platform-dev-tds14shTizen platform-dev-tds14sh
Tizen platform-dev-tds14sh
 
Tdc2014 tizen common_20140603
Tdc2014 tizen common_20140603Tdc2014 tizen common_20140603
Tdc2014 tizen common_20140603
 
tizen-upstream-coop-tdc2014-pcoval
tizen-upstream-coop-tdc2014-pcovaltizen-upstream-coop-tdc2014-pcoval
tizen-upstream-coop-tdc2014-pcoval
 
Tizen contrib-fosdem-20140201
Tizen contrib-fosdem-20140201Tizen contrib-fosdem-20140201
Tizen contrib-fosdem-20140201
 
Tizen sdk-solutionslinux-20130529
Tizen sdk-solutionslinux-20130529Tizen sdk-solutionslinux-20130529
Tizen sdk-solutionslinux-20130529
 
Tizen architecture-solutionslinux-20130529
Tizen architecture-solutionslinux-20130529Tizen architecture-solutionslinux-20130529
Tizen architecture-solutionslinux-20130529
 

Recently uploaded

Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Peter Udo Diehl
 

Recently uploaded (20)

Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
 
Introduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG EvaluationIntroduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG Evaluation
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 
In-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsIn-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT Professionals
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
 
AI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekAI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří Karpíšek
 

tizen-rt-javascript-20181011

  • 1. Samsung Open Source Group 1 https://www.meetup.com/Rennes-Embedded/ JavaScript in constrained devices Using :RT with IoT.js #RennesEmbedded Rennes, France <2018-10-11> Philippe Coval Samsung Open Source Group / SRUK p.coval@samsung.com
  • 2. Samsung Open Source Group 2 https://www.meetup.com/Rennes-Embedded/ What do you know of ? ● Operating System powered by Linux Kernel ● Shipped into consumer electronics products – TVs, Wearables, Home kitchen appliances… ● Tizen the OS of Everything? – What about low-end and low-cost IoT devices? ● Note: uClinux is lowering requirements – but not optimal so we need a dedicated kernel ! ● TizenRT is targeting middle configurations (RAM+Flash): – Cortex M3 (30KB+512KB), M4 (256KB+16MB), R4 (2MB+16MB)
  • 3. Samsung Open Source Group 3 https://www.meetup.com/Rennes-Embedded/ TizenRT's origin ● TinyAra 2015 project to collect, store, and deliver IoT sensor data using: – IoTivity for connectivity & AraStorage: Data management – Sources released to public on tizen.org (SOSCON2016) ● It was based on NuttX RealTime kernel (deterministic and priorities) – UNIX/Linux inspired OS (+shell +apps) comply to standards, POSIX, GNU tools – Initial release in 2007, community led by main author Gregory Nutt – Stable & Mature (2.5M LoC), 8 to 32 bits, ~20 archs, 200 boards (<16KB) – BSD Licensed: Industry & community adoption ● TizenRT is the whole stack: TinyAra kernel + middlewares (TDC2017)
  • 4. Samsung Open Source Group 4 https://www.meetup.com/Rennes-Embedded/ Tizen:RT Architecture Current status: 2.0_GBM_M1 + ~1000 patches
  • 5. Samsung Open Source Group 5 https://www.meetup.com/Rennes-Embedded/ Tizen:RT plan for reliability ● Memory protection unit (MPU > MMU) – User/Kernel separation ● Per thread mem protection ● Micro kernel architecture – Only for scheduling tasks, memory, IPC ● + user space services (Net, drivers...) ● Fault Tolerance – Self healing ● restart services (and dependencies) – Fallback option: Live update (DM)
  • 6. Samsung Open Source Group 6 https://www.meetup.com/Rennes-Embedded/ Application development on Tizen:RT ● Platform is supporting native development (POSIX) – with optional middlewares: – WiFi, LWIP port for IPv6, +LWM2M, CoAP, HTTP, DTLS, WebSockets, MQTT – Wakaama (LWM2M) for device management – IoTivity for seamless connectivity between devices ● But some (or most) applications – Are not requiring low level primitives ● When high level API are available – Need secured context ● For many developers "Any application, that can be written in JavaScript will eventually be written in JavaScript." ~Jeff Atwood
  • 7. Samsung Open Source Group 7 https://www.meetup.com/Rennes-Embedded/ “Simplicity is the ultimate sophistication.” ~Leonardo da Vinci
  • 8. Samsung Open Source Group 8 https://www.meetup.com/Rennes-Embedded/ IoT.js: platform powered by JerryScript engine ● JerryScript: A JavaScript interpreter – Optimized for constrained devices: <64 KB RAM & <200 KB ROM – Available in various RTOS: Tizen:RT, RIOT, Zephyr… ● IoT.js: Runtime environment – Supports modules (built in) ● Timers, GPIO, ADC, I2C,UART ● UDP, HTTP, WebSockets, DNS, BLE ● Developer friendly environment: – Develop using iotjs on GNU/Linux – Port and deploy to constrained device – Or even port modules (NPM)
  • 9. Samsung Open Source Group 9 https://www.meetup.com/Rennes-Embedded/ “Any sufficiently advanced technology is indistinguishable from magic.” ~ Arthur C. Clarke
  • 10. Samsung Open Source Group 10 https://www.meetup.com/Rennes-Embedded/ Demo ! https://youtu.be/S7zpBpnpflU#tizen-rt-lpwan-20180204rzr ● https://my.wirelessthings.be/index.php/device/device_view/1229
  • 11. Samsung Open Source Group 11 https://www.meetup.com/Rennes-Embedded/ Mozilla IoT & WebThings powered by ARTIK https://youtu.be/qrFTn0eA8iQ#web-of-things-agriculture-20180712rzr https://youtu.be/qrFTn0eA8iQ web-of-things-agriculture-20180712rzr#
  • 12. Samsung Open Source Group 12 https://www.meetup.com/Rennes-Embedded/ Summary ● Tizen is based on Linux kernel for high end devices ● Tizen ecosystem is now addressing more constrained IoT devices – Tizen:RT was originally based on NuttX kernel, ● then evolved into micro kernel architecture ● Tizen:RT is open to application developers by providing – Native, C, C++ POSIX standard libraries – Javascript runtime, using IoT.js + JerryScript interpreter ● Open Community (github.com/Samsung) & Tools: SDK (CLI or IDE)
  • 13. Samsung Open Source Group 13 https://www.meetup.com/Rennes-Embedded/ References  Entry points: – https://fosdem.org/2018/schedule/event/tizen_rt/ – https://wiki.tizen.org/Category:RT – https://github.com/Samsung/TizenRT/  Keep in touch online: – https://s-opensource.org/author/philcovalsamsungcom/ https://wiki.tizen.org/wiki/Meeting – https://wiki.tizen.org/wiki/Events – https://wiki.tizen.org/wiki/FOSDEM More: ● https://source.tizen.org/documentation/tizen-rt ● https://www.artik.io/modules/artik-05x/ ● https://developer.artik.io/documentation/artik-05x/getting-started/ ● http://www.nuttx.org/ ● http://youtube.com/channel/UC0QciIlcUnjJkL5yJJBmluw ● https://www.slideshare.net/MyungJooHam/tdc-mjham-armkernelintizen3noani ● http://opensource.samsung.com/ Bonus tip: for demo convenience I am drafting demo recipes (WIP) git clone https://github.com/rzr/TizenRT
  • 14. 14Samsung Open Source Group Thank you https://wiki.tizen.org/wiki/User:Pcoval BTW greetings to : Resources: flaticons CC