Main Content

Troubleshoot Signals for Streaming or File Logging

There are signals selected for streaming or connected to File Log blocks in my model that generate an error that starts with:

Cannot stream signal signal_name.

What This Issue Means

This error message for signals selected for streaming or connected to File Log blocks could indicate that the signal has one or more of these issues:

  • The signal is not available in application.

  • The signal does not use globally accessible memory in application.

  • The signal connects to a Send/MessageSend block.

  • The signal has inherited sample time.

  • The signal is discontiguous.

Try These Workarounds

The workarounds for these issues vary. Try these.

Workaround for Signal Not Available

Make sure that these signal types are not being monitored, traced, or logged by name in the real-time application:

  • Virtual or bus signals (including signals from bus creator blocks and virtual blocks)

  • Signals that Simulink optimizes away

  • Signals of complex or multiword data types

  • Blocks without alphanumeric names

Workaround for Signal Not Global Available or Discontiguous Signal

To resolve, try inserting a Signal Copy block (a Signal Conversion block in Signal Copy mode) into the signals that you want to stream. Log the copied signal output instead. If you use a Dashboard block, connect it to the output signal of the Signal Copy block.

Workaround for Signal Connected to Message Block

To resolve, try streaming or file logging the input signal to the Send/MessageSend block. The output of the block (a message) cannot be streamed or logged.

Workaround for Signal Has Inherited Sample Time

To resolve, change the signal sample time from inherited to a value. Signals with inherited sample time cannot be streamed or logged.