Climate Application and W3C Automotive WG/BG Status October 12th, 2017 Shinjiro Urata, ACCESS Co., Ltd.
Contents 1. Climate Web Application. - User Interface Contents 1. Climate Web Application - User Interface - Vehicle Signals - Application Structure 2. W3C Automotive WG/BG Activity - Organization - Members - Current Working Group Spec - History - Business Group Current Activity - VISS - VIAS
1. Climate Web Application
User Interface
Vehicle Signals in Use Outside Temp Data VSS Data Path Outside Temp Signal.Cabin.HVAC.AmbientAirTemperature A/C Temp(Driver) Signal.Cabin.HVAC.Row1.Left.Temperature A/C Temp(Passenger) Signal.Cabin.HVAC.Row1.Right.Temperature Fan direction(Driver) Signal.Cabin.HVAC.Row1.Left.AirDistribution Fan direction(Passenger) Signal.Cabin.HVAC.Row1.Right.AirDistribution Fan power Signal.Cabin.HVAC.FanSpeed Air Recirculation Signal.Cabin.HVAC.IsRecirculationActive Defrost (Front) Signal.Cabin.HVAC.IsFrontDefrosterActive Defrost (Rear) Signal.Cabin.HVAC.IsRearDefrosterActive Air Conditioning Signal.Cabin.HVAC.IsAirConditioningActive Auto mode Signal.Cabin.HVAC.IsAutoModeActive
(ACCESS NetFront Browser BE) Climate Web Application App Structure Web Runtime (ACCESS NetFront Browser BE) Climate Web Application W3C VIAS JavaScript API W3C VIAS JS library WebSocket client W3C VISS Interface (WebSocket +JSON) Vehicle Data Consumer W3C VISS Server WebSocket sever CDL Daemon
2. W3C Automotive WG/BG Activity
Organization W3C Automotive Working Group (WG) (https://www.w3.org/auto/wg/) Working to make Vehicle API specification (VISS and VIAS) as W3C Recommendation. Chair: Paul Boyes(INRIX), Rudolf Streif(JLR), Peter Winzell(Mitsubishi Electric) Team contact: Ted Guild(W3C) [*]Peter Winzell has left the company W3C Automotive and Web Platform Business Group (BG) ( https://www.w3.org/community/autowebplatform/ ) Discuss next themes which should be tackled among Automotive and Web related technologies by forming Taskforces. Taskforces: RSI (Rest Service Interface) TF, Media Tuner TF, LBS(Location Based Service) TF, Automotive Security and Privacy TF, etc. Chair: Paul Boyes(INRIX), Wonsuk Lee(ETRI), Qing An(Alibaba) Team contact: Ted Guild(W3C)
Members WG Members BG Members International Forecourt Standards Forum, OBIGO, Vinli, Baidu Red letter: Chair members JLR, ETRI, Alibaba, INRIX, KDDI, VolksWagen, Mitsubishi Electric, IBM, LG Electrionics, ACCESS, Fraunhofer Gesellshaft, APTPOD, INSTITUT TELECOM MobiWize, TotalFinalElf, Continental Automotive, Sharp, Bluemove, Samsung Electronics, Hyundai Motor Company , SHIFT Mobility, Harman, INSTITUT TELECOM, Pandora Media, People Technology Foundation, Tweddle, JARI, Jato Dynamics, Vodafone, Newphoria, ATOS, DFKI, SmartEtailing, BSQUARE, HI Corporation, Neusoft, Orange, JEITA, Statok Gmbh, BlackBerry, Verisign, Visteon, Covea, Openstream, WEX, iHeartMedia, Mobile Web Forum BG Members
WG Current Spec A) W3C Vehicle Information Service Specification (VISS) Specification of message protocol to provide vehicle information Use WebSocket as information transport and JSON as message format (in future, other communication method could potentially employed. e.g.HTTP) Methods: get, set, subscribe, authenticate, getMetadata, etc. B) W3C Vehicle Information API Specification (VIAS) Specification to provide JavaScript API for user’s convenience. Primarily, supposed to implement as JavaScript wrapper library. C) GENIVI Vehicle Signal Specification (VSS) Vehicle data model. For compatibility, refer GENIVI’s specification.
History 2013 2014 2015 2016 2017 Business Group Working Group Vehicle API BG draft spec released. 2013 2014 2015 2016 2017 Business Group FPWD of VISS BG started at 2013 Feb Working Group WG started at 2015 Feb Vehicle API discussion transferred to WG for fix as Recommendation API design change: from browser-native API to WebSocket service API Target: Recommendation of VISS, VIAS Phase1: Browser-native API Phase2: WebSocket service API
History: API Design Change Phase1: Browser-native API (obsolete) Proposed by Intel + LGE. Designed referring Tizen, GENIVI, Webinos, QNX. Standard W3C API style (implement in browser code in C++, WebIDL) Pros: Performance. Security. Cons: Need browser knowledge. Not easy to update, add function. Phase2: WebSocket based service API (current) Proposed by JLR + ETRI New style (does not change browser code but reside as a service) Pros: Uses web technology only. Every browser can use an VISS implementation without browser code change. Easy to update. Cons: Performance. Need security consideration.
BG Recent Activity RSI(Rest Signal Interface) API discussion VolksWagen’s proposal Another concept of API based on RESTful interface with using WebSocket partly. (Hybrid approach)
VISS Concept Client Web VISS App Server Web Runtime CDL or other Car Gateway Request Msg Web Runtime { ‘action’: ‘get’, ‘path’: ‘Signal.Drivetrain .Transmission.Speed’ ‘requestId’: ‘111’ } Client Web App VISS Server WebSocket communication Response Msg { ‘action’: ‘get’, ‘value’: ’30’, ‘requestId’: ‘111’ }
VISS Example Usage const vehicle = new WebSocket(‘wss://wwwivi’, ‘wvss1.0’); vehicle.onopen = ()=>{ vehicle.send(“{‘action’:’get’,‘path’: ‘Signal.Drivetrain.Transmission.Speed’, ‘requestId’:’123’}”); ‘Signal.Drivetrain.internalCombustionEngine.RPM’, ‘requestId’:’124’}”); vehicle.onmessage = (event)=>{ var msg = JSON.parse(event.data); if(msg.requestId === ‘123’ && msg.value){ console.log(‘speed is ‘ + msg.value); } else if(msg.requestId === ‘124’ && msg.value){ console.log(‘RPM is ‘ + msg.value); } }; vehicle.close();
VIAS Concept Client Web App VIAS JS Library VISS Server Web Runtime Request Msg get(speed); VISS RequestJson function get() callback() WebSocket communication get(RPM); function subscribe() Response Msg callback() VISS Response Json VIAS API Interface
VIAS Example Usage const client = new VISClient({'host':'wwwivi', 'protocol':'wss', 'port':443}); client.onconnect = () => { client.get('Signal.Drivetrain.Transmission.Speed') .then((val) => {console.log('speed is '+val);};); client.get('Signal.Drivetrain.InternalCombustionEngine.RPM') .then((val) => {console.log(‘RPM is '+val);};); }; Client.connect()
Thank you! GENIVI is a registered trademark of the GENIVI Alliance in the USA and other countries. Copyright © GENIVI Alliance 2017.