<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body>
    Be aware that standard Ethernet cable purposely skews the signals on
    the pairs to cut down on crosstalk.  There is cable available that
    has equal delay, used for video and HDMI transmission.  That may
    work better for these long runs.<br>
    <br>
    David N1HAC<br>
    <br>
    <br>
    <div class="moz-cite-prefix">On 2/28/20 2:17 PM, David Witten via
      TangerineSDR wrote:<br>
    </div>
    <blockquote type="cite" cite="mid:CABJ3BVOUHZ09=sX4kh2K5=XimeGydFvdg4Cv_UtG4Y9YTHuWSg@mail.gmail.com">
      
      <div dir="ltr">It looks like the verdict is in on using full
        magnetometer support boards with a single span of CAT 6a
        shielded twisted pair cable - for now.  The 30 m (100foot) cable
        does not seem to work satisfactorily.  
        <div><br>
        </div>
        <div>It seems clear to me that it works 'a little', I2cdetect
          reports devices at 0x18  (MCP9808), 0x19 (MCP9808), and 0x20
          (the RM3100 module) most of the time. Since I am doing this
          testing from the NVIDIA Xavier the bus used is /dev/i2c-8.  I
          have no idea what that is at 0x74. 
          <div><br>
          </div>
          <div>From code written in C the device setup and verifies  the
            revision id of the RM3100 most of the time.  But then errors
            seem to accumulate and timeouts occur.</div>
          <div><br>
          </div>
          <div>I'm not even certain at the moment which I2C signalling
            rate is in use here.  It is just the default, perhaps 100
            k.  I'll look into mechanisms for lowering the rate used. I
            think that I saw an ioctl() call that may help.  </div>
          <div><br>
          </div>
          <div>So for now 50' seems rock solid, 100' is too flaky to
            use.  I'll try to find a way to connect a 50' with a 25
            cable to see where that gets us.</div>
          <div><br>
          </div>
          <div>The cable used is Amazon's pride off-the-shelf overnight
            stuff.  The package says (in very small type):<br>
          </div>
          <div><br>
          </div>
          <div>100' Cat 5a</div>
          <div>550 MHz</div>
          <div>Snagless Shielded (SSTP/SFTP)</div>
          <div>Gigabit Ethernet Patch Cable - Black.</div>
          <div><br>
          </div>
          <div>I do not know the wire gauge used.</div>
          <div><br>
          </div>
          <div>Results on Xavier (same on Odroid-N2):</div>
          <div><br>
          </div>
          <div>dave@rio:~/projects/SWx/Software/SWx-C/i2c-c$ sudo
            i2cdetect -y -r 8 <br>
                 0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f<br>
            00:          -- -- -- -- -- -- -- -- -- -- -- -- -- <br>
            10: -- -- -- -- -- -- -- -- 18 19 -- -- -- -- -- -- <br>
            20: 20 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- <br>
            30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- <br>
            40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- <br>
            50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- <br>
            60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- <br>
            70: -- -- -- -- 74 -- -- --                         <br>
            dave@rio:~/projects/SWx/Software/SWx-C/i2c-c$ sudo
            ./simplei2c<br>
            i2c_init OK!<br>
            RM3100 Detected Properly: REVID: 22.<br>
            Polling I2C device: 20.<br>
            <br>
            readRegister set register: Remote I/O error<br>
            readRegister set register: Remote I/O error<br>
            readRegister read value: Resource temporarily unavailable<br>
            readRegister set register: Connection timed out<br>
            readRegister read value: Connection timed out<br>
            readRegister set register: Connection timed out<br>
            readRegister read value: Connection timed out<br>
            readRegister set register: Resource temporarily unavailable<br>
            readRegister read value: Remote I/O error<br>
            readRegister set register: Remote I/O error<br>
            readRegister read value: Resource temporarily unavailable<br>
            readRegister set register: Remote I/O error<br>
            readRegister read value: Remote I/O error<br>
            readRegister set register: Remote I/O error<br>
            readRegister read value: Input/output error<br>
            readRegister set register: Resource temporarily unavailable<br>
            readRegister read value: Remote I/O error<br>
            readRegister set register: Remote I/O error<br>
            readRegister read value: Remote I/O error<br>
            readRegister set register: Input/output error<br>
            readRegister read value: Remote I/O error<br>
            readRegister set register: Input/output error<br>
            readRegister read value: Remote I/O error<br>
            readRegister set register: Remote I/O error<br>
            readRegister read value: Input/output error<br>
            readRegister set register: Connection timed out<br>
            readRegister read value: Connection timed out<br>
          </div>
        </div>
        <div>...</div>
        <div>etc.</div>
        <div><br>
        </div>
        <div>Dave Witten, KD0EAG</div>
        <div><br>
        </div>
        <div><br>
        </div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
    </blockquote>
    <br>
  </body>
</html>