• Recent
    • Tags
    • Popular
    • Register
    • Login

    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.

    Radix IoT Website Mango 3 Documentation Website Mango 4 Documentation Website Mango 5 Documentation Website

    Custom Display Unit

    User help
    3
    8
    1.7k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • BGB
      BG
      last edited by

      Hello All,
      I am using the following modules:
      Mango Core: 3.6.0
      Mango API: 3.6.0
      Mango UI: 3.6.1
      Platform: Centos 7.4.1708
      Java Version: 1.8.0_161
      Browser: Chrome 75.0.3770.100 (Official Build) (64-bit)

      With the new data source UI I was glad to see the tick box for Custom Display Unit as some of our data is not in the standard SI units. So I ticked the box as shown in the screenshot.

      0_1562327893840_8add9c4a-7d3a-4f4c-bd7c-02a123a66b26-image.png

      However if I put our non standard unit value in the either the Unit or the Display Unit (or both) I get an exception error or validation error and cannot save the data point. The help page for the point properties does not mention the Custom Display Unit as an option.

      Is this working yet? It would be nice to be able to enter engineering units that are not in the accepted lists.

      Cheers

      Brian

      1 Reply Last reply Reply Quote 0
      • phildunlapP
        phildunlap
        last edited by phildunlap

        Hi Brian,

        Without both units being in the library's set of units, it cannot know how to perform the unit conversion. The analog text render provides the ability to override the unit with a suffix to display instead. You can use the suffix even if you convert it to another unit, although I'm not sure why one would do so.

        As far as defining new units, I have answered that question here:
        https://forum.infiniteautomation.com/topic/2382/custom-point-units

        The git issue is here:
        https://github.com/infiniteautomation/ma-core-public/issues/309

        There isn't a good way to hack up a solution. The proper solution currently would be to write a ModuleElementDefinition with a preInitialize method that added units to com.serotonin.m2m2.util.UnitUtil, https://github.com/infiniteautomation/ma-core-public/blob/0c45aa13c3974904ce9bfad1dcec7cd7f7cfffa4/Core/src/com/serotonin/m2m2/util/UnitUtil.java

        One could add that that class file into an existing module's jar if one didn't want to deal with the other components of a module, but one would have to remember to do that at update (also one would have to update their module with each minor release version, 3.5 to 3.6 for instance, if one wrote a module).

        The reason a hack like adding them via an event handler on the Mango startup event is that it would generate exceptions when deserializing points, which would happen before the startup event was raised.

        Edit: Formerly "Convert unit for display"

        1 Reply Last reply Reply Quote 0
        • BGB
          BG
          last edited by BG

          Hello Phil,
          Thank you for the reply. I will follow up on your suggestions.
          In Mango 2, I was able to use any set of text as the engineering units for the DGLUX displays.
          I was hoping that the addition of the custom units in Mango UI 3.6.1 would similarly allow the use of any text.
          We only need these engineering units for display and logging, They will not be used for conversions since we write the script in the Meta Data points to convert anything we require converted.
          Unfortunately the Analog Text Renderer in MangoUI 3.6.1 does not add the suffix to the gauge data displays.

          Cheers

          Brian

          1 Reply Last reply Reply Quote 0
          • Jared WiltshireJ
            Jared Wiltshire
            last edited by

            @BG firstly, what unit are you trying to display?

            @bg said in Custom Display Unit:

            Unfortunately the Analog Text Renderer in MangoUI 3.6.1 does not add the suffix to the gauge data displays.

            I just tested it and it does? Did you refresh the page?

            Developer at Radix IoT

            1 Reply Last reply Reply Quote 0
            • BGB
              BG
              last edited by

              Hello Jared,
              At the time I did refresh and waited for the data point to update naturally. The text did not appear.
              However. I just went back to the display to verify before replying and the text has appeared now.

              Thank you. The text renderer is all I need for these data points.

              cheers

              Brian

              1 Reply Last reply Reply Quote 0
              • BGB
                BG
                last edited by BG

                P.S.
                The help file for the text rendering suggest that symbols from the HTML entities could be used. I can't seem to get those to work. I only ever get the text for the entity showing up on the gauge. Such as ° shows up as
                0_1562603220692_14b6f46f-3ce7-4053-869d-c2c023abcbeb-image.png

                I don't want to use the deg symbol but was trying for different symbols as an experiment.

                Cheers

                Brian

                1 Reply Last reply Reply Quote 0
                • phildunlapP
                  phildunlap
                  last edited by phildunlap

                  You could paste the symbol into the suffix field.

                  That note in the help should be removed, thanks for bringing it to our attention. It will not process HTML, as that is a code injection vector. Old versions of Mango enable one to encode HTML into all sorts of places in the old UI, which is generally bad, but for security reasons the old UI had all that audited and prevented throughout the 3.4 core series.

                  1 Reply Last reply Reply Quote 0
                  • BGB
                    BG
                    last edited by

                    OK Thank you for the quick response Phil.

                    Cheers

                    Brian

                    1 Reply Last reply Reply Quote 0
                    • First post
                      Last post