<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: MC33664 and MC33772B Communication Issues in Power Management</title>
    <link>https://community.nxp.com/t5/Power-Management/MC33664-and-MC33772B-Communication-Issues/m-p/2066427#M4231</link>
    <description>&lt;P&gt;Did you refer to attached code for CRC calculation?&lt;/P&gt;</description>
    <pubDate>Fri, 21 Mar 2025 15:53:56 GMT</pubDate>
    <dc:creator>guoweisun</dc:creator>
    <dc:date>2025-03-21T15:53:56Z</dc:date>
    <item>
      <title>MC33664 and MC33772B Communication Issues</title>
      <link>https://community.nxp.com/t5/Power-Management/MC33664-and-MC33772B-Communication-Issues/m-p/2055769#M4158</link>
      <description>&lt;P&gt;Hello,&lt;BR /&gt;&lt;BR /&gt;I am currently dealing with communication issues between my MCU(STM32F4)/MC33664 and an off-the-shelf system that contains a MC33772B. I cannot access the MC33772B at all, other than the TPL pins, it is internally powered by the system that it is monitoring.&lt;BR /&gt;&lt;BR /&gt;My MCU is connected to my MC33664 over 2 SPI lines, and I have verified transmission from the SPI lines to the RDTX+/- pins. Effectively, the hardware that I have is "working". However, despite the messages that I'm sending, I'm not receiving any response from the off-the-shelf MC33772B.&lt;BR /&gt;&lt;BR /&gt;Here is my current process:&lt;BR /&gt;1. Initialize the MC33664 device by triggering the EN pin and monitoring the INTB pin. (This step was pulled from SDK online and timing was verified with oscilloscope)&lt;/P&gt;&lt;P&gt;2. Wake up TPL by flipping CSB pin on MC33664 (as below) (also timing verified).&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;static&lt;/SPAN&gt; &lt;SPAN&gt;inline&lt;/SPAN&gt; &lt;SPAN&gt;void&lt;/SPAN&gt; &lt;SPAN&gt;MC33664_WakeUpTpl&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;void&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;MC33664_WriteTXCSBpin&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;delay_us&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;21U&lt;/SPAN&gt;&lt;SPAN&gt;);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;MC33664_WriteTXCSBpin&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;1&lt;/SPAN&gt;&lt;SPAN&gt;);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;delay_us&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;600U&lt;/SPAN&gt;&lt;SPAN&gt;);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;MC33664_WriteTXCSBpin&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;delay_us&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;21U&lt;/SPAN&gt;&lt;SPAN&gt;);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;MC33664_WriteTXCSBpin&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;1&lt;/SPAN&gt;&lt;SPAN&gt;);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;delay_us&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;1000U&lt;/SPAN&gt;&lt;SPAN&gt;);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;BR /&gt;&lt;BR /&gt;3. Send Software Reset Signal&lt;BR /&gt;data = 0x0010 (write to software reset bit)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;addr = 0x03 (write to SYS_CFG1 register)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;cid = 0&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;cmd = 0x03 (global write)&lt;BR /&gt;&lt;BR /&gt;4. Send CID write signal&lt;BR /&gt;data = 0x0001 (write to CID)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;addr = 0x01 (in INIT register)&lt;BR /&gt;cid = 0&lt;BR /&gt;cmd = 0x02 (write cmd)&lt;BR /&gt;&lt;BR /&gt;5. Send CID read signal&lt;BR /&gt;data = 0x0001 (read one register)&lt;BR /&gt;addr = 0x01 (INIT register)&lt;BR /&gt;cid = 1 (check if it is written)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;cmd = 0x01 (read cmd)&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;For this sequence, the only messages that I read on the RDTX+/- lines are the messages that I am sending. Is there a problem with this sequence? Is there another sequence I should try?&lt;BR /&gt;&lt;BR /&gt;As well, I'm wondering what the timing requirements are for the TPL communication. I presently have a 16us delay between my SOM signal and the first logic bit of my message, and have a 26us delay between my last logic bit and my EOM signal. I believe this has something to do with the STM32 HAL SPI library, but I'm wondering if this is even a problem in the first place. If I use the HAL blocking SPI_Transmit functions, there is also a delay between the 4th and 5th bytes sent (I'm guessing due to the buffer size of the SPI transmit), I'm wondering if this is a problem as well. (I believed that it would be and resorted to using the HAL_DMA version of SPI_Transmit)&lt;BR /&gt;&lt;BR /&gt;Thanks!&lt;BR /&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Tue, 04 Mar 2025 21:16:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Power-Management/MC33664-and-MC33772B-Communication-Issues/m-p/2055769#M4158</guid>
      <dc:creator>andrchen</dc:creator>
      <dc:date>2025-03-04T21:16:49Z</dc:date>
    </item>
    <item>
      <title>Re: MC33664 and MC33772B Communication Issues</title>
      <link>https://community.nxp.com/t5/Power-Management/MC33664-and-MC33772B-Communication-Issues/m-p/2057401#M4176</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;/P&gt;
&lt;P&gt;For the hardware,please show us your connection circuit for your test platform.&lt;/P&gt;
&lt;P&gt;For the TPL communication could you please catch some waveforms for better&amp;nbsp;reveal your issue.&lt;/P&gt;</description>
      <pubDate>Fri, 07 Mar 2025 00:57:10 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Power-Management/MC33664-and-MC33772B-Communication-Issues/m-p/2057401#M4176</guid>
      <dc:creator>guoweisun</dc:creator>
      <dc:date>2025-03-07T00:57:10Z</dc:date>
    </item>
    <item>
      <title>Re: MC33664 and MC33772B Communication Issues</title>
      <link>https://community.nxp.com/t5/Power-Management/MC33664-and-MC33772B-Communication-Issues/m-p/2057508#M4178</link>
      <description>&lt;P&gt;I've attached images of our schematics, the physical connections are on a PCBA.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;I've also attached screenshots of our TPL communication.&lt;/P&gt;</description>
      <pubDate>Fri, 07 Mar 2025 05:17:42 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Power-Management/MC33664-and-MC33772B-Communication-Issues/m-p/2057508#M4178</guid>
      <dc:creator>andrchen</dc:creator>
      <dc:date>2025-03-07T05:17:42Z</dc:date>
    </item>
    <item>
      <title>Re: MC33664 and MC33772B Communication Issues</title>
      <link>https://community.nxp.com/t5/Power-Management/MC33664-and-MC33772B-Communication-Issues/m-p/2059058#M4183</link>
      <description>&lt;P&gt;I'm wondering if the issue may be CRC related? I am using the CRC calculator from the SDK, can you confirm what they intended CRCs are for the messages that I've outlined above?&lt;/P&gt;</description>
      <pubDate>Mon, 10 Mar 2025 22:56:31 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Power-Management/MC33664-and-MC33772B-Communication-Issues/m-p/2059058#M4183</guid>
      <dc:creator>andrchen</dc:creator>
      <dc:date>2025-03-10T22:56:31Z</dc:date>
    </item>
    <item>
      <title>Re: MC33664 and MC33772B Communication Issues</title>
      <link>https://community.nxp.com/t5/Power-Management/MC33664-and-MC33772B-Communication-Issues/m-p/2062663#M4213</link>
      <description>&lt;P&gt;the CRC is used to ensure consistency (during transmission) of each individual 40 bit message on the bus and is calculated for the for the bits[39..8].&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;If you transmit a message you have to calculate the CRC based on the data you sent and add that CRC to the message.&lt;/LI&gt;
&lt;LI&gt;If you receive a message you have to calculate the CRC_calc of the received message bits[39..8] and compare it with the received CRC_rx bits[7..0]. The data is consistent if CRC_calc == CRC_rx. If not consistent the data has to be ignored!&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&amp;nbsp;To ensure READ or WRITE commands you have to check the data inside the frame.&lt;/P&gt;</description>
      <pubDate>Mon, 17 Mar 2025 03:20:31 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Power-Management/MC33664-and-MC33772B-Communication-Issues/m-p/2062663#M4213</guid>
      <dc:creator>guoweisun</dc:creator>
      <dc:date>2025-03-17T03:20:31Z</dc:date>
    </item>
    <item>
      <title>Re: MC33664 and MC33772B Communication Issues</title>
      <link>https://community.nxp.com/t5/Power-Management/MC33664-and-MC33772B-Communication-Issues/m-p/2063410#M4216</link>
      <description>&lt;P&gt;Thanks for the explanation!&lt;BR /&gt;&lt;BR /&gt;I understand that the importance of the CRC, I understand that without the CRC the MC33772b won't respond. I do wonder if the CRCs that I'm calculating are correct. While I am using the provided calculator function in the SDK, I want the following CRC calculations to be verified, as well as the entire message process and message contents.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;DIV&gt;&lt;SPAN&gt;1. Send Software Reset Signal&lt;BR /&gt;data = 0x0010 (write to software reset bit)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;addr = 0x03 (write to SYS_CFG1 register)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;cid = 0&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;cmd = 0x03 (global write)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&lt;STRONG&gt;CRC = 0x37&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;2. Send CID write signal&lt;BR /&gt;data = 0x0001 (write to CID)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;addr = 0x01 (in INIT register)&lt;BR /&gt;cid = 0&lt;BR /&gt;cmd = 0x02 (write cmd)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&lt;STRONG&gt;CRC = 0x0B&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;3. Send CID read signal&lt;BR /&gt;data = 0x0001 (read one register)&lt;BR /&gt;addr = 0x01 (INIT register)&lt;BR /&gt;cid = 1 (check if it is written)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;cmd = 0x01 (read cmd)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&lt;STRONG&gt;CRC = 0xD4&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;I want your confirmation that the message contents are correct (data, addr, cid, cmd, and crc are all as they should be), and that the sequencing of messages are correct, and that I should at the very least be able to receive some level of response from the chip.&lt;BR /&gt;&lt;BR /&gt;I am trying to understand if the third-party/off-the-shelf system I am working with is not working or if I am just not sending the right data.&lt;/SPAN&gt;&lt;/DIV&gt;</description>
      <pubDate>Tue, 18 Mar 2025 04:12:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Power-Management/MC33664-and-MC33772B-Communication-Issues/m-p/2063410#M4216</guid>
      <dc:creator>andrchen</dc:creator>
      <dc:date>2025-03-18T04:12:53Z</dc:date>
    </item>
    <item>
      <title>Re: MC33664 and MC33772B Communication Issues</title>
      <link>https://community.nxp.com/t5/Power-Management/MC33664-and-MC33772B-Communication-Issues/m-p/2066427#M4231</link>
      <description>&lt;P&gt;Did you refer to attached code for CRC calculation?&lt;/P&gt;</description>
      <pubDate>Fri, 21 Mar 2025 15:53:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Power-Management/MC33664-and-MC33772B-Communication-Issues/m-p/2066427#M4231</guid>
      <dc:creator>guoweisun</dc:creator>
      <dc:date>2025-03-21T15:53:56Z</dc:date>
    </item>
  </channel>
</rss>

