GithubHelp home page GithubHelp logo

gautam-dev-maker / air-mouse Goto Github PK

View Code? Open in Web Editor NEW
21.0 1.0 2.0 110.43 MB

It is the program for Air Gesture Mouse using mpu6050 and esp32 in esp-idf

License: GNU General Public License v3.0

CMake 0.17% Makefile 0.20% C++ 48.69% C 50.94%

air-mouse's Introduction

Air-Mouse

Air-Mouse - Moves mouse cursor,Using ESP-32 & MPU6050(6-axis Accelerometer & Gyroscope) in 3D space with Bluetooth and Buttons support.

Table of Contents

About The Project

  • The Aim of the Project is to make a Mouse using the data fusion DMP(Digital Motion Processing) of MPU_6050 and ESP32 with Bluetooth support to actually make it easier for the user to move pointer in any position they want.

  • The Support for Right and Left click is also established using Capacitive touch pins of ESP32.

Tech Stack

The Technologies used for this project are

File Structure

.
├── Components              # Contains files of specific library of functions or Hardware used
│    ├──I2Cdev              # Library for I2C communication
│    ├──MPU6050             # Library for MPU6050 sensor
│    ├──CMakeLists.txt      # contains commands to include the given component in a esp-idf 
├── docs                    # Documentation files 
│   ├── report.pdf          # Project report
│   └── results             # Folder containing screenshots, gifs, videos of results
├── main                    # Source files (alternatively `lib` or `app`)
│   ├──main.c               # Main Source code to be executed
│   ├──kconfig.projbuild    # defines the entries of the menu for configuration
│   ├──CMakeLists.txt       # contains commands to include the bluetooth library and main.c in esp-idf
├── CmakeLists.txt          # contains commands to include Components and main folder while executing
├── LICENSE
└── README.md 

Getting Started

Prerequisites

Install ESP-IDF : https://github.com/espressif/esp-idf

Installation

Clone the project

https://github.com/gautam-dev-maker/Air-Mouse.git

cd Air-Mouse

Usage

Build

idf.py build

Flash

idf.py -p (PORT) flash monitor

Configuration

idf.py menuconfig
  • Example Connection Configuration

    • Bluetooth Name - Set Bluetooth Name
  • `MPU6050 Configuration

    • SDA Pin No. - Set SDA Pin No.
    • CLK Pin No. - Set CLK Pin No.
  • The default Pin configuration used to connect MPU_6050 with ESP32 in this project is shown

Results and Demo

The use of Right and Left Capacitive touch pins has been demonstrated in the following videos

Right/left buttons

Troubleshooting

While Configuring for the first time if Bluetooth is not working then ,go to terminal

idf.py menuconfig

Then go to components/bluetooth and enable bluetooth Press ctrl+s to save the configuration then

idf.py build

Contributors

Acknowledgements and Resources

License

The License Used for this Project.

air-mouse's People

Contributors

amanchhaparia avatar gautam-dev-maker avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

air-mouse's Issues

Compilation Error

Hi,
While trying to compile the code i am getting the error below, would request your help with the same.
Executing task: cmake --build . <

[1/6] Performing build step for 'bootloader'
[1/1] cmd.exe /C "cd /D C:\Users\a\Downloads\Air-Mouse-master\Air-Mouse-master\build\bootloader\esp-idf\esptool_py && C:\Users\a.espressif\python_env\idf4.4_py3.8_env\Scripts\python.exe C:/Users/a/esp/esp-idf/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x1000 C:/Users/a/Downloads/Air-Mouse-master/Air-Mouse-master/build/bootloader/bootloader.bin"
Bootloader binary size 0x62c0 bytes. 0xd40 bytes (12%) free.
[2/4] Linking CXX executable SRA_air-mouse.elf
FAILED: SRA_air-mouse.elf
cmd.exe /C "cd . && C:\Users\a.espressif\tools\xtensa-esp32-elf\esp-2021r2-patch2-8.4.0\xtensa-esp32-elf\bin\xtensa-esp32-elf-g++.exe -mlongcalls -Wno-frame-address @CMakeFiles\SRA_air-mouse.elf.rsp -o SRA_air-mouse.elf && cd ."
c:/users/a/.espressif/tools/xtensa-esp32-elf/esp-2021r2-patch2-8.4.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: esp-idf/freertos/libfreertos.a(port_common.c.obj):(.literal.main_task+0x14): undefined reference to app_main' c:/users/a/.espressif/tools/xtensa-esp32-elf/esp-2021r2-patch2-8.4.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: esp-idf/freertos/libfreertos.a(port_common.c.obj): in function main_task':
C:/Users/a/esp/esp-idf/components/freertos/port/port_common.c:125: undefined reference to `app_main'
collect2.exe: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
The terminal process "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -Command cmake --build ." terminated with exit code: 1
Screenshot (15)
I am using esp-idf with vscode.

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.