Skip to content

This repository provides code for modulating radio signals based on mechanical vibrations, demodulating received signals to extract information, and processing demodulated signals to produce sound output.

License

Notifications You must be signed in to change notification settings

X-3306/Wireless-Signal-Modulation-with-Mechanical-Vibrations

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

if you are familiar with the topic, and have any ideas, objections, or want to develop this code, join this discord: https://discord.gg/XRhbCk2gaz

DESCRYPTION

fundamental signal processing and encryption functions for encoding information on communication signals. The main techniques demonstrated are modulation, encryption, demodulation, and audio output generation.

In practice, these techniques could be applied to build radio communication systems to transmit audio information securely. For example, it could be used in ham/amateur radio by hobbyists to create their own encrypted channel for voice communication. The modulation schemes can encode voice into a radio-frequency signal, while encryption prevents eavesdropping.

More broadly, it showcases common digital signal processing concepts used in many telecommunication systems like radio, cellular networks, and Bluetooth. The principles of modulating data onto carrier waves, encrypting for security, and reconstructing audio/data after transmission are widely applied. These core algorithms power a range of wireless protocols and standards.

simple compile encryption files:

(Kali-Linux) -->

gcc test-encryptSignal.c encryptSignal.c -o resultfile
chmod +x resultfile
./resultfile

usage description for each of the code files:

modulation.c - This file contains the main implementation of signal modulation and processing functions. It implements functionality like signal modulation, encryption, demodulation, and audio output generation. To use this file, it should be compiled and linked into an executable program.
modulation.h - This is a header file containing declarations for the functions implemented in modulation.c. Any code that wants to call those functions should #include this header to access the prototypes. It allows modularization by separating declarations from definitions.
testencryption.c - This file contains a test case and validation code for the encryptSignal() function. It tests that encryptSignal() produces the expected encrypted output. To use this, compile and run testencryption.c along with encryption.c to verify correct encryption behavior.
encryption.c - This file provides the implementation of the encryptSignal() function to encrypt a signal. testencryption.c depends on and uses this encryption function. To use this file, it should be compiled with any code that needs to call encryptSignal(), like the test case.

In summary:

modulation.c/modulation.h provide the core signal processing functions encryption.c contains the reusable encryption function testencryption.c is a test harness to validate encryption.c

Who can use it and what can it be used for?

  • Scientists and engineers working in the field of wireless communications can use this code to experiment with new modulation techniques and explore unconventional ways of transmitting information.

  • Hobbyists and enthusiasts interested in radio electronics can use this code to build their own custom communication systems or explore the principles of radio signal modulation and demodulation.

  • Signal processing engineers can use this code as a starting point to develop advanced demodulation and signal processing algorithms in various fields such as audio, telecommunications or data analysis.

Resources

Here are some resources that can help in understanding the concepts and principles behind the code:

  • Books:

    • "Digital Communications" by John G. Proakis and Masoud Salehi
    • "Principles of Communication Systems" by Herbert Taub and Donald L. Schilling
    • "Introduction to Wireless Digital Communication: A Signal Processing Perspective" by Robert W. Heath Jr.
  • Online Courses and Tutorials:

    • Coursera: "Digital Signal Processing" by École Polytechnique Fédérale de Lausanne
    • edX: "Introduction to Communication Science and Systems" by TU Delft
  • Articles and Papers:

    • "Modulation Techniques for Mobile Communications" by M. S. Patwari
    • "Demodulation Techniques in Digital Communications" by Mehul S. Raval and Mihir S. Raval
    • "Digital Signal Processing for Audio Applications" by Udo Zölzer
  • YouTube Videos and Channels:

    • "Introduction to Modulation and Demodulation" by Neso Academy
    • "Signal Processing for Communications" by Tutorials Point - Simply Easy Learning
    • "Digital Signal Processing" playlist by The Coding Train (Daniel Shiffman)

These resources cover a range of topics including modulation, demodulation, signal processing, and digital communications, which are relevant to understanding the code and its underlying principles.