Voice Control Guide
Overview
ATOM SaaS integrates with Amazon Alexa and Google Home for voice control of smart home devices. Use natural language commands to control lights, thermostats, locks, and activate scenes.
Amazon Alexa Setup
Prerequisites
- Amazon account
- Alexa-enabled device (Echo, Echo Dot, etc.) or Alexa app
- Smart home devices configured in ATOM SaaS
Setup Steps
1. Create Alexa Skill
- Go to Amazon Developer Console
- Click "Create Skill"
- Skill name: "ATOM SaaS Smart Home"
- Skill type: "Smart Home"
- Click "Create Skill"
2. Configure Skill
Interaction Model:
- Smart Home Properties: Lighting, Thermostat, Lock
- Supports Discovery: Yes
- Requires Account Linking: Yes
Endpoint:
- Default:
https://your-domain.com/api/smarthome/alexa - HTTPS required (TLS 1.2+)
3. Account Linking
- Navigate to Account Linking
- Authorization URL:
https://your-domain.com/api/smarthome/alexa/link - Redirect URIs: Add
https://api.amazon.com/auth/callback - Scope:
smart_home_all - Client ID and Secret: Generate in ATOM SaaS (Settings → Integrations → Alexa)
4. Privacy Policy
Add privacy policy URL:
https://your-domain.com/privacy
5. Publish Skill
- Submit for certification
- Testing: Test with Alexa app before publishing
- Wait for Amazon approval (1-3 business days)
Account Linking
- Open Alexa app → Skills & Games
- Search "ATOM SaaS Smart Home"
- Enable skill
- Link account: Log in with ATOM SaaS credentials
- Grant permissions: Allow access to smart home devices
Device Discovery
Alexa automatically discovers devices after account linking:
- Say: "Alexa, discover devices"
- Or: Alexa app → Devices → Add Device → ATOM SaaS
- Wait for discovery to complete (may take 1-2 minutes)
Discovered devices appear as:
- Lights: "Living Room Light", "Kitchen Light"
- Thermostats: "Hallway Thermostat"
- Locks: "Front Door Lock"
- Groups: "All Lights", "Downstairs Lights"
Google Home Setup
Prerequisites
- Google account
- Google Home-enabled device (Google Home, Nest Mini, etc.) or Google Home app
- Smart home devices configured in ATOM SaaS
Setup Steps
1. Create Actions Project
- Go to Actions Console
- Click "New Project"
- Project name: "ATOM SaaS Smart Home"
- Click "Create Project"
2. Configure Smart Home
- Overview → Smart Home
- Click "Add" / "Get Started"
- Integration type: "Cloud"
Fulfillment URL:
https://your-domain.com/api/smarthome/google-home
Auth Configuration:
- Client ID: Generate in ATOM SaaS
- Client Secret: Generate in ATOM SaaS
- Authorization URL:
https://your-domain.com/api/smarthome/google-home/link - Token URL:
https://your-domain.com/api/smarthome/google-home/token
3. Account Linking
- Configure OAuth 2.0
- Grant Type: Authorization Code
- Authorization URL: (same as above)
- Token URL: (same as above)
- Client ID and Secret: (same as above)
- Scopes: Smart home devices
4. Test Integration
- Actions Console → Test
- Add test device: Simulate device sync
- Test commands: Simulate voice commands
- Verify responses
5. Deploy to Production
- Actions Console → Deploy
- Release channel: Production
- Deploy to all users
Account Linking
- Open Google Home app → Add → Set up device
- Search "Works with Google"
- Find "ATOM SaaS"
- Link account: Log in with ATOM SaaS credentials
- Grant permissions
Device Discovery
Google Home automatically discovers devices:
- Open Google Home app → Devices
- Click "Add Device" → "Works with Google"
- Select "ATOM SaaS"
- Devices appear automatically
Supported Voice Commands
Lighting
On/Off:
- "Alexa, turn on the living room light"
- "Hey Google, turn off the kitchen lights"
- "Alexa, turn on all lights"
- "Hey Google, turn off all the lights"
Brightness:
- "Alexa, set the bedroom light to 50%"
- "Hey Google, dim the living room lights to 20%"
- "Alexa, brighten the kitchen lights"
- "Hey Google, set the porch light to 100%"
Color:
- "Alexa, set the living room light to blue"
- "Hey Google, make the kitchen light red"
- "Alexa, set the bedroom light to warm white"
- "Hey Google, change the porch light to green"
Color Temperature:
- "Alexa, set the living room light to cool white"
- "Hey Google, make the bedroom lights warmer"
Groups:
- "Alexa, turn on the downstairs lights"
- "Hey Google, turn off all the lights in the kitchen"
Climate
Temperature:
- "Alexa, set the thermostat to 72 degrees"
- "Hey Google, set the hallway thermostat to 70"
- "Alexa, increase the temperature by 2 degrees"
- "Hey Google, decrease the temperature by 5 degrees"
Mode:
- "Alexa, set the thermostat to heat"
- "Hey Google, set the thermostat to cool"
- "Alexa, set the thermostat to eco"
- "Hey Google, turn on eco mode"
Current Temperature:
- "Alexa, what's the temperature inside?"
- "Hey Google, what's the thermostat set to?"
Security
Locks:
- "Alexa, lock the front door"
- "Hey Google, unlock the front door"
- "Alexa, is the front door locked?"
- "Hey Google, lock all the doors"
Status:
- "Alexa, is the back door locked?"
- "Hey Google, are all the doors locked?"
Scenes
Activate Scenes:
- "Alexa, activate Movie Night"
- "Hey Google, start Good Morning"
- "Alexa, turn on Away mode"
- "Hey Google, activate Bedtime"
Multiple Devices
All Devices of Type:
- "Alexa, turn on all the lights"
- "Hey Google, turn off all the lights"
Room-Specific:
- "Alexa, turn on all lights in the living room"
- "Hey Google, turn off all lights in the kitchen"
Command Limitations
Alexa Limitations
Command Format:
- Must use device name exactly as discovered
- Room names must match Alexa room groups
- Scenes must be discovered by Alexa
Response Time:
- 1-3 seconds for simple commands
- 5-10 seconds for complex scenes
- May delay if network slow
Device Naming Best Practices:
- Use simple names: "Living Room Light" (not "LR Main Light #1")
- Avoid special characters: "Living Room Light" (not "Living Room Light!")
- Include room in name: "Kitchen Light" (not just "Light")
Google Home Limitations
Command Format:
- More flexible than Alexa (fuzzy matching)
- Supports natural language variations
- Room names must match Google Home room assignments
Response Time:
- Similar to Alexa (1-3 seconds)
- May be faster for local devices
- Can batch multiple devices
Device Naming:
- Google Home is more forgiving with names
- Supports nicknames in Google Home app
- Can assign devices to rooms in app
Troubleshooting Voice Commands
Device Not Found
Symptoms:
- "Alexa, device not found"
- "Hey Google, I can't find that device"
Solutions:
- Rediscover devices: "Alexa, discover devices" / Google Home app → Devices → Sync
- Check device name: Use exact name from discovery
- Verify online: Device powered on, hub connected?
- Re-link account: Disable skill, re-enable, link account again
Command Not Recognized
Symptoms:
- "Alexa, I don't understand"
- "Hey Google, I can't do that yet"
Solutions:
- Check capability: Device supports the command? (Basic bulbs can't change color)
- Verify device type: Alexa sees device as correct type? (Light, thermostat, lock)
- Test command variation: Try different phrasing
- Check skill status: Alexa skill enabled? Google Home project active?
State Not Updating
Symptoms:
- Alexa/Google shows wrong state
- Command succeeded but state didn't change
Solutions:
- Check device: Physical device actually changed?
- Sync state: "Alexa, what's the state of the living room light?"
- Re-discover: Run device discovery again
- Check hub: Device state synced to hub?
Response Slow
Symptoms:
- Long delay before command executes
- Timeout errors
Solutions:
- Network speed: Check internet connection
- Cloud latency: Alexa/Google service slow?
- Rate limiting: Too many commands in short time
- Hub load: Hub processing other commands?
Advanced Features
Routines
Create routines for multiple actions:
Alexa Routines:
- Open Alexa app → Routines → Create Routine
- Trigger: "Alexa, good morning"
- Actions:
- "Set living room light to 80%"
- "Set thermostat to 72 degrees"
- "Play news briefing"
- Save routine
Google Home Routines:
- Open Google Home app → Routines → Add
- Starter: "Hey Google, good morning"
- Actions:
- Adjust living room light: 80%
- Adjust thermostat: 72°F
- Play music
- Save routine
Custom Voice Commands
Create custom commands for automations:
Example:
- Create automation: "Movie Night" scene
- Link to voice: "Alexa, activate Movie Night"
- Automation executes: Dims lights, lowers temperature, turns on TV
Best Practices:
- Use intuitive names: "Movie Night" (not "Automation 123")
- Keep it short: 1-3 words
- Avoid numbers: "Movie Night" (not "Movie Night 2")
Voice Control Tips
For Best Results:
- Speak clearly and naturally
- Use consistent device names
- Include room names when ambiguous
- Test commands before relying on them
Device Naming Tips:
- Be descriptive: "Living Room Main Light" (not "Light 1")
- Use room names: "Kitchen Light", "Bedroom Light"
- Avoid similar names: "Light 1", "Light 2" (confusing)
- Group devices: "All Living Room Lights", "All Lights"
Security and Privacy
Voice Data
Alexa:
- Voice recordings stored in Amazon account
- Review recordings: Alexa app → Settings → Alexa Privacy
- Delete recordings: "Alexa, delete what I just said"
- Opt-out: Alexa app → Settings → Alexa Privacy → Manage Voice Recordings
Google Home:
- Voice recordings stored in Google account
- Review recordings: My Activity
- Delete recordings: "Hey Google, delete everything I said today"
- Opt-out: Google Account → Data & Personalization → Activity Controls
Access Control
Prevent Unauthorized Voice Control:
- Voice Profile: Set up voice profile (Alexa/Google Home)
- Voice Code: Require PIN for sensitive commands (locks, security)
- Guest Mode: Disable voice control for guests
- Limit Devices: Don't discover all devices, only essential ones
Setup Voice Code:
- Alexa app → Devices → [Device] → Voice Code → Set 4-digit PIN
- Google Home app → Devices → [Device] → Settings → Require PIN
Privacy Best Practices
- Review recordings: Regularly check and delete voice recordings
- Disable when not home: Turn off microphones when away
- Guest network: Put Alexa/Google Home on guest network (isolated)
- Secure hub: Keep hub firmware updated, use strong passwords
Supported Features Comparison
| Feature | Alexa | Google Home | |---------|-------|-------------| | Lighting On/Off | ✅ | ✅ | | Brightness | ✅ | ✅ | | Color | ✅ | ✅ | | Color Temp | ✅ | ✅ | | Thermostat Temp | ✅ | ✅ | | Thermostat Mode | ✅ | ✅ | | Lock/Unlock | ✅ | ✅ | | Lock Status | ✅ | ✅ | | Scenes | ✅ | ✅ | | Groups | ✅ | ✅ | | Routines | ✅ | ✅ | | Fuzzy Matching | ❌ | ✅ | | Voice Profiles | ✅ | ✅ | | Voice Codes | ✅ | ✅ (via routine) |
Getting Help
Documentation
- Integration Guide: INTEGRATION_GUIDE.md
- Automation Guide: AUTOMATION_GUIDE.md
- Troubleshooting: TROUBLESHOOTING.md
Support
For voice control issues:
- Alexa: Check Amazon Alexa Help, ATOM SaaS forum
- Google Home: Check Google Home Help, ATOM SaaS forum
- Support: support@atom-saas.com
Community
Share tips and tricks:
- ATOM SaaS Community Forum
- Reddit: r/athomeshome
- Discord: ATOM SaaS Server