Multi Source Translation Content

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

Multi Source Translation Content

Discussions

Sort by:
S32K144EVB-Q100 connection details of Reset. Hi Team, Good day!, Question 1: Here we have used  U1(LT),  J104 as the Jumper between the U8 and switch , which will go for S32K144-100, from openSDA J105 is in series to U1, but you have made it as DNP, then how we can reset the MCU. Can you please explain this entire process of the reset and than how the flow will be and it work. Question 2: Please explain this reset function and voltage level(Ramp-up and down) of it to reset (pin 19 in openSDA). Question 3: Here in this post, OpenSDA (MK20DX128VFM5) connection details  you have said that "The USB regulator must be enabled by default to power the MCU" where can I found the enable of USB regulator. Then VDD and VOUT33 should be connected with 0R (Jumper) to power the OpenSDA IC, I am right?, what will be the VOUT33 current rating, will it able to power the MCU(S32K144-100) and also its own internal circuits. please share the power consumption of OpenSDA and S32K144-100. Thanks, Ram. Re: S32K144EVB-Q100 connection details of Reset. Hello @julian, Thank you for your prompt reply. Re: S32K144EVB-Q100 connection details of Reset. Hi @Ram_RAM, 1. The configuration for J104 in 1-2 is for access into OpenSDA Bootloader mode: If my understanding is correct and you would like to implement OpenSDA in your custom board, I have to tell you that it is not possible. OpenSDA comes from P&E Micro and it is only available on Freedom board. You can look into these related posts from PE Micro: OpenSDA OpenSDA solution for MPC5748G on custom hardware OpenSDAv2 is open source, and it is developed by the mbed community: OpenSDAv2 - NXP Community. 2. Please refer to chapter 25 (Reset and Boot) of the S32K1xx's reference manual for more information on the reset sources and boot sequences that are supported, as well as AN5426 (Hardware Design Guidelines for S32K1xx Microcontrollers): 3. I'm not sure I understood this question, are you asking if VDD must be connected to the Open SDA for voltage supply? You can find the power switch inside the S32K144-EVB schematics. You can find the S32K Power Estimation Tool, which calculates power consumption for the S32K1 device, from the following page S32K1 General-Purpose MCUs: Best regards, Julián
View full article
1 つの MATLAB スクリプトからの 2 つの FreeMaster インスタンスの制御 NXPチームの皆様、こんにちは。 2つのFreeMasterインスタンスにアクセスし、監視し、制御 できるMATLABスクリプトファイルを作成したいと考えています。私はユーザーガイドでこれについて話しているセクションを読みましたが、まだ問題があり、添付された例は1つのFreeMaster用であり、2つのFreeMasterインスタンスでは機能しませんでした。私がビルドしようとしている.mファイルは、これまで2つのファイルを開くだけで、それらから読み書きすることはできません。次のエラーが発生します。 ドットインデックスは、このタイプの変数ではサポートされていません。 SingleScriptControlling2FM のエラー (15 行目) bSucc = pcm1 です。ReadVariable('SpeedActRpm'); 誰かがこの目的のためのスクリプトを持っていますか、またはこのエラーを助けることができますか? 事前に感謝いたします。 アハメド Re:1つのMATLABスクリプトから2つのFreeMasterインスタンスを制御する 別のPCで試してみましたが、うまくいきます。 どうもありがとう、マイケル。 Re:1つのMATLABスクリプトから2つのFreeMasterインスタンスを制御する こんにちは、マイケル。 スクリプトを確認しましたか?問題はまだ存在します。 アハメド Re:1つのMATLABスクリプトから2つのFreeMasterインスタンスを制御する ありがとう、マイケル。エクセルファイルを添付しました。 2つのインスタンスを手動で開いてから、VBAコードを実行してそれらを見つけようとしましたが、それもできませんでした。 Re:1つのMATLABスクリプトから2つのFreeMasterインスタンスを制御する うーん、これはExcel VBAに存在する「mult」オブジェクトに、正しいインスタンス名を引数としてFreeMASTERを起動するのに問題があるようです。私は、 "GetAppObject"を呼び出すときにインスタンス名("A"または"B")を渡す方法に問題があると思います。Excelファイルを添付ファイルとしてアップロードできるので、スクリプトを見ることができます。 いずれにせよ、コマンドラインから「A」(pcmaster.exe /sharex A)または「B」(pcmaster.exe /sharex B)という名前でインスタンスを手動で実行する場合。その後、ExcelVBAはそれを見つけることができるはずです。 よろしく ミハル Re:1つのMATLABスクリプトから2つのFreeMasterインスタンスを制御する こんにちは、アーメドさん。 あなたがMatlabからそれを働かせたのは良いことです。ここで、Excelの問題に焦点を当てましょう。2つの新しいインスタンスを開始するとき - VBAスクリプトはインスタンスにアクセスしますか?つまり、Excel VBAはFreeMASTERオブジェクトを使用して変数などを読み書きできますか? 「はい」の場合、インスタンス名に簡単な問題があります。インスタンスを実行するだけで、それでもアクセスできない場合は、アクセス権に問題がある可能性があります。 試してみる実験: pcmaster.exeを手動で実行し、AやBなどの簡単な名前を付けます。特殊文字などは使用しないでください。次に、VBAスクリプトで同じ名前を使用します。 Excelを管理者として実行します。 「c:\NXP\FreeMASTER 3.2\FreeMASTER\examples\scripting\Visual Basic Application - Excel」にある簡単なExcelの例を試してください。彼らは機能しますか? 感謝 ミハル Re:1つのMATLABスクリプトから2つのFreeMasterインスタンスを制御する マイケルさん、頑張っていただきありがとうございました。 1-バージョン3.2.3.2をインストールし、FreeMasterウィンドウから離れる問題が解決しました。 2-上記の例のように、特定のパス内の特定のインスタンスにsharex名を付ける方法を適用し、このsharex名をGetAppObject()メソッドに渡すと、この方法はMATLABスクリプトで適切に機能します。これでMATLABの問題は解決しました。 しかし、Excellで同じことを行うと、実行中の2つのFreeMasterインスタンスを見つけることができず、代わりに2つの新しいインスタンスが開きます。 敬具 アハメド Re:1つのMATLABスクリプトから2つのFreeMasterインスタンスを制御する こんにちは、アーメドさん。 /sharex オプションの後の最初のパラメーターは、pmp プロジェクト ファイルの名前ではなく、実行中のインスタンスが mult に対して識別される名前です。GetAppObject です。プロジェクトも開きたい場合は、名前の後に指定する必要があります。 例: pcmaster.exe C:\path\SpdControl.pmp    // will just open the project file pcmaster.exe /sharex SPD       // will run the FreeMASTER named SPD, // so you can attach to it using GetAppObject("SPD") pcmaster.exe /sharex SPD C:\path\SpdControl.pmp // will do both したがって、すべての例で、 /sharexオプションの後に引数を1つだけ渡したため、プロジェクトを開かずにFreeMASTERを開始すべきでした。アプリケーションが起動直後に閉じるとおっしゃいます...これは、インストールに問題があることを示している可能性があります。 バージョン3.2.3.2を実行していることを確認できますか?(ヘルプ/バージョン情報ダイアログを参照)。 別のPCで同じことを試すことはできますか? 「pcmaster.exe」だけで始めてみませんかそれが正しく実行されるかどうかを確認するための引数はありませんか? 感謝 ミハル Re:1つのMATLABスクリプトから2つのFreeMasterインスタンスを制御する わかりました、別のPCで試してみます。 「とにかく、FreeMASTERが適切な「/ sharex」オプションを使用して手動で起動された場合、VBAスクリプトは正常に実行されます。したがって、これはあなたの問題とは異なる問題であるはずです。」 そしてこれで:もう1つの実験を行い、アプリケーションを手動で起動してみてください。インストールでpcmaster.exeファイルを見つけ、コマンドラインから引数/sharex "A"を使用して実行し、もう1つは/sharex "B"を指定して実行します。次に、"A" と "B" の名前でスクリプトを試してください。 単にインスタンスの名前をA&Bに変更するということですか、それとも何ですか?何か誤解しているような気がします。この /sharex の使い方は? ご協力のほど、よろしくお願いいたします。 Re:1つのMATLABスクリプトから2つのFreeMasterインスタンスを制御する わかりました、私はこれを試してみて、あなたの試みも待ちます。ありがとうございます Re:1つのMATLABスクリプトから2つのFreeMasterインスタンスを制御する こんにちは、アーメドさん。 32ビットExcelで再試行しますが、これには時間がかかります。 もう一度実験を行い、アプリケーションを手動で起動してみてください。インストールでpcmaster.exeファイルを見つけ、コマンドラインから引数/sharex "A"を使用して実行し、もう1つは/sharex "B"を指定して実行します。次に、"A" と "B" の名前でスクリプトを試してください。 問題は、Excel が実行中の 2 つのインスタンスを見つけるか、それとも別の 2 つの新しいインスタンスを開始するかです。 ご協力いただきありがとうございます。 ミハル Re:1つのMATLABスクリプトから2つのFreeMasterインスタンスを制御する 私があなたのコードを正確に変更せずに使用したときの同じ行で同じエラー。 はい、a と b は何も設定されていません。 register.bat走ると、一瞬黒い窓が出て消えます。これが何を意味するのかわかりません。 私が使っているExcelは32ビットです。これが違いの原因のようです。 Re:1つのMATLABスクリプトから2つのFreeMasterインスタンスを制御する 私のコードを正確に試してみてもらえますか?ただ、行動を比較するだけです。Excelの32bit版と64bit版では異なる場合がありますので、ご注意ください。64bit版をテストしています。 また、a変数とb変数が実際に「なし」に設定されている場合は、それらを調べるためにブレークポイントを設定することもできます。 インストールが正しいことを完全に確認するために、「register.bat」を実行してくださいFreeMASTERインストールフォルダ(c:\ NXP \ FreeMASTER 3.2 \ FreeMASTER \ register.bat)の管理者として 感謝 ミハル Re:1つのMATLABスクリプトから2つのFreeMasterインスタンスを制御する さて、私はあなたがこれをもっと調査するのを待っています。あなたの努力に感謝します。 私はVisual Basicを使用してExcelでそれを作ろうとしており、次のコードから始めました: サブ mmult_test() McbPcmとして薄暗い McbPcmとしてDim b McbMultとして薄暗いマルチ Set mult = 新しい McbMult a = multを設定します。GetAppObject("A") セットb = mult。GetAppObject("B") Dim bSucc As Boolean 'ReadVariableは、現在のプロジェクトのFreeMASTER変数オブジェクトを使用します。使う 'ReadUIntVariable を使用して、シンボル名を使用してメモリに直接アクセスします。 bSucc = a.ReadVariable("SPEED_CMD", vValue, tValue, bsRetMsg) を設定します。 もしbSucc Then SHT。Range("B1")です。値 = vValue 終了条件 b.ReadVariable("TrqCtrlSwitch", "b3") の場合 MsgBox ("インスタンス B からの変数" + t2) 然も無くば MsgBox ("インスタンス B からの読み取りエラー: " + m2) 終了条件 エンドサブ 私がここでの質問で見たこと:https://community.nxp.com/t5/FreeMASTER/Multiple-instances-using-ActiveX-in-VB/td-p/1340033 しかし、私はこの行でコンパイラエラーを得ました: Set bSucc = a.ReadVariable("SPEED_CMD", vValue, tValue, bsRetMsg) エラーは言う: "オブジェクトが必要" そして "Set" を削除すると、それは私に与えます: "オブジェクト変数またはブロック変数が設定されていません" GetAppObjectによって返されたオブジェクトも見ることができないと思います。Excellを使用して2つのFreeMasterインスタンスを制御するために以前にテストしたことがある場合は、これに協力してください。 よろしくお願いします。 アハメド Re:1つのMATLABスクリプトから2つのFreeMasterインスタンスを制御する こんにちは、アーメドさん。 MCBです。MULTは、FreeMASTERの複数の実行中のインスタンスを管理するのに役立つオブジェクトの識別子です。メソッド GetAppObject は 1 つだけですが、これは非常に用途が広いです。詳細については、ユーザーマニュアルのセクション6.9をお読みください。 GetAppObject を使用すると、次のことができます。 インターフェイス オブジェクトを ActiveX インターフェイスとして、FreeMASTER の "名前付き" 実行中のインスタンスに取得します 名前付きインスタンスがまだ実行されていない場合は、実行します。 名前付きインスタンスを実行し、プロジェクトを読み込みます。 2つ以上のFreeMASTERインスタンスを制御する手順: インスタンス A を手動で実行するには、プロセスを開始pcmaster.exe。コマンドラインパラメータ「/sharex A」を使用して名前を付けます。FreeMASTERが起動したら、ボード接続の設定、プロジェクトのオープンなどを行います。 同様に、「B」という名前のインスタンスを実行し、2 番目のボードに接続します。 matlabで、 pcmA = マルチ。GetAppObject("A") pcmB = マルチ。GetAppObject("B") これで、各オブジェクトを使用して変数を読み取り、各ボードに固有の他の制御を行うことができます。 または、プロジェクトを projectA.pcmx と projectB.pcmx に保存することもできます。「設定をプロジェクトファイルに保存する」にチェックを入れて、通信設定が保存されるようにしてください。次に、各プロジェクトの名前をGetAppObjectの3番目の引数として渡すと、FreeMASTERの実行と通信設定とともにプロジェクトが自動的にロードされます。 さらに別の方法は、上記のように(プロジェクトを開かずに)MatlabからインスタンスAとBを開始し、pcmAおよびpcmBオブジェクトに対して実行されるStartCommおよびOpenProjectメソッドを使用してスクリプトからすべてを調整することです。 よろしく ミハル
View full article
Controlling two FreeMaster instances from one MATLAB script Hello NXP team, I want to make a MATLAB script file that can access, monitor and control two FreeMaster instances. I read the section talking about this in the user guide but still have problems and the example attached was for one FreeMaster and didn't work with me for the two FreeMaster instances. The .m file that I am trying to build , is till now only opens the two files but can't write or read from them. It gives this error: Dot indexing is not supported for variables of this type. Error in SingleScriptControlling2FM (line 15) bSucc = pcm1.ReadVariable('SpeedActRpm'); Does any one have a script for this purpose or can help with this error? Thank you in advance. Ahmed Re: Controlling two FreeMaster instances from one MATLAB script I tried it on another PC and it works. Thank you very much ,Michal. Re: Controlling two FreeMaster instances from one MATLAB script Hello Ahmed,  I confirm your script (the mmult_test() function) works as expected on my side. I tried on two Windows 11 systems. On a corporate PC with strict security rules, the Excel will not let the script to launch the FreeMASTER processes, so I had to run them manually first: pcmaster /sharex TRQ pcmaster /sharex SPD Then the script was able to get access to running instances. Followed by a message: ...which is obvious as I have an empty project in the TRQ instance. In the 2nd experiment using my home PC, the Excel was able to launch and control the instances. I'm really not sure what can be blocking the access on your side. Can you try the same on a different PC? Regards, Michal Re: Controlling two FreeMaster instances from one MATLAB script Hello Michal, Have you checked the script? the problem still exists. Ahmed Re: Controlling two FreeMaster instances from one MATLAB script Thank you Michal. I attached the excel file. I tried opening the two instances manually and then run the VBA code to locate them but it also couldn't. Re: Controlling two FreeMaster instances from one MATLAB script Hmm, this seems the "mult" object living in Excel VBA has a problem to launch FreeMASTER with correct instance name as argument. I think you have a problem in the way you pass the instance name ("A" or "B") when you call "GetAppObject". You can upload the Excel file as an attachment so I could take a look at the script. Anyway, if you run the instances manually from command-line with the name "A" (pcmaster.exe /sharex A) or with the name "B" (pcmaster.exe /sharex B). Then the Excel VBA should be able to locate it. Regards, Michal Re: Controlling two FreeMaster instances from one MATLAB script It just runs the two instances and cannot access them and gives the error in the figure below. The examples you mentioned tries to access one FreeMaster only not two. Accessing one FreeMaster had worked with me before. Re: Controlling two FreeMaster instances from one MATLAB script Hello Ahmed,  good that you got it working from Matlab. Let's focus the Excel issue now. When it starts two new instances - does the VBA script access the instances then? I mean can the Excel VBA use the FreeMASTER objects to read&write variables etc? If yes, then there will some simple issue with instance names. If it just runs the instances, but still cannot access them, then there might be some issue with access rights. Experiments to try: Run the pcmaster.exe manually and give it some trivial name such as A or B. Do not use any special characters etc. Then use the same name in the VBA script. Run the Excel as administrator. Try the simple Excel examples in located in "c:\NXP\FreeMASTER 3.2\FreeMASTER\examples\scripting\Visual Basic Application - Excel". Do they work? Thanks, Michal Re: Controlling two FreeMaster instances from one MATLAB script Thank you very much for your effort, Michal. 1-I installed the version 3.2.3.2 and the problem of getting away from the FreeMaster window was solved. 2-I applied the way of giving sharex name for a specific instance in a specific path like your example above and then pass this sharex name to the GetAppObject () method and this way works properly with MATLAB script. So the problem of MATLAB is solved now. But when doing the same with Excell it can't locate the two running FreeMaster instances instead of this it opens two new instances why? Regards  Ahmed Re: Controlling two FreeMaster instances from one MATLAB script Hello Ahmed, the first parameter after /sharex option is NOT the name of the pmp project file, it is a name under which the running instance will be identified for mult.GetAppObject. If you want to open a project too, you need to specify it after the name. Examples: pcmaster.exe C:\path\SpdControl.pmp    // will just open the project file pcmaster.exe /sharex SPD       // will run the FreeMASTER named SPD, // so you can attach to it using GetAppObject("SPD") pcmaster.exe /sharex SPD C:\path\SpdControl.pmp // will do both So, in all your examples you passed just one argument after /sharex option, which means it should have started the FreeMASTER without opening any project. You say that the application closes immediately after started... this may be an indication of a problem with installation. Can you make sure you are running version 3.2.3.2? (see in the Help/About dialog). Can you try the same on a different PC? Can you try to start just "pcmaster.exe" without any argument to see if it will run properly? Thanks, Michal Re: Controlling two FreeMaster instances from one MATLAB script When I write this command as shown, it opens a new FreeMaster project for moments and close it away. It doesn't open the already created project "SpdControl.pmp" why? Re: Controlling two FreeMaster instances from one MATLAB script The /sharex is a command-line option which you can use as a parameter when running the FreeMASTER process (pcmaster.exe). You need to run it manually from command line prompt, or you can create a launcher icon with the parameter. Steps to run it manually. Open Windows Explorer and browse to "c:\NXP\FreeMASTER 3.2"  Right click the FreeMASTER folder and select "Open in Terminal" Type .\pcmaster.exe /sharex NAME The NAME is your name which later use in the GetAppObject() call  Regards, Michal Re: Controlling two FreeMaster instances from one MATLAB script Ok I will try on another PC. I didn't understand this sentence: "Anyway, if FreeMASTER is started manually with the proper "/sharex" option, then the VBA scripts runs normally - so this is must be a different issue from yours."  and in this : Please try to do one more experiment and start the applications manually. Locate the pcmaster.exe file in the installation and run it from command line with an argument /sharex "A"  and the other with /sharex "B". Then try the script with "A" and "B" names. Do you mean to simply rename the instances by A& B or what ? I feel that I misunderstand something. How to use this  /sharex ? Thank you for your cooperation. Re: Controlling two FreeMaster instances from one MATLAB script Hello,  I have tested the Excel script on a PC with fresh Windows 11 and the latest Excel 32bit. All seem to work properly. Is it possible for you to test on another PC? In the meanwhile, I have noticed that on some of our corporate PCs, the GetAppObject fails to start the FreeMASTER process due to a security policy. The failed start can be seen in the "Protection History" log in Windows Security panel (picture attached). Anyway, if FreeMASTER is started manually with the proper "/sharex" option, then the VBA scripts runs normally - so this is must be a different issue from yours.  So far, no answer to your issue. Let's continue investigating. Please finish your experiment with manual start of the shared instances and also please try on a different PC. Thank you, Michal Re: Controlling two FreeMaster instances from one MATLAB script ok I will try this and wait for your try also.Thank you Re: Controlling two FreeMaster instances from one MATLAB script Hello Ahmed,  I will retry with 32bit Excel, this will need some time.  Please try to do one more experiment and start the applications manually. Locate the pcmaster.exe file in the installation and run it from command line with an argument /sharex "A"  and the other with /sharex "B". Then try the script with "A" and "B" names. The question is if your Excel would locate the two running instances or if it will start another two new instances. Thank you for you cooperation, Michal Re: Controlling two FreeMaster instances from one MATLAB script Same error in the same line when I used exactly your code without any change. Yes a & b are set to nothing. When I run register.bat it gives black window momentarily and then disappears. I don't know what this means. The Excel I use is 32 bit. It seems that this causes the difference.  Re: Controlling two FreeMaster instances from one MATLAB script Can you try exactly my code? Just to compare the behaviors. Note that there may be difference in 32bit and 64bit version of Excel. I'm testing 64bit version. You can also put breakpoint to examine a and b variables if they are indeed set to "Nothing".  Just to be fully sure the installation is correct, please run "register.bat" as administrator in the FreeMASTER installation folder (c:\NXP\FreeMASTER 3.2\FreeMASTER\register.bat) Thanks, Michal Re: Controlling two FreeMaster instances from one MATLAB script Hello Michal, Thank you for your help. It opens two new FreeMaster files momentarily and then gives this error. on this line: I replaced "A" & "B" by the names of my files written like "SpdControl.pmp" and tried also to write the total pathes of files since I want to open these two files not to open two new instances. I had the objects referenced in VBA. Re: Controlling two FreeMaster instances from one MATLAB script Hello Ahmed, the script below works in my test Excel file. Make sure you have the objects referenced in VBA. Go to Tools/References menu and check both FreeMASTER and also mmaster object (you may need to browse for mmaster.dll in the FreeMASTER installation). Dim mult As McbMult Sub start_A() If mult Is Nothing Then Set mult = New McbMult End If Set a = mult.GetAppObject("A", 1) End Sub Sub start_B() If mult Is Nothing Then Set mult = New McbMult End If Set b = mult.GetAppObject("B", 1) End Sub Sub mmult_test() If mult Is Nothing Then Set mult = New McbMult End If Dim a As McbPcm Dim b As McbPcm Set a = mult.GetAppObject("A", 1) Set b = mult.GetAppObject("B", 1) If a.ReadVariable("var16", v1, t1, m1) Then MsgBox ("Variable from instance A " + t1) Else MsgBox ("Error reading from instance A: " + m1) End If If b.ReadVariable("var16", v2, t2, m2) Then MsgBox ("Variable from instance B " + t2) Else MsgBox ("Error reading from instance B: " + m2) End If End Sub Re: Controlling two FreeMaster instances from one MATLAB script Ok, I am waiting for you to investigate this more. Thanks a lot for your effort. I am trying to make it by Excel using Visual Basic and I started by this code : Sub mmult_test() Dim a As McbPcm Dim b As McbPcm Dim mult As McbMult Set mult = New McbMult Set a = mult.GetAppObject("A") Set b = mult.GetAppObject("B") Dim bSucc As Boolean 'ReadVariable uses FreeMASTER variable object from current project. Use 'ReadUIntVariable to access the memory directly using a symbol name. Set bSucc = a.ReadVariable("SPEED_CMD", vValue, tValue, bsRetMsg) If bSucc Then sht.Range("B1").Value = vValue End If If b.ReadVariable("TrqCtrlSwitch", "B3") Then MsgBox ("Variable from instance B " + t2) Else MsgBox ("Error reading from instance B: " + m2) End If End Sub That I saw in the question here:https://community.nxp.com/t5/FreeMASTER/Multiple-instances-using-ActiveX-in-VB/td-p/1340033 but I got a compiler error at this line: Set bSucc = a.ReadVariable("SPEED_CMD", vValue, tValue, bsRetMsg) the error says: "Object Required"  and when I removed "Set" it gives me : "Object variable or with block variable not set" I think it can't see the object returned by GetAppObject also. If you have tested it before to control two FreeMaster instances using Excell please help me in this. Regards, Ahmed Re: Controlling two FreeMaster instances from one MATLAB script Hello, this must be some shortcoming of Matlab. It does not recognize the VARIANT value returned by GetAppObject is actually an IDispatch ActiveX interface.  In other scripting languages (e.g. VBA, VBScript, JScript) this approach works fine. Let me investigate more. According to this page, Matlab shall handle it correctly.  I do not have a solution right now. Regards, Michal Re: Controlling two FreeMaster instances from one MATLAB script Thank you Michal for your response. I wrote these lines : mult = actxserver('MCB.MULT'); pcm1=mult.GetAppObject('SpdControl') pcm2=mult.GetAppObject('TrqControl') pcm1.WriteVariable('SPEED_CMD',700);   but it gives me this error:  [] Dot indexing is not supported for variables of this type. Error in SingleScriptControlling2FM (line 9) pcm1.WriteVariable('SPEED_CMD',700); is there anything that I have missed? Ahmed Re: Controlling two FreeMaster instances from one MATLAB script Hello Ahmed, the MCB.MULT is an identifier of an object which helps you to manage multiple running instances of FreeMASTER. It only has one method GetAppObject, but this is quite versatile. Read User Manual section 6.9 for more information. With the GetAppObject you can: Get an interface object as an ActiveX interface to a "named" running instance of FreeMASTER Run a named instance if not yet running. Run a named instance and load a project. Steps to control two or more FreeMASTER instances: Run instance A manually by starting pcmaster.exe process. Give it a name using command-line parameter "/sharex A". When FreeMASTER starts, configure board connection, open project etc. Similarly, run the instance named "B" and connect to a second board. In matlab, call pcmA = mult.GetAppObject("A") pcmB = mult.GetAppObject("B") Now you can use each object to read variables and do other control specific to each board. Alternatively, you can save the projects to projectA.pcmx and projectB.pcmx. Make sure to check the "Save settings to project file" so the communication settings is saved. Then you can pass the name of each project as a 3rd argument of GetAppObject and it will take care about running the FreeMASTER and loading the project automatically along with communication settings. Yet another alternative is to start instances A and B from Matlab as indicated above (without opening a project) and then orchestrate everything from script using StartComm and OpenProject methods executed on pcmA and pcmB objects. Regards, Michal Re: Controlling two FreeMaster instances from one MATLAB script Hello, This Problem highlighted in red color was solved by initializing pcm as an object sothat I can use dot indexing with it. But now, the script can read and write in one FreeMaster not two. How can I use mult = actxserver('MCB.MULT');  to make it listen to two different FreeMaster instances with two boards on two COMs? does it need the ProgID as I read? if so, how can I obtain the ProgID of each board? Please, can any one help with this? Ahmed   
View full article
rootfs not getting mounted on imx6ull EVK custom design Hello iMX community, I am trying to boot our custom hardware based on iMX6ULL EVK with NAND config. I am using iMX YOCTO BSP version imx-6.6.3-1.0.0.xml. I have made necessary changes under local.conf for u-boot. I built image for imx-image-core. I am able to flash the images via UUU, but after flashing when I boot from NAND there is issue with mounting rootfs. Kernel panic occurs and logs states that rootfs not found. Below are the logs: U-Boot 2023.04+gf8a2983ec8+p0 (Mar 04 2024 - 07:25:04 +0000) CPU: i.MX6ULL rev1.1 900 MHz (running at 396 MHz) CPU: Commercial temperature grade (0C to 95C) at 53C Reset cause: POR Model: i.MX6 ULL 14x14 EVK Board Board: MX6ULL 14x14 EVK DRAM: 512 MiB Core: 68 devices, 20 uclasses, devicetree: separate NAND: 512 MiB MMC: FSL_SDHC: 0 Loading Environment from NAND... *** Warning - bad CRC, using default environment [*]-Video Link 0 (480 x 272) [0] lcdif@21c8000, video In: serial Out: serial Err: serial Net: No ethernet found. Fastboot: Normal Normal Boot Hit any key to stop autoboot: 0 NAND read: device 0 offset 0x4000000, size 0xc00000 12582912 bytes read: OK NAND read: device 0 offset 0x5000000, size 0x100000 1048576 bytes read: OK Kernel image @ 0x80800000 [ 0x000000 - 0x902d98 ] ## Flattened Device Tree blob at 83000000 Booting using the fdt blob at 0x83000000 Working FDT set to 83000000 Using Device Tree in place at 83000000, end 8300e40f Working FDT set to 83000000 Modify /soc/bus@2200000/epdc@228c000 disabled Starting kernel ... [ 0.000000] Booting Linux on physical CPU 0x0 [ 0.000000] Linux version 6.6.3-lts-next-gac2d7686eaaf (oe-user@oe-host) (arm-poky-linux-gnueabi-gcc (GCC) 13.2.0, GNU ld (GNU Binutils) 2.41.0.20230926) #1 SMP PREEMPT Thu Feb 29 08:37:44 UTC 2024 [ 0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d [ 0.000000] CPU: div instructions available: patching division code [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache [ 0.000000] OF: fdt: Machine model: Freescale i.MX6 ULL 14x14 EVK Board [ 0.000000] Memory policy: Data cache writealloc [ 0.000000] Reserved memory: created CMA memory pool at 0x96000000, size 160 MiB [ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool [ 0.000000] OF: reserved mem: 0x96000000..0x9fffffff (163840 KiB) map reusable linux,cma [ 0.000000] Zone ranges: [ 0.000000] Normal [mem 0x0000000080000000-0x000000009fffffff] [ 0.000000] HighMem empty [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x0000000080000000-0x000000009fffffff] [ 0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x000000009fffffff] [ 0.000000] percpu: Embedded 12 pages/cpu s18900 r8192 d22060 u49152 [ 0.000000] Kernel command line: console=ttymxc0,115200 ubi.mtd=nandrootfs root=ubi0:rootfs rootfstype=ubifs mtdparts=gpmi-nand:64m(nandboot),16m(nandkernel),16m(nanddtb),16m(nandtee),-(nandrootfs) [ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes, linear) [ 0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes, linear) [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 129920 [ 0.000000] mem auto-init: stack:all(zero), heap alloc:off, heap free:off [ 0.000000] Memory: 332600K/524288K available (14336K kernel code, 1378K rwdata, 4508K rodata, 1024K init, 425K bss, 27848K reserved, 163840K cma-reserved, 0K highmem) [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1 [ 0.000000] rcu: Preemptible hierarchical RCU implementation. [ 0.000000] rcu: RCU event tracing is enabled. [ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=1. [ 0.000000] Trampoline variant of Tasks RCU enabled. [ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies. [ 0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1 [ 0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16 [ 0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention. [ 0.000000] Switching to timer-based delay loop, resolution 41ns [ 0.000003] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns [ 0.000042] clocksource: mxc_timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns [ 0.003393] Console: colour dummy device 80x30 [ 0.003485] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=240000) [ 0.003527] CPU: Testing write buffer coherency: ok [ 0.003631] pid_max: default: 32768 minimum: 301 [ 0.004061] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear) [ 0.004111] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear) [ 0.006320] CPU0: update cpu_capacity 1024 [ 0.006365] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000 [ 0.009756] RCU Tasks: Setting shift to 0 and lim to 1 rcu_task_cb_adjust=1. [ 0.010309] Setting up static identity map for 0x80100000 - 0x80100060 [ 0.010845] rcu: Hierarchical SRCU implementation. [ 0.010868] rcu: Max phase no-delay instances is 1000. [ 0.012437] smp: Bringing up secondary CPUs ... [ 0.012505] smp: Brought up 1 node, 1 CPU [ 0.012533] SMP: Total of 1 processors activated (48.00 BogoMIPS). [ 0.012555] CPU: All CPU(s) started in SVC mode. [ 0.013848] devtmpfs: initialized [ 0.035710] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5 [ 0.036421] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns [ 0.036483] futex hash table entries: 256 (order: 2, 16384 bytes, linear) [ 0.048720] pinctrl core: initialized pinctrl subsystem [ 0.053719] NET: Registered PF_NETLINK/PF_ROUTE protocol family [ 0.071560] DMA: preallocated 256 KiB pool for atomic coherent allocations [ 0.075065] thermal_sys: Registered thermal governor 'step_wise' [ 0.075282] cpuidle: using governor menu [ 0.075779] CPU identified as i.MX6ULL, silicon rev 1.1 [ 0.092151] platform soc: Fixed dependency cycle(s) with /soc/bus@2000000/gpc@20dc000 [ 0.138288] failed to find ocotp node [ 0.138754] failed to find ocotp node [ 0.139223] No ATAGs? [ 0.139353] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers. [ 0.139383] hw-breakpoint: maximum watchpoint size is 8 bytes. [ 0.142719] imx6ul-pinctrl 20e0000.pinctrl: initialized IMX pinctrl driver [ 0.147221] imx6ul-pinctrl 2290000.iomuxc-snvs: no groups defined in /soc/bus@2200000/iomuxc-snvs@2290000 [ 0.147298] imx6ul-pinctrl 2290000.iomuxc-snvs: initialized IMX pinctrl driver [ 0.150762] imx mu driver is registered. [ 0.151917] imx rpmsg driver is registered. [ 0.155453] kprobes: kprobe jump-optimization is enabled. All kprobes are optimized if possible. [ 0.160014] gpio gpiochip0: Static allocation of GPIO base is deprecated, use dynamic allocation. [ 0.165710] gpio gpiochip1: Static allocation of GPIO base is deprecated, use dynamic allocation. [ 0.171290] gpio gpiochip2: Static allocation of GPIO base is deprecated, use dynamic allocation. [ 0.177047] gpio gpiochip3: Static allocation of GPIO base is deprecated, use dynamic allocation. [ 0.182822] gpio gpiochip4: Static allocation of GPIO base is deprecated, use dynamic allocation. [ 0.196482] SCSI subsystem initialized [ 0.198000] usbcore: registered new interface driver usbfs [ 0.198114] usbcore: registered new interface driver hub [ 0.198241] usbcore: registered new device driver usb [ 0.203806] i2c i2c-0: IMX I2C adapter registered [ 0.207472] i2c 1-003c: Fixed dependency cycle(s) with /soc/bus@2100000/csi@21c4000/port/endpoint [ 0.207761] i2c i2c-1: IMX I2C adapter registered [ 0.208857] mc: Linux media interface: v0.10 [ 0.209114] videodev: Linux video capture interface: v2.00 [ 0.209319] pps_core: LinuxPPS API ver. 1 registered [ 0.209336] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti [ 0.209391] PTP clock support registered [ 0.214153] MIPI CSI2 driver module loaded [ 0.214296] Advanced Linux Sound Architecture Driver Initialized. [ 0.216788] Bluetooth: Core ver 2.22 [ 0.216938] NET: Registered PF_BLUETOOTH protocol family [ 0.216955] Bluetooth: HCI device and connection manager initialized [ 0.216990] Bluetooth: HCI socket layer initialized [ 0.217010] Bluetooth: L2CAP socket layer initialized [ 0.217062] Bluetooth: SCO socket layer initialized [ 0.218128] vgaarb: loaded [ 0.219434] clocksource: Switched to clocksource mxc_timer1 [ 0.220158] VFS: Disk quotas dquot_6.6.0 [ 0.220291] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes) [ 0.252735] NET: Registered PF_INET protocol family [ 0.253401] IP idents hash table entries: 8192 (order: 4, 65536 bytes, linear) [ 0.257429] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear) [ 0.257515] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear) [ 0.257555] TCP established hash table entries: 4096 (order: 2, 16384 bytes, linear) [ 0.257664] TCP bind hash table entries: 4096 (order: 4, 65536 bytes, linear) [ 0.257932] TCP: Hash tables configured (established 4096 bind 4096) [ 0.258143] UDP hash table entries: 256 (order: 1, 8192 bytes, linear) [ 0.258226] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear) [ 0.258644] NET: Registered PF_UNIX/PF_LOCAL protocol family [ 0.260260] RPC: Registered named UNIX socket transport module. [ 0.260298] RPC: Registered udp transport module. [ 0.260310] RPC: Registered tcp transport module. [ 0.260320] RPC: Registered tcp-with-tls transport module. [ 0.260332] RPC: Registered tcp NFSv4.1 backchannel transport module. [ 0.264210] PCI: CLS 0 bytes, default 64 [ 0.265934] hw perfevents: enabled with armv7_cortex_a7 PMU driver, 5 counters available [ 0.270795] Bus freq driver module loaded [ 0.273589] Initialise system trusted keyrings [ 0.274322] workingset: timestamp_bits=14 max_order=17 bucket_order=3 [ 0.276195] NFS: Registering the id_resolver key type [ 0.276327] Key type id_resolver registered [ 0.276344] Key type id_legacy registered [ 0.276456] nfs4filelayout_init: NFSv4 File Layout Driver Registering... [ 0.276480] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering... [ 0.276573] jffs2: version 2.2. (NAND) © 2001-2006 Red Hat, Inc. [ 0.277454] fuse: init (API version 7.39) [ 0.715463] Key type asymmetric registered [ 0.715502] Asymmetric key parser 'x509' registered [ 0.715666] io scheduler mq-deadline registered [ 0.715689] io scheduler kyber registered [ 0.715758] io scheduler bfq registered [ 0.737686] mxsfb 21c8000.lcdif: supply lcd not found, using dummy regulator [ 0.850715] sii902x bound to mxs-lcdif from 21c8000.lcdif [ 0.853796] Console: switching to colour frame buffer device 60x34 [ 0.952729] mxsfb 21c8000.lcdif: initialized [ 0.965730] imx-sdma 20ec000.dma-controller: Direct firmware load for imx/sdma/sdma-imx6q.bin failed with error -2 [ 0.965782] imx-sdma 20ec000.dma-controller: Falling back to sysfs fallback for: imx/sdma/sdma-imx6q.bin [ 0.970794] mxs-dma 1804000.dma-controller: initialized [ 0.982372] 2020000.serial: ttymxc0 at MMIO 0x2020000 (irq = 201, base_baud = 5000000) is a IMX [ 0.982524] printk: console [ttymxc0] enabled [ 1.883275] 21e8000.serial: ttymxc1 at MMIO 0x21e8000 (irq = 202, base_baud = 5000000) is a IMX [ 1.892758] serial serial0: tty port ttymxc1 registered [ 1.933496] imx_rngc 2284000.rng: Freescale RNGB registered (HW revision 2.129) [ 1.941617] random: crng init done [ 1.946170] imx sema4 driver is registered. [ 1.990438] brd: module loaded [ 2.010094] loop: module loaded [ 2.024689] nand: device found, Manufacturer ID: 0xc2, Chip ID: 0xdc [ 2.031222] nand: Macronix MX30LF4G28AC [ 2.035089] nand: 512 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 112 [ 2.044226] Bad block table found at page 262080, version 0x01 [ 2.050815] Bad block table found at page 262016, version 0x01 [ 2.057068] 5 cmdlinepart partitions found on MTD device gpmi-nand [ 2.063373] Creating 5 MTD partitions on "gpmi-nand": [ 2.068464] 0x000000000000-0x000004000000 : "nandboot" [ 2.078164] 0x000004000000-0x000005000000 : "nandkernel" [ 2.088106] 0x000005000000-0x000006000000 : "nanddtb" [ 2.097549] 0x000006000000-0x000007000000 : "nandtee" [ 2.106798] 0x000007000000-0x000020000000 : "nandrootfs" [ 2.119657] gpmi-nand 1806000.nand-controller: driver registered. [ 2.139641] tun: Universal TUN/TAP device driver, 1.6 [ 2.145343] CAN device driver interface [ 2.154965] pps pps0: new PPS source ptp0 [ 2.166180] fec 20b4000.ethernet: Invalid MAC address: 00:00:00:00:00:00 [ 2.173206] fec 20b4000.ethernet: Using random MAC address: c6:53:71:26:3b:27 [ 2.189048] fec 20b4000.ethernet eth0: registered PHC device 0 [ 2.199015] pps pps1: new PPS source ptp1 [ 2.210629] fec 2188000.ethernet: Invalid MAC address: 00:00:00:00:00:00 [ 2.217427] fec 2188000.ethernet: Using random MAC address: de:de:f3:b7:e7:45 [ 2.227275] fec 2188000.ethernet eth1: registered PHC device 1 [ 2.234001] e1000e: Intel(R) PRO/1000 Network Driver [ 2.239004] e1000e: Copyright(c) 1999 - 2015 Intel Corporation. [ 2.246135] usbcore: registered new device driver r8152-cfgselector [ 2.252662] usbcore: registered new interface driver r8152 [ 2.258272] usbcore: registered new interface driver lan78xx [ 2.264116] usbcore: registered new interface driver asix [ 2.269686] usbcore: registered new interface driver ax88179_178a [ 2.275895] usbcore: registered new interface driver cdc_ether [ 2.281898] usbcore: registered new interface driver smsc95xx [ 2.287786] usbcore: registered new interface driver net1080 [ 2.293780] usbcore: registered new interface driver cdc_subset [ 2.299899] usbcore: registered new interface driver zaurus [ 2.305590] usbcore: registered new interface driver MOSCHIP usb-ethernet driver [ 2.313177] usbcore: registered new interface driver cdc_ncm [ 2.318956] usbcore: registered new interface driver r8153_ecm [ 2.325390] usbcore: registered new interface driver usb-storage [ 2.335889] imx_usb 2184000.usb: No over current polarity defined [ 2.525616] ci_hdrc ci_hdrc.1: EHCI Host Controller [ 2.530824] ci_hdrc ci_hdrc.1: new USB bus registered, assigned bus number 1 [ 2.569725] ci_hdrc ci_hdrc.1: USB 2.0 started, EHCI 1.00 [ 2.575695] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 6.06 [ 2.584100] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1 [ 2.591404] usb usb1: Product: EHCI Host Controller [ 2.596312] usb usb1: Manufacturer: Linux 6.6.3-lts-next-gac2d7686eaaf ehci_hcd [ 2.603689] usb usb1: SerialNumber: ci_hdrc.1 [ 2.610101] hub 1-0:1.0: USB hub found [ 2.614012] hub 1-0:1.0: 1 port detected [ 2.624279] input: 20cc000.snvs:snvs-powerkey as /devices/platform/soc/2000000.bus/20cc000.snvs/20cc000.snvs:snvs-powerkey/input/input0 [ 2.638399] SPI driver ads7846 has no spi_device_id for ti,tsc2046 [ 2.645819] SPI driver ads7846 has no spi_device_id for ti,ads7843 [ 2.652200] SPI driver ads7846 has no spi_device_id for ti,ads7845 [ 2.658411] SPI driver ads7846 has no spi_device_id for ti,ads7873 [ 2.668258] input: iMX6UL Touchscreen Controller as /devices/platform/soc/2000000.bus/2040000.tsc/input/input1 [ 2.686384] snvs_rtc 20cc000.snvs:snvs-rtc-lp: registered as rtc0 [ 2.692814] snvs_rtc 20cc000.snvs:snvs-rtc-lp: setting system clock to 1970-01-01T00:00:00 UTC (0) [ 2.702386] i2c_dev: i2c /dev entries driver [ 2.711750] pxp-v4l2 pxp_v4l2: initialized [ 2.726321] softdog: initialized. soft_noboot=0 soft_margin=60 sec soft_panic=0 (nowayout=0) [ 2.735008] softdog: soft_reboot_cmd= soft_active_on_boot=0 [ 2.743029] Bluetooth: HCI UART driver ver 2.3 [ 2.747519] Bluetooth: HCI UART protocol H4 registered [ 2.752772] Bluetooth: HCI UART protocol BCSP registered [ 2.758247] Bluetooth: HCI UART protocol LL registered [ 2.763562] Bluetooth: HCI UART protocol Three-wire (H5) registered [ 2.769986] Bluetooth: HCI UART protocol Marvell registered [ 2.775705] usbcore: registered new interface driver btusb [ 2.783836] sdhci: Secure Digital Host Controller Interface driver [ 2.790172] sdhci: Copyright(c) Pierre Ossman [ 2.794558] sdhci-pltfm: SDHCI platform and OF driver helper [ 2.807011] sdhci-esdhc-imx 2190000.mmc: Got CD GPIO [ 2.814395] usbcore: registered new interface driver usbhid [ 2.826032] usbhid: USB HID core driver [ 2.833142] mma8452 0-001e: mounting matrix not found: using identity... [ 2.840109] mma8452 0-001e: supply vdd not found, using dummy regulator [ 2.847230] mma8452 0-001e: supply vddio not found, using dummy regulator [ 2.867583] mmc0: SDHCI controller on 2190000.mmc [2190000.mmc] using ADMA [ 2.881073] wm8960 1-001a: supply DCVDD not found, using dummy regulator [ 2.888250] wm8960 1-001a: supply DBVDD not found, using dummy regulator [ 2.895392] wm8960 1-001a: supply AVDD not found, using dummy regulator [ 2.902252] wm8960 1-001a: supply SPKVDD1 not found, using dummy regulator [ 2.909276] wm8960 1-001a: supply SPKVDD2 not found, using dummy regulator [ 2.918038] wm8960 1-001a: Failed to issue reset [ 2.928644] rpmsg-codec-wm8960 1-001a: Failed to issue reset [ 2.956152] NET: Registered PF_LLC protocol family [ 2.962343] NET: Registered PF_INET6 protocol family [ 2.971002] Segment Routing with IPv6 [ 2.974799] In-situ OAM (IOAM) with IPv6 [ 2.979001] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver [ 2.986837] NET: Registered PF_PACKET protocol family [ 2.992041] can: controller area network core [ 2.996588] NET: Registered PF_CAN protocol family [ 3.001497] can: raw protocol [ 3.004508] can: broadcast manager protocol [ 3.008731] can: netlink gateway - max_hops=1 [ 3.013744] Bluetooth: RFCOMM TTY layer initialized [ 3.018709] Bluetooth: RFCOMM socket layer initialized [ 3.024014] Bluetooth: RFCOMM ver 1.11 [ 3.027824] Bluetooth: BNEP (Ethernet Emulation) ver 1.3 [ 3.033219] Bluetooth: BNEP filters: protocol multicast [ 3.038493] Bluetooth: BNEP socket layer initialized [ 3.043526] Bluetooth: HIDP (Human Interface Emulation) ver 1.2 [ 3.049541] Bluetooth: HIDP socket layer initialized [ 3.055113] lib80211: common routines for IEEE802.11 drivers [ 3.061038] Key type dns_resolver registered [ 3.094428] Registering SWP/SWPB emulation handler [ 3.125669] Loading compiled-in X.509 certificates [ 3.176567] imx_thermal 20c8000.anatop:tempmon: Commercial CPU temperature grade - max:95C critical:90C passive:85C [ 3.190927] ubi0: default fastmap pool size: 160 [ 3.195583] ubi0: default fastmap WL pool size: 80 [ 3.200504] ubi0: attaching mtd4 [ 3.643668] ubi0: scanning is finished [ 3.655698] ubi0: attached mtd4 (name "nandrootfs", size 400 MiB) [ 3.661921] ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes [ 3.668828] ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048 [ 3.675683] ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096 [ 3.682718] ubi0: good PEBs: 3196, bad PEBs: 4, corrupted PEBs: 0 [ 3.688824] ubi0: user volume: 1, internal volumes: 1, max. volumes count: 128 [ 3.696113] ubi0: max/mean erase counter: 2/1, WL threshold: 4096, image sequence number: 3692091414 [ 3.705279] ubi0: available PEBs: 0, total reserved PEBs: 3196, PEBs reserved for bad PEB handling: 76 [ 3.714643] ubi0: background thread "ubi_bgt0d" started, PID 60 [ 3.721508] cfg80211: Loading compiled-in X.509 certificates for regulatory database [ 3.733343] Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7' [ 3.739251] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2 [ 3.748046] clk: Disabling unused clocks [ 3.752059] platform regulatory.0: Falling back to sysfs fallback for: regulatory.db [ 3.760176] ALSA device list: [ 3.763165] No soundcards found. [ 3.767131] VFS: Cannot open root device "ubi0:rootfs" or unknown-block(0,253): error -19 [ 3.775821] Please append a correct "root=" boot option; here are the available partitions: [ 3.784359] 0100 65536 ram0 [ 3.784376] (driver?) [ 3.790583] 0101 65536 ram1 [ 3.790595] (driver?) [ 3.796710] 0102 65536 ram2 [ 3.796719] (driver?) [ 3.802885] 0103 65536 ram3 [ 3.802896] (driver?) [ 3.809009] 0104 65536 ram4 [ 3.809017] (driver?) [ 3.815207] 0105 65536 ram5 [ 3.815218] (driver?) [ 3.821382] 0106 65536 ram6 [ 3.821391] (driver?) [ 3.827508] 0107 65536 ram7 [ 3.827518] (driver?) [ 3.833657] 0108 65536 ram8 [ 3.833666] (driver?) [ 3.839831] 0109 65536 ram9 [ 3.839842] (driver?) [ 3.845958] 010a 65536 ram10 [ 3.845966] (driver?) [ 3.852191] 010b 65536 ram11 [ 3.852203] (driver?) [ 3.858402] 010c 65536 ram12 [ 3.858411] (driver?) [ 3.864670] 010d 65536 ram13 [ 3.864679] (driver?) [ 3.870901] 010e 65536 ram14 [ 3.870913] (driver?) [ 3.877111] 010f 65536 ram15 [ 3.877119] (driver?) [ 3.883350] 1f00 65536 mtdblock0 [ 3.883360] (driver?) [ 3.889953] 1f01 16384 mtdblock1 [ 3.889965] (driver?) [ 3.896512] 1f02 16384 mtdblock2 [ 3.896522] (driver?) [ 3.903094] 1f03 16384 mtdblock3 [ 3.903103] (driver?) [ 3.909708] 1f04 409600 mtdblock4 [ 3.909719] (driver?) [ 3.916275] List of all bdev filesystems: [ 3.920346] ext3 [ 3.920355] ext4 [ 3.922288] ext2 [ 3.924217] vfat [ 3.926145] fuseblk [ 3.928074] [ 3.931788] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,253) [ 3.940241] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,253) ]--- Can you please let me know what are the changes that needs to be made in order to mount the rootfs correctly? #imx6ull Thanks! i.MX6UL Yocto Project Re: rootfs not getting mounted on imx6ull EVK custom design This issue is resolved by updating root=nandrootfs in bootargs. Below is the patch if anyone faces same issue: --- a/include/configs/mx6ullevk.h +++ b/include/configs/mx6ullevk.h @@ -64,7 +64,7 @@ "tee_addr=0x84000000\0" \ "console=ttymxc0\0" \ "bootargs=console=ttymxc0,115200 ubi.mtd=nandrootfs " \ - "root=ubi0:rootfs rootfstype=ubifs " \ + "root=ubi0:nandrootfs rootfstype=ubifs " \ BOOTARGS_CMA_SIZE \ MFG_NAND_PARTITION \ "\0" \ -- Thanks!
View full article
MR-CANHUBK344如何设置CAN参数 你好专家, https://www.nxp.com/design/design-center/development-boards-and-designs/automotive-development-platforms/s32k-mcu-platforms/s32k344-evaluation-board-for-mobile-robotics-with-100base-t1-and-six-canfd:MR-CANHUBK344 我的客户正在调查 MR-CANHUBK344。客户是否可以通过IEEE1722 ACF协议设置CAN参数,如波特率/采样位置/ID过滤器等?也就是说,链接方通过IEEE1722 ACF协议来设置CAN参数。
View full article
The S32K344 Lpuart transfer cannot receive data correctly when DMA enable I use the Uart peripheral of S32K3 44 for RS485 communication, use Lpuart_Uart_Ip_AsyncSend() API can send data correctly, However, data cannot be received correctly using the DMA functionality, the received data is not what I want, it will lost some bytes.I don't know what is wrong with my project, hope someone can help me. App can receive LPUART_UART_IP_EVENT_RX_FULL events, However, some bytes of the data in RxData buffer are missing.  Figure 1 is a screenshot of debugging, compared to serial port monitoring Another question is that I have set LPUART_UART_IP_HAS_DMA_ENABLED = STD_ON, but when I trace into the API, the IDE shows that the macro definition is not available and the background is set to gray.  Figure 2  S32DS Platform version:3.5 RTD Build Version : S32K3_RTD_3_0_0_P07_D2306_ASR_REL_4_7_REV_0000_20230629 Attached is the Lpuart project I used. here is my code: /*================================================================================================== * Project : RTD AUTOSAR 4.7 * Platform : CORTEXM * Peripheral : S32K3XX * Dependencies : none * * Autosar Version : 4.7.0 * Autosar Revision : ASR_REL_4_7_REV_0000 * Autosar Conf.Variant : * SW Version : 3.0.0 * Build Version : S32K3_RTD_3_0_0_D2303_ASR_REL_4_7_REV_0000_20230331 * * Copyright 2020 - 2023 NXP Semiconductors * * NXP Confidential. This software is owned or controlled by NXP and may only be * used strictly in accordance with the applicable license terms. By expressly * accepting such terms or by downloading, installing, activating and/or otherwise * using the software, you are agreeing that you have read, and that you agree to * comply with and are bound by, such license terms. If you do not agree to be * bound by the applicable license terms, then you may not retain, install, * activate or otherwise use the software. ==================================================================================================*/ /** * @file main.c * * @addtogroup main_module main module documentation * @{ */ /* Including necessary configuration files. */ #include "Clock_Ip.h" #include "CDD_Rm.h" #include "Dma_Ip.h" #include "Clock_Ip.h" #include "Siul2_Port_Ip.h" #include "Siul2_Dio_Ip.h" #include "Lpuart_Uart_Ip.h" #include "IntCtrl_Ip.h" uint8_t RxData[128]; uint8_t TxData[128]={0x05, 0x04, 0x00, 0x00, 0x00, 0x02, 0x70, 0x4F}; void TestDelay(uint32 delay) { static volatile uint32 DelayTimer = 0; while (DelayTimer < delay) { DelayTimer++; } DelayTimer = 0; } void UART2_Callback(const uint8 HwInstance, const Lpuart_Uart_Ip_EventType Event, void *UserData) { (void) UserData; if (LPUART_UART_IP_INSTANCE_USING_2 == HwInstance) { switch (Event) { case LPUART_UART_IP_EVENT_RX_FULL: Lpuart_Uart_Ip_SetRxBuffer(LPUART_UART_IP_INSTANCE_USING_2, RxData, 9); if(5==RxData[0]) { RxData[9] = 0x55; } break; case LPUART_UART_IP_EVENT_TX_EMPTY: break; case LPUART_UART_IP_EVENT_END_TRANSFER: Siul2_Dio_Ip_WritePin(SEL_PORT, SEL_PIN, 0); break; case LPUART_UART_IP_EVENT_ERROR: break; } } } int main(void) { /* Write your code here */ Clock_Ip_Init(Clock_Ip_aClockConfig); Siul2_Port_Ip_Init(NUM_OF_CONFIGURED_PINS0, g_pin_mux_InitConfigArr0); Siul2_Dio_Ip_WritePin(EN_PORT,EN_PIN,1); Rm_Init(&Rm_Config); Dma_Ip_Init(&Dma_Ip_xDmaInitPB); Lpuart_Uart_Ip_Init(LPUART_UART_IP_INSTANCE_USING_2, &Lpuart_Uart_Ip_xHwConfigPB_2); Lpuart_Uart_Ip_AsyncReceive(LPUART_UART_IP_INSTANCE_USING_2, RxData, 9); IntCtrl_Ip_Init(&IntCtrlConfig_0); while (1) { TestDelay(4800000); Siul2_Dio_Ip_WritePin(SEL_PORT, SEL_PIN, 1); Lpuart_Uart_Ip_AsyncSend(LPUART_UART_IP_INSTANCE_USING_2, TxData, 8); } return 0; } /** @} */   Re: The S32K344 Lpuart transfer cannot receive data correctly when DMA enable You are right, it is a hardware issue, because I connected the logic analyzer on the TX and RX of the serial port, and the communication was normal after disconnecting the logic analyzer. so,thanks a lot. Re: The S32K344 Lpuart transfer cannot receive data correctly when DMA enable Hi @ZDDL, Could this be a hardware issue with connections?  Best regards, Julián Re: The S32K344 Lpuart transfer cannot receive data correctly when DMA enable @Julián_AragónM  I used your modified project and only modified the port to fit my board, but the data I received was still wrong.  When I was compiling the project, there was such a warning, I don't know if this is the root cause. Re: The S32K344 Lpuart transfer cannot receive data correctly when DMA enable Hi @ZDDL, I've downloaded your project and tested reception this way: I only modified the buffer size (to 8), and commented these lines from the Full Rx Event: if(5==RxData[0]) { RxData[9] = 0x55; } As well as modifying the pins to PTA29 and PTA30 to test this in the S32K3X4-T172 EVB. It seems reception is working properly, with or without the implemented delay: Best regards, Julián Re: The S32K344 Lpuart transfer cannot receive data correctly when DMA enable @Julián_AragónM  Thanks for your reply. I modified the Tx and Rx buffer definition according to your suggestion,  but the  received data was still incorrect.  and, if i comment out this line("// TestDelay(4800000);"), it will send an additional unwanted frame before normal transmission, i don't know why. Re: The S32K344 Lpuart transfer cannot receive data correctly when DMA enable Hi @ZDDL, The MCL Integration Manual states that the Rx and Tx buffers should be allocated in the NON-CACHEABLE area.     Please try this fix in your project, as stated in this community post: UART sending by DMA has SBE error with S32K344 - NXP Community.   As for the macro definition, this is a visual bug that can be fixed by rebuilding the index:   Best regards, Julián.
View full article
Store User Specific value in the secure NVM Hi, I want to store some user specific data such as HASH and CMAC Tag to secure NVM. Is it possible to store? If yes, how could I achieve this? Re: Store User Specific value in the secure NVM Hi @shravani  this is how the CryptoKeyElementPersist works: You use HSE keys, so CryptoKeyElementPersist is ignored and you can load a key only to NVM or to RAM key catalog as usual. Regards, Lukas Re: Store User Specific value in the secure NVM Hi @lukaszadrapa, Can we use crypto key element persist feature to store user values to secure NVM? I was checking Crypto driver persistent information in the RTD_CRYPTO_UM.pdf document. But I am confused. Please let me know your thoughts on this. Re: Store User Specific value in the secure NVM Thank you so much for the solution Re: Store User Specific value in the secure NVM Yes, this can be done also with SHE secure boot. In case of SHE secure boot, you can define one region only. So, first option is to have everything in one block to be checked by the SHE secure boot - i.e. bootloader + secure data, for example. Second option is to create a chain of trust. That means the autonomous SHE secure boot will check bootloader only. Then the bootloader can check CMAC of your secure data (and probably also CMAC of your application). If the check passes, execute CMD_BOOT_OK command to finish the SHE secure boot. If the check fails, execute CMD_BOOT_FAILURE. This is defined by SHE specification - first stage of the secure boot is autonomous and the others can be done manually. The final status is then provided to SHE by CMD_BOOT_OK or CMD_BOOT_FAILURE commands. Re: Store User Specific value in the secure NVM Hi @lukaszadrapa, I am using SHE based secure boot. Can we perform same operation with SHE based secure boot? Re: Store User Specific value in the secure NVM Well, you can designate some flash area for the secure data. When you are going to program the data to flash, encrypt the data first. Once the data are programmed, you can configure SMR (for advanced secure boot mode) to cover this region for verification of the data. When you want to read the data - just read it and decrypt it. When you want to update the data - encrypt new data, erase the flash, program the encrypted data, update SMR. For more details about the advanced secure boot, take a look at Secure Boot application note: https://www.nxp.com/products/processors-and-microcontrollers/s32-automotive-platform/s32k-auto-general-purpose-mcus/s32k3-microcontrollers-for-automotive-general-purpose:S32K3 Application note can be found here: Documentation -> Secure Files -> Secure Boot Application note v0.1.1.0 (AN744511) Associated demo project can be downloaded here: Design Resources -> Software -> Secure Files -> SecureBootAppNoteDemo (SW745310) Re: Store User Specific value in the secure NVM Hi @lukaszadrapa , Can you please elaborate more?  Actually, I am not getting the workaround you have suggested. Re: Store User Specific value in the secure NVM That's what I wrote - we don't recommend this. Please use described workaround. Regards, Lukas Re: Store User Specific value in the secure NVM Hi @lukaszadrapa  Thanks for the reply. My question here is for user specific data not for keys. Lets say I want to store hash value to secure NVM, is it possible ? How could I save it? Re: Store User Specific value in the secure NVM Hi @shravani  I already wrote to your colleague: "Please don't use the import/export key to save the data,  import key when the key slot is not empty is required to encrypt the plain data of the key value. The export key value is also encrypted and needs decrypted it if needed to get the plain text. It's a rather troublesome operation, and the keys may be damaged because of some ECC error trigger by unexpected reset or power down. A workaround could be to use HSE to encrypt a defined NVM region and use SMR services for verification." Regards, Lukas
View full article
LPDDR Design recommendations for S32G Pkg Delay Hello, I found this document for the iMX processors: https://community.nxp.com/pwmxy87654/attachments/pwmxy87654/imx-processors/152878/1/8MN%20HDG%20LPDDR4%20related%20excerpts.pdf It does not seem as an official document as I dont see a NXP number on it but it talks about Pkg Delay on Table 2. In the S32G2HDG Rev. 8, 06/2022 Table 8. S32G LPDDR4 routing constraints, a similar table is provided without Pkg Delay. I was wondering if this parameter is also relevant for the S32G and if so, where can I found the information for it? Thanks! Re: LPDDR Design recommendations for S32G Pkg Delay Hi, On regards of delay for LPDDR4, the information available under S32G2HDG (the same you are referring to) is the available information. Customer is only required to meet these requirements. Please, let us know.
View full article
Question about csv export by freemaster Hello Team May I ask about freemaster? How to export csv by freemaster by recent version? By my experience, old version is showing about Data capture setup like below.   However I did not find same menu at the 3.2 version. May I ask, how to set up about CSV export by recent version? Thank you. Re: Question about csv export by freemaster Hello, you have to select "oscilloscope" item in the "Project Tree" and wanted menu "Oscilloscope" will appear: Or right click on "oscilloscope" item in the "Project Tree" and then choose "Properties...": BR, Tomas
View full article
MR-CANHUBK344 による CAN パラメータの設定方法 こんにちは専門家、 https://www.nxp.com/design/design-center/development-boards-and-designs/automotive-development-platforms/s32k-mcu-platforms/s32k344-evaluation-board-for-mobile-robotics-with-100base-t1-and-six-canfd:MR-CANHUBK344 お客様がMR-CANHUBK344を調査しています。お客様は、IEEE1722 ACFプロトコルでボーレート/サンプリング位置/IDフィルターなどのCANパラメータを設定できますか?つまり、リンクパートナーはACFプロトコルによってCANパラメータを設定しますIEEE1722。
View full article
How MR-CANHUBK344 setup CAN parameters Hello Expert, https://www.nxp.com/design/design-center/development-boards-and-designs/automotive-development-platforms/s32k-mcu-platforms/s32k344-evaluation-board-for-mobile-robotics-with-100base-t1-and-six-canfd:MR-CANHUBK344 My customer is investigating MR-CANHUBK344. Can customer setup CAN parameters such as baud rate/sampling position/ID filter, etc by IEEE1722 ACF protocol? That is to say the link partner setup the CAN parameters by IEEE1722 ACF protocol. Re: How MR-CANHUBK344 setup CAN parameters Hi @PetrS , Thanks for your quick reply! It is helpful. Re: How MR-CANHUBK344 setup CAN parameters Hi, probably it would be possible, if ACF message will contain such data and user will implement/parse that. A given MR_CANHUBK3_IEEE 1722 demo example just convert an IEEE 1722 ACF-CAN fame and send it over FlexCAN (and vice-versa). No setting of baud rate/ID filter, etc is implemented upon ACF message reception. FlexCAN init is done at application start and does not change. BR, Petr
View full article
TEA2017 default value Base on customer's request,they want to know if they apply sample to design. Before adjust or program,What's the TEA2017 AAT/2&3 default value??? So please kindly help for our customer requirement. it could be a document which it may open via GUI RINGO or extra application note. thanks~ Re: TEA2017 default value Dear Sir: got it and very appreciate your help. I will try first before I send to customer. If I have any questions please kindly advise. once again...thank you very much. Best Regards Jeff Yu Re: TEA2017 default value Hi Jeff These data should not post in public I will let your know later.
View full article
MPC5777C - Possible inter-core interference in the XBAR Hello! As written in the MPC5777C RM, the XBAR has 7 master ports and 7 slave ports. In a "theoretical" XBAR, it is impossible that a transaction between a master and slave interferes with a transaction between other master and slave. There are dedicated paths that connect single master ports to single slave ports, being temporal and functionally isolated from each other. However, I found some weird results while performing timing analysis.  1) To mitigate interference, I allocated the PRAMC_0 memory region to core 0 an PRAMC_1 memory region to core 1. Since the cores are connected to different master ports and PRAMC 0 and 1 are connected to different slave ports, I thought that there was not any kind of hardware resource competition between the cores in this scenario. However, when I allocated the data from core 1 to the external RAM through the EBI, the execution time of the task being executed in core 0 decreased. Since, theoretically, there would not be any competition, I expected that nothing happened to core 0 execution time. Why would the execution time decrease in this scenario?  (ps: the same benchmark software was executed in core 0 and core 1 simultaneously, triggered by a global interruption. The execution time measurement unit is microsseconds. WT and WB stands for the write-through and write-back cache policies) 2) Other unexpected result is the little execution time difference between allocating both cores to access the same PRAMC and different ones. I expected that this difference would be bigger, since different PRAMCs would parallelize the accesses, increasing performance. However, it seems that using different PRAMCs does not help so much. A difference of 1-2 us in execution time is negligible in this test. Should this difference be bigger? Best regards, Matheus Re: MPC5777C - Possible inter-core interference in the XBAR It is not clear according to your description whether you are measuring data accesses or instruction execution time of code located in SRAM. I suppose you are executing code from internal FLASH. Flash is accesses over two ports, but parallel accesses may only be to flash controller’s mini-cache (basically pre-fetch buffers). So ideally you should executed the code for measurements directly from cores‘ caches memory to eliminate flash access impact. Another point crossing my mind is how you measure a time interval. If you toggle pin, it is access over PBRIDGE and it may influence timing if accesses by both cores.
View full article
RT 1170デュアルSDRAM 16ビット接続 単一の512MBitチップの代わりに、RT1172でデュアル256MビットSDRAMを使用する予定ですが、GPIOピンが不足しているため、16ビットデータバスを使用したいと考えています。 リファレンスマニュアルには、CS0とCS1で可能であるとしか記載されていませんが、2つのチップ間の他のすべてのラインは並列に接続されていると思います。 MIMXRT1170-EVKB は32ビットのデータバス接続で、アドレスグループとコマンドグループは並列に接続されていますが、16ビットのデータバスは別々です。 このような 16bit Dual SDRAM 接続が可能であることを確認し、可能であれば回路図の例を挙げていただけますか。 また、シングル 16 ビット SDRAM データ転送速度とデュアル SDRAM 16 ビット SDRAM のデータ転送速度に関するベンチマーク情報はありますか i.MXRT 101倍
View full article
FLash-Test Hello NXP-Team, iam trying to check my flash-area with your function : FS_CM33_FLASH_HW16() ; unfortunatally it doesnt work, the return value is constant null. my µC-device is the LPC5536.Are there any examples to test my lpc5536 ? Re: FLash-Test Hello Hang, thank you for your support!! Re: FLash-Test Hi @ThomasSPana  If you want to run this project successfully, please refer to  SDK_2_16_000_LPCXpresso55S36\middleware\safety_iec60730b\docs\safety\IEC60730B_Example_User_Guide_LPC55Sxx_v4_4.pdf. BR Harry Re: FLash-Test Hi Hang, i have already send you a link to my project . Additionally it is possible to setup this example through "MCUexpressoIDE". My project-configureation : SDK-Wizard-> LPCxpresso55s36 eval-board (sdk_2.xlpc55s36)-> components (Others -> safety) NXP-Safety-IEC60730 ->advaced project settings (default) . That all. After that you can run this project and the flash-error fault should occure BR Thomas Re: FLash-Test Hi @ThomasSPana  Can you share this project? So i can test it. BR Hang Re: FLash-Test Hello Hang,  currently i test the "lpcxpresso55s36_safety_iec60730b_Flash_Test" PROJECT with the LPC55S3x-EVK Board. If i run the project, i get the same error-code "2" -> Flash-Test error.  Could you also evaluate the project on an LPC55s3x kit? Re: FLash-Test Hi @ThomasSPana  Given that it returns NULL, this likely indicates a CRC fault or a hardware setup issue with the CRC module on the LPC5536. The LPC5536 has a built-in hardware CRC module, but it may need to be initialized or enabled before use. So you  needs to be set to enable the CRC peripheral. You can refer to CRC examples about how to use CRC. BR Hang Re: FLash-Test Hello Hang, thank you for your quick replay. I have tested the flashiap-example and it works. When i add the IEC60730b-library and test the FS_CM33_FLASH_HW16()- function it return NULL. (CRC-Fault) . I use the LPC5536  µController....  Do i need to activate any function for the HW-CRC-Unit ?  Re: FLash-Test Hi @ThomasSPana  You can download the LPC55S36 SDK from the Select Board | MCUXpresso SDK Builder (nxp.com). And you can refer to the flashiap and flexspi examples. These examples should demonstrate basic flash operations and can be a good starting point for your testing. BR Hang
View full article
RT 1170 Dual SDRAM 16bit connection Planning on using Dual 256Mbit SDRAM with RT1172, instead of single 512MBit chip, but due to GPIO pins shortage I want to use 16bit databus. Reference manual only mentions that it is possible with CS0 and CS1, I assume all other lines between 2 chips are connected in parallel . MIMXRT1170-EVKB has 32bit databus connection, where the address and command groups connected in parallel, but the 16bit databuses are separate. Could you confirm that such 16bit Dual SDRAM connection is possible and provide a schematics example if possible. Also, do you have a benchmarking information on single 16bit SDRAM data transfer rate versus Dual SDRAM 16bit i.MXRT 101x Re: RT 1170 Dual SDRAM 16bit connection Hi @MaxM, Unfortunately, we do not have any reference schematics or benchmarks for a Dual SDRAM configuration on the RT1170, but I can say that you are definitely correct on the connection. All lines except CS0 and CS1 are connected in parallel, and the CS lines are connected to each of the SDRAMs. BR, Edwin. 
View full article
TEA2017デフォルト値 顧客の要求に基づいて、彼らは設計にサンプルを適用するかどうかを知りたがっています。 調整またはプログラムする前に、TEA2017 AAT/2&3のデフォルト値は何ですか??? ですから、お客様のご要望にお応えしますようお願いいたします。 GUI、RINGO、または追加のアプリケーションノートで開くことができるドキュメントである可能性があります。 感謝~ Re: TEA2017デフォルト値 親愛 なる: それを手に入れ、あなたの助けに非常に感謝します。 お客様にお送りする前に、まず試してみます。 ご不明な点がございましたら、お気軽にお問い合わせください。 もう 1 回お願いします。。。ありがとうございました。 よろしくお願いいたします。 ジェフ・ユー Re: TEA2017デフォルト値 こんにちはジェフ これらのデータは公開に投稿しないでください、後でお知らせします。
View full article
i.MX8 MAX9296 Stream Problem Hi all, I can get a stream using the following device-tree settings without an MAX9296 from my camera: / { fragment@7 { target = <&i2c_mipi_csi0>; __overlay__ { #address-cells = <1>; #size-cells = <0>; status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_i2c_mipi_csi0>; as0149_mipi_0: as0149_mipi@5d { compatible = "as0149"; reg = <0x5d>; clocks = <&xtal24m>; clock-names = "xclk"; csi_id = <0>; mclk = <24000000>; mclk_source = <0>; mipi_csi; status = "okay"; port { as0149_mipi_ep_0: endpoint { remote-endpoint = <&mipi_csi0_ep>; data-lanes = <1 2>; clocks-lanes = <0>; }; }; }; }; }; fragment@8 { target = <&i2c_mipi_csi1>; __overlay__ { #address-cells = <1>; #size-cells = <0>; status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_i2c_mipi_csi1>; as0149_mipi_1: as0149_mipi@5d { compatible = "as0149"; reg = <0x5d>; clocks = <&xtal24m>; clock-names = "xclk"; csi_id = <0>; mclk = <24000000>; mclk_source = <0>; mipi_csi; status = "okay"; port { as0149_mipi_ep_1: endpoint { remote-endpoint = <&mipi_csi1_ep>; data-lanes = <1 2>; clocks-lanes = <0>; }; }; }; }; }; fragment@9 { target = <&irqsteer_csi0>; __overlay__ { status = "okay"; }; }; fragment@10 { target = <&irqsteer_csi1>; __overlay__ { status = "okay"; }; }; fragment@11 { target = <&mipi_csi_0>; __overlay__ { #address-cells = <1>; #size-cells = <0>; /delete-property/virtual-channel; status = "okay"; /* Camera 0 MIPI CSI-2 (CSIS0) */ port@0 { reg = <0>; mipi_csi0_ep: endpoint { remote-endpoint = <&as0149_mipi_ep_0>; data-lanes = <1 2>; }; }; }; }; fragment@12 { target = <&isi_0>; __overlay__ { status = "okay"; cap_device { status = "okay"; }; m2m_device { status = "okay"; }; }; }; fragment@13 { target = <&mipi_csi_1>; __overlay__ { #address-cells = <1>; #size-cells = <0>; /delete-property/virtual-channel; status = "okay"; /* Camera 1 MIPI CSI-2 (CSIS1) */ port@1 { reg = <1>; mipi_csi1_ep: endpoint { remote-endpoint = <&as0149_mipi_ep_1>; data-lanes = <1 2>; }; }; }; }; fragment@14 { target = <&isi_4>; __overlay__ { status = "okay"; cap_device { status = "okay"; }; m2m_device { status = "okay"; }; }; }; }; However, when I add max9296 driver inside of my camera driver I get the following output: I check my max9296 and as0149 status registers, both with no error and both stating they are on stream. Input and output format also seems correct by looking at the dmesg log below: [ 884.552763] bypass csc [ 884.555176] input fmt UYVY [ 884.557914] output fmt UYVY Only thing that came to my mind right now is the pixel clock. I set it like below at the momment: port { as0149_serdes_ep_0: endpoint { data-lanes = <1 2>; clocks-lanes = <0>; /*clock-noncontinuous;*/ link-frequencies = /bits/ 64 <833333333>; //max-pixel-frequency = /bits/ 64 <100000000>; remote-endpoint = <&mipi_csi0_ep_0>; }; ... port@0 { reg = <0>; mipi_csi0_ep_0: endpoint { remote-endpoint = <&as0149_serdes_ep_0>; data-lanes = <1 2>; csis-hs-settle = <18>; csis-clk-settle = <2>; csis-wclk; }; does this correct setting for 833333333 pixel clock ? Or these values does nothing ? Can any of you guide me on this one ? Thanks. i.MX 8 Family | i.MX 8QuadMax (8QM) | 8QuadPlus Re: i.MX8 MAX9296 Stream Problem Hi @joanxie , I debug my way to found a solution for this. Please refer to below patch: diff --git a/drivers/staging/media/imx/imx8-mipi-csi2.c b/drivers/staging/media/imx/imx8-mipi-csi2.c index 3c628fb1b..9f47bb9ca 100644 --- a/drivers/staging/media/imx/imx8-mipi-csi2.c +++ b/drivers/staging/media/imx/imx8-mipi-csi2.c @@ -332,7 +332,7 @@ static struct mxc_hs_info hs_setting[] = { {1920, 1080, 30, 0x0B}, {1920, 1080, 15, 0x10}, - + {1280, 960, 30, 0x6}, {1280, 720, 30, 0x11}, {1280, 720, 15, 0x16}, so basically, ` link-frequencies = /bits/ 64 <833333333>;` have no use on device tree. instead you need to change the hs clock according to the table below:   as you can see by the table 1.5 Gbps, is what I was needed. Once I set the HS timer for my MIPI data rate, it worked like a charm. Hopefully it will help someone in the future.  Re: i.MX8 MAX9296 Stream Problem could you share the full logfile and dts file? and tell me what bsp version you use
View full article
RT 1170 双 SDRAM 16 位连接 计划使用带有 RT1172 的双 256Mbit SDRAM,而不是单个 512MBit 芯片,但由于 GPIO 引脚短缺,我想使用 16 位数据总线。 参考手册仅提到 CS0 和 CS1 是可能的,我假设两个芯片之间的所有其他线路都是并联的。 MIMXRT1170-EVKB具有 32 位数据总线连接,其中地址和命令组并行连接,但 16 位数据总线是分开的。 您能否确认这种 16 位双 SDRAM 连接是否可行,并在可能的情况下提供原理图示例。 另外,您是否有关于单 16 位 SDRAM 数据传输速率与双 16 位 SDRAM 的基准信息 i.MXRT 101x
View full article
闪光测试 您好,NXP团队, 我正在尝试使用你的功能检查我的闪存区域: FS_CM33_FLASH_HW16 (); 不幸的是它不起作用,返回值是常量 null。 我的 µC 设备是 LPC5536。有没有示例可以测试我的 lpc5536? 回复:闪光测试 你好,Hang, 谢谢您的支持!! 回复:闪光测试 嗨,Hang, 我已经向您发送了我的项目的链接。此外,还可以通过“MCUexpressoIDE”设置此示例。 我的项目配置:SDK向导->LPCxpresso55s36评估板(sdk_2.xlpc55s36)->组件(其他 -> 安全)NXP-Safety-IEC60730 ->高级项目设置(默认)。就这些。之后,您可以运行该项目,并且应该会出现 flash-error 错误 BR 托马斯 回复:闪光测试 你好,Hang, 目前我使用 LPC55S3x-EVK 板测试“lpcxpresso55s36_safety_iec60730b_Flash_Test”项目。如果我运行该项目,我会得到相同的错误代码“2”-> Flash-Test 错误。 您还可以在 LPC55s3x 套件上评估该项目吗? 回复:闪光测试 你好,Hang, 感谢您的快速回复。我已经测试了flashiap-example,它可以正常工作。当我添加 IEC60730b 库并测试FS_CM33_FLASH_HW16 () 函数,它返回 NULL。(CRC 故障)。我使用 LPC5536 µController……我需要为 HW-CRC 单元激活任何功能吗?
View full article