• 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

    Modbus "illigal data adress" RS485 120 Ohm termination

    Hardware
    3
    11
    4.5k
    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.
    • S
      stensma
      last edited by stensma

      Hi !
      According to the documentation in the "Mango ES" heading there is a picture showing the Mango ES with the connections and on The DIP-switches it say "RS-485 Biasing and termination"
      But in another thread in the forum it is stated:
      "The DIP switches on the MangoES should always be in the down position. These are for future expansion so all down is the only valid config for now."

      So if I am 100% of the up time is getting errors like:
      "Modbus RS 485': Boost ON/OFF Device name: Modbus RS 485: Illegal data address" in spite of that it does respond in the data source menu when setting up the Modbus registers on the very same data address.
      Could it be that I do need a 120 Ohm termination on the Mango ES terminals ?
      Is it a noise thing or problem due to lack of termination or should I look for SW issueS?
      If I delete this Data point then the next one pop up as "illigal data address"

      / Per

      1 Reply Last reply Reply Quote 0
      • JoelHaggarJ
        JoelHaggar
        last edited by

        Those dip switches won't have any affect on this error and it's also probably not the lack of a terminating resistor although you should always have a terminating register for a properly configured RS-485 network.

        Illegal data address is a response from the device so you know that you are communicating to the device. It's telling you that you are requesting a register that it does not support.

        These are the settings to check:

        0_1457977396159_upload-518a1f7a-2287-40c4-af69-a30991265bbe

        It's likely the Contiguous Batches option or the Max read register count or you are just reading the wrong registers.

        1 Reply Last reply Reply Quote 0
        • S
          stensma
          last edited by stensma

          Hi!
          Added a 120 hm termination on the Mango ES side.
          I have now tried som different settings without progress.
          The register is valid when I test the readout on the data point menu.
          And if I take it away the next data point in line gets the same error message
          Modbus RS 485': Exhaust Air temp Device name: Modbus RS 485: Illegal data address
          It is allways the first (from top down in the data point list) active data point that gets this error message!
          Bit count from 1000 to 100000
          Register 10 to 256

          Session timeout from 500 to 5000 ms
          retries 5

          1 Reply Last reply Reply Quote 0
          • JoelHaggarJ
            JoelHaggar
            last edited by

            You would want the 120 ohm resistor at the very end of your RS-485 network, the MangoES already has the resistor built in.

            I'm not sure what you mean by "test the readout on the data point menu"?

            Try checking "Contiguous Batches Only" and keep your Bit count and register count low.

            S 1 Reply Last reply Reply Quote 0
            • D
              Desmond
              last edited by

              This post is deleted!
              1 Reply Last reply Reply Quote 0
              • D
                Desmond
                last edited by

                Hi Stensma,

                I also encounter this weird behaviour. The first few consecutive node of device in daisy chain connection also seem "missing in action"
                For my case, I had about 12 modbus device in a chain and I noticed first few node always not being discover by node scan.
                However if I change the data source from modbus serial to modbus IP, all the node are discovered by node scan.
                not sure if total no of devices connected in daisy chain had any implication or it is a known issue.

                1 Reply Last reply Reply Quote 0
                • S
                  stensma @JoelHaggar
                  last edited by

                  @JoelHaggar
                  Hi!
                  I mean that the address is correct, when I test the address and settings on the data point the address is correct an it responds well.
                  When I then disable the data point wich is the first in the list, then the second one in the data point list gives me the same error.
                  I have now tried bit count from as low as 100 an register to 10 for read and write all with and without the "Contiguous Batches Only" option.
                  /Stensma

                  1 Reply Last reply Reply Quote 0
                  • JoelHaggarJ
                    JoelHaggar
                    last edited by

                    Try your settings like this:
                    0_1458422211396_upload-3d28b357-a62c-4f3b-9e44-7f92f5eb4a5a
                    Also you can try the override timing box and leave your settings as 0

                    0_1458422250861_upload-e873c93e-f6bf-4729-8060-8ee50a695573

                    1 Reply Last reply Reply Quote 0
                    • S
                      stensma
                      last edited by

                      Latest news on the Modbus front.

                      Register value according to you suggestion works !
                      But then i loose connection to my second device on the Bus a energy meter that have.
                      My heat ex-changer has slave ID 1 and the Energy meter slave ID 3.
                      But the Heat ex-changer only has Modbus data type with 2 byte word and the Energy meter has 4 byte word.
                      This give me following error message:
                      Modbus RS 485': com.serotonin.modbus4j.exception.ModbusTransportException: Invalid number of registers: 2

                      So I am currently testing read register set to "2" the rest set at "1" it is looking good so far.

                      By the way:
                      Where do I find the timing box?

                      1 Reply Last reply Reply Quote 0
                      • S
                        stensma
                        last edited by

                        Nope I still get "Modbus RS 485: Illegal data address" when I have anything other than "1" in the read register setting.

                        1 Reply Last reply Reply Quote 0
                        • JoelHaggarJ
                          JoelHaggar
                          last edited by

                          Sounds to me like you have two devices that are not compatible to be on the same network.

                          There are two types of modbus reads for holding registers. One is where Mango requests a single register and the other is where Mango requests multiple registers. For 4 byte registers it's normal for the device to require the multiple register read so that makes sense. You could try changing your Max Register read to 2 which should be ok for your device with 4 byte registers but your other device may not like this so you might be forced to create two separate networks for each type of device.

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