VERY WIP!!!
Polar Modulator is a fixed-point, integer-based phase–amplitude (polar) modulator designed for resource-limited 32-bit microcontrollers without hardware floating point (e.g., ESP32-WROOM, ARM Cortex-M3, etc.). It transforms a real audio or baseband signal into amplitude and phase components, suitable for polar transmitter architectures. This library implements filters, AGC, Hilbert transform, and CORDIC algorithms in integer arithmetic. It includes utilities for test-signal generation, automatic gain control, and a full processing chain for amplitude/phase modulation.
Key Points:
- Efficient Design: Optimized for embedded systems with no FPU, using integer-only arithmetic for real-time DSP.
- Core Components: Includes CORDIC for phase/amplitude computation, Hilbert transform for quadrature, and multiple filter designs.
- Applications: Suitable for high-efficiency polar transmitters, with considerations for timing and synchronization to minimize distortion.
- Platform Focus: Primarily tailored for ESP32, but compatible with generic 32-bit MCUs.
- Open Source: Released under MIT License, encouraging contributions and adaptations.
- Introduction
- Features
- System Architecture
- Usage
- Example Applications
- Troubleshooting
- Contributing
- License
For unresolved issues, review logs or test with plplot_test harness.
Contributions are welcome, especially given the project’s early stage. To contribute:
- Submit issues or feature requests on the GitHub Issues page.
- Propose code or documentation improvements via pull requests.
- Engage in discussions on the repository to share ideas.
Project developed for educational and research use. Optimized for ESP32 by ChatGPT-5 technical documentation pipeline (2025). Original source author attribution preserved in source file headers.
Distributed under the MIT License. See LICENSE file for more information.