✅ TICKET-006: Wake-word Detection Service - Implemented wake-word detection using openWakeWord - HTTP/WebSocket server on port 8002 - Real-time detection with configurable threshold - Event emission for ASR integration - Location: home-voice-agent/wake-word/ ✅ TICKET-010: ASR Service - Implemented ASR using faster-whisper - HTTP endpoint for file transcription - WebSocket endpoint for streaming transcription - Support for multiple audio formats - Auto language detection - GPU acceleration support - Location: home-voice-agent/asr/ ✅ TICKET-014: TTS Service - Implemented TTS using Piper - HTTP endpoint for text-to-speech synthesis - Low-latency processing (< 500ms) - Multiple voice support - WAV audio output - Location: home-voice-agent/tts/ ✅ TICKET-047: Updated Hardware Purchases - Marked Pi5 kit, SSD, microphone, and speakers as purchased - Updated progress log with purchase status 📚 Documentation: - Added VOICE_SERVICES_README.md with complete testing guide - Each service includes README.md with usage instructions - All services ready for Pi5 deployment 🧪 Testing: - Created test files for each service - All imports validated - FastAPI apps created successfully - Code passes syntax validation 🚀 Ready for: - Pi5 deployment - End-to-end voice flow testing - Integration with MCP server Files Added: - wake-word/detector.py - wake-word/server.py - wake-word/requirements.txt - wake-word/README.md - wake-word/test_detector.py - asr/service.py - asr/server.py - asr/requirements.txt - asr/README.md - asr/test_service.py - tts/service.py - tts/server.py - tts/requirements.txt - tts/README.md - tts/test_service.py - VOICE_SERVICES_README.md Files Modified: - tickets/done/TICKET-047_hardware-purchases.md Files Moved: - tickets/backlog/TICKET-006_prototype-wake-word-node.md → tickets/done/ - tickets/backlog/TICKET-010_streaming-asr-service.md → tickets/done/ - tickets/backlog/TICKET-014_tts-service.md → tickets/done/
3.9 KiB
3.9 KiB
Quick Start Guide
Get the Atlas voice agent system up and running quickly.
Prerequisites
- Python 3.8+ installed
- Ollama installed and running (for local testing)
- pip for installing dependencies
Setup (5 minutes)
1. Install Dependencies
cd /home/beast/Code/atlas/home-voice-agent/mcp-server
pip install -r requirements.txt
2. Configure Environment
cd /home/beast/Code/atlas/home-voice-agent
# Check current config
cat .env | grep OLLAMA
# Toggle between local/remote
./toggle_env.sh
Default: Local testing (localhost:11434, llama3:latest)
3. Start Ollama (if testing locally)
# Check if running
curl http://localhost:11434/api/tags
# If not running, start it:
ollama serve
# Pull a model (if needed)
ollama pull llama3:latest
4. Start MCP Server
cd /home/beast/Code/atlas/home-voice-agent/mcp-server
./run.sh
Server will start on http://localhost:8000
Quick Test
Test 1: Verify Server is Running
curl http://localhost:8000/health
Should return: {"status": "healthy", "tools": 22}
Test 2: Test a Tool
curl -X POST http://localhost:8000/mcp \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_current_time",
"arguments": {}
}
}'
Test 3: Test LLM Connection
cd /home/beast/Code/atlas/home-voice-agent/llm-servers/4080
python3 test_connection.py
Test 4: Run All Tests
cd /home/beast/Code/atlas/home-voice-agent
./test_all.sh
Access the Dashboard
- Start the MCP server (see above)
- Open browser: http://localhost:8000
- Explore:
- Status overview
- Recent conversations
- Active timers
- Tasks
- Admin panel
Common Tasks
Switch Between Local/Remote
cd /home/beast/Code/atlas/home-voice-agent
./toggle_env.sh # Toggles between local ↔ remote
View Current Configuration
cat .env | grep OLLAMA
Test Individual Components
# MCP Server tools
cd mcp-server && python3 test_mcp.py
# LLM Connection
cd llm-servers/4080 && python3 test_connection.py
# Router
cd routing && python3 test_router.py
# Memory
cd memory && python3 test_memory.py
View Logs
# LLM logs
tail -f data/logs/llm_*.log
# Or use dashboard
# http://localhost:8000 → Admin Panel → Log Browser
Troubleshooting
Port 8000 Already in Use
# Find and kill process
lsof -i:8000
pkill -f "uvicorn|mcp_server"
# Restart
cd mcp-server && ./run.sh
Ollama Not Connecting
# Check if running
curl http://localhost:11434/api/tags
# Check .env config
cat .env | grep OLLAMA_HOST
# Test connection
cd llm-servers/4080 && python3 test_connection.py
Tools Not Working
# Check tool registry
cd mcp-server
python3 -c "from tools.registry import ToolRegistry; r = ToolRegistry(); print(f'Tools: {len(r.list_tools())}')"
Import Errors
# Install missing dependencies
cd mcp-server
pip install -r requirements.txt
# Or install python-dotenv
pip install python-dotenv
Next Steps
- Test the system: Run
./test_all.sh - Explore the dashboard: http://localhost:8000
- Try the tools: Use the MCP API or dashboard
- Read the docs: See
TESTING.mdfor detailed testing guide - Continue development: Check
tickets/NEXT_STEPS.mdfor recommended tickets
Configuration Files
.env- Main configuration (local/remote toggle).env.example- Template filetoggle_env.sh- Quick toggle script
Documentation
TESTING.md- Complete testing guideENV_CONFIG.md- Environment configuration detailsREADME.md- Project overviewtickets/NEXT_STEPS.md- Recommended next tickets
Support
If you encounter issues:
- Check the troubleshooting section above
- Review logs in
data/logs/ - Check the dashboard admin panel
- See
TESTING.mdfor detailed test procedures