==================================== Welcome to RevPiModIO Documentation! ==================================== RevPiModIO is a Python3 module for programming Revolution Pi hardware from KUNBUS GmbH. It provides easy access to all devices and IOs from the piCtory configuration, supporting both cyclic (PLC-style) and event-driven programming paradigms. .. note:: **New to RevPiModIO?** Start with :doc:`installation` and :doc:`quickstart`. Key Features ============ * **Dual Programming Models**: Cyclic (PLC-style) and event-driven approaches * **Direct Hardware Access**: Simple Python interface to all I/O devices * **Automatic Configuration**: Loads piCtory device configuration * **Event System**: Callbacks for value changes and timer events * **Open Source**: LGPLv2 license, no licensing fees Quick Example ============= **Cyclic Programming**:: import revpimodio2 def main(ct): if ct.io.button.value: ct.io.led.value = True revpimodio2.run_plc(main) **Event-Driven Programming**:: import revpimodio2 rpi = revpimodio2.RevPiModIO(autorefresh=True) def on_change(ioname, iovalue): print(f"{ioname} = {iovalue}") rpi.io.button.reg_event(on_change) rpi.handlesignalend() rpi.mainloop() Documentation ============= .. toctree:: :maxdepth: 2 :caption: Getting Started installation quickstart .. toctree:: :maxdepth: 2 :caption: User Guide basics cyclic_programming event_programming advanced .. toctree:: :maxdepth: 3 :caption: API Reference api/index api/revpimodio api/io api/helper api/device External Resources ================== * **Official Website**: `revpimodio.org `_ * **GitHub Repository**: `github.com/naruxde/ `_ * **Discussion Forum**: `revpimodio.org/diskussionsforum/ `_ * **Revolution Pi Hardware**: `revolution.kunbus.com `_ Indices and Tables ================== * :ref:`genindex` * :ref:`modindex` * :ref:`search`