This document provides a high-level introduction to Brillo and Weave:
- Brillo is Google's lightweight OS for IoT devices with minimal RAM requirements, based on Android but without graphics and apps. Weave is an open communication protocol for connecting IoT devices to each other, phones, and the cloud.
- Brillo prioritizes security with features like verified boot, cryptographic chains of trust, and SELinux enforcement. Weave provides link-level security, data privacy via TLS, and OAuth 2.0 authentication.
- Example starter boards for developing with Brillo include Intel Edison kits with Arduino or SparkFun boards, and MinnowBoard, all supported through the Brillo board
Raspberry PI has been around for over 4 years. In the past year it matured significantly and became a valid tool for building professional IoT gateways and Fast! In this talk I will review its abilities - From RF to OS to code to cloud connectivity, and create - on stage - an A to Z IoT gateway.
Building Voice Controls and Integrating with Automation Actions on an IoT Net...Intel® Software
Voice recognition is a natural method that people can use to interact with and automate smart devices. In this session, we build a microservice for automation of IoT using local fog computing resources and cloud-based serverless functions. We also create a voice-enabled chatbot that triggers automatic actions on an IoT network.
IoT with only your laptop - Microsoft Garage - January 2021Peter Gallagher
In this short talk, I demo the various web simulators available to get started with IoT.
Devices include;
BBC Micro:Bit
Arduino Uno
Raspberry Pi + Sense Hat
MX Chip
Raspberry PI has been around for over 4 years. In the past year it matured significantly and became a valid tool for building professional IoT gateways and Fast! In this talk I will review its abilities - From RF to OS to code to cloud connectivity, and create - on stage - an A to Z IoT gateway.
Building Voice Controls and Integrating with Automation Actions on an IoT Net...Intel® Software
Voice recognition is a natural method that people can use to interact with and automate smart devices. In this session, we build a microservice for automation of IoT using local fog computing resources and cloud-based serverless functions. We also create a voice-enabled chatbot that triggers automatic actions on an IoT network.
IoT with only your laptop - Microsoft Garage - January 2021Peter Gallagher
In this short talk, I demo the various web simulators available to get started with IoT.
Devices include;
BBC Micro:Bit
Arduino Uno
Raspberry Pi + Sense Hat
MX Chip
The LAMP (Linux/Apache HTTP Server/MySQL/PHP) stack has dominated web infrastructures, in the IoT it is believed a similar open source stack will dominate IoT deployments. This presentation will look at the new technology requirements and architectures required for IoT solutions. It will identify three stacks of software required by any IoT solution, and finally present how open source communities, such as the Eclipse IoT community, are already supplying the critical software technology needed by IoT solution providers.
Presented at IoT Evolution, Feb 8 2017
AllSeen Alliance members EnOcean Alliance, Insteon, Heaven Fresh Canada and Muzzley hosted a roundtable panel discussion at Mobile World Congress 2015.
Panelists: Eduardo Pinheiro, Muzzley
Graham Martin, EnOcean Alliance
Joe Gerber, Insteon
Imran Bashir, Heaven Fresh Canada Inc.
Ivan Judson, PhD, Felix Rieseberg and Ville Rantala are open source engineers for Microsoft. This is the presentation they gave at the AllSeen Alliance's Partner Programme at Mobile World Congress 2015.
Developing IoT Applications Using Intel® System Studio | Eclipse IoT Day Sant...Eclipse IoT
Intel® System Studio is based on the Eclipse CDT project and offers a comprehensive set of tools under a free and renewable licensing model. This software suite allows you to build, debug, analyze and optimize applications and can be used throughout the entire development cycle from hardware bring-up to deploying the final product. During this presentation, we will introduce you to Intel® System Studio and show how to develop and debug IoT and systems applications. This includes running them locally and remotely on popular Intel Developer Kit platforms like the Aaeon UP2 and IEI Tank, as well as enhancing applications through cloud connectors, sensors, and libraries.
//SPEAKER
Anjali Gola, Intel
Presentation of the Mainflulux team held In Portland at Embedded Linux Conference & OpenIoT Summit North America March 14 2018.
IoT middleware platforms have become necessary building blocks of every complex vertical IoT solution. Traditionally, the platforms have been built to run in the cloud; wide availability and rich capabilities have driven the first wave of IoT adoption. As the scale and complexity of IoT projects have grown, however, the need to provide solutions that move to process to the network edge has also grown. Down-scaling cloud capabilities is complex in part because of the more modest capabilities of edge computing in typical deployment models. As a result, there are few open solutions that address this need.
We introduce Mainflux (https://github.com/Mainflux/mainflux) - a IoT Platform for cloud and edge that can simultaneously scale-out to hundreds of nodes in the cloud but can also scale down to a modest RaspberryPi computer without changing a single line of code. This scalability is achieved thanks to careful architecture, the effectiveness of the Go programming language, and technology choices used in the implementation.
We will discuss the platform, its use and application, and our work to bring core concepts from it to various open source projects including EdgeX.
Repository for Mainflux open source and royalty-free IoT platform published under Apache-2.0 license, free download https://github.com/mainflux/mainflux
Mainflux company official website: https://www.mainflux.com/
Finding a scalable open-source IoT framework that reliably and securely connects your devices to the cloud while fitting your business needs, not dictating them, turns out to be a little more challenging than it first looks.
For a business or professional service, an IoT system needs to be able to offer four things
1) Scalability
Be able to scale the solution in a manner that doesn't have operating costs/bandwidth run out of control.
2) Be secure
Operate in a secure environment that prevents the system losing date or being hi-jacked.
3) Use open-standards throughout
Be based on open-source standards to avoid proprietary lock-in and allow the business to control its own destiny, contribute, collaborate, partner or quickly and easily find help in the community, if required.
4) Manage & Inter-operate
The framework must allow that allow remote day-to-day device management and interoperability with other sensors & systems
Find out more about how the Creator IoT Framework meets these challenges
This paper is a comprehensive survey of the various operating systems available for the Internet of Things environment. At first the paper introduces the various aspects of the operating systems designed for the IoT environment where resource constraint poses a huge problem for the operation of the general OS designed for the various computing devices. The latter part of the paper describes the various OS available for the resource constraint IoT environment along with the various platforms each OS supports, the software development kits
available for the development of applications in the respective OS’es along with the various protocols implemented in these OS’es for the purpose of communication and networking.
IoT and Edge Integration with Open Source Frameworks:
Internet of Things (IoT) and edge integration is getting more important than ever before due to the massively growing number of connected devices year by year.
This session shows open source frameworks built to develop very lightweight microservices, which can be deployed on small devices or in serverless architectures with very low resources and wire together all different kinds of hardware devices, APIs and online services.
The focus of this session lies on showing open source projects such as Eclipse Kura, Node-RED or Flogo, which offer a framework plus zero-code environment with web IDE for building and deploying integration and data processing directly onto connected devices using IoT standards such as MQTT, WebSockets or CoaP, but also other interfaces such as Twitter feeds or REST services.
The end of the session discusses the relation to other components in a IoT architecture including cloud IoT platforms and big data respectively streaming analytics solutions (such as Apache Storm, Flink, Spark Streaming, Samza, StreamBase, Apama).
Cloud Options for Wearable Data AnalysisGene Leybzon
Look at available options for collecting and analyzing data generated by IOT devices including wearable devices. Number of vendors including Amazon, IBM, and Google starting to offer architectural blueprints for IoT data collection and analysis. We will discuss how to find a solution that will work for you.
The LAMP (Linux/Apache HTTP Server/MySQL/PHP) stack has dominated web infrastructures, in the IoT it is believed a similar open source stack will dominate IoT deployments. This presentation will look at the new technology requirements and architectures required for IoT solutions. It will identify three stacks of software required by any IoT solution, and finally present how open source communities, such as the Eclipse IoT community, are already supplying the critical software technology needed by IoT solution providers.
Presented at IoT Evolution, Feb 8 2017
AllSeen Alliance members EnOcean Alliance, Insteon, Heaven Fresh Canada and Muzzley hosted a roundtable panel discussion at Mobile World Congress 2015.
Panelists: Eduardo Pinheiro, Muzzley
Graham Martin, EnOcean Alliance
Joe Gerber, Insteon
Imran Bashir, Heaven Fresh Canada Inc.
Ivan Judson, PhD, Felix Rieseberg and Ville Rantala are open source engineers for Microsoft. This is the presentation they gave at the AllSeen Alliance's Partner Programme at Mobile World Congress 2015.
Developing IoT Applications Using Intel® System Studio | Eclipse IoT Day Sant...Eclipse IoT
Intel® System Studio is based on the Eclipse CDT project and offers a comprehensive set of tools under a free and renewable licensing model. This software suite allows you to build, debug, analyze and optimize applications and can be used throughout the entire development cycle from hardware bring-up to deploying the final product. During this presentation, we will introduce you to Intel® System Studio and show how to develop and debug IoT and systems applications. This includes running them locally and remotely on popular Intel Developer Kit platforms like the Aaeon UP2 and IEI Tank, as well as enhancing applications through cloud connectors, sensors, and libraries.
//SPEAKER
Anjali Gola, Intel
Presentation of the Mainflulux team held In Portland at Embedded Linux Conference & OpenIoT Summit North America March 14 2018.
IoT middleware platforms have become necessary building blocks of every complex vertical IoT solution. Traditionally, the platforms have been built to run in the cloud; wide availability and rich capabilities have driven the first wave of IoT adoption. As the scale and complexity of IoT projects have grown, however, the need to provide solutions that move to process to the network edge has also grown. Down-scaling cloud capabilities is complex in part because of the more modest capabilities of edge computing in typical deployment models. As a result, there are few open solutions that address this need.
We introduce Mainflux (https://github.com/Mainflux/mainflux) - a IoT Platform for cloud and edge that can simultaneously scale-out to hundreds of nodes in the cloud but can also scale down to a modest RaspberryPi computer without changing a single line of code. This scalability is achieved thanks to careful architecture, the effectiveness of the Go programming language, and technology choices used in the implementation.
We will discuss the platform, its use and application, and our work to bring core concepts from it to various open source projects including EdgeX.
Repository for Mainflux open source and royalty-free IoT platform published under Apache-2.0 license, free download https://github.com/mainflux/mainflux
Mainflux company official website: https://www.mainflux.com/
Finding a scalable open-source IoT framework that reliably and securely connects your devices to the cloud while fitting your business needs, not dictating them, turns out to be a little more challenging than it first looks.
For a business or professional service, an IoT system needs to be able to offer four things
1) Scalability
Be able to scale the solution in a manner that doesn't have operating costs/bandwidth run out of control.
2) Be secure
Operate in a secure environment that prevents the system losing date or being hi-jacked.
3) Use open-standards throughout
Be based on open-source standards to avoid proprietary lock-in and allow the business to control its own destiny, contribute, collaborate, partner or quickly and easily find help in the community, if required.
4) Manage & Inter-operate
The framework must allow that allow remote day-to-day device management and interoperability with other sensors & systems
Find out more about how the Creator IoT Framework meets these challenges
This paper is a comprehensive survey of the various operating systems available for the Internet of Things environment. At first the paper introduces the various aspects of the operating systems designed for the IoT environment where resource constraint poses a huge problem for the operation of the general OS designed for the various computing devices. The latter part of the paper describes the various OS available for the resource constraint IoT environment along with the various platforms each OS supports, the software development kits
available for the development of applications in the respective OS’es along with the various protocols implemented in these OS’es for the purpose of communication and networking.
IoT and Edge Integration with Open Source Frameworks:
Internet of Things (IoT) and edge integration is getting more important than ever before due to the massively growing number of connected devices year by year.
This session shows open source frameworks built to develop very lightweight microservices, which can be deployed on small devices or in serverless architectures with very low resources and wire together all different kinds of hardware devices, APIs and online services.
The focus of this session lies on showing open source projects such as Eclipse Kura, Node-RED or Flogo, which offer a framework plus zero-code environment with web IDE for building and deploying integration and data processing directly onto connected devices using IoT standards such as MQTT, WebSockets or CoaP, but also other interfaces such as Twitter feeds or REST services.
The end of the session discusses the relation to other components in a IoT architecture including cloud IoT platforms and big data respectively streaming analytics solutions (such as Apache Storm, Flink, Spark Streaming, Samza, StreamBase, Apama).
Cloud Options for Wearable Data AnalysisGene Leybzon
Look at available options for collecting and analyzing data generated by IOT devices including wearable devices. Number of vendors including Amazon, IBM, and Google starting to offer architectural blueprints for IoT data collection and analysis. We will discuss how to find a solution that will work for you.
Els Oosthoek, artikel TVOO 2017 Nick van Dam Els Oosthoek
Learning agility; lifelong learning. Niemand kan daar tegen zijn. Maar hoe staat we er eigenlijk voor in Nederland? En wat is er nodig? Ik interviewde Nick van Dam, net gestart als Hoogleraar Corporate Learning and Development bij Nyenrode Business Universiteit.
Earthsoft Foundation of Guidance (EFG) is working as an NGO/NPO for students - Education & Career guidance and for Professionals for soft skills enhancements. I am working
on speading , sharing knowledge; experience globally.All presentations have been uploaded at www.slideshare.net and search using key word "earthsoft"
What you are today is based on deeds & decisions of the past
Life of individual can be much better if one has sought career guidance & took right decisions at critical mile stones Exhibiting & utilising soft skills and Has avoided mistakes
in past if any
Earthsoft Foundation of Guidance to be an NGO globally aiming for
Students - Career guidance to decide path aligned to the potential & interest
Professionals - Soft skill enhancements to be good human being & professional
Citizen – Learning from mistakes of others & avoiding those in own life
Be mentor using your education, knowledge & experience to contribute for a social cause & do conduct free training/ workshop seeking help of existing platforms like
rotary,etc
Kindly spread to your friends.Thank you!
- Earthsoft Foundation of Guidance
Let us make earth little softer..
From company business intelligence to predictive value chain business intelligence and from internally-focused and historically based risk and performance forecasting to leveraging the forecasting and analytics wisdom of the market Best In Class:
:
SIMMETHOD provides predictive competitive intelligence linking the value chain via a common set of metrics enabling partners (suppliers, customers) to align their strategies and synchronize their business models, processes and execution.
SIMMETHOD risk and performance management global database is based on competitive intelligence measuring of external market forces that will have major risk and opportunities implications for you and your business.
Earthsoft Foundation of Guidance (EFG) is working as an NGO/NPO for students - Education & Career guidance and for Professionals for soft skills enhancements. I
am working on speading , sharing knowledge; experience globally.All presentations have been uploaded at www.slideshare.net and search using key word
"earthsoft"
What you are today is based on deeds & decisions of the past
Life of individual can be much better if one has sought career guidance & took right decisions at critical mile stones Exhibiting & utilising soft skills and Has
avoided mistakes in past if any
Earthsoft Foundation of Guidance to be an NGO globally aiming for
Students - Career guidance to decide path aligned to the potential & interest
Professionals - Soft skill enhancements to be good human being & professional
Citizen – Learning from mistakes of others & avoiding those in own life
Be mentor using your education, knowledge & experience to contribute for a social cause & do conduct free training/ workshop seeking help of existing platforms
like rotary,etc
Kindly spread to your friends.Thank you!
- Earthsoft Foundation of Guidance
Let us make earth little softer..
Android Things is the latest attempt from Google to connect the dots between the cloud and devices by introducing an OS that is exclusively built for IoT devices. Initially announced as project Brillo, Android Things helps developers to build devices faster and enable them integrate with cloud services. This presentation traces the architectural aspects of Android Things by connecting it back with Embedded Linux, Embedded Android and Brillo.
Skynet is coming! The Internet of Things (IoT) is rapidly growing all around us. Soon we will be surrounded by internet connected devices that may be tracking us, recording us, denying us access, driving us around, keeping us alive, and even automatically ordering us toilet paper. Join this digital safari for a guided tour of IoT Architecture, Messaging, and Security, in addition to an overview of the hardware available from Raspberry Pi to Arduino. In addition to the hardware, this talk covers the spectrum of the Microsoft Azure IoT Suite services (IoT Hubs, Service Bus, Stream Analytics, etc), as well as Azure Functions. It also covers why and how to use these services to build a big data style Lambda Architecture for your Internet of Things that will scale. When the safari is complete you’ll have the knowledge to begin building Skynet yourself.
Raspberry Pi, Arduino, and the Azure cloud, Oh My!
Sony R&D Center has been though robotics history and products for years. As robotics platform and Robotics Operating System (ROS) getting matured, there is a requirement to handle the distributed system integration. Using Kubernetes on edge cluster system, there are a lot of advantages such as application lifecycle, deployment and recovery. Also using CNI and ROS Data Distributed System, it can construct distributed system on edge cluster, so that multiple robots can connect directedly and work collaboratively for the specific task. We will share how we can use Kubernetes on edge including deployment robotics application and possible problems based on our experience. Furthermore, we will share our approach to support edge dependent platform with device-plugin to attach hardware resources and even virtual devices which access to the host system such as 3rd party application.
The presentation focuses on infrastructure types suitable for Cloud Foundry. It also explains the mechanism of communication between the PaaS and different cloud providers.
Building Better IoT Applications without ServersIan Massingham
This deck introduces the benefits of using a the AWS Cloud to build Connected Device/IoT Applications without running virtual machines or other high-maintenance service components.
FIWARE Wednesday Webinars - How to Debug IoT AgentsFIWARE
How to Debug IoT Agents Webinar - 17th April 2019
Corresponding webinar recording: https://youtu.be/FRqJsywi9e8
Chapter: IoT Agents
Difficulty: 3
Audience: Any Technical
Presenter: Jason Fox (Senior Technical Evangelist, FIWARE Foundation)
How to debug IoT Agents - investigating what goes wrong and how to fix it.
This presentation by Roman Stratiienko (Software Engineer, Consultant, GlobalLogic) and Stanislav Goncharov (Senior Software Engineer, Consultant, GlobalLogic) was delivered at GlobalLogic Kharkiv Embedded TechTalk #5 on November 22, 2019.
Speakers shared their experience and results on the challenge started last year to make porting of cutting edge Android 10 to low-cost Orange Pi Plus 2E platform. They made it open source and available for every embedded s/w enthusiast based on AOSP project and Linux kernel upstream.
Event materials: https://www.globallogic.com/ua/events/kharkiv-embedded-techtalk-5/
Željko je razvijalec pri podjetju INFINUM, kjer sodeluje pri razvoju različnih Android aplikacij. Na predavanju je detaljno predstavil kaj nam novega prinaša Android 5.0 kot so Material design, ART runtime, MultiDexSupport in drugo ter odgovoril na vprašanje, zakaj bo Android tudi v prihodnosti najbolj zastopljen operacijski sistem na področju mobilnih tehnologij.
This document is part of a brief study on waste management in Tehran and incineration technology for Municipal Solid Waste (MSW) in some other major cities.
R3 | Analytics, Insight and RA for MVAS economy Jalal Rohani
R3 is an RAFM management solution for Mobile Value Added Services (MVAS) and Mobile Applications which brings analytics and insights for the OpCos and app owners.
Digital Marketing - Strategy, Planning & Execution - Part 2Jalal Rohani
Slides for my digital marketing workshop and ALECRA method.
ALECRA stands for Awareness, Lead, Engagement, Conversation (Conversion), Retention and Advocacy.
Digital Marketing - Strategy, Planning & Execution - Part 1Jalal Rohani
Slides for my digital marketing workshop and ALECRA method.
ALECRA stands for Awareness, Lead, Engagement, Conversation (Conversion), Retention and Advocacy.
بازاریابی، با کمی دقت و سرعت بیشتر | Marketing and AIJalal Rohani
مقدمهای بر صنعت تبلیغات در سال ۲۰۱۸ و فرصتهای استفاده از هوشمصنوعی (AI) در بازاریابی - ارایه شده در همایش آینده وب و موبایل - اسفند ۱۳۹۶
---
Basic introduction to advertising industry forecast in 2018 according to MAGNA.
A short review of AI usage in marketing and digital marketing.
Step by step guide for a 2 hour introduction to PRIZM and some baseline to understand DEMOGRAPHIC options better. It is PDF export from PREZI
Altough Claritas Prizm will be replaced soon by "Nielsen Segmentation & Market Solutions" but IMHO, PRIZM is the best way to understand & feel demographic segmentation better.
An Introduction to BitCoin and Cryptocurrency EcosystemJalal Rohani
A very short introduction to BitCoin and cryptocurrency market capital. Also you can can see a brief introduction to one of the new business made over the concept, CoinBase.
Google Calendar is a versatile tool that allows users to manage their schedules and events effectively. With Google Calendar, you can create and organize calendars, set reminders for important events, and share your calendars with others. It also provides features like creating events, inviting attendees, and accessing your calendar from mobile devices. Additionally, Google Calendar allows you to embed calendars in websites or platforms like SlideShare, making it easier for others to view and interact with your schedules.
Building a Raspberry Pi Robot with Dot NET 8, Blazor and SignalR - Slides Onl...Peter Gallagher
In this session delivered at Leeds IoT, I talk about how you can control a 3D printed Robot Arm with a Raspberry Pi, .NET 8, Blazor and SignalR.
I also show how you can use a Unity app on an Meta Quest 3 to control the arm VR too.
You can find the GitHub repo and workshop instructions here;
https://bit.ly/dotnetrobotgithub
1. Brillo/Weave Part 1: High Level Introduction
Open IoT Summit
Bruce Beare
April 2016
2. Introduction to Brillo* and Weave*
– Introduction to Brillo
– Introduction to Weave
– Brillo Security Features
– Source Code Structure
– Intel Starter Boards
– Next Steps
3. Brillo/Weave
Brillo: Google’s OS for IoT MPU devices
• Targeted at smart homes
• Expanding to buildings and industry
• Supports MPU devices w/ min 35MB of RAM.
Weave: An open communications protocol
• Devices can connect and interact with one another, the
internet, and your phone
• Ensures that access to your device and user data is secure
and private.
Libuweave: A tiny Weave implementation
• Communications Stack intended to be portable to MCU
based devices
Graphic Source: Google
4. Home Contacts Phone Browser ...
Package
Manager
Telephony
Manager
Resource
Manager
Location
Manager
Notification
Manager
Activity
Manager
Window
Manager
Content
Providers
View
System
Application Framework
Applications
Libraries
Android Runtime
SGL SSL Libc
OpenGL FreeType WebKit
Surface
Manager
Media
Framework
SQLite
Virtual
Machine
Libraries
Core
Keypad
Driver
Wifi Driver
Audio
Driver
Power
Mgmt
Display
Driver
Camera
Driver
Flash
Driver
Binder
Driver
Linux Kernel
Brillo: an Operating System based on Android
Simpler… Smaller… IoT Focused
• C/C++ environment
• Binder IPC
• No Java Applications, framework, runtime
• No Graphics
• 35MB Memory Footprint (minimum)
A/B
Bootloader
Analytics
Reporting
Metrics
Reporting
Weave
A/B OTA
Daemons
…
5. Weave* is..
• A communications platform for IoT devices
• Device setup, phone-to-device-to-cloud
communication
• User interaction from mobile devices and the web
• Transports: 802.15.4 (zigbee, threads), BLE, WiFi,
Ethernet, Others possible
• Schema Driven (json)
Associates Weave XMPP requests with application
function invocations
• Web apps may be written with Google* API support
• OAuth 2.0 Authentication, Google as AS
Graphic Source: Google
6. Weave* Device Schema
• Device manufacturers are encouraged to support a
standardized schema for their device
(toaster, fridge, thermostat, …)
• IHV may extend the schema
• The user will be able to share control of their devices.
Friends, 3rd party Weave (web) applications
• Cloud based apps will better integrate all of a user’s
devices over time
Google Weave
IPSO Alliance
DeviceHive
Allentia
IoTivity
8. Brillo Devices are Administered via the Google Cloud
• View Device Status
• Rename Devices
• Share Devices with apps, friends
• Send commands to Devices
FAQ: Do I have to use Google’s Cloud?
There’s nothing to prevent you from modifying Weave to
use a different cloud service; but there’s nothing to make
this easy either. It is unlikely that Google will release the
cloud-side sources.
You could certainly add a completely different cloud back-
end as well and develop a product with the Brillo OS but
without Weave.
Graphic Source: Google
9. Registering (provisioning) a Brillo* Device
Connect to the Brillo’s WiFi AP via a Mobile Device
Provide information to the Device:
• OAuth* 2.0 identity
• WiFI Access Point
• PIN Code
Device contacts the Cloud
• Downloads updates
The Device is Ready
11. Brillo* Security Features & Requirements
Requirements are largely the same as Android:
• Google* Verified Boot
• HW Keymaster 1.0 (but limited to 2k keys)
• Cryptographic Chain of trust
• SE-Linux* Enforcement
• Limit root processes
12. Weave* Security Features
Weave provides link-level security and data privacy:
• SSL/TLS for Link Level Data privacy
• Device and Application access may be shared with friends or apps
• Oauth* 2.0 used for Authentication, crypto Certificates
• Google* provides the Authentication Server
13. Brillo vs. Ostro
Brillo Ostro
Based on (Kernel) Linux Linux
Based on (Userland) Android Yocto
Over the Air Updates Yes Yes, but needs a cloud service to
support
Compatibility with Ubuntu, Fedora
Source Packages
Moderate (bionic library, build system) High
Compatibility with Android Source
Packages
Yes No
IPC Mechanism Binder D-BUS, Linux IPC
Open Source Yes (AOSP) Yes (github)
14. Weave vs. OCF/IoTivity
Weave IoTivity
Existing/Available Cloud Infrastructure Google No
Open Source Cloud Infrastructure No Yes
User Data Privacy Yes for transport layer.
Yes for Local Link.
No End-to-End through Cloud.
Yes for transport layer.
Yes for Local Link.
End-to-End in design.
Certificate based Authentication Yes No
Able to self-organize a network No Yes
Request/Response Protocol HTTPS (tcp) CoAP (tcp, udp)
Multi-OS, Multi-Platform Limited Yes
Gateway Support to non-native devices Planned Yes
Certification Available Yes Yes
16. Brillo* in the AOSP (Android*) Tree
Golden Rule
• Google* projects are upstream first
Board Support Package
• vendor/bsp/intel
Pre-builts
Externally sourced, not part of AOSP
• hardware/bsp/intel
HALs, SOC Definitions
• device/intel/<board>
Board Definitions
• hardware/bsp/kernel/intel/*
Transition to a google common kernel
Android AOSP Projects: 506
Brillo AOSP Projects: 190
Projects common to both: 146
Projects Unique to Brillo: 42
• device/generic/brillo
• platform/external/gentoo/integration
• platform/external/gentoo/overlays/gentoo
• platform/external/gentoo/portage
• platform/external/shflags
• platform/system/peripheralmanager
• platform/tools/bdk
• product/google/common
• product/google/example-ledflasher
• platform/hardware/bsp/kernel/common/v4.4
• kernel/common
• device/intel/edison
• platform/hardware/bsp/intel
• platform/hardware/bsp/kernel/intel
• device/qcom/dragonboard
• platform/hardware/bsp/qcom
• platform/hardware/bsp/kernel/qcom
17. Brillo* BDK (board development kit)
Procedure:
1. Setup your Workstation (Ubuntu*)
2. Download the BDK
3. brunch bsp download edison
4. Structure your project/product
5. brunch product build
6. brunch provision
7. brunch product tool fastboot reboot
8. brunch fastboot tool adb shell
9. Register your device with the cloud
The brunch command is a python front-end for many of the
product development tasks.
brunch product {build,gdb,provision,envsetup,tool,create} ...
build Build a product project from the current directory
gdb Run gdbclient.py for a given product
provision Run provision-device for a given product
envsetup Emit the environment for the product in the CWD
tool Run a host tool for a given product
create Create a product project in the current directory
brunch bsp {status,update,install,download,refresh,list} ...
status Get detailed information on the current status of a
device BSP.
update Update an existing BSP, or Download a new BSP.
install Alias, see brunch bsp update.
download Alias, see brunch bsp update.
refresh Refresh an existing BSP. Removes and re-downloads all
packages for a specified device.
list List available BSPs, and their current installation
status.
18. Brillo* BSP Structure and Contents
hardware/bsp/<vendor>
• SoC Definition .mk files
• init *.rc files for the SoC, HALs
• SELinux Policies
• HAL Source Code
• Tool Source Code
• Library Source Code
• Example Source Code
19. Brillo* BSP Structure and Contents
device/<vendor>/<board>
Board Specific Files - defines the lunch target
• Product Structuring *.mk files
• init *.rc scripts for the board
• Flashing scripts
• File System Mount Table
• Partitioning Table
• SELinux Policy files
20. Brillo* BSP Structure and Contents
vendor/bsp/<vendor>
Prebuilt Binaries
• Downloaded via the Brunch command
• Not in an AOSP Repository
• Bootloader binaries
• Microcode/firmware
• BIOS/firmware
Include information on how to rebuild
the firmware where applicable.
22. The Intel® Edison Kit for Brillo*
• The Intel® Edison kit with the Arduino*
Expansion Board was the first Brillo Starter
Board
• Intel is providing the board support package
• MANY sensors and devices are available for
prototyping with this board
• Brillo Starter Board
• Supported in AOSP since Nov ‘15.
23. Intel® Edison Board for SparkFun*
Compare to the Intel® Edison kit with
Arudino:
• Same Edison CPU Module
• Simpler GPIO/Bus structure
• Stack on boards
• Smaller form factor
• Battery power available
• Many sensors available
• Brillo Starter Board
• Supported in AOSP with the February
Brillo General Availability
24. Intel® Expansion Kit with MinnowBoard* (Baytrail-M)
• Similar Bus availability to Intel® Edison kits
• More powerful processor, Graphics and GPU enabled
• Larger RAM
• Additional storage options
• Add “lures” to expand to additional busses, sensors
• Brillo* Starter Board
• Supported in AOSP TIP
• Will be part in the BDK for General Availability
25. Aaeon UP Board
• Kickstarter UP-board is a likely AOSP Starter Board
• Adds MIPI/DSI, MIPI/CSI ports
• Adds USB-Peripheral (for fastboot, adb)
• CherryTrail Platform
http://up-board.org
32. Logging
• Crash Reporting
• CPU Usage
• Use Time
• Data Partition Use
• Memory Used
• Page Faults
• Storage Activity
33. Next Steps
Likely futures for Brillo:
• Java*
• Android* Framework
• Camera Support
• Display via surface flinger
• Bluetooth*
• Voice Command and Control
• Other connectivity options
Intel Exploring:
• JavaScript
• Node.js
• NW.js (for display)
34. • Hardware Access Layer
• Code Labs
• Hello World Brillo IO Programming
• Hello World Weave Integration
• Enable Google Services and APIs
• Web Service Development
What’s in Part 2 of this Talk?