• header.categories
    • header.recent
    • header.tags
    • header.popular
    • register
    • login

    Custom Output to display

    scheduled pinned locked moved Scripts
    12 posts 2 posters 4.6k views 1 watching
    loading-more-posts
    • oldest-to-newest
    • newest-to-oldest
    • most-votes
    reply
    • reply-as-topic
    guest-login-reply
    deleted-message
    • D offline
      Darvos
      global:last-edited-by,

      Sure, I want to multiply an input by a variable , put the result in a variable and show it at my dashboard !

      Example : I'm reading a light sensor, I wanna have both the raw value and the valia of the light multiplied by certain number in my dash board!

      So I create a "sensor viewer " and a "custom viewer " right?

      Well, for the custom viewer I need a script to do the job for me... taking both utags and variables and doing a simple multiplication , then show me the valeu ... right?

      Well I need help finishing the script because, I can make the simple code but can't make it show the valeu at the "custom viewer " . I guess I'm missing both the template and the script binding

      one-reply-to-this-post last-reply-time reply quote 0
      • D offline
        Darvos
        global:last-edited-by,

        In other words , how can I display a variable, not a input or a tag, just a variable

        one-reply-to-this-post last-reply-time reply quote 0
        • D offline
          Darvos @jkandasa
          global:last-edited-by,

          @jkandasa I forgot the reply you didn't I?

          Sorry, but I'm still hoping you can help me with this.

          Thank you very much

          jkandasaJ one-reply-to-this-post last-reply-time reply quote 0
          • jkandasaJ offline
            jkandasa @Darvos
            global:last-edited-by,

            @Darvos You have to do all your calculations on your script and create an HTML template to display the value on the dashboard. Example: http://forum.mycontroller.org/topic/144/how-to-show-several-sensor-readings-in-a-single-widget/4

            D one-reply-to-this-post last-reply-time reply quote 0
            • D offline
              Darvos @jkandasa
              global:last-edited-by,

              @jkandasa Thaaaats IIIITTT ^^

              Thank you thank you thanks aloooot jkandasa, you beatiful man!!

              I was expecting this for days, and I'm really excited with the outcome of this project

              jkandasaJ one-reply-to-this-post last-reply-time reply quote 0
              • jkandasaJ offline
                jkandasa @Darvos
                global:last-edited-by,

                @Darvos

                JavaScript
                var myImports = new JavaImporter(java.io, java.lang, java.util); 
                with(myImports) {
                  var amp1 = mcApi.variable().get("Amp1");
                  var volt = mcApi.uidTag().getByUid("VoltRaw1").getResource();
                  // custom value
                  var finalData = amp1.value * volt.value;
                }
                
                HTML template
                <div>My custom value: ${finalData}</div>
                <div>Raw values:[Amp1:${amp1.value}, volt:${volt.value}]</div>
                

                Note: Use the latest version of MyController from here

                D topic:replies-to-this-post, 2 last-reply-time reply quote 0
                • D offline
                  Darvos @jkandasa
                  global:last-edited-by,

                  @jkandasa J, my saivior!! the project is working just fine, i only have one question to make!! plz save me!!

                  i've been trying to acumulate values (anyvar += anyvar) without sucess...

                  I tried loops, timers, no sucess...

                  I need to sum all the values I gather since the first reading.. any tip?

                  one-reply-to-this-post last-reply-time reply quote 0
                  • D offline
                    Darvos @jkandasa
                    global:last-edited-by, jkandasa

                    @jkandasa Gosh, so.. I was doing some research over the forum... and I found this http://forum.mycontroller.org/topic/139/hour-meter wich I've been trying to use with no sucess...

                    let me put some good info here!

                    0_1497462933454_image.png
                    I've made those simple custom widgets, here is the script for them

                    var myImports = new JavaImporter(java.io, java.lang, java.util); 
                    var Custo = 0;
                    with(myImports) {
                      var amp1 = mcApi.uidTag().getByUid("AmpRaw1").getResource()
                      var volt = mcApi.uidTag().getByUid("VoltRaw1").getResource();
                      var taxa = mcApi.variable().get("Taxa"); 
                      var Custo_aux = mcApi.variable().get("CustoT"); 
                    
                      // custom value
                      var finalData = (amp1.value * volt.value)/ 1000;
                      Custo_aux.value = finalData * taxa.value;
                    }
                    

                    I just need a way to acumulate(a.k.a SUM) the values os the last line like Custo_aux.value += the rest...

                    I've been trying to use the .save() without success too..

                    Plz master J, help me out!!

                    jkandasaJ one-reply-to-this-post last-reply-time reply quote 0
                    • jkandasaJ offline
                      jkandasa @Darvos
                      global:last-edited-by,

                      @Darvos By default, Repository and SensorVariable values will be stored as String You need to convert it to Integer, Float or as you like.

                      var myImports = new JavaImporter(java.io, java.lang, java.util); 
                      with(myImports) {
                        var amp1 = mcApi.uidTag().getByUid("AmpRaw1").getResource()
                        var volt = mcApi.uidTag().getByUid("VoltRaw1").getResource();
                        var taxa = mcApi.variable().get("Taxa"); 
                        var Custo_aux = mcApi.variable().get("CustoT"); 
                      
                        // custom value
                        var finalData = (parseFloat(amp1.value) * parseFloat(volt.value))/ 1000;
                        var currentCusto = finalData * parseFloat(taxa.value);
                        Custo_aux.value = parseFloat(Custo_aux.value) + currentCusto; //SUM with previous values
                        Custo_aux.save(); //store it on repository
                      }
                      

                      Note: Repository variables Taxa, CustoT should be created with default values. before to execute this script at first time.

                      one-reply-to-this-post last-reply-time reply quote 0
                      • D offline
                        Darvos
                        global:last-edited-by,

                        Thank you thank you!

                        you are the best!

                        one-reply-to-this-post last-reply-time reply quote 0
                        • first-post
                          last-post

                        0

                        online

                        644

                        users

                        532

                        topics

                        3.4k

                        posts
                        Copyright © 2015-2025 MyController.org | Contributors | Localization