3 Replies Latest reply on Aug 13, 2018 2:19 AM by ShifangZ_26

    CCG2 Can't trigger the Adapter cap, PE_SNK_GET_SRC_CAP

      您好,

        

          目前存在CCG2 SDK代码在充电头识别不良的问题。问题描述如下:

       

          首先,该批次的充电头是正常工作的,用其他触发器是可以正常触发。但CCG2在触发该批次充电头时存在只识别到5V,不能切换充电头的电压输出。

        

          在连接不能切换电压的充电头后,输出5V正常。get_src_pdo_count()返回了5个PDO,也符合该充电头的PDO描述。

       

          然后我用get_pe_state()去获取 CCG2的运行状态,发现一直停留在 PE_SNK_GET_SRC_CAP 这个状态,没有回到PE_READY状态(在连接能正常触发的充电头时,加电识别完成后都能回到该状态)。也不能触发充电头的电压切换(使用handle_sink_pdo_reg_write代码)。用逻辑分析仪抓CC 线上的数据包,发现CCG2没发出电压切换请求数据包(换能正常触发的充电头,该代码是能发出请求切换电压的数据包)。

       

          下图是在初始连接通讯时,CC数据线上电压不同,正常识别的,CC线默认是高电平;不能识别的,CC线是低电平,不知有何影响。

      5.jpg

       

      谢谢!

        • 1. Re: CCG2 Can't trigger the Adapter cap, PE_SNK_GET_SRC_CAP
          ShifangZ_26

          Hi ,

           

          如果您设计的是充电器,CC1和CC2应该是高电平的。如果您发现您的设计CC1和CC2不是一直是高电平的。您需要查看以下问题:

          1. 您的设计是否是一直让CC1和CC2为高电平?EZ-PD Configuration Utility -> CCG2 config file -> 

          Port Role: Source

          Default port role: Source

          Rp - Rd toggle: No

          2. 测试CC1和CC2,确保CC1和CC2是不是一直是低。如果是先高再低,那么需要尝试将固件里面的deepsleep关闭进行尝试。

          3. 将所有的保护关闭,以确保不是某个保护触发导致。

           

          Best Regards,

          Lisa

          • 2. Re: CCG2 Can't trigger the Adapter cap, PE_SNK_GET_SRC_CAP

            您好!

             

             

               首先,我这项目不是设计一个充电器!

               该项目是 一个触发器, 通过type-c线去连接各种充电头,并触发充电头的输出电压切换。

               所以如前所述,存在充电头识别不良的问题, 但对于各种充电头,5V都能识别并建立通讯连接。在切换电压输出时,在代码调试时发现get_pe_state()没返回PE_READY状态,停留在PE_SNK_GET_SRC_CAP,调用handle_sink_pdo_reg_write,CCG2没发出通讯数据包。

                在连接能正常切换的充电头时,get_pe_state()会返回PE_READY。 调用handle_sink_pdo_reg_write,CCG2有发出通讯数据包。

                而用逻辑分析仪查看CC线通讯状态,如前所述。

             

             

            谢谢!

            • 3. Re: CCG2 Can't trigger the Adapter cap, PE_SNK_GET_SRC_CAP
              ShifangZ_26

              Hi ,

               

              如果您这个设计的不是充电器,CC是低电平是不正常的设计,因为对方是SOURCE,需要上拉Rp,CCG2只负责下拉Rd.如果没有有效的分压,CCG2不能进入Type-C的状态。所以您这边需要确认测试充电头的情况。

               

              Best Regards,

              Lisa