-
Notifications
You must be signed in to change notification settings - Fork 3
TopLevelSysTypeConfig
Rob Dobson edited this page Oct 24, 2024
·
2 revisions
| Key | Description | Examples | Notes |
|---|---|---|---|
SystemName |
Specify the name to be returned by RaftSysMod::getSystemName(). This is used in many places such as in the JSON response to the "v" (version) REST API, logging (to name the system), BLE advertising (as a default assuming no other name is provided), MQTT (as the basis for the clientID). |
"IoT Firmware" |
If not specified in the SysType JSON then the build system will default this to the name of the SysType used when building the firmware. It should not be confused with the "friendly name" which is a name given to an instance of the firmware on a device. If not using the RaftCoreApp module as the basis for a Raft app then the constructor of SysManager can override the setting of this value. |
SystemVersion |
The string returned by RaftSysMod::getSystemVersion(). This is generally a SemVer string (e.g. "1.2.3") and is part of the JSON response in the "v" (version) REST API. |
"1.2.3" |
If not specified in the SysType JSON, the build system will set this value based on the SYSTEM_VERSION compiler definition which is generally set in the features.cmake file in the folder for the specific SysType at build time. |
DefaultName |
This is the initial value returned by RaftSysMod::getFriendlyName() when an alternate value is not present in non-volatile storage. It is reported in the JSON response to the "v" (version) REST API and as a default for the advertising name used in BLE. |
"My IoT Device" |
If not specified in the SysType JSON, this will default to the SystemName (see above). A Raft Core API is provided to handle getting/setting/clearing the friendly name, and any value set is retained in non-volatile storage and reinstated on startup. |
Getting Started
- Quick Start
- Architecture at a Glance
- Writing Your First SysMod
- Adding a Comms Channel
- Adding an I2C Device Type
- PlatformIO / Arduino
Scaffolding & Building
- Raft CLI
- SysTypes
- Top-Level SysType
- Build Process
- WebUI Build Pipeline
- File System
- Partitions & Flash
- Local Dev Libraries
- Library Developer Guide
Architecture
Built-in SysMods
- NetworkManager
- BLEManager
- WebServer
- MQTTManager
- SerialConsole
- CommandSerial
- CommandSocket
- CommandFile
- FileManager
- LogManager
- ESPOTAUpdate
- StatePublisher
- Remote Logging
- Data Source Registration
Comms & Protocols
- Stack Overview
- Comms Channels
- ProtocolExchange
- RICREST Protocol
- Real-Time Streams
- Adding REST Endpoints
- Built-in REST Endpoints
- File Download (OKTO)
- OTA Update Flow
Devices & Buses
- DeviceManager
- Device Manager REST API
- Device Factory & Classes
- Device Type Records
- Adding an I2C Device Type
- Device Data Publishing
- Data Logger
- I2C Bus
- I2C Device Scanning
- I2C ID & Polling
- MotorControl Overview
- MotorControl Config
- MotorControl Commands
Helpers
Reference