UAP "dog whistle" Audio Generator Setup Steps
This guide will walk you through setting up a sophisticated multi-layer audio signal generator that runs as a service on your Raspberry Pi and outputs sound to a Bluetooth speaker. The system includes three main components: an audio generator script, a player service, and a systemd configuration to automatically run at startup.
System Overview
The setup consists of:
- UAP3 Generator Script (uap3-generator.py): Creates a WAV file with six distinct audio layers
- UAP3 Player Service (uap3-player.py): Monitors for the WAV file and a connected Bluetooth speaker, then plays the audio automatically
- Systemd Service (uap3-player.service): Ensures the player runs at startup and continues running
Prerequisites
Before starting, you'll need:
- A Raspberry Pi running Raspberry Pi OS Bookworm or newer
- A Bluetooth speaker paired with your Raspberry Pi
- Python 3 installed
You'll also need to install some Python libraries:
bash
sudo apt-get update
sudo apt-get install -y python3-pip libportaudio2 libportaudio-dev portaudio19-dev
sudo pip3 install numpy scipy sounddevice
Step 1: Download the Required Files
- Download the three required files:
Move the service file to the systemd directory:bash
sudo mv uap3-player.service /etc/systemd/system/
Place the Python scripts in your home directory:bash
# Move the Python scripts to the home directory
mv uap3-generator.py /home/pi/
mv uap3-player.py /home/pi/
Step 2: Make the Scripts Executable
bash
chmod +x /home/pi/uap3-generator.py
chmod +x /home/pi/uap3-player.py
Step 3: Generate the Audio File
Run the audio generator script to create the WAV file (this may take some time on a Raspberry Pi):
bash
python3 /home/pi/uap3-generator.py
This will generate a 1-hour WAV file (uap3_output.wav
) in your home directory.
Step 4: Setup and Start the Service
View the logs to ensure everything is working:bash
cat /home/pi/uap3-player.log
Check that the service is running:bash
sudo systemctl status uap3-player.service
Start the service immediately:bash
sudo systemctl start uap3-player.service
Enable the service to start automatically on boot:bash
sudo systemctl enable uap3-player.service
Reload the systemd daemon to recognize the new service:bash
sudo systemctl daemon-reload
Bluetooth Setup
Before the player service will work, you need to pair and connect your Bluetooth speaker:
Exit Bluetooth control:
exit
Trust your speaker so it automatically connects:
trust XX:XX:XX:XX:XX:XX
Connect to your speaker:
connect XX:XX:XX:XX:XX:XX
Pair with your speaker (replace XX:XX:XX:XX:XXwith your speaker's MAC address):
pair XX:XX:XX:XX:XX:XX
Scan for devices:
scan on
Start Bluetooth control:bash
bluetoothctl
Troubleshooting
If you encounter issues:
Verify Bluetooth connection:bash
bluetoothctl info
Test audio playback manually:bash
aplay /home/pi/uap3_output.wav
Check the player log:bash
cat /home/pi/uap3-player.log
View detailed logs:bash
sudo journalctl -u uap3-player.service -n 50
Check service status:bash
sudo systemctl status uap3-player.service
Understanding the Audio Layers
The generated audio contains six distinct layers:
- Schumann Resonance (7.83 Hz): AM modulated over a 100 Hz carrier frequency
- Harmonic Tone (528 Hz): With added harmonics for richness
- High-Frequency Pings (17 kHz): Occurring every 5 seconds
- Frequency Chirps (2.5 kHz): Sweeping upward every 10 seconds
- Ambient Pad (432 Hz): A smooth masking layer with multiple harmonics
- Breathing White Noise: Shaped to simulate a breathing rhythm
Customizing the Audio
To customize the audio parameters, you can modify the frequency values, amplitudes, or other parameters in the uap3-generator.py script. After making changes, regenerate the WAV file, and the player service will automatically use the new file.