These seem to be Modbus protocol-specific questions.
Modbus does not have an auto-discovery like BACnet. You can make your own by polling each slave and see if there is any response.
Modbus can only have one master on a network.
Slaves cannot initiate a message they can only respond to a master.
Best posts made by CraigWeb
-
RE: MODBUS JAVA agent for data acquisition
-
RE: Question about duration
Hi Sean
1.On your original point you must make then event detector with your 2 minute duration.
2. Then create a new binary virtual point.
3. go to event handler page and make a event handler like the picture. use the meta point that you created.
4. Now use <ma-get-point-value> on the new meta point and use that for your dashboard logic. -
RE: Script error: TypeError: Cannot read property "get" from undefined multistate
@pedro said in Script error: TypeError: Cannot read property "get" from undefined multistate:
var bulk = 1;
var stagePastDay = stage.past(DAY);
var bulkHours = stagePastDay.data.get(bulk).runtime / (10006060);
return bulkHours;The example on the help documents for the .get() is
return b.past(MONTH, 2).get(false).proportion;
try remove the .data on your .get call. -
Greetings Mango OS community!
Greetings Mango OS community! I am excited to announce my return to the forum and my commitment to helping build this community. As a long-time member and supporter of Mango OS, I believe that this forum can be a valuable resource for developers, users, and enthusiasts alike. I am eager to contribute to the discussions and offer my expertise in any way I can. Let's work together to create a thriving community where we can share our experiences, exchange ideas, and collaborate on exciting new projects.
Please feel free to bump any old topics that were not answered sufficiently. Or open new topics to discuss ideas for Mango. We have a lot of exciting announcements coming later this year with new releases in the pipeline soon.
-
RE: Data Point value is not updating until refresh or force read button is pressed
Hi @joeselbiyoyo
Firstly your data source is set to update at 5-minute intervals. You could reduce this to 5-10 seconds.
your data points are logging the average at 1-minute intervals. There will only be one value to average out. So there will be 5 values that are the same in a 5 min period.you are then reporting the 1-hour average of these values smoothing them out even further.
I would try the following:
1.change the data source to 5-second poll rate.
2.change data point logging to instant -
RE: 2 watchlists on same page?
I have a page with 5 watch lists and haven't had issues. My code looks like this :
<ma-watch-list-get ng-model="designer.KNZ" parameters="designer.KNZ.parameters" on-points-change="designer.KNZ.points = $points" id="KNZ_ID" watch-list-xid="KNZQueryWL" ></ma-watch-list-get> <ma-watch-list-get ng-model="designer.MAT" parameters="designer.MAT.parameters" on-points-change="designer.MAT.points = $points" id="MAT_ID" watch-list-xid="MATQueryWL" ></ma-watch-list-get> <ma-watch-list-get ng-model="designer.WR" parameters="designer.WR.parameters" on-points-change="designer.WR.points = $points" id="WR_ID" watch-list-xid="WRQueryWL" ></ma-watch-list-get> <ma-watch-list-get ng-model="designer.FM" parameters="designer.FM.parameters" on-points-change="designer.FM.points = $points" id="FM_ID" watch-list-xid="flowQueryWL" ></ma-watch-list-get> <ma-watch-list-get ng-model="designer.KAR" parameters="designer.KAR.parameters" on-points-change="designer.KAR.points = $points" id="KAR_ID" watch-list-xid="KARQueryWL" ></ma-watch-list-get>```
-
RE: Pagination for a page
Hi Richard
I believe, you do not need your query string function as there is already a component for this. You will need to register you page with the URL of
?page
<ma-state-params on-change="PageStart = $stateParams.page; stateParams = $stateParams" update- params="updateParams"></ma-state-params>
Here is a help document that explains how to use it with a watchlist:
https://help.infiniteautomation.com/linking-to-dynamic-pages -
Scaling a data point
It would be great if it was possible to scale a data point in the data point Properties eg: have a section by the text rendering properties where a device span and engineering span could be put in.
device span : min= 0, max = 4095
engineering span: min= 0 , max= 100
unit = %
This would convert a 12 bit analog signal to a 0 to 100%
currently I am solving the problem by making a meta data source and a data point for each unit I need to scale. I think adding it to the original data point properties will make it a lot easier when doing bulk configurations in excel. -
RE: Log point values only when "told" to do so...
Hi @bullitbd
The following functions are available in the scripting enviroment. So you could use a meta point to watch if your process is running and then enable the relevant data source. then disable it when the process is not running. Data sources do take some time to start so you might need to look at how you could get a signal before the process starts.
isDataSourceEnabled(xid)
xid - Xid for a data source return true if enabled false if not or DNEenableDataSource(xid)
xid - Xid for a data source, return statusdisableDataSource(xid)
xid - Xid for a data source, return statusisDataPointEnabled(xid)
xid - Xid for a data point return true if enabled false if not or DNE or User does not have permissions -
RE: Help with manipulating SVG
Hi @iperry
Do you plan on dynamically editing the SVG to add more elements or dynamically adding SVG's to the page.
Not sure how you have structured your SVG and if new sensors have a relation to the existing sensors ie: connecting pipes or lines ect.You could do a ng-repeat and dynamically add smaller SVG's for each sensors data that comes from the pages query.
Latest posts made by CraigWeb
-
RE: Cannot build with maven for custom module
Hey @MattFox ill try get some help from the dev team on this.
-
RE: point set timestamp
@sean
Please can you explain what your goal is? Are you trying to change historic values?
Also provide the mango version -
RE: MySQL database restore
Hi @tungthanh500
Im not exactly sure what you are trying to do. Are you trying to restore an H2 back to a MySQL cause that will not work? You will need to convert the database first. -
RE: Mango instance cannot initialize
@tungthanh500
Yes, shut down mango and move those 2 files. When you start up mango it will create a new DB. Once mango has started you can then restore with an backup -
RE: Mango instance cannot initialize
@tungthanh500
Looks like a corrupt db. You will need to start mango with a fresh DB. You do this by moving the current mah2 db to another folderr. Then start mango, it will detect there is no DB then create a new one. You will need to then restore with an old backup. -
RE: Documentation update for SSL / Certbot support for Mango V4.5?
@Turbo
ok, the scripts of fairly long but I've tried to see what's going on. The install script creates a user and sets its home to /opt/mango-data. it always adds path.data=/opt/mango-data to the mango.properties file. These scripts work entirely as expected if executed as the mango user because they can fall back on the $HOME directory and find the mango. properties.When you execute them as another user they cannot find the mango.properties file to search for the path.data properties so the fall back on /opt/mango (this is sourced from the directory they are executed in)
So the environmental variables are required when other users execute the scripts which would be the case with certbot executing the cert-deploy script.
The paths are mentioned in the help doc altho it is not quite clear that the scripts will fail without them... I actually had some frustration myself with the scripts about 2 months ago and got them modified to echo more information so you can know what's going on but that will only be in the next release.
I will also open a ticket for the help docs to include the importance of the environmental variables. Ie without them only the mango user can execute them succesfully.
-
RE: Filter behaviour and ma-data-point-selector
@cbyrne
Ye, I hear what you saying but the component was designed to enable highly accurate filters and we can't lose that. it's needed in the bulk editor and other pages. Maybe adding 2 different filter modes would be helpful to use in general dashboards. -
RE: Documentation update for SSL / Certbot support for Mango V4.5?
It looks to me the source of all your problems is that you don't have mango_paths_data and mango_paths_home set as environment variables. The scripts are very tightly dependent on those variables. The install script does not set those.
and each site has a conf file that includes the renew_hook, so it's going to expect to be able to run that certbot-deploysh script. How can I make sure make the certbot stuff works now that that config file is moved to /opt/mango-data
When you do the first request for a cert you provide the path of the renew_hook, Which is the certbot deploy script. Certbot executes this script straight after a successful renew. This script does 2 things, its creates a P12 from the bundle the letsencrypt provided. it moves the bundle to "ssl.keystore.location" defined in the mango.properties. if "ssl.keystore.location" is absolute(starting with a "/") it will place it in that location. if it is relative(not starting with a "/") it will put it in $mango_paths_data/ssl.keystore.location
if you are saying that it is landing in /opt/mango/ssl.keystore.location I suspect that you are using a relative path and that $mango_paths_data is not set and it is defaulting to mango directory