Please Note This forum exists for community support for the Mango product family and the Radix IoT Platform. Although Radix IoT employees participate in this forum from time to time, there is no guarantee of a response to anything posted here, nor can Radix IoT, LLC guarantee the accuracy of any information expressed or conveyed. Specific project questions from customers with active support contracts are asked to send requests to support@radixiot.com.

Radix IoT Website Mango 3 Documentation Website Mango 4 Documentation Website

  • Hi,
    I'm wanting to use the mango scada on a raspberry PI Does anyone know if there is a way to pull the data from something like this (http://wiki.seeed.cc/125Khz_RFID_module-UART/) into the scada?

    Regards
    Billy


  • Hi Billy,

    Yes, quite possible. You could get started with a Serial Data Source. You'll need to identify the serial port, find the port settings in the device documentation (baud rate, parity, etc), and set up the regex to capture in incoming data.

    Here's the JSON for my serial data source:

    {
       "dataSources":[
          {
             "xid":"DS_0ff77d1f-0d36-4f36-bc2e-0227a4a01b05",
             "name":"RFID Test",
             "enabled":true,
             "type":"SERIAL",
             "alarmLevels":{
                "POINT_READ_PATTERN_MISMATCH_EVENT":"URGENT",
                "POINT_WRITE_EXCEPTION":"URGENT",
                "DATA_SOURCE_EXCEPTION":"URGENT",
                "POINT_READ_EXCEPTION":"URGENT"
             },
             "purgeType":"YEARS",
             "baudRate":9600,
             "commPortId":"COMM",
             "dataBits":8,
             "flowControlIn":0,
             "flowControlOut":0,
             "hex":true,
             "ioLogFileSizeMBytes":1.0,
             "logIO":false,
             "maxHistoricalIOLogs":1,
             "maxMessageSize":1024,
             "messageRegex":"()02.*",
             "messageTerminator":"03",
             "parity":0,
             "pointIdentifierIndex":1,
             "readTimeout":1000,
             "stopBits":1,
             "useTerminator":true,
             "editPermission":"",
             "purgeOverride":false,
             "purgePeriod":1
          }
       ],
       "dataPoints":[
          {
             "xid":"DP_8b4d3826-55aa-4586-bff0-bfcce63d4e31",
             "name":"Catch All",
             "enabled":true,
             "loggingType":"ON_CHANGE",
             "intervalLoggingPeriodType":"MINUTES",
             "intervalLoggingType":"INSTANT",
             "purgeType":"YEARS",
             "pointLocator":{
                "dataType":"ALPHANUMERIC",
                "pointIdentifier":"",
                "valueIndex":0,
                "valueRegex":".*"
             },
             "eventDetectors":[
             ],
             "plotType":"STEP",
             "rollup":"NONE",
             "unit":"",
             "templateXid":"Alphanumeric_Default",
             "chartColour":"",
             "chartRenderer":{
                "type":"TABLE",
                "limit":10
             },
             "dataSourceXid":"DS_0ff77d1f-0d36-4f36-bc2e-0227a4a01b05",
             "defaultCacheSize":1,
             "deviceName":"RFID Test",
             "discardExtremeValues":false,
             "discardHighLimit":1.7976931348623157E308,
             "discardLowLimit":-1.7976931348623157E308,
             "intervalLoggingPeriod":15,
             "intervalLoggingSampleWindowSize":0,
             "overrideIntervalLoggingSamples":false,
             "preventSetExtremeValues":false,
             "purgeOverride":false,
             "purgePeriod":1,
             "readPermission":"",
             "setExtremeHighLimit":1.7976931348623157E308,
             "setExtremeLowLimit":-1.7976931348623157E308,
             "setPermission":"",
             "textRenderer":{
                "type":"PLAIN",
                "useUnitAsSuffix":true,
                "unit":"",
                "renderedUnit":"",
                "suffix":""
             },
             "tolerance":0.0
          }
       ]
    }
    

    COMM is a server socket virtual serial port I used for testing via:

    echo -n -e "\x02\x30\x31\x30\x30\x30\x37\x33\x34\x45\x30\x44\x32\x03" | nc localhost 9000

    So you'll need to select your comm port (probably something like /dev/ttyUSB0)

    The "CatchAll" point in that JSON gets this value after that echo:

    01000734E0D2

    You can either refine the regex on the points on the serial data source to get value from that, or you can use a meta or scripting data source driven on context update to extract the values.