:py:mod:`leads_comm_serial.sobd.sobd`
=====================================

.. py:module:: leads_comm_serial.sobd.sobd

.. autodoc2-docstring:: leads_comm_serial.sobd.sobd
   :allowtitles:

Module Contents
---------------

Classes
~~~~~~~

.. list-table::
   :class: autosummary longtable
   :align: left

   * - :py:obj:`SOBD <leads_comm_serial.sobd.sobd.SOBD>`
     - .. autodoc2-docstring:: leads_comm_serial.sobd.sobd.SOBD
          :summary:
   * - :py:obj:`_SOBDCallback <leads_comm_serial.sobd.sobd._SOBDCallback>`
     - .. autodoc2-docstring:: leads_comm_serial.sobd.sobd._SOBDCallback
          :summary:

API
~~~

.. py:class:: SOBD(port: str | typing.Literal[auto], baud_rate: int = 9600, password: str = '')
   :canonical: leads_comm_serial.sobd.sobd.SOBD

   Bases: :py:obj:`leads.Device`, :py:obj:`leads.comm.Entity`, :py:obj:`leads_comm_serial.identity.AutoIdentity`

   .. autodoc2-docstring:: leads_comm_serial.sobd.sobd.SOBD

   .. rubric:: Initialization

   .. autodoc2-docstring:: leads_comm_serial.sobd.sobd.SOBD.__init__

   .. py:method:: port() -> str
      :canonical: leads_comm_serial.sobd.sobd.SOBD.port

   .. py:method:: initialize(*parent_tags: str) -> None
      :canonical: leads_comm_serial.sobd.sobd.SOBD.initialize

      .. autodoc2-docstring:: leads_comm_serial.sobd.sobd.SOBD.initialize

   .. py:method:: update(data: str) -> None
      :canonical: leads_comm_serial.sobd.sobd.SOBD.update

      .. autodoc2-docstring:: leads_comm_serial.sobd.sobd.SOBD.update

   .. py:method:: check_identity(connection: leads_comm_serial.connection.SerialConnection) -> bool
      :canonical: leads_comm_serial.sobd.sobd.SOBD.check_identity

      .. autodoc2-docstring:: leads_comm_serial.sobd.sobd.SOBD.check_identity

   .. py:method:: run() -> None
      :canonical: leads_comm_serial.sobd.sobd.SOBD.run

   .. py:method:: write(payload: bytes) -> None
      :canonical: leads_comm_serial.sobd.sobd.SOBD.write

      .. autodoc2-docstring:: leads_comm_serial.sobd.sobd.SOBD.write

   .. py:method:: close() -> None
      :canonical: leads_comm_serial.sobd.sobd.SOBD.close

.. py:class:: _SOBDCallback(sobd: leads_comm_serial.sobd.sobd.SOBD)
   :canonical: leads_comm_serial.sobd.sobd._SOBDCallback

   Bases: :py:obj:`leads.comm.Callback`

   .. autodoc2-docstring:: leads_comm_serial.sobd.sobd._SOBDCallback

   .. rubric:: Initialization

   .. autodoc2-docstring:: leads_comm_serial.sobd.sobd._SOBDCallback.__init__

   .. py:method:: on_connect(service: leads.comm.Service, connection: leads.comm.ConnectionBase) -> None
      :canonical: leads_comm_serial.sobd.sobd._SOBDCallback.on_connect

      .. autodoc2-docstring:: leads_comm_serial.sobd.sobd._SOBDCallback.on_connect

   .. py:method:: on_receive(service: leads.comm.Service, msg: bytes) -> None
      :canonical: leads_comm_serial.sobd.sobd._SOBDCallback.on_receive

      .. autodoc2-docstring:: leads_comm_serial.sobd.sobd._SOBDCallback.on_receive
