Announcement

Collapse
No announcement yet.

Does UPB do collision avoidance?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    #16
    Thanks for the reply. I am a novice experimenting with programming the PIM in message mode, as a way to better understand UPB inner workings.

    I believe that I sent a request for a status report to a US2-40 with the bits set requesting an ACK. I received the status report message back, but no ACK before it from my message. I will experiment more later today, including sending direct action messages to US2-40 requesting an ACK.

    I will also experiment more with a device programmed to send a direct command instead of a link to see if it requests an ACK from it's destination.

    Note: I'm not sure I'm doing any of this correctly, but I'm learning a lot about UPB.

    Which bits are you setting in the header to request an ACK?

    Ed
    tenholde

    Comment


      #17
      Control word byte 2 bit 4 is set for an ACK request. Make sure you are only sending the PIM a single checksum when doing a transmit message request.

      Set the plug-in to detailed debug mode and it will show the outgoing command sequence to the PIM and the decoded return sequence.

      Jon




      Originally posted by tenholde
      Thanks for the reply. I am a novice experimenting with programming the PIM in message mode, as a way to better understand UPB inner workings.

      I believe that I sent a request for a status report to a US2-40 with the bits set requesting an ACK. I received the status report message back, but no ACK before it from my message. I will experiment more later today, including sending direct action messages to US2-40 requesting an ACK.

      I will also experiment more with a device programmed to send a direct command instead of a link to see if it requests an ACK from it's destination.

      Note: I'm not sure I'm doing any of this correctly, but I'm learning a lot about UPB.

      Which bits are you setting in the header to request an ACK?

      Ed
      Jon Ort
      JonOrt@The--Orts.com
      (Remove the dashes in the address, spam is getting out of hand)

      Comment


        #18
        Thanks for the reply. I don't have the plugin yet, as I am waiting for arrival of new PC before installing HS2 (that's why I'm writing my own code while installing UPB hardware and waiting to upgrade HS2)

        I understand that the plugin does not work with HS1.7.

        Ed
        tenholde

        Comment


          #19
          I was setting bit 6, requesting an ACK message - did not get it. Setting bit 4 for Ack pulse and setting bit 5 for ID pulse (slow) both worked. Thanks again.
          Ed

          Originally posted by Oman
          Control word byte 2 bit 4 is set for an ACK request. Make sure you are only sending the PIM a single checksum when doing a transmit message request.

          Set the plug-in to detailed debug mode and it will show the outgoing command sequence to the PIM and the decoded return sequence.

          Jon
          tenholde

          Comment


            #20
            I reprogrammed a US2-40 to send direct instead of link, which it did. The direct transmission did NOT request an ACK from it's target.
            Ed

            Originally posted by Oman
            No, it is not. The plug-in requests ACKS on every direct command. If it does not get one it tries again, up to 5 times. The US2-40s ACK back just fine.

            As far as link commands go, Insteon, UPB and all the other protocols do things more or less the same way. Insteon has a clean-up process that launches after a group command but it gets interrupted by any other traffic so in most cases it doesn't do much other than generate a ton of traffic. There is no assurance that a remote device acted.

            The other thing that UPB does is send out multiple broadcasts of the same message with a numbering system that allows devices to recognize when a message is unique or a repeat. Have you tried increasing the transmission count?

            What you did not mention is if any of the transmissions in your example are being generated by the PLC. I mentioned that the PLC has issues with collision advoidance.


            I can't comment on the US2-40 not requesting ACKS on direct commands, but usually link commands are used. I would think that it would be nice for them to ACK direct and retry on NAK since usually direct commands are used when you want to be sure something worked.

            Jon
            tenholde

            Comment

            Working...
            X