Skip to main content

smartIO MVB module "smartmvb"

Description

The "smartmvb" module communicates with the smartIO MVB interface. It is generally used with the fmproducer module, which suitably extracts the "raw" MVB packet data and produces it into channels. (However, it is also possible in principle to use a "dbc" receiver module, for example, i.e. to specify the channels as a CAN bus DBC file, ...)

Interfaces & protocols used

  • USB
  • MVB
  • Fast Message Dispatching

JSON configuration

The following section describes the entire JSON configuration of the module and explains the individual parameters.

Example configuration (minimum)

    {
"module": "SmartMVB",
"factory": "smartmvb",
"config":{}
},

Example configuration (maximum)

A sample "opticloud" configuration is shown below. This also includes an FmProducer, which produces the corresponding MVB diagnostic information in channels (see "fmproducer" module documentation).

    {
"module": "SmartMVB",
"factory": "smartmvb",
"config":{
"fmd": "smartmvb0",
"logEnabled":false,
"logPath":"/sdi/log/",
"logPrefix": "smartmvb_",
"logSuffix":".log",
"logMaxFileSize":512000,
"logMaxFileCount":10,
"logBufferSize":1000000,
"mvbLines": "AB",
"esdMode":false,
"slaveResponseTimeoutUs":43,
"timebase48Port":-1,
"timebase48ByteOffset":-1,
"errorFramesEnabled":false,
"crcEnabled":false,
"operatingMode": "dispatch",
"eosRestartTimeoutMs":0,
"mvbPorts":[

],
"portFilterDisabled":false,
"mvbMessageDevices":[

],
"messageFilterDisabled":false,
"programFile":"",
"programFileString":"",
"programFileMode": "off"
}
},
{
"module": "FmProducerSmartMVB",
"factory": "fmproducer",
"config":{
"fmd": "smartmvb0",
"bufferSize":1024,
"channels":[
{
"name": "SmartMVBmessageData",
"dataType": "bytearray",
"bufferSize":1024,
"scale":1,
"offset":0,
"physicalDimension":"",
"physicalUnit":"",
"messageKey":10012,
"bitOffset":0,
"bitLength":0,
"imageType": "bytearray",
"produceOnChangeOnly":true,
"absoluteTolerance":0
},
{
"name": "SmartMVBgroupEvent",
"dataType": "bytearray",
"bufferSize":1024,
"scale":1,
"offset":0,
"physicalDimension":"",
"physicalUnit":"",
"messageKey":10013,
"bitOffset":0,
"bitLength":0,
"imageType": "bytearray",
"produceOnChangeOnly":true,
"absoluteTolerance":0
},
{
"name": "SmartMVBsingleEvent",
"dataType": "bytearray",
"bufferSize":1024,
"scale":1,
"offset":0,
"physicalDimension":"",
"physicalUnit":"",
"messageKey":10014,
"bitOffset":0,
"bitLength":0,
"imageType": "bytearray",
"produceOnChangeOnly":true,
"absoluteTolerance":0
}
]
}
},

Module parameters

Parameter NameRequiredData TypeMeaningful Value RangeDefaultDescription
fmdNoSTRINGName of the module instanceName of the Fast Message Dispatcher to which a receiver can be attached
logEnabledNoBOOLfalse, truefalseActivation of module-specific log
logPathNoSTRINGvalid directory path"/sdi/log/"directory for MVB log files
logPrefixNoSTRING"smartmvb_"Prefix for MVB log files
logSuffixNoSTRING".log"Suffix for MVB log files
logMaxFileCountNoINT1 - 12710Max. Number of MVB log files
logMaxFileSizeNoINT1 - 2GB512,000 bytesMax. File size [bytes] of the MVB log file
logPollingIntervalMsNoINT1 -1000Polling interval [ms] for writing the MVB log files
logBufferSizeNoINT1 -1MBBuffer size [bytes] MVB log per polling interval
mvbLinesNoSTRING"A", "B", "AB""AB"Active MVB lines
esdModeNoBOOLfalse, truefalseEMD (false) or ESD (true) Mode
slaveResponseTimeoutUsNoINT43MVB Slave Response Timeout [us]
timebase48PortNoINTvalid MVB portdeactivatedPort for time signal from MVB
timebase48ByteOffsetNoINTvalid MVB Byte OffsetdisabledByte Offset for time signal from MVB
errorFramesEnabledNoBOOLfalse, truefalseDispatching of MVB Error Frames
crcEnabledNoBOOLfalse, truefalseDispatching of CRC information
enhancedLoggingNoBOOLfalse, truefalseEnhanced logging
statusChannelsNoBOOLfalse, truefalseDispatching of MVB status channels (see example for suitable FmProducer configuration)
operatingModeNoSTRING"dispatch", "dump""dispatch"Production in channels (via dispatcher/producer) or logging in log files ("dump")
eosRestartTimeoutMsNoINT-1, 0 -60000 (60s)Delay regarding smartIO restart if EOS (-1 = no restart)
mvbPortsNoJSON Array of UINT16empty JSON ArraySpecification of received MVB ports (empty array => ALL)
portFilterDisabledNoBOOLfalse, truefalseDeactivation of the MVB port frame filter
mvbMessageDevicesNoJSON array with JSON objectsempty JSON arraySpecification of the MVB message devices taken into account (see below)
messageFilterDisabledNoBOOLfalse, truefalseDeactivation of the MVB message frame filter

Specification of the 'mvbMessageDevices'

The mvbMessageDevices are each configured via a JSON object with the following attributes

Parameter NameRequiredData TypeMeaningful Value RangeDefaultDescription
idYESINT1 - 255
isSingleCastSenderNoBOOLfalse, truefalse
isBroadCastSenderNoBOOLfalse, truefalse
isSingleCastReceiverNoBOOLfalse, truefalse
isSingleCastTransceiverNoBOOLfalse, truefalse

Module information

InformationValue
AuthorsoptiMEAS Measurement and Automation Systems GmbH
since smartCORE0.136
Module typeDispatcher (Producer)
Dependenciesany Fast Message Receiver module (usually "fmproducer")