Photon support and connection diagnostics

Diagnose local network permissions, inspect per-brand Wake-on-LAN standby paths, verify Android TV Remote v2 TLS certificates, or reach our engineering team directly with a privacy-redacted Connection Doctor report.

Direct engineering contact support@auraone.com
First response target Within 24 hours (Monday to Sunday)
Lifetime unlock restore photon.pro.lifetime via StoreKit 2
Connection Doctor 9 checks
Tap the top connection pill in Photon to run all ordered local network and TLS pin checks. Click screenshot to inspect full size.
TLS 6467 hex pairing SHA-256
Validates the 6-character hexadecimal code locally before sending the pairing secret over TLS. Click screenshot to inspect full size.
9 ordered checks
Evaluated in strict sequence by Connection Doctor
9 TV brand profiles
Tailored standby menu paths in BrandGuidance.swift
102 byte WoL frame
IEEE 802.3 magic packet broadcast on UDP ports 9 and 7
6466 TLS session port
Mutual TLS 1.2 and 1.3 control channel with SHA-256 pin

Interactive brand standby and Wake-on-LAN configurator

Many televisions disable their Wi-Fi or Ethernet interface in deep energy-saving sleep. Select your television or streaming device below to view the exact standby setting from BrandGuidance.swift, the hardware wake mechanism, IME keyboard notes, and volume behavior.

Verified across 11 physical lab devices

Sony Bravia (Google TV and Android TV)

Enable Remote start on your Sony Bravia so it keeps its network interface listening while in standby.

Remote start + WoL + Sony REST PSK
tv settings menu path (brandguidance.swift) Settings / Network & Internet / Remote start / On (Powered on by apps)
standby wake mechanism UDP 102-Byte Magic Packet on Ports 9 & 7, TLS Port 6466 KEYCODE_POWER, and optional Sony REST PSK (POST /sony/system setPowerStatus)
hardware volume support Full 0 to 100 readout via RemoteConfigure; direct absolute volume slider when Sony REST Pre-Shared Key (PSK) is enabled
ime keyboard and firmware notes Full live field mirroring, replace, paste, and password AutoFill. Android 9 Bravia sets (such as X900F) require TLS 1.2 client certificate authentication on port 6467 during initial pairing, handled automatically by Photon.

TCL Google TV (QM8, Q7, S5, and C-Series)

Enable Screenless service (or Quick Start) so your TCL Google TV stays reachable on Wi-Fi when turned off.

Screenless service + WoL
tv settings menu path (brandguidance.swift) Settings / System / Power & Energy / Screenless service / On (and Quick Start / On)
standby wake mechanism TLS Port 6466 (KEYCODE_POWER when Screenless service keeps daemon warm) + UDP 102-Byte Magic Packet on Ports 9 & 7
hardware volume support Full 0 to 100 level and mute state telemetry over RemoteSetVolumeLevel
ime keyboard and firmware notes TCL's built-in T-IME may display a banner stating "Use the keyboard on your mobile device" and hide the on-screen keyboard. Toggle Use TV's own keyboard in Photon Settings (feature mask 683) if you prefer the TV's on-screen keyboard to stay visible.

Hisense Google TV (U8N, U7N, U6N, and Laser TV)

Turn on Wake on Wireless Network and Wake on Cast so your Hisense TV responds to Wake-on-LAN and remote power commands.

Wake on Wireless Network + WoL
tv settings menu path (brandguidance.swift) Settings / System / Power & Energy (or Advanced System) / Wake on Cast & Wake on Wireless Network / On
standby wake mechanism UDP 102-Byte Magic Packet on Ports 9 & 7 bound to active Wi-Fi interface + TLS Port 6466 wakeup
hardware volume support Full 0 to 100 internal speaker and eARC HDMI-CEC volume readout
ime keyboard and firmware notes Full native RemoteImeBatchEdit text mirroring and Wi-Fi password AutoFill with zero known firmware quirks.

NVIDIA Shield TV and Shield TV Pro

Enable Wake on local network and HDMI-CEC One-touch play on your NVIDIA Shield to wake both the Shield and your TV panel.

Network standby + CEC One-touch
tv settings menu path (brandguidance.swift) Settings / Device Preferences / System / Wake on local network / On (and Display & Sound / Power control / CEC One-touch play)
standby wake mechanism TLS Port 6466 (KEYCODE_POWER / KEYCODE_WAKEUP) + UDP 102-Byte Magic Packet on Ports 9 & 7 over Ethernet or Wi-Fi
hardware volume support Supports HDMI-CEC volume step keys; automatically hides numerical readout pill when Shield is set to fixed HDMI output (volume_max == 0)
ime keyboard and firmware notes If Shield Experience 9.2+ displays the mobile keyboard takeover prompt when you prefer typing with the D-pad, enable Use TV's own keyboard in Photon Settings. CapabilityTracker automatically dims KEYCODE_GUIDE after 2 unacknowledged presses.

Google TV Streamer (4K) and Chromecast with Google TV

Chromecast with Google TV and Google TV Streamer stay reachable in standby and wake your television display via HDMI-CEC.

Always-on TLS Port 6466 + HDMI-CEC
tv settings menu path (brandguidance.swift) Settings / Display & Sound / HDMI-CEC / Enable; Settings / System / Power & Energy / Never turn off network
standby wake mechanism TLS Port 6466 direct session wake + HDMI-CEC One-Touch Play to power on the connected TV panel
hardware volume support Full internal streamer volume or HDMI-CEC AVR/TV volume control via RemoteKeyInject
ime keyboard and firmware notes Reference Android 14 (UTTC / UTTK) target. Power the streamer from its dedicated wall adapter rather than a switched television USB port so its Wi-Fi and Ethernet interfaces remain powered when the TV is off.

Walmart onn 4K Pro and onn Google TV 4K

Keep HDMI-CEC enabled on your Walmart onn 4K Pro so waking the streamer also turns on the television display.

Always-on standby + HDMI-CEC
tv settings menu path (brandguidance.swift) Settings / Display & Sound / HDMI-CEC / Enable; Settings / System / Power & Energy / Turn off display / Never
standby wake mechanism TLS Port 6466 direct wake + UDP 102-Byte Magic Packet on Ports 9 & 7
hardware volume support Full internal and HDMI-CEC volume control with live level indicator
ime keyboard and firmware notes Full Gboard TV IME text mirroring, batch edit replacement, and 16-bit 8 kHz PCM voice streaming with zero firmware workarounds required.

Philips Android TV and Ambilight OLED

Enable Switch On with Wi-Fi (WoWLAN) so your Philips Android TV can be powered on from your iPhone instead of entering deep eco sleep.

WoWLAN + JointSpace v6
tv settings menu path (brandguidance.swift) Settings / Wireless and Networks / Wired or Wi-Fi / Switch On with Wi-Fi (WoWLAN) / On
standby wake mechanism UDP 102-Byte Magic Packet on Ports 9 & 7 (WoWLAN) + TLS Port 6466 + Philips JointSpace v6 REST API (:1925/6/powerstate)
hardware volume support Full 0 to 60 hardware volume range via Remote v2 and JointSpace /6/audio/volume
ime keyboard and firmware notes Some Philips models enter deep eco standby after 15 minutes unless WoWLAN is enabled. Regional firmware builds without remote_voice_begin automatically use Photon's on-device SFSpeechRecognizer transcription fallback.

Xiaomi Mi Box S and TV Box S (2nd Gen)

Xiaomi Mi Box S turns off its Wi-Fi radio completely in deep standby. Network wake is not supported from deep sleep unless Stay awake is enabled.

Deep sleep cuts Wi-Fi power
tv settings menu path (brandguidance.swift) Settings / Device Preferences / Developer options / Stay awake (or wake once with physical Bluetooth remote)
standby wake mechanism TLS Port 6466 works during shallow daydream standby only; hardware cuts Wi-Fi power in deep sleep
hardware volume support Full 0 to 15 step volume control and mute synchronization
ime keyboard and firmware notes Xiaomi firmware enforces a single active phone remote session at a time. If a second iPhone connects, Photon cleanly surfaces ATVError.busy ("Another device is controlling TV") without erasing your pairing pin.

Uncertified Android TV / AOSP Box

Enable Networked Standby (or Wake on LAN) and HDMI-CEC in your Android TV box settings so it remains reachable when turned off.

Best-effort compatibility
tv settings menu path (brandguidance.swift) Settings / System / Power & Energy / Networked Standby / Wake on LAN / On
standby wake mechanism UDP 102-Byte Magic Packet on Ports 9 & 7 when Ethernet NIC remains powered; otherwise power off only
hardware volume support Uncertified boxes often report fixed HDMI volume (volume_max == 0); Photon automatically hides the numeric level readout
ime keyboard and firmware notes Some AOSP builds ship an older Android TV Remote Service (v5.1.x) where batch text replacement is append-only. Update Android TV Remote Service from Google Play if available.

Troubleshooting reference and protocol error matrix

Every failure state in Photon maps to a deterministic check in Doctor.swift and LaunchResolver.swift. Filter by symptom, error code, or protocol layer below.

symptom in photon diagnostic signal root cause deterministic fix
Local Network permission denied (-65570) kDNSServiceErr_PolicyDenied (-65570) iOS blocked multicast Bonjour discovery (_androidtvremote2._tcp) and local TCP sockets for Photon. Open iOS Settings, select Privacy & Security, select Local Network, and enable the switch next to Photon.
Pairing code rejected locally (SHA-256 first-byte mismatch) ATVError.badCode (Polo port 6467) The 6-character hexadecimal PIN entered does not match the expected first byte of SHA256(modulus_tv || exp_tv || modulus_client || exp_client || code[1..2]). Check the 6-character hex code (0-9, A-F) shown on your TV screen; Photon rejects typos locally before transmitting the secret so the TV does not cancel the PIN dialog.
Certificate pin mismatch after TV factory reset ATVError.pinMismatch (TOFU SHA-256) Your TV was factory-reset or had its Android TV Remote Service app storage cleared, rotating its self-signed X.509 leaf certificate on port 6466. Tap Re-pair in the Photon banner or Connection Doctor to clear the old SHA-256 pin and complete a fresh 6-character hex pairing.
Another phone is connected (Session busy) ATVError.busy (TCP port 6466) Certain Android TV firmware builds (such as Xiaomi Mi Box S) allow only one active phone controller socket on port 6466 at a time. Close the remote session on the other iPhone, iPad, or Mac in your household, then tap Retry in Photon. Your pairing pin remains intact.
YouTube or Netflix custom on-screen keyboard RemoteImeShowRequest / Mask 683 YouTube, Netflix, and Prime Video often render custom canvas keyboards that do not emit standard Android EditorInfo text fields, or TCL/Shield hides the TV keyboard when IME support is advertised. Use the D-pad or Swipe Pad for custom canvas grids, or toggle Use TV's own keyboard in Photon Settings (feature mask 683) to keep the TV's native keyboard visible.
August/October 2026 Play Store v52.6 app launch changes LaunchResolver R20 / R22 chain Google Play Store v52.6+ on Android TV deprecated silent market://launch?id= intents for certain packages and may drop the port 6466 socket when an unsupported URI scheme is sent. Photon's LaunchResolver automatically walks the fallback chain (deepLinks to market://launch to market://details?id=<pkg> + DPAD_CENTER) and silently reconnects within milliseconds if a scheme drops the socket.
Legacy Remote Service v1 detected _androidtvremote._tcp (v1 only) The television is advertising the legacy v1 service without the Protobuf v2 service (_androidtvremote2._tcp). On your TV, open Google Play Store, search for Android TV Remote Service, and install the latest update.
Different network subnets or VPN active DoctorCheckKind.subnetMatch / vpn Your iPhone is connected to a Guest Wi-Fi VLAN with AP client isolation, or an active VPN tunnel (utun) is capturing local 192.168.x.x routes. Join the primary home Wi-Fi SSID on both devices and enable Allow Local Network (LAN Bypass) in your VPN settings.

Interactive Connection Doctor redacted report previewer

When you tap Copy report in Connection Doctor, Photon automatically masks IPv4 host octets, hardware MAC addresses, and SHA-256 certificate pins on your device before copying to the clipboard. Toggle below to compare the raw in-memory diagnostics against the redacted output that is safe to email to support@auraone.com.

=== Photon Connection Doctor Report ===
Timestamp: 2026-10-15T19:42:10Z
OS: iOS 18.1 (Build 22B83)
TV Name: Living Room Bravia XR
TV Brand: Sony Bravia
TV Model: XR-65A80L
TV IP: 192.168.1.***
TV MAC: AA:BB:CC:**:**:**
TV Pin: SHA256:9f86d081...[REDACTED]

Checks:
1. [PASSED] wifiStatus: Wi-Fi is connected
   Detail: Your device has an active local Wi-Fi interface.
2. [PASSED] localNetworkPermission: Local Network permission granted
   Detail: Photon is allowed to communicate with devices on your local network.
3. [PASSED] subnetMatch: Same local subnet
   Detail: Phone (192.168.1.***) and Living Room Bravia XR (192.168.1.***) are on the same /24 subnet.
4. [PASSED] vpnOrPrivateRelay: No VPN or tunnel interference
   Detail: Local traffic routes directly to your LAN.
5. [PASSED] bonjourVisibility: TV visible on Bonjour
   Detail: Living Room Bravia XR is advertising _androidtvremote2._tcp at 192.168.1.***:6466.
6. [PASSED] tcpReachable: Remote port 6466 is reachable
   Detail: TCP connection to port 6466 succeeded.
7. [PASSED] tlsAndPin: TLS identity & certificate pin valid
   Detail: Mutual TLS handshake and pinned SHA-256 certificate (SHA256:9f86d081...[REDACTED]) verified.
8. [PASSED] sessionBusy: Remote session available
   Detail: No conflicting controller is holding the active session.
9. [PASSED] standbyDeepSleep: Sony Bravia is awake and responsive
   Detail: Tip for waking from standby (Remote start): Settings / Network & Internet / Remote start / On (Powered on by apps)