<?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: TPL Communication Timeout and Data Loss during Multi-Port Initialization (MC33665 + MC33774) in S32K</title>
    <link>https://community.nxp.com/t5/S32K/TPL-Communication-Timeout-and-Data-Loss-during-Multi-Port/m-p/2349202#M57856</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;DIV&gt;
&lt;P&gt;To move this forward, I think it would help a lot if you could share a bit more concrete data:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;P&gt;Please specify the exact project you are migrating&lt;/P&gt;
&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;Could you provide SPI bus measurements (logic analyzer or scope) for the failing case?&lt;BR /&gt;Ideally tied to the exact code path (e.g. which SPI API and configuration).&lt;/P&gt;
&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;If possible, please capture the same SPI transaction on the RTD300-based project that is working and compare it against the new RTD.&lt;BR /&gt;Differences in CS timing, inter-frame gaps, clock behavior and missing frames could point directly to the root cause.&lt;/P&gt;
&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;Side-by-side measurements between RTD300 and the new RTD would likely make the root cause very obvious.&lt;/P&gt;
&lt;P&gt;BR, Petr&lt;/P&gt;
&lt;/DIV&gt;</description>
    <pubDate>Fri, 10 Apr 2026 10:16:32 GMT</pubDate>
    <dc:creator>PetrS</dc:creator>
    <dc:date>2026-04-10T10:16:32Z</dc:date>
    <item>
      <title>TPL Communication Timeout and Data Loss during Multi-Port Initialization (MC33665 + MC33774)</title>
      <link>https://community.nxp.com/t5/S32K/TPL-Communication-Timeout-and-Data-Loss-during-Multi-Port/m-p/2347775#M57799</link>
      <description>&lt;P&gt;Hi NXP Community,&lt;/P&gt;&lt;P&gt;I am currently migrating a Battery Management System (BMS) project from &lt;STRONG&gt;RTD 3.0&lt;/STRONG&gt; to &lt;STRONG&gt;RTD 6.0&lt;/STRONG&gt; on an &lt;STRONG&gt;S32K358&lt;/STRONG&gt; platform. While the exact same hardware and logic worked perfectly in RTD 3.0, I am encountering critical communication issues in RTD 6.0 when operating multiple TPL ports via the &lt;STRONG&gt;MC33665 Gateway&lt;/STRONG&gt;.&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;P&gt;Port 1: 1x BJB (MC33774)&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Port 2: 3x CMUs (MC33774 in Daisy Chain)&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;Communication:&lt;/STRONG&gt; SPI @ 8MHz, TPL @ 8MHz&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;OS:&lt;/STRONG&gt; FreeRTOS&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In RTD 6.0, the enumeration process fails immediately at the first device (BCC_Device_Addr = 1)，Bms_TD_Send(&amp;amp;TD_Cmu, &amp;amp;PhyError); return OK,&lt;/P&gt;&lt;P&gt;Td_Wait(&amp;amp;TD_Cmu); will cause&amp;nbsp;PHY_TS_TIMEOUT (it should be PHY_TS_FINISHED), do you have any idea on it?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I attached our MC33774 initial function code, it's work on RTD3.0.0 but not on RTD6.0.0.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Btw, all of 33665 MCAL setting is the same with RTD3.0.0 one, please help us check.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;BR, BillWen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;</description>
      <pubDate>Thu, 09 Apr 2026 01:41:42 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/TPL-Communication-Timeout-and-Data-Loss-during-Multi-Port/m-p/2347775#M57799</guid>
      <dc:creator>BillWen</dc:creator>
      <dc:date>2026-04-09T01:41:42Z</dc:date>
    </item>
    <item>
      <title>Re: TPL Communication Timeout and Data Loss during Multi-Port Initialization (MC33665 + MC33774)</title>
      <link>https://community.nxp.com/t5/S32K/TPL-Communication-Timeout-and-Data-Loss-during-Multi-Port/m-p/2349023#M57842</link>
      <description>&lt;P&gt;Hi :&lt;/P&gt;&lt;P&gt;I have some idea, maybe you can check this.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Environment:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;S32K358, BMS GEN2 SDK 0.9.1, S32K3 RTD 6.0 (S32K3_RTD_6_0_0_D2506)&lt;/P&gt;&lt;P&gt;PHY: TPL33665, DUAL_SPI_MASTER_SLAVE, ICU sideband (EIRQ16)&lt;/P&gt;&lt;P&gt;BCC: MC33774A (TPL3 variable) + MC33772C (TPL2 fixed 48L)&lt;/P&gt;&lt;P&gt;RTOS: FreeRTOS&lt;/P&gt;&lt;P&gt;Previously working on RTD 3.0 (S32K3_RTD_3_0_0_P01_D2303)&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Problem:&lt;/STRONG&gt;&lt;BR /&gt;After migrating to RTD 6.0, all PHY TDs complete with&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;PHY_TS_TIMEOUT&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;instead of&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;PHY_TS_FINISHED, even when valid response data is received (ResponseMsgNumAct &amp;gt; 0). The timeout handler also always reports&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;PHY_NO_ERROR, making it impossible to distinguish successful transactions from real failures.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;RTD 3.0 (correct):&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;Successful → Status=FINISHED, PhyError=NO_ERROR | Failed → Status=TIMEOUT, PhyError=HW_ERROR&lt;BR /&gt;&lt;STRONG&gt;RTD 6.0 (buggy):&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;Both cases → Status=TIMEOUT, PhyError=NO_ERROR&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Root Cause (2 bugs in Phy_665a driver):&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Race condition in&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;IcuReqQueueLowNotification()&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;—&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;bRxExpectedFlag&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;is cleared before&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;DSpiRequestQueueLowIrq()&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;is called. If SPI Slave RX fires in between, the response is ignored and&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;SpiFinishStatusUpdate()&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;is never called → GPT timeout always fires.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;SpiTimeoutStatusUpdate()&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;always called with&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;PHY_NO_ERROR&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;— even when no device responds. RTD 3.0 correctly reported&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;PHY_HW_ERROR.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Workarounds applied:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;Check&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;ResponseMsgNumAct == 0&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;instead of&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;Status == PHY_TS_FINISHED&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;to detect real failures&lt;/P&gt;&lt;P&gt;Check only&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;PhyError&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;for write-only TDs&lt;/P&gt;&lt;P&gt;Split large multi-device TDs into per-device TDs to avoid GPT timeout truncation&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;BR, BillWen&lt;/P&gt;</description>
      <pubDate>Fri, 10 Apr 2026 08:04:48 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/TPL-Communication-Timeout-and-Data-Loss-during-Multi-Port/m-p/2349023#M57842</guid>
      <dc:creator>BillWen</dc:creator>
      <dc:date>2026-04-10T08:04:48Z</dc:date>
    </item>
    <item>
      <title>Re: TPL Communication Timeout and Data Loss during Multi-Port Initialization (MC33665 + MC33774)</title>
      <link>https://community.nxp.com/t5/S32K/TPL-Communication-Timeout-and-Data-Loss-during-Multi-Port/m-p/2349202#M57856</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;DIV&gt;
&lt;P&gt;To move this forward, I think it would help a lot if you could share a bit more concrete data:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;P&gt;Please specify the exact project you are migrating&lt;/P&gt;
&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;Could you provide SPI bus measurements (logic analyzer or scope) for the failing case?&lt;BR /&gt;Ideally tied to the exact code path (e.g. which SPI API and configuration).&lt;/P&gt;
&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;If possible, please capture the same SPI transaction on the RTD300-based project that is working and compare it against the new RTD.&lt;BR /&gt;Differences in CS timing, inter-frame gaps, clock behavior and missing frames could point directly to the root cause.&lt;/P&gt;
&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;Side-by-side measurements between RTD300 and the new RTD would likely make the root cause very obvious.&lt;/P&gt;
&lt;P&gt;BR, Petr&lt;/P&gt;
&lt;/DIV&gt;</description>
      <pubDate>Fri, 10 Apr 2026 10:16:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/TPL-Communication-Timeout-and-Data-Loss-during-Multi-Port/m-p/2349202#M57856</guid>
      <dc:creator>PetrS</dc:creator>
      <dc:date>2026-04-10T10:16:32Z</dc:date>
    </item>
  </channel>
</rss>

