Common IO Settings
Every input and output shares a small set of user-facing settings, regardless of its type. Type-specific options are documented on each IO's own page.
Schema: the
InputandOutputmessages inconfig/Config.proto. Several fields on those messages are managed internally and are not shown to the user (datalogger channel, type, min/max, unit, preset).
Shared settings
| Setting | Applies to | Meaning |
|---|---|---|
| Name | All IO | Human-readable name shown throughout the app (e.g. Oil Temp, Line Pressure Solenoid). Everything else — maps, drivers, other IO — references this IO by its alias. |
| Pin | Hardware IO only | The physical pin the IO is bound to. Logical/computed IO (maths, compare, map, etc.) reference other IO instead and have no pin; CAN IO uses the CAN bus. |
Value scale
Many values follow a common full-scale convention of 1024:
- Booleans: true = 1024, false = 0 (e.g. a
Compare Input or a
Digital Input that is on).
- Percentages / proportions: full scale = 1024 (e.g. TPS 100 % = 1024).
This is why threshold-based features use 512 as the mid-point (half of 1024).
Good practice
- Give every IO a clear, unique alias — everything else references it by name.
- For hardware IO, choose the pin to match how the device is physically wired.