Coder Social home page Coder Social logo

byte's Introduction

byte

Data transmission over sound modulator-demodulator model.

This project basically takes the input from the user, encodes it into binary and then modulates it into sound. The sound is then transmitted wirelessly through the speakers of the device. The transmitted sound is then received and recorded by the microphone of the demodulation device. The recorded sound is then demodulated and decoded to get the original message.

Steps to run the project

  • clone the repository on both the modulator and demodulator devices
git clone https://github.com/buabaj/byte.git
  • set up the modulator device
cd byte
pip install -r requirements.txt
cd encode
python3 modulator.py
  • set up the demodulator device
cd byte
pip install -r requirements.txt
cd decode
python3 demodulator.py
  • After running the script on the modulator device, you will be prompted to enter the message to be transmitted. Enter the message in the terminal and press enter.

  • Immediately after pressing enter, run the script on the demodulator device. This will start the demodulation process which records the sound produced by the modulator device and decodes it to get the original message.

  • The decoded message will be displayed on the terminal of the demodulator device.

Problems faced

  • The modulator device should be kept close to the demodulator device, at high volume for the transmission to be successful.

  • The devices should be kept in a quiet environment in order to prevent the recording of background noise which may interfere with the transmission.

  • The demodulator script breaks if the input is too long. This is because the binary data is stored in a list which has a fixed size. This can be fixed by using a dynamic data structure like a linked list i think.

Motivation

  • I endeavored to learn about this approach of data transmission after seeing the mobile app proof of concept by Nigerian app developer, Chiziaruhoma. I was guided by the many available open source projects on github.

byte's People

Contributors

buabaj avatar logic-ot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

logic-ot

byte's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.