Waves: How Different Types of Data are Drawn

Waves will, by default, choose one of four different ways to draw a signal based on the data inside that signal.  The following is an explanation of the logic that Waves uses to classify each signal.  

Spark Line:

A signal that contains only numerical values is drawn as a spark line (i.e. a line without a labeled y-axis).  Integers, floating point numbers, and fractions are all auto-detected as numerical values.  If a single value in the signal is detected as non-numerical, a spark line will not be drawn by default.  


A signal that has only two values that are "truthy" and "falsey" in nature (e.g. on/off, up/down, enter/leave, 1/0) is drawn as a bit signal.  A value that has an implied true value is drawn high inside the bit signal.  A value that has an implied false value is drawn low inside the bit signal.  Supported values include 1/0, on/off, enable/disable, enter/leave, yes/no, y/n, start/stop, go/stop, set/clear, set/reset, start/pause, up/down, connect/disconnect, connected/disconnected, active/inactive, open/close, high/low, awake/asleep.  

Event Pins:

A signal that has only a single non-numeric value that is repeated over and over (e.g. "hey", "hey", "hey") is drawn as an event pin at each occurrence of that value.


A signal that has multiple non-numeric values is drawn as a label (digital string bus).  

A value of "NULL" or "NaN" is ignored in the above logic for flags, bits, and spark lines.  

Related: Change between Spark Lines, Pins, and Labels

Feedback and Knowledge Base