ggwave
ggwave is a tiny data-over-sound library that enables communication of small amounts of data between air-gapped devices using sound. It implements a simple Frequency-Shift Keying (FSK) transmission protocol that can be easily integrated into various projects. The library supports a bandwidth rate of 8-16 bytes/sec, depending on the protocol parameters, and utilizes error correction codes (ECC) to enhance demodulation robustness.
Key Features:
- Data Transmission: Communicate small data packets using sound waves.
- FSK Modulation: Employs a multi-frequency FSK modulation scheme for encoding and decoding data.
- Error Correction: Uses Reed-Solomon error codes for improved data integrity.
- Cross-Platform Support: Compatible with various platforms including Linux, Mac, Windows, and more.
- Easy Integration: Can be integrated with any audio backend like PulseAudio or ALSA.
Benefits:
- Air-Gapped Communication: Ideal for scenarios where devices cannot connect to the internet.
- Versatile Applications: Suitable for IoT devices, file sharing, and more.
- Open Source: Available for free, encouraging community contributions and enhancements.
Highlights:
- Supports audible and ultrasonic protocols.
- Provides a simple command-line interface for testing.
- Includes examples and documentation for easy setup and usage.