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.

  • 0 Votes
    2 Posts
    5k Views
    terrypackerT
    @gbccccc first you need to define what "new slave is started successfully means". If just binding to the port and waiting for connections is enough then you can assume that if you call the method and a ModbusInitException is thrown then it is not running. Otherwise it is bound to the port and waiting for connections. If you want to know that something is connected you could extend the TcpSlave class like this: public class MonitoredTcpSlave extends TcpSlave { public MonitoredTcpSlave(int port, boolean encapsulated) { super(port, encapsulated); } public boolean hasConnection() { return !listConnections.isEmpty(); } } As a last resort you could create your own TcpSlave by extending com.serotonin.modbus4j.ModbusSlaveSet.ModbusSlaveSet
  • Quest About Restful API

    User help
    2
    0 Votes
    2 Posts
    1k Views
    CraigWebC
    @sean Are you providing a JWT key in the request ?
  • Uploading an Excel for Reports

    How-To
    5
    0 Votes
    5 Posts
    3k Views
    tractorproviderT
    I think you need to install the updated version.
  • Cannot build with maven for custom module

    Mango feedback
    6
    2 Votes
    6 Posts
    2k Views
    MattFoxM
    @MattFox Good news, was able to implement my own proxy server and direct all https traffic through it. Now can get on and finish what I started! Have a great weekend all! Fox
  • Restoring H2 Database into Mango V3

    User help
    7
    0 Votes
    7 Posts
    3k Views
    MattFoxM
    @fishfacs so you don't have noSql then. There should be a pointvalues table in your h2 db that is populated with data then. Fox
  • BACnet4j Schedule

    BACnet4J general discussion
    2
    0 Votes
    2 Posts
    5k Views
    K
    Can someone help me with above ?
  • Bacnet Alarms

    Moved BACnet4J general discussion
    3
    0 Votes
    3 Posts
    5k Views
    terrypackerT
    @Krish1998 it would help if you would be very specific as to what you are try to do and supply some code examples. However you might be able to use a DeviceEventListener See: https://github.com/MangoAutomation/BACnet4J/blob/master/src/main/java/com/serotonin/bacnet4j/event/DeviceEventListener.java And an example use here: https://github.com/MangoAutomation/BACnet4J-samples/blob/master/src/test/java/com/infiniteautomation/bacnet4j/npdu/ip/BacnetIpListenerDiscoveryExample.java
  • Release Notes for mangoApi 4.5.1

    Announcements
    1
    0 Votes
    1 Posts
    3k Views
    No one has replied
  • 3 Votes
    8 Posts
    7k Views
    mumcs01M
    @MrMaxwell We really appreciate the feedback. We had this in the works, and I wanted you to be the first that saw it. We have a fairly comprehensive tutorial on how Pi-Portfolio works now in the Documentation website. We just got it in today. Here is the link to it [https://docs-v4.radixiot.com/pi-portfolio-help]. I certainly hope this helps, as I know it's a fairly prominent feature with lots of options. As to user management, we are working on something. This area of the software changed a ton in v4, and again in v5 however the v5 changes are mostly cosmetic to allow an easier view. Functionally it's the same (even if you click on a user you will notice the same dialog that was in v4 is there). We will work to change the Documentation to reflect the changes in workflow. If there is anything else in the user management section that you feel is off - please let me know and we can look into it. Again - thanks for the feedback here, that's what the forum is for. All the best, Mike.
  • 1 Votes
    13 Posts
    4k Views
    MattFoxM
    @Benoit watchlists are either statically defined, or dynamically with the use of an rql lookup or with tags. Since you're unfamiliar with scripting data sources it may be outside of your capabilities.. What I'd do is: Use a json data store to store a list of data sources, including the total datapoints and datapoints tagged count. Load said json stire and iterate through each datasource whilst doing a lookup with an offset. Each time completing a batch of points, increment the number of points tagged and update the json store file as well to track once all points tagged are equal to the total points available, move on to the next datasource Fox
  • point set timestamp

    User help
    8
    0 Votes
    8 Posts
    3k Views
    seanS
    @CraigWeb mango version is 3.7.12 this datapoint is temperature sensor point so, recorde is normaly 2x °C so 4376.54 and 459.62 is incorrect, so I want to reset value or delete this 2 values in timestamp [PointValueTime(22.6@2023/05/24 13:30:12.836), PointValueTime(4376.54@2023/05/24 13:35:12.836), PointValueTime(459.62@2023/05/24 13:40:12.836), PointValueTime(22.8@2023/05/24 13:45:12.836), PointValueTime(22.886666666666667@2023/05/24 13:50:12.836)] time = 1684906212836 , point= PointValueTime(22.6@2023/05/24 13:30:12.836) time = 1684906512836 , point= PointValueTime(4376.54@2023/05/24 13:35:12.836) time = 1684906812836 , point= PointValueTime(459.62@2023/05/24 13:40:12.836) time = 1684907112836 , point= PointValueTime(22.8@2023/05/24 13:45:12.836) time = 1684907412836 , point= PointValueTime(22.886666666666667@2023/05/24 13:50:12.836)
  • Release Notes for mangoUI 4.5.1

    Announcements
    1
    0 Votes
    1 Posts
    3k Views
    No one has replied
  • MySQL database restore

    User help
    3
    0 Votes
    3 Posts
    1k Views
    T
    Hi @CraigWeb , actually I was trying to install a new Mango 5 instance. Everything is totally new. These are what I did: 1/ Install MySQL 8.0, create a database (scheme) named mango 2/ Install Mango 5 and paste a mango.properties file with MySQL info as above mentioned in mango_data folder. 3/ Start mango service and change admin password. 4/ Create a data source with some data point. 5/ Backup with Backup feature in System Setting -> SQL backup 6/ Delete data source and restore with System Setting -> SQL backup. 7/ See that orange warning pop up, but the deleted data source and data point is back, but I'm not sure if it normal or not.
  • Mango instance cannot initialize

    Mango Automation general Discussion
    6
    0 Votes
    6 Posts
    6k Views
    T
    @CraigWeb thank you. I start fresh and restore with System settings -> SQL database backup -> select latest core-database-H2 zip file. Is that enough? I check the Data point detail and found nothing in history :| Is there something I miss? I see also see MangoNoSQL-incremental-Mar-12-2023_063732.zip in backup folder but I have no idea how restore this file. Update: I restored from another backup file and found out that that latest is broken. All data is lost. Thank you all for your help.
  • 0 Votes
    9 Posts
    5k Views
    TurboT
    @CraigWeb Heya Craig. Thanks for that! That's exactly what I was thinking. It's absolutely great now that Mango runs under its own user, but that user can't be logged into (at least, at least not without a fair amount of headache). Once CertBot is deployed, Mango will (likely) have no trouble updating them, but on the first run, almost everyone using those scripts will be logging in or SUDOing into root or whatever to make that happen. The easiest solution (I think) is to juts do something like: export mango_paths_data=/opt/mango-data export mango_paths_home=/opt/mango Or something when you sudo in to do these scripts. or you have to enable the mango user account to be loggable-innable, but that's the whole point (I think) of creating a mango-user in the first place, to not have it be a login account.. Which is sound design practice. I'm probably going to try that over the weekend again- Thanks so much for looking through those scripts. When I first was trying this, I thought I was out of my mind, but it turns out there's both an easy solution (at least temporarily) to make this work, and no problem when the certbot hook runs (since it's already running as the mango user). This problem only popped up because the new mango install script does everything under a user it creates, and the interactive config stuff happens because users are logging in and modifying another users's (mangos) settings. It all makes pretty solid sense, but only once you sit down and think through it. Who knew environment variables would continue to be such a headache?
  • Filter behaviour and ma-data-point-selector

    User help
    5
    1 Votes
    5 Posts
    2k Views
    CraigWebC
    @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.
  • Modbus Sniffing Support

    How-To
    4
    0 Votes
    4 Posts
    3k Views
    TurboT
    @MattFox The wires we are sniffing carry modbus/RTU- The format within mango doesn't really matter. I was considering knocking another thing up using that SOCAT -> TCP device to just get an idea of what the points are being moved back and forth, then develop that into a Modbus read store/forward type of affair. We basically have a need to eavesdrop on other systems for whom the documentation is a bit minimal- It's a way to "get around" some legacy systems that have controllers that we can't just swap out for Mango, but still need to gather the data for display. So long as we can get the data into Mango, that'd be swell. I like @terrypacker 's idea of bypassing Modbus4J's waiting room.. I think I can get something working using the serial data source. I'm doing this for the first time next week, so we'll see how complex this is. I don't even have a full understanding (yet) of exactly how dense / fast / complicated the Modbus/RTU data implementation here actually is- It could only be a handful of points. I was just going to sniff first, using SOCAT to listen on the wire, and try and work out a solution based on what I see. I can't think I'm the only one trying to do Modbus Sniffing-type stuff with legacy systems, but then again, I see a lot of stuff that I do seems to be"I've never seen this type of thing before".. Cheers, -Greg
  • Serial Data Source Question (again)

    How-To
    3
    0 Votes
    3 Posts
    6k Views
    TurboT
    @MattFox Yeah- I tried that, too: I just can't get the the thing to receive anything over the serial port. It would be really nice to have a thread / template file available somewhere that says "Here's how you just get Raw Serial into Mango" to overcome the initial confusion over REGEX, which is absolutely common in these threads. People do what I did: They turn it on, try and get a "wildcard" RegEx to make sure mango is receiving something then go develop the interface from there. I have lots of serial customization coming in for our projects, and although the SOCAT <-> Serial TCP thing works okay, it would all be much simpler if I knew that the Mango Serial Device had a good easy starting point.
  • Beginner's guide/documentation?

    BACnet4J general discussion
    5
    0 Votes
    5 Posts
    8k Views
    PreemP
    @Charlie-Holleran Do you have bacnet4j api, thank you very much
  • ON_CHANGE_INTERVAL stops logging

    User help
    9
    0 Votes
    9 Posts
    3k Views
    Xof1986X
    @CraigWeb We just tried to make this change and I noticed a couple of things. There is no option for setting intervalLoggingType once you've set loggingType to "Interval and when point value changes" via the GUI. We ended up just changing the JSON and pushing that out, which it seems to have taken the changes. Also interesting, when hitting the API endpoint for data point details...if the point is configured as ON_CHANGE_INTERVAL it does not return a key for "intervalLoggingType" nor is any value for any keys set to "AVERAGE" but I certainly do see those for points configured as "INTERVAL" I honestly always assumed the way ON_CHANGE_INTERVAL worked was it logs on changes and the current value once per minute, I had no idea this would be averaging over that minute and then recording the average. Anyway...I'll let you know the results, just wanted to give that info.