<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[ModbusRTU, BacnetIP publisher, readonly points?]]></title><description><![CDATA[<p dir="auto">Hi, we are connecting our system to mangoES via modbus rtu.<br />
All works ok withing mango, we can read points, write points, no problem.</p>
<p dir="auto">When publishing points using bacnet ip publisher, we can't write point values to modbus points.<br />
We tried changing write priority (1 and 16), but it doesnt help.</p>
<p dir="auto">We recreated the issue using a simple modbus relay module running at 9600 bauds and trying to write to it using another mango instance. We write virtual vars just fine, but the modbus point just stays the same (we can write to it just fine in the watchlist)</p>
<p dir="auto">I attach the config we used on our tests, using mango: (core 2.6.0 build 373, bacnet 2.2.0, and modbus 1.6.0 )</p>
<pre><code>$ java -version
openjdk version "1.8.0_66-internal"
</code></pre>
<p dir="auto">config on the 'publisher' side</p>
<pre><code>{
   "dataSources":[
      {
         "xid":"DS_362292",
         "name":"bugtest",
         "enabled":true,
         "type":"VIRTUAL",
         "alarmLevels":{
            "POLL_ABORTED":"URGENT"
         },
         "purgeType":"YEARS",
         "updatePeriodType":"HOURS",
         "updatePeriods":9999,
         "editPermission":"",
         "purgeOverride":false,
         "purgePeriod":1
      },
      {
         "xid":"DS_277802",
         "name":"modSerial",
         "enabled":true,
         "type":"MODBUS_SERIAL",
         "alarmLevels":{
            "POINT_WRITE_EXCEPTION":"URGENT",
            "POLL_ABORTED":"URGENT",
            "DATA_SOURCE_EXCEPTION":"URGENT",
            "POINT_READ_EXCEPTION":"URGENT"
         },
         "purgeType":"YEARS",
         "updatePeriodType":"HOURS",
         "concurrency":"SYNC_TRANSPORT",
         "baudRate":9600,
         "characterSpacing":0,
         "commPortId":"\/dev\/ttyUSB0",
         "dataBits":8,
         "echo":false,
         "encoding":"RTU",
         "flowControlIn":0,
         "flowControlOut":0,
         "messageFrameSpacing":0,
         "overrideTiming":false,
         "parity":0,
         "stopBits":2,
         "contiguousBatches":false,
         "createSlaveMonitorPoints":false,
         "discardDataDelay":0,
         "ioLogFileSizeMBytes":1.0,
         "logIO":false,
         "maxHistoricalIOLogs":1,
         "maxReadBitCount":2000,
         "maxReadRegisterCount":125,
         "maxWriteRegisterCount":120,
         "multipleWritesOnly":false,
         "quantize":false,
         "retries":2,
         "timeout":500,
         "updatePeriods":5,
         "editPermission":"",
         "purgeOverride":false,
         "purgePeriod":1
      }
   ],
   "dataPoints":[
      {
         "xid":"DP_829661",
         "name":"a",
         "enabled":true,
         "loggingType":"INTERVAL",
         "intervalLoggingPeriodType":"MINUTES",
         "intervalLoggingType":"AVERAGE",
         "purgeType":"YEARS",
         "pointLocator":{
            "dataType":"NUMERIC",
            "changeType":{
               "type":"NO_CHANGE",
               "startValue":"0"
            },
            "settable":true
         },
         "eventDetectors":[
         ],
         "plotType":"SPLINE",
         "unit":"",
         "templateXid":"Numeric_Default",
         "chartColour":"black",
         "chartRenderer":{
            "type":"IMAGE",
            "timePeriodType":"DAYS",
            "numberOfPeriods":1
         },
         "dataSourceXid":"DS_362292",
         "defaultCacheSize":1,
         "deviceName":"bugtest",
         "discardExtremeValues":false,
         "discardHighLimit":1.7976931348623157E308,
         "discardLowLimit":-1.7976931348623157E308,
         "intervalLoggingPeriod":1,
         "intervalLoggingSampleWindowSize":0,
         "overrideIntervalLoggingSamples":false,
         "purgeOverride":false,
         "purgePeriod":1,
         "readPermission":"",
         "setPermission":"",
         "textRenderer":{
            "type":"ANALOG",
            "useUnitAsSuffix":true,
            "unit":"",
            "renderedUnit":"",
            "format":"0.00"
         },
         "tolerance":0.0
      },
      {
         "xid":"DP_430617",
         "name":"rele1",
         "enabled":true,
         "loggingType":"INTERVAL",
         "intervalLoggingPeriodType":"MINUTES",
         "intervalLoggingType":"INSTANT",
         "purgeType":"YEARS",
         "pointLocator":{
            "range":"HOLDING_REGISTER",
            "modbusDataType":"TWO_BYTE_INT_UNSIGNED",
            "writeType":"SETTABLE",
            "additive":0.0,
            "bit":0,
            "charset":"ASCII",
            "multiplier":1.0,
            "offset":15,
            "registerCount":0,
            "slaveId":1,
            "slaveMonitor":false
         },
         "eventDetectors":[
         ],
         "plotType":"STEP",
         "unit":"",
         "chartColour":"black",
         "chartRenderer":null,
         "dataSourceXid":"DS_277802",
         "defaultCacheSize":1,
         "deviceName":"modSerial",
         "discardExtremeValues":false,
         "discardHighLimit":1.7976931348623157E308,
         "discardLowLimit":-1.7976931348623157E308,
         "intervalLoggingPeriod":1,
         "intervalLoggingSampleWindowSize":0,
         "overrideIntervalLoggingSamples":false,
         "purgeOverride":false,
         "purgePeriod":1,
         "readPermission":"",
         "setPermission":"",
         "textRenderer":{
            "type":"RANGE",
            "useUnitAsSuffix":true,
            "unit":"",
            "renderedUnit":"",
            "format":"bool",
            "rangeValues":[
               {
                  "colour":"#000000",
                  "from":0.0,
                  "text":"Zero",
                  "to":0.0
               },
               {
                  "colour":"#00ff00",
                  "from":1.0,
                  "text":"One",
                  "to":1.0
               }
            ]
         },
         "tolerance":0.0
      },
      {
         "xid":"DP_836397",
         "name":"rele2",
         "enabled":true,
         "loggingType":"ON_CHANGE",
         "intervalLoggingPeriodType":"MINUTES",
         "intervalLoggingType":"INSTANT",
         "purgeType":"YEARS",
         "pointLocator":{
            "range":"HOLDING_REGISTER",
            "modbusDataType":"TWO_BYTE_INT_UNSIGNED",
            "writeType":"SETTABLE",
            "additive":0.0,
            "bit":0,
            "charset":"ASCII",
            "multiplier":1.0,
            "offset":16,
            "registerCount":0,
            "slaveId":1,
            "slaveMonitor":false
         },
         "eventDetectors":[
         ],
         "plotType":"STEP",
         "unit":"",
         "chartColour":"blue",
         "chartRenderer":null,
         "dataSourceXid":"DS_277802",
         "defaultCacheSize":1,
         "deviceName":"modSerial",
         "discardExtremeValues":false,
         "discardHighLimit":1.7976931348623157E308,
         "discardLowLimit":-1.7976931348623157E308,
         "intervalLoggingPeriod":15,
         "intervalLoggingSampleWindowSize":0,
         "overrideIntervalLoggingSamples":false,
         "purgeOverride":false,
         "purgePeriod":1,
         "readPermission":"",
         "setPermission":"",
         "textRenderer":{
            "type":"RANGE",
            "useUnitAsSuffix":false,
            "unit":"",
            "renderedUnit":"",
            "format":"boolt",
            "rangeValues":[
               {
                  "colour":null,
                  "from":0.0,
                  "text":"Zero",
                  "to":0.0
               },
               {
                  "colour":"#008000",
                  "from":1.0,
                  "text":"One",
                  "to":1.0
               }
            ]
         },
         "tolerance":0.0
      }
   ],
   "publishers":[
      {
         "xid":"PUB_302755",
         "type":"BACnet",
         "points":[
            {
               "dataPointId":"DP_430617",
               "instanceNumber":0,
               "objectName":"modSerial - rele1"
            },
            {
               "dataPointId":"DP_836397",
               "instanceNumber":1,
               "objectName":"modSerial - rele2"
            },
            {
               "dataPointId":"DP_829661",
               "instanceNumber":2,
               "objectName":"bugtest - a"
            }
         ],
         "snapshotSendPeriodType":"MINUTES",
         "localDeviceConfig":"62cb7655-d718-4c40-9552-202efb93cc91",
         "cacheDiscardSize":1000,
         "cacheWarningSize":100,
         "changesOnly":false,
         "enabled":true,
         "name":"bac1",
         "sendSnapshot":false,
         "snapshotSendPeriods":5
      }
   ],
   "BACnetLocalDevices":[
      {
         "baudRate":9600,
         "broadcastAddress":"255.255.255.255",
         "commPortId":"",
         "deviceId":31416,
         "deviceName":"Mango Automation",
         "id":"62cb7655-d718-4c40-9552-202efb93cc91",
         "localBindAddress":"0.0.0.0",
         "localNetworkNumber":0,
         "port":47808,
         "retries":2,
         "retryCount":1,
         "segTimeout":5000,
         "segWindow":5,
         "thisStation":0,
         "timeout":6000,
         "type":"ip"
      }
   ]
}
</code></pre>
<p dir="auto">on the client side</p>
<pre><code>{
   "dataSources":[
      {
         "xid":"DS_467782",
         "name":"qwe",
         "enabled":true,
         "type":"BACnetIP",
         "alarmLevels":{
            "INITIALIZATION_EXCEPTION":"URGENT",
            "DEVICE_EXCEPTION":"URGENT",
            "MESSAGE_EXCEPTION":"URGENT"
         },
         "purgeType":"YEARS",
         "updatePeriodType":"MINUTES",
         "covSubscriptionTimeoutMinutes":60,
         "localDeviceConfig":"10d9ca6d-477a-41d2-93ab-9755780520e7",
         "updatePeriods":5,
         "purgeOverride":true,
         "purgePeriod":1
      }
   ],
   "dataPoints":[
      {
         "xid":"DP_166879",
         "name":"rele1",
         "enabled":true,
         "loggingType":"ON_CHANGE",
         "intervalLoggingPeriodType":"MINUTES",
         "intervalLoggingType":"INSTANT",
         "purgeType":"YEARS",
         "pointLocator":{
            "dataType":"NUMERIC",
            "objectType":"ANALOG_VALUE",
            "propertyIdentifier":"PRESENT_VALUE",
            "link":"",
            "mac":"192.168.3.145:47808",
            "networkNumber":0,
            "objectInstanceNumber":0,
            "remoteDeviceInstanceNumber":31416,
            "settable":true,
            "useCovSubscription":true,
            "writePriority":1
         },
         "eventDetectors":[
         ],
         "plotType":"STEP",
         "unit":"",
         "chartColour":"",
         "chartRenderer":null,
         "dataSourceXid":"DS_467782",
         "defaultCacheSize":1,
         "deviceName":"qwe",
         "discardExtremeValues":false,
         "discardHighLimit":1.7976931348623157E308,
         "discardLowLimit":-1.7976931348623157E308,
         "intervalLoggingPeriod":15,
         "intervalLoggingSampleWindowSize":0,
         "overrideIntervalLoggingSamples":false,
         "purgeOverride":true,
         "purgePeriod":1,
         "textRenderer":{
            "type":"PLAIN",
            "useUnitAsSuffix":true,
            "unit":"",
            "renderedUnit":"",
            "suffix":""
         },
         "tolerance":0.0
      },
      {
         "xid":"DP_946499",
         "name":"rele2",
         "enabled":true,
         "loggingType":"ON_CHANGE",
         "intervalLoggingPeriodType":"MINUTES",
         "intervalLoggingType":"INSTANT",
         "purgeType":"YEARS",
         "pointLocator":{
            "dataType":"NUMERIC",
            "objectType":"ANALOG_VALUE",
            "propertyIdentifier":"PRESENT_VALUE",
            "link":"",
            "mac":"192.168.3.145:47808",
            "networkNumber":0,
            "objectInstanceNumber":1,
            "remoteDeviceInstanceNumber":31416,
            "settable":true,
            "useCovSubscription":true,
            "writePriority":1
         },
         "eventDetectors":[
         ],
         "plotType":"STEP",
         "unit":"",
         "chartColour":"",
         "chartRenderer":null,
         "dataSourceXid":"DS_467782",
         "defaultCacheSize":1,
         "deviceName":"qwe",
         "discardExtremeValues":false,
         "discardHighLimit":0.0,
         "discardLowLimit":0.0,
         "intervalLoggingPeriod":15,
         "intervalLoggingSampleWindowSize":0,
         "overrideIntervalLoggingSamples":false,
         "purgeOverride":true,
         "purgePeriod":1,
         "textRenderer":{
            "type":"PLAIN",
            "useUnitAsSuffix":true,
            "unit":"",
            "renderedUnit":"",
            "suffix":""
         },
         "tolerance":0.0
      },
      {
         "xid":"DP_346289",
         "name":"a",
         "enabled":true,
         "loggingType":"ON_CHANGE",
         "intervalLoggingPeriodType":"MINUTES",
         "intervalLoggingType":"INSTANT",
         "purgeType":"YEARS",
         "pointLocator":{
            "dataType":"NUMERIC",
            "objectType":"ANALOG_VALUE",
            "propertyIdentifier":"PRESENT_VALUE",
            "link":"",
            "mac":"192.168.3.145:47808",
            "networkNumber":0,
            "objectInstanceNumber":2,
            "remoteDeviceInstanceNumber":31416,
            "settable":true,
            "useCovSubscription":true,
            "writePriority":1
         },
         "eventDetectors":[
         ],
         "plotType":"STEP",
         "unit":"",
         "chartColour":"",
         "chartRenderer":null,
         "dataSourceXid":"DS_467782",
         "defaultCacheSize":1,
         "deviceName":"qwe",
         "discardExtremeValues":false,
         "discardHighLimit":0.0,
         "discardLowLimit":0.0,
         "intervalLoggingPeriod":15,
         "intervalLoggingSampleWindowSize":0,
         "overrideIntervalLoggingSamples":false,
         "purgeOverride":true,
         "purgePeriod":1,
         "textRenderer":{
            "type":"PLAIN",
            "useUnitAsSuffix":true,
            "unit":"",
            "renderedUnit":"",
            "suffix":""
         },
         "tolerance":0.0
      }
   ],
   "BACnetLocalDevices":[
      {
         "baudRate":9600,
         "broadcastAddress":"255.255.255.255",
         "commPortId":"",
         "deviceId":31417,
         "deviceName":"Mango Automation",
         "id":"10d9ca6d-477a-41d2-93ab-9755780520e7",
         "localBindAddress":"0.0.0.0",
         "localNetworkNumber":0,
         "port":47808,
         "retries":2,
         "retryCount":1,
         "segTimeout":5000,
         "segWindow":5,
         "strict":true,
         "thisStation":0,
         "timeout":6000,
         "type":"ip"
      }
   ]
}
</code></pre>
]]></description><link>https://forum.mango-os.com/topic/2122/modbusrtu-bacnetip-publisher-readonly-points</link><generator>RSS for Node</generator><lastBuildDate>Wed, 10 Jun 2026 00:24:15 GMT</lastBuildDate><atom:link href="https://forum.mango-os.com/topic/2122.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 09 Feb 2016 18:08:52 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to ModbusRTU, BacnetIP publisher, readonly points? on Tue, 16 Feb 2016 01:53:11 GMT]]></title><description><![CDATA[<p dir="auto">Hmmm, ok. Thanks for the fast response.<br />
How is it then, that virtual points can be written with the publisher?<br />
Also, we tested one more thing:</p>
<ul>
<li>we had our modbus point <strong>A</strong></li>
<li>we created a virtual data point <strong>VirtA</strong></li>
<li>we created two 'onchange' point links, <strong>A-&gt;VirtA</strong> and <strong>VirtA-&gt;A</strong></li>
<li>voilá, it worked, point <strong>A</strong> could be written using the bacnet publisher!</li>
<li>(it also worked using a metapoint and a single pointlink)</li>
</ul>
<p dir="auto">thoughts?</p>
]]></description><link>https://forum.mango-os.com/post/11003</link><guid isPermaLink="true">https://forum.mango-os.com/post/11003</guid><dc:creator><![CDATA[jmpy]]></dc:creator><pubDate>Tue, 16 Feb 2016 01:53:11 GMT</pubDate></item><item><title><![CDATA[Reply to ModbusRTU, BacnetIP publisher, readonly points? on Tue, 09 Feb 2016 18:21:51 GMT]]></title><description><![CDATA[<p dir="auto">The BACnet publisher only supports reading point values and does not support setting values.  We are planning to add this feature to it.  The Modbus publisher does support writing values.  We have a git issue for it that you can watch to be notified once the feature is added.<br />
<a href="https://github.com/infiniteautomation/ma-core-public/issues/387" rel="nofollow ugc">https://github.com/infiniteautomation/ma-core-public/issues/387</a></p>
<p dir="auto">Thanks,<br />
Joel.</p>
]]></description><link>https://forum.mango-os.com/post/10992</link><guid isPermaLink="true">https://forum.mango-os.com/post/10992</guid><dc:creator><![CDATA[JoelHaggar]]></dc:creator><pubDate>Tue, 09 Feb 2016 18:21:51 GMT</pubDate></item></channel></rss>