I’m looking for the best option for a sensor which can tell me if a tv set is turned on. My initial thought was to use a wifi or zwave outlet with power monitoring to read the amount of electricity being used…look for the hi, look for the low then set a rule to turn on an indicator if the power use is high…meaning the set is on.
I don’t want to use the on/off functionality of the outlet…I just want to be able to monitor. Another concern with the outlet is in the event of a power failure it would have to default to on as I don’t want it to inhibit normal operation of the tv.
I have an Amazon FireStick permanently plugged into the TV. When the TV turns on, the FireStick also turns on (it’s powered through one of the TV’S USB ports) and connects to the WiFi. The openHAB Network binding keeps checking for the FireStick, so openHAB knows when it turns on and off. Therefore, if the FireStick is on, the TV is on!
Not the cheapest method, but as I already had it plugged in…!
I have a raspberry pi in my tv stand doing a bunch of stuff, but one of them is detecting if my tv is on. My tv has a USB port and it is only powered when the tv is on (not in standby), so I just check the power on the USB to see if it’s on. I have it opto-isolated just in case, but that is probably overkill, you would just need to step down the 5V to 3.3V for the pi.
I don’t allow my TVs on the network (https://www.huffpost.com/entry/vizio-settlement_n_589962dee4b0c1284f27e534) so I went outside the box. I have a little DIY multisensor next to the TV with a sound sensor (among others). When the TV is on it generates enough volume to trip the sound sensor and on the OH side I treat the sensor the same as a motion sensor for presence.
It works pretty well, but I’ll acknowledge YMMV depending on the ambient noise level and how loud the TV plays.
My first thought was to use the Chromecast I have plugged into the TV, but I like to use CEC to turn on the TV and switch between the CC and Roku so they have to be always powered on.
(Stuart Hanlon, UK importer of Velbus hardware)
Someone suggested a while ago about simply detecting the 5V from a USB socket.
I also want to do this and my thought is we could probably use cec-client to detect whether TV is ‘on’ or on ‘standby’ as well which source is it on. Ofcourse it needs to be connected via HDMI and the TV should be CEC capable.
I have been playing with doing this with mysensors. My plan was to do simple logic. arduino (probably a pro mini) powers up when the tv turns on. every X seconds it sends an ON command to an item. That item would use the expire binding that after Y amount of time, it will trigger off. Or if you want to go esp. Do something like tasmota. Connect to the MQTT broker, as long as you are connected TV = ON. but use a LWT (last will and testament) that when the tv turns off, the esp powers off and disconnects. mqtt will trigger the LWT and single TV = off.
I thought about an esp8266/32 too, and winner whether this would be simpler and faster using the network binding - when the esp connects to WiFi, it will be detected! I guess it does depend on your refresh rate on the network Thing though…
So, I do this with the Aeon Z-Wave appliance switches (the Zooz appliances switches work as well) on my refrigerator to monitor power usage over time and alert me if it consumes more than X watts per hour. I’ve also set it up to use an IR blaster to turn on my sound bar if the TV is on but the sound bar is off.
They resume the same state the had before the power failure and will give you a readout of current power consumption. If you already have z-wave, it’s only like $30 to get one of these.