- Sat Jun 13, 2020 12:32 pm
#87541
muhammadumar6692If you are you still interested in DIY ESP "TV-Hubs" via ESP8266, I have built one myself. Here is a brief intro discussion document:
DIY ESP8266 TV HubI built a “TV remote controller” targeting both my Roku-4 connected to an old (dumb) Dynex TV via HDMI, as well as a newer TCL Roku Smart TV with a Polk sound-bar. Both systems are in different rooms but still on the same in-house WiFi network. The design uses an HTML web page as a remote controller served up by one of two TV-hubs. Each hub interfaces the end devices - TVs, Roku and sound-bar, via the in-house WiFi network. Two ESP8266 nodeMCUs are used as theTV-hubs, one for each TV setup due to their separate locations and their IR requirements. The simulated remote interface is simply an HTML/javascript based web page usable on all of our devices - computer, tablets and mobile phones.
Purpose: We [my wife and I] are old. She sees very poorly and often forgets how to navigate the Roku content via the myriad of physical remote - two Roku remotes, a Dynex TV remote and a Polk sound-bar remote.
Goals: Visually big remote-like UI with an additional ‘drop-down-menu’ for Roku favorite App selection/launching. Additionally, the hubs support voice commands from a nearby Alexa device.
Problem: After prototyping, Alexa posed a design limitation when using direct in-house WiFi network connection (vs. “AWS” skill technologies) to talk to the TV-hubs. For the Alexa to ESP8266 communications, I used a common development library, fauxmoESP, which limits the ESP’s number of end-points (an ESP8266 memory limitation) to only a few direct connections; I wanted near one hundred end-points in all.
Solution: I used only one end-point on each ESP8266 to mimic a ‘dimmable light’ device and used the ‘percent’ value , 0-100, as a sketch coded switch providing one hundred hub commands each. The drawback to this approach is the Alexa voice command that turns out to be something like “Alexa, set endpoint to 77,” a bit cryptic and awkward to say the least.
But wait! Alexa provides a solution to this problem in the form of ‘voice- controlled routines.’ Routines are integral to Alexa to provide custom voice controls for one or more device actions.
Example: “Alexa, livingroom on” ==> “Alexa, set endpoint to 77”
This method allows Alexa to mimic all twenty remote controller page buttons - on, off, mute, left, back, louder, softer, ...etc., and more with simple sayings like “Alexa, livingroom softer” for a TV setup independent volume down control.
Technologies:- HTTP Async server
- Web sockets for remote controller page and TV-hub - HTTP ECP and IR controls with Roku and TVs
- TCP/UDP Alexa connections for voice control
Network Based Maintenance:- Web based remote monitor for ESP
- SPIFFS management; upload, download, delete, ...
- Sketch image upload and ESP reboot
So, if this type of thing still interests you, let me know.; we can discuss such.
Greg.
I'm a user (vs. developer) in my 70's and have multi-thought threading problems in my head. Please be understanding.