> For the complete documentation index, see [llms.txt](https://docs.intrepidcs.com/vspy-3-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.intrepidcs.com/vspy-3-documentation/3.9.11/shared-features-in-vehicle-spy/shared-features-calculated-signal-editor/shared-features-calculated-analog-or-digital-signals.md).

# Shared Features: Calculated Analog or Digital Signals

An [Application Signal](/vspy-3-documentation/3.9.11/vehicle-spy-main-menus/main-menu-scripting-and-automation/application-signals.md) or a [Tx Panel signal](/vspy-3-documentation/3.9.11/vehicle-spy-main-menus/main-menu-spy-networks/transmit-panel/dynamic-transmit-message-bytes.md) can have a numeric value which can be interpreted as an analog or digital [Signal Type](/vspy-3-documentation/3.9.11/vehicle-spy-main-menus/main-menu-spy-networks/message-editor/message-signals/message-signal-type.md). There are many different ways a signal can be calculated. The different calculations are created with the [Setup Calculated Signal](/vspy-3-documentation/3.9.11/shared-features-in-vehicle-spy/shared-features-calculated-signal-editor.md) screen. The descriptions for the different options are listed in Table 1 below.\
\
If a signal property has an equation button (![](https://cdn.intrepidcs.net/support/VehicleSpy/assets/spyEQ.gif)) next to it, you can enter an [equation](/vspy-3-documentation/3.9.11/shared-features-in-vehicle-spy/shared-features-expression-builder.md) for the signal instead of a static value. This will let you modify signals based on other Vehicle Spy data. For example, you could use a knob to change the frequency of a sine wave.

**Table 1: Listing of Numeric Calculated Signal Types**

<table><thead><tr><th width="355" align="center">Calculated Signal Type</th><th align="center">Description</th></tr></thead><tbody><tr><td align="center"><p><strong>Random Data</strong><br><strong>Properties</strong>: Min, Max</p><p></p><p><br><img src="https://2673726158-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdYdvinhoJh0IN6rV8uo3%2Fuploads%2FY4krstJU4cTRpZqxe1tj%2FspyCalcRandom.gif?alt=media&amp;token=76010ef8-9db5-4a16-ab5b-3bf29464c9bc" alt="" data-size="original"></p></td><td align="center">This signal calculates a random value between the Min and Max properties.</td></tr><tr><td align="center"><p><strong>Sinusoidal Wave</strong><br><strong>Properties</strong>: Min, Max, Frequency, Phase</p><p></p><p>               <img src="https://2673726158-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdYdvinhoJh0IN6rV8uo3%2Fuploads%2FPxNMePbO2dpGzYh8LqMw%2FspyCalcSine.gif?alt=media&amp;token=b020836c-4c0e-4fab-b405-289bc1de5b73" alt="" data-size="original">                                               </p></td><td align="center">This signal creates a sine wave between the Min and Max value with the specified frequency. It will also delay the waveform in relation to others using the Phase parameter.</td></tr><tr><td align="center"><p><strong>Ramp Properties</strong>: Min, Max, Frequency, Phase</p><p>         </p><p><img src="https://2673726158-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdYdvinhoJh0IN6rV8uo3%2Fuploads%2FcBVwam21h4x9IEn94U5N%2FspyCalcRamp.gif?alt=media&amp;token=1218eff9-627e-4004-997a-ec3058c6ae62" alt="" data-size="original"></p></td><td align="center">This signal creates a ramp wave between the Min and Max value with the specified frequency. It will also delay the waveform in relation to others using the Phase parameter.</td></tr><tr><td align="center"><p><strong>Triangle</strong><br><strong>Properties</strong>: Min, Max, Frequency, Phase</p><p></p><p><img src="https://2673726158-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdYdvinhoJh0IN6rV8uo3%2Fuploads%2FpOw3xYzWBcAytaqwvQYT%2FspyCalcTri.gif?alt=media&amp;token=a6cc63ee-f2db-47bc-ac06-23c316ab05aa" alt=""></p></td><td align="center">This signal creates a Triangle wave between the Min and Max value with the specified frequency. It will also delay the waveform in relation to others using the Phase parameter.</td></tr><tr><td align="center"><p><strong>Square</strong><br><strong>Properties</strong>: Min, Max, Frequency, Phase, Duty Cycle</p><p></p><p><img src="https://2673726158-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdYdvinhoJh0IN6rV8uo3%2Fuploads%2F3peTfZGVMj5IlTkQO9xl%2FspyCalcSquare.gif?alt=media&amp;token=cfd56264-4933-4df5-bc03-1c1f9303389c" alt=""></p></td><td align="center">This signal creates a square wave between the Min and Max value with the specified frequency and duty cycle. It will also delay the waveform in relation to others using the Phase parameter.</td></tr><tr><td align="center"><p><strong>Custom List</strong><br><strong>Properties</strong>: List of Points</p><p></p><p><img src="https://2673726158-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdYdvinhoJh0IN6rV8uo3%2Fuploads%2F6UPx4zXFGSzHhmAwYmk1%2FspyCalcList.gif?alt=media&amp;token=36ea4baa-b698-4923-abae-6e853b46299f" alt=""></p></td><td align="center">This calculation will replay a list of values into the signal. After it replays the list it will start over at the first list item.</td></tr><tr><td align="center"><p><strong>Equation Based</strong><br><strong>Properties</strong>: Min, Max, Equation</p><p></p><p><img src="https://2673726158-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdYdvinhoJh0IN6rV8uo3%2Fuploads%2FYWfwlbFGhu5oerRGIjhD%2FspyCalcEquation.gif?alt=media&amp;token=ee483780-83d8-4bec-bb4e-7029fe3d1d49" alt="" data-size="original"></p></td><td align="center">This calculation will use an <a href="/vspy-3-documentation/3.9.11/shared-features-in-vehicle-spy/shared-features-expression-builder.md">Expression Builder</a> equation to update a signal. The Min and Max properties are optional. Leave them blank if you do not want to use them. If not blank, a Min and/or Max limit will be applied to the result.</td></tr><tr><td align="center"><p><strong>Static Value</strong><br><strong>Properties</strong>: Value</p><p></p><p><img src="https://2673726158-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdYdvinhoJh0IN6rV8uo3%2Fuploads%2FjsMhmJ4JgtQtKavg1rE4%2FspyCalcStaticVal.gif?alt=media&amp;token=f026a2a1-9cc7-4e6f-b8b5-f43c607673f1" alt=""></p></td><td align="center">This calculation will use the static value entered in the value entry.</td></tr><tr><td align="center"><p><strong>Remote Signal</strong><br><strong>Properties</strong>: Remote Server, Application Signal</p><p></p><p><img src="https://2673726158-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdYdvinhoJh0IN6rV8uo3%2Fuploads%2FQ9Vrhxk2Ph5JZdGeAsEn%2FspyCalcRemote.gif?alt=media&amp;token=f91afe3d-153e-4909-a04a-b495fb700224" alt=""></p></td><td align="center">This calculation will use an application signal value from another instance of Vehicle Spy on a network. The parameters for this type of application signal are the Remote server to connect to and the application signal to read in. The Update List button will repopulate the dropdown lists.</td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.intrepidcs.com/vspy-3-documentation/3.9.11/shared-features-in-vehicle-spy/shared-features-calculated-signal-editor/shared-features-calculated-analog-or-digital-signals.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
