<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">OK, before you pile in, he is using I2C
      on a VGA port. Very cool idea.<br>
      <br>
      -mark<br>
      <br>
      On 16/05/2018 7:27 PM, Mark Atherton wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:ef202efe-c2ca-b55f-900c-b1d290d684f3@xtra.co.nz">
      <meta http-equiv="content-type" content="text/html; charset=utf-8">
      <p>Synco,</p>
      <p>Still not sure how X-plane connects to the I2C devices - maybe
        a USB to I2C bridge, or are you bringing the SMB bus directly
        off of the motherboard ?</p>
      <p>-Mark</p>
      <p>-----------------<br>
      </p>
      <p>Couple of our messages have been corrupted, here is Synco's
        earlier reply to me</p>
      <p>-----------------</p>
      <p><span style="color: rgb(0, 0, 0); font-family: "Times New
          Roman"; font-size: medium; font-style: normal;
          font-variant-ligatures: normal; font-variant-caps: normal;
          font-weight: 400; letter-spacing: normal; orphans: 2;
          text-align: start; text-indent: 0px; text-transform: none;
          white-space: normal; widows: 2; word-spacing: 0px;
          -webkit-text-stroke-width: 0px; background-color: rgb(255,
          255, 255); text-decoration-style: initial;
          text-decoration-color: initial; display: inline !important;
          float: none;">Wed May 16 00:33:27 2018</span> </p>
      <p>Hi Mark+,<span style="color: rgb(0, 0, 0); font-family:
          "Times New Roman"; font-size: medium; font-style:
          normal; font-variant-ligatures: normal; font-variant-caps:
          normal; font-weight: 400; letter-spacing: normal; orphans: 2;
          text-align: start; text-indent: 0px; text-transform: none;
          white-space: normal; widows: 2; word-spacing: 0px;
          -webkit-text-stroke-width: 0px; background-color: rgb(255,
          255, 255); text-decoration-style: initial;
          text-decoration-color: initial; display: inline !important;
          float: none;"></span><br>
        I've written a few plug-ins for X-Plane, rather than use the UDP
        protocol, yet by next meeting that'll most likely have changed
        and will be happy to share. If each panel was to be stand-alone,
        from all the different I2C port expanders out there, it's likely
        you would have spare I/O that would avoid multiplexing /
        scanning tricks. Also, if you are running Linux, and don't want
        to use a Raspberry Pi, another option is to use the I2C adapter
        on your monitor connector. I've done this in the past, (and will
        again), yet be careful to ensure voltage levels and device
        addresses don't conflict !<br>
      </p>
      <p>For example here is what it looks like on my pc:<br>
        $ sudo apt install i2c-tools<br>
        $ i2cdetect -l<br>
        i2c-3 unknown    NVIDIA i2c adapter 7 at 1:00.0  N/A<br>
        i2c-1 unknown    NVIDIA i2c adapter 4 at 1:00.0  N/A<br>
        i2c-4 unknown    NVIDIA i2c adapter 8 at 1:00.0  N/A<br>
        i2c-2 unknown    NVIDIA i2c adapter 6 at 1:00.0  N/A<br>
        i2c-0 unknown    NVIDIA i2c adapter 2 at 1:00.0  N/A<br>
        <br>
        $ sudo i2cdetect -y 0<br>
             0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f<br>
        00:          -- -- -- -- -- -- -- -- -- -- -- -- --<br>
        10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --<br>
        20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --<br>
        30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --<br>
        40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --<br>
        50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --<br>
        60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --<br>
        70: -- -- -- -- -- -- -- --<br>
        <br>
        $ sudo i2cdetect -y 4<br>
             0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f<br>
        00:          -- -- -- -- -- -- -- -- -- -- -- -- --<br>
        10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --<br>
        20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --<br>
        30: -- -- -- -- -- -- -- 37 -- -- 3a -- -- -- -- --<br>
        40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --<br>
        50: 50 51 52 53 54 55 56 57 -- -- -- -- -- -- -- --<br>
        60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --<br>
        70: -- -- -- -- -- -- -- --<br>
        <br>
        And if you run out of addresses you can always add a i2c-i2c
        bridge: <a class="moz-txt-link-freetext"
href="https://www.aliexpress.com/item/TCA9543A-Low-Voltage-2-Channel-I2C-Bus-Switch-Interrupt-Logic-And-Reset-Module/32763291440.html"
          moz-do-not-send="true">https://www.aliexpress.com/item/TCA9543A-Low-Voltage-2-Channel-I2C-Bus-Switch-Interrupt-Logic-And-Reset-Module/32763291440.html</a><br>
        <br>
        /s<br>
        <br>
        On 15 May 2018 at 22:01, Mark Atherton <a
          class="moz-txt-link-rfc2396E"
          href="mailto:markaren1@xtra.co.nz" moz-do-not-send="true"><markaren1@xtra.co.nz></a>
        wrote:<br>
        <br>
        > Hey Synco,<br>
        ><br>
        > Any chance of a quick tutorial how X-Plane processes
        incoming UDP packets, and assigns associated bytes/bit-positions
        to each function.<br>
        ><br>
        > Getting some kind of spec. from Paul (or help write one)
        would be very useful to determine cable loom lengths, number of
        inputs, types etc. For each control: Push Button, On/Off, Rotary
        (number of positions) ,or Potentiometer (and resolution), and
        max scan time.<br>
        ><br>
        > He may have been using a 4 position switch with 4 wires,
        when it may actually be an encoded 2-bit problem. Not sure if
        full size, low cost rotary binary outputs switches are readily
        available - hex coded switches are obviously too small...  There
        was mention of an R-2R ladder on the switch and an ADC - this
        seems a bit over the top (?). How about using a 1 of 4 rotary
        switch, and a small diode matrix (4 diodes + 4 pull down
        resistors) to encode to binary - there are obviously larger
        bit-savings with 8 and 10 positions switches.<br>
        ><br>
        > Not personally a fan of carrying I2C any great distance due
        to noise immunity issues (or lack thereof), but screened twin
        cable (and associated unwanted capacitance) with low clock rate
        (10kHz ?) and careful grounding may be OK though.<br>
        ><br>
        > R-PI seems over the top to convert bits into UDP, but I
        guess they are readily available, well supported, and low cost,
        so why the hell not...<br>
        <br>
      </p>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
Chchrobotics mailing list <a class="moz-txt-link-abbreviated" href="mailto:Chchrobotics@lists.ourshack.com">Chchrobotics@lists.ourshack.com</a>
<a class="moz-txt-link-freetext" href="https://lists.ourshack.com/mailman/listinfo/chchrobotics">https://lists.ourshack.com/mailman/listinfo/chchrobotics</a>
Mail Archives: <a class="moz-txt-link-freetext" href="http://lists.ourshack.com/pipermail/chchrobotics/">http://lists.ourshack.com/pipermail/chchrobotics/</a>
Meetings usually 3rd Monday each month. See <a class="moz-txt-link-freetext" href="http://kiwibots.org">http://kiwibots.org</a> for venue, directions and dates.
When replying, please edit your Subject line to reflect new subjects.</pre>
    </blockquote>
    <p><br>
    </p>
  </body>
</html>