home api a network-independent home control architecture maurice bizzarri software director business...
TRANSCRIPT
Home APIHome APIA Network-Independent Home A Network-Independent Home Control Architecture Control Architecture
Maurice Bizzarri Maurice Bizzarri Software DirectorSoftware DirectorBusiness Line InterconnectivityBusiness Line InterconnectivityPhilips SemiconductorsPhilips Semiconductors
AgendaAgenda
Part I: Home API OverviewPart I: Home API Overview Home API Working GroupHome API Working Group What is Home API?What is Home API? Home API and Universal Plug Home API and Universal Plug
and Play, 1394and Play, 1394 SummarySummary
Part II: Home API ArchitecturePart II: Home API Architecture
New Product OpportunitiesNew Product Opportunities
The time is ripe to move home The time is ripe to move home automation and control into automation and control into the mainstreamthe mainstream
Home devices are becoming “intelligent”Home devices are becoming “intelligent”
Home/consumer networking and Home/consumer networking and connectivity are “hot”connectivity are “hot”
People are actually beginning to “get it”People are actually beginning to “get it”
Both the PC and CE industries need to Both the PC and CE industries need to find find new areas to innovate - markets for new areas to innovate - markets for current products are becoming saturatedcurrent products are becoming saturated
Control networksControl networks(PLC, RF, IR)(PLC, RF, IR)
HVACHVAC LightLightControlControl
SecuritySecurity
CordlessCordlessbasestationbasestation
Phone linePhone line
CordlessCordlesscommunicatorcommunicator
SprinklerSprinklerSystemSystem SensorsSensors
Data NetworksData Networks(Cat5, Phoneline(Cat5, Phoneline
RF, PLC)RF, PLC)
PCPC FridgeFridgePadPad
VideoVideoCameraCamera
Digital A/V NetworksDigital A/V Networks(1394)(1394)
DTVDTV DVCRDVCR DSSDSS DVDDVD
Home Mgt.Home Mgt.AppsApps
Home StateHome State scheduled eventsscheduled events house modehouse mode config infoconfig info
Remote Home Access Remote Home Access and Event Notificationand Event Notification
PagerPagerTelephoneTelephoneNew apps enabled by integrationNew apps enabled by integrationof information and connectivityof information and connectivityto controllable home devicesto controllable home devicesenhances family safety, comfort,enhances family safety, comfort,and convenience.and convenience.
InternetInternetExternal InfoExternal Info EPGEPG weather, trafficweather, traffic communitycommunity
Possibility For 2000Possibility For 2000Windows PC or STB as Integration Point for Windows PC or STB as Integration Point for Intelligent HomeIntelligent Home
But: Will My PC Crash But: Will My PC Crash My House?My House?
Absolutely not!Absolutely not! PCs enhance home device functions PCs enhance home device functions
with added intelligencewith added intelligence Devices must still work standaloneDevices must still work standalone Should use dedicated controllers for Should use dedicated controllers for
critical taskscritical tasks
““Y”Y”CompanyCompany
Security, HVACSecurity, HVACControl AppControl App
X-10X-10DriversDrivers
RF RF SensorSensorDriversDrivers
PC GUIPC GUI
““X”X”CompanyCompany
PC GUIPC GUI
Lighting andLighting andSmall Appl Small Appl Control AppControl App
X-10X-10DriversDrivers
Proprietary, non-extensible solutions don’t grow the market.Proprietary, non-extensible solutions don’t grow the market.Proprietary, non-extensible solutions don’t grow the market.Proprietary, non-extensible solutions don’t grow the market.
““Z”Z”CompanyCompany
Security, Lighting Security, Lighting Small Appl., CE Small Appl., CE
Control App.Control App.
X-10X-10DriversDrivers
IRIRDriversDrivers
PC, voice GUIPC, voice GUI
Current Software ApproachCurrent Software Approach
MonolithicMonolithic Not easily extensible to new protocolsNot easily extensible to new protocols Vendor SpecificVendor Specific No published APIs for ISVsNo published APIs for ISVs
A Better Approach: Home APIA Better Approach: Home API
API designed for API designed for control control of Home of Home DevicesDevices
No new protocolsNo new protocols No new networksNo new networks First implementation First implementation
under Windowsunder Windows
Home API Working GroupHome API Working Group
Founded Q4 ’97, went Founded Q4 ’97, went public Q4 ’98 public Q4 ’98
Now 31 participantsNow 31 participants 0.95 Spec released to 0.95 Spec released to
participants December ’98participants December ’98 http://www.homeapi.orghttp://www.homeapi.org
Home API Working Group Home API Working Group Promoter CompaniesPromoter Companies
Who Are The Participants?Who Are The Participants?
An influential group of companies An influential group of companies interested in enabling new product interested in enabling new product opportunities in the home automation, opportunities in the home automation, control, and networking areacontrol, and networking area
A diverse group of companies, with A diverse group of companies, with hardware and software expertise, hardware and software expertise, representing:representing: PCs, software applications, and peripheralsPCs, software applications, and peripherals Consumer electronics and entertainmentConsumer electronics and entertainment Home HVAC and securityHome HVAC and security Home lightingHome lighting Home automation and controlHome automation and control
AgendaAgenda
Part I: Home API OverviewPart I: Home API Overview Home API Working GroupHome API Working Group What is Home API?What is Home API? Home API and Universal Plug Home API and Universal Plug
and Play, 1394and Play, 1394 SummarySummary
Part II: Home API ArchitecturePart II: Home API Architecture
The Home API Is…The Home API Is…
A service running in Windows A service running in Windows Allowing for discovery, and control of Allowing for discovery, and control of
home devices by Windows applicationshome devices by Windows applications Network and protocol agnosticNetwork and protocol agnostic
A framework for device namespaceA framework for device namespace A runtime for installable A runtime for installable
home “behaviors”home “behaviors”
The Home API Is The Home API Is NotNot……
A network management serviceA network management service Directly involved with Media StreamingDirectly involved with Media Streaming
But, can be used to locate media streams But, can be used to locate media streams associated with devices in the homeassociated with devices in the home
Home API ServicesHome API Services Object creationObject creation
With discovery and controlWith discovery and control Property routesProperty routes
State change propagation State change propagation Events and subscriptionsEvents and subscriptions
Update on demandUpdate on demand ContainersContainers
Context, behavior encapsulationContext, behavior encapsulation AssociationsAssociations
Expose related componentsExpose related components Asynchronous operationsAsynchronous operations
Efficient, failure tolerantEfficient, failure tolerant
Home API Discovery Home API Discovery And ControlAnd Control Standard COM/OLE Standard COM/OLE
automation interfacesautomation interfaces Simple, centralized namespace Simple, centralized namespace
for devicesfor devices Regardless of connectivity methodRegardless of connectivity method
Notification of new devices and services Notification of new devices and services added to the systemadded to the system
Network and protocol agnosticNetwork and protocol agnostic Network or bus connectivity model left Network or bus connectivity model left
to Service Providersto Service Providers
HomeHome
DenDenLiving RoomLiving Room
TVTV LightLight LightLight PhonePhone
Namespace FrameworkNamespace FrameworkFor home control devices For home control devices and servicesand services
Designed to mirror home topographiesDesigned to mirror home topographies Scope devices to actual locations in the homeScope devices to actual locations in the home
E.g.,“home.den.light”E.g.,“home.den.light”
Runtime For Installable Runtime For Installable Home BehaviorHome Behavior Home’s “Behaviors” can be contained Home’s “Behaviors” can be contained
completely in the Home API processcompletely in the Home API process Use “Routes” to describe a relationship Use “Routes” to describe a relationship
between two objects propertiesbetween two objects properties ““mySwitch.Power - myLight.Brightness”mySwitch.Power - myLight.Brightness” More on this in next talkMore on this in next talk
Home APIHome API
Client ApplicationClient Application
““Cool New Stuff”Cool New Stuff”Service ProviderService Provider
13941394Service ProviderService Provider
X-10X-10Service ProviderService Provider
Home API Home API ArchitectureArchitecture LayeredLayered Extensible via Extensible via
installable installable ““Service Providers”Service Providers”
Service ProvidersService Providers
Service Providers supply object Service Providers supply object instances to Home APIinstances to Home API E.g.. MyLightSwitchE.g.. MyLightSwitch
Home API supplies wrapped instances Home API supplies wrapped instances to clientsto clients
Clients may be other Service ProvidersClients may be other Service Providers E.g., Scene managers, Smart ContainersE.g., Scene managers, Smart Containers
Service ProvidersService Providers
Implement COM classes that expose:Implement COM classes that expose: IHomeControlObjectIHomeControlObject IpersistPropertyBagIpersistPropertyBag
Hides network interface detailsHides network interface details Matches events to subscriptionsMatches events to subscriptions
For event signalingFor event signaling Responsible for adding and removing Responsible for adding and removing
Home API objects as devices come Home API objects as devices come and goand go
Must handle hot Plug and PlayMust handle hot Plug and Play
AgendaAgenda
Part I: Home API OverviewPart I: Home API Overview Home API Working GroupHome API Working Group What is Home API?What is Home API? Home API and Universal Home API and Universal
Plug and Play, 1394Plug and Play, 1394 SummarySummary
Part II: Home API ArchitecturePart II: Home API Architecture
IP Home NetworksIP Home NetworksUsing HomePNA, Ethernet, Wireless, 1394, etc.Using HomePNA, Ethernet, Wireless, 1394, etc.
Universal Plug and Play Service ProviderUniversal Plug and Play Service Provider
InternetInternetE.g., Broadband shared via NATE.g., Broadband shared via NAT
Home APIHome API
Windows Home ApplicationsWindows Home Applications
Home API And Home API And Universal Plug And PlayUniversal Plug And Play
IP-based devices and servicesIP-based devices and servicesDirectly connected and proxiedDirectly connected and proxied
Home APIHome API
UPnP Service UPnP Service ProviderProvider
1394 Devices1394 Devices
Windows Home ApplicationsWindows Home Applications
Non-IP 1394Non-IP 1394Service ProvidersService Providers
AV/C, HAVi, etc.AV/C, HAVi, etc.
IEEE 1394IEEE 1394
IP over 1394IP over 1394
Home API And IEEE 1394Home API And IEEE 1394
Home API And HAViHome API And HAVi
Easily extensible Easily extensible for Home APIfor Home API
Complementary Complementary to Home APIto Home API
HAVi devices available HAVi devices available to Home APIto Home API
Home APIHome API
Home API to HAViHome API to HAViService ProviderService Provider
HAViHAVi
Home API To HAVi Home API To HAVi Service ProviderService Provider
Tracks devices on Tracks devices on 1394 network1394 network
Installs/Removes objects Installs/Removes objects to HAPIto HAPI
Installs DCMs in HAVi Installs DCMs in HAVi devices as neededdevices as needed
Interacts with other Interacts with other HAVi componentsHAVi components
HAViHAViService ProviderService Provider
HAVi DeviceHAVi DeviceHome API Home API ApplicationApplication
Home APIHome API
COMCOM
13941394
1394 To IP Gateway1394 To IP Gateway
Gateway in Set Top box Gateway in Set Top box or similar deviceor similar device
ARP, RARP equivalentARP, RARP equivalent Work with “legacy” Work with “legacy”
TCP/IP Network alsoTCP/IP Network also SNMP supportSNMP support Cooperates with HAPI Cooperates with HAPI
Service ProviderService Provider
1394/IP1394/IPGatewayGateway
IPIP
1394 Ring1394 Ring
Home APIHome APIPCPC
AgendaAgenda
Part I: Home API OverviewPart I: Home API Overview Home API Working GroupHome API Working Group What is Home API?What is Home API? Home API and Universal Plug Home API and Universal Plug
and Play, 1394and Play, 1394 SummarySummary
Part II: Home API ArchitecturePart II: Home API Architecture
www.homeapi.orgwww.homeapi.org
Home API SummaryHome API Summary
Open industry effort, 31 participants to dateOpen industry effort, 31 participants to date Service provider architecture for Service provider architecture for
home automationhome automation Network and protocol independentNetwork and protocol independent Complements Universal Plug and Play, HAVi, Complements Universal Plug and Play, HAVi,
and other device control modelsand other device control models Leverages PC intelligence for more flexible, Leverages PC intelligence for more flexible,
simpler home control scenariossimpler home control scenarios Without making home devices dependent on PCsWithout making home devices dependent on PCs
Begin planning migration from proprietary Begin planning migration from proprietary APIs nowAPIs now