Class LocoIO

java.lang.Object
jmri.jmrix.loconet.locoio.LocoIO

public class LocoIO extends Object
Manage the communication to/from a LocoIO board. Deprecated since version 5.12. Will be removed 2025 version 5.13

Uses the LOCONETSV1MODE programming mode.

Uses LnProgrammer LOCOIO_PEER_CODE_SV_VER1 message format, comparable to DecoderPro LOCONETSV1MODE Since JMRI 4.11.6 the LocoIO tool does not work with the HDL LocoIO rev 3 and newer boards, with risk of breaking the stored config. Use the DecoderPro decoder definition.

See Also:
  • Field Details

  • Constructor Details

    • LocoIO

      public LocoIO()
      Create a new instance of LocoIO.
  • Method Details

    • SENSOR_ADR

      public static int SENSOR_ADR(int a1, int a2)
    • readSV

      public static LocoNetMessage readSV(int locoIOAddress, int locoIOSubAddress, int sv)
      Compose a LocoNet message from the given ingredients for reading the value of one specific SV from a given LocoIO.
      Parameters:
      locoIOAddress - base address of the LocoIO board to read from
      locoIOSubAddress - subAddress of the LocoIO board
      sv - the SV index to query
      Returns:
      complete message to send
    • writeSV

      public static LocoNetMessage writeSV(int locoIOAddress, int locoIOSubAddress, int sv, int data)
      Compose a LocoNet message from the given ingredients for reading the value of one specific SV from a given LocoIO.
      Parameters:
      locoIOAddress - base address of the LocoIO board to read from
      locoIOSubAddress - subAddress of the LocoIO board
      sv - the SV index to change
      data - the new value to store in the board's SV
      Returns:
      complete message to send
    • programLocoIOAddress

      public static void programLocoIOAddress(int address, int subAddress, LnTrafficController ln)
      Compose and send a message out onto LocoNet changing the LocoIO hardware board address of all connected LocoIO boards.

      User is warned that this is a broadcast type operation.

      Parameters:
      address - the new base address of the LocoIO board to change
      subAddress - the new subAddress of the board
      ln - the TrafficController to use for sending the message
    • probeLocoIOs

      public static void probeLocoIOs(LnTrafficController ln)
      Send out a probe of all connected LocoIO units on a given LocoNet connection.
      Parameters:
      ln - the TrafficController to use for sending the message