revpimodio2
2.9.0rc2
Getting Started
Installation
System Requirements
Prerequisites
User Permissions
Installing RevPiModIO
Using pip
From Source
Verify Installation
Optional Components
RevPiPyLoad
Configure XML-RPC Server
RevPi Commander
Next Steps
Quick Start
Basic Concepts
Hardware Configuration
Your First Program
Simple Input to Output
Cyclic Program
Event-Driven Program
LED Control
Common Patterns
Initialize and Cleanup
Edge Detection
Timers
Next Steps
User Guide
Basics
Programming Paradigms
Getting Started
Basic Instantiation
Configuration Parameters
Cycle Timing
Error Handling
Core Objects
rpi.io - Input/Output Access
IO Properties
rpi.core - System Control
LED Control
System Status
Watchdog
rpi.device - Device Access
Signal Handling
Graceful Shutdown
Custom Signal Handler
Simple Examples
Read Input, Control Output
LED Control
Iterate All IOs
Best Practices
Use Descriptive IO Names
Always Clean Up
Check IO Existence
See Also
Cyclic Programming
When to Use Cyclic Programming
Basic Structure
Simple Cycle Loop
Understanding Cycle Time
Cycletools Object
Initialization and Cleanup
Persistent Variables
Change Detection
Timing Flags
Toggle Flags
Flank Flags
Timers
On-Delay Timer (TON/TONC)
Off-Delay Timer (TOF/TOFC)
Pulse Timer (TP/TPC)
State Machines
Simple State Machine
Complex State Machine
Practical Examples
Temperature Control
Production Counter
Best Practices
Keep Cycle Logic Fast
Use Appropriate Cycle Time
Handle Errors Safely
Initialize Properly
See Also
Event Programming
When to Use Event-Driven Programming
Basic Structure
Simple Event Handler
Event Registration
Value Change Events
Multiple Events
Debouncing
Debouncing with Edge Detection
Timer Events
Timer Event Parameters
Threaded Events
EventCallback Object
Interruptible Sleep
Unregistering Events
Practical Examples
LED Toggle on Button Press
Multiple Button Handler
Sensor Logging
Threaded Data Processing
Best Practices
Keep Callbacks Fast
Handle Errors Gracefully
Clean Up Threads
See Also
Advanced
Custom IOs (Gateway Modules)
Understanding Gateway IOs
Defining Custom IOs
Struct Format Codes
Multiple Custom IOs
Using Configuration Files
Watchdog Management
How the Watchdog Works
Cyclic Watchdog Toggle
Event-Driven Watchdog Toggle
Performance Optimization
Keep Cycle Logic Fast
Choose Appropriate Cycle Time
Minimize Event Callbacks
Error Handling
Graceful Error Recovery
Resource Cleanup
Monitor I/O Errors
Best Practices
Naming Conventions
Code Organization
Documentation
Logging
Security Considerations
Validate External Input
Fail-Safe Defaults
See Also
API Reference
API Reference
Overview
Quick Examples
Basic Usage
Cyclic Programming
Event-Driven Programming
Constants
Edge Detection
LED Colors
IO Types
See Also
RevPiModIO Classes
RevPiModIO
Loop Execution Methods
Data Synchronization Methods
Utility Methods
RevPiModIOSelected
RevPiModIODriver
DevSelect
IO Classes and Types
IOList
IOBase
Event Registration Methods
Value Manipulation Methods
IntIO
Integer Value Methods
IntIOCounter
StructIO
Structured Value Methods
MemIO
RelaisOutput
IOEvent
Helper Classes
Cycletools
Change Detection
Timer Functions
On-Delay Timers
Off-Delay Timers
Pulse Timers
EventCallback
Methods
ProcimgWriter
Device Classes
Device
DeviceList
Base
GatewayMixin
ModularBaseConnect_4_5
Core
Connect
Connect4
Connect5
DioModule
RoModule
Gateway
Virtual
revpimodio2
»
Overview: module code
All modules for which code is available
revpimodio2.device
revpimodio2.helper
revpimodio2.io
revpimodio2.modio
threading