Morlet Wavelet

Industrial-grade signal processing libraries for developers

Open source tools built by engineers who deploy critical infrastructure systems. Production-tested, defense-grade reliability, zero dependencies on enterprise bloat.

Libraries & Tools

wavelet-py
Stable

Fast wavelet transforms optimized for real-time processing on resource-constrained systems. Pure Python with optional C extensions.

  • Haar, Morlet, and Symlet wavelets
  • Multi-level decomposition
  • Embedded-friendly (runs on ARM Cortex)
  • Zero external dependencies
scada-protocol
Stable

Protocol analysis toolkit for industrial control systems. Decode, encode, and analyze Modbus, DNP3, and IEC 60870-5-104.

  • Modbus RTU/TCP support
  • DNP3 packet parser
  • IEC 104 implementation
  • Built-in validation & checksums
signal-core
Beta

Rust-based DSP library for embedded systems. FFT, filtering, and time-series analysis with minimal memory footprint.

  • Fast FFT implementation
  • IIR/FIR filter design
  • No heap allocations
  • RTOS compatible
timescale-tools
Stable

Utilities for industrial time-series data management. Optimized queries, compression, and analysis for SCADA historians.

  • TimescaleDB helpers
  • Efficient downsampling
  • Gap detection & interpolation
  • Anomaly detection hooks
opc-ua-lite
Beta

Lightweight OPC UA client library. Connect to industrial PLCs and SCADA systems without the bloat of full implementations.

  • Client-only implementation
  • Subscription support
  • Security modes included
  • Works with Siemens, Allen-Bradley
rf-analyzer
Beta

Radio frequency signal analysis tools. Spectrum analysis, modulation detection, and protocol identification for SDR applications.

  • Spectrum visualization
  • Modulation classification
  • Protocol fingerprinting
  • HackRF/RTL-SDR support

Code Examples

from wavelet_py import HaarWavelet # Load sensor data data = load_vibration_sensor("bearing_data.csv") # Perform multi-level Haar decomposition wavelet = HaarWavelet(levels=5) approx, details = wavelet.decompose(data) # Analyze detail coefficients for anomalies for level, coeffs in enumerate(details): threshold = calculate_threshold(coeffs) anomalies = [c for c in coeffs if abs(c) > threshold] if anomalies: trigger_alert(f"Level {level}: {len(anomalies)} anomalies")
Use case: Predictive maintenance for industrial machinery. Detects bearing failures before catastrophic damage occurs.
from scada_protocol import ModbusClient # Connect to PLC client = ModbusClient( host="192.168.1.100", port=502, timeout=3 ) # Read holding registers (process values) registers = client.read_holding_registers( address=40001, count=10 ) # Write coil (control relay) client.write_coil( address=00001, value=True # Energize relay ) # Validate response & handle errors if client.last_error: log_error(client.last_error) initiate_failsafe()
Use case: SCADA integration with PLCs and RTUs. Read sensor values, control actuators, validate data integrity.
from signal_core import ButterworthFilter # Design 4th-order lowpass filter filter = ButterworthFilter( order=4, cutoff=10.0, # Hz sample_rate=100.0, # Hz filter_type="lowpass" ) # Filter noisy sensor data in real-time for sample in sensor_stream(): filtered = filter.process(sample) # Check if value exceeds threshold if filtered > HIGH_THRESHOLD: trigger_alarm("Temperature critical") log_to_historian(filtered)
Use case: Real-time signal conditioning for noisy industrial sensors. Remove high-frequency noise while preserving process trends.

Documentation & Resources

📖

Getting Started

Installation guides, quick start tutorials, and basic concepts for each library.

Read Guide
🔧

API Reference

Complete API documentation with detailed function signatures and usage examples.

Browse APIs
💡

Best Practices

Engineering guidelines for real-time processing, error handling, and system integration.

View Guidelines
🏗️

Architecture

System design patterns, protocol implementations, and architectural decisions.

Read More

Performance

Benchmarks, optimization techniques, and resource usage for embedded deployments.

See Benchmarks
🛡️

Security

Defense-in-depth strategies, secure coding practices, and compliance considerations.

Security Docs

Community & Support

Built by engineers who ship production systems

These libraries are extracted from real SCADA modernization projects, embedded firmware, and critical infrastructure deployments. Everything here has been tested under real-world conditions.

We believe in open source because we benefit from open source. Contributions welcome, criticism encouraged, PRs reviewed promptly.

6 Libraries
15+ Years Experience
99.99% Uptime Target