Final Year Masters Electronic and Information Engineering project: A mechatronic interface to play an acoustic guitar with some AI elements.
Welcome to gAItar! This guide will help you understand how to set up and use the gAItar system.
gAItar_api)gAItar_api/backend directory in your terminal.python -m venv venvvenv\Scripts\activatesource venv/bin/activatepip install -r requirements.txt (Ensure you have a requirements.txt file in this directory listing libraries like fastapi, uvicorn, torch, huggingface_hub, python-multipart, mido, miditok, basic-pitch, tensorflow, pretty_midi).uvicorn main:app --reload
http://localhost:8000.UI/gaitar_ui)UI/gaitar_ui directory in your terminal.npm installnpm start
http://localhost:3000.UI/gaitar_ui/src/api.js:
backend_api: Should point to your backend API (e.g., http://localhost:8000).esp32: Should point to your ESP32's IP address (e.g., http://192.168.113.200).gAItar_esp32)gAItar_esp32 project folder in VS Code with PlatformIO extension.gAItar_esp32/src/main.cpp:
ssid and password variables with your Wi-Fi network credentials. The current configuration is set for an Android mobile hotspot. Ensure this network is the same one your computer (running the UI and backend) is connected to.192.168.113.200 as seen in the code). The actual IP address will be displayed in the Serial Monitor upon successful connection. Ensure this IP matches the baseURL for esp32 in UI/gaitar_ui/src/api.js. Also change this to match the websockets in the upload.js and playbackinfo.js components (this caused me much pain in the past).gAItar_arduino)gAItar_arduino project folder in VS Code with PlatformIO extension.gAItar_arduino/src/globals.cpp. Ensure these match your physical wiring.GenMIDI):
Upload):
.mid or .midi).VoiceToMIDI):
UI/gaitar_ui/src/api.js matches the IP shown in the ESP32's serial output.gAItar_api) is running and accessible at http://localhost:8000.gAItar_arduino/src/globals.cpp.44 commits
JavaScript
33.5%
Python
30.4%
C++
23.4%
CSS
9.5%
C
2.3%
Final Year Masters Electronic and Information Engineering project: A mechatronic interface to play an acoustic guitar with some AI elements.
Welcome to gAItar! This guide will help you understand how to set up and use the gAItar system.
gAItar_api)gAItar_api/backend directory in your terminal.python -m venv venvvenv\Scripts\activatesource venv/bin/activatepip install -r requirements.txt (Ensure you have a requirements.txt file in this directory listing libraries like fastapi, uvicorn, torch, huggingface_hub, python-multipart, mido, miditok, basic-pitch, tensorflow, pretty_midi).uvicorn main:app --reload
http://localhost:8000.UI/gaitar_ui)UI/gaitar_ui directory in your terminal.npm installnpm start
http://localhost:3000.UI/gaitar_ui/src/api.js:
backend_api: Should point to your backend API (e.g., http://localhost:8000).esp32: Should point to your ESP32's IP address (e.g., http://192.168.113.200).gAItar_esp32)gAItar_esp32 project folder in VS Code with PlatformIO extension.gAItar_esp32/src/main.cpp:
ssid and password variables with your Wi-Fi network credentials. The current configuration is set for an Android mobile hotspot. Ensure this network is the same one your computer (running the UI and backend) is connected to.192.168.113.200 as seen in the code). The actual IP address will be displayed in the Serial Monitor upon successful connection. Ensure this IP matches the baseURL for esp32 in UI/gaitar_ui/src/api.js. Also change this to match the websockets in the upload.js and playbackinfo.js components (this caused me much pain in the past).gAItar_arduino)gAItar_arduino project folder in VS Code with PlatformIO extension.gAItar_arduino/src/globals.cpp. Ensure these match your physical wiring.GenMIDI):
Upload):
.mid or .midi).VoiceToMIDI):
UI/gaitar_ui/src/api.js matches the IP shown in the ESP32's serial output.gAItar_api) is running and accessible at http://localhost:8000.gAItar_arduino/src/globals.cpp.44 commits
JavaScript
33.5%
Python
30.4%
C++
23.4%
CSS
9.5%
C
2.3%