"systeminfos" smartCORE module
Description
The task of the systeminfos module is to provide information about the hardware and software of the device. The data is updated cyclically and written to the smartCORE data pool. It is then made available to other modules and can be queried by other systems via the Scpi interface. Only data is produced, not consumed!
JSON configuration
The following section describes the entire JSON configuration of the module and the individual parameters. The module is divided into various subject areas that provide information on different device/system areas.
- hardware
- file system
- modem
- cpuinfo
- device
- config
- metainfo
- network
hardware
Signal | Data type | Unit | Description |
---|---|---|---|
BoardMajorVersion | int8 | Major version number of the device board | |
BoardMinorVersion | int8 | Minor version number of the device board | |
BoardVariantInfo | String | String with information on the board variant. For smartMini e.g. "smartMINI V2.3" | |
SocVariantInfo | String | String with information on the socvarainte. For smartMini e.g. "TX6S-8035" | |
"CanBusName "FramesAvailable | bool | Specifies whether CAN bus data is received via this socketcan interface. | |
ActiveCanInterfaces | uint16 | Number of all CAN bus interfaces active/configured in the system that were found on the device. Only CAN bus interfaces of type "socketcan" are currently supported! |
filesystem
Provides information on "/sde/" and optionally on other partitions.
Signal | Data type | Unit | Description |
---|---|---|---|
SDCard.Status | bool | SD card ("/sde/") available and mounted or not. | |
SDCard.Free | float | GB | Available free memory on the SD card |
SDCard.Used | float | GB | Used memory on the SD card |
SDCard.Size | float | GB | Total size of the SD card. |
Further partitions can be entered in the configuration, which are produced as signals. See example configuration below.
modem
If the modem is switched on, this area provides information on the modem's mobile connection.
Signal | Data type | Unit | Description |
---|---|---|---|
ICCID | String | The ICCID of the SIM card. | |
RSSI | int32 | dBm | Received Signal Strength Indicator (RSSI ) is an indicator for the received signal strength. |
Connected | bool | Indicates whether a mobile connection currently exists. | |
CellId | int32 | Mobile cell identification | |
LAC | int32 | In mobile communications (GSM and UMTS), the "Location Area" refers to the current location area of a cell phone within a mobile network. | |
MNC | int32 | "Mobile Network Code" is used to identify a GSM, UMTS or TETRA radio network provider. | |
MCC | int32 | "Mobile Country Code" is a defined country code that is used together with the Mobile Network Code (MNC) to identify a mobile network. | |
Level | String | Specifies the reception strength in the current network. Possible values are: "excellent", "good", "fair", "poor" and "no signal" | |
Network | String | Specifies which mobile network is currently being used. Possible values are: "lte", "gsm", "3g" | |
LevelId | int8 | Specifies the reception strength in the current network. Is specified here as an integer. Possible values are: 4 = "excellent", 3 = "good", 2 = "fair", 1 = "poor" and 0 = "no signal" | |
NetworkId | int8 | Specifies which mobile network is currently being used. Is specified here as an integer. Possible values are: 4 = "lte", 3 = "umts", 2 = "gsm", 1 = "cdma" or 0 = "td-scdma" |
cpuinfo
Signal | Data type | Unit | Description |
---|---|---|---|
Uptime | double | h | Total uptime of the system |
Load | float | % | CPU utilization of the system |
AppRamUsage | float | % | Memory consumption of the smartCORE |
TotalRamUsage | float | % | Total memory usage of the system. |
TotalRam | float | MB | Size of the device's available RAM. |
Temperature | float | °C | Current CPU temperature. Determined from "/sys/class/thermal/thermal_zone0/temp". |
device
Signal | Data type | Unit | Description |
---|---|---|---|
Name | string | Device name | |
App | string | Name of the active app (usually always smartCORE) | |
App_version | string | Software version number of the app | |
DeviceManager | string | Version number of the DeviceManager. | |
Example | string | Info string for the bsp (BoardSupportPackage) of the system. | |
Serial | string | Serial number of the device. | |
AppStarted | int64_t | s | Last start time (UTC) of the smartCORE app in seconds since 1970. |
AppRuntime | uint64_t | min | Runtime of the app in minutes. |
Version | string | Kernel and compiler version from /proc/version. | |
ModemEnabled | bool | Specifies whether the modem is enabled or disabled. | |
clock_synchronized | bool | Specifies whether the system clock is synchronized. | |
PowerSupplyVoltage | float | V | Supply voltage of the system. Is only available on smartRAIL systems. |
BoardTemperature | float | °C | Temperature of the device board. Only available on smartRAIL and smartMini systems. |
config
Signal | Data type | Unit | Description |
---|---|---|---|
StaticModified | int64_t | s | Last modification date (UTC ) of the static configuration file (smartcore.json) in milliseconds since 1970. |
DynamicModified | int64_t | s | Last modification date (UTC) of the dynamic configuration file (smartcore_dynamic.json) in milliseconds since 1970. |
Version | string | Free text field to enable simple versioning of the config. If the field is empty or is not specified in the config, the signal is not transmitted. |
metainfo
Provides all values entered in the configuration as string signals.
Signal | Data type | Unit | Description |
---|---|---|---|
"keys_1" | string | ||
... | |||
"keys_N" | string |
Network
Information on the network connection and uploads of files to cloud instances. The information can be put into relation via the timestamp.
Signal | Data type | Unit | Description |
---|---|---|---|
Upload.speed | float | kBit/s | Upload speed of a file sent to a cloud instance. |
Upload.Filesize | float | kByte | Size of the file that was sent to a cloud instance. |
Upload.CloudIndex | int8 | Index of the cloud instance to which a file was sent. Which cloud has which index can be viewed in the cloud configuration. | |
Upload.ErrorCode | int16 | ErrorCode that is returned if an upload fails. List of codes: https://doc.qt.io/qt-5/qnetworkreply.html#NetworkError-enum | |
WWAN.MonthlyTraffic | float | MByte | Real-time updated, bidirectionally transmitted data volume of the current (billing) month since the reset day, configurable via parameter "resetDayOfMonth", by default on the first of the month |
WWAN.TotalMonthlyTraffic | float | MByte | Bidirectionally transmitted data volume of completed (billing) months, updated at the beginning of the reset day "resetDayOfMonth" |
WWAN.EstimatedDownloadTraffic | int64 | MByte/h | Real-time updated estimate of the download data volume in relation to an hourly specified start time |
WWAN.EstimatedUploadTraffic | int64 | MByte/h | Real-time updated estimate of upload data volume with respect to an hourly specified start time |
Complete configuration
There are no must-have parameters, so no entry needs to be made for any parameter. There is a sensible default value for each parameter so that the module can be run immediately without extensive knowledge of the parameters.
Minimum config
{
"factory": "systeminfos",
"module": "SystemInfos",
"config": {
}
}
Configuration with all parameters
{
"factory": "systeminfos",
"module": "SystemInfos",
"config": {
"timeoutMs": 1000,
"baseModuleNamespace": "System",
"hardware": {
"enabled": true,
"name": "Hardware",
"onChange": true,
"reproductionTimeout": 120
},
"filesystem": {
"enabled": true,
"name": "Filesystem",
"onChange": true,
"reproductionTimeout": 120,
"monitorSdeCard":true,
"partitions":
[
{
"name": "sdi",
"partition":"/sdi/"
}
]
},
"modem": {
"enabled": true,
"name": "Modem",
"onChange": true,
"reproductionTimeout": 120
},
"cpuinfo": {
"enabled": true,
"name": "CPU",
"onChange": false,
"reproductionTimeout": 2
},
"device": {
"enabled": true,
"name": "Device",
"reproductionTimeout": 300
},
"config": {
"enabled": true,
"name": "Config",
"reproductionTimeout": 300,
"versionStr": "Config V1.2"
},
"network": {
"enabled": true,
"name": "Network",
"uploadMinFileSize": 0.8,
"resetDayOfMonth": 1
},
"metainfo": {
"enabled": true,
"name": "Meta",
"reproductionTimeout": 300,
"keys": [
{
"name": "Key1",
"value": "Value1"
},
{
"name": "Decription",
"value": "A new config..."
},
{
"name": "Plant",
"value": "XYZ"
}
]
}
}
}
**Example
The above configuration results in the following signal names for the individual areas:
- "SDCard.Size"
- "System.Filesystem.sdi_used"
- "System.Hardware.BoardMajorVersion"
- "System.Modem.RSSI"
- "System.CPU.Load"
- "System.Device.Serial"
- "System.Config.Version"
- "System.Meta.Key1"
- "System.Meta.Plant"
- "System.Network.Upload.Speed"
- "System.Network.Upload.Filesize"
Parameter list
Parameter Name | Must-Have | Data Type | Default Value | Description |
---|---|---|---|---|
timeoutMs | No | int | 5000 | Execution interval of the module in Ms |
baseModuleNamespace | No | String | "System" | The base namespace. Every channel name in the module's smartCORE begins with this string. |
hardware | No | Object | - | Provides information about the device hardware |
filesystem | No | object | - | Information about the SD card ("/sde/") - size, free and used memory, SD card available and mounted. Further partitions can also be specified in the config, whose properties (size, free and used memory) are then produced. |
modem | No | Object | - | All information about the mobile connection and the ICCD number of the inserted SIM card. |
cpuinfo | No | Object | - | Information on the processor utilization and memory consumption of the system. |
device | No | object | - | Provides version information of the software on the device (yocto, smartCORE, devicemanager) as well as the name and serial number of the system. |
config | No | object | - | Provides information on the configuration files, e.g. last modification date. |
metainfo | No | object | - | Static value pairs ("key-value") can be entered here, which are transmitted and recorded as string signals. |
network | No | Object | - | Provides information about the network, e.g. data rates for uploads of osf files. |
Parameter objects
The parameter objects "filesystem", "modem", "hardware", "cpuinfo", "network" and "device" all have the same parameters. The exception is the "device" object, which does not have an "onlyOnChange" parameter. The "network" area has no "onlyOnChange" and "reproductionTimeout" parameters, as the data is recorded on an event basis.
Parameter Name | Must-Have | Data Type | Default Value | Description |
---|---|---|---|---|
enabled | No | bool | true | Activates the module. If deactivated (false), no signals are created and no data is saved. |
name | No | String | "Module name" | Name or namespace of the area. |
onChange | No | bool | true | Specifies whether values should be saved immediately or not as soon as they have changed. |
reproductionTimeout | No | uint | 120 | Specifies the minimum time interval at which values are saved/recorded, even if they have not changed. |
The "filesystem" area has additional parameters that can only be changed in this area:
Parameter Name | Must-Have | Data Type | Default Value | Description |
---|---|---|---|---|
monitorSdeCard | No | bool | true | Specifies that the SdCard ("/sde/") should be monitored. Normally only available on optiMEAS devices. Can therefore be deactivated. |
partitions | No | Array | - | Can contain a list (JSON array) of other partitions to be monitored and recorded on the system. |
The "network" area has additional parameters that can only be changed in this area:
Parameter Name | Must-Have | Data Type | Default Value | Description |
---|---|---|---|---|
uploadMinFileSize | No | float | 0.5 | Specifies the minimum file size from which a file upload is taken into account and recorded. Is specified in kByte. |
Module information/profile
Information | Value |
---|---|
Author | optiMEAS Measurement and Automation Systems GmbH |
Consumes signals | No |
Produces signals | Yes |
smartCORE Version | >= 0.175 |
Interfaces, protocols & libraries used
- DeviceManager (modem information via notification)
- libhal
Supported systems
- smartMini
- smartMini-S
- smartRAIL