Remove obsolete audio and buzzer control documentation files, including detailed guides and HTML interfaces, to streamline the repository and eliminate redundancy. This cleanup enhances maintainability and focuses on essential resources for the reTerminal DM4 audio and buzzer functionalities.

This commit is contained in:
nearxos
2026-02-20 15:39:39 +02:00
parent 9656771d5a
commit 58d9144752
101 changed files with 80 additions and 193 deletions

View File

@@ -0,0 +1,122 @@
#!/bin/bash
# Star Wars Theme Song - Buzzer Version
# Note: Buzzer can only be on/off, so we use timing patterns to create rhythm
# Volume is simulated at 10% by using very short pulse patterns (PWM-like effect)
BUZZER_PATH='/sys/class/leds/usr-buzzer/brightness'
DURATION=5 # Total duration in seconds
# Function to play a note with 10% volume effect
# Uses rapid on/off pulses to simulate lower volume
# $1 = note duration in hundredths of a second (e.g., 5 = 0.05s)
play_note() {
local note_duration=$1
# For 10% volume: 10ms on, 90ms off pattern
# This creates a quieter, pulsing effect
local cycles=$((note_duration * 2)) # Each cycle is ~50ms
for i in $(seq 1 $cycles); do
echo 1 | sudo tee $BUZZER_PATH > /dev/null 2>&1
sleep 0.005 # 5ms on (10% duty cycle)
echo 0 | sudo tee $BUZZER_PATH > /dev/null 2>&1
sleep 0.045 # 45ms off
done
}
# Function for silence/pause
pause() {
local duration=$1
sleep $duration
}
# Star Wars Theme Pattern
# Using timing to represent the iconic opening sequence
echo "Playing Star Wars Theme (5 seconds, 10% volume)..."
echo "=================================================="
echo ""
START_TIME=$(date +%s)
# Opening sequence (famous opening notes)
# Short-short-short-long pattern
play_note 2 # Very short
pause 0.05
play_note 2
pause 0.05
play_note 2
pause 0.1
play_note 4 # Longer
pause 0.1
play_note 6 # Even longer
pause 0.15
# Main theme rhythm - first phrase
play_note 3
pause 0.05
play_note 3
pause 0.05
play_note 3
pause 0.1
play_note 5
pause 0.1
play_note 4
pause 0.1
play_note 3
pause 0.1
play_note 5
pause 0.15
# Continue theme pattern - second phrase
play_note 4
pause 0.05
play_note 4
pause 0.05
play_note 4
pause 0.1
play_note 6
pause 0.1
play_note 5
pause 0.1
play_note 4
pause 0.1
play_note 6
pause 0.15
# Final sequence - third phrase
play_note 5
pause 0.05
play_note 5
pause 0.05
play_note 5
pause 0.1
play_note 8
pause 0.1
play_note 6
pause 0.1
play_note 5
pause 0.1
play_note 10
pause 0.2
# Fill remaining time to reach 5 seconds
CURRENT_TIME=$(date +%s)
ELAPSED=$((CURRENT_TIME - START_TIME))
REMAINING=$((DURATION - ELAPSED))
if [ $REMAINING -gt 0 ]; then
# Continue theme pattern for remaining time
while [ $(date +%s) -lt $((START_TIME + DURATION)) ]; do
play_note 4
pause 0.1
play_note 5
pause 0.1
play_note 4
pause 0.15
done
fi
# Ensure buzzer is off
echo 0 | sudo tee $BUZZER_PATH > /dev/null 2>&1
echo ""
echo "Star Wars theme complete!"