Error while creating Target starting from reference target 'Aurix Tricore TC3x'

6 views (last 30 days)
Hello,
I'm trying to use the Aurix Tricore TC3x Simulink Support Package to work with my TC36 board.
Since the available hardware options are only TC37, TC38, and TC39, I would like to create a new target for the TC36.
Rather than creating a new target from scratch and manually selecting all the features, I'm trying to inherit everything from the existing target and only modify the shared libraries (iLLD), the linker and the loader.
I'm using the following command:
tgt = createTarget('my TC36', 'Infineon AURIX TC3x','C:/TC36_TargetV1', 'initialize')
But I get this error:
Error using matlabshared.targetsdk.Target/loadReferenceTargetObjects
Unable to load reference target 'Infineon AURIX TC3x'.A table row name subscript must be a character vector, string array, or cell array of
character vectors
Error in matlabshared.targetsdk.Target
Error in createTarget (line 129)
targetObj = matlabshared.targetsdk.Target(name,refTarget,targetFolder,option);
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Proceeding, I discovered that the error comes from:
matlabshared.targetsdk.loadTarget('Infineon AURIX TC3x')
That gives the following:
>> matlabshared.targetsdk.loadTarget('Infineon AURIX TC3x')
Error using {} (line 162)
A table row name subscript must be a character vector, string array, or cell array of character vectors
Error in matlabshared.targetsdk.Target/mapFeature
Error in matlabshared.targetsdk.Target/map
Error in matlabshared.targetsdk.Target/addNewBaremetalScheduler
Error in matlabshared.targetsdk.loadTarget
Error in matlabshared.targetsdk.loadTarget
Error in matlabshared.targetsdk.loadTarget
In particular in braceAssign.m on the line 162.
I also tried to use the loadTarget function with the 'ARM Cortex-A' target and it worked.
Therefore, The problem can be that I don't know the exact target name of Infineon AURIX TC3x to use as the reference target, but I also tried to insert a wrong name argument to the loadTarget function and it gives a different result:
matlabshared.targetsdk.loadTarget('Infineon')
Error using matlabshared.targetsdk.loadTarget
The target 'Infineon' is not registered. Make sure that the name of the target is correct and that its folders are on the MATLAB path. Also, make
sure to run 'sl_refresh_customizations' after you restart MATLAB.
Concluding, how can I use the Infineon AURIX TC3x as reference target?
Thank you!

Answers (1)

Harsh
Harsh on 22 Jul 2025
I encountered a similar issue previously. Apparently, when creating a non-ARM-based target (Aurix TC3xx microcontrollers use TriCore architecture), the "ReferenceTarget" argument is not required. Could you please try using the following format? It might help you avoid the "target is not registered" and "Unable to load reference target" errors:
H = createTarget(targetName,targetFolder)
Also, I would recommend you to also try the following debug step which was mentioned in the error.
"Also, make sure to run 'sl_refresh_customizations' after you restart MATLAB."
This step is important because running "sl_refresh_customizations" forces MATLAB to reload and recognize any new or updated Simulink customizations, such as support packages or target definitions. This can help resolve issues where changes or additions are not detected after installation or modification.
For more details, please refer to the following documentation:
I hope this helps, thanks!

Products


Release

R2024b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!