# Unity OVR Setup Checklist
## Phase 1: Initial Project Setup
- [ ] Open Unity Hub
- [ ] Create a new project
- [ ] Go to the sample section
- [ ] Download the Universal 3D sample (if not already downloaded)
- [ ] Name the project (e.g., "OVR Intro Tutorial")
- [ ] Wait for the project to open
## Phase 2: Install OVR Plugin
- [ ] In Unity, create a new folder under Assets named "plugins"
- [ ] Navigate to the plugins folder location in File Explorer (right-click > Show in Explorer)
- [ ] Copy the OVR Unity plugin files
- [ ] Paste the OVR plugin into the "plugins" folder
- [ ] Return to Unity and wait for it to process the plugin
## Phase 3: Resolve Dependencies
- [ ] Go to Window > Package Manager
- [ ] Click "Add package by name"
- [ ] Enter package name: `com.unity.nuget.newtonsoft-json`
- [ ] Click Add and wait for installation
- [ ] Hit Play to test
- [ ] Stop playback
- [ ] Verify console is clean (no warning messages)
## Phase 4: Prepare the Scene
- [ ] Navigate to Assets > Scenes > Oasis
- [ ] Double-click the Oasis scene to open it
- [ ] Wait for the scene to load
## Phase 5: Create Odor Sources Folder
- [ ] In Assets root, create a new folder named "Odor Sources"
- [ ] Drag and drop your core scent files into the "Odor Sources" folder
- [ ] Wait for Unity to process the imported scent assets
## Phase 6: Scent-Enable an Object
- [ ] Select an object to scent-enable (e.g., shrub or palm tree)
- [ ] Click "Add Component"
- [ ] Search for "Odor"
- [ ] Select "Odorant Sphere" component
- [ ] Click on the Odor Assets section
- [ ] Select a scent (e.g., "Green Acid")
## Phase 7: Configure Odorant Sphere Bounds
- [ ] Set Inner Radius to 1
- [ ] Set Offset Y to 0.5 (to move it up slightly)
- [ ] Set Outer Radius to 8
- [ ] Note: Blue outer radius = when smell starts; white/gray inner radius = peak intensity
## Phase 8: Configure Main Camera for Smelling
- [ ] Locate the FPS Controller in the hierarchy
- [ ] Select the Main Camera (child of FPS Controller)
- [ ] Click "Add Component"
- [ ] Search for "Olfactory Epithelium"
- [ ] Add the Olfactory Epithelium component
## Phase 9: Add Connection Management Components
- [ ] With Main Camera still selected, click "Add Component"
- [ ] Search for and add "Connection Manager"
- [ ] Click "Add Component" again
- [ ] Search for and add "Odorant Manager"
- [ ] Click "Add Component" again
- [ ] Search for and add "Message Queue Manager"
## Phase 10: Test Connection (Quick Connect Method)
- [ ] Go to Window > OVR Quick Connect
- [ ] Click Play to run the project
- [ ] In the OVR Quick Connect menu, click "BLE Scan"
- [ ] Check console logs for "ion device found finished scanning and init connected"
- [ ] Verify physical device LED turns blue (indicating connection)
- [ ] Navigate character toward scent-enabled object
- [ ] Observe console log showing green command and intensity values
- [ ] Stop playback
- [ ] Verify device LED changes from blue to orange (disconnected)
## Phase 11: Understanding Manual Connection (Optional)
- [ ] Navigate to Plugins > OVR Utility Plugin > Editor
- [ ] Open the "OVR Editor Tools" script
- [ ] Locate the "BLE Scan" button code
- [ ] Review the BLE Connection Style options:
- **OS**: Pre-connect via OS BLE connection menu
- **In-App**: Android-specific connection dialog
- **Scan**: Classic area scanning method
- [ ] Note the two key lines for manual connection: setting connection style to "Scan" and initializing the connection manager instance
## Setup Complete! ✓
---