智能网联汽车-infotainment development-CarPlay

wechat_Neal 2019-09-28 08:50:09
最近遇到一些车机连接CarPlay的问题,简单综述一下搜集的相关资料,希望能帮助需要的人有个简单的认识和理解: 首先,CarPlay的wired(USB)的连接方案要求车载设备至少要支持USB2.0 Hi-Speed,能够同时处理bulk IN和bulk OUT传输。该方案还要求车载设备必须支持USB Host Mode,该模式要求车载设备能够工作在USB device模式下,因为Apple设备在CarPlay中是作为USB Host的。而通常情况下,车载设备USB是工作在USB Host模式的,而外接的USB设备是工作在USB Device模式的,因而在这种情况下的CarPlay wired(USB)连接方案中就需要进行USB的模式切换。 当角色切换完成后,按照协议要求有以下几点需要注意: 1.车载设备(USB device)需要等待至少1000ms,目的是等待Apple设备(USB host)来枚举 2.如果1000ms后没有任何traffic,车载设备(USB device)得切换回USB Host模式 3.当Apple设备侦测到总线掉电(the loss of VBUS),Apple设备将切换回USB Device模式 4.如果车载设备(USB device)侦测到USB总线至少有200ms处于不活跃(inactivity)状态,车载设备(USB device)将切换回USB Host模式 对于 iAP2在CarPlay wired(USB)连接方案中的接口描述符(Interface Descriptor)和i数据传输(Data Transfers)作一下介绍 1.iAP2接口描述符(Interface Descriptor) 车载设备(USB Device)与Apple设备(USB Host)建立一个iAP2连接,需要申明一个vendor指定(vendor-specific)的接口,该接口有一个bulk IN端点(endpoint)和一个bulk OUT端点(endpoint)。 2.iAP2数据传输(Data Transfers) Apple设备(USB Host)通过bulk OUT端点发送iAP2数据给车载设备(USB Device)。依据USB协议,如果车载设备 (USB Device)成功地接收到Apple设备发送的iAP2数据便会回复一个USB ACK包,反之则回复一个USB NAK包。如果车载设备(USB Device)重复地回复USB NAK包并且超过1秒,便会视为接收超时。 车载设备在iAP2传输通道上成功的建立一个iAP2连接,通过iAP2进行认证,该认证过程有以下7种iAP2控制会话消息: 1.RequestAuthenticationCertificate 2.AuthenticationCertificate 3.RequestAuthenticationChallengeResponse 4.AuthenticationResponse 5.AuthenticationFailed 6.AuthenticationSucceeded 7.AccessoryAuthenticationSerialNumber 接下来,再介绍一下USB的NCM(Network Control Model)的两个接口。 1.USB NCM 控制接口(Control Interface)描述符(Descriptor) 2.USB NCM数据接口(Data Interface)描述符(Descriptor) 经常会听供应商反馈,NCM down,所以USB相关的数据传输会有问题,原理就在这了 车载设备需要在这个接口上完成USB Hi-Speed NCM。这个接口需要支持到64KB封装的数据报的传输(也就是到40个1514字节的以太网帧(Ethernet Frame)的传输)和16比特的NCM传输块。 使用CarPlay USB NCM接口的车载设备需要支持至少100Mbps的带宽,TCP和UDP的延迟小于5ms,UDP的丢包率(iperf测试下)要低于1%。 当Apple设备连上或断开的时候,车载设备需要对NCM接口状态作相应的改变。当Apple设备连接上的时候,在网络协议栈的头部需要标注NCM接口可用。 最后,介绍建立/终止CarPlay会话(session)。 建立CarPlay会话(session),车载设备首先需要同Apple设备建立IP网络连接,因此需要虚拟一个网络接口并分配MAC地址和ip地址,该ip连接必须是IPv6。车载设备在这个接口上需要支持Apple Bonjour零配置网络连接(zero-configuration networking)。一旦网络连接建立成功,车载设备在完成认证后将在CarPlay接口上开始设置(setup)和内容传输(content transfer)。需要注意的是,按协议要求,车载设备需要在与Apple设备网络连接建立好后的3秒钟内建立CarPlay会话,如果与Apple设备的物理连接断开,车载设备也需要检测到该断开情况并且在1秒钟内终止CarPlay会话。 呐,后续再继续更新吧,遇到新问题,学习新知识
...全文
1773 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
铖邑 2019-10-01
  • 打赏
  • 举报
回复
很好,感谢楼主分享!

6,128

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 新技术前沿
社区管理员
  • 新技术前沿社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧