Hey NXP support,
I'm having some issues getting the MDBT working with Matlab 2020a. Specifically, I'm trying to protect (as an slxp) a simulink model configured with S32K344 as the target hardware (and associated code generation settings). However it keeps trying to call the readstruct function, which was only introduced in later versions on Matlab. Apparently, it's the epc2map.p file where this call takes place. Is there a way to make it compatible with 2020a? I tried the steps described in the start-up guide - installing the Support Package for Arm Cortex-M and running the mbd_s32k3 scripts, but that doesn't seem to help. The same missing readstruct function is reported during the execution of these scripts, too.
I'm using version 1.3 of the toolbox and I'm having no issues protecting models and code-generating on Matlab 2022a (which is officially supported, I suppose).
Many thanks,
Cosmin
Solved! Go to Solution.
Hi, @CosminIon,
Thank you for using MBDT for S32K3xx on your projects.
Unfortunately, in order to keep up with the most recent MathWorks releases, the NXP S32K3xx 1.3.0 Toolbox is fully compatible with MATLAB versions starting with MATLAB R2021a.
From what I understand, you tried the R2022a version, and everything works properly. Have you tried using the R2021a version as well? Does it behave correctly?
Best regards,
Dragos
Hi, @CosminIon,
Thank you for using MBDT for S32K3xx on your projects.
Unfortunately, in order to keep up with the most recent MathWorks releases, the NXP S32K3xx 1.3.0 Toolbox is fully compatible with MATLAB versions starting with MATLAB R2021a.
From what I understand, you tried the R2022a version, and everything works properly. Have you tried using the R2021a version as well? Does it behave correctly?
Best regards,
Dragos
Hi Dragos,
Thanks for the speedy reply. I haven't tried 2021a - I suspect it will work just fine. However I do need to work with Matlab 2020a for this particular project, so switching to a newer version is not an option. If there is a compatibility issue, would an earlier release of the NXP Model-Based Toolbox (like 1.2?) work with Matlab 2020a "natively"? And if so, could I uninstall the current 1.3 toolbox and replace it with this earlier one?
Thanks!
Cosmin
Quick comment / observation: I believe S32K1 support does extend back to R2020a and older releases but S32K3 doesn't / wouldn't because the MCU wasn't available in 2020. It is a non-trivial effort to propagate support to prior releases. IIRC NXP used R2021a to build he S32K3 support, which was the current SW release at the time of development.
I will note that commonly MathWorks supports the most current 4-6 releases; so even for us R2020a is starting to get old. I would encourage you and your company / project to update to a more current version of MathWorks software, but I also understand sometimes you are locked into a stable / tested / verified MathWorks release; and have to manage using that the best you can.
Cheers,
-Brian
MathWorks
Hey Brian,
Thanks for the feedback - that's good to know. We're normally running on newer versions of Matlab, it's just this project involving external partners which I was struggling with. Interestingly, what seems to have solved my issue is switching to version 1.2 of the S32K3xx toolbox - all works as expected now, not sure if intended or just a happy coincidence...
Cosmin