• 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

    A Bit Stuck on Writing Multiple MODBUS Registers

    User help
    4
    44
    19.4k
    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.
    • MattFoxM
      MattFox
      last edited by

      Ok, so I can understand using 166774 gives you 0x00028b76, basically just bit shifts the entire thing in. And that by using a holding register implicitly puts a 4 in the front so only 104 is needed... But if the manual states you need a control key into 8 and its 1's complement into register 9, shouldn't it be 0x8B768B76 = 2339801974 DEC?

      Fox

      Do not follow where the path may lead; go instead where there is no path.
      And leave a trail - Muriel Strode

      1 Reply Last reply Reply Quote 0
      • danD
        dan
        last edited by

        OK, now my brain is really hurting, I'll turn on the i/o log and see what mine is outputting.
        Just to clarify a little further, the MODBUS register I need to write to is on 'Page 16', the manual says to multiply 256 x Page then add the Offset, so in this case I'm on (256 x 16) + 8 = 4104
        When reading off battery voltages and other engine diagnostics off this the formula seems to work.
        I'll try again with the decimal.

        Cheers

        1 Reply Last reply Reply Quote 0
        • danD
          dan
          last edited by

          0_1595368234133_6f692b3b-5b32-4e53-8adc-08c5a7ab46a9-image.png
          0_1595368250040_9530b480-46fd-4685-869a-41c8aebbf8c0-image.png

          1 Reply Last reply Reply Quote 0
          • danD
            dan
            last edited by

            Interestingly, when I write the hex values I get this pop up error..
            0_1595368403070_8b8aefed-818b-4048-850e-4e56afa9c2a3-image.png
            Nothing written in the log during this time however :/
            0_1595368421016_04c99fc6-f9b1-47b1-9109-ffaa4b0fe395-image.png

            cwangvC 1 Reply Last reply Reply Quote 0
            • cwangvC
              cwangv @dan
              last edited by

              @dan
              just curious why the 'Number of registers' is '0'? shouldn't be at least '1'?

              1 Reply Last reply Reply Quote 0
              • MattFoxM
                MattFox
                last edited by

                It's greyed out and disabled.

                Do not follow where the path may lead; go instead where there is no path.
                And leave a trail - Muriel Strode

                1 Reply Last reply Reply Quote 0
                • CraigWebC
                  CraigWeb
                  last edited by

                  Hi Dan

                  Regarding the address, I think you are correct. Well since other address work you are correct. If 4104 is not working I would try 4103.

                  I think @MattFox is correct regarding the ones's compliment that needs to be written to address 9. I get a different number tho.
                  0_1595400358409_Screenshot 2020-07-22 at 08.45.17.png

                  1 Reply Last reply Reply Quote 0
                  • MattFoxM
                    MattFox
                    last edited by

                    I think your answer is right here craig, something is amiss with how I did it, but looking at it now, I think we're all starting to break the back of it.

                    Do not follow where the path may lead; go instead where there is no path.
                    And leave a trail - Muriel Strode

                    1 Reply Last reply Reply Quote 0
                    • danD
                      dan
                      last edited by

                      Hey Guys, thanks again for helping out. That's a big number. I'll give that one a go, I'll try it into 4104 and 4103.

                      Cheers
                      Dan

                      1 Reply Last reply Reply Quote 0
                      • danD
                        dan
                        last edited by

                        Interestingly I get a timeout message if I try writing the whole decimal number to either data point register.
                        0_1595402220586_b29f9048-0451-42d0-9ba5-23975e820734-image.png

                        If I change back to a hex value it just comes up with the top blue error again.

                        1 Reply Last reply Reply Quote 0
                        • danD
                          dan
                          last edited by

                          although might actually currently be a timeout in the network, as it's on the top of a mountain in NZ. at the end of a Mimomax link :/
                          I do believe it's snowing up there currently..

                          MattFoxM 1 Reply Last reply Reply Quote 0
                          • danD
                            dan
                            last edited by

                            Bugga, still same timeout message when network is responding better.

                            com.serotonin.modbus4j.exception.ModbusTransportException: java.net.SocketTimeoutException: connect timed out

                            If I interrogate a standard read point it works fine.

                            1 Reply Last reply Reply Quote 0
                            • MattFoxM
                              MattFox @dan
                              last edited by MattFox

                              although might actually currently be a timeout in the network, as it's on the top of a mountain in NZ. at the end of a Mimomax link :/
                              I do believe it's snowing up there currently..

                              @dan Sounds like I need to make a roadtrip! Haha

                              Do not follow where the path may lead; go instead where there is no path.
                              And leave a trail - Muriel Strode

                              1 Reply Last reply Reply Quote 0
                              • danD
                                dan
                                last edited by

                                With a bloody big hammer.

                                1 Reply Last reply Reply Quote 0
                                • CraigWebC
                                  CraigWeb
                                  last edited by

                                  Seems like perfect troubleshooting conditions :)
                                  ye so basically no response from the command. Only thing I can suggest is checking if the actual number is causing the "no response" by sending a different digit. is the modbus request going over the network or do you have a local mango instance there ?

                                  1 Reply Last reply Reply Quote 0
                                  • danD
                                    dan
                                    last edited by

                                    Yeh the Mango instance is a few hundred ms away. It seems to work fine reading in voltages and RPM's and the like. Just been playing up a little today probably due to the weather.
                                    Even when it was working fine the write function still didn't seem to be the correct syntax.

                                    1 Reply Last reply Reply Quote 0
                                    • CraigWebC
                                      CraigWeb
                                      last edited by

                                      If I was troubleshooting I would create data points instead of using the modbus tool. It looks like you are using quite an old version of mango and I have had issues with the modbus tool in older versions. I think it would be worth cancelling that out of the troubleshooting.

                                      1 Reply Last reply Reply Quote 0
                                      • danD
                                        dan
                                        last edited by

                                        OK, thanks Craig. I have a data point I made earlier which I will go back to and see what it does.
                                        Thanks

                                        1 Reply Last reply Reply Quote 0
                                        • danD
                                          dan
                                          last edited by

                                          So I emailed DSE from their website contact form for shits and giggles, not really expecting to hear back... A nice fella from the UK emailed back almost immediately with all the official docs on the thing. I thought that was awesome.. Anyway, here's a more explanatory version of what I had found originally...

                                          0_1595416069873_69719d29-dae3-4c8b-adb2-d135b9f6d889-image.png
                                          0_1595416123361_de62073f-3f72-412c-a056-53c21c664afa-image.png

                                          So looking at that, I should be sending 35702 to 4104 and 29833 to 4105
                                          :)
                                          I'll give that a go..

                                          1 Reply Last reply Reply Quote 0
                                          • CraigWebC
                                            CraigWeb
                                            last edited by

                                            I may be wrong here but I am pretty sure that the only way that mango will write them in the same command is if you use 1 x 4-byte data point.

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