1.1.0 • Published 2 years ago
lgtv2mqtt2 v1.1.0
lgtv2mqtt2
lgtv2mqtt2 connects WebOS-based TVs with MQTT, exposing a couple of read-write properties to control the TV.
There's lgtv2mqtt but it didn't work for me, and none of the WebOS libraries on GitHub did either, other than the one bundled with homebridge-webos-tv which this project re-uses.
I only exposed the endpoints that I care about, and this repository is provided as-is - feel free to fork and change things and send PRs.
Installation
npm install lgtv2mqtt2(optionally with-gif you want it to be available globally)- create
~/.mqtt-config.jsoncontaining:{ host: "MQTT_BROKER_ADDRESS", username: "MQTT_BROKER_USERNAME", password: "MQTT_BROKER_PASSWORD" } - create
~/.lgtv-config.jsoncontaining:{ ip: "LGTV_IP", mac: "LGTV_MAC", mqttBase: "MQTT_BASE_PATH", }
- it's best to assign static IP to your TV, and note the MAC address from the router
- the
mqttBaseis the path under which the properties will be stored
Usage
First, run lgtv2mqtt2.
The tool creates a couple of paths under the mqttBase (below). Their values are writable (which updates the TV state), and they react to TV state changes (say from a TV remote) and update the values in MQTT:
/power["on" | "off"]/screen["on" | "off"]/volume0 - 100/backlight0 - 100/inputcom.webos.app.hdmi[N]