Jscott44 / RTEP5-the-raspberry-jam

Realtime digital guitar effects pedal designed for Raspberry PI, written in C++
MIT License
12 stars 0 forks source link
audio audio-processing cplusplus cpp gui-application realtime rpi

The Raspberry Jam

The realtime Raspberry PI powered digital guitar effects pedal.

![logoPicBlkStrip](https://github.com/Jscott44/RTEP5-the-raspberry-jam/assets/122903573/d662a7d8-005c-4412-90bc-d30af63cd982)

Usage

Ensure the Raspberry Pi is updated:

# Update package lists
sudo apt update

# Upgrade installed packages
sudo apt upgrade

# Remove unused packages
sudo apt autoremove

# Clean up package cache
sudo apt clean

Install Git

# Install Git
sudo apt-get install git -y

# Verify Git installation
git --version

Install ALSA resources

# Install ALSA utilities and libraries
sudo apt-get install alsa-utils libasound2-dev -y

# Verify ALSA installation
aplay --version

Install CMake in order to build the project

# Install CMake
sudo apt-get install cmake -y

# Verify CMake installation
cmake --version

Install Qt and XKB libraries for GUI

# Install Qt6
sudo apt-get install qt6-base-dev -y
sudo apt-get install qt6-base-dev-tools -y
sudo apt-get install qt6-tools-dev -y

# Install XKB
sudo apt-get install libxkbcommon-dev -y

Clone the repository
```bash
# Clone the repository from GitHub
git clone https://github.com/Jscott44/RTEP5-the-raspberry-jam.git

# Change directory to the cloned repository
cd RTEP5-the-raspberry-jam

# List files in the repository
ls

For use with a generic sound card a device tree overlay needs to be created.

To make sound card master and Raspberry Pi on I2S bus (credit: https://github.com/AkiyukiOkayasu/RaspberryPi_I2S_Slave):

# Change to device tree directory
cd deviceTree

# Compile on Raspberry Pi  
dtc -@ -H epapr -O dtb -o genericstereoaudiocodec.dtbo -Wno-unit_address_vs_reg genericstereoaudiocodec.dts

# Copy i2smaster.dtbo to /boot/overlays  
sudo cp genericstereoaudiocodec.dtbo /boot/overlays

# Return to repository directory
cd ..

Edit /boot/config.txt

#dtparam=i2c_arm=on
dtparam=i2s=on
#dtparam=spi=on
dtoverlay=genericstereoaudiocodec

To make sound card slave and Raspberry Pi master on I2S bus (credit: https://github.com/AkiyukiOkayasu/RaspberryPi_I2S_Master):

# Compile on Raspberry Pi
# Change to device tree directory
cd deviceTree

dtc -@ -H epapr -O dtb -o i2smaster.dtbo -Wno-unit_address_vs_reg i2smaster.dts

# Copy i2smaster.dtbo to /boot/overlays  
sudo cp i2smaster.dtbo /boot/overlays

# Return to repository directory
cd ..

Edit /boot/config.txt

# Uncomment some or all of these to enable the optional hardware interface
#dtparam=i2c_arm=on
dtparam=i2s=on
#dtparam=spi=on
dtoverlay=i2smaster

Alter main.cpp (according to report in Docs/) at this point if using different hardware.

Bulding the project with CMake

# Create a build directory (optional)
mkdir -p build
cd build

# Configure the build using CMake
cmake ..

# Build the project
make

# Run the Application
./RJ

Key Features

Social Media Links

![instagram](https://github.com/shikhar1020jais1/Git-Social/blob/master/Icons/Instagram.png (Instagram)) ![github](https://github.com/shikhar1020jais1/Git-Social/blob/master/Icons/Github.png (Github))

Authors and Roles