4/26/2010 Architecting & Agile: friends or enemies? Lessons learned from a project, concluding with do’s and don’ts Ger Schoeber Executive Consultant May 19th, 2010 Question: Architecting & Agile, friends or enemies ? © Sioux Embedded Systems 2010 | Confidential | 2 1 4/26/2010 Overview 90 5 5 5 5 5 Quick introduction Sioux, Ger Schoeber Architect, Architecture, Architecting Complementary? Agile Incremental multi-disciplinary approach The Maestro project The environment and the main drivers The approach 20 10 15 10 10 Development Project Architecting Process The challenges and the lessons learned Information Radiators and NFRs Summary, do‟s and don‟ts © Sioux Embedded Systems 2010 | Confidential | 3 SIOUX / Ger Schoeber SIOUX Domain: Embedded Systems & Technical Automation Machine Control, Medical Systems, Automotive, Consumer Electronics Software & electronics development Development Centre Projects: fixed price …. risk reward Partnering in product development Platform product: Machine2World® remote monitoring & control BinC – Be in Control: integrated security solutions for businesses and consumers (end2end solutions) Consulting and assessments: software process, system architecture (both world wide) Ger Schoeber 48, married, 2 children and a dog Executive Consultant, System Architect, Agile Project Management Trainer: SW Engineering/System Architecting Coach for System Architects 26 years experience in embedded and real-time systems: Distributed real-time OS development High way management systems Digital Printers Patient Monitoring systems Fail safe systems Baggage Handling systems Interactive Digital TV development Touch Screen Remote Controls Express Parcel systems Electronic Gates Remote Monitoring & Control 1984 Philips 1989 High Tech Automation 2001 Task Switch 2008 Sioux © Sioux Embedded Systems 2010 | Confidential | 4 2 4/26/2010 System Architect | -ure | -ing WHO | WHAT | HOW © Sioux Embedded Systems 2010 | Confidential | 5 “WHO” System Architect: responsibilities (wikipedia) Interfacing with the user(s) and sponsor(s) and all other stakeholders in order to determine their Generating the highest level of system schedule. needs. requirements, based on the user's needs and other constraints such as cost and Ensuring that this set of high level requirements is consistent, complete and correct. acceptance Generating a set of test requirements, together with the designers, test engineers, and the user, which determine that all of the high level requirements have been met, especially for the system-environment-interface. cost-benefit Performing analyses to determine whether requirements are best met by manual, software, or hardware functions; making maximum use of commercial off-the-shelf or already developed components. partitioning Perform a to allocate all present and foreseeable requirements into discrete partitions such that a minimum of communications is needed among partitions, and between the user and the system. Partitioning of large systems into (successive layers of) subsystems and components each of which can be handled by a single engineer or team of engineers or subordinate architect. sketches Generating products such as , models, an early user guide, and prototypes to keep the user and the engineers constantly up to date and in agreement on the system to be provided as it is evolving. coaching the design and implementation engineers, or subordinate architects, so that any problems arising during design or implementation can be resolved in accordance with the fundamental architectural concepts, and user needs and constraints. Ensuring that a maximally robust architecture is developed. Ensuring that all architectural products and products with architectural input are allowed to become obsolete. maintained in the most current state and never © Sioux Embedded Systems 2010 | Confidential | 6 3 4/26/2010 “WHAT”: What is an architecture? “A software architecture is the development product that gives the highest return on investment with respect to quality, schedule, and cost.” (Software Architecture in Practice – Bass/Clements/Kazman) Architecture: Blueprint, foundation, vision, coherent form or structure, components connections and constraints, for the system and the project developing it. the conceptual glue (Documenting Software Architectures – Clements/Bachman/Bass/Garlan/Ivers/Little/Nord/Stafford) © Sioux Embedded Systems 2010 | Confidential | 7 “WHAT” System Architecture: H2 document IEEE1471: Stakeholders have Concerns, from their Viewpoints Views Construction business: separate drawings per stakeholder bricklayer, electrician, plumber Kruchten, “4+1”: separating the different parts and put a focus per view on an essential item: logical view, process, development, physical, use cases CAFCR – 5-view framework, Gerrit Muller: Customer objectives, Application view, Functional, Conceptual, Realization view © Sioux Embedded Systems 2010 | Confidential | 8 4 4/26/2010 CAFCR and “4+1” Logical View Development View Process View Physical View Use cases, scenarios © Sioux Embedded Systems 2010 | Confidential | 9 “HOW” System Architecting process © Sioux Embedded Systems 2010 | Confidential | 10 5 4/26/2010 Agile? What is agile and why is it important? Changes: Interfaces to the environment / other systems Customer needs Technological opportunities Other and new markets BDUF (– big design up front) A lot of work at least twice… Once for creating the full design in an early stage Then the update of all of it due to the external changes over time Agile/lean defer decisions to the latest possible moment © Sioux Embedded Systems 2010 | Confidential | 11 Agile Manifesto (www.agilemanifesto.org) © Sioux Embedded Systems 2010 | Confidential | 12 6 4/26/2010 12 Principles behind the Agile Manifesto (www.agilemanifesto.org) 1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. 2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage. 3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale. 4. Business people and developers must work together daily throughout the project. 5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. 6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. 7. Working software is the primary measure of progress. 8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely. 9. Continuous attention to technical excellence and good design enhances agility. 10. Simplicity--the art of maximizing the amount of work not done--is essential. 11. The best architectures, requirements, and designs emerge from 12. At regular intervals, the team reflects on how to become more self-organizing teams. effective, then tunes and adjusts its behavior accordingly. © Sioux Embedded Systems 2010 | Confidential | 13 Question: “Architecting & Agile, friends or enemies?” System Architecting Creating and Building Structures or Systems fit balance needs technology (The Art of Systems Architecting, Maier/Rechtin) Agile Development Speculate Collaborate Learn decide without knowing the result constructively on decisions made re-decide to improve (Jim Highsmith, 1999) © Sioux Embedded Systems 2010 | Confidential | 14 7 4/26/2010 System Architecting and Agile System Architecting Future Vision Direction Foundation Stable, robust Multi-disciplinary Agile Development Short term Speed Changes in direction Adaptions Changes in solution Software engineering © Sioux Embedded Systems 2010 | Confidential | 15 System Architecting and Agile, complementary? © Sioux Embedded Systems 2010 | Confidential | 16 8 4/26/2010 System Architecting and Agile System Architecting Future Vision Direction Foundation Stable, robust Multi-disciplinary Create a rough initial foundation based on the future vision and direction. A stable and robust multi-disciplinary system outline, inspired by customer needs and technological opportunities, revisited on a regular basis. Agile Development Short term Speed Changes in direction Adaptions Changes in solution Software engineering Use a time-boxed iterative approach for detailing the requirements, fit criteria, design models and realisation. This is derived from the multi-disciplinary system outline implemented for©all disciplines. Sioux Embedded Systems 2010 | Confidential | 17 Agile Development Software Architecting & Agile Development (Based on AMDD, Agile Model Driven Development Scott W. Ambler) Iteration n: Development Iteration 2: Development Iteration 1: Development • Develop working system via a test first approach • Details captured in the form of executable specifications Test Driven Development • • • • Model Storming Requirements Detailing System Architecting Initial Requirements Envisioning Iteration 0: Envisioning Initial Architecture Envisioning System Foundation Work through specific issues on a JIT manner Stakeholders actively participate Requirements evolve throughout project Model just enough for now, you can always come back later • Modeling is part of iteration planning effort • Need to model enough to give good estimates • Need to plan the work for the iteration • Identify the high level scope • Identify initial „requirements stack‟ • Identify an architectural vision © Sioux Embedded Systems 2010 | Confidential | 18 9 4/26/2010 mech3: 1st proto mech2: 3-D design mech1: mock-up elec4: DR elec3: TR elec2: PTR elec1: PPTR Initial Requirements Envisioning Iteration 0: Envisioning Test Production Layout Schematics Design Agile Software Dev mech4: 2nd proto Iterative Electronics Dev Iterative Mechanics Dev System Architecting & Multidisciplinary Iterative/Agile Development sw-n: Dev sw6: Dev sw5: Dev sw4: Dev sw3: Dev sw2: Dev sw1: Dev Test Driven Development Software Design Model Storming Requirements Detailing Initial Architecture Envisioning System Foundation • Develop working system via: • Early user feedback • Early integration steps • • • • Work through specific issues on a JIT manner Stakeholders actively participate Requirements evolve throughout project Model just enough for now, you can always come back later • Modeling is part of iteration planning effort • Need to model enough to give good estimates • Need to plan the work for the iteration • Identify the high level scope • Identify initial „requirements stack‟ • Identify an architectural vision at system level © Sioux Embedded Systems 2010 | Confidential | 19 High Tech Campus 37, Eindhoven, The Netherlands © Sioux Embedded Systems 2010 | Confidential | 20 10 4/26/2010 Philips Pronto (project name: Maestro) Challenge @ start of 2005: Next generation touch screen remote controls for high end home theater systems Roadmap 2006 - 2010 First product development, market introduction Sept 2006 @ CEDIA show in Denver Introduce System Architecting Process My role: System Architect (multi-disciplinary and multi-site) © Sioux Embedded Systems 2010 | Confidential | 21 High End Home Theater System Video TV, satellite, cable, terrestrial Video, DVD, Blu-ray (n)vod, time-shift recording, pvr Audio CD, Audio Server, PC Multi-room, centralized content Controlled from multiple rooms Lighting On/Off, dimming Based on scenes Extensions Home automation Security control © Sioux Embedded Systems 2010 | Confidential | 22 11 4/26/2010 Market Characteristics Niche market low volumes $10k - $70k … $ 300k … package deals Specialized dealers not the main stream CE shops Custom installer market professional installers, no hassle for end users © Sioux Embedded Systems 2010 | Confidential | 23 Roadmap Continuation Challenge 1999 2010 2005 ProntoProNG • • • • • ProntoNG ProntoNEO • • • • • 3.8” touchscreen 16 greyscale 4MB memory Infrared & RF control USB 3.8” TFT touchscreen 64k colors 32 MB memory Infrared & RF control USB 1.1 • 3.2" touchscreen • 4 greyscale • 1 MB memory iBoard • • • • 3.5” touchscreen 64k colors 32 MB memory WiFi / UPnP iPronto • • • • • 6.4” full color touchscreen 64 MB memory WiFi EPG Internet browser © Sioux Embedded Systems 2010 | Confidential | 24 12 4/26/2010 „Status Quo‟, Technology Mitsubishi M32C processor embOS RTOS from Segger C based application Win32 based Editor Freescale MX1 processor Montavista Linux C based application, OpenPeak “IP” No editor ? • • • Customer Installer market: full control of UI / graphics / navigation. Use an editor as for existing ProntoProNG version. M32C/embOS limits reached. No embOS support on more powerful processor. Use Freescale/Linux base Ethernet/WiFi is becoming defacto standard in houses Design new extender(s) based on Ethernet/WiFi communication © Sioux Embedded Systems 2010 | Confidential | 25 Pronto Product Family Line 2006 2007 2008 2009 © Sioux Embedded Systems 2010 | Confidential | 26 13 4/26/2010 Approach of the Total Project Software Development Project: 1st Pronto System Project (= panel, extender, editor) Incremental development and integration Multidisciplinary development Multisite development 1st Pronto System Project lifecycle 2-weekly increments Daily Scrum Feasibility Preparation Development Market Introduction and Production Overall Pronto Project Roadmap overview on next couple of slides © Sioux Embedded Systems 2010 | Confidential | 27 Project Approach: Software increment © Sioux Embedded Systems 2010 | Confidential | 28 14 4/26/2010 Incremental development & integration approach © Sioux Embedded Systems 2010 | Confidential | 29 Pronto project Feasibility & BC Porting application QVGAVGA Touchscreen Project Preparation Top level Requirements Top level Architecture Production & Sales Wireless protocol Power consumption Assignment Preparation VP Concept Confirmation CS Product Implementation PRS 2005 Process Verification DR IR Initial Production Volume Ramp-up CR MPR 2006 © Sioux Embedded Systems 2010 | Confidential | 30 15 4/26/2010 Pronto Roadmap 2005 2006 2007 2008 2009 © Sioux Embedded Systems 2010 | Confidential | 31 Pronto Roadmap, visualising architecting process Application Functional Stakeholders Drivers End User Installer Productivity Ease of set up Added value Interoperability Dealer Sell ability Margin Fit in portfolio Mid- to High end market. Philips Home Profit Control Profitability Reuse Low Field Call Rate Repair by installer IR Data Data Objects Objects Database Manager PCF Import Gallery +2.5 EL7530 3.3V ethernet controller+ Wifi USI Shottky diode 2 - + 3 - - + Battery connector Pronto Easy To Experience A dvanced A large bright LCD display gives me a clear overview to control my complete home entertainment experience Unique Philips technology to allow the creation of personalized user interfaces Dealer Company Confidential 3 Sell ability Prof it 6 Serviceability 2007 Upgradeable 12 2 ller Insta Philips Home Control User p value d set-u Adde of bility EaseRelia “Bill & Jane, 2 kids, babysit Margin Fit in portfolio Philips ControHome “Jason” Tweeter Avad Testability use of bility Ease bility Availa Relia 2005 2006 Service 14 Sep Denver Market s Concern Xantech Vantage Crestron OEM AMX Philips Home Control Niles PPENG V2.0 ProntoEdit Professional v1.0 - MyDatabase integration - Escient Widget - Single shot 1w RS-232 - Lutron virtual graphic eye - Power sense cond. Macro Sharp Freescale Out of the box experience Reliable IR WiFi High installer productivity Multi-user High-End Design Rotary control Diagnostics Multi-Language Lighting Control Music Server control UPnP 2-way RS232 via extender WiFi Ethernet Real-Time clock Fonts IP Camera MS MCE Conditional Macros WAV sounds Touchscreen Charging docking Extender WiFi Ethernet Time management Token protocol Addressable IR IR output level IR blaster Power sensing inputs Relay outputs Serial I/O MontaVista MyDB FactoryDB Technology Editor MyDB Editor Control Panel embOS i.MX21 Pronto RF Extender RS-232 Organisation Sw Dev: 3 Sw Dev: 14 Leuven Sw Dev: 6 Vcore: +1V2 VD: +2V9 VD: +3V2 UART … Later … September 2006 MX21S $9 2 MX21 $12 3 3 4 No Yes Maestro system Control Panel PEP v1.1 - OEM: Marantz - Wallmount PEP v2.0 (=MaestroEdit 1.0) - Split GUI-codes - Activity oriented - MyDatabase - Quick Start Wizard - CE servers, IP cameras - 1 way RS-232 Hardware / Software Component Suppliers X+, X-, Y+, Y- VD: +2V9 DAC_HP_IRQ Headphone jack HPL, HPR, HPCM DAC3560C OPTIONAL LINEOUT_L LINEOUT_R audio sub system LSP, LSN PWR_ADT_IRQ, PWR_nCHGERR, PWR_nCHG VD: +2.9V TILT sensor circuit Speaker connector LED backlight driver KEY_BL_ONOFF KEY_SEL[0..4], KEY_IN_IRQ[0..3] USB_VBUS_IRQ USB_nSOFTCON IR_RST_SLAVE DOC_IRQ, DOC_DPD_A0 HW_REV[0..2] CF_RESET, CF_READY WIFI_EN SPI2_EXT_IRQ speaker Key backlight (7 blue LEDs) Screen/Key backlight logic 15-key keypad VD: +2V9 HW revision A[0..15] SDCKE0 SDCLK, nRAS, nCAS, nSDWE A[1..3] CS_1B 74LX138 74LCX32 address decoder -IOR -IOW A[21..23] SDCLK SDCLK A[2..10, 12..15] D[0..15] nCS2 A[2..10, 12..15] D[16..31] nCS2 DQM2, DQM3 DQM0, DQM1 DQM[0..3] NFRB NFWP +3.3V +3.3V SPI Requirements Maxi - VGA 6" - 2 way RS-232 Mini Advanced extender - 4 rs-232 - 4 IR out/power sense in - 4 relays - Ethernet HAI Editor ST Microelectronics Price Short learning curve. Micro Wallmount Basic extender - WiFi Elan Competition Battery level circuit VBAT_OR_VDC Audio logic SSI_TXFS, SSI_TXDAT, SSI_TXCLK I2C_SDA, I2C_SCL DAC_nRST DAC_LO_IRQ, DAC_HP_IRQ TS_IRQ TILTSENS_IRQ PWR_LPMODE GPIO nCS2 D[0..31] D[0..15] 74LCX1662245 buffer/translator 64 MB NAND flash K4S56163PF-BF75 B_OE_B B_RW_B B_CS_B B_DQM3_EB3_B UART3_RTS K4S56163PF-BF75 NAND Flash 64 or 128 Mbyte (8 or 16 bit) 256Mb 1.8V 16-bit SDRAM 256 Mb 1.8V (16-bit) SDRAM VD: +1.8V Low design and realization costs. Training Midi - Landscape VGA 3.7" - Activity Control - Content Control - 1 way RS-232 - WiFi Control Panel Service Extender Philips Philips Philips Philips NSOs NSOs NSOs NSOs Marantz 2008are of the control panel 2009 The f irmw should be upgradeable by the installer to add f unctionality or f or quality updates. Easy w ay to identif y problems. Ease of Diagnostics Use Fast installation Products Traininability g Film touch panel AD7843 TS controller SPI1_MISO, SPI1_MOSI, SPI1_nSS, SPI1_SCLK LCD_BL_PWM R[1..5], G[0..5], B[1..5], CLS, SPL_SPR, SPS_VSYNC, MOD, DCLK, LP_HSYNC, PS, REV I2C LCD_EN_VD, LCD_EN_VA, LCD_BL_EN Interrupt controller Bus Control USB_nSOFTCON USB_VBUS_IRQ D[0..15] A[1..3] 64 MB SD RAM Service lders Stakeho D&H Dealers / Distributers PEP 2.2 - Skinning, Theming - 2 way RS-232 - Gallery Addon 1.2 ($19,99) Dealer "Jack” Profita Field ProducCall bility Rate Testab ability ility Installers Magnolia Boot EEPROM AT93C46A -10SI-2.7 l Residential Systems Home Media Stores PEP 2.4 - Auto Configure Wizard - Navigation Overview - Mini Support - Gallery Addon 1.4 ($19,99) Advanced Audio Design Harvey Electronics Interoper ability End ……………... End Users Bolt Home Systems SSI/I2S D Chache VMMU DMAC (11 Chnl) EIM & SDRAMC INV MA[10..11] Robust and reliable editor – control panel communication. Ability to link the “inserted added value” to a specif ic installer. One control panel f or all Home Theater equipment in the room. The panel should be compatible w ith all these A/V devices (see also „end user‟). Margin There should be enough price margin to gain on selling the product and still have a competitive price & product. Fit in portf olio The product should f ill a gap in the product portf olio of the dealer w ith respect to f unctionality/quality/price. Prof itability Competitive Product/Market combination w ith sound prof it margin on top of the BoM and low NRE. Low Field Call Rate Robust and reliable control panel to have a low FCR. Produce ability Easy to produce against low costs. 4 WorkSheet BLC P&ACC 2004-12-06 Philips Consumer Electronics, Dick Mol, OctHouse 2004 Value Proposition One Philips Version 0.9 draft “Edward & Barbara” Ease of set up Reliability PWM LCD Controller Watchdog ARM9TDMI VBUS Added value PEP 2.1 - Relays - 2 page view - Gallery Addon 1.1 ($19,99) - export to Micro Concept Signature Designed A round Y ou user Fully personalized interface to my needs Productivity Good name PEP 2.3 - Marantz support - UPnP - Gallery Addon 1.3 ($19,99) Visual impressio n (no t final design) 2 5 CGM (PLLx2) Timer 1 & 2 MC9328MX21 I Chache AIPI 1 AIPI 2 UART3 USBD_VMO, USBD_VPO, USBD_VM, USBD_VP, USBD_SUSPND,USBD_RCV, nUSBD_OE INV Interoperability IP camera suppliers AV servers suppliers Lighting suppliers SPI1 SDIO UART1 UART2 USB 1.1 device ISP1106D USB transceiver UART_RTS CS8900A-CQ3 Ethernet controller VD: +1.8V Installer XTAL 32 kHz Bootstrap Multimedia accelerator RTC FreeScale MX21 Processor MMC/SD Memory Stick Host controller VBAT_OR_VDC D+, D-, VBUS TXD+,TXDRXD+, RXD- EECS, EESK EEDI, EEDO • “When looking for a home control solution that offers flexibility in combination with reliability you always end up with the big and complex system solutions. Now the Pronto allows easy configuration at an affordable price point” Boot setting Power Control JTAG/ICE Video port SPI1_MOSI, SPI1_MISO, SPI1_nSS, SPI1_SCLK UART1_RXD, UART1_TXD FPGA Xilinx IR transmitter USB 2.0 TS_IRQ JTAG_SEL nTDO_CPU 802.11b/g IR_OUT IR logic (FPGA) Mini USB connector RJ45 connector + TG41-2006+NL datafilter Ethernet logic +3.3V Consumer Insight • Wealthy end users with limited time/ interest to seek for solutions, who are willing pay an installer to do the job • Custom installation companies LED backlight 640 x RGB x 480 TFT panel LT1932 LED backlight driver MX21 _BOOTSEL nTRST, TDI, TCK, TMS SD_DAT[0..3], SD_CLK SD_WP SD_CMD SD_RDY BWG211 or W-G-MR-03 CARR_IN, ENV_IN UART2_RXD, UART2_TXD, • Retailers that are expanding their offering into A/V solutions and custom installation +LED -LED POR_1S nTDO_CPLD RF IR learn circuit • Home building companies that expand their offering to fully installed entertainment and home control systems 3.7" color VGA TFT LCD VLCD_5V0 nPOR_1S JTAG connector WiFi logic (SDIO) GND Sensor system with voltage signal output +3.3V Target • High end Home control systems like Crestron and AMX • Mid end control systems like Elan, Premise, HAI, CorAccess, Vantage that have wireless or wall mount control panels • Emerging PC based control systems with tablet PCs or smart displays VGA landscape TFT LCD & touchpad LS037V3D_01 VLCD_+9V8 LCD voltage supply +1.22V VD: +1.8V Competitive Environment VLCD_2V9 VLCD_-6V5 LT1944 iMX core BAT_LEVEL 1 SEC Reset generator POR_INPUT Blue status LED driver - Antenna OUT MOSFET switch +1.5V FPGA core 4 + VD:+2V9 LCD_EN_VA +1.8V Memory:1.8V LT1761 1.5V LT1761 1.22V Max 30V in 1 LCD_EN_VD +2.9V SW2 600mA Charger 1A single cell 2000 mAh VD: +2.9V GND SW1 400mA Vmax Vmax LTC3455 Li-Ion battery pack POR_1S DOC_nBUSY 12V 0.3A 4 Philips Home Control Version 0.5, 26 August „05 VD: +2V9 VDC_2 NCP346 overvoltage protection WLAN_LED2 3 + Description Provide a control panel w ith hard keys and touch screen providing an easy and intuitive user interf ace. Pushing a control panel button f or a direct command or an activity should “alw ays” lead to the expected result. One control panel f or all Home Theater equipment in the room. The panel should be compatible w ith all these A/V devices. Whenever the end user w ould like to use the Home Theater system he should be able to control it by the control panel. Short learning curve and control panel conf iguration and installation time. Robust and deterministic control panel. Interoperability Midi Maestro Block Diagram +3.3V LDO current boost Inrush current limiter VDC Reverse polarity protection & EMI filter VD: +3.2 OR 2.9v 2 Sensor system with dry contact relay output Derived drivers Intuitive use Availability CF Translation LDO +2.5V Vaux FPGA Power / Battery Logic (Derived from HDD) CHG_EN WLAN_LED2 1 Drivers Ease of use 1 7 Designed for control, the Pronto offers reliable operation and seamless integration into any major system at an affordable price point and with less installation effort. Control Panel Related Software CCF Translation UART1_TXD, UART1_RXD V_ADAPTPLUS, V_ADAPTMIN Ampl Build the AV-setup. Configure the extender. Fine tune the control panel configuration. Final test of the full setup. Done at end user premises. Router / Switch Stakeholders Priority End User Reliability Discriminator 2004-10-26 6 SQLite Gallery Gallery Objects Objects Gallery Parser Legacy Gallery Import .NET / GDI+ / SDK / OS Power sense INPUTS DC OUT IR Ports Sat Tuner RS232 LAN • The highly reliable RF link with RS232 control and feedback ensure that your commands always reach the system components for a correct execution • The PC-editor wizard will guide you quickly through the configuration process while maintaining the full flexibility • The graphical capabilities allow the creation of a professional and impressive user interface • Pronto’s heritage in the market Database Abstraction Gallery Manager Device Communication Deployment DVD IR Extender Access Point config file New Pronto (installer) Reasons to Believe • Less customer phone calls due to easy and reliable operation • Fully customizable to the client’s wishes • Extremely easy configuration makes custom installation more profitable • Seamless integration of the control of different devices and systems; from AV to home control, from legacy to IP based technology • Sleek form factor and design dedicated to control Device DataDevice Model Data Model Resources Templates Support Command Command Objects Objects Quick Start Wizard Zlib VD: +2V9 Variations Non-Functionals IR WiFi MyDB • “tweeter/magnolia programmer” • Age 30 – On this job 2,5 years • Single • Worked in a Software House before • Knows Elan and mx-3000 editors • Does all programming on the job – Equipment installed by other people • He likes to do this stuff… – He likes programming if it‟s not too repetitive • Works in team Benefits Project Database Clipboard Support Drag Drop Support Message Log Support Command Manager Pronto Parsers USB Jason Beck Jack Taylor 2004-10-26 My Database Registry Support View View Objects Objects Simulation Undo Redo Support Maestro Parsers VBAT_OR_VDC USB IR - “learn” Set-up configuration file and learn IR codes. Mainly done at installers premises • Age 43 • Started in TV repair shop – As electrician – Not pc educated • Self made man • 50 jobs a year@10k • Married to Suzan, 2 kids • Cedia Certified – Installer Level II • Works with independant electrician for cabling • Carries Prontos since 1999 • Works (programs) alone Database Product Configuration View Coordinator Layout View Properties View XML Parsing Battery connector config file Data Manager Download API PPF / PCF Bundling Compression/Extraction VBAT_OR_VDC MyDB View (User Interface) Document (Data Management) Extender IR RS232 Dig I/O Devices LCD_BL_EN Internet outer WAP/Router – NHC protocol IR WiFi – WAP/Router EXTAL32K Assumptions Steps 12 1 Philips Factory DB Maestro Editor Application Application Framework AP/R Control Panel XTAL32K Company Confidential InternetExplorer.exe Factory DB USB Remote Control Home Theater system is off. Control panel is in standby. WiFi connection is on between Control Panel and Extender via a Wireless Access Point. 1. End user enters Home Theater room. 2. End user picks up the Maestro control panel. a. The tilt sensor switches the control panel from standby on. b. The Home page is shown on the control panel. 3. The end user presses “Watch Movie” activity icon on the Control Panel. a. All required equipment is switched on (projector directly via IR, digital amplifier and DVD changer are connected to an advanced extender). b. A motorised projection screen is lowered via the extender. c. The motorised curtains are closed via the extender. d. The lighting system enables a watch movie scene via the extender. e. Control Panel jumps to “movie browsing” page. 4. The end user browses the list using the rotary wheel and slects “This is Spinal Tap”. a. DVD changer selects movie and starts to play. b. The control panel jumps to DVD control page. 3.a. What if TV Projector is powered-off? 3.e. What if no DVDs are loaded in DVD-changer? Time from standby First Home page: 300 ms Time from pressing activity Projection screen lowering: 500 ms WorkSheet BLC P&ACC 2004-12-06 Philips Consumer Electronics, Dick Mol, OctHouse 2004 Value Proposition One Philips Version 0.9 draft Binary CF Comm.dll Firmware upgrade software stack in separate partition than normal operation software stack. Automatic test framework. Control Panel firmware upgrade. Extender firmware upgrade. IR solution in FPGA for both control panel and Extender. Downloadable Factory Database with IR codes and serial codes. Downloadable Editor application. Diagnostics messages logging in device. Status LEDs for all communication (network / I/O / serial ports) on extender. Training BOOT[0..3] Unique Philips technology to allow the creation of personalized user interfaces Software upgrade Logging and status visibility Diagnostics Ampl VD: +2.9V A large bright LCD display gives me a clear overview to control my complete home entertainment experience Serviceability Upgradeable Tuner Extender Router / Switch VCORE: +1.5V A dvanced Service Sat LAN RS232 Easy To Experience Factory software IR WiFi Pronto NFRE NFWE NFALE NFCLE -NFCE interface to my needs Produce ability Testability DVD I don’t want to be bothered by details. Just get me the Home Theater control panel with best value for money that can be used by me and my family in a easy and intuitive way. Access Point Concept Signature Designed A round Y ou user Fully personalized Installable by installers. Intuitive use by end user. Reuse Application framework from current Pronto generation. Reuse Hardware/Software Platform from current iBoard. Reuse Hardware/Software Platform for midi and maxi control panels plus basic and advanced extenders. 4 Consumer Insight • Mostly male, successful, 35 - 60 years Visual impressio n (no t final design) MyDatabase ExtenderDiscovery.exe Gallery View • End users with a lot of money but no time/ interest to seek for solutions, who will pay an installer to do the job with special interest for custom installed Home Theater systems • Mid end control systems like Elan, Premise, HAI, CorAccess, Vantage that have wireless or wall mount control panels • Emerging PC based control systems with tablet PCs or smart displays Maestro System My DB Project.xcf CFTranslate.dll IRTranslate.dll Parser Factory Designed for control, it offers easy and reliable operation at a lower price point. Target • High end Home control systems like Crestron and AMX Legacy .ccf. pcf CCFTranslate.dll MaestroEditor FUT Control Panel Firmware Data Factory Discriminator • The extreme flexibility of the PC-editor allows my installer to offer me exactly the system operation the way I want it • The graphical capabilities allow the creation of a professional and impressive user interface • Dedicated product design for Home Theater system control without compromizes. • Pronto’s heritage in the market Competitive Environment PC Control Panel and Extender are able to send any IR code of any IR controllable device available in the world. Recharable battery powered. Low power usage. Display / backlight timeout. Short stanby-to-active time. Fast wifi wake-up. Extender always on. System can contain several extenders. System can contain several control panels, both portable and wallmountable. Configuration wizard guiding the inexperienced installers. Out of the box experience by providing ad hoc mode. Configuration editor on PC. Out of the box experience by providing a default configuration in the control panel. Control panel. End user has only operation mode available. Full speed USB connection. Editor & Control panel. Partial download. Graphics content protection by disabling the upload from Protection. Control Panel. High-end IR transmission for panel & extender. High-end IR reception to learn any code from accompanying High-end IR. remotes. Installer oriented database with Home Theater device plus their IR and serial command codes. BOM of panel. Low cost. BOM of extender. Low NRE for editor, panel & extender. Reliability Reasons to Believe 2004-10-26 3 • “I can control my system according to my personal needs and those of my family. It is as simple as I want it." • “My friends will be really impressed” • Sleek form factor and design dedicated to control • Control of my content through IP based device control Realisation Channel & Volume hard keys. Home hard key. Control panel View Object Factory Benefits Concept Requirements Multi-user mobile control panel. Wifi + reliable/real-time cmd-ack proctocol between panel & extender. Extender interface between Wifi and/or wired ethernet connection between extender and control panel and A/V A/V devices. devices. 2-way serial line interface between extender and A/V devices. High-end IR. Availability Good name Bill and Jane Harris • He: CFO of a medium size comp – Age 46 • She: HRM manager –Age 42 • 2 kids (names…) • Major refurb of the house – 20k HT • Like to go out Jenny, babysit like the plasma Newbig Pronto (end user) • Retired Car Dealer (Dodge) from Mineapolis • aged 61 and 57 • Moving to Naples, Florida 30k Home Theatre in the Den • Son, Daughter, 3 grand children • Cinema enthousiasts, Home Videos since early 80‟s • Fans of the Chuck Berry and de Beach Boys Application Drivers Intuitive use Reliability Interoperability NFIO[8..15] Edward and Barbara Williams 2004-10-26 Derived drivers Ease of use NFIO[0..7] Customer objectives Ad Hoc setup 100 % learn & send v MyDatabase Midi v Music browsing v US / NL / F / D / SP Lutron Graphic Eye Escient 1-way v Basic v v Wallmountable Midi 2x 2 2x 2 Maxi landsc VGA 6.4 " Marantz Basic v v Marantz Adv 2x 2 2x 2 v 2x 2 2x 2 Process v Hebrew, Cyrilic Viewing v v Advanced v v v v v v BLR: \\Ingbtcpic3ms001 \Cew6maes \… LVN: \\Beqleuleu1ms033 \Pro-rcs \Projects \Touchscreen \8137_Maestro \… \Documentation \… Documentation Control_panel 01-Product 2 2 4 IR, modelnumbers v Comment Remarkable BOM reduction choosing MX21S for Control Panel, Wireless- and Serial Extender. Control Panel: SPI for Touchscreen and IR-FPGA. Currently the Marvell/USI WiFi module is designed in. This module uses the SDIO interface. If in the future the Philips WiFi module would be preferred because of less power usage, then a third SPI interface is needed. That would mean that the MX21 could be used for the Control Panel from then onwards. Disadvantage is then that there are two processor types needed in stock. Extenders: SPI only for IR-FPGA. Control Panel and wireless extender need only one UART for debugging purposes. The serial extender is specified to have 4 serial ports. By multiplexing serial port 3 towards serial connection 3 and 4 the MX21S can be used. There is no requirement or use case that serial connection 3 and 4 need to be used at the same time in parallel. The Control Panel should be able to display Motion JPEG pictures. This is however a different protocol than MPEG4. For now there is no requirement to be able to support MPEG2 or MPEG4 based IP-cameras. Marantz Midi TimeMgt & Token Basic 2x 2 2x 2 - Mini portr QVGA 3.5 " Light dimming RadioRa, Litetouch, Vantage AudioRequest, iMerge v v v Advanced v PEP Wizard MyDatabase FactoryDatabase Split of UI and Control Fonts Multiple CFs Simulator Macro testing Legacy Channel macro Fast learn Partial download Variables MPEG4 Partial dwld/Wizard v v TrueType v landscape VGA 3.7 " v Editor Extender MultimediaPCsoftware 02-Project 01-Product 02-Project 01-Product 02-Project 01-Product 02-Project 01-Product 02-Project 2 2 MaestroEdit v serial devices Integrating Concepts v TrueType Navigation v v v CCF / PCF v v v v Sw Dev: 20 Bangalore 1-6-2009 2005 2006 2007 2008 2009 © Sioux Embedded Systems 2010 | Confidential | 32 16 4/26/2010 Application Functional Derived drivers Application Drivers Requirements End User Intuitive use Multi-user mobile control panel. Channel & Volume hard keys. Home hard key. Reliability Wifi + reliable/real-time cmd-ack proctocol between panel & extender. Extender interface between Wifi and/or wired ethernet connection between extender and control panel and A/V A/V devices. devices. 2-way serial line interface between extender and A/V devices. Interoperability High-end IR. Ease of use Installer Ease of set up Bill and Jane Harris Reliability Mid- to High end market. Philips Home Profit Control Profitability Reuse Low Field Call Rate Repair by installer IR Gallery XML Parsing IR WiFi – WAP/Router Automatic test framework. Control Panel firmware upgrade. Extender firmware upgrade. IR solution in FPGA for both control panel and Extender. Downloadable Factory Database with IR codes and serial codes. Downloadable Editor application. Diagnostics messages logging in device. Status LEDs for all communication (network / I/O / serial ports) on extender. IR RS232 Dig I/O Devices Remote Control Undo Redo Support Maestro Parsers Command Command Objects Objects Deployment .NET / GDI+ / SDK / OS +2.5 LDO +2.5V Vaux FPGA Power / Battery Logic (Derived from HDD) EL7530 3.3V ethernet controller+ Wifi USI CHG_EN VDC_2 Shottky diode 12V 0.3A 4 GND 1 2 - + 3 - - + Blue status LED driver - • Home building companies that expand their offering to fully installed entertainment and home control systems Good name 3 Sell ability A dvanced Unique Philips technology to allow the creation of personalized user interfaces Dealer 4 Prof it 6 Serviceability 2007 Upgradeable WorkSheet Company Confidential One Philips Version 0.9 draft 12 2 tal Ins Philips Home Control ler Residential Systems Home Media Stores Installers "Jack” Margin Fit in portfolio “Jason” Tweeter Ph Magnolia ilip Co s Ho ntr me ol IP camera suppliers AV servers suppliers Lighting suppliers Avad Con cern d Us er e us of ility se ab ity Ea ail bil Av lia Re 2006 Service 14 Sep Denver Sta rs olde keh Xantech Vantage Crestron AMX Philips Home Control PPENG V2.0 Editor ProntoEdit Professional v1.0 - MyDatabase integration - Escient Widget - Single shot 1w RS-232 - Lutron virtual graphic eye - Power sense cond. Macro Sharp Freescale Out of the box experience Reliable IR WiFi High installer productivity Multi-user Control Panel High-End Design Rotary control Diagnostics Multi-Language Lighting Control Music Server control UPnP 2-way RS232 via extender WiFi Ethernet Real-Time clock Fonts IP Camera MS MCE Conditional Macros WAV sounds Touchscreen Charging docking PEP v1.1 - OEM: Marantz - Wallmount Extender WiFi Ethernet Time management Token protocol Addressable IR IR output level IR blaster Power sensing inputs Relay outputs Serial I/O MyDB FactoryDB Technology Editor MyDB Editor Control Panel embOS i.MX21 Pronto RF Extender RS-232 Organisation Sw Dev: 3 Sw Dev: 14 Leuven Sw Dev: 6 UART … Later … September 2006 MX21S $9 2 MX21 $12 3 3 4 No Yes Maestro system MontaVista Hardware / Software Component Suppliers VBAT_OR_VDC VD: +3V2 SPI Requirements Maxi - VGA 6" - 2 way RS-232 Mini PEP v2.0 (=MaestroEdit 1.0) - Split GUI-codes - Activity oriented - MyDatabase - Quick Start Wizard - CE servers, IP cameras - 1 way RS-232 ST Microelectronics Price Short learning curve. HAI Niles X+, X-, Y+, Y- LCD_BL_EN KEY_SEL[0..4], KEY_IN_IRQ[0..3] USB_VBUS_IRQ USB_nSOFTCON IR_RST_SLAVE Vcore: +1V2 PWR_ADT_IRQ, PWR_nCHGERR, PWR_nCHG speaker Key backlight (7 blue LEDs) Screen/Key backlight logic 15-key keypad VD: +2V9 ISP1106D USB transceiver DOC_IRQ, DOC_DPD_A0 USBD_VMO, USBD_VPO, USBD_VM, USBD_VP, USBD_SUSPND,USBD_RCV, nUSBD_OE HW_REV[0..2] CF_RESET, CF_READY WIFI_EN SPI2_EXT_IRQ EIM & SDRAMC HW revision USB_nSOFTCON nCS2 VBUS INV USB_VBUS_IRQ D[0..31] A[0..15] D[0..15] SDCKE0 SDCLK, nRAS, nCAS, nSDWE A[1..3] 74LX138 74LCX32 address decoder CS_1B A[21..23] SDCLK SDCLK A[2..10, 12..15] D[0..15] nCS2 DQM[0..3] A[2..10, 12..15] D[16..31] nCS2 74LCX1662245 buffer/translator DQM0, DQM1 D[0..15] A[1..3] -IOR -IOW 64 MB NAND flash K4S56163PF-BF75 B_OE_B B_RW_B B_CS_B B_DQM3_EB3_B UART3_RTS K4S56163PF-BF75 NAND Flash 64 or 128 Mbyte (8 or 16 bit) 256Mb 1.8V 16-bit SDRAM 256 Mb 1.8V (16-bit) SDRAM Low design and realization costs. Elan Competition GPIO 64 MB SD RAM Advanced extender - 4 rs-232 - 4 IR out/power sense in - 4 relays - Ethernet Extender Philips Philips Philips Philips NSOs NSOs NSOs NSOs Speaker connector LED backlight driver MA[10..11] Micro Wallmount Basic extender - WiFi D&H Dealers / Distributers Marantz OEM TILT sensor circuit UART3 INV 2008are of the control panel 2009 The f irmw should be upgradeable by the installer to add f unctionality or f or quality updates. Easy w ay to identif y problems. Training Midi - Landscape VGA 3.7" - Activity Control - Content Control - 1 way RS-232 - WiFi Control Panel Se rvic e UART2 UART_RTS CS8900A-CQ3 Ethernet controller TXD+,TXDRXD+, RXD- Boot EEPROM AT93C46A -10SI-2.7 Se rvic Tra eab inin ility g OPTIONAL LSP, LSN DAC_LO_IRQ, DAC_HP_IRQ TS_IRQ TILTSENS_IRQ KEY_BL_ONOFF Margin Ease of Diagnostics Use Fast installation Products Bus Control Added value Testability 2005 Market s Pro Fie fita ld Pro Ca bility du ll Te cab Rate sta bili ility ty Harvey Electronics Dealer rabi “Bill & Jane, 2 kids, babysit Advanced Audio Design Inte rope lue p va t-u d de se ity Ad se of bil lia Ea Re Bolt Home Systems lity En ……………... End Users “Edward & Barbara” D+, D-, VBUS USB 2.0 RJ45 connector + TG41-2006+NL datafilter Interoperability Easy To Experience A large bright LCD display gives me a clear overview to control my complete home entertainment experience BLC P&ACC 2004-12-06 Philips Consumer Electronics, Dick Mol, OctHouse 2004 Value Proposition Mini USB connector Headphone jack LINEOUT_L LINEOUT_R audio sub system LCD_EN_VD, LCD_EN_VA, LCD_BL_EN Interrupt controller DMAC (11 Chnl) USB 1.1 device VBAT_OR_VDC Ethernet logic Robust and reliable editor – control panel communication. Ability to link the “inserted added value” to a specif ic installer. One control panel f or all Home Theater equipment in the room. The panel should be compatible w ith all these A/V devices (see also „end user‟). There should be enough price margin to gain on selling the product and still have a competitive price & product. Fit in portf olio The product should f ill a gap in the product portf olio of the dealer w ith respect to f unctionality/quality/price. Prof itability Competitive Product/Market combination w ith sound prof it margin on top of the BoM and low NRE. Low Field Call Rate Robust and reliable control panel to have a low FCR. Produce ability Easy to produce against low costs. 5 Pronto PEP 2.2 - Skinning, Theming - 2 way RS-232 - Gallery Addon 1.2 ($19,99) Concept Signature Designed A round Y ou user Fully personalized interface to my needs PEP 2.4 - Auto Configure Wizard - Navigation Overview - Mini Support - Gallery Addon 1.4 ($19,99) • Custom installation companies Visual impressio n (no t final design) Ease of set up Reliability • Retailers that are expanding their offering into A/V solutions and custom installation • Emerging PC based control systems with tablet PCs or smart displays Productivity PEP 2.1 - Relays - 2 page view - Gallery Addon 1.1 ($19,99) - export to Micro • Mid end control systems like Elan, Premise, HAI, CorAccess, Vantage that have wireless or wall mount control panels Availability 2 DAC3560C I2C_SDA, I2C_SCL I2C D Chache VMMU DQM2, DQM3 Interoperability Installer FPGA Xilinx IR transmitter DAC_HP_IRQ HPL, HPR, HPCM DAC_nRST I Chache AIPI 1 AIPI 2 IR_OUT IR logic (FPGA) Battery level circuit VBAT_OR_VDC Audio logic SSI_TXFS, SSI_TXDAT, SSI_TXCLK PWR_LPMODE NFRB NFWP 7 Designed for control, the Pronto offers reliable operation and seamless integration into any major system at an affordable price point and with less installation effort. SSI/I2S UART1 VD: +1.8V • “When looking for a home control solution that offers flexibility in combination with reliability you always end up with the big and complex system solutions. Now the Pronto allows easy configuration at an affordable price point” 6 Sensor system with voltage signal output Film touch panel AD7843 TS controller SPI1_MISO, SPI1_MOSI, SPI1_nSS, SPI1_SCLK LCD_BL_PWM R[1..5], G[0..5], B[1..5], CLS, SPL_SPR, SPS_VSYNC, MOD, DCLK, LP_HSYNC, PS, REV Watchdog ARM9TDMI VD: +2.9V Description Provide a control panel w ith hard keys and touch screen providing an easy and intuitive user interf ace. Pushing a control panel button f or a direct command or an activity should “alw ays” lead to the expected result. One control panel f or all Home Theater equipment in the room. The panel should be compatible w ith all these A/V devices. Whenever the end user w ould like to use the Home Theater system he should be able to control it by the control panel. Short learning curve and control panel conf iguration and installation time. Robust and deterministic control panel. LCD Controller Timer 1 & 2 MC9328MX21 SDIO UART1_RXD, UART1_TXD +3.3V Derived drivers Intuitive use Reliability Discriminator 2004-10-26 Sensor system with dry contact relay output Drivers Ease of use +3.3V Consumer Insight • Wealthy end users with limited time/ interest to seek for solutions, who are willing pay an installer to do the job CARR_IN, ENV_IN EECS, EESK EEDI, EEDO Target • High end Home control systems like Crestron and AMX SD_DAT[0..3], SD_CLK SD_WP SD_CMD SD_RDY Memory Stick Host controller GND +3.3V • The highly reliable RF link with RS232 control and feedback ensure that your commands always reach the system components for a correct execution • The PC-editor wizard will guide you quickly through the configuration process while maintaining the full flexibility • The graphical capabilities allow the creation of a professional and impressive user interface • Pronto’s heritage in the market Competitive Environment SPI1 +3.3V Reasons to Believe • Less customer phone calls due to easy and reliable operation • Fully customizable to the client’s wishes • Extremely easy configuration makes custom installation more profitable • Seamless integration of the control of different devices and systems; from AV to home control, from legacy to IP based technology • Sleek form factor and design dedicated to control RTC FreeScale MX21 Processor MMC/SD 802.11b/g Stakeholders Priority PWM Bootstrap JTAG/ICE Video port SPI1_MOSI, SPI1_MISO, SPI1_nSS, SPI1_SCLK UART2_RXD, UART2_TXD, New Pronto (installer) Benefits nTDO_CPU BWG211 or W-G-MR-03 PEP 2.3 - Marantz support - UPnP - Gallery Addon 1.3 ($19,99) 2004-10-26 CGM (PLLx2) nTRST, TDI, TCK, TMS Multimedia accelerator IR learn circuit 1 XTAL 32 kHz Power Control nTDO_CPLD JTAG connector WiFi logic (SDIO) RF End User LED backlight 640 x RGB x 480 TFT panel LT1932 LED backlight driver Boot setting VD: +2V9 POR_1S JTAG_SEL Antenna OUT +LED -LED nPOR_1S MX21 _BOOTSEL Ampl Build the AV-setup. Configure the extender. Fine tune the control panel configuration. Final test of the full setup. Done at end user premises. Router / Switch config file 3.7" color VGA TFT LCD VLCD_5V0 +1.22V TS_IRQ 1 SEC Reset generator POR_INPUT VD: +2V9 MyDB • “tweeter/magnolia programmer” • Age 30 – On this job 2,5 years • Single • Worked in a Software House before • Knows Elan and mx-3000 editors • Does all programming on the job – Equipment installed by other people • He likes to do this stuff… – He likes programming if it‟s not too repetitive • Works in team VGA landscape TFT LCD & touchpad LS037V3D_01 VLCD_+9V8 LCD voltage supply iMX core FPGA core USB Jason Beck Jack Taylor VLCD_2V9 VLCD_-6V5 LT1944 +1.5V LT1761 1.5V LT1761 1.22V 4 + MOSFET switch Memory:1.8V single cell 2000 mAh Max 30V in + VD:+2V9 LCD_EN_VA +1.8V SW2 600mA Charger 1A POR_1S DOC_nBUSY 3 LCD_EN_VD +2.9V LTC3455 Li-Ion battery pack WLAN_LED2 2 SW1 400mA Vmax Vmax NCP346 overvoltage protection VD: +3.2 OR 2.9v 1 Philips Home Control Version 0.5, 26 August „05 VD: +2V9 Inrush current limiter VDC Reverse polarity protection & EMI filter Power sense INPUTS DC OUT IR Ports Sat Tuner Midi Maestro Block Diagram +3.3V LDO current boost UART1_TXD, UART1_RXD V_ADAPTPLUS, V_ADAPTMIN WLAN_LED2 IR • Age 43 • Started in TV repair shop – As electrician – Not pc educated • Self made man • 50 jobs a year@10k • Married to Suzan, 2 kids • Cedia Certified – Installer Level II • Works with independant electrician for cabling • Carries Prontos since 1999 • Works (programs) alone CF Translation CCF Translation BAT_LEVEL Non-Functionals RS232 Control Panel Related Software Gallery Parser Legacy Gallery Import DVD Extender Gallery Gallery Objects Objects Device Communication Quick Start Wizard Zlib VD: +2.9V Variations IR LAN SQLite Gallery Manager Command Manager Pronto Parsers PPF / PCF Bundling Compression/Extraction VD: +2V9 Set-up configuration file and learn IR codes. Mainly done at installers premises Access Point Database Abstraction Templates Support Firmware upgrade software stack in separate partition than normal operation software stack. VBAT_OR_VDC USB IR - “learn” WiFi Device DataDevice Model Data Model VD: +1.8V config file Database Manager Resources VD: +1.8V MyDB Project Database Clipboard Support Drag Drop Support Message Log Support PCF Import Home Theater system is off. Control panel is in standby. WiFi connection is on between Control Panel and Extender via a Wireless Access Point. 1. End user enters Home Theater room. 2. End user picks up the Maestro control panel. a. The tilt sensor switches the control panel from standby on. b. The Home page is shown on the control panel. 3. The end user presses “Watch Movie” activity icon on the Control Panel. a. All required equipment is switched on (projector directly via IR, digital amplifier and DVD changer are connected to an advanced extender). b. A motorised projection screen is lowered via the extender. c. The motorised curtains are closed via the extender. d. The lighting system enables a watch movie scene via the extender. e. Control Panel jumps to “movie browsing” page. 4. The end user browses the list using the rotary wheel and slects “This is Spinal Tap”. a. DVD changer selects movie and starts to play. b. The control panel jumps to DVD control page. 3.a. What if TV Projector is powered-off? 3.e. What if no DVDs are loaded in DVD-changer? Time from standby First Home page: 300 ms Time from pressing activity Projection screen lowering: 500 ms Assumptions Steps Internet My Database Registry Support View View Objects Objects Simulation Training Router / Switch 12 1 Philips Factory DB Database Product Configuration View Coordinator Layout View Properties View Battery connector Company Confidential Data Data Objects Objects EXTAL32K A dvanced Unique Philips technology to allow the creation of personalized user interfaces Logging and status visibility WorkSheet BLC P&ACC 2004-12-06 Philips Consumer Electronics, Dick Mol, OctHouse 2004 Value Proposition One Philips Version 0.9 draft Data Manager Download API XTAL32K Easy To Experience Software upgrade Diagnostics Ampl RS232 Pronto A large bright LCD display gives me a clear overview to control my complete home entertainment experience Factory software Serviceability Upgradeable Tuner Extender Document (Data Management) Extender BOOT[0..3] Concept Signature Designed A round Y ou user Fully personalized interface to my needs Service Sat LAN Access Point Visual impressio n (no t final design) Produce ability Testability DVD IR WiFi ou te r WAP/Router – NHC protocol VD: +2.9V I don’t want to be bothered by details. Just get me the Home Theater control panel with best value for money that can be used by me and my family in a easy and intuitive way. • Mostly male, successful, 35 - 60 years View (User Interface) Application Framework /R Control Panel VCORE: +1.5V Consumer Insight • End users with a lot of money but no time/ interest to seek for solutions, who will pay an installer to do the job with special interest for custom installed Home Theater systems • Mid end control systems like Elan, Premise, HAI, CorAccess, Vantage that have wireless or wall mount control panels • Emerging PC based control systems with tablet PCs or smart displays AP USB NFRE NFWE NFALE NFCLE -NFCE Target • High end Home control systems like Crestron and AMX Maestro Editor Application Comm.dll Installable by installers. Intuitive use by end user. Gallery View • Dedicated product design for Home Theater system control without compromizes. • Pronto’s heritage in the market Competitive Environment InternetExplorer.exe Factory DB Reuse Application framework from current Pronto generation. Reuse Hardware/Software Platform from current iBoard. Reuse Hardware/Software Platform for midi and maxi control panels plus basic and advanced extenders. 4 • The graphical capabilities allow the creation of a professional and impressive user interface • Sleek form factor and design dedicated to control • Control of my content through IP based device control Binary CF NFIO[8..15] Designed for control, it offers easy and reliable operation at a lower price point. 3 Margin Fit in portfolio MyDatabase ExtenderDiscovery.exe NFIO[0..7] Discriminator • The extreme flexibility of the PC-editor allows my installer to offer me exactly the system operation the way I want it • “My friends will be really impressed” Interoperability Maestro System My DB Project.xcf CFTranslate.dll IRTranslate.dll View Object Factory Reasons to Believe 2004-10-26 • “I can control my system according to my personal needs and those of my family. It is as simple as I want it." Added value Sell ability Legacy .ccf. pcf CCFTranslate.dll MaestroEditor FUT Control Panel Firmware Parser Factory Benefits Good name Dealer Realisation Data Factory • He: CFO of a medium size comp – Age 46 • She: HRM manager –Age 42 • 2 kids (names…) • Major refurb of the house – 20k HT • Like to go out Jenny, babysit like the plasma Newbig Pronto (end user) • Retired Car Dealer (Dodge) from Mineapolis • aged 61 and 57 • Moving to Naples, Florida 30k Home Theatre in the Den • Son, Daughter, 3 grand children • Cinema enthousiasts, Home Videos since early 80‟s • Fans of the Chuck Berry and de Beach Boys 2004-10-26 Productivity PC Control Panel and Extender are able to send any IR code of any IR controllable device available in the world. Recharable battery powered. Low power usage. Display / backlight timeout. Short stanby-to-active time. Control panel Fast wifi wake-up. Extender always on. System can contain several extenders. System can contain several control panels, both portable and wallmountable. Configuration wizard guiding the inexperienced installers. Out of the box experience by providing ad hoc mode. Configuration editor on PC. Out of the box experience by providing a default configuration in the control panel. Control panel. End user has only operation mode available. Full speed USB connection. Editor & Control panel. Partial download. Graphics content protection by disabling the upload from Protection. Control Panel. High-end IR transmission for panel & extender. High-end IR reception to learn any code from accompanying High-end IR. remotes. Installer oriented database with Home Theater device plus their IR and serial command codes. BOM of panel. Low cost. BOM of extender. Low NRE for editor, panel & extender. Availability Edward and Barbara Williams Concept Stakeholders Drivers Battery connector Customer objectives Ad Hoc setup 100 % learn & send v MyDatabase Midi v Music browsing v US / NL / F / D / SP Lutron Graphic Eye Escient 1-way v Wallmountable Midi Maxi portr QVGA 3.5 " landsc VGA 6.4 " Marantz Basic v v Marantz Adv 2x 2 2x 2 v 2x 2 2x 2 Marantz Midi Process v TimeMgt & Token Hebrew, Cyrilic Viewing v v v landscape VGA 3.7 " v Basic v v Advanced v 2x 2 2x 2 2x 2 2x 2 Basic Advanced v v v v v - Mini v BLR: \\Ingbtcpic3ms001 \Cew6maes \… LVN: \\Beqleuleu1ms033 \Pro-rcs \Projects \Touchscreen \8137_Maestro \… \Documentation \… Documentation Control_panel 01-Product 2 2 4 IR, modelnumbers v Comment Remarkable BOM reduction choosing MX21S for Control Panel, Wireless- and Serial Extender. Control Panel: SPI for Touchscreen and IR-FPGA. Currently the Marvell/USI WiFi module is designed in. This module uses the SDIO interface. If in the future the Philips WiFi module would be preferred because of less power usage, then a third SPI interface is needed. That would mean that the MX21 could be used for the Control Panel from then onwards. Disadvantage is then that there are two processor types needed in stock. Extenders: SPI only for IR-FPGA. Control Panel and wireless extender need only one UART for debugging purposes. The serial extender is specified to have 4 serial ports. By multiplexing serial port 3 towards serial connection 3 and 4 the MX21S can be used. There is no requirement or use case that serial connection 3 and 4 need to be used at the same time in parallel. The Control Panel should be able to display Motion JPEG pictures. This is however a different protocol than MPEG4. For now there is no requirement to be able to support MPEG2 or MPEG4 based IP-cameras. Light dimming RadioRa, Litetouch, Vantage AudioRequest, iMerge v v v v TrueType PEP Wizard MyDatabase FactoryDatabase Split of UI and Control Fonts Multiple CFs Simulator Macro testing Legacy Channel macro Fast learn Partial download Variables MPEG4 Partial dwld/Wizard v Editor Extender MultimediaPCsoftware 02-Project 01-Product 02-Project 01-Product 02-Project 01-Product 02-Project 01-Product 02-Project 2 2 MaestroEdit v serial devices Integrating Concepts v TrueType Navigation v v v CCF / PCF v v v v Sw Dev: 20 Bangalore 1-6-2009 © Sioux Embedded Systems 2010 | Confidential | 33 CAFCR / ATAM Having CAFCR “on the wall” leads to implicit continuous architecture trade offs © Sioux Embedded Systems 2010 | Confidential | 34 17 4/26/2010 Project and Technical challenges Feasibility phase Project preparation Software project size estimation WiFi / Ethernet reliability Power usage Development Screen size Performance Bus bandwidth Porting application Incremental approach Integration strategy Non-functional requirements Market Introduction and Production Buy-in from market Business case Detailed in next couple of slides © Sioux Embedded Systems 2010 | Confidential | 35 Feasibility Challenges Mockups Mechanics UI Control panel graphics Editor dynamics Technology Performance Memory usage Bus usage Processor usage Feasibility projects 1. Pronto application port to iBoard (MXL-Linux) platform 2. iBoard hardware and BSP SW platform extensions: VGA LCD, USB 3. Extender supplier selection & evaluation 4. “MyDatabase”: prototype for Editor 5. Communication with CE servers 6. CF format Extensions 7. RS232 feasibility 8. MaestroEdit project wizard 9. BoM & power calculations 10. WiFi feasibility – protocol design What I learned 1. Early feedback from the market (end-users, installers) is essential: • The market determines the usefullness of a product. • Early involvement leads to buy-in. • It is impossible to define the success of a product behind the desk! 2. Prototyping technical issues is a must: • Separates practice from theory • Hottest issues in our case: • battery power usage • wifi reliability © Sioux Embedded Systems 2010 | Confidential | 36 18 4/26/2010 Project Preparation Challenges Define: Project Plan System Requirements System Architecture Effort estimations (software intensive) Feasibility, risks: Battery power usage WiFi protocol: Work break down Development lead time: 6 months Ramp-up of development teams within one month (2 dev sites) Detailed calculations Cross check with market TCP: not real-time, UDP: not reliable define reliable protocol on top of UDP What I learned 1. Don‟t invest time in detailing all req/arch before starting project market window. 2. Do invest effort in highest feasibility risks for final go/no-go of a project. Once defined, follow all results closely during the project 3. Have experts on board, in our case: using Linux you need a guru. 4. Multiple site development: solve the communication barrier by frequent and regular face2face meetings. © Sioux Embedded Systems 2010 | Confidential | 37 Development Challenges Agile approach, incremental working Requirements at start of sprint Focus on non-functional requirements Software: continuous integration System: early integration slots Technical USB: interoperability WIFI AP: interoperability What I learned 1. Have a workshop at start of sprint: req / design / system interfaces / test 2. Have Continuous Integration and Test Driven Development as a standard wow. 3. Define non-functional requirements and have these tested as early as possible in the development cycle. 4. Stop functional or feature development as soon as NFRs are below target. 5. Find multi-disciplinary integration opportunities in the earliest possible phase. 6. Never rely on standardization: external products will never comply to the standard! You always must build in interoperability yourself! © Sioux Embedded Systems 2010 | Confidential | 38 19 4/26/2010 Market Introduction and Production Challenges Market Introduction Production Market Introduction Plan Phased approach Testability in the factory Teasers Trainings Beta releases to selective group What I learned 1. Phased market introduction is a must to get buy-in. 2. Factory is not in sync with product development: • Input for testability from factory point of view is a must. • At the moment the testability requirements are needed as input, concerning stakeholders have very different priorities (production of previous products). 3. The necessity of convincing sales in selling solutions instead of selling products. © Sioux Embedded Systems 2010 | Confidential | 39 Technological choices Continuing architectural challenges (components, costs) RAM, powerdev usage new technology 100% IR coverage upgradability power usage Technology Docking Glass versus plastic Deadline Flush-mount design Capacitive versus resistive Stylus use Rotary wheel Extenders Competence WiFi (new, existing) New technology Power usage Reliability TCP, UDP, proprietary protocol Existing hw/sw platform iboard Performance Existing sw application ProntoProNG (available at Cedia) Touchscreen Flash <nor, nand>, pricing IR, FPGA download performance Reliable firmware upgrade Reuse Business case Memory size (end user – installer) USB HID, MSD Customer needs Disable upload Resolution viewing angle lifetime availability Weight Pricing size LCD size/usage Battery capacity Mechanical versus optical Make/buy (core, hiring, outsourcing) Outsource: integrate own IR solution Business case, pricing Editor New database technology Encrypt IR codes in database .NET technology (architecture, quality) Roadmap © Sioux Embedded Systems 2010 | Confidential | 40 20 4/26/2010 Information radiators, dashboards, short feedback loops IF you have to work in a project, where: the team > 1 person, OR the project is for a customer THEN miscommunication is the biggest risk! ENDIF to tackle Ger’s statement: Some information radiator examples on the next slides © Sioux Embedded Systems 2010 | Confidential | 41 © Sioux Embedded Systems 2010 | Confidential | 42 21 4/26/2010 Maestro System Architecture Cockpit Application Functional Concept Configurability Function & Features Maestro: 1.Midi 2.Mini 3.Maxi WiFi Extender: buy •High-End •Low-End No Retail (?) Same Editor for all devices Value Proposition House Operational objectives EPG (installer): icons/line-up ch.nr. Application Derived drivers Application Drivers Requirements Intuitive use Multi-user mobile control panel. Channel & Volume hard keys. Home hard key. Reliability Wifi + reliable/real-time cmd-ack proctocol between panel & extender. Extender interface between Wifi and/or wired ethernet connection between extender and control panel and A/V A/V devices. devices. 2-way serial line interface between extender and A/V devices. Interoperability High-end IR. Availability Control panel Ease of use Ease of set up Good name Added value Fit in portfolio Philips Home Profit Control Produce ability Testability DVD Software upgrade Logging and status visibility Diagnostics Ampl Data Manager Data Data Objects Objects Extender Database Manager PCF Import Gallery Templates Support Firmware upgrade software stack in separate partition than normal operation software stack. IR WiFi – WAP/Router Automatic test framework. Control Panel firmware upgrade. Extender firmware upgrade. IR solution in FPGA for both control panel and Extender. Downloadable Factory Database with IR codes and serial codes. Downloadable Editor application. Diagnostics messages logging in device. Status LEDs for all communication (network / I/O / serial ports) on extender. IR RS232 Dig I/O Devices Remote Control Undo Redo Support Maestro Parsers Command Command Objects Objects Deployment +2.5 LDO +2.5V Vaux FPGA Power / Battery Logic (Derived from HDD) EL7530 3.3V ethernet controller+ Wifi USI CHG_EN VDC_2 Shottky diode GND 1 2 - + 3 - - + • Home building companies that expand their offering to fully installed entertainment and home control systems 5 Good name 3 Sell ability 4 Prof it 6 Serviceability 2007 Upgradeable Pronto Easy To Experience A dvanced A large bright LCD display gives me a clear overview to control my complete home entertainment experience Unique Philips technology to allow the creation of personalized user interfaces Dealer WorkSheet Company Confidential BLC P&ACC 2004-12-06 Philips Consumer Electronics, Dick Mol, OctHouse 2004 Value Proposition One Philips Version 0.9 draft 12 2 tal Ins Philips Home Control ler Bolt Home Systems Advanced Audio Design Residential Systems Home Media Stores Installers Dealer "Jack” Margin Fit in portfolio “Jason” AV servers suppliers Tweeter Ph Magnolia ilip Co s Ho ntr me ol IP camera suppliers Lighting suppliers Avad rabi Con cern Us er Testability 2005 2006 Service 14 Sep Denver Market s Se rvic e Sta rs olde keh Xantech Vantage Crestron OEM AMX Philips Home Control PPENG V2.0 Editor ProntoEdit Professional v1.0 - MyDatabase integration - Escient Widget - Single shot 1w RS-232 - Lutron virtual graphic eye - Power sense cond. Macro Sharp Freescale Out of the box experience Reliable IR WiFi High installer productivity Multi-user Control Panel High-End Design Rotary control Diagnostics Multi-Language Lighting Control Music Server control UPnP 2-way RS232 via extender WiFi Ethernet Real-Time clock Fonts IP Camera MS MCE Conditional Macros WAV sounds Touchscreen Charging docking PEP v1.1 - OEM: Marantz - Wallmount Extender WiFi Ethernet Time management Token protocol Addressable IR IR output level IR blaster Power sensing inputs Relay outputs Serial I/O MyDB FactoryDB Technology Editor MyDB Editor Control Panel embOS i.MX21 Pronto RF Extender RS-232 Organisation Sw Dev: 3 Sw Dev: 14 Leuven Sw Dev: 6 UART … Later … September 2006 MX21S $9 2 MX21 $12 3 3 4 No Yes Maestro system MontaVista Hardware / Software Component Suppliers VBAT_OR_VDC VD: +3V2 SPI Requirements Maxi - VGA 6" - 2 way RS-232 Mini PEP v2.0 (=MaestroEdit 1.0) - Split GUI-codes - Activity oriented - MyDatabase - Quick Start Wizard - CE servers, IP cameras - 1 way RS-232 ST Microelectronics Price Short learning curve. Wallmount HAI Niles X+, X-, Y+, Y- LCD_BL_EN VD: +2V9 TS_IRQ 15-key keypad VD: +2V9 CF_RESET, CF_READY WIFI_EN SPI2_EXT_IRQ HW revision Vcore: +1V2 USB_nSOFTCON nCS2 VBUS INV USB_VBUS_IRQ D[0..31] A[0..15] D[0..15] SDCKE0 SDCLK, nRAS, nCAS, nSDWE A[1..3] 74LX138 74LCX32 address decoder CS_1B A[21..23] SDCLK SDCLK DQM[0..3] A[2..10, 12..15] D[0..15] nCS2 74LCX1662245 buffer/translator A[2..10, 12..15] D[16..31] nCS2 D[0..15] A[1..3] -IOR -IOW 64 MB NAND flash K4S56163PF-BF75 B_OE_B B_RW_B B_CS_B B_DQM3_EB3_B UART3_RTS K4S56163PF-BF75 NAND Flash 64 or 128 Mbyte (8 or 16 bit) 256Mb 1.8V 16-bit SDRAM 256 Mb 1.8V (16-bit) SDRAM 64 MB SD RAM Elan Competition speaker Key backlight (7 blue LEDs) Screen/Key backlight logic MA[10..11] Advanced extender - 4 rs-232 - 4 IR out/power sense in - 4 relays - Ethernet Extender Philips Philips Philips Philips NSOs NSOs NSOs NSOs HW_REV[0..2] EIM & SDRAMC INV Micro Basic extender - WiFi D&H Dealers / Distributers Marantz ISP1106D USB transceiver DOC_IRQ, DOC_DPD_A0 UART_RTS CS8900A-CQ3 Ethernet controller TXD+,TXDRXD+, RXD- Boot EEPROM AT93C46A -10SI-2.7 2008are of the control panel 2009 The f irmw should be upgradeable by the installer to add f unctionality or f or quality updates. Easy w ay to identif y problems. Training Midi - Landscape VGA 3.7" - Activity Control - Content Control - 1 way RS-232 - WiFi Control Panel PWR_ADT_IRQ, PWR_nCHGERR, PWR_nCHG USBD_VMO, USBD_VPO, USBD_VM, USBD_VP, USBD_SUSPND,USBD_RCV, nUSBD_OE Low design and realization costs. Ease of Diagnostics Use Fast installation Products rvic Tra eab inin ility g D+, D-, VBUS USB 2.0 RJ45 connector + TG41-2006+NL datafilter Se Pro Fie fita ld Pro Ca bility du ll Te cab Rate sta bili ility ty Harvey Electronics d e us of ility se ab ity Ea ail bil Av lia Re Inte rope lue p va t-u d de se ity Ad se of bil lia Ea Re “Bill & Jane, 2 kids, babysit lity En ……………... End Users “Edward & Barbara” PEP 2.2 - Skinning, Theming - 2 way RS-232 - Gallery Addon 1.2 ($19,99) Concept Signature Designed A round Y ou user Fully personalized interface to my needs Mini USB connector Speaker connector LED backlight driver UART3 Ethernet logic Robust and reliable editor – control panel communication. Added value Ability to link the “inserted added value” to a specif ic installer. Interoperability One control panel f or all Home Theater equipment in the room. The panel should be compatible w ith all these A/V devices (see also „end user‟). Margin There should be enough price margin to gain on selling the product and still have a competitive price & product. Fit in portf olio The product should f ill a gap in the product portf olio of the dealer w ith respect to f unctionality/quality/price. Prof itability Competitive Product/Market combination w ith sound prof it margin on top of the BoM and low NRE. Low Field Call Rate Robust and reliable control panel to have a low FCR. Produce ability Easy to produce against low costs. PEP 2.4 - Auto Configure Wizard - Navigation Overview - Mini Support - Gallery Addon 1.4 ($19,99) Visual impressio n (no t final design) Ease of set up Reliability • Retailers that are expanding their offering into A/V solutions and custom installation • Emerging PC based control systems with tablet PCs or smart displays Productivity PEP 2.1 - Relays - 2 page view - Gallery Addon 1.1 ($19,99) - export to Micro • Custom installation companies Availability 2 USB_VBUS_IRQ USB_nSOFTCON IR_RST_SLAVE USB 1.1 device VBAT_OR_VDC TILT sensor circuit KEY_BL_ONOFF KEY_SEL[0..4], KEY_IN_IRQ[0..3] DQM0, DQM1 Interoperability Installer DAC_LO_IRQ, DAC_HP_IRQ TS_IRQ TILTSENS_IRQ PWR_LPMODE GPIO DQM2, DQM3 7 Interrupt controller Bus Control VD: +1.8V • “When looking for a home control solution that offers flexibility in combination with reliability you always end up with the big and complex system solutions. Now the Pronto allows easy configuration at an affordable price point” Designed for control, the Pronto offers reliable operation and seamless integration into any major system at an affordable price point and with less installation effort. Headphone jack OPTIONAL LSP, LSN LCD_EN_VD, LCD_EN_VA, LCD_BL_EN D Chache VMMU DMAC (11 Chnl) VD: +1.8V Reliability Discriminator 2004-10-26 6 IR transmitter LINEOUT_L LINEOUT_R audio sub system DAC_nRST I Chache AIPI 1 AIPI 2 IR_OUT IR logic (FPGA) DAC_HP_IRQ HPL, HPR, HPCM DAC3560C VD: +1.8V Description Provide a control panel w ith hard keys and touch screen providing an easy and intuitive user interf ace. Pushing a control panel button f or a direct command or an activity should “alw ays” lead to the expected result. One control panel f or all Home Theater equipment in the room. The panel should be compatible w ith all these A/V devices. Whenever the end user w ould like to use the Home Theater system he should be able to control it by the control panel. Short learning curve and control panel conf iguration and installation time. Robust and deterministic control panel. Battery level circuit VBAT_OR_VDC Audio logic SSI_TXFS, SSI_TXDAT, SSI_TXCLK I2C_SDA, I2C_SCL I2C UART1 NFRB NFWP Derived drivers Intuitive use SSI/I2S ARM9TDMI VD: +2.9V Drivers Ease of use Film touch panel AD7843 TS controller SPI1_MISO, SPI1_MOSI, SPI1_nSS, SPI1_SCLK LCD_BL_PWM R[1..5], G[0..5], B[1..5], CLS, SPL_SPR, SPS_VSYNC, MOD, DCLK, LP_HSYNC, PS, REV Watchdog UART2 +3.3V Consumer Insight • Wealthy end users with limited time/ interest to seek for solutions, who are willing pay an installer to do the job SDIO UART1_RXD, UART1_TXD FPGA Xilinx +3.3V Target • High end Home control systems like Crestron and AMX • Mid end control systems like Elan, Premise, HAI, CorAccess, Vantage that have wireless or wall mount control panels CARR_IN, ENV_IN EECS, EESK EEDI, EEDO Stakeholders Priority PWM LCD Controller Timer 1 & 2 MC9328MX21 Memory Stick Host controller GND Sensor system with voltage signal output +3.3V • The highly reliable RF link with RS232 control and feedback ensure that your commands always reach the system components for a correct execution • The PC-editor wizard will guide you quickly through the configuration process while maintaining the full flexibility • The graphical capabilities allow the creation of a professional and impressive user interface • Pronto’s heritage in the market Competitive Environment SPI1 +3.3V Reasons to Believe • Less customer phone calls due to easy and reliable operation • Fully customizable to the client’s wishes • Extremely easy configuration makes custom installation more profitable • Seamless integration of the control of different devices and systems; from AV to home control, from legacy to IP based technology • Sleek form factor and design dedicated to control CGM (PLLx2) RTC FreeScale MX21 Processor MMC/SD UART2_RXD, UART2_TXD, New Pronto (installer) Benefits XTAL 32 kHz Bootstrap JTAG/ICE Video port SPI1_MOSI, SPI1_MISO, SPI1_nSS, SPI1_SCLK 802.11b/g PEP 2.3 - Marantz support - UPnP - Gallery Addon 1.3 ($19,99) 2004-10-26 nTDO_CPU Multimedia accelerator IR learn circuit 1 Boot setting nTRST, TDI, TCK, TMS SD_DAT[0..3], SD_CLK SD_WP SD_CMD SD_RDY BWG211 or W-G-MR-03 End User LED backlight 640 x RGB x 480 TFT panel LT1932 LED backlight driver Power Control nTDO_CPLD JTAG connector WiFi logic (SDIO) RF OUT +LED -LED +1.22V POR_1S JTAG_SEL Blue status LED driver - Antenna Sensor system with dry contact relay output 3.7" color VGA TFT LCD VLCD_5V0 iMX core VGA landscape TFT LCD & touchpad LS037V3D_01 VLCD_+9V8 LCD voltage supply FPGA core Ampl Build the AV-setup. Configure the extender. Fine tune the control panel configuration. Final test of the full setup. Done at end user premises. Router / Switch config file VLCD_2V9 VLCD_-6V5 LT1944 +1.5V nPOR_1S MX21 _BOOTSEL 4 + MOSFET switch Memory:1.8V LT1761 1.5V LT1761 1.22V 1 SEC Reset generator POR_INPUT Max 30V in + VD:+2V9 LCD_EN_VA +1.8V SW2 600mA Charger 1A single cell 2000 mAh BAT_LEVEL 12V 0.3A 4 LCD_EN_VD +2.9V LTC3455 Li-Ion battery pack WLAN_LED2 3 SW1 400mA Vmax Vmax NCP346 overvoltage protection VD: +3.2 OR 2.9v 2 Philips Home Control Version 0.5, 26 August „05 VD: +2V9 Inrush current limiter VDC Reverse polarity protection & EMI filter WLAN_LED2 1 Tuner Midi Maestro Block Diagram +3.3V LDO current boost UART1_TXD, UART1_RXD V_ADAPTPLUS, V_ADAPTMIN VD: +2V9 MyDB • “tweeter/magnolia programmer” • Age 30 – On this job 2,5 years • Single • Worked in a Software House before • Knows Elan and mx-3000 editors • Does all programming on the job – Equipment installed by other people • He likes to do this stuff… – He likes programming if it‟s not too repetitive • Works in team CF Translation CCF Translation Power sense INPUTS DC OUT IR Ports Sat Jason Beck Control Panel Related Software Gallery Parser Legacy Gallery Import .NET / GDI+ / SDK / OS DVD IR Jack Taylor Gallery Gallery Objects Objects Device Communication Quick Start Wizard Zlib USB • Age 43 • Started in TV repair shop – As electrician – Not pc educated • Self made man • 50 jobs a year@10k • Married to Suzan, 2 kids • Cedia Certified – Installer Level II • Works with independant electrician for cabling • Carries Prontos since 1999 • Works (programs) alone SQLite Gallery Manager Command Manager Pronto Parsers PPF / PCF Bundling Compression/Extraction POR_1S DOC_nBUSY IR RS232 Database Abstraction VD: +2.9V Variations Non-Functionals Extender Device DataDevice Model Data Model Resources Simulation VD: +2V9 Set-up configuration file and learn IR codes. Mainly done at installers premises LAN Project Database Clipboard Support Drag Drop Support Message Log Support Properties View XML Parsing VBAT_OR_VDC IR - “learn” Access Point My Database Registry Support View View Objects Objects Download API WAP/Router – NHC protocol Battery connector USB WiFi Database Product Configuration View Coordinator Layout View Control Panel EXTAL32K config file Document (Data Management) XTAL32K MyDB ou te r BOOT[0..3] Steps Internet View (User Interface) Application Framework /R Home Theater system is off. Control panel is in standby. WiFi connection is on between Control Panel and Extender via a Wireless Access Point. 1. End user enters Home Theater room. 2. End user picks up the Maestro control panel. a. The tilt sensor switches the control panel from standby on. b. The Home page is shown on the control panel. 3. The end user presses “Watch Movie” activity icon on the Control Panel. a. All required equipment is switched on (projector directly via IR, digital amplifier and DVD changer are connected to an advanced extender). b. A motorised projection screen is lowered via the extender. c. The motorised curtains are closed via the extender. d. The lighting system enables a watch movie scene via the extender. e. Control Panel jumps to “movie browsing” page. 4. The end user browses the list using the rotary wheel and slects “This is Spinal Tap”. a. DVD changer selects movie and starts to play. b. The control panel jumps to DVD control page. 3.a. What if TV Projector is powered-off? 3.e. What if no DVDs are loaded in DVD-changer? Time from standby First Home page: 300 ms Time from pressing activity Projection screen lowering: 500 ms Assumptions 12 1 Philips Factory DB Maestro Editor Application AP VD: +2.9V Company Confidential InternetExplorer.exe Factory DB USB Training Router / Switch WorkSheet BLC P&ACC 2004-12-06 Philips Consumer Electronics, Dick Mol, OctHouse 2004 Value Proposition One Philips Version 0.9 draft Binary CF Comm.dll VCORE: +1.5V RS232 A dvanced Unique Philips technology to allow the creation of personalized user interfaces Serviceability Upgradeable Tuner Extender Pronto Easy To Experience Service Sat LAN Access Point A large bright LCD display gives me a clear overview to control my complete home entertainment experience Factory software IR WiFi CFTranslate.dll IRTranslate.dll NFRE NFWE NFALE NFCLE -NFCE I don’t want to be bothered by details. Just get me the Home Theater control panel with best value for money that can be used by me and my family in a easy and intuitive way. • Mostly male, successful, 35 - 60 years Concept Signature Reuse Low Field Call Rate Repair by installer Consumer Insight • End users with a lot of money but no time/ interest to seek for solutions, who will pay an installer to do the job with special interest for custom installed Home Theater systems Designed A round Profitability IR Target • Emerging PC based control systems with tablet PCs or smart displays Y ou user Fully personalized interface to my needs Installable by installers. Intuitive use by end user. Reuse Application framework from current Pronto generation. Reuse Hardware/Software Platform from current iBoard. Reuse Hardware/Software Platform for midi and maxi control panels plus basic and advanced extenders. MyDatabase ExtenderDiscovery.exe Battery connector • Dedicated product design for Home Theater system control without compromizes. • Pronto’s heritage in the market • High end Home control systems like Crestron and AMX Visual impressio n (no t final design) Mid- to High end market. Maestro System My DB Project.xcf Gallery View Designed for control, it offers easy and reliable operation at a lower price point. Margin 1 Legacy .ccf. pcf CCFTranslate.dll MaestroEditor FUT Control Panel Firmware Parser Factory • The extreme flexibility of the PC-editor allows my installer to offer me exactly the system operation the way I want it • The graphical capabilities allow the creation of a professional and impressive user interface Competitive Environment • Mid end control systems like Elan, Premise, HAI, CorAccess, Vantage that have wireless or wall mount control panels Sell ability | 43 Realisation View Object Factory Productivity Interoperability Dealer PC Control Panel and Extender are able to send any IR code of any IR controllable device available in the world. Recharable battery powered. Low power usage. Display / backlight timeout. Short stanby-to-active time. Fast wifi wake-up. Extender always on. System can contain several extenders. System can contain several control panels, both portable and wallmountable. Configuration wizard guiding the inexperienced installers. Out of the box experience by providing ad hoc mode. Configuration editor on PC. Out of the box experience by providing a default configuration in the control panel. Control panel. End user has only operation mode available. Full speed USB connection. Editor & Control panel. Partial download. Graphics content protection by disabling the upload from Protection. Control Panel. High-end IR transmission for panel & extender. High-end IR reception to learn any code from accompanying High-end IR. remotes. Installer oriented database with Home Theater device plus their IR and serial command codes. BOM of panel. Low cost. BOM of extender. Low NRE for editor, panel & extender. 4 • Control of my content through IP based device control Overview of Pronto SW Design & Code Data Factory • “I can control my system according to my personal needs and those of my family. It is as simple as I want it." • “My friends will be really impressed” • Sleek form factor and design dedicated to control CF: •XML2bin •Down/upload •Lossless? •XML parser Concept End User Reliability Discriminator 3 CF size optimalisation Download time Performance of device Dev & Int. strategy Linux IDE Stakeholders Drivers Bill and Jane Harris Reasons to Believe 2004-10-26 Recommendations from Arch Ass Pronto2G CE servers: sw design Functional • He: CFO of a medium size comp – Age 46 • She: HRM manager –Age 42 • 2 kids (names…) • Major refurb of the house – 20k HT • Like to go out Jenny, babysit like the plasma Newbig Pronto (end user) • Retired Car Dealer (Dodge) from Mineapolis • aged 61 and 57 • Moving to Naples, Florida 30k Home Theatre in the Den • Son, Daughter, 3 grand children • Cinema enthousiasts, Home Videos since early 80‟s • Fans of the Chuck Berry and de Beach Boys Porting: Pronto sw iBoard hw Documentation: •Feasibility: Technical Notes •Requirements – ReqPro © Sioux Embedded Systems 2010 | Confidential •System architecture – 4+1 / Kruchten (device<hw/sw> & editor) Installer Edward and Barbara Williams performance/size RS232: DB Roadmap: •Market / Product / Techn / People / Process Documentation: •Views / pictures: customers/stakeholders/context/application dyn&stat •Stories Philips RCS, Ger Schoeber, 27-01-2005 Customer objectives LCD controller VGA IRS DB/UEI UPnP (AV Srvrs), low prio Mockup RIS –timing Boot RS232: •Extender •Control/Feedback •Reliability CoCoMo-metrics Benefits Execution Architecture Communication between: editor – dev+ext emulation CRS MaestroEdit CRS Comm Req Spec MaestroEdit Comm Maestro Req Midi Spec Version 0.9 General Maestro Concept Midi Version 0.9 General Concept Amand Frank Dick Mol Amand Frank Dick Mol USB Wizard Light protocol (eg Lutron…) BOM 2004-10-26 Simulator: •DevLinux •InstallerMS.W Memory Card Testability Tools Power mgt: •Reversed voltage •Output voltage – LDO •Standby •Evaluation board •Linux drivers - registers NFIO[8..15] US/EU (75/25): •Distributors •Installers IR, IR via extender Differentiate betw een end-user and installer Reliability (power mgt, IR) Realisation IR: •Master only •Master+Cygnus/Mbshi •Master+FPGA (performance?) NFIO[0..7] Customer objectives Installer productivity (= ease of installation) Ad Hoc setup 100 % learn & send v MyDatabase Midi v Music browsing v US / NL / F / D / SP Lutron Graphic Eye Escient 1-way v Partial dwld/Wizard v Wallmountable Midi Maxi portr QVGA 3.5 " landsc VGA 6.4 " Marantz Basic v v Marantz Adv 2x 2 2x 2 v 2x 2 2x 2 Marantz Midi Process v TimeMgt & Token Hebrew, Cyrilic Viewing v v v landscape VGA 3.7 " v Basic v v Advanced v 2x 2 2x 2 2x 2 2x 2 Basic Advanced v v v v v - Mini v BLR: \\Ingbtcpic3ms001 \Cew6maes \… LVN: \\Beqleuleu1ms033 \Pro-rcs \Projects \Touchscreen \8137_Maestro \… \Documentation \… Documentation Control_panel 01-Product 2 2 4 IR, modelnumbers v Comment Remarkable BOM reduction choosing MX21S for Control Panel, Wireless- and Serial Extender. Control Panel: SPI for Touchscreen and IR-FPGA. Currently the Marvell/USI WiFi module is designed in. This module uses the SDIO interface. If in the future the Philips WiFi module would be preferred because of less power usage, then a third SPI interface is needed. That would mean that the MX21 could be used for the Control Panel from then onwards. Disadvantage is then that there are two processor types needed in stock. Extenders: SPI only for IR-FPGA. Control Panel and wireless extender need only one UART for debugging purposes. The serial extender is specified to have 4 serial ports. By multiplexing serial port 3 towards serial connection 3 and 4 the MX21S can be used. There is no requirement or use case that serial connection 3 and 4 need to be used at the same time in parallel. The Control Panel should be able to display Motion JPEG pictures. This is however a different protocol than MPEG4. For now there is no requirement to be able to support MPEG2 or MPEG4 based IP-cameras. Light dimming RadioRa, Litetouch, Vantage AudioRequest, iMerge v v v v TrueType PEP Wizard MyDatabase FactoryDatabase Split of UI and Control Fonts Multiple CFs Simulator Macro testing Legacy Channel macro Fast learn Partial download Variables MPEG4 Editor Extender MultimediaPCsoftware 02-Project 01-Product 02-Project 01-Product 02-Project 01-Product 02-Project 01-Product 02-Project 2 2 MaestroEdit v serial devices Integrating Concepts v TrueType Navigation v v v CCF / PCF v v v v Sw Dev: 20 Bangalore 1-6-2009 © Sioux Embedded Systems 2010 | Confidential | 44 22 4/26/2010 Lean CAFCR example try at least to start with low-tech means © Sioux Embedded Systems 2010 | Confidential | 45 still running Transition between home & sub-page : nr of cycles before crash (WIFI enabled) crash after 25902 cycles, Latency between pressing a softbutton and sending of IR code 240,00 230,00 220,00 210,00 200,00 190,00 180,00 170,00 160,00 150,00 140,00 130,00 120,00 110,00 100,00 90,00 80,00 70,00 60,00 50,00 40,00 30,00 20,00 10,00 0,00 possible mem leakage 50000,00 no crash after 45157 cycles w hen test w as stopped 45000,00 Nr of cycles 40000,00 35000,00 no crash after 23434 cycles w hen test w as stopped no crash after 21455 cycles w hen test w as stopped 30000,00 25000,00 20000,00 15000,00 10000,00 target 5000,00 0,00 Incr 5 Incr 6 Incr 7 Incr 8 inter Incr 9 Incr 10 build MBS Incr12 Incr12 Incr13 mca mca mca Incr11 (MCA (+bugfi a(MCA V1.2.1 V1.2.6 V1.2.7 1.1.9) x) 1.2.2) 2 average 992,00 1129,8 1853,2 289,00 1328,2 12,40 4706,0 45157, 3533,7 21455, 23434, 25902, 27522, 20000, min 614,00 100,00 max 1600,0 2278,0 3310,0 815,00 4096,0 28,00 4205,0 45157, 3756,4 21455, 23434, 25902, 27522, 20000, 5,00 84,00 25,00 6,00 4233,7 45157, 4517,9 21455, 23434, 25902, 27522, 20000, in ACTIVE mode using softbutton in ACTIVE mode using softbutton Incr 8 Incr 9 Incr 10 Incr11 148,00 22,00 56,00 24,00 mca V1.2.6 mca V1.2.7 56,00 58,00 min 614,00 100,00 5,00 84,00 25,00 6,00 max 1600,0 2278,0 3310,0 815,00 4096,0 28,00 4205,0 45157, 3756,4 21455, 23434, 25902, 27522, 20000, Latency between pressing SendLearndIR icon in Editor and sending of IR code 4233,7 45157, 4517,9 21455, 23434, 25902, 27522, 20000, 600,00 550,00 Softbutton reaction time: homepage icons 500,00 450,00 1500,00 1400,00 1300,00 1200,00 1100,00 1000,00 900,00 800,00 400,00 350,00 300,00 CommDLL V1.0.5.1 250,00 200,00 150,00 use Largest 15_318_29.irc (1508bytes) 100,00 50,00 700,00 600,00 500,00 400,00 300,00 200,00 100,00 0,00 0,00 CommDLL V1.0.5.1 Incr 5 Incr 6 Incr 7 Incr 8 Incr 9 Incr 10 Incr11 Incr12 (MCA 1.1.9) Incr12 average [msec] 480 1160 580 716 366,66667 500 466,66667 150 216,66667 minimum [msec] 480 960 360 666 366,66667 366,66667 333,33333 133,33333 166,66667 maximum [msec] 480 1360 800 766 366,66667 633,33333 600 Incr 10 Incr11 470,00 370,00 Incr12 mca V1.2.6 mca V1.2.7 mca V1.2.8 use Largest 15_318_29.irc (1508bytes) 488,00 508,00 560,00 564 use Smallest 7_273_3.irc (24bytes) 432,00 344,00 340,00 232 use Smallest 7_273_3.irc (24bytes) SLEEP test, nr of cycles before crash => LCD time-out: press button, wait until LCD timer is expired, press button and verify if device comes alive, let device go to sleep 166,66667 266,66667 Return to homepage timing 30000,00 3000,00 25000,00 2500,00 no crash after 20000 cycles when test was stopped 20000,00 Nr of cycles NFR dashboard average 992,00 1129,8 1853,2 289,00 1328,2 12,40 4706,0 45157, 3533,7 21455, 23434, 25902, 27522, 20000, 2000,00 1500,00 15000,00 10000,00 1000,00 5000,00 500,00 0,00 0,00 Incr 5 from navigation -> homepage [msec] 360,00 from settings -> homepage [msec] Incr 6 720,00 Incr 7 360,00 Incr 8 900,00 Incr 9 Incr 10 Incr11 Incr12 (MCA 1.1.9) mca V1.2.6 400,00 500,00 433,33 266,67 0,00 1640,00 1080,00 720,00 3066,67 433,33 600,00 400,00 266,67 700,00 average over 3 trials Incr 10* (interm) Incr11 Incr13a(MCA 1.2.2) mca V1.2.6 384,67 20000,00 16058,00 27662,00 min 73,00 max 908,00 20000,00 27662,00 © Sioux Embedded Systems16058,00 2010 | Confidential | 46 20000,00 16058,00 27662,00 23 4/26/2010 Lessons learned in general DO‟s Incremental/iterative development with short feedback loops Integration as early as possible. This addresses the weak points in architecture/design (interfaces) in an early stage. “Vertical” integration strategy. Testing focus on non-functional requirements as early as possible. Daily stand-up meetings with the team, not only during development but in any phase of the project. Use information radiators, sheets on the wall for planning, status dashboard, architecture, business backgrounds. The customer is never wrong. Involve the customer whenever possible and use all the feedback you can get. Integrate over the disciplines as early as possible and as often as possible. Design a system from the point of view of the most important stakeholders (decision makers for buying the product). DON‟Ts Only BDUF and a lot of paper work at the start. Give priority to functional aspects over performance and „ilities‟. Write documents for the shelf. Have the process in the lead. Communicate electronically only. Start without an architectural foundation especially when working on a family of products. Postpone integration to the latest stage of the project. Horizontal integration: Integrate layer by layer. Have user interfaces designed by technical people only. © Sioux Embedded Systems 2010 | Confidential | 47 Question: YES! “Architecting & Agile, friends or enemies?” System Architecting & Agile Development © Sioux Embedded Systems 2010 | Confidential | 48 24 4/26/2010 © Sioux Embedded Systems 2010 | Confidential | 49 References Title Author(s), Source Agile Manifesto http://www.agilemanifesto.org Agile Modeling Scott W. Ambler http://www.agilemodeling.com/essays/amdd.htm Effective Practices for Extreme Programming and the Unified Process Architectural Blueprints The “4+1” View Model of Software Architecture CAFCR: A Multi-view Method for Embedded Systems Architecting Balancing Genericity and Specificity Documenting Software Architectures Philippe Kruchten IEEE Software, November 1995, pp. 42-50 Gerrit Muller http://www.gaudisite.nl/Thesis.html Views and Beyond Paul Clements, Felix Bachmann, Len Bass, David Garlan, James Ivers, Reed Little, Robert Nord, Judith Stafford Evaluating Software Architectures Paul Clements, Rick Kazman, Mark Klein Methods and Case Studies IEEE Std 1471-2000 Recommended Practice for Architectural Description of Software-intensive Systems http://www.iso-architecture.org/ieee-1471 Lean Software Development Mary Poppendieck, Tom Poppendieck An Agile Toolkit Pronto http://www.pronto.philips.com Scrum and XP from the Trenches Henrik Kniberg How we do Scrum Software Architecture in Practice Len Bass, Paul Clements, Rick Kazman Software Architecture David M. Dikel, David Kane, James R. Wilson Organizational Principles and Patterns The Art of Systems Architecting Mark W. Maier, Eberhardt Rechtin The Toyota Way Jeffrey K. Liker 14 management principles from the world‟s greatest manufacturer Understanding A3 thinking A Critical Component of Toyota‟s PDCA Management System Durward K. Sobek II, Art Smalley http://a3thinking.com/ © Sioux Embedded Systems 2010 | Confidential | 50 25 4/26/2010 www.sioux.eu ger.schoeber@sioux.eu +31 40 26 77 100 © Sioux Embedded Systems 2010 | Confidential | 51 26