• phildunlap

    Hi revanreddy,

    I suspect you're looking for the DevieEventListener interface: https://github.com/infiniteautomation/BACnet4J/search?q=DeviceEventListener&unscoped_q=DeviceEventListener. You need to add a listener to the DeviceEventHandler for a particular LocalDevice.

    posted in BACnet4J general discussion read more
  • phildunlap

    I suspect you can find the cause and solution in this git issue: https://github.com/infiniteautomation/ma-core-public/issues/1098

    You might be able to unzip a current mango-3.5.6.jar and take the AnnotatedPointValueTime class and override it.

    posted in Mango Automation general Discussion read more
  • phildunlap

    Technically the free / unlicensed core in 3.x is only to be used for personal, educational, and other non-commercial uses, so I hope that limitation is being honored along with the 300 point limit.

    There are other ways to do it that would not use a data point, and then not get you closer to the limit. Still operating under the assumption this is Modbus, the Modbus4J code is open source and you could create the right requests from a script and submit them to the Modbus master. A script solution is also completely possible (where you read the registers as a different data type and then do bitmasking in a script as you suggest. You would just have to encode what to do to the Modbus point into the point that updates the script's context, and do something like,

    var data = input.value.split("-");
    var mask = 1 << parseInt(data[1]);
    if( data[0] === "0" )
      modbusPoint.set( modbusPoint.value & ~mask );
      modbusPoint.set( modbusPoint.value | mask );

    Or for that matter scripts can use the JsonEmport tool to modify points during script runtime.

    posted in User help read more
  • phildunlap

    @etantonio said in NullPointer exception but info not available:

    gives only the short description of the exception, not the full stack trace

    The second argument is the exception, which logs the stack trace.

    It is not clear to me if all source code of Mango automation are available on git or just something and if there's a chance for me to debug the code directly on my machine using an eclipse JEE Ide?

    Both the 2.8 core and the 2.8 ma-modules-public repos (which contains the Mango API module) are public. Yes you could clone them, launch Mango with the debugger enabled, and attach to it and debug (see the scripts in Mango/bin/ext-available for enabling the debugger).

    The issue you're asking about was solved at some point in the years of updates since the 2.8 core.

    You could also try launching at the command line in case some error information is escaping to stderr.

    posted in Mango Automation general Discussion read more
  • phildunlap

    Hi mentor_13, welcome to the forum!

    Without knowing what protocol you're talking about, it's much more difficult to provide the right answer.

    You are talking about Modbus, yes? If so, then yes. A binary data type point defined in the Holding Register or input Register ranges can be one a single bit of the register (16 bits) and set to only that bit, via the bit setting on the point locator.


    posted in User help read more
  • phildunlap

    I have fixed these things for the eventual 3.6 release!

    posted in User help read more
  • phildunlap

    Hi Thomas,

    Thanks for bringing this to our attention!

    I had a look into it, and it appears that information was initially available in the text renderer of the multistate point, but it appears the Multistate_Default template is clobbering the multistate renderer on the mode point created by default. The SSH point help does indeed appear to have been copied into the PID point help, so that's not a linking error. I'll be sure that gets fixed.

    As for the mode values, here they are:

    OFF = -1;
    DISCOVERY = 0;
    TUNING = 1;
    RUNNING = 2;

    posted in User help read more
  • phildunlap

    Hi Antonio,

    How I can understand where's the problem?

    There's probably a stack trace under that logging statement, which would help with trying to understand. I can see that it would be there. https://github.com/infiniteautomation/ma-modules-public/blob/2.8.x/Mango API/src/com/serotonin/m2m2/web/mvc/rest/v1/publisher/pointValue/PointValueWebSocketPublisher.java#L179

    posted in Mango Automation general Discussion read more
  • phildunlap

    Hi davyv,

    Someone referenced this in another thread and so I thought I'd answer, even though it has been a very long time.

    My suspicion is that you're not seeing or the devices aren't sending the IAmRouterToNetwork messages. Most likely this has to do with them going to broadcast addresses and your having bound a specific address. So, the operating system may not be delivering those broadcasts to your LocalDevice. You could try binding the address or just zeros in the subnet bits, like

    posted in BACnet4J general discussion read more
  • phildunlap

    Hi Jorge,

    You are right with alphanumeric type i got the values... now i need to check why with another type as octetct string didnt work.

    Octet String would only be a set type (for writing data out), and that point. The MIB you posted said it's read-only, so I'm not sure any set type would be able to set a value to it.

    I would have expected Numeric to work as a data type for the OID you posted in the original image, too.

    posted in How-To read more