• P
    pyeager

    I notice there are quite a few modules that are part of a basic installation that I am not using and don't see a future need for in my current application. For example:

    BACnet
    dnp3
    egauge
    envcands
    Haystack
    mbus
    onewire
    pakbus
    pop3
    twilio

    It seems as if removing them would reduce the Mango resource "footprint", i.e. memory and disk space usage. Is this true?

    posted in User help read more
  • P
    pyeager

    @MattFox

    Does the code above not work inside a module?

    posted in User help read more
  • P
    pyeager

    Johana:

    You might find this helpful. It is an example of a technique that I use in global scripts and scripting data sources.

    var query = "eq(deviceName," + source.name + ")&eq(name,Auto Limit)";
    var dataPoint = DataPointQuery.query( query );
    if( dataPoint.size() )
    {
        limit = dataPoint[0].runtime.value;
    }
    else
    {
        LOG.info( source.name + ": Auto Throttle: Auto Limit data point not found ");
        return;
    }
    

    I am not sure whether this works in your context, but perhaps it might be helpful.

    posted in User help read more
  • P
    pyeager

    Phil:

    I discovered something that might be helpful with locating the cause of the issue with multistate data points in virtual data sources.

    It only seems to fail to properly save the state values and start value when the change type is set to "no change".

    posted in Mango feedback read more
  • P
    pyeager

    @johana-crisbany-gamez

    Don't feel bad. It took me a while to figure this out.

    If you define a multistate data point in a virtual data source, you need to define values for the states. On the Virtual data point dialog shown above, when you mouse over the area under Values, up and down arrows will appear at the right side of that field. You can use those arrows to adjust to your first value, or just enter a number directly.

    Once the correct number shows for your first value, hit enter. Your first value will now appear on a white background, like this:

    0_1565901899384_vdpvalues.png

    You will note that the dialog is now helpfully suggesting 2 as the next value. If that works for you, just hit enter, and you will see this:

    0_1565902029284_vdpvalues2.png

    Repeat this process until you have defined all your values for the multistate data point.

    Now when you click in the Start value field, you should see a list of the values you just defined appear over the field. Select the desired value.

    0_1565902718664_vdpstart.png

    The above is what is working for me. However, there is a known bug with this dialog.

    Once you define your multistate data point and save it, if the change type is "no change", when you try to edit it you will not see the state values or the start value you defined. The dialog will not let you save changes until you again enter state values and a start value. This again is a known bug that I expect will be fixed in a future release.

    posted in User help read more
  • P
    pyeager

    If I define a virtual data point with a sinusoidal change, the dialog requires that I enter a value for phase shift. If I define a phase shift and save the settings for that data point, the next time I open that dialog the phase shift is gone, and I have to enter it again before the save button works.

    0_1565627690901_WetBulb.png

    Also, while entering a value for phase shift does appear to have the desired effect, it does not persist across Mango lifecycles - when Mango shuts down and is subsequently restarted, the phase shift is no longer apparent.

    Edit: Possibly related problem

    If I define a multistate virtual data point, there is a field in which the values and start value can be defined.

    After doing so, if I open that dialog again, the values and start value are not shown.
    0_1565628164512_ControlState.png

    posted in Mango feedback read more
  • P
    pyeager

    @phildunlap said in Why doesn't changing a device name update the data points?:

    How have you been copying it? There are a ton of simple ways and it is categorically irrational to disregard however easy it is.

    It is irrational to claim that I am disregarding anything. Did I claim that it was not simple to copy data sources?

    It is quite simple to copy data sources using the legacy web interface. I don't think I need to explain to you how is is done. Indeed, if the copy is given a new name before saving, all of the data points have the correct data source name.

    The point of my original question deals with renaming data sources appearing unnecessarily difficult, not copying data sources.

    I can write you a scripting data source that will ensure all data points are always named with the data source name as their device name if you'd like.

    I am quite capable of writing such a script myself, thank you. It just seems like something that should not be necessary,

    posted in User help read more
  • P
    pyeager

    @phildunlap said in Why doesn't changing a device name update the data points?:

    Have you seen the bulk data point editor in the new UI? It makes changing all the device names for the points on a data source quite simple.
    In the old UI, you could simply export the JSON for the points from the data sources page and do a simple find / replace. So, simple solutions exist if you wish to rename all the points' device names.

    No matter how easy it is, it makes no sense to have to do it each time a Modbus I/P or virtual data source is copied. Bear in mind that I have to train others to do this.

    posted in User help read more
  • P
    pyeager

    @iperry said in Why doesn't changing a device name update the data points?:

    For me, it seemed the data source should be a group of points related by their physical source. The naming was arbitrary.

    That is precisely what I am trying to maintain - data points related by their physical source.

    The physical source is a Modbus I/P device at a unique IP address. Maintaining a relationship between the data points and the data source is desirable.

    The problem comes when I rename the physical data source. The name of the data source recorded in each data point doesn't change. This breaks queries by data source name and data point name.

    One might say "well then, don't rename anything". That might be convenient for the developers, but no so much for this user.

    There are multiple "machines" in our system (around 100 for full implementation). For each machine, there is a Modbus I/P data source that controls the machine, and a virtual data source that keeps track of process variables that don't live on the Modbus I/P device. Scripts access the two data sources and their respective data points by name.

    To create a new machine, it is quite convenient to simply copy the data sources and rename them. Requiring that all the data points be edited seems a unnecessary waste of effort. If data sources are copied and renamed, and the data points are not edited, queries by data source name and data point name now return two results - one for the original data source an done for the copy.

    I makes sense to me that, at least in the case of Modbus I/P and virtual data sources, renaming a data source should update the data source name saved in the data point. I can't imagine an advantage to that not happening.

    posted in User help read more
  • P
    pyeager

    @iperry said in Why doesn't changing a device name update the data points?:

    Perhaps but we could be haggling over terminology and not usage of the value.

    In my situation, I have a pilot project with 80 devices each with 12 MQTT sensor values. It would seem to be a much larger maintenance and organization problem to have each device contained in its own data source, which all connect to the same MQTT broker.

    I am using Modbus I/P devices.

    Each device is a "data source".

    Each device has multiple inputs and outputs.

    Where do you suggest that each input or output data point reside, if not in the data source on which it physically resides?

    posted in User help read more