{"slug": "how-i-built-a-single-ios-app-that-controls-all-four-hisense-smart-tv-platforms", "title": "How I built a single iOS app that controls all four Hisense smart-TV platforms", "summary": "A developer built a single iOS app that controls all four Hisense smart-TV platforms—VIDAA, Roku TV, Google TV, and Fire TV—after losing the remote for a Google TV-flavored Hisense set. The app automatically detects the TV's operating system by browsing for local-network service types, pairing via each platform's native protocol without requiring user input. It supports MQTT over TLS for VIDAA, ECP over HTTP for Roku, gRPC with TLS for Google TV, and ADB-over-Wi-Fi for Fire TV, all operating solely over the local area network with no cloud dependency.", "body_md": "Hisense ships TVs with four different operating systems — VIDAA,\n\nRoku TV, Google TV, and Fire TV. The official \"Remote for Hisense\n\nTV\" you find in their app store only works with VIDAA. When I lost\n\nmy own remote, I had a Google TV-flavored Hisense, so I built a\n\nsingle-app solution that pairs with whichever platform the user has.\n\nHere's how each of the four local-network protocols works, and how\n\nthe app picks the right one without asking the user.\n\n| Platform | Local protocol | Pairing |\n|---|---|---|\n| VIDAA | MQTT over TLS | Direct local connection |\n| Roku TV | ECP over HTTP | Open by default on port 8060 |\n| Google TV | gRPC, TLS) | 4-digit PIN |\n| Fire TV | ADB-over-Wi-Fi | One-time TV-side prompt |\n\nAll four are LAN-only — no cloud involvement once paired.\n\nVIDAA TVs accept TLS connections on port 36669 and speak MQTT\n\nunderneath. The control message format publishes button presses as\n\nsmall JSON payloads — `{\"key\": \"KEY_VOLUMEUP\"}`\n\netc. — to predictable\n\ntopics scoped by the TV's MAC address. Other developers in the Home\n\nAssistant community have written about this in detail; my Swift\n\nimplementation is on top of that prior work.\n\nAlmost too easy. Roku publishes the External Control Protocol\n\npublicly. Every Roku and Hisense Roku TV listens on port 8060:\n\n`curl -X POST http://192.168.1.100:8060/keypress/Home`\n\ncurl -X POST http://192.168.1.100:8060/keypress/VolumeUp\n\ncurl http://192.168.1.100:8060/query/active-app\n\ncurl http://192.168.1.100:8060/query/device-info\n\ncurl -X POST http://192.168.1.100:8060/launch/12\n\nNo pairing. No PIN. If your phone and the TV are on the same LAN,\n\nyou can drive it from a curl one-liner. This is why I shipped an [in-browser Roku remote](https://hiremote.app/hisense-roku-tv-remote#remote) — for Hisense Roku TV owners, you don't actually need an app at all. The page implements ECP from JavaScript and runs in any modern browser. Cannibalises my own install funnel for that segment, but it's the right call for the user.\n\nGoogle TV uses gRPC over TLS with cert pinning. Pairing exchanges a\n\n4-digit PIN through paired proto messages — the Android TV Remote v2\n\nprotocol. The .proto definitions are discussed in various developer\n\ncommunities; from there it's standard gRPC client work.\n\nFire TV runs Android and supports network-mode ADB on port 5555.\n\nAfter the user enables developer-friendly settings on the TV, the\n\napp authorizes once via a permission prompt on the TV screen.\n\nThe app browses for service types:\n\nThe first responder wins. The user never picks \"what kind of Hisense\n\nTV is this\" unless detection fails.\n\nThe implementation ships as [Remote for Hisense TV on the App Store](https://apps.apple.com/us/app/remote-for-hisense-tv/id6740401390), free with a Pro tier ($9.99/year) that adds the Apple Watch app, Lock Screen widget, and removes ads. The marketing site with deeper troubleshooting articles is at [hiremote.app](https://hiremote.app).\n\nHappy to answer iOS protocol questions in the comments.", "url": "https://wpnews.pro/news/how-i-built-a-single-ios-app-that-controls-all-four-hisense-smart-tv-platforms", "canonical_source": "https://dev.to/hisuperdev/how-i-built-a-single-ios-app-that-controls-all-four-hisense-smart-tv-platforms-30ef", "published_at": "2026-05-28 13:27:48+00:00", "updated_at": "2026-05-28 13:54:54.739096+00:00", "lang": "en", "topics": ["ai-products", "ai-tools"], "entities": ["Hisense", "VIDAA", "Roku TV", "Google TV", "Fire TV", "MQTT", "ECP", "ADB"], "alternates": {"html": "https://wpnews.pro/news/how-i-built-a-single-ios-app-that-controls-all-four-hisense-smart-tv-platforms", "markdown": "https://wpnews.pro/news/how-i-built-a-single-ios-app-that-controls-all-four-hisense-smart-tv-platforms.md", "text": "https://wpnews.pro/news/how-i-built-a-single-ios-app-that-controls-all-four-hisense-smart-tv-platforms.txt", "jsonld": "https://wpnews.pro/news/how-i-built-a-single-ios-app-that-controls-all-four-hisense-smart-tv-platforms.jsonld"}}