rapid prototyping with open source software and hardware
TRANSCRIPT
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
1/29
Rapid Embedded Prototyping with Open Source:Software and Hardware
Alison ChaikenNokia Mobility Solutions
Sunnyvale [email protected]
July 12, 2011
Principles:
Reuse components, both own and COTS, HW and SWModular, flexible designUnit testing at regular preplanned intervals
mailto:[email protected]:[email protected] -
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
2/29
Open Source Platform Features to Consider
Compatible CPU architectures Vendor support, documentation and maintenance and
license Ported applications, app store Toolchain (compiler, debugger, package manager) Software development kit and integrated dev.
environment Real-time performance
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
3/29
Popular Embedded Operating Systems
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
4/29
MeyerSound's D-Mitri
EmDebian runs real-time audio for Cirque du Soleil, Disney.
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
5/29
Embedded Linux or alternative?
Have MMU? Soft real-time OK? GPLv2 OK?
ExistingLinux port?
Tools,support
OK?
Power useOK?
Want Linuxfeatures?
Driver availability?
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
6/29
MeeGo Linaro Android ngstrom
Organization Foundation Non-profit Consortium Community
Membership None Core, Club,Community
Unclear None
Planning/gover-nanceprocess
Open on IRC +private
Board, TSGs inprivate
Private Come again?
License LGPL Upstreams' Apache v2 Upstreams'
Corporateparticipants
16 : Intel, TI,Nokia?, AMD,Fujitsu,Renesas
ARM,Freescale, IBM,Samsung, STEricsson, TI
over 80, esp.Mentor inembedded
None
Supportedarchitectures Atom (x86),ARMv7, MIPS inprogress
ARMv7: CortexA8, A9, & A15 ARMv7, ARMv5,PowerPC, x86,MIPS
ARM, PowerPC,MIPS, SuperH,AVR
Shippingproducts
WeTab,IndaMixx,Amino, Geely,HawTai
Not yet legion Gumstix
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
7/29
Cross-Platform Apps on Mobile POSIX
Plus, port of iOS apps to MeeGo led by Intel'sS. Crabtree with LLVM developers in Argentina!
Debian's Iced Robot
RIM's AndroidPlayer on QNXMyriad's Alien Dalvk on Maemo
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
8/29
Qt Includes Beautiful UI, Featureful Back-endQt Mobility: extensive support for location-based services
Excellent IDE, easy and rapid prototyping with Javascript-like QML.
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
9/29
Qt Runs Everywhere
Deeply embedded (bare metal) or headless all the way to desktop.
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
10/29
MeeGo is more like Desktop Linux than Android
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
11/29
MeeGo Special Sauce Qt application framework and GUI toolkit Connman connection manager Simplified Mandatory Access Control Kernel
(Smack) Intended to be reconfigured and reskinned: an
upstream Easier to port mainline Linux components to
MeeGo than to Android
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
12/29
connman Connection Manager
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
13/29
Surprisingly strong developer support
Reflects big efforts by Intel and MeeGo vendor community.
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
14/29
MeeGo Problems Security and synchronization systems left
dangling due to project changes Lack of continuity and predictability
GTK Qt Debian package manager to RedHat one Nokia exit
Netbook and handset now unsupported, TV andtablet added 5th place (?) in handset/tablet space
Do deeply embedded OEMs care?
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
15/29
Nokia
MeeGoCommunity
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
16/29
HW Development Platform Requirements
Versatility: support for different buses, commsand display protocols
Expandability: ports, headers and daughter cards
Software platform support Documentation: manuals, gerbers Device drivers!
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
17/29
Notable ARM Dev Boards in use by aMeeGos
TI BeagleBoard XMx1 Cortex A8 with SGX530 GPU
ST-Ericsson Snowballx2 Cortex A9 with Mali GPU
TI Pandaboardx2 Cortex A9 with SGX540 GPU
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
18/29
Other Prototyping possibilities
Intel N450 Mini-ITXx1 Atom, integrated graphics
Gumstix Overox1 Cortex A8 with SGX530 GPU
Variscite AM35x1 Cortex A8 600 MHz, CAN busFreescale iMX53 QuickStart
x1 Cortex A8 1 GHz, SATA
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
19/29
http://elinux.org/images/5/5c/ELC-AlwaysInnovating-Gentil.pdf
Gentil's Demo at ELC2011
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
20/29
Lessons from the Trenches
chroot approach demonstrated by Gentil is fast,powerful and widely applicable
Pick popular HW platform for accessories, docsand tools Device driver situation is painful no matter what
selection is made
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
21/29
Summary Wide selection, decent tools and good docs
enable rapid prototyping using open source. Embedded Linux is useful inmany cases. Where app store is irrelevant, MeeGo is
easier than Android. Starting with ARM or Atom reference board
saves a lot of headaches. Linaro and Yocto projects are promising. Proprietary device drivers are the biggest
problem on any platform.
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
22/29
MeeGo IVI Running on ExoPC
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
23/29
MeeGo-IVI Homescreen on Atom ExoPC Slate
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
24/29
Linux Security for Embedded Environments
Sandboxing and cgroups Hardware approach like DRM GPU decoding SELinux versus Smack Java approach:
don't prevent impermissible actions in policy; insteadintentionally omit the facility for implementation of them
Nothing like airgap security at the end of the day
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
25/29
ConnMan Architecture overview
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
26/29
TI's OMAP4430 SoC
6 cores: 2x Cortex A-9, SGX540 GPU, C64X DSP plus 2x Cortex-M
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
27/29
MeeGo-IVI On OMAP4 Pandaboard withHW-accelerated Graphics
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
28/29
Yocto Project Eases Custom Linux Builds
Based on Open Embedded, with better UI and more quality control
Source for board-support packages and device drivers,evenproprietary and binary ones, where available
Complete toolchain including revision control,compilation,packaging and testing
Support for many architectures and software variants Broad industrial support
-
8/6/2019 Rapid Prototyping with Open Source Software and Hardware
29/29
Linaro: improving Linux on ARM
Industry contributions for ARM to Linux kernelare a mess
Tools lag x86 Broad industrial support can enable code reuse
and encourage best practices Primarily funded by Canonical and IBM Still early in development