Int64 Type for Simulink components

Hi!

I was experimenting with data types within the RTMaps Simulink TLC. I have a model with one of the outports configured as int64. There are other data type converter components in the model to ensure proper compilation.

However, once compiled, the component cannot be loaded properly into RTMaps. It faces the following issue (in the console window):

Fatal error: component Component_1: Call to NewOutput(o_int64_T, BrkTrqReq) failed. The given model (o_int64_T) does not exist.

The goal behind this is that many of the inputs and outputs are connected to other RTMaps components with Signed Integer 64 datatype I/O. Using Data Converter components as a workaround gets visually messy, so I wanted to configure the Simulink components to be directly compatible instead.

Thanks!

After further experimenting, I’ve gotten the component to load correctly (something about the macro-component not being updated correctly).

However, now I’m facing the issue that every Simulink I/O configured as Int64 converts to an RTMaps I/O for UTF-8 Text rather than 64-Bit Signed Integer.

image

Hi dparikh,
I see same result in my environment. Current rtmaps.tlc may not support 64bit int data correctly.
My idea may be your workaround.
You can get the double data from uint64 data with “Float Typecast” block, which outputs with same binary of the input. The float typecast accepts only uint64 data, but the sign of int64 data can be output with the sign block and data type conversion block to int8.