Multi Source Translation Content

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Multi Source Translation Content

Discussions

Sort by:
关于将自定义 LPDDR5 时序集成到 i.MX95 OEI 和 DDR PHY 固件使用中的说明 您好,NXP团队, 我正在开发一款基于 i.MX9596 处理器和 LPDDR5 内存,并使用 i.MX OEI 引导加载程序的定制电路板。 我使用 MCUXpresso 配置工具 26.3 版为我的定制板生成了 DDR 配置。生成的文件如下: lpddr5_timing.c lpddr5_config.ds 外围设备.c peripherals.h pin_mux.c pin_mux.h 在 OEI 源代码目录 板/mx95lp5/ddr 下,我找到了以下文件: MIMX95_LPDDR5_EVK_19X19_6400MTS_FW2024.09_timing.c MIMX95_LPDDR5_EVK_19X19_6400MTS_FW2024.09_ECC_enabled_timing.c XIMX95LPD5EVK19_6400mbps_train_timing_a1.c 我想确认一下定制LPDDR5板的正确集成流程。 生成的 lpddr5_timing.c是否可以用此文件代替 MIMX95_LPDDR5_EVK_19X19_6400MTS_FW2024.09_timing.c,并更新 OEI_DDR_CONFIG 以引用新的时序文件? XIMX95LPD5EVK19_6400mbps_train_timing_a1.ca 是 NXP 提供的芯片专用训练文件,定制板需要保持不变吗? OEI 使用以下 DDR PHY 固件二进制文件: lpddr5_imem_v202409.bin lpddr5_dmem_v202409.bin lpddr5_imem_qb_v202409.bin lpddr5_dmem_qb_v202409.bin 只要固件版本与生成的 DDR 时序配置匹配,这些相同的固件二进制文件是否可以在定制的 LPDDR5 板上重复使用? 是否只有在启用 LPDDR5 ECC 时才需要启用 ECC 的时序文件?如果定制板上未使用 ECC,则普通时序文件是否足够? 从 EVK DDR 配置迁移到定制 LPDDR5 板时,是否需要重新生成或修改任何其他文件?请告知。 谢谢! Re: Clarification on Integrating Custom LPDDR5 Timing into i.MX95 OEI and DDR PHY Firmware Usage 你好, 1. 是的,您需要将 MIMX95_LPDDR5_EVK_19X19_6400MTS_FW2024.09_timing.c 替换为您的自定义配置。 2. 这是该特定硅片版本的一种不同配置,如果这是你的情况,可以将其用作参考。如果您不使用此配置,则可以保持不变。 3. 是的,这些二进制文件可以重复用于类似的配置,如果您不使用 ECC,则普通的计时文件就足够了。 顺祝商祺!
View full article
S32 Design Studio for ARM v2.2许可延期 您好,S32 Design Studio for ARM v2.2提示许可马上到期,Activation Code:FAF2-FCC2-8A8E-87AC,麻烦延期,谢谢!
View full article
S32 Design Studio for ARM v2.2 许可延期 您好,S32 Design Studio for ARM v2.2提示立即授权,激活码:FAF2-FCC2-8A8E-87AC,麻烦延期,谢谢!
View full article
S32K144EVB-Q100 Rev D Schematic Hi. I'm looking for the schematic for S32K144EVB-Q100 Rev D. I cannot seem to make the board send any CAN messages. Is there sample code available to send message on CAN 0 on that board? I was able to use SPI and confirm the CAN transceiver is in forced normal mode so CAN should be working. Re: S32K144EVB-Q100 Rev D Schematic You may check the sample code at S32DS for S32K144EVB... Please share if any since i can not found it... Re: S32K144EVB-Q100 Rev D Schematic Hello @rosejp03, I've sent you a private message on the community regarding the design files. Regarding the CAN functionality, Rev. C (the current board I am using) & Rev. D have the same exact CAN design and transceiver (UJA1169): S32K144EVB-Q100 Rev. DS32K144EVB-Q100 Rev. DS32K144EVB-Q100 Rev. D S32K144EVB Rev. C1S32K144EVB Rev. C1S32K144EVB Rev. C1 Are you using any existing example? Either the AN5413: S32K1xx Series Cookbook or the ones included through the RTD package?  Are you using the 12V jack connector? Change J107 position to 1-2 and power the board with 12V. How are you testing CAN communication? Are you using another EVB, a CAN analyzer, or anything else? Can you try scoping the bus?  Best regards, Julián Re: S32K144EVB-Q100 Rev D Schematic Hi @db16122, If you also need the design files for S32K144EVB Rev. D, please let me know. Best regards, Julián
View full article
新規プロジェクトウィザード失敗: FreeRTOSポートが自動的に追加されませんでした 皆さん、こんにちは。 MCUXpresso IDE V24.12を使って、LPC5536向けのfreeRTOSベースのプロジェクトを作ろうとしています。 「Create a new C/C++ project」ウィザード(Quickstart Panelから利用可能)は、プロジェクトにfreeRTOSのサポートを追加する簡単な方法を提供しているようです(下記スクリーンショットのマークアップ参照)。 ご覧の通り、「新しいプロジェクトウィザード」にはfreeRTOSを「オペレーティングシステム」として追加するチェックボックスがあります。このボックスにチェックを入れると、ウィザードは自動的にfreeRTOSのもう一つの重要な部分であるメモリマネージャーを追加します(下記のチェックボックス参照)。 しかし、ウィザードはfreeRTOSで最も重要な部分であるMCU固有のコード(下のスクリーンショットのマークアップ参照)を追加していません。 このコンポーネントを自分で選択しない場合、生成されたプロジェクトでコンパイルエラーが発生します。新規プロジェクトウィザードは常にコンパイル可能なプロジェクトを生成するべきだと私は考えています。さらに、MCUXpresso IDEのマニュアルには明確に「また、コンポーネントを選択すると依存関係も自動的に選択される」と明記されています。(セクション 5.1.1)SDK New Project Wilzard)。 私の意見では、これはバグ、少なくともユーザーエクスペリエンス上のバグです。 次のSDKやMCUXpressoのバージョンでこの問題が修正されることを期待しています。 ありがとう。 ダニエル Re: New Project Wizard fAiL: no freeRTOS port added automatically MCUXpresso IDE v25.6(執筆時点での現行)とSDK for LPC5536(バージョン25.06、manifest 3.15)で試しましたが、FreeRTOSカーネルとcm33ポート間の依存関係 がまだ存在せず 、手動で選択する必要があります。 Re: New Project Wizard fAiL: no freeRTOS port added automatically こんにちは、 @EdwinHz さん。 迅速なサポートに感謝します。 ありがとう。 ダニエル Re: New Project Wizard fAiL: no freeRTOS port added automatically こんにちは、 @danielholala さん、 この問題を再現できました。プロジェクトウィザードはすべての依存関係を自動的に選択するはずなので、これは間違いなくバグです。この問題をIDEチームに報告し、今後のMCUXpressoプロジェクトウィザードのバージョンで修正してもらうつもりです。 この問題を報告していただきありがとうございます。 BR、 エドウィン。
View full article
S32DSライセンスの有効期限が切れました。 サポートの皆さん、こんにちは。 有効期限が切れたライセンス番号FF6A-EDA4-CDF0-7186の延長にご協力ください。 よろしくお願いいたします。 マーカス アクティベーション | インストール | ライセンス | インストーラーのダウンロード Re: S32DS License Expired. ライセンスの延長は不可能だと思います。ライセンスを購入する必要があるかもしれません Re: S32DS License Expired. こんにちは、マーカスさん。 お客様のS32DSライセンスが延長されました。以前使用していたコードを使って、S32DSを再度有効化してください。 Re: S32DS License Expired. ジリさん、ありがとうございます! Re: S32DS License Expired. こんにちは、 これはARM 2018.R1用のS32DS向けです。ライセンスの延長にご協力ください。 よろしくお願いいたします。 マーカス
View full article
Yocto wrynose 版本“imx-car-navigation”失败 您好, 尝试在最新的 6.18.20-2.0.0 电路板支持包。 上为 FRDM-IMX93 构建“imx-image-full”时失败,失败情况如下: ERROR: imx-car-navigation-1.0-r0 do_compile: Execution of '/media/dzu/hd01-xfs/nxp/imx-yocto-6.18.20-2.0.0/build-imx93-frdm/tmp/work/armv8-2a-poky-linux/imx-car-navigation/1.0/temp/run.do_compile.1753043' failed with exit code 1 ERROR: Logfile of failure stored in: /media/dzu/hd01-xfs/nxp/imx-yocto-6.18.20-2.0.0/build-imx93-frdm/tmp/work/armv8-2a-poky-linux/imx-car-navigation/1.0/temp/log.do_compile.1753043 Log data follows: | DEBUG: Executing shell function do_compile | Cloning into '/media/dzu/hd01-xfs/nxp/imx-yocto-6.18.20-2.0.0/build-imx93-frdm/tmp/work/armv8-2a-poky-linux/imx-car-navigation/1.0/sources/imx-car-navigation-1.0/CANopenNode'... | fatal: unable to access 'https://github.com/CANopenNode/CANopenNode.git/': Could not resolve host: github.com | fatal: clone of 'https://github.com/CANopenNode/CANopenNode.git' into submodule path '/media/dzu/hd01-xfs/nxp/imx-yocto-6.18.20-2.0.0/build-imx93-frdm/tmp/work/armv8-2a-poky-linux/imx-car-navigation/1.0/sources/imx-car-navigation-1.0/CANopenNode' failed | Failed to clone 'CANopenNode'. Retry scheduled | Cloning into '/media/dzu/hd01-xfs/nxp/imx-yocto-6.18.20-2.0.0/build-imx93-frdm/tmp/work/armv8-2a-poky-linux/imx-car-navigation/1.0/sources/imx-car-navigation-1.0/CANopenNode'... | fatal: unable to access 'https://github.com/CANopenNode/CANopenNode.git/': Could not resolve host: github.com | fatal: clone of 'https://github.com/CANopenNode/CANopenNode.git' into submodule path '/media/dzu/hd01-xfs/nxp/imx-yocto-6.18.20-2.0.0/build-imx93-frdm/tmp/work/armv8-2a-poky-linux/imx-car-navigation/1.0/sources/imx-car-navigation-1.0/CANopenNode' failed | Failed to clone 'CANopenNode' a second time, aborting | WARNING: exit code 1 from a shell command. ERROR: Task (/media/dzu/hd01-xfs/nxp/imx-yocto-6.18.20-2.0.0/sources/meta-nxp-demo-experience/recipes-examples/imx-car-navigation/imx-car-navigation.bb:do_compile) failed with exit code '1' 请注意,这个问题是 100% 可复现的——在这里总是会失败。另请注意,即使 bitbake 正在执行“编译”步骤,存储库的下载也会失败。目前,我认为这可能与不应该在编译步骤中进行下载有关,也许 bitbake 现在将网络功能限制在了下载步骤中?最近有人试过这个配方吗? Re: Yocto wrynose build failure for 'imx-car-navigation' 看来我的直觉是对的。以下补丁解决了我的问题: --- sources/meta-nxp-demo-experience/recipes-examples/imx-car-navigation/imx-car-navigation.bb.ORIG 2026-07-13 16:02:28.733344421 +0200 +++ sources/meta-nxp-demo-experience/recipes-examples/imx-car-navigation/imx-car-navigation.bb 2026-07-13 16:02:11.178539144 +0200 @@ -14,6 +14,7 @@ do_configure[noexec] = "1" +do_compile[network] = "1" do_compile() { cd ${S} 但请注意,这只是一个权宜之计。默认情况下不允许这样做是有原因的——编译步骤不应该进行任何网络访问。
View full article
S32K144EVB-Q100 Rev D 回路図 こんにちは。S32K144EVB-Q100 Rev Dの回路図を探しています。ボードにCANメッセージを送らせることができません。そのボードのCAN 0にメッセージを送信するためのサンプルコードはありますか?SPIを使ってCANトランシーバが強制ノーマルモードになっていることを確認でき、CANは動作しているはずです。 Re: S32K144EVB-Q100 Rev D Schematic S32DSのサンプルコードでご確認くださいS32K144EVB...もし見つからなかったら教えてください... Re: S32K144EVB-Q100 Rev D Schematic こんにちは、 @db16122 さん。 もしリバS32K144EVB Dのデザインファイルが必要なら、ぜひお知らせください。 よろしくお願いします、 ジュリアン Re: S32K144EVB-Q100 Rev D Schematic こんにちは、@rosejp03 さん。 デザインファイルについてコミュニティにプライベートメッセージを送りました。 CAN機能についてですが、Rev. C(現在使っているボード)とRev. Dは全く同じCAN設計とトランシーバー(UJA1169)を持っています: S32K144EVB-Q100 Rev. DS32K144EVB-Q100 Rev. D S32K144EVB Rev. C1S32K144EVB Rev. C1 既存の例を使用していますか?AN5413: S32K1xxシリーズの料理本か、RTDパッケージに含まれるもののどちらかですか? 12Vジャックコネクタを使用していますか?J107の位置を1-2に変更し、ボードに12Vの電源を入れてください。 CANコミュニケーションはどのようにテストしていますか?他のEVBやCANアナライザー、その他何かを使っていますか?バスのスコープを試してみてくれない? よろしくお願いします、 ジュリアン
View full article
Problem with DDRv tool on LS1088A Hi, I am trying to validate a new type of DDR4 SO-DIMM on a custom board based on LS1088A SoC, but I am encountering problems with DDRv. I have already validated several other models of DDR4 in the past, and I did not encounter any problems. The new model of DDR that I am trying to validate is IMM2G72D4SOD8AG-B075I from Memphis. Its speed-grade is 2,666, but we would like to run it at 2,100 MT/s. I have created a new QorQ configuration project and successfully read DDR configuration via SPD. However, the first step (Centering the clock) consistently fails at 0.04%, on the 'Auto search & detect for write leveling start values' part. In the Test Results summary, I see that the test failed with the reason: "DDR interface is failing due to an issue other than WRLVL_START values, please investigate HW issues on the board." In the Logs section, I see the following information: #################### Result for: wrlvl_searcher ###### Run  1 ######################################   Test result: [ ============================================================ Updated: WRLVL_CNTL = 0x86550605, WRLVL_CNTL_2 = 0x00000000, WRLVL_CNTL_3 = 0x00000000, SDRAM_CLK_CNTL = 0x02800000     ============================================================ Updated: WRLVL_CNTL = 0x86550607, WRLVL_CNTL_2 = 0x09060C0F, WRLVL_CNTL_3 = 0x0E110B0E, SDRAM_CLK_CNTL = 0x02800000     ============================================================ Updated: WRLVL_CNTL = 0x86550607, WRLVL_CNTL_2 = 0x09050C0F, WRLVL_CNTL_3 = 0x1611130E, SDRAM_CLK_CNTL = 0x02800000     DDR interface is failing due to an issue other than WRLVL_START values, please investigate HW issues on the board. < > {{DDR interface is failing due to an issue other than WRLVL_START values, please investigate HW issues on the board.}}     Err. capture registers: 0xE20, 0x00000000     0xE24, 0x00000000     0xE28, 0x00000000     0xE40, 0x00000080      0xE44, 0x00000000     0xE48, 0x0000001D     0xE4C, 0x00000000     0xE50, 0x00000000      0xE54, 0x00000000     0xE58, 0x00010000          Dump: 0xF00, 0x00000000     0xF04, 0x00001002     0xF08, 0x0000000A     0xF0C, 0x14000C20      0xF10, 0x00000000     0xF14, 0x00000000     0xF18, 0x00000000     0xF1C, 0x00000000      0xF20, 0x00000000     0xF24, 0x2F003500     0xF28, 0x2A003600     0xF2C, 0x3E004A00      0xF30, 0x44004600     0xF34, 0x3A007000     0xF38, 0x00000000     0xF3C, 0x00000000      0xF40, 0x00000000     0xF44, 0x00000000     0xF48, 0x00000001     0xF4C, 0x94000000      0xF50, 0x0F001300     0xF54, 0x0C001800     0xF58, 0x1F002C00     0xF5C, 0x22002700      0xF60, 0x1C000000     0xF64, 0x00009000     0xF68, 0x00000020     0xF6C, 0x00000000      0xF70, 0x0060007B     0xF74, 0x00000000     0xF78, 0x00000000     0xF7C, 0x00000000      0xF80, 0x00000000     0xF84, 0x00000000     0xF88, 0x00000000     0xF8C, 0x00000000      0xF90, 0x00000000     0xF94, 0x80000000     0xF98, 0x00000000     0xF9C, 0x29002B00      0xFA0, 0x2B002B00     0xFA4, 0x27002D00     0xFA8, 0x28002E00     0xFAC, 0x27000000      0xFB0, 0x10000003     0xFB4, 0x42344241     0xFB8, 0x40334332     0xFBC, 0x43404150      0xFC0, 0x00004133     0xFC4, 0x44424444     0xFC8, 0x44415134     0xFCC, 0x51414251      0xFD0, 0x42414241     0xFD4, 0x50434252     0xFD8, 0x50444342     0xFDC, 0x42413444      0xFE0, 0x43514340     0xFE4, 0x44424444     0xFE8, 0x42514441     0xFEC, 0x40423443      0xFF0, 0x43424342     0xFF4, 0x43415042     0xFF8, 0x51415341     0xFFC, 0x54000D0D            Data:  0x00000005 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000    ]   I have attached the verbose CCS log from the failed validation procedure as well.   Could you please explain what this means and how we can debug the issue? QorIQ LS1 Devices Re: Problem with DDRv tool on LS1088A Compare with new type of DDR4 SO-DIMM, what kind of SODIMM used before? Any change between the new one and the old one Re: Problem with DDRv tool on LS1088A Hello, For your specific dump, the most actionable interpretation is: the controller raised an automatic calibration error ( ACE ) during training, and DDRv’s write-leveling search could not find a valid operating region by adjusting WRLVL_START . That points first to reset/clock/configuration/DQ-map/SI checks, with DDR reset and DQn_MAP high on the list because both are repeatedly tied to this exact DDRv failure class in NXP debug history. So, verify DDR clock/RCW, DDR reset timing, SPD-derived rank/geometry, DQ mapping, and power/SI before tuning margins. Regards
View full article
贡献内容:完整的 S32DS PFE 插件、LWIP 集成和 tcpip/LLCE 修复 NXP团队和S32G社区的各位好, 我为 S32 设计工作室 (S32DS) / S32 配置工具开发了一个完整的 PFE 插件。此前,PFE 配置支持仅可通过 EB Tresos 获得。新插件包含: 在 S32DS 环境中完全原生集成 与 NXP 官方 TCP/IP 插件无缝集成,支持 LWIP 协议栈 完整的TSN流量整形器配置(TAS和CBS) 使用 LWIP 和 LLCE 进行全面测试,包括卸载场景 在此过程中,我还发现并解决了官方 tcpip 和 LLCE 插件中的几个错误。 这项改进使得在 S32G 平台上更顺利地开发高级以太网和 TSN 应用成为可能。 我想向 NXP 贡献完整的插件、集成元器件、错误修复、文档和测试结果。这可以集成到未来的 RTD 或 S32 配置工具版本中,或者作为官方参考资料与社区共享。 向恩智浦团队提出的问题: 提交此贡献的推荐流程是什么(例如,通过技术支持案例或其他渠道)? 关于文件、包装或协议(例如保密协议)是否有任何特殊要求? 我已准备好包含插件文件、安装/集成指南、详细变更日志和验证结果的完整代码包,软件包。我乐意私下分享,并支持任何技术审查或讨论。 感谢您事先的指导。期待您的反馈。 此致, 阿尔萨尔·伊玛目 SDV架构师 @ GK Automobiltechnologie (Disrupt) 金VIP Re: Offering Contribution: Complete PFE Plugin for S32DS, LWIP Integration & tcpip/LLCE Fixes 你好, arsalimam 首先,感谢您分享这项令人印象深刻的工作,并感谢您愿意将其贡献给恩智浦半导体。 您描述的功能——包括原生 S32 Design Studio 集成、LWIP/tcpip 集成、TSN 流量整形支持 (TAS/CBS)、LLCE 验证以及相关的错误修复——对于 S32G 以太网和 TSN 开发来说似乎非常有价值。 现阶段,对 NXP 现有工具的软件组件、插件和修改的贡献需要相关产品和软件团队进行审查。因为验收过程可能涉及技术评估以及知识产权和法律方面的考虑。 您可以通过我们的客户支持系统分享您的资料: https://support.nxp.com 我们感谢您为改进 S32G 软件生态系统所付出的努力和关注。 BR 乔伊
View full article
提供内容:S32DS用PFEプラグインの完全実装、LWIP統合、およびtcpip/LLCEの修正 NXPチームとS32Gコミュニティの皆様、こんにちは。 私はS32 Design Studio(S32DS)/S32設定ツール用の完全なPFEプラグインを開発しました。以前は、PFEの設定サポートはEB Tresosのみで利用可能でした。新しいプラグインには以下が含まれます。 S32DS環境内での完全なネイティブ統合 NXP公式tcpipプラグインとのシームレスな統合によるLWIPスタックサポート 完全なTSNトラフィックシェーパー構成(TASおよびCBS) LWIPおよびLLCEを用いた徹底的なテスト(オフロードシナリオを含む) その過程で、公式のtcpipおよびLLCEプラグインに存在するいくつかのバグも特定し、解決しました。 この強化により、S32Gプラットフォーム上で高度なイーサネットおよびTSNアプリケーションの開発がよりスムーズに可能となります。 プラグイン全体、統合コンポーネント、バグ修正、ドキュメント、テスト結果をNXPに提供したいと考えています。これは将来のRTDやS32構成ツールのリリースに統合されるか、コミュニティの公式参考資料として共有される可能性があります。 NXPチームへの質問: この貢献を正式に提出する際の推奨プロセス(例:技術サポートCASEやその他のチャネルを通じて)はどのようなものですか? ドキュメント、梱包、契約(NDAなど)に関して特別な要件はありますか? プラグインファイル、インストール・統合ガイド、詳細な変更履歴、検証結果を含む包括的なパッケージを用意しました。私は喜んでプライベートで共有し、技術的なレビューや議論もサポートします。 ご指導をよろしくお願いいたします。ご意見をお待ちしております。 よろしくお願いします、 アルサル・イマーム SDVアーキテクト @ GK Automobiltechnologie (Disrupt) ゴールドVIP Re: Offering Contribution: Complete PFE Plugin for S32DS, LWIP Integration & tcpip/LLCE Fixes こんにちは、アルサリマム まず、この素晴らしい成果を共有していただき、またNXPに貢献してくださる意思を示していただき、ありがとうございます。 あなたが説明した機能、例えばネイティブのS32 Design Studio統合、LWIP/tcpip連携、TSNトラフィックシェーピングサポート(TAS/CBS)、LLCE検証、関連するバグ修正などは、S32GイーサネットおよびTSN開発にとって非常に価値があるようです。 この段階では、既存のNXPツールへのソフトウェアコンポーネント、プラグイン、修正の提供は、関連製品およびソフトウェアチームによるレビューが必要です。受入プロセスには、技術的な評価だけでなく、知的財産権や法的側面に関する検討も含まれる場合がある。 カスタマーサポートシステムを通じて資料を共有することができます: https://support.nxp.com S32Gソフトウェアエコシステムの改善に尽力し、ご関心を持ってくださったことに感謝いたします。 BR ジョーイ
View full article
私たちが使っている i.mx RT1062全体でイーサネットMACアドレスを一意に取得するにはどうすればいいですか? こんにちは、 私たちは イーサネットでMIMXRT1062DVL6Bし、製品を実現させてください。 まず、製品のMACアドレスを「SILICONID_ConvertToMacAddr」で実装します。「fsl_silicon_id.c」上で、NXPのOUIとシリコンIDを持つデバイスごとのユニークなMACアドレスを取得するために。 でもMACアドレスは SILICONID_ConvertToMacAddrは唯一無二ではなく、すべて同一だった。 質問があります。 「SILICONID_ConvertToMacAddr」と呼ぶ前に何か設定はありますか? それとも、「SILICONID_ConvertToMacAddr」はNXPデバイス上で一意のMACアドレスを取得するために機能しませんか? 2026年1月4号のIMXRT1060RM.pdfでは答えが見つかりませんでした。 答えを教えていただけますか? ありがとうございます。 Re: How can I get unique ethernet MAC address all over the i.mx RT1062 we use? やあ、アブナー ご支援ありがとうございます。 MACアドレスを使えることは理解しましたSILICONID_ConvertToMacAddr製品に。しかし、SILICONID_ConvertToMacAddrはあくまで例であり、大量生産には使えないと理解しています。そして、OUIのMACアドレスを使わなければなりません。 よろしくお願いいたします。 茂 Re: How can I get unique ethernet MAC address all over the i.mx RT1062 we use? こんにちは、@shigeru辻田  この状況を見つけてくれてありがとうございます。SILICONID_ConvertToMacAddrはNXP MCUX SDKの例として、テスト環境でのMACアドレスの競合を減らすために使われています。同じスイッチで異なるSocsのETHに接続しています。同じシリーズのSocの状況については、ここでは触れないかもしれません。 しかし、なぜこの方法で製品のMACアドレスを生成するのかが混乱しています。まず第一に、あなたのOUIは会社のものを使うべきです。そして、ユニークIDについては、会社内に特別な定義があるはずです。 Re: How can I get unique ethernet MAC address all over the i.mx RT1062 we use? こんにちは、メイ。 SILICONID_ConvertToMacAddrは、固定のNXP OUIと3バイトのシリコンID(OCOTP->CFG0/1の一部)を使用してMACアドレスを生成すると理解しています。 ターゲット製品のOCOTP->CFG0/1を観察しました。 それらの値は以下のとおりです。 - MIMXRT1062 1個 - OCOTP->CFG0: (uint32_t)0x615c'faa4 - OCOTP->CFG1: (uint32_t)0x2a1e'61d7 - その他のMIMXRT1062 - OCOTP->CFG0: (uint32_t)0x615c'faa4 - OCOTP->CFG1: (uint32_t)0x4922'61d7 OCOTP->CFG0 の下位 3 バイトが SILICONID_ConvertToMacAddr の MAC アドレスに使用されるため、両者の MAC アドレスは類似しています。 SO、多くの製品は似たMACアドレスを持っています。(現在、数百個のプロトタイプを保有しており、すべてのMACアドレスをチェックしているわけではありませんが、54:27:8D:A4:FA:5Cとは異なるMACアドレスはまだ見つかっていません。) ありがとう。 Re: How can I get unique ethernet MAC address all over the i.mx RT1062 we use? こんにちは@shigeru-tsujitaさん 私たちの製品にご関心を寄せ、コミュニティをご利用いただき、本当にありがとうございます。 SDK silicon_idコンポーネントが正しく統合されていると仮定すれば、MIMXRT1062のためにSILICONID_ConvertToMacAddr()を呼び出す前に追加の設定は必要ありません。 SILICONID_ConvertToMacAddr() は、MAC アドレスを生成する際に、完全な 64 ビットのシリコン ID を使用しないことにご注意ください。最初の3バイトには固定のNXP OUIを使用し、最後の3バイトにはシリコンIDから3バイトのみを使用します。 SDKコードによると: 複数のデバイスから64ビットシリコンのユニークIDを読み取り、ID値が正しく読み取られているか確認してもらえますか?また、siliconId[0]、siliconId[1]、siliconId[2]も比較してください。これらはMACアドレスを生成するために使用されるバイトです。 これらの3バイトがデバイス間で同一であれば、生成されるMACアドレスも同一になります。 よろしくお願いいたします。 5月
View full article
S32DS许可证已过期。 您好,客服人员, 请帮忙延长已过期的许可证: FF6A-EDA4-CDF0-7186 。 此致, 马库斯 激活 | 安装 | 许可 | 安装程序下载 Re: S32DS License Expired. 我认为延长许可证是不可能的。或许你需要购买许可证。 Re: S32DS License Expired. 您好, 这是为 S32DS for ARM 2018.R1 准备的。请协助延长许可证期限。 此致, 马库斯 Re: S32DS License Expired. 嗨,马库斯, 您的S32DS许可证已延期。请使用您之前的激活码重新激活S32DS。 Re: S32DS License Expired. 谢谢你,Jiri!
View full article
Yocto wrynose build failure for 'imx-car-navigation' Hi, trying to build 'imx-image-full' for an FRDM-IMX93 on the latest 6.18.20-2.0.0 BSP fails like this: ERROR: imx-car-navigation-1.0-r0 do_compile: Execution of '/media/dzu/hd01-xfs/nxp/imx-yocto-6.18.20-2.0.0/build-imx93-frdm/tmp/work/armv8-2a-poky-linux/imx-car-navigation/1.0/temp/run.do_compile.1753043' failed with exit code 1 ERROR: Logfile of failure stored in: /media/dzu/hd01-xfs/nxp/imx-yocto-6.18.20-2.0.0/build-imx93-frdm/tmp/work/armv8-2a-poky-linux/imx-car-navigation/1.0/temp/log.do_compile.1753043 Log data follows: | DEBUG: Executing shell function do_compile | Cloning into '/media/dzu/hd01-xfs/nxp/imx-yocto-6.18.20-2.0.0/build-imx93-frdm/tmp/work/armv8-2a-poky-linux/imx-car-navigation/1.0/sources/imx-car-navigation-1.0/CANopenNode'... | fatal: unable to access 'https://github.com/CANopenNode/CANopenNode.git/': Could not resolve host: github.com | fatal: clone of 'https://github.com/CANopenNode/CANopenNode.git' into submodule path '/media/dzu/hd01-xfs/nxp/imx-yocto-6.18.20-2.0.0/build-imx93-frdm/tmp/work/armv8-2a-poky-linux/imx-car-navigation/1.0/sources/imx-car-navigation-1.0/CANopenNode' failed | Failed to clone 'CANopenNode'. Retry scheduled | Cloning into '/media/dzu/hd01-xfs/nxp/imx-yocto-6.18.20-2.0.0/build-imx93-frdm/tmp/work/armv8-2a-poky-linux/imx-car-navigation/1.0/sources/imx-car-navigation-1.0/CANopenNode'... | fatal: unable to access 'https://github.com/CANopenNode/CANopenNode.git/': Could not resolve host: github.com | fatal: clone of 'https://github.com/CANopenNode/CANopenNode.git' into submodule path '/media/dzu/hd01-xfs/nxp/imx-yocto-6.18.20-2.0.0/build-imx93-frdm/tmp/work/armv8-2a-poky-linux/imx-car-navigation/1.0/sources/imx-car-navigation-1.0/CANopenNode' failed | Failed to clone 'CANopenNode' a second time, aborting | WARNING: exit code 1 from a shell command. ERROR: Task (/media/dzu/hd01-xfs/nxp/imx-yocto-6.18.20-2.0.0/sources/meta-nxp-demo-experience/recipes-examples/imx-car-navigation/imx-car-navigation.bb:do_compile) failed with exit code '1' Note that this is 100% reproducible - it always fails here.  Please also note that a download of a repository fails, even though bitbake is executing a "compile" step.  Currently, I think it may be related that downloads should not be done in compilation steps and maybe bitbake now limits network functionality to the download step?  Did anyone test this recipe recently? Re: Yocto wrynose build failure for 'imx-car-navigation' It seems my gut feeling was right.  The following patch solves the problem for me: --- sources/meta-nxp-demo-experience/recipes-examples/imx-car-navigation/imx-car-navigation.bb.ORIG 2026-07-13 16:02:28.733344421 +0200 +++ sources/meta-nxp-demo-experience/recipes-examples/imx-car-navigation/imx-car-navigation.bb 2026-07-13 16:02:11.178539144 +0200 @@ -14,6 +14,7 @@ do_configure[noexec] = "1" +do_compile[network] = "1" do_compile() { cd ${S} But note that this is just a workaround.  There is a reason why this is not allowed by default - the compile step should not do any network access.
View full article
New Project Wizard fAiL: no freeRTOS port added automatically Hello all, I'm trying to create a freeRTOS based project for LPC5536 using MCUXpresso IDE V24.12. The "Create a new C/C++ project" wizard (available from Quickstart Panel) seems to offer a simple means to add freeRTOS support to a project (see markup in screenshot below): As you can see, the "New Project Wizard" offers a checkbox to add freeRTOS as "operating system". When checking this box, the wizard automatically adds another crucial part of freeRTOS, the memory manager (see marked checkboxes below): However, the wizard fails to add the most important part of freeRTOS, the MCU-specific  code (see markup in screenshot below): If you don't select this component by yourself, the generated project throws compilation errors. I believe that the New Project Wizard should always result in a compilable project. Further the MCUXpresso IDE manual clearly states:"Also, selecting a component automatically selects any dependencies." (section 5.1.1. SDK New Project WIzard). In my opinion, this is a bug, at least a UX bug.  I'd like to see this fixed in the next SDK / MCUXpresso version. Thanks. Daniel Re: New Project Wizard fAiL: no freeRTOS port added automatically Tried it with MCUXpresso IDE v25.6 (current as of writing) with SDK for LPC5536 (version 25.06, manifest 3.15) and the dependency between FreeRTOS kernel and the cm33 port is still missing and needs to be selected manually.  Re: New Project Wizard fAiL: no freeRTOS port added automatically Hello @EdwinHz , I appreciate your prompt support. Thank you. Daniel Re: New Project Wizard fAiL: no freeRTOS port added automatically Hi @danielholala, I was able to replicate this issue, and it is definitely a bug, since the project wizard should automatically select all of the dependencies. I will report this issue to the IDE team so they can correct it in a future version of MCUXpresso's project wizard. Thanks for reporting this issue. BR, Edwin.
View full article
Connectivity issue in SJA1110 Dear NXP members, This ticket may be related to the following topics: SJA-1110-Configuration-of-Qbv  SJA1110-Qbv-AdminBaseTime-Configuration  During the configuration of Qbv on the SJA1110 switch present in the S32G-VNP-RDB3 board, I have been using the SJA1110 SDK for S32G from NXP for setting the gPTP/Qbv parameters, compiling the new sja1110_uc.bin file, and deploying it on the firmware folder of the A-core Linux BSP. Initially, I have been using the PFE0 interface (SJA1110 switch Port 4) as the gPTP grandmaster, with ADMINBASETIME set to 0. I performed some tests and validations and everything indicates that it behaves as expected. However, during the course of the project, I had to reassign the roles so that now the gPTP grandmaster would come from an external device which is connected to the Port 3. From the moment I would connect this external device, the Qbv performance would behave quite erratically. I did some tests starting with large cycle values, for instance: Cycle = 1 sec -> 125000000 CycleExt (12.5%) = 15625000 segment 1 = 0.25 sec TCs 0 and 1 GATESTATUS 1 and 0 segment 2 = 0.25 sec TCs 2 and 3 GATESTATUS 6 and 7 segment 3 = 0.25 sec TCs 4 and 5 GATESTATUS 2 and 3 segment 4 = 0.25 sec TCs 6 and 7 GATESTATUS 4 and 5 port 3: TRIGGER_TIME = 1250000 (2x625000) port 4: TRIGGER_TIME = 3125000 (4x781250) ports 5...: TRIGGER_TIME = 125000 For testing, I send UDP packets from the client (S32G PFE0 interface) to another Linux device connected on the same network acting as server. I capture the packets using the tcpdump tool on the server side, and analyze the results. In this case, the transmission would start after a few seconds, but once started, it would behave correctly (1 second cycle, 25% for the given traffic priority):  Then, I used the GATESTATUS division into four segments, but reduced the cycle time to 200 ms: Cycle = 200ms -> 25000000 CycleExt = 3125000 segment 1 = 50 ms TCs 0 and 1 GATESTATUS 1 and 0 segment 2 = 50 ms TCs 2 and 3 GATESTATUS 6 and 7 segment 3 = 50 ms TCs 4 and 5 GATESTATUS 2 and 3 segment 4 = 50 ms TCs 6 and 7 GATESTATUS 4 and 5 port 3: TRIGGER_TIME = 250000 port 4: TRIGGER_TIME = 625000 ports 5...: TRIGGER_TIME = 25000 It would work, but I needed to start between 30 seconds and 2 minutes for the transmission of the packets start.   In the subsequent tests, I observed the same pattern: When the cycle time was reduced to 100 ms, I would have to wait between 2 and 4 minutes before transmission started; When the cycle time was reduced to 50 ms, I would have to wait between 5 and 6 minutes before transmission started. And so on. So, the shorter the cycle length, the larger the wait time before Qbv effectively started. Until then, the traffic was blocked. But there is another weird behavior observed when I did the following configuration: Cycle = 0.5 ms -> 62500 CycleExt = 7812 segment 1 = 30 μsec TCs 0, 1, 2, 4, 5, and 7: GATESTATUS 0, 1, 2, 3, 5, 6, and 7 segment 2 = 300 μsec TC 6: GATESTATUS 4 segment 3 = 170 μsec TCs 0, 1, 2, 4, 5, and 7: GATESTATUS 0, 1, 2, 3, 5, 6, and 7 In this case, all of the traffic would pass except TC6. When I invert the configuration: Cycle = 0.5 ms -> 62500 CycleExt = 7812 segment 1 = 30 μsec TC 6: GATESTATUS 4 segment 2 = 170 μsec TCs 0, 1, 2, 4, 5, and 7: GATESTATUS 0, 1, 2, 3, 5, 6, and 7 segment 3 = 300 μsec TC 6: GATESTATUS 4 in this case, only the TC6 traffic would be transmitted while the other TCs would be blocked. From my opinion, it points in the direction of the time synchronization issue. Here is how I have configured gPTP on the S32DS:     It is also worth mentioning that this external gPTP Grandmaster provides Sync timestamps based on the current Unix epoch:   While when the PFE0 was used as the Grandmaster, it would provide Sync timestamps starting with 0:   What would explain this behavior? Thank you for your support! Best regards, Guilherme Re: Connectivity issue in SJA1110 Hello @GuilhermeS32G , Yes, please wait to get access. Besides NDA, Automotive Ethernet belongs to export control policy. In my opinion, the ECT tool is a great source of code related to switch's dynamic reconfiguration. Yes, split the Unix epoch gPTP timestamp into ADMINBASETIME[0:31] and ADMINBASETIME[32:63] is the right way. Best regards, Pavel Re: Connectivity issue in SJA1110 Hi @PavelL , Thank you for your response. Indeed, this ECT tool seems to be the right way to go. However, I still have no access for downloading it. It says: "SJA11XX Standard Software - Your Request form has been received". I may need to wait for some time to see if I can get access. In the meanwhile, just to clarify, let's say the current Unix epoch (with nanoseconds) is: 1784013205012345678 Which represents, in UTC: Tuesday, July 14, 2026 at 7:13:25 AM What is the correct way to split this timestamp into ADMINBASETIME[0:31] and ADMINBASETIME[32:63]? Best regards, Guilherme Re: Connectivity issue in SJA1110 Hello @GuilhermeS32G , Thank you for creating a follow up thread - it help us to keep clarity on cases. Thank you for sharing all the details and test results at once. I checked provided data and your gPTP configuration appears to be correct.   Based on your observations, the behavior strongly suggests that the issue is related to the Qbv schedule activation time rather than to the gate list entries themselves. If the ADMINBASETIME being configured as 0 while the external gPTP Grandmaster provides an epoch-based PTP time value, ADMINBASETIME = 0 is far in the past relative to the current synchronized gPTP time domain and the switch needs to resolve the Qbv change/start time based on that value. This may lead to unexpected schedule activation behavior compared with a setup where the PTP time starts close to zero, and it is therefore safer to program ADMINBASETIME as a future value in the currently synchronized PTP time domain.   Therefore, for this use case, I would recommend configuring ADMINBASETIME dynamically based on the current synchronized PTP/gPTP time (and still using a fixed value of 0 in the static configuration). A typical sequence would be: 1. Start gPTP and wait until the switch is synchronized to the external Grandmaster. 2. Read the current PTP clock from the switch. 3. Set ADMINBASETIME to a future time value, for example current PTP time + sufficient safety margin. 4. Write the TAS/Qbv administrative parameters. 5. Trigger the TAS/Qbv configuration change. You may use the ECT server implementation as a reference. In particular, please check file udp_traffic.c ; routine udpReceiveCallback() . It doesn't matter if you use SDK or RTD version of ECT server. In the TAS configuration handling, the ECT server (SDK version) reads the current PTP time using SWITCH_DRV_GetPtpClk(), assigns this value to the TAS baseTime, adds a margin of 2 seconds, and then calls SWITCH_DRV_WriteTasAdminParameters() followed by SWITCH_DRV_ChangeTasConfig().   This approach avoids using ADMINBASETIME = 0 and aligns the Qbv schedule activation with the actual synchronized PTP time domain. Best regards, Pavel
View full article
S32DS License Expired. Hi Support, Please help extend the license: FF6A-EDA4-CDF0-7186 that has expired. Regards, Marcus Activation | Installation | Licensing | Installer Download Re: S32DS License Expired. I don't think extend the license is possible. Maybe you need to purchase the license Re: S32DS License Expired. Hi Marcus,  your S32DS license has been extended. Please activate S32DS again with your old code.  Re: S32DS License Expired. Hi, This is meant for S32DS for ARM 2018.R1.  Please assist to extend the license. Regards, Marcus Re: S32DS License Expired. Thank you Jiri !
View full article
SJA1110のコネクティビティ問題 NXPメンバーの皆様へ このチケットは以下のトピックに関連する場合があります: SJA-1110-Qbvの構成 SJA1110-Qbv-AdminBaseTime-Configuration S32G-VNP-RDB3ボードにあるSJA1110スイッチでQbvの設定中、NXPのS32GのSJA1110 SDKを使ってgPTP/Qbvパラメータの設定、新しい sja1110_uc.bin ファイルのコンパイル、そしてAコアLinux BSPのファームウェアフォルダにデプロイしています。 最初は、PFE0インターフェース(SJA1110スイッチポート4)をgPTPグランドマスターとして使い、ADMINBASETIMEを0に設定していました。いくつかのテストや検証を行いましたが、すべて期待通りに動作しています。 しかし、プロジェクトの進行中に役割を再割り当てし、gPTPグランドマスターはポート3に接続された外部デバイスから出力されるようになりました。 この外部デバイスを接続した瞬間から、Qbvのパフォーマンスが非常に不安定になった。 例えば、大きなサイクル値から始めていくつかのテストを行いました。 Cycle = 1 sec -> 125000000 CycleExt (12.5%) = 15625000 segment 1 = 0.25 sec TCs 0 and 1 GATESTATUS 1 and 0 segment 2 = 0.25 sec TCs 2 and 3 GATESTATUS 6 and 7 segment 3 = 0.25 sec TCs 4 and 5 GATESTATUS 2 and 3 segment 4 = 0.25 sec TCs 6 and 7 GATESTATUS 4 and 5 port 3: TRIGGER_TIME = 1250000 (2x625000) port 4: TRIGGER_TIME = 3125000 (4x781250) ports 5...: TRIGGER_TIME = 125000 テストのために、クライアント(S32G PFE0インターフェース)から同じネットワークにコネクテッドされた別のLinuxデバイスへUDPパケットを送信しています。 サーバー側でtcpdumpツールを使用してパケットをキャプチャし、結果を分析します。 この場合、送信は数秒後に開始されますが、一度開始すると正しく振る舞います(1秒サイクル、指定されたトラフィック優先度の25%)。 次に、GATESTATUSを4つのセグメントに分割しましたが、サイクルタイムを200msに短縮しました。 Cycle = 200ms -> 25000000 CycleExt = 3125000 segment 1 = 50 ms TCs 0 and 1 GATESTATUS 1 and 0 segment 2 = 50 ms TCs 2 and 3 GATESTATUS 6 and 7 segment 3 = 50 ms TCs 4 and 5 GATESTATUS 2 and 3 segment 4 = 50 ms TCs 6 and 7 GATESTATUS 4 and 5 port 3: TRIGGER_TIME = 250000 port 4: TRIGGER_TIME = 625000 ports 5...: TRIGGER_TIME = 25000 うまくいくはずだったが、パケットの送信開始まで30秒から2分の間に開始する必要があった。   その後のテストでも、同じパターンが観察された。 サイクルタイムを100ミリ秒に短縮すると、送信が開始されるまでに2分から4分待たなければなりませんでした。 サイクルタイムが50ミリ秒に短縮された場合、送信が開始されるまでに5分から6分待たなければなりませんでした。 などなど。したがって、 サイクルの長さが短いほど、Qbvが実質的に始まるまでの待ち時間が長くなります。それまで、交通は遮断されていた。 しかし、以下の設定を行った際に、別の奇妙な動作が観察されました。 Cycle = 0.5 ms -> 62500 CycleExt = 7812 segment 1 = 30 μsec TCs 0, 1, 2, 4, 5, and 7: GATESTATUS 0, 1, 2, 3, 5, 6, and 7 segment 2 = 300 μsec TC 6: GATESTATUS 4 segment 3 = 170 μsec TCs 0, 1, 2, 4, 5, and 7: GATESTATUS 0, 1, 2, 3, 5, 6, and 7 この場合、TC6以外のすべてのトラフィックは通過します。 設定を反転すると: Cycle = 0.5 ms -> 62500 CycleExt = 7812 segment 1 = 30 μsec TC 6: GATESTATUS 4 segment 2 = 170 μsec TCs 0, 1, 2, 4, 5, and 7: GATESTATUS 0, 1, 2, 3, 5, 6, and 7 segment 3 = 300 μsec TC 6: GATESTATUS 4 この場合、TC6のトラフィックのみが送信され、他のTCはブロックされます。 私の見解では、これは時刻同期の問題を示唆している。 S32DSでgPTPを設定した方法を以下に示します。     また、この外部gPTPグランドマスターは、現在のUnixエポックに基づいた同期タイムスタンプを提供する点も特筆すべきである。   PFE0がグランドマスターとして使用された場合、同期タイムスタンプは0から始まる。   この行動を説明できるものは何だろうか? サポートありがとうございます! よろしくお願いいたします。 ギレルメ Re: Connectivity issue in SJA1110 こんにちは、 @GuilhermeS32G さん、 はい、アクセスを待ってください。NDAに加えて、自動車用イーサネットは輸出管理政策に属しています。 私の意見では、ECTツールはスイッチの動的再構成に関連する優れたコードソースです。 はい、UnixエポックgPTPタイムスタンプをADMINBASETIME[0:31]とADMINBASETIME[32:63]に分割するのが正しい方法です。 よろしくお願いいたします。 パベル Re: Connectivity issue in SJA1110 こんにちは、 @PavelL さん。 ご返信ありがとうございます。 確かに、このECTツールは正しい方向性のように思えます。 しかし、まだダウンロードのアクセス権はありません。そこには「標準ソフトウェアSJA11XX - リクエストフォームが受領されました」と表示されます。アクセスできるかどうか、しばらく待つ必要があるかもしれません。 念のため、現在のUnixエポック(ナノ秒単位)を以下のように定義します。 1784013205012345678 これはUTCで表すと次のようになります。 2026年7月14日(火)午前7時13分25秒 このタイムスタンプをADMINBASETIME[0:31]とADMINBASETIME[32:63]に分割する正しい方法は何ですか? よろしくお願いいたします。 ギレルメ Re: Connectivity issue in SJA1110 こんにちは、 @GuilhermeS32G さん、 フォローアップスレッドを作ってくださりありがとうございます。CASEの明確さを保つ助けになりました。 詳細情報と検査結果を一度に共有していただき、ありがとうございます。 ご提供いただいたデータを確認したところ、gPTPの設定は正しいようです。   あなたの観察から判断すると、この挙動はゲートリストのエントリ自体よりもQbvのスケジュール有効化時間に関連していることを強く示唆しています。 ADMINBASETIMEが0に設定されている一方で、外部gPTPグランドマスターがエポックベースのPTP時間値を提供する場合、ADMINBASETIME = 0は現在の同期gPTP時間領域に比べてかなり過去のことであり、スイッチはその値に基づいてQbvの変更/開始時間を解決する必要があります。これにより、PTP時間がほぼゼロから始まるセットアップと比べて予期しないスケジュール起動動作が生じる可能性があるため、現在同期されたPTP時間領域においてADMINBASETIMEを将来の価値としてプログラムする方が安全です。   したがって、このユースケースでは、現在の同期PTP/gPTP時間に基づいて動的にADMINBASETIMEを設定することをおすすめします(静的設定では固定値の0を使い続けます)。 典型的な手順は次のとおりです。 1. gPTPを起動し、スイッチが外部グランドマスターと同期するまで待ちます。 2. スイッチから現在のPTPクロックを読み取る。 3. ADMINBASETIMEを将来の時間値に設定します。例えば、現在のPTP時間+十分なセーフティマージン。 4. TAS/Qbvの管理パラメータを記述します。 5. TAS/Qbvの設定変更をトリガーします。 ECTサーバーの実装を参考にしても構いません。特に、ファイルudp_traffic.cを確認してください; routine udpReceiveCallback() .SDK版でもRTD版でも、ECTサーバーのどちらを使っても関係ありません。 TASの設定処理では、ECTサーバー(SDKバージョン)が現在のPTP時間をSWITCH_DRV_GetPtpClk()で読み取り、この値をTASのbaseTimeに割り当て、2秒の余裕を加えてからSWITCH_DRV_WriteTasAdminParameters()を呼び出し、続いてSWITCH_DRV_ChangeTasConfig()。   このアプローチでは、ADMINBASETIME = 0 の使用を回避し、Qbv スケジュールの有効化を実際の同期された PTP タイムドメインに合わせます。 よろしくお願いいたします。 パベル
View full article
S32K144EVB-Q100 Rev D 原理图 你好。我正在寻找S32K144EVB-Q100 Rev D的原理图。我似乎无法让该板发送任何CAN消息。是否有可用于在该板上通过 CAN 0 发送消息的示例代码?我使用 SPI 确认了 CAN 收发器处于强制正常模式,因此 CAN 应该可以正常工作。 Re: S32K144EVB-Q100 Rev D Schematic 您可以查看 S32DS 中针对S32K144EVB 的示例代码……如果您有相关代码,请分享一下,因为我找不到…… Re: S32K144EVB-Q100 Rev D Schematic 你好@db16122 , 如果您还需要 S32K144EVB Rev. D 的设计文件,请告诉我。 此致, 朱利安 Re: S32K144EVB-Q100 Rev D Schematic 你好@rosejp03 , 关于设计文件,我已经通过社区私信联系你了。 关于 CAN 功能,Rev. C(我目前使用的电路板)和 Rev. D 具有完全相同的 CAN 设计和收发器 (UJA1169): S32K144EVB-Q100 Rev. DS32K144EVB-Q100 修订版 D S32K144EVB Rev. C1S32K144EVB 修订版 C1 你使用的是现有示例吗?是AN5413: S32K1xx 系列食谱,还是 RTD 软件包中包含的食谱? 你使用的是12V电源插孔吗?将J107 位置改为 1-2,并用 12V 电源为电路板供电。 你们是如何测试CAN通信的?您使用的是其他 EVB、CAN 分析仪还是其他设备?你能尝试用示波器探测一下总线吗? 此致, 朱利安
View full article
SJA1110 的连接问题 尊敬的恩智浦半导体成员们: 此工单可能与以下主题相关: SJA-1110-Qbv配置 SJA1110-Qbv-AdminBaseTime-Configuration 在配置 S32G-VNP-RDB3 板上的 SJA1110 交换机的 Qbv 时,我一直使用 NXP 的 S32G SJA1110 SDK 来设置 gPTP/Qbv 参数,编译新的sja1110_uc.bin文件,并将其部署到 A-core Linux 电路板支持包 的固件文件夹中。 最初,我使用 PFE0 接口(SJA1110 交换机端口 4)作为 gPTP 主服务器,并将 ADMINBASETIME 设置为 0。我进行了一些测试和验证,一切迹象都表明它的行为符合预期。 然而,在项目进行过程中,我不得不重新分配角色,以便现在 gPTP 主控节点将来自连接到端口 3 的外部设备。 从我连接这个外部设备的那一刻起,Qbv 的性能就会变得非常不稳定。 我进行了一些测试,例如从较大的循环值开始: Cycle = 1 sec -> 125000000 CycleExt (12.5%) = 15625000 segment 1 = 0.25 sec TCs 0 and 1 GATESTATUS 1 and 0 segment 2 = 0.25 sec TCs 2 and 3 GATESTATUS 6 and 7 segment 3 = 0.25 sec TCs 4 and 5 GATESTATUS 2 and 3 segment 4 = 0.25 sec TCs 6 and 7 GATESTATUS 4 and 5 port 3: TRIGGER_TIME = 1250000 (2x625000) port 4: TRIGGER_TIME = 3125000 (4x781250) ports 5...: TRIGGER_TIME = 125000 为了进行测试,我从客户端(S32G PFE0 接口)向连接在同一网络上的另一个 Linux 设备(作为服务器)发送 UDP 数据包。 我在服务器端使用 tcpdump 工具捕获数据包,并分析结果。 在这种情况下,传输会在几秒钟后开始,但一旦开始,它就会正常工作(1 秒周期,给定流量优先级的 25%): 然后,我将 GATESTATUS 分成四个段,但将周期时间缩短至 200 毫秒: Cycle = 200ms -> 25000000 CycleExt = 3125000 segment 1 = 50 ms TCs 0 and 1 GATESTATUS 1 and 0 segment 2 = 50 ms TCs 2 and 3 GATESTATUS 6 and 7 segment 3 = 50 ms TCs 4 and 5 GATESTATUS 2 and 3 segment 4 = 50 ms TCs 6 and 7 GATESTATUS 4 and 5 port 3: TRIGGER_TIME = 250000 port 4: TRIGGER_TIME = 625000 ports 5...: TRIGGER_TIME = 25000 这样做是可行的,但我需要等待 30 秒到 2 分钟才能开始传输数据包。   在随后的测试中,我观察到了同样的模式: 当循环时间缩短至 100 毫秒时,我需要等待 2 到 4 分钟才能开始传输; 当循环时间缩短到 50 毫秒时,我需要等待 5 到 6 分钟才能开始传输。 等等。因此,周期长度越短,Qbv 实际开始前的等待时间就越长。在此之前,交通一直处于阻塞状态。 但是,当我进行以下配置时,观察到了另一种奇怪的现象: Cycle = 0.5 ms -> 62500 CycleExt = 7812 segment 1 = 30 μsec TCs 0, 1, 2, 4, 5, and 7: GATESTATUS 0, 1, 2, 3, 5, 6, and 7 segment 2 = 300 μsec TC 6: GATESTATUS 4 segment 3 = 170 μsec TCs 0, 1, 2, 4, 5, and 7: GATESTATUS 0, 1, 2, 3, 5, 6, and 7 在这种情况下,除了TC6之外,所有交通流量都将通过。 当我反转配置时: Cycle = 0.5 ms -> 62500 CycleExt = 7812 segment 1 = 30 μsec TC 6: GATESTATUS 4 segment 2 = 170 μsec TCs 0, 1, 2, 4, 5, and 7: GATESTATUS 0, 1, 2, 3, 5, 6, and 7 segment 3 = 300 μsec TC 6: GATESTATUS 4 在这种情况下,只有 TC6 的流量会被传输,而其他 TC 的流量将被阻止。 我认为,这指向了时间同步问题。 以下是我在S32DS上配置gPTP的方法:     值得一提的是,这个外部 gPTP 主服务器提供的同步时间戳基于当前的 Unix 纪元:   当 PFE0 用作主控时,它会提供从 0 开始的同步时间戳:   这种行为该如何解释? 感谢您的支持! 顺祝商祺! 吉列尔梅 Re: Connectivity issue in SJA1110 你好@GuilhermeS32G , 是的,请稍候,您将获得访问权限。除了保密协议外,汽车以太网还属于出口管制政策的范畴。 我认为,ECT 工具是交换机动态重配置相关代码的绝佳来源。 是的,将 Unix epoch gPTP时间戳拆分为 ADMINBASETIME[0:31] 和 ADMINBASETIME[32:63] 是正确的方法。 顺祝商祺! 帕维尔 Re: Connectivity issue in SJA1110 嗨@PavelL , 感谢您的反馈, 确实,这种ECT工具似乎是正确的选择。 但是,我仍然无法下载它。上面写着:“SJA11XX 标准软件 - 您的申请表已收到”。我可能需要等待一段时间才能获得访问权限。 同时,为了更清楚地说明,我们假设当前的 Unix 时间戳(精确到纳秒)是: 1784013205012345678 这在世界协调时 (UTC) 代表: 2026年7月14日星期二上午7:13:25 如何正确地将此时间戳拆分为 ADMINBASETIME[0:31] 和 ADMINBASETIME[32:63]? 顺祝商祺! 吉列尔梅 Re: Connectivity issue in SJA1110 你好@GuilhermeS32G , 感谢您创建后续讨论帖——这有助于我们了解案件的最新进展。 感谢您一次性分享所有细节和测试结果。 我已检查所提供的数据,您的 gPTP 配置似乎是正确的。   根据您的观察,该行为强烈表明问题与 Qbv 调度激活时间有关,而非门控列表条目本身。如果外部 gPTP 主时钟提供基于纪元的 PTP 时间值,而 ADMINBASETIME 配置为 0,则 ADMINBASETIME = 0 相对于当前同步的 gPTP 时域而言非常遥远,交换机需要基于该值解析 Qbv 更改/启动时间。与 PTP 时间接近零的设置相比,这可能会导致意外的调度激活行为。因此,将 ADMINBASETIME 设置为当前同步的 PTP 时域中的未来值更为安全。   因此,对于此用例,我建议根据当前同步的 PTP/gPTP 时间动态配置 ADMINBASETIME(并在静态配置中仍然使用固定值 0)。 典型的序列如下: 1. 启动 gPTP 并等待交换机与外部主控交换机同步。 2. 从交换机读取当前的 PTP 时钟。 3. 将 ADMINBASETIME 设置为未来的时间值,例如当前 PTP 时间 + 足够的安全裕度。 4. 编写 TAS/Qbv 管理参数。 5. 触发 TAS/Qbv 配置更改。 您可以参考 ECT 服务器的实现。特别是请查看udp_traffic.c文件中的 udpReceiveCallback() 函数。无论您使用的是 ECT 服务器的 SDK 版本还是 RTD 版本,都无关紧要。 在 TAS 配置处理中,ECT 服务器(SDK 版本)使用 SWITCH_DRV_GetPtpClk() 读取当前 PTP 时间,将此值赋给 TAS 基准时间,加上 2 秒的裕量,然后调用 SWITCH_DRV_WriteTasAdminParameters(),再调用 SWITCH_DRV_ChangeTasConfig()。   这种方法避免使用 ADMINBASETIME = 0,并将 Qbv 调度激活与实际同步的 PTP 时间域对齐。 顺祝商祺! 帕维尔
View full article