--- title: Stream Box description: Configure ONN Media Box published: true date: 2026-02-20T04:50:44.701Z tags: editor: markdown dateCreated: 2026-02-20T04:50:34.384Z --- # Onn 4K Streaming Box Setup Guide **Complete configuration guide for Onn 4K streaming boxes used with Pocket Grimoire** --- ## Overview This guide covers the complete setup of your Onn 4K streaming boxes for use with Pocket Grimoire, including: - Initial device setup - WiFi configuration (portapotty network) - Required app installations (Jellyfin, StashApp, Netflix, YouTube TV) - Connection to Pocket Grimoire services - Troubleshooting common issues **Network Configuration:** - **WiFi SSID:** `portapotty` (GL.iNet Beryl AX travel router) - **Connection:** All devices connect wirelessly to portapotty - **Exception:** Raspberry Pi connects to router via CAT5 ethernet --- ## Hardware Information ### Onn 4K Streaming Box Specifications - **Model:** Onn 4K Streaming Box (Walmart exclusive) - **OS:** Android TV (Google TV interface) - **CPU:** Amlogic S905Y4 quad-core - **RAM:** 2GB - **Storage:** 8GB internal - **Video:** 4K HDR, Dolby Vision, Dolby Atmos - **WiFi:** 802.11ac (WiFi 5) dual-band - **Bluetooth:** 5.0 - **Ports:** HDMI 2.1, Micro-USB (power) - **Remote:** Voice remote with Google Assistant ### What's in the Box - Onn 4K streaming box - Voice remote with batteries - USB power adapter - HDMI cable (short) - Quick start guide --- ## Initial Setup ### First Power-On 1. **Connect to TV:** - Plug HDMI cable into Onn box - Connect other end to hotel TV HDMI port - Plug Micro-USB power into Onn box - Connect USB power adapter to wall or Anker Prime 2. **Power On:** - TV should auto-detect HDMI input - If not, use TV remote to select correct HDMI input - Onn box LED will light up (solid white when ready) - Wait for Google TV home screen 3. **Select Language:** - Use remote to select language (English) - Click OK 4. **Accessibility Options:** - Skip unless needed (click "Skip") ### WiFi Configuration **Critical: Connect to portapotty network** 1. **WiFi Setup Screen:** - List of available networks will appear - Scroll to find `portapotty` - Select `portapotty` - Click "Connect" 2. **Enter Password:** - Enter WiFi password for portapotty network - Use on-screen keyboard - Click "Connect" - Wait for connection (should take 5-10 seconds) - "Connected" message will appear 3. **Verify Connection:** - Should show "portapotty" with signal strength - Should show "Connected" status **Troubleshooting WiFi:** - If portapotty doesn't appear: Ensure Beryl AX router is powered on - If password fails: Double-check portapotty WiFi password - If connection drops: Move closer to router - Signal strength: Should be "Excellent" or "Good" in hotel room ### Google Account Setup **Option A: Sign in with Google Account** 1. Select "Sign in" 2. Use phone to scan QR code or enter code 3. Follow prompts on phone 4. Account will sync to Onn box **Option B: Set up without Google Account (Limited)** 1. Select "Skip" 2. Click "Skip" again to confirm 3. Some features will be limited (Play Store, purchases) 4. **Recommendation:** Use Option A for full functionality **For Pocket Grimoire:** - Need Google account for: Play Store (to install apps) - StashApp requires sideloading (see separate section) ### Complete Initial Setup 1. **Google Services:** - Accept terms (or skip) - Location services: Your choice - Device name: Name it (e.g., "Onn Box 1", "Onn Box 2") 2. **Voice Match:** - Set up "Hey Google" voice commands (optional) - Can skip and set up later 3. **Apps to Install:** - Google will suggest popular apps - Skip for now (we'll install specific apps later) - Click "Next" or "Skip" 4. **Complete:** - Should arrive at Google TV home screen - Remote should control interface - Ready to install apps --- ## App Installations ### 1. Jellyfin for Android TV **Install from Google Play Store:** 1. **Open Play Store:** - Press Home button on remote - Navigate to "Apps" tab at top - Select "Play Store" 2. **Search for Jellyfin:** - Click search icon (magnifying glass) - Type "Jellyfin" using on-screen keyboard - Select "Jellyfin for Android TV" from results - **Developer:** Jellyfin - **Note:** Choose "Jellyfin for Android TV" not regular Jellyfin 3. **Install:** - Click "Install" - Wait for download and installation (~30 seconds) - Click "Open" when complete 4. **Configure Jellyfin:** - Click "Connect to Server" - **Method 1 - Manual Entry:** - Click "Add server manually" - Host: `pocket-grimoire.local` or `10.0.0.10` (Pi's IP) - Port: `8096` - Click "Connect" - **Method 2 - Auto-Discovery (if available):** - Wait for Jellyfin to discover Pocket Grimoire - Select "Pocket Grimoire" from list - Click "Connect" 5. **Login:** - Enter username and password - Or select "Quick Connect" if configured - Click "Sign In" 6. **Verify:** - Should see Jellyfin home screen - Libraries (Movies, TV Shows) should appear - Test playing a video (should be direct play, no buffering) **Jellyfin Settings (Optional but Recommended):** - Settings → Playback - Video quality: Maximum - Allow direct play: ON - Allow direct stream: ON - Allow video transcoding: OFF (should be disabled on server already) ### 2. StashApp for Android TV **Installation: Requires Sideloading (GitHub Release)** StashApp is not available in Play Store, must be installed manually via APK file. #### Prerequisites - USB drive (for APK transfer) - Computer with internet access - OR Android phone with file transfer capability #### Method 1: USB Drive Installation (Recommended) **On Your Computer:** 1. **Download StashApp APK:** - Open browser: https://github.com/damontecres/StashAppAndroidTV/releases - Find latest release (e.g., v1.x.x) - Download file: `stashapp-tv-release-vX.X.X.apk` - Save to USB drive 2. **Prepare USB Drive:** - Format as FAT32 or exFAT (if not already) - Copy APK to root of USB drive - Safely eject USB drive **On Onn Box:** 3. **Enable Unknown Sources:** - Press Home button - Navigate to Settings (gear icon) - Select "Device Preferences" - Select "Security & Restrictions" - Enable "Unknown Sources" - Confirm warning (accept risk) 4. **Install File Manager (if needed):** - Open Play Store - Search "File Commander" or "X-plore File Manager" - Install one of these apps - Open the file manager app 5. **Connect USB Drive:** - Plug USB drive into Onn box USB port - **Note:** Onn box only has Micro-USB (power), so you need: - USB OTG adapter (Micro-USB to USB-A female) - OR transfer APK via network/Bluetooth **Alternative: Network Transfer** Since Onn box doesn't have easy USB access: 1. **Use Send Files to TV App:** - On Onn box: Install "Send Files to TV" from Play Store - On phone/computer: Install companion app - Transfer APK wirelessly - Open with package installer 2. **Or Use Cloud Storage:** - Upload APK to Google Drive - On Onn box: Install Google Drive app - Download APK from Drive - Open with package installer #### Method 2: Direct Download on Onn Box (Easiest) **On Onn Box:** 1. **Install Downloader App:** - Open Play Store - Search "Downloader" (by AFTVnews) - Install and open 2. **Download StashApp APK:** - In Downloader app, click URL field - Enter: `https://github.com/damontecres/StashAppAndroidTV/releases` - Navigate to latest release - Click APK download link - Save APK 3. **Install APK:** - Downloader will prompt to install after download - Click "Install" - Click "Done" when complete - APK will be installed **Configure StashApp:** 1. **Open StashApp:** - Find in Apps list (may be under "See all apps") - Or search "Stash" in search bar 2. **Connect to Server:** - Enter server URL: `http://pocket-grimoire.local:9999` - Or use IP: `http://10.0.0.10:9999` - Enter API key (if required) - Click "Connect" 3. **Test Connection:** - Should load Stash interface - Browse library - Test playing a preview - Verify scene markers work **StashApp Settings:** - Video quality: Original (for direct play) - Hardware acceleration: ON - Cache previews: ON (if storage available) ### 3. Netflix **Install from Google Play Store:** 1. **Open Play Store:** - Press Home button - Navigate to "Apps" - Select "Play Store" 2. **Search Netflix:** - Search bar → type "Netflix" - Select "Netflix" (official app) - Click "Install" - Wait for installation 3. **Open Netflix:** - Click "Open" after installation - Or find in Apps list 4. **Sign In:** - Enter Netflix email and password - Or scan QR code with phone - Select profile 5. **Test:** - Browse content - Play a video to verify streaming works - Check video quality (should be HD/4K) **Netflix Settings:** - Profile: Select your profile - Video quality: High (auto) - Subtitles/audio: Configure as preferred ### 4. YouTube TV **Install from Google Play Store:** 1. **Open Play Store:** - Navigate to Play Store - Search "YouTube TV" 2. **Install:** - Select "YouTube TV" (official app) - Click "Install" - Wait for installation 3. **Sign In:** - Open YouTube TV - Sign in with Google account (YouTube TV subscription) - Or use TV code activation: - Visit tv.youtube.com/start on computer/phone - Enter code shown on TV - Sign in and authorize 4. **Test:** - Browse live TV channels - Test DVR recordings - Verify streaming quality **YouTube TV Settings:** - Live guide: Configure preferences - DVR: Verify recordings accessible - Picture quality: Auto or 4K (if available) --- ## Network Configuration Details ### portapotty WiFi Network (GL.iNet Beryl AX) **Network Details:** - **SSID:** `portapotty` - **Frequency:** 2.4GHz + 5GHz (dual-band) - **Security:** WPA2/WPA3 - **DHCP:** Enabled (automatic IP assignment) - **Subnet:** 192.168.8.0/24 (default GL.iNet) - **Router IP:** 192.168.8.1 (Beryl AX admin panel) - **DNS:** Handled by Beryl AX (AdGuard Home) **Devices on portapotty Network:** - Raspberry Pi 4: Ethernet (CAT5) → 10.0.0.10 (static, or check DHCP) - Onn Box 1: WiFi → 192.168.8.x (DHCP assigned) - Onn Box 2: WiFi → 192.168.8.x (DHCP assigned) - Laptop: WiFi → 192.168.8.x (DHCP assigned) - Phone/tablet: WiFi → 192.168.8.x (DHCP assigned) ### Pocket Grimoire Service Addresses **When connected to portapotty network:** ``` Jellyfin: http://pocket-grimoire.local:8096 or http://10.0.0.10:8096 Stash: http://pocket-grimoire.local:9999 or http://10.0.0.10:9999 Wiki.js: http://pocket-grimoire.local:3000 or http://10.0.0.10:3000 File Browser: http://pocket-grimoire.local:8080 or http://10.0.0.10:8080 Router Admin: http://192.168.8.1 ``` **If `.local` names don't resolve:** - Use IP addresses directly (10.0.0.10) - Check Beryl AX DNS settings - Restart Onn box --- ## Configuration Checklist ### Pre-Deployment (At Home) **Before traveling, complete these tasks:** - [ ] Both Onn boxes powered on and tested - [ ] Both connected to test WiFi network - [ ] Google accounts signed in on both boxes - [ ] All 4 apps installed on both boxes: - [ ] Jellyfin for Android TV - [ ] StashApp for Android TV (sideloaded) - [ ] Netflix - [ ] YouTube TV - [ ] Jellyfin configured and tested (play test video) - [ ] StashApp configured and tested (browse library) - [ ] Netflix signed in (test streaming) - [ ] YouTube TV signed in (test live TV) - [ ] Both remotes have fresh batteries - [ ] Both boxes labeled (Box 1, Box 2) or distinguishable ### Hotel Deployment **Setup sequence at hotel:** 1. **Setup Beryl AX Router:** - Power on Beryl AX - Connect to hotel WiFi (via Beryl AX admin or phone app) - Verify internet connection - portapotty WiFi should be active 2. **Setup Pocket Grimoire:** - Power on Raspberry Pi - Connect via CAT5 to Beryl AX - Wait 2-3 minutes for boot - SSH in and unlock ZFS (if needed) - Verify Docker containers running 3. **Setup Onn Box 1:** - Connect to TV HDMI port - Power on - Wait for boot (30 seconds) - Should auto-connect to portapotty - If not: Settings → Network → portapotty → Connect - Test Jellyfin (should connect automatically) - Test StashApp (should connect automatically) 4. **Setup Onn Box 2 (if using):** - Connect to second TV or different HDMI port - Repeat setup steps above - Verify connection to portapotty 5. **Verify All Services:** - Open Jellyfin → Browse library → Play test video - Open StashApp → Browse library → Test preview - Open Netflix → Test streaming - Open YouTube TV → Test live channel **Total setup time: 10-15 minutes** --- ## Troubleshooting ### WiFi Connection Issues **Onn box won't connect to portapotty:** 1. **Verify Router is Online:** - Check Beryl AX power LED (should be solid) - Check Beryl AX WiFi LED (should be blinking/solid) - Use phone to verify portapotty network is visible 2. **Forget and Reconnect:** - Settings → Network & Internet - Select portapotty - Click "Forget network" - Scan again - Reconnect with password 3. **Check Router Settings:** - Access Beryl AX admin: http://192.168.8.1 - Verify WiFi is enabled - Check if DHCP is active - Verify no MAC filtering enabled 4. **Restart Devices:** - Power cycle Onn box (unplug, wait 10 seconds, plug back in) - Restart Beryl AX router - Try connecting again **Weak WiFi Signal:** - Move Beryl AX closer to TV/Onn box - Reduce obstacles between router and box - Use 2.4GHz band instead of 5GHz (better range, slower speed) - Check for interference (hotel WiFi channels) ### Jellyfin Connection Issues **Can't connect to Jellyfin server:** 1. **Verify Server is Running:** - SSH into Pocket Grimoire - Run: `docker ps | grep jellyfin` - Should show `pocketgrimoire_jellyfin` running 2. **Check Network Connectivity:** - On Onn box, open browser app - Navigate to: `http://pocket-grimoire.local:8096` - Or try IP: `http://10.0.0.10:8096` - Should load Jellyfin web interface 3. **Reconnect Jellyfin App:** - Open Jellyfin app - Settings → Server - Delete existing server - Add server manually: - Host: `pocket-grimoire.local` or `10.0.0.10` - Port: `8096` - Connect and login 4. **Check Firewall:** - SSH into Pi - Verify port 8096 is open: `sudo netstat -tlnp | grep 8096` - Should show jellyfin listening **Jellyfin Playback Issues:** **Video won't play:** - Check media is H.264/AAC (see encoding guide) - Verify network bandwidth (should be strong WiFi) - Try different video file - Check Jellyfin logs: `docker logs pocketgrimoire_jellyfin` **Video buffers/stutters:** - Check WiFi signal strength (move router closer) - Verify direct play (check playback info, should NOT say "transcoding") - If transcoding occurs: Media is not properly encoded - Check network activity: `ssh user@pocket-grimoire.local` then `iftop` **Subtitles don't work:** - Ensure subtitles are SRT format (not PGS/VobSub) - External .srt files work best - Embedded SRT in MKV also works ### StashApp Connection Issues **Can't connect to Stash server:** 1. **Verify Stash is Running:** - SSH into Pocket Grimoire - Run: `docker ps | grep stash` - Should show `pocketgrimoire_stash` running 2. **Test Server Connection:** - Open browser on Onn box - Navigate to: `http://pocket-grimoire.local:9999` - Or try: `http://10.0.0.10:9999` - Should load Stash web interface 3. **Reconfigure StashApp:** - Open StashApp - Settings → Server - Remove existing server - Add server: - URL: `http://pocket-grimoire.local:9999` - Or: `http://10.0.0.10:9999` - Enter API key (if required) - Connect 4. **Check API Key:** - If StashApp requires API key - SSH into Pi: `cat /srv/vaultpg/stash/config/config.yml | grep api_key` - Or access Stash web UI → Settings → Security → API Key - Copy key into StashApp **StashApp Crashes or Freezes:** - Clear app cache: Settings → Apps → StashApp → Clear cache - Restart Onn box - Reinstall StashApp (download latest APK) - Check Stash server logs: `docker logs pocketgrimoire_stash` **Previews won't play:** - Verify previews synced from Netgrimoire - Check: `ssh user@pocket-grimoire.local` - Run: `ls /srv/vaultpg/stash/generated/` (should show preview files) - If empty: Sync hasn't completed, or previews not generated on Netgrimoire ### Netflix/YouTube TV Issues **Netflix won't sign in:** - Verify Netflix subscription is active - Try signing in on phone/computer first - Use "Sign in with code" option (visit netflix.com/tv8 on another device) - Check internet connection (portapotty → hotel WiFi) **YouTube TV won't play:** - Verify YouTube TV subscription is active - Check location restrictions (some content blocked outside home area) - Try signing out and back in - Verify internet connection speed **Streaming quality poor:** - Check WiFi signal strength - Verify hotel internet speed (not throttled) - Switch to lower quality in app settings temporarily - Move router closer to TV ### General Onn Box Issues **Box won't turn on:** - Check power adapter is plugged in - Check Micro-USB cable is secure - Try different power source - LED should light up (white when on) **Remote not working:** - Check batteries (replace if needed) - Re-pair remote: Hold Back + Home for 5 seconds - Check for obstructions between remote and box - Try using Google Home app as remote backup **Box is slow/laggy:** - Clear cache: Settings → Storage → Cached data → Clear - Uninstall unused apps - Restart box: Settings → Device Preferences → About → Restart - Factory reset (last resort) **Apps keep crashing:** - Clear app cache and data - Uninstall and reinstall app - Check for OS updates: Settings → Device Preferences → About → System update - Factory reset if persistent **No sound:** - Check TV volume (not muted) - Check HDMI connection (reseat cable) - Settings → Display & Sound → Audio output → Test - Try different HDMI port on TV - Check if audio is set to "Auto" or "Stereo" ### DNS Resolution Issues **`.local` addresses don't work (pocket-grimoire.local fails):** 1. **Use IP Address Instead:** - Replace `pocket-grimoire.local` with `10.0.0.10` - Example: `http://10.0.0.10:8096` for Jellyfin 2. **Check Pi's IP Address:** - SSH into Pi: `ip addr show eth0` - Look for inet address (e.g., 192.168.8.50) - Use this IP in apps instead of .local 3. **Check Beryl AX DNS:** - Access http://192.168.8.1 - Check DNS settings - Verify AdGuard Home is running - Ensure mDNS/Bonjour reflection is enabled (if option available) 4. **Add Static DNS Entry:** - In Beryl AX admin panel - Add static DNS entry: pocket-grimoire → 10.0.0.10 --- ## Advanced Configuration ### Setting Static IP for Raspberry Pi **On Beryl AX router:** 1. Access admin panel: http://192.168.8.1 2. Navigate to Network → DHCP Server 3. Find Raspberry Pi in client list 4. Assign static IP: 10.0.0.10 5. Save and apply **Or on Raspberry Pi directly:** ```bash # Edit network config sudo nano /etc/dhcpcd.conf # Add at end: interface eth0 static ip_address=10.0.0.10/24 static routers=192.168.8.1 static domain_name_servers=192.168.8.1 ``` ### Optimizing Video Playback **Jellyfin Video Settings (on Onn box):** - Settings → Playback - Max streaming bitrate: Maximum (Auto) - Video quality: Maximum - Allow video playback that may require conversion: OFF - Skip intro: ON (if desired) **StashApp Video Settings:** - Settings → Playback - Video quality: Original - Hardware acceleration: ON - Buffer size: Large ### Remote Control Tips **Voice Commands:** - "Hey Google, open Jellyfin" - "Hey Google, play [movie name] on Jellyfin" - "Hey Google, pause" - "Hey Google, turn off TV" **Useful Remote Shortcuts:** - Home button (twice): Recent apps - Back button (hold): Return to home - Play/Pause: Works in most video apps - Voice button: Google Assistant --- ## App Locations **After installation, find apps here:** **Home Screen:** - Netflix, YouTube TV usually appear automatically **Apps Tab:** - All installed apps listed alphabetically - Jellyfin, StashApp will be here **Quick Access:** - Long-press Home → Add to Favorites - Apps appear on home screen for quick access --- ## Maintenance ### Weekly (While Using) - Check for app updates (Play Store → Updates) - Clear cache if apps feel slow - Verify WiFi connection strength ### Before Each Trip - Test all apps at home - Update apps if updates available - Check remote batteries - Verify all logins still active ### After Each Trip - Check for OS updates - Review installed apps (remove if unused) - Clear cache to free storage --- ## Factory Reset (If Needed) **When to factory reset:** - Box is extremely slow - Apps constantly crash - Persistent connection issues - Selling/giving away box **How to factory reset:** 1. **Via Settings:** - Settings → Device Preferences - About → Factory Reset - Confirm reset - Wait for reboot (3-5 minutes) 2. **Via Recovery Mode:** - Power off box - Hold reset button (if present) - Power on while holding - Navigate with remote to "Factory Reset" - Confirm **After reset:** - Complete initial setup again (see beginning of guide) - Reinstall all apps - Reconfigure WiFi and services --- ## Quick Reference Card **Essential Information:** ``` WiFi Network: portapotty Router Admin: http://192.168.8.1 Pocket Grimoire Services: - Jellyfin: http://pocket-grimoire.local:8096 - Stash: http://pocket-grimoire.local:9999 - Wiki: http://pocket-grimoire.local:3000 If .local fails, use IP: http://10.0.0.10:[PORT] Apps Required: ✓ Jellyfin for Android TV (Play Store) ✓ StashApp for Android TV (Sideload APK) ✓ Netflix (Play Store) ✓ YouTube TV (Play Store) Troubleshooting: 1. Restart Onn box 2. Check portapotty WiFi connection 3. Verify Pocket Grimoire is running (SSH check) 4. Use IP addresses instead of .local names ``` --- ## Appendix: StashApp APK Sources **Official GitHub Repository:** - https://github.com/damontecres/StashAppAndroidTV - Releases: https://github.com/damontecres/StashAppAndroidTV/releases - Latest version: Check releases page **Verification:** - Download only from official GitHub releases - Verify file integrity (check file size, release notes) - Watch for malware warnings (false positives common with sideloaded APKs) **Update Process:** - Check GitHub for new releases periodically - Download new APK - Install over existing app (data preserved) - Or uninstall and reinstall clean --- *This guide was created for Onn 4K streaming box configuration with Pocket Grimoire. Keep updated as apps and configurations change.*