hearth

Guide

Hearth Guide: Set Up One Remote for Every TV

Hearth finds the TVs on your Wi-Fi and turns every phone in the house into one fast remote. Here is setup, each brand, every mode and what to do when a TV stops answering.

Open Hearth Try the demo

What it is · Set it up · Each brand · Turning TVs on · The remote · The whole house · When it breaks · Settings · Privacy · FAQ

What Hearth is

Hearth is an open-source universal remote for the smart TVs in your home. It gives every phone, tablet and computer in the house the same controller: power, D-pad, volume, apps, inputs and even a message on screen. No accounts and no cloud: the remote talks straight to the TVs on your home network.

It works with LG webOS (2014 and newer), Samsung Tizen (2016 and newer), Roku players and Roku TVs, Google TV and Android TV, and Apple TV (tvOS 15 and newer). The live demo runs the real app with pretend TVs, so you can press every button first.

Set it up

  1. Pick a computer that stays on. A Mac mini, an old laptop or a Raspberry Pi on your Wi-Fi works. Install Node.js 20.19 or newer. For "what's playing" on an Apple TV, also install Python 3.10 or newer; without it Apple TVs still get the full remote.
  2. Run npm run up in the Hearth folder. It installs what it needs, starts Hearth in the background and prints a link and a QR code. Running it again is safe: it never starts a second copy.
  3. Open the link on your phone. Scan the QR code or type the address it shows (something like http://your-computer.local:8770). The phone has to be on the same Wi-Fi.
  4. Type the house code once. Being on the Wi-Fi isn't enough to press buttons. A new phone types the 6-digit house code, which you can see with npm run code on the computer or under Settings, Phones in this house, on a phone that's already in. A family member can also show you a one-time invite QR code that works for one phone within a day.
  5. Add your TVs. Turn the TV on and tap Set up a TV. Hearth looks for it, walks you through that brand's connect step, and asks which room it's in. New TVs that appear later show up as a "New TV nearby" banner.

A short tour points at each feature the first time; replay it with the ? button.

Connecting each brand

LGPick Show a number on the TV and type it into your phone, or press Allow on the TV. You get live volume, named HDMI inputs, app icons, typing into search and messages on screen.
Samsung2016 and 2017 sets connect by themselves with nothing to press. Newer ones ask you to press Allow once on the TV. Hearth shows the app on screen and the live volume level.
RokuNothing to press. Holding OK or an arrow is a real press-and-hold, and Roku TVs can also switch HDMI inputs. If the Roku refuses commands, set Settings, System, Advanced system settings, Control by mobile apps, Network access to Default.
Google TV and Android TVConnects over Cast with no code, which covers volume, mute, asleep or on, and opening apps that have a Cast app. For arrows, OK, back, home and power, open the TV's settings in Hearth, tap Unlock full remote and type the 6-character code the TV shows.
Apple TVThe TV shows 4 digits; type them in and the remote works. With Python installed it then shows 4 more, which let Hearth see what's playing the moment it changes. If no numbers appear, on the Apple TV set Settings, AirPlay and HomeKit, Allow Access to Anyone on the Same Network.

Turning TVs on from your phone

A TV that's switched off isn't on the network, so Hearth wakes it with a Wake-on-LAN signal. Most brands need one setting switched on once, and the setup's last screen names the right one for your model:

Once that's set, any button wakes a sleeping TV: press a key or open an app and Hearth turns the TV on first, then sends the press. If a TV still won't wake, open its settings and tap Turn on from your phone. That coach walks through the plan for your model, tests it live, and can use a Roku or Apple TV on that TV's HDMI to switch it on instead.

Using the remote

The remote changes with what's on the TV. When something is playing it becomes the Watch screen; when you're looking for something it's the D-pad; a web browser gets a trackpad and keyboard; a game gets a gamepad. You can always switch yourself with the Remote, Watch, Trackpad and Gamepad bar.

ModeOn a phoneOn a keyboard
RemoteTap a direction or OK. Hold to repeat, faster the longer you hold. Drag across the pad like a trackpad to fly through rows. Hold OK for a long press (a real hold on Samsung, Roku and Apple TV).Arrows, Enter for OK, Backspace or Esc for back, H home, + - volume, M mute.
WatchTap anywhere to play or pause. Tap or swipe a side to skip, hold a side to scrub, swipe down to go back. Browse brings back the D-pad.Same keys as Remote.
TrackpadSlide one finger to move, tap to click, two-finger tap for back, two-finger drag to scroll. Type in the text box to send letters to the TV.Type straight onto the TV.
GamepadA sideways controller: A is OK (hold for a long press), B is back, X is play or pause, Y is info, shoulders skip and change volume.X play, I info, [ ] rewind and forward.

On a computer, 1 to 4 switch modes and ? lists the shortcuts. Every press buzzes back (iPhone needs iOS 18 or newer), and a long-press on a TV card opens its settings.

Controlling the whole house

When a TV stops answering

Tap Fix connection. It appears on a TV's card after a press fails, on the remote's "Not responding" banner, in the TV's settings and in Health. It checks, in order: is the TV on the network; if not, wake it; still nothing, look for it at a new address (routers sometimes move TVs, and Hearth follows them); reconnect; check it still trusts Hearth; and if it doesn't, take you straight to the right pairing step.

Health (the pulse icon) gives every TV a report card for how quickly it answers, how reliable it is and how well it wakes, plus What your TVs cost: add your power bill and Hearth works out what each TV costs a day, a month and a year, from the hours it was really on and watts estimated from its size and year.

Settings and looks

Privacy

On your home network, finding TVs and every press stay on the network. Pairing keys live in ~/.hearth/tvs.json on the computer, readable only by your user, and are never sent to a browser. The optional AI help (scene drafting, model guides, reading a power bill) swaps TV and room names for placeholders and strips email addresses, links and long numbers before anything leaves. A PDF power bill is read on your phone; only the price and kWh lines are sent. Your own Hearth never shows ads; only the public demo carries one small banner under it, as described in the ad policy. The iPhone app's data use is in its privacy policy.

FAQ

Why does my TV turn itself off after about 15 minutes?

A timer on the TV is doing it, usually No Signal Power Off or Auto Power Off. Hearth spots the pattern and the remote's banner says Turns itself off after ~15 min; tap it for the setting to change. On a Samsung that's under Eco Solution.

"No TVs answered." Now what?

Make sure the TV is really on and on the same network as the computer running Hearth; guest Wi-Fi keeps devices apart. You can also add a TV by the IP address shown in its network settings. On a Mac, allow Node under Privacy and Security, Local Network.

How do I remove a lost phone?

Open Settings, Phones in this house, and hold the phone's entry: it's cut off at once. You can also pick a new house code there; phones already in stay in.

What happens when I leave home?

The app doesn't show an error. It turns into Light Racer, a light-cycle game, and the remote comes back by itself when you're home again. Swipe to steer, tap a side to turn, hold to boost. The offline copy plays anywhere once it's on your home screen.

Open Hearth Try the demo

Hearth: Universal TV Remote · Support · Privacy policy