1.iphone手机接入到车机
2.主机开始进行枚举
3.上层APP,判断手机是否支持carplay,进行主从切换
---通过USB control通道发送请求,是否支持carplay功能
0xC0, 0x53, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00
苹果设备需要回复,表示支持carplay功能
( OTG接口)
0x40, 0x51, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00
4.USB驱动激活NCM功能. iphone手机做主,开始枚举车机 (network control model)
5.上层APP 通过USB的bulk通信,实现iap2协议,实现苹果鉴权流程
---1)导航盒发送StartIdentification ,导航中控回复IdentificationInformation信息。
2)导航盒回复IdentificationAccepted信息
3)导航盒发送请求RequestAuthenticationCertificate信息
4)导航中控回复AuthenticationCertificate信息
5)导航盒发送RequestAuthenticationChallengeResponse信息
6)导航中控回复 AuthenticationResponse 信息
7)导航中控回复 AuthenticationSucceeded 信息
6.上层APP通过NCM,实现网络协议通道。
7.上层APP通过NCM, 发送音频,视频,数据。
8.上层APP接收控制数据,
NCM 用于host和device之间交换以太网帧的设备。其实就是将ip的网络包再次包装成一种特殊格式NTB,然后通过usb的链路发出。从用户来看就是插入了一块网卡,驱动中的操作也很简单就是在probe中注册一个net设备,然后将usb的输入输出连接到net设备的输入输出,中间使用NTB格式传输。
标签:中控,carplay,APP,0x00,连接,NCM,导航,流程 From: https://blog.51cto.com/u_13911803/8474052