This is a story of frustration, confusion and so far no happy ending. It’s a chance for me to wax lyrical about some of the problems I see with modern “smart” consumer devices, but also, give a bit of insight into how things are put together. Let’s start, as many stories do, at the beginning…

Skip to the disassembly section if you’re more interested in the innards of a BLE remote than the story of how I got there.

Choosing a TV

About ten months ago I had cause to purchase a new television. The TV itself isn’t really the focus of this article, but my mindset into purchasing it does give some insight into how I treat consumer electronics:

  • I didn’t really care about the smart TV features, but accepted that I’d be buying a smart TV, because they dominate the market and would be the most price competitive.
  • So long as it had some ports that I could later attach a Chromecast or similar “stick computer” to, for if the screen outlived the smart TV OS, then I was fine with it.
  • I expected it to last a few years as I don’t chase pixel counts, colour depths, interface standards or other such things.

That really is about it. I wasn’t looking for a deluxe home cinema experience, because the TV is just there to pass the time, not be the centre of attention in the living room.

The TV I got in the end, had the following noteworthy features:

  • 55-inch screen
  • 4K resolution
  • Android TV
  • A three year warranty

The last part is going to be important a little later, as you might have guessed.

Cool features

Out of box, the setup process for very easy. The picture quality was fine. The audio quality was OK, but that didn’t matter because I’d be piping it out to a pair of external speakers (no 5.1 or soundbar here, just humble stereo from some decent bookshelf speakers). All good so far.

The Android TV system was fine. Quite cool in a way, because unlike the Chromecast I was used to, which generally requires a lot of hand-holding from a smartphone, Android TV can do quite a lot independently. It was a bit sluggish at times and had a few interface quirks, but even the most expensive TV in the world can have its annoyances.

The remote was by far the most fascinating part, however. This piece of magic seemingly didn’t have any infra red emitter on it (that I could see) and it had a magical button that, when pressed, could capture my voice through a tiny microphone and send it over to the TV for interpretation and action. It was obvious: This was a Bluetooth Low Energy (BLE) remote, the future (and, evidently, the present) of short range IoT devices.

Fast forward ⏩

On to the whole point of this article: what went wrong? After around nine months of no problems, the magical BLE remote started to falter. It exhibited two main issues:

  1. Sometimes it would spuriously send a button press, sending Netflix into a unexpected seek operation and destroying the viewing experience.
  2. Worse, it would stop working altogether. The little multi-coloured LED on the remote wouldn’t light up any more and none of the inputs would do anything.

The fix was obvious: Time for new batteries. The TV can report the remote’s battery status, so it was surprising not to be warned of the remote’s impending doom.

New batteries fixed the problem… for about five minutes.

Thereafter the remote entered into a death spiral of intermittently functioning, requiring jostling and spamming of buttons to bring it back to life, reinsertion of batteries and sometimes leaving them out for prolonged periods to see if that would “reset” the remote. These all worked for a while, but eventually it became unusable.

The realisation

“No problem! I can get it replaced under warranty” I thought and probably said aloud as well. Meanwhile, it’s a smart TV, so I can use a remote control app on my phone. For brevity, here’s a summary of what I learned in the space of 24 hours:

  • Google had updated their remote service on Android TV to support their “Google TV” concept, breaking compatibility with 3rd party remote apps.
  • Even once you get them working, smartphones are way less convenient to control TV’s than a discrete remote.
  • Once the TV’s off for a while, it tends to be unreachable over WiFi or whatever the app is using to talk to it, requiring a walk over to the TV itself to turn it on by hand.
  • Despite the TV having a three year warranty, the remote only had a six month warranty 😱.

Disjoint warranty policies aren’t a new thing. Fridges, washing machines, even cars, have differing lengths of warranty on certain parts, usually to instill confidence in the longevity of certain critical components like compressor, motor and gearbox. But here’s the problem with a TV remote that has a six month warranty: What reasonable person expects a TV remote to last one sixth of the warranty period of the device it controls? I’ve had ink cartridges last longer than six months, and they’re a consumable item. Moreover, save for liquid damage or battery leakage, I’ve never witnessed a remote control give up with normal use. They’ll be sitting in a drawer, lost but still able to function long after the TV they belong to is dead and discarded.

After a little searching, I found others recounting that their remote, from the same manufacturer, had also failed, and they were lamenting having to buy a new one as it was out of warranty, frustrated further by the remote being out of stock! Substitutes exist, but their compatibility may be questionable, and the ones that I’ve found tend to be missing the voice-control capability. Regardless of whether you use that feature, it seems a shame to lose it over a remote failing, doesn’t it? And as I said already, a smartphone just isn’t as good a controller as a controller!

You’ll have noticed by now that, magnanimously, I’ve omitted any reference to the manufacturer in this article, as I haven’t reached out to them directly yet and other user’s accounts are anecdotal at best. Still, such a short warranty on such a core part of a product isn’t confidence-inspiring, is it?

Disassembly

With nothing to lose, I put my engineer/hacker’s hat on and decide to take it apart. So, here’s the part you’ve all been waiting for. What’s inside a BLE remote?

Front of TV remote with membrane switches

The front of the TV has a lot of membrane switches and a plastic film, possibly for liquid protection?

Lower-rear of the TV remote, with programming pads

These programming pads are accessible through the casing, although I'm not sure what protocol the chip uses yet.

Top-rear of the TV remote, with controller chip, mic, antenna, IR

All the exciting stuff is at the top on the back, including some surprises.

A few lessons I learned about the remote from this disassembly:

  • It has two infra-red emitters. What for? Don’t know!
  • When the LED is red, the remote is sending signals over infra-red, when the LED is green, it’s sending over BLE.
  • The buttons are surface mount membrane switches, with a metal dome that “clicks” on contact to make/break the circuit.
  • There’s a lot of unpopulated pads labelled ESD on the board. Presumably these are for ESD capacitors.
  • The controller chip is an Airoha (Mediatek) AB1613, designed for smart remote control applications.
  • If unpaired, most functions work over infra red, but if a BLE-only feature (such as voice) is attempted, the remote (presumably) indicates via infra-red that it needs pairing and the TV can show instructions on how to do it.

Despite learning these things, I was no closer to fixing the remote. Was a dodgy membrane switch holding the remote hostage? Possibly, but it was hard to tell due to a plastic film covering most of the PCB that would get in the way of probing. Was there a crack in a solder joint or PCB trace? None that I could see, but I touched up a few places to be sure, with no luck. Had a capacitor died? Not that I could tell. Maybe the chip was dead? Was it crippled by ESD due to the lack of ESD capacitors? Unknown!

I could spend a bit more time to eliminate these possibilities, but it didn’t really seem worth it for a TV remote. I thought writing about it first would be a better idea.

Into the brick wall 🧱

Now I’m left with a remote that even out-of-pocket is hard to replace like-for-like. And there’s no universal remote that I can easily replace it with. Why? Of the universal BLE remotes I can find advertised online, they all seem to be anything but. Each one must be carefully selected to be compatible with the user’s TV model.

Infra red remotes are easy to replicate. Manufacturers have their own standards and codesets, but ultimately, all you need to know is exactly how to blink an IR LED and you can build a replacement. Better still, you can record the blinks and build your own mapping for a true universal remote. But no such thing exists, yet, for BLE remotes, presumably for some of the following reasons:

  • The remotes, once paired, will use some sort of encryption, meaning recording the codes is less trivial.
  • Different smart TVs may follow different protocols, meaning the BLE payloads might be wildly different.
  • Oddities like having dual IR emitters might also get in the way.

With some more investigation, the above problems can probably be overcome. The question is: is it worth it? For one failed remote, I think not, but perhaps for the community as a whole, it is.

What next?

I would love to see a universal BLE remote. A device, not an app. One that you can buy off the shelf and configure to pair with your particular model of TV. To make it happen, we’d need the following:

  • A physical remote with a BOM that has enough components to satisfy any smart TV:
    • Appropriate IR emitter(s)
    • Suitable BLE radio
    • A microphone
    • Accelerometer(s)
  • A firmware that’s flexible:
    • Containing pre-sets for a wide range of makes and models, or
    • Updatable via a PC/smartphone app to be compatible with your TV
    • Additionally, scope for controlling multiple devices in a single package (speakers, STB, etc) would be nice
  • An open-source database of configurations for all types of smart TV
    • And a nice template/build process to allow contributors to add capabilities to the firmware

Based on initial searches, both TI and Nordic may have kits that would serve as a starting point for development. The Nordic kit costs upwards of US$400, and while cheaper, the TI kit doesn’t ooze style or a sense of ergonomics. They’re good for development, not for daily use. Creating a cheaper, friendlier device with a similar BOM is surely possible. The harder part is building the software and ecosystem around it.

Does such a project or initiative exist already? If it does, please let me know, as I’d be interested in following it at the very least. In the meantime, I doubt I’ll have the time or motivation to get something like this off the ground by myself, which is a shame.

Why bother?

Bringing this rant in-line with the theme of {CSB}… cybersecurity, it’s important to understand that the integration of smartness into both the TV and its remote pose a security threat if they go unmaintained. The TV screen might still be perfectly usable in 5 years or more, but the smart TV OS will be old, feature-lacking and insecure. Similarly, the remote, if it’s still working, is a BLE device with a microcontroller and firmware. It could itself be hacked and turned into a voice-capturing data stealing device. Don’t believe me? There are over-the-air update demo apps for the Airoha 1600 series of chips (like the one in my remote) available for iOS and Android. I might visit this aspect again in the future, along with that programming port I showed in the disassembly section.

Infra red remotes need line of sight to work. BLE remotes don’t. We’ve sacrificed security and quite possibly longevity, for a microphone. There’s still hope, though, because if we standardise how these work, and stop locking people out, there’s a chance that a community will form that can keep these things safe.

Join the discussion

Visit my LinkedIn post to contribute your comments.