Intro disty


Published on

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • hi i’m bob frankel (cto emmoco), and i’d to personally thank you for choosing our productworking in tandem with our HW partner Anaren, we make it simple to add mobile control to your productin this short presenation, i’d like to introduce you to the “what”, “why”, and “how” of unique approach
  • the UI for today’s embedded devices run the gamut, and bring with them a number of challengesat one extreme, they are often minimal due to constraints in power/price/performanceat the other extreme, they often feature an antiquated array of buttons/dials/lightsand more often than not, these UIs can be quite confusingemmoco’s vision is quite simple – let’s augument/replace embedded UIs with smart phones/tabletsreplace physical buttons/dials/lights with a mobile UIleverage bluetooth-smart wireless technology to give us embedded-mobile-connectivity this approach has a number of advantagesmobile devices have an intuitive UI that is familiar to most of usmobile devices are certainly ubiquitous – over a billion in use & with BTS becoming standardmobile devices are upgradable – UIs to embedded devices are no longer fixed forevermobile devices are analyzable – product marketing can now track usage of specific featuresto help you understand “how” this all works, let’s turn to a sample application that illustrates EMC
  • em-blinker – an app you’ll soon explore on your own – is the “hello world” of EMCthis mobile app allows its user to control an LED (which blinks in real-time) on a small embedded device (ED)needless to say, this particular ED (MSP430G2553 LP, 16K/.5K) lacks a “rich” user interface of its own while seemingly trivial, em-blinker in fact serves as a prototype for many real-world applications of EMCto make this more realistic, imagine the ED is performing a real-time process (eg., monitoring a sensor)using the em-blinker app, the user can select and connect to a particular EDonce connected, the user can monitor the state of the blinking LED as it changes over timethe em-blinker app enables the user to activate/deactivate this real-time process (eg., blinking the LED)and finally, the user can adjust various parameters that control this real-time process (eg., its frequency)staying with this particular application of EMC, let’s now explore the internal design of the blinker app....
  • behind every emmoco application lies its schema, which defines a set of typed data-objects called resourcesthis particular schema has four resources – cmd, count, delay, ledStatenote how these resources map to various UI elements of em-blinker mobile appin practice, the schema serves as aprogrammatic contract between mobile & embedded developersthese two communities of developers couldn’t be more distinct from one anotherto the mobile developer, the schema’s resources are “abstract” data objects with a specified set of behaviorsto the embedded developer, resources have “concrete” implementations in HW/SW, independent of presentationabove all, neither party has any idea of what the other is doing; the schema is their only point of contactvery shortly, you’ll be working directly with the Blinker schema along with a dozen other sample appsfor now, think of the schema as a “high-level header file” with C-like declarationsas you’ll learn, resources can also have “aggregate” types that map onto C structs and arraysand finally, you’ll come to appreciate that a “one-page” schema can in fact express a lot of functionalitywith that, we’ll now turn our attention to the overall development flow – from schema to shipping product....
  • once again, we can’t emphasize enough the role a common schema plays in streamlining the development flowonce defined for the app at hand, the schema enables parallel engineering of embedded+mobile SWembedded developers use schema-driven em-browser tool to exercise/test their SWmobile developers use the same schema with a mock device to exercise/test their SWall of emmoco’s “middleware” (libs, FW, SRT) ensures seamless integration of the app as a whole
  • yes, you have to write a schema – but let’s think about everything you don’t have do with our approach!!by eliminating these barriers, you can add mobile control to an existing product in less than 90 daysthe trick is stay “above the water” and focus on the application at handby leveraging our efforts, you need not worry about the large mass of details that lie “beneath the surface”
  • so let’s get started with our “four-step” program for adding mobile control to your app in less than 90 daysright now, it’s time to fire-up em-builder and spend a few hours exploring EMCafter that, a few days of em-prime training will help you setup em-builder for your target environmentneed help with a mobile app; we’ll get you from “schema to screen” in just a few weeks’ timeand finally, talk with our HW module partner Anaren about your product manufacturing needslook, we’re all busy these days; and we certainly appreciate the time you’ve invested so far
  • Intro disty

    1. 1. B We make it simple to add mobile control to your product Bob Frankel, CTO
    2. 2. B 2 / 8 Our Vision minimal confusing antiquated USER INTERFACE FOR EMBEDDED DEVICES embedded • mobile • connectivity 4 intuitive 4 ubiquitous 4 upgradable 4 analyzable buttons, dials, lights, .... mobile UI
    3. 3. B 3 / 8 Real-World Applications
    4. 4. B 4 / 8 “Hello World” em-blinker for iOS connect to embedded device monitor its LED in real-time activate/deactivate blinking adjust its LED parameters
    5. 5. B 5 / 8 An Application Schema schema Blinker { /* -------- resource cmd -------- */ enum Cmd { START_CMD, STOP_CMD }; Cmd cmd { writeonly }; /* -------- resource count -------- */ int16 count { readwrite }; /* -------- resource delay -------- */ num <0.5, 2.0, 0.100> delay { readwrite }; /* -------- resource ledState -------- */ enum LedState { LED_OFF, LED_ON }; LedState ledState { readonly indicator }; }; resources are data abstractions with a specified set of behaviors what each resource has a concrete implementation in HW/SW how schema defines a set of typed data-objects called resources programmatic contract between mobile and embedded developers  higher-level header file  C-like syntax/semantics  scalar/aggregate types  often a “one-pager”
    6. 6. B 6 / 8 mobile application developer embedded software developer em-browser mobile app Parallel Development Tracks schema schema em-hub schema Blinker { cmd count delay ledState } YOUR production HW em-wareem-ware B-SMART BoosterPack em-ware YOUR development HW add mobile control to YOUR product in 90 days !!!
    7. 7. B 7 / 8 em-ware AIR® What You Don’t Have To Do....  read 2000-page Bluetooth spec  certify sophisticated RF-based HW  devise an application-specific protocol  uproot your development environment  add lots of code to your target processor  track perpetual changes in iOS, Android, .... schema YourApp { /* resources */ } but you can leverage dozens of staff-years of engineering effort
    8. 8. B 8 / 8 Let’s Get To Market....  learn em-builder with AIR® B-SMART BoosterPack — invest a few hours exploring the potential of embedded-mobile-connectivity  take advantage of em-prime service/support — interface YOUR target hardware after a few days of personalized training  let emmoco help design/deploy YOUR mobile app — “from schema to screen” after a few weeks of dedicated engineering  manufacture HW with off-the-shelf AIR® modules — certified Bluetooth® SMART solutions which bundle our em-ware spend your efforts adding differentiated product value