id: androidtv-philips-tpm191e title: "Philips OLED705 Android TV (TPM191E, Android 12)" contributors: - tkightly platform: androidtv # Live hardware session by hand over ADB; not an end-to-end run of dumbtv's scripts. status: partial tested_on: "Philips/PH9M_EA_5599/PH9M_EA_5599:12/STT2.230526.001/4215:user/release-keys" models: - "55OLED705/12" adb: port: 5555 transport: ethernet first_connection_prompt: >- Turning on USB debugging opens ADB on TCP 5555 directly; no Wireless debugging pairing code. The first adb connect prints "failed to authenticate" until "Allow USB debugging?" is accepted on the TV. developer_mode: >- Settings > All settings > Android settings > Device Preferences > About > press OK on Build seven times. Then Device Preferences > Developer options > USB debugging ON. Before that, adb connect is refused on 5555. ip_location: "Settings > Network > the active connection's status" prompts: - name: "Allow USB debugging" when: "first adb connect from a new computer" blocks_automation: true fix: "Accept on the TV and tick Always allow from this computer." data: packages: data/androidtv/packages.txt protected: data/androidtv/protected.txt never_disable: data/androidtv/never-disable.txt user_apps: data/androidtv/user-apps.txt launcher: mechanism: none package: tv.dumbtv.home reason: >- dumbtv home 1.1 (release APK, checksum-verified) installed with adb install, then pm disable-user com.google.android.tvlauncher. The schema has no value for "disable the stock launcher", which is the method docs/OTHER-TVS.md describes for Android TV. fallback: "pm enable com.google.android.tvlauncher" quirk: >- Only HOME handlers were tvlauncher (priority 2) and Settings FallbackHome (-1000); setupwraith is installed but does not answer HOME on this build, so it was left enabled. HOME stuck to dumbtv home across a reboot. quirks: - >- The JointSpace API answers on 1925 (HTTP) and 1926 (HTTPS); GET /6/system reports os_type MSAF_2019_P although the set runs Android 12 after updates. Do not infer the Android version from it; use getprop. - >- The TV boots into live TV (org.droidtv.playtv), not the home screen. - >- scripts/discover.sh flagged only org.droidtv.recommendation. Its name heuristic misses Philips telemetry: org.droidtv.gel (GatheringService), org.droidtv.candeebug (CollectionService) and org.droidtv.usagelogger. - >- The org.droidtv.nettvappNNNN packages are web-app shortcuts (Couchplay, Arte, Megogo, Deezer, Divan.TV, PlayWorks, Toon Goggles, Fishing TV, Flix Premiere). The name is only in resources.arsc; dumpsys does not show it. - >- Play Protect did not block adb install of dumbtv home or SmartTube. - >- Private DNS (settings global private_dns_mode hostname) validated on first try over Ethernet. notes: >- Tested on a real TV on 2026-10-20 by manual ADB. 29 packages disabled for user 0, none uninstalled: 11 third-party apps the household does not use, 9 nettvapp shortcuts, 7 Philips packages (demome, sticker, recommendation, nettvrecommender, usagelogger, candeebug, gel), tvlauncher and tvrecommendations. The TV survived two reboots, all HDMI, tuner and component inputs stayed registered, and Freeview Play, Ambilight/Hue, Alexa, Chromecast and PlayFi packages were left enabled. Private DNS set to an ad-blocking resolver. The owner then confirmed on the TV that the home screen, HDMI switching, Freeview Play, Prime Video, Ambilight/Hue, Alexa, casting and SmartTube all worked. Left enabled on purpose: com.vewd.core.browserui and com.seraphic.openinet.pre (likely the HbbTV / Freeview Play engines), org.droidtv.oad (firmware updates), org.droidtv.tv.frameworklogger. known_limits: - "One set, one firmware; other Philips chassis may differ." - >- developer_mode and ip_location are the paths the owner was given, and ADB worked after following them; the exact menu labels were not re-checked on screen. - >- all.sh, debloat.sh and verify.sh were not run: they read Fire OS lists. The verify paths below are the catalog's Fire OS host lists. - >- data/androidtv/packages.txt remains unpopulated; the app removals here were this household's choices, not a list for other TVs. verify: blocked: data/blocklists/verify-blocked.txt allowed: data/blocklists/verify-allowed.txt